Control theory has historically been taught to engineers using block diagrams. Block diagram representations have a few key strengths including: 1) they indicate the signal flow path - thus are more informative, 2) they show how the system will be built in hardware, and 3) they are easier to code. With a block diagram, an engineer can understand a system at a glance vs. having to read through lines of code.Â
In order to write embedded code that is performant, however, engineers have to code their algorithms in lower level languages such as C, C++ and C#. This is a skillset that is expensive to find among engineers and many companies have chosen to split the responsibilities into separate departments - the control system engineering and embedded software development. Those that haven’t risk compromising the quality of their code or taking on the responsibility of training their engineers with a new skill set, which takes time and money.Â
There is an alternative that many companies have chosen to turn to. They automatically generate C, C++ or C# code from higher level languages that are more intuitive and natural to engineers.
reduction in integration time
In many modern systems, like air taxis and self-driving cars, engineers aren’t simply adding one new component to an existing system. Instead, they are adding multiple new technologies that include never-been-done-before connectivity, perception and GNC implementations. All of this translates into orders of magnitude more complexity. More complexity means more iteration is needed to get it right. Companies looking to get an edge in their development are turning towards automation to maintain high levels of productivity. The benefits that accrue to the companies that use automatic code generation tools include:
Collimator provides production ready automatic C code generation capabilities so you can focus on improving your system design