At New Eagle, we’ve got a team of application engineers who are experienced using the Simulink tool to create control software. There are a few of us who have been using it for more than 10 years now to create embedded control software using code generation via MotoHawk. As a result, Simulink is the environment in which most of our engineers are most productive, and is therefore the environment used most often for developing the software inside the control systems we build for our customers. One place where we have had to resort to ‘old-school’ hand-coding (manually writing *.c, *.h files etc…) has been the embedded displays that go into control systems for user interfaces.
For many years, we had to author these applications manually, which typically meant that a software engineer (vs controls engineer) would need to join the project for a period of time to work on the display. This new team member would need to come up to speed on the project, which involved communication & iteration with the controls engineer who already knew the system. We desired to enable the controls engineer to rapidly develop the display, without resorting to embedded C, C++. With Raptor, we’ve added now three display targets, including a 7in touchscreen, that can be targeted for automated code-generation from Simulink. Besides the productivity improvement, a subtle benefit of enabling this environment is that messaging between an embedded controller, i.e. engine controller, and the display can use the same format, a DBC file, so there is little opportunity for things to get lost in translation controller <–> display.
Here is a link to the raw feed of a webinar I cohosted on the topic, recorded live July 24, 2014: