Professional Documents
Culture Documents
Within the Barracuda system the FCS coordinates the The system kernel of the Barracuda FCS is designed as
system initialization of fail operative (fail-op). In the case of a first error the nomi-
nal system functionality is kept. This is guaranteed by the
– the navigation system, shut-down of the erroneous module. After this re-
– the air data system, configuration the system kernel is still fail-indicative (fail-
– the electrical system, ind). Non-essential systems are designed fail-safe. In case
– the actuation system and of an error in these systems their functionality is no longer
– the engine. used.
Only the electrical connection is established over the
Startup Panel (see Fig. 2). Engine start is also performed The Barracuda system kernel consists of the FCC, the
from the Startup Panel and monitored by the ground staff navigation platforms, the laser altimeters, die actuation
on an externally connected laptop displaying engine data. system (except the nose wheel) and the air data system.
Non-essential systems are the nose wheel steering and
the data link.
Fig. 2: Startup panel Due to the off-the-shelf approach the nose wheel steering
is simplex only. In order to be able to detect an error a
After all systems have been powered and the actuator
control-monitor structure is implemented which in case of
movement check has been performed, the second func-
an error allows switching the nose wheel to its free castor
tional chain is invoked (see Fig. 8).
mode.
With the aid of the navigation system and the air data
system the flight vector is determined. From the pre- 2.1.3. Health monitoring
programmed waypoints the FCC calculates the flight guid-
ance commands. The design of the flight control is ex- The FCS health monitoring function observes all FCS
plained in ref. [8]. functions. Three categories of observed information can
be determined:
Besides these flight guidance modules there are several – Equipment data
other functions required to establish a Flight Control Sys- – Information from the redundancy management
tem: – Information the FCS software self-monitoring
– Management of the real-time capability, Some state information are delivered by subsystems it
– Monitoring of Utility Systems selves. Typically this is the case if these subsystems are
– Redundancy management integrated within separate equipments. An example are
– Health monitoring the navigation sensors which detect and report hardware
The two latter functionalities are explained in the following errors like the exceedance of temperature limits and also
chapters. functional errors like a diverging hybrid navigation solution.
Besides collecting all error information it is the health Over the FCS Bus (MIL-Std-1533B) the FCC communi-
monitoring's task to synthesize a combined error status for cates with Remote Interface Units (RIU) to the Utility Sys-
each subsystem out of this information. tems, with the brake computer (BCU), with the navigation
platforms (inertial reference system / global navigation
In order to correctly interpret error information the state of satellite system; IRS/GNSS) and the air data computers
the whole system has to be taken into account, e.g. (ADC). The laser altimeters are connected to the FCC via
whether a system/subsystem is being initialized or already RS 485 and the actuation system via ARINC 429. Nose
in flight state. Since a large number of signals and de- wheel steering and the engine are controlled via analog or
pendencies has to be covered, modeling this functionality discrete signals which are generated by the FCC. The
in a data-based approach is easier to realize and even AMC is connected to the FCC via the Avionic-System-Bus
more important much easier to be validated and verified. (AVS-Bus, MIL-Std-1553B).
principle here is that the signal quality can usually better BC GND analog analog
Connected to
Ethernet AMC
Nose boom
GND analog analog FCS Sensores
CCDL
GPS antenna
The evaluation of the conducted taxi trials has shown that DAU
discrete
AVSBus
FCSBus
ARINC429
BC
Connected to
Nose boom
GND analog analog ADC
transmitter
by the fact that the sampling rate of the flight test instru- GND analog analog
GND
CCDL
IRS/GNS antenna
I/O I/O IRS/GNS antenna
monitoring. This has been overcome by the design of the Startup Panel
discrete FCSBus
BC IRS/GNS antenna
analog analog
RIU Landing Gear,
Nose Wheel Steering RIU Fuel, Hyd,
The introduction of autonomous functions is required when Fig. 3: System architecture (from [13])
situational awareness cannot be sufficiently established on
The operator interface is realized over the AMC. The AMC
ground which is the case for UAV [12]. This was the driver
communicates with the ground control station over the
to take some decisions on board already at the early dem-
command and control data link. From the GCS operator
onstrator stage of the program. Currently within the Barra-
commands (High Level Commands) are transmitted to the
cuda autonomous decisions are limited to those aspects
AMC and confirmation data sent in return.
which would endanger a safe flight.
In order to minimize development effort, the aircraft was
From this view the most critical is the acceleration of the
designed to be also used as a test rig.
aircraft during take-off shortly before rotation. When sys-
tem errors are detected in this phase a take-off abort is
automatically initiated. Since FTI and the command and
control data link have not been designed to cover safety-
critical functionality and data it cannot be assured that the
operator can detect all errors and that the required com-
mands can be transmitted to the aircraft. Nevertheless the
operator can command a take-off abort also from ground.
After an overview about the chosen system architecture Fig. 4: Barracuda airframe in use as test rig
the connection to sensors and actuation to the integration During rig operation for hardware-in-the-loop-simulation
center of the system, the FCC is presented. real sensors and equipments can be bypassed and the
functions implemented within the FCC are stimulated with
simulated data. This also allows to stimulate errors and to
test system behavior in error conditions. Fig. 4 shows the
Barracuda connected to the simulation. The chosen architecture has the following features:
– The functional triplex architecture is mapped on three
2.2.2. Sensors identical channels with in the FCC, which together
with the corresponding channels of the sensor system
The sensor system's task is to acquire all data required to form the three lanes of the FCS. The term lane is
determine the flight state vector. The Barracuda sensor used synonym for channel in the following chapters.
system consists of the air data and navigation system. – In order to support the off-the-shelf approach for all
other FCS equipment the FCC has to support a large
variety of interfaces like ARINC 429, MIL-Std-1553B,
The air data system (Fig. 5) hardware consists of the nose
RS 485 and discrete and analog inputs and outputs.
boom with sensors for air flow angles and pressure trans-
– Each of the three lanes is equipped with two micro-
ducers, two ADCs and a sensor to measure the air tem-
controllers MPC565 to execute the application and
perature (total air temperature, TAT). The ADCs are con-
two additional MPC565 for interface and ARINC429
nected to the FCC over the FCS bus. The FCC incorpo-
operation.
rates the function for air data consolidation and an analyti-
– For both intra- and cross lane communication (Intra-
cal backup solution to cover a sensor failure.
Lane Data Link, ILDL and Cross-Lane Data Link,
CCDL) a MTU-proprietary, serial bus protocol in point-
to-multipoint topology is applied.
FCC
analog Further explanations about the FCC-hardware are given
Lane 1 FCSBus
analog FCS Sensores
in [4].
ADC Nose
CCDL
ADC Boom
The software-/software-interface to the hardware-near
analog
analog
Lane 2 FCSBus
TAT
software which was developed by the FCC-supplier MTU
was chosen in a way that MTU implemented input-/output-
MILBUS 1553B (1)
MILBUS 1553B (2)
MILBUS 1553B (3)
CCDL
The functional system- and subsystem-design is mapped In order to trace test coverage a verification matrix was
into the software architecture by a 'domain' concept. The established in which to each requirement its mean(s) of
domains are reflected in the naming of parameters and compliance (e.g. simulation, analysis, test or review) was
software components and also describe the work share attributed and linked with to the verification result.
borders of the disciplines and developers involved. E.g.
the domain 'ADS' includes all functionality belonging to the 3.1.3. Tools
air data system, 'NAV' those of the navigation and 'MIL'
the service and drivers of the MIL-Std-1553B bus.
To capture system and interface requirements DOORS®
from Telelogic was used in its version 6.0. The tools for
the modeling of the low level requirements are allocated to
3. THE DEVELOPMENT PROCESS the tool environment of the software development envi-
ronment and are described in that paragraph.
For the military aircraft development the V-Model is an
exceptionally important standard [1]. This development DOORS® uses the advantages of a data bank in which for
model is sufficiently described. The only remark in this each system a data base is created in which each data
paper is, that the V-Model foreseen a forward-directed item represent a uniquely identifiable requirement. Re-
course of development activities from the specification of quirements can be linked to higher levels in order to allow
the whole system (in the case of a UAV the aircraft, data a traceability analysis.
link and GCS) down to equipment level and that the proc-
ess presented here implies that from the start of the de- The same applies to verification evidence. Each test is
velopment the constraints of the software development defined as a separate dataset and therefore each tested
have to be taken into account (ref. [10]). requirement can be traced to a test case. Are all require-
ment linked to the verification matrix, the proof of a full test
coverage is automatically produced.
3.1. System development process
In general the main features of the system development 3.2. Software development process
process do not differ from the classical approach of the V-
model (ref. [6]). Deviating from this approach for the defini- The development process of the Barracuda FCC software
tion of the term 'low-level requirement' an innovative has to fulfill in general two sets of requirements.
method of notation is chosen. This is further explained in
the description of the software development process
On one hand the software and with it its development
process has to satisfy extremely high requirements with
The following paragraphs describe the approach and respect to safety and correctness. In this context focus is
methods of the chosen approach and it is explained where on the certifiability of the software. Although the FCS soft-
– due to the experimental character of the projects – de-
ware is not being certified at the current stage of the pro- integration of the whole software system is performed.
gram, process and software are conceptualized that a Furthermore the EPS is applied also within the system
certification according to the high requirements of the development process, since major components of sensor
software certification standard for airborne onboard- signal processing and consolidation and the digital control
Software, RTCA DO-178B (ref. [9]), is possible anytime. are development graphically, are verified against the un-
derlying requirements and are used to validate these re-
On the other hand the software development has to be quirements in the frame of simulations.
able to cope with the high dynamics of an innovative proto-
type development and the resulting short development The enabler for the application of the EPS is the model
cycles. This brings up the issues of a fast, efficient and based software design (MBD) with automated code gen-
error-free code production and the maintainability of the eration. This enables the system designers to perform
software. their design, verification and validation activities on an
appropriate level of abstraction and enables the software
For both topics a clear structure, a continuous naming of designers to efficiently derive source code of high quality
identifiers and conformity to the software standards are from the model. The automated code generation moves
essential. essential parts of software design and coding into the
configuration of the code generators, in which the rules for
3.2.1. Application of RTCA DO-178B mapping the model into source code are determined. For
the code generator configuration major design decisions
have to be taken which consequently determine the quality
The process for the development of the Barracuda FCS of the generated source code. This has impacts on verifi-
software was directly derived from the certification re- ability and maintainability of the source code.
quirements. Applicable certification standard for airborne
onboard software is RTCA DO-178B. As the aircraft was
Design and coding decisions which cannot be imple-
certified according LTF 1550, Kategorie 2 but under Kate-
mented within the configuration of the code generators are
gorie 1 conditions for the first phase of flight testing, a
made available to the system designer by a software
dedicated certification of the FCS and therefore of the FCS
model standard (in addition to the DO-178B software
software is not required. Also due to tight budget con-
standards). Compliance to the software model standards
straints software verification was limited. As a full certifica-
is checked at the gate into the software development
tion Kategorie 2 is foreseen as a later program stage, the
process in a computer aided model review.
development team decided to conduct design and coding
according to software level A.
With the verification process automatedly generated code
is handled similar to manually derived source code. A tool
The relaxation of the requirements to the verification ob-
qualification of the code generators was not performed.
jectives can be directly derived from the reduced certifica-
tion requirements for the FCS operation under Kategorie 1
conditions. Within the verification activities instead empha- 3.2.3. Methods
sis was laid on the development of dedicated verification
methods and the setup of a tool chain for a highly auto- Basic software development method is the object oriented
mated verification process in order to lay the foundations design, which can be characterized by the following para-
for a later certification according to Kategorie 2. digms which directly implemented in the design of the FCC
software:
The software configuration management process covers – Building of objects and classes: Common representa-
all artifacts of system development, software development tion of state and behavior of functionality of objects
and verification in order to allow a full traceability of all and aggregation of similar descriptions to classes.
software build standards. Instantiation of the software – Abstraction: Masking of the implementation complex-
quality assurance process and of the certification liaison ity of parts of functions by representing them as
process was not performed as no FCS certification was classes with internal states and behavior.
required for Kategorie 1. – Encapsulation: Functionality and data of a class are
exclusively provided by its method (functions) and ac-
For a full certification of the aircraft according to Katego- cessors and mutators, i.e. no direct accessibility on
rie 2 a certification of the FCC software according to DO- data e.g. over a global declaration.
178B, Level C is foreseen. The prerequisites for this certi-
fication were worked out in the current development phase The object oriented paradigms inheritance, polymorphism
and will be brought to production standard prior to this and late binding were not taken into account as the certifi-
certification. ability in the context of DO-178B can not be assured, and
if only with enormous effort.
3.2.2. Software development approach
Based on the object oriented design the particular soft-
ware development methods were determined for each of
The software development approach chosen is the evolu-
the software components to be developed. The following
tionary prototyping of software component (EPS). The
methods can be distinguished:
EPS differs from the conventional evolutionary prototyping
[1] that way that the prototyping is performed separately – Process-scheduler, math library, parts of the health
for single software subsystems and not for the whole soft- monitor, FTI functions, generic functions and drivers
ware system. The software development process is for MIL-Std-1553B, ARINC 429, RS 485: Manual, ob-
passed locally for each software subsystem, before a ject based design and coding.
– Process-schedules and MIL-Std-1553B bus lists: – Fulfillment of safety and quality requirements on the
automated schedule planning from a process mode. source code
– Adjustable parameters and waypoint lists: System – Code from the sub-processes can easily be integrated
design and automated code generation from Matlab® into the whole software
scripts. – Highest possible degree of automation
– Data representation layer for MIL-Std-1553B, – Full traceability of changes by application of tool
ARINC 429, digital and analog inputs/outputs, CCDL based configuration management
and ILDL: System design and automated code gen- – "Single source“ approach: i.e. for each item only one
eration from interface control documents (ICDs). specification (e.g. model, data base module) in order
– Parts of the health monitor: System design and auto- to avoid inconsistencies and errors
mated code generation from an abstract specification.
– Inertial, laser altimeter und air data signal pre- The development methods described in Para 3.2.3 were
processing and consolidation, flight control, autopilot, implemented by applying the following tool set:
moding, flight guidance: System design and auto- – Design of UML models and code generation with
mated code generation from data flow diagrams and Rhapsody (I-Logix)
state charts. – Design of data flow diagrams and of state charts with
– Software architecture and system moding: Object MATLAB®/Simulink®/Stateflow® (MathWorks); code
based design and automated code generation from generation with TargetLink (dSPACE)
UML models with class diagrams and state charts. – Specification of the data representation layer and of
Overall about 95% of the whole FCC software was gener- the health monitor logic networks with the requirement
ated automatedly. management tool DOORS® (Telelogic); Code genera-
tion with the DOORS® script programming language
"dxl".
Integration of the software components was solely per-
formed on source code level. Therefore strict adherence to Besides the two sub-process chains Simulink®/TargetLink
the naming conventions was required up to system design. and Rhapsody® in which the adaptation of the code gen-
eration and the establishment of the software model stan-
The applied software verification methods are chosen in dards were performed, all other sub-processes for soft-
accordance with DO-178B: ware generation and integration were covered with pro-
prietary tools.
– Reviews: Models, ICDs and source were reviewed
and the objectives of the defined verification process The FCC software of the Barracuda was developed in the
which were not covered by other verification methods programming language C. For safety reasons only a sub-
were checked. set of C was applied.
– Analysis: Computer aided schedulability analysis were
performed to demonstrate that the computed process
schedules as well as the MIL-Std-1553B bus lists sat-
isfy their requirements; static source code analysis 3.3. Software / system development synergy
were performed to check the conformity of the source
code with the software standards for the automatedly Prerequisite for an efficient and error-free development of
checkable part of the rule set. safety critical systems and software in the described envi-
– Tests: For selected critical software components low ronment are a well-defined development process and the
level tests on a pre-target (single board computer) application of powerful methods and tools.
were conducted without code instrumentation to ana-
lyze statement and branch coverage; for the data flow The process applied for the development of the Barracuda
diagrams and state charts integration tests on the pre- FCS shows several advantages. In first place the transition
target were conducted including an analysis of the from a 'classical' software development towards model
structural coverage; hardware/software integration based techniques is to be mentioned. The application of
tests were conducted on the FCC in the frame of the model as a description creates a common language for
system integration tests. system and software developers.
Target of the development phase of the Barracuda with
respect to the verification methods was to refine these The higher degree of abstraction for the description of
methods, but due to the already mentioned budget con- complex contexts by a model creates a better and more
straints it was not possible to apply all method to all soft- intuitive understanding for not only for the developer of a
ware components. In fact their application was performed specific function. Both this advantage and the fact that
partially exclusively or the results gained from system within the presented integrated development process the
integration testing about the integrity of a software compo- models itself partially represent requirements are enabler
nent were assessed as sufficient. A full performance of the to assure the achievement the characteristics of good
verification activities is foreseen for a Kategorie 2 certifica- requirements, especially unambiguousness, consistency
tion. and completeness.
3.2.4. Tools It was shown that models represent an ideal basis for inter
disciplinary discussion and reviews can be conducted
much more effective with higher quality results.
Main criteria for the implementation of the process and for
the choice and configuration of commercial and self-
developed tools were: As the models were taken as the basis for an automated
generation of documentation and code, manual error-
prone steps are eliminated from the traditional process [3] BMVg, WTD 61: "LTF1550-001 - Sonderbestimmun-
chain. Traceability and consistency are implicitly given. gen bei Prüfung und Zulassung unbemannter Luft-
fahrzeuge der Bundeswehr", 2004
[4] Gottmann, T: "Auslegung des Barracuda Gesamtsys-
4. SUMMARY AND FORECAST tems", Deutscher Luft- und Raumfahrtkongress 2006,
Braunschweig
[5] Hierlwimmer, R., et al.: "Systemkomponenten für den
It could be shown that the developed architectures as well Barracuda – Entwicklung eines Flight Control Com-
as the chosen approaches, methods and tools were highly puters und der Schubdüse", Deutscher Luft- und
appropriate within the environment of the demonstrator Raumfahrtkongress 2006, Braunschweig
development program. A cost and time effective develop- [6] IEEE: "IEEE STD 1220-1998 – Standard for Applica-
ment process was implemented. tion and Management of the System Engineering
Process", IEEE, New York, 1999
A detailed quantitative assessment of the efficiency was [7] Jarasch, G., Schönhoff, A.: "Integration von UAVs in
not performed, nevertheless the advantages are obvious den kontrollierten Luftraum", Deutscher Luft- und
as the team size was much smaller than it would have Raumfahrtkongress 2002, Stuttgart
been possible with a 'classical' approach. The integrated [8] Moormann, D. et al: "Autonome Flugregelung des
approach of system and software development led to a UAV-Demonstrators Barracuda", Deutscher Luft- und
transparent development process and to an efficient con- Raumfahrtkongress 2006, Braunschweig
duction of the project. The developed procedures, meth- [9] RTCA: „Software Considerations in Airborne Systems
ods and tools will be applied in future developments. and Equipment Certification”, DO-178B, Washington
D.C., USA, 1992
The Barracuda development is not yet finalized. The suc- [10] Schönhoff, A., et al.:"Moderner Entwicklungsprozeß
cessor of the demonstrator will be used as an experimen- für sicherheitskritische Software", Deutscher Luft- und
tal platform for future agile operational systems. Raumfahrtkongress 2001, Hamburg
[11] Seitz, R., Westerbuhr, F.:"Advanced Mission Com-
puter", Deutscher Luft- und Raumfahrtkongress 2002,
5. REFERENCES Stuttgart
[12] Stütz, P., Schulte, A.: "Missionsmanagement für ein
[1] Anderson, Dorfman: “Aerospace Software Engineer- hochfliegendes, unbemanntes Luftfahrzeug im kon-
ing: A Collection of Concepts”, Progress in Astronaut- trollierten Luftraum", DGLR-Workshop T5 UAV,
ics and Aeronautics Series, V-136, AIAA, 1991 Braunschweig, 2002
[2] BMVg: "Entwicklungsstandard für IT-Systeme des [13] Wetteborn, D.: "Analyse der internen Kommunikation-
Bundes – Vorgehensmodell Juni 1997", 1997 sarchitektur eines Flugführungssystems", Studienar-
beit 2005, München
GPS / LINS
DGPS - Electronic
INS - Laser Air Data
Solution Engine
Solution Alt Computer
Control
Kalman
Filter
I/O
FCC
Navigation
Fuel
Air Data
Estimator
Navigation Airdata
Consolid. Calc/Cons.
Inertial Airdata
Consolid. Estimator
D/L AMC I/O
Operator
Display
Flight Guidance Flight Control
Start_Mission
Primarys
Moding
Health
Monitoring UCS
Emergency Actuation Actuation for
Servo
Commands Redundancy Control NWS, Engine
Rejected T/O CCDL
Go Around
Turn
... Scheduling
@50 Hz