In this paper, we present a comprehensive approach to design of embedded real-time software for electrically controlled mechanical systems in automotive applications. As a case study, we implement a Gear change and Clutch controller for a Formula SAE car. This includes a generic communication interface and protocol for CAN bus communication, I/O interfaces for A/D conversion and PWM output, together with a PID controller for clutch actuation.
Under our framework, the embedded software is developed using Timber, a programming language and formalism that provides executable models for embedded real-time systems.
The case study shows how a complete control system can be straightforwardly modeled, simulated and transformed into executable code. The system has been realized and tested onto a lightweight, 8-bit AVR-5, embedded platform.
Compared to the raw C code design flow, the proposed framework has in our case study showed increased efficiency with respect to development time. We boldly conclude that our Timber based framework offers true “work with the work”.