Nowadays, rapid prototyping is supported by numerous development environments. The Matlab, and its extension, the Simulink allows engineers to describe and test controlling tasks with domain specific formalisms, fast and simple. As there are plenty of available and affordable platforms (such as microcontrollers, digital signal processors and development boards), tools and peripherals (such as displays, sensors and motors) for embedded systems, demonstrating principles and concepts on prototype machines – before the eventual development – has become a general practice.
The purpose of the thesis is to allow generating and deploying code directly onto embedded systems, without the need of handcoding. Because of the volume of existing embedded platforms and peripherals, a so called Embedded Real-Time Target and Embedded Blockset drivers are not available for all. The task is designing and implement those, integration of the development environment, and besides these, demonstrating the whole development process applied to a demonstration device, the purpose of which is to balance a ball on a touchpad.
The target platform is the so called BeagleBoard, containing an ARM Cortex A8 architecture microcontroller, a Texas Instruments OMAP 3530, and running a Linux operating system. The controlling algorithm, after processing data received from the touchpad and an accelerometer, tilts the touchpad by driving pulse width modulators in order to keep the ball in the middle, in case of being hit or pushed.