Project Oberon: the design of an operating system and compiler
Project Oberon: the design of an operating system and compiler
WPDRTS Selected papers from the 4th workshop on Parallel and distributed real-time systems
The embedded machine: predictable, portable real-time code
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Giotto: A Time-Triggered Language for Embedded Programming
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Time-Safety Checking for Embedded Programs
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
Principles of Real-Time Programming
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
Composable code generation for distributed giotto
LCTES '05 Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
Translating discrete-time simulink to lustre
ACM Transactions on Embedded Computing Systems (TECS)
The Challenges of Building Advanced Mechatronic Systems
FOSE '07 2007 Future of Software Engineering
OATS: Oxford Aerial Tracking System
Robotics and Autonomous Systems
The embedded machine: Predictable, portable real-time code
ACM Transactions on Programming Languages and Systems (TOPLAS)
Separate compilation of hierarchical real-time programs into linear-bounded Embedded Machine code
Science of Computer Programming
Modular verification of safe online-reconfiguration for proactive components in mechatronic UML
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
Simulink timed models for program verification
Theories of Programming and Formal Methods
Hi-index | 0.00 |
We demonstrate the feasibility and benefits of Giotto-based control software development by reimplementing the autopilot system of an autonomously flying model helicopter. Giotto offers a clean separation between the platform-independent concerns of software functionality and I/O timing, and the platform-dependent concerns of software scheduling and execution. Functionality code such as code computing control laws can be generated automatically from Simulink models or, as in the case of this project, inherited from a legacy system. I/O timing code is generated automatically from Giotto models that specify real-time requirements such as task frequencies and actuator update rates. We extend Simulink to support the design of Giotto models, and from these models, the automatic generation of Giotto code that supervises the interaction of the functionality code with the physical environment. The Giotto compiler performs a schedulability analysis on the Giotto code, and generates timing code for the helicopter platform. The Giotto methodology guarantees the stringent hard real-time requirements of the autopilot system, and at the same time supports the automation of the software development process in a way that produces a transparent software architecture with predictable behavior and reusable components.