Continuing from my post yesterday about the new frontier of embedded software.
Nowadays it is not enough to just fly the plane, pilots have to manage tons of information while flying and they are connected with other units on the battlefield through a network that allows real time co-ordination.
Have you seen the cockpit of a new generation aircraft? Google the F-22 or the F-35 and compare them with the one from an F-104; you will not recognize a single piece of equipment. Head to YouTube and enjoy a video showing the maneuverability of one of these modern airplanes. Amazing!
Today simulation is widely used, aerodynamics is now explored in detail so engineers can master all the phenomena that affect the flight even in extreme conditions, and new configurations allow these aircraft to challenge physics laws… and win!! I’ve seen a Eurofighter Typhoon during a test flight operate at 80 knots and at no more than 100 feet from the runway — almost still in the air — flying with an angle of attack of 60 degrees. This could have been considered science fiction by an F-104 pilot. I’m amazed by the maneuverability of the F-22 or what an SU37 can do. I’m always impressed and fascinated with how aircraft designers created these masterpieces of engineering.
All of these modern capabilities would be impossible to achieve without fast, accurate and very robust control software. The F-104 was a very demanding machine to manage, but the new generation aircraft are impossible for a man or woman to control because they are designed to be unstable in order to be highly maneuverable. The F-104 aileron actuators were directly connected to the pilot stick through hydraulic circuits. In a modern aircraft the stick, as well as the engine control and all the other switches in the cockpit, send signals to the fly-by-wire computer that reacts to them by also taking into consideration other data coming from sensors.
As planes are increasing in complexity, software is becoming a key asset to provide the interface between the pilot and the aircraft response. This link makes it easier (or even possible) for the pilot to manage the machine in every flight condition. Often the software manages the aircraft by itself — not only for UAVs where the software must perform complex actions without any direct supervision — but also for manned aircraft, where the computer takes care of managing the engine and ailerons in order to avoid a stall during a specific maneuver or during a failure.
The Esterel SCADE platform allows engineers to design control systems and automatically create all the code lines (sometimes millions) that a computer needs to make a new generation of aircraft fly safely in every condition. In addition, with a specific tool, it is possible to design and test the human interface for all the controls in the cockpit that the pilot will use to manage the mission and the aircraft.
Going back to where I started at the beginning of this 2-part blog, can you now see the potential? When thinking about products of the future we have to face a complexity that increasingly means a smart system that’s behavior in the real world is strongly affected by electronics and embedded software.
If you want to be sure your product will perform according to your technical specification, to keep the promise it holds and not fail in any possible circumstance, you must be able to extensively test its behavior at both component and systems levels including the interaction between hardware and software. This is now possible. For the first time. In a single simulation platform. Just imagine what can be done in the future, now.