3/26/2015

Advantech and QNX ink distribution agreement

Advantech to offer pre-integrated platforms for developers building medical devices, industrial control systems, and other QNX-based applications.

SOM-6894 module: one of many Advantech 
products with integrated QNX support.
No assembly required. That’s the idea behind the new partnership between Advantech and QNX Software Systems.

Advantech can now distribute the QNX Neutrino OS, pre-integrated, on a variety of its embedded hardware platforms, including single board computers, industrial motherboards, computer-on-modules, and fanless embedded box PCs.

The goal is to make life easier for embedded developers: they can now unbox their Advantech hardware and get QNX Neutrino up and running right away.

Tom Keyserlingk, director of global sales at QNX, sees real value in having Advantech on board as a distributor. “They have a global footprint, a comprehensive product portfolio, proven QNX experience, and extensive industry partnerships — all the right ingredients to support our growing reach internationally.”

Angus Hsu, director of embedded computing at Advantech, explains why this partnership is important for Advantech. “The QNX Neutrino OS offers all of the building blocks to create modern embedded devices, from hard realtime performance and advanced security features to graphics frameworks, multimedia support, and mobile-device connectivity — all based on QNX Software Systems’ 35 years of experience in the embedded industry.”

If you’re an embedded developer that uses, or wants to use, Advantech hardware for your QNX-based application, here is a current list of Advantech BSPs for the QNX Neutrino OS:



Visit the Advantech site to learn more about their embedded platforms.

3/22/2015

The IEC 61508 trifecta: certified kernel and certified BSP running on certified hardware

Guest post by my colleague Terry Staycer, global business development manager at QNX.

When it comes to building a safety-critical system, you can’t afford to gamble. Not only must you reduce risk of harm, you must also minimize the risk of failing to achieve certification. Your best bet is to start with pre-qualified components that minimize certification efforts and let you focus on adding true differentiation to your product:

Step 1. A realtime operating system (RTOS) kernel designed for safety-critical systems can’t simply be reliable or elegantly designed. The requirements become especially severe for an OS kernel certified at IEC 61508 Safety Integrity Level 3, or SIL3. In fact, a system certified at SIL3 must have a probability of dangerous failure below 1 in 10 million per hour of operation. Achieving such a low risk of failure is non-trivial, to say the least. In fact, it’s nearly impossible to satisfy the above requirements unless they are baked into the very design of the kernel.

Step 2. The same rigid safety must also be applied to the board support package (BSP). This is the bridge code that connects the RTOS to the hardware features on a particular board.

Step 3. Now drop these two safety-critical pieces of software onto a single-board, multi-processor, commercial off-the-shelf (COTS) platform and you are providing an invaluable service to the development team. All they have to do is drop their application on top of this pre-certified environment and they are one system certification away from delivering a completed safety-critical product.

We always hear of decreasing the time it takes to deliver a product from requirements to revenue. I can’t think of a better way to achieve this goal than to go with a conversion of these three building blocks that are already completed and awaiting the unique value of your development team’s application.

3/10/2015

Behind the controls of the Solar Impulse

Virtual cockpit lets you follow progress of round-the-world flight in real time.

What’s it like to get behind the controls of a solar-powered plane a plane now in the process of circumnavigating the globe? You and I will never really know, but we can enjoy the next best thing: a virtual cockpit that provides a pilot’s eye view of the plane’s instrument panel.

Just point your browser to the Solar Impulse website whenever the plane is in the air, and you will see real-time updates to the plane’s flight instruments. For instance, in this screen capture, you can see the current position of the ailerons, airbrakes, elevators, and rudder, along with the airspeed (in knots), vertical speed (rate of climb or descent), heading, and altitude:



And in the following screen capture, you can see much of the same information, presented in a different fashion, along with the attitude indicator, which shows whether the wings are level and whether the nose is pointing above or below the horizon:



I've covered only a subset of the real-time information displayed on the Solar Impulse website. For example, you can also view a map of the plane’s progress, a video feed of the mission-control center, and the current power mode of the plane’s electrical system:



QNX Software Systems is the official realtime OS partner for the Solar Impulse team, and the plane uses the QNX Neutrino OS for several control and data communication functions.

3/09/2015

Explaining a technical product to non-technical people

When people ask what your company does, what do you say? If your company makes cars or chairs or smartphones, the answer is relatively easy. But if your company makes FPGAs, realtime operating systems, or programming tools, the answer can be too down in the weeds for most people.

Explaining a technical product to a non-technical audience is a challenge. To succeed, you have to meet people on their level, without being condescending. Most people love a good explanation, but everyone hates being talked down to.
One secret is to connect your product to things people do every day. At QNX, for example, we realized that our technology affects people whether they drive to work, flip a light switch, or use a credit card. So thats how I often start the conversation.
Chances are, you used QNX technology today, without knowing it. I find this a good opening sentence. I follow it up with some examples that QNX recently published in the infographic, 35 Ways QNX Touches Our Lives (see below). For example, QNX touches your life when you:
  • Flip a light switch — QNX technology controls thousands of power generation systems, from wind turbines to nuclear stations to hydroelectric plants.
  • Go online — QNX technology is at the core of massive Internet routers that handle data, voice, and video traffic for hundreds of millions of users every day.
  • Use a credit card — Banks the world over use QNX-based systems to issue payment cards and PINs, facilitating secure, reliable transactions.
  • Take a nap — QNX-based spinning and weaving systems produce high-quality fabrics for everything from bed sheets to towels, sweaters, and furniture.
  • Keep house — QNX-based robot vacuums can clean your entire home, even under beds and other furniture. So you can sit back instead of hurting your back.
Once I've provided a few of these examples, it's easier to gauge whether the listener is interested more of a deep dive  the how, rather than the what.
What about you? Have you had success explaining your technical product to non-technical audiences, be they reporters, analysts, or your great aunt Mildred? If so, what worked? What didn't?

3/05/2015

Flying in the dark on solar energy

Crew of QNX-equipped Solar Impulse plane gears up for historic flight.

The Solar Impulse 2, aka SI2
Source: Solar Impulse
The countdown has begun. On Monday, March 9, the Solar Impulse 2, a one-of-a-kind airplane that runs exclusively on solar power, will take off from an airport in Abu Dhabi. The destination? Abu Dhabi!

That’s right, this is a round trip — but not just any round trip. It is, in fact, the first attempt to fly around the world using only the power of the sun. On board will be AndrĂ© Borschberg, the former jet pilot who, together with Bertrand Piccard, cofounded the Solar Impulse project 12 years ago. (Piccard’s name may ring a bell — as well it should. In 1999, he became the first person to complete a non-stop balloon circumnavigation of the earth.)

The Solar Impulse can fly at night, using energy stored in its lithium-ion batteries. But it’s no fly-by-night operation. Borschberg and Piccard have spent the last 12 years on this project and have set 8 world records in the process, including longest uninterrupted flight (26 hours, 10 minutes) and highest altitude (9235 meters) for a solar-powered plane. That’s pretty impressive, but then, everything about this plane is remarkable, from the wingspan (72 meters) to the number of voltaic cells (17250) that power its electric motors.

Solar Impulse bootup screen. Screen-grab from video.
The human element is equally impressive. To cross the Pacific or Atlantic ocean, the plane, which has a cruise speed of 90  km/h, will need to stay airborne for about 5 days, nonstop. And that means the pilot also needs to stay airborne for 5 days, in an unheated, unpressurized cabin with temperatures ranging from -40°C to +40°C. Yes, the pilot is allowed to take naps, but only 6 a day, each lasting 20 minutes. Not surprisingly, both pilots (Borschberg and Piccard will each take turns flying the plane), have learned self-hypnosis and meditation techniques to help them enter and exit deep sleep as quickly as possible. The plane can accommodate only one pilot at a time, and the team plans a total of five stops to allow changes of pilots.

As mentioned in previous posts, QNX Software Systems is the official realtime OS partner for the Solar Impulse team, and the plane uses the QNX Neutrino OS for several control and data communication functions. So, as you can imagine, come next Monday, my browser will be tuned to the Solar Impulse website. I hope yours will, too.

Until then, here's a “making of” video of the Solar Impulse 2. Enjoy.



3/03/2015

Hypervisors, virtualization, and creating a safety-critical system that keeps up with the Joneses

A new webinar on how virtualization can help you add new technology to existing designs.

First things first: should you say “hypervisor” or “virtual machine monitor”? Both terms refer to the same thing, but is one preferable to the other?

Hypervisor certainly has the greater sex appeal, suggesting it was coined by a marketing department that saw no hope in promoting a term as coldly technical as virtual machine monitor. But, in fact, hypervisor has a long and established history, dating back almost 50 years. Moreover, it was coined not by a marketing department, but by a software developer.

“Hypervisor” is simply a variant of “supervisor,” a traditional name for the software that controls task scheduling and other fundamental operations in a computer system — software that, in most systems, is now called the OS kernel. Because a hypervisor manages the execution of multiple OSs, it is, in effect, a supervisor of supervisors. Hence hypervisor.

No matter what you call it, a hypervisor creates multiple virtual machines, each hosting a separate guest OS, and allows the OSs to share a system’s hardware resources, including CPU, memory, and I/O. As a result, system designers can consolidate previously discrete systems onto a single system-on-chip (SoC) and thereby reduce the size, weight, and power consumption of their designs — a trinity of benefits known as SWaP.

The QNX Hypervisor is an example of a 
Type 1 “bare metal” hypervisor.
That said, not all hypervisors are created equal. There are, for example, Type 1 “bare metal” hypervisors, which run directly on the host hardware, and Type 2 hypervisors, which run on top of an OS. Both types have their benefits, but Type 1 offers the better choice for any embedded system that requires fast, predictable response times — most safety-critical systems arguably fall within this category.

Moreover, some hypervisors make it easier for the guest OSs to share hardware resources. The QNX Hypervisor, for example, employs several technologies to simplify the sharing of display controllers, network connections, file systems, and I/O devices like the I2C serial bus. Developers can, as a result, avoid writing custom shared-device drivers that increase testing and certification costs and that typically exhibit lower performance than field-hardened, vendor-supplied drivers.

Adding features, without blowing the certification budget
Hypervisors, and the virtualization they provide, offer another benefit: the ability to keep OSs cleanly isolated from each other, even though they share the same hardware. This benefit is attractive to anyone trying to build a safety-critical system and reduce SWaP. Better yet, the virtualization can help device makers add new and differentiating features, such as rich user interfaces, without compromising safety-critical components.

That said, hardware and peripheral device interfaces are evolving continuously. How can you maintain compliance with safety-related standards like ISO 26262 and still take advantage of new hardware features and functionality?

Enter a new webinar hosted by my inimitable colleague Chris Ault. Chris will examine techniques that enable you to add new features to existing devices, while maintaining close control of the safety certification scope and budget. Here are some of the topics he’ll address:

  • Overview of virtualization options and their pros and cons
     
  • Comparison of how adaptive time partitioning and virtualization help achieve separation of safety-critical systems
     
  • Maintaining realtime performance of industrial automation protocols without directly affecting safety certification efforts
     
  • Using Android applications for user interfaces and connectivity

Webinar coordinates:
Exploring Virtualization Options for Adding New Technology to Safety-Critical Devices
Time: Thursday, March 5, 12:00 pm EST
Duration: 1 hour
Registration: Visit TechOnLine

A version of this post was published on the QNX Auto Blog.

2/24/2015

Autonomous forklifts gear up with QNX and HTML5

Warehouse robots need reliable realtime control. They also need an intuitive user interface. Can one OS handle both?

When it comes to forklifts, I am as dumb as they come. I had always assumed that one forklift is much like any other, aside from obvious differences in size and color. Boy, did I get that wrong. A quick perusal of Wikipedia reveals some 30 forklift types, ranging from “walkie stackers” (which, true to their name, are walked, not ridden) to “EX-rated lift trucks” (which, contrary to their name, aren’t designed to carry erotica but to be explosion proof).

Forklifts also come in driverless variants called automated guided vehicles, or AGVs. Case in point: the QNX-powered AGVs built by Euroimpianti, a global leader in automated warehouse systems. These vehicles can, without human intervention, load and unload trucks, as well as move materials from one area of a warehouse or factory to another. Moreover, they can operate 24/7, using a list of prioritized missions downloaded from a central management system.

As you might expect, Euroimpianti uses the QNX Neutrino OS in the realtime control systems of its AGVs. After all, predictable response times and high reliability — qualities essential to safe operation of a driverless vehicle in a busy warehouse — are QNX Neutrino’s stock-in-trade.

But here’s the thing: Euroimpianti has also decided to standardize on QNX Neutrino for the human machine interfaces (HMIs) of its operator panels. Why do that, when the HMIs could run on an OS like Windows Embedded or Android? The answer lies in the many features introduced in the QNX Neutrino OS 6.6 and the new QNX SDK for Apps and Media.

These features include a framework for creating apps and HMIs with industry-standard technologies like HTML5, JavaScript, and CSS, and a graphical composition manager that can seamlessly blend apps and graphical components created in HTML5, OpenGL ES, Qt, and other environments, all on the same display. In addition, the SDK offers secure application management, comprehensive multimedia support, mobile device connectivity, an optimized HTML5 engine, and other features for building mobile-class user experiences into embedded systems — including, of course, AGVs.

To quote Maurizio Calgaro, electronic engineering manager, Euroimpianti, “With its new QNX SDK for Apps and Media, QNX Neutrino enables us to create dynamic HMIs that leverage the latest Web technologies, including HTML5. Our operator panels and control systems can now run on the same, standards-based OS, and that means greater productivity for our developers and, ultimately, faster time-to-market for our solutions.”

The QNX SDK for Apps and Media includes an HTML5 environment to create and deploy applications.
Euroimpianti's QNX-based robotic systems also include Cartesian robots, anthropomorphic robots, and selective compliance assembly robot arms (SCARA). The systems are deployed internationally in the automotive, beverage, cosmetic, food, dairy, electrical, glass, and pharmaceutical industries. Learn more on the Euroimpianti Website, which includes many videos of the robots in action.

Using the same OS for both realtime control and user interface control.