A DSP based motion control system for an inject printer - Chang, Vui Kong. (2009)
In the fast growing embedded computing market, Digital Signal Controller (DSC) is a new type of microcontroller, where the processing power is delivered by a Digital Signal Processor (DSP) – a single chip device combining both the computing power of a DSP and the embedded peripherals of a single chip computing system. DSC is used in a wide range of applications, but the majority goes into motor control, power conversion, and sensor processing applications. Currently DSC is being marketed as “green” technologies for their potential to reduce power consumption in electric motors and power supplies. The TMS320F2812 is a 32-bit fixed point DSC that specializes in high performance control applications such as, robotics, industrial automation, mass storage devices, power supplies, and other control applications which needs a single processor to solve high performance application. A motion control system for an inkjet printer which interfaces with the PC and eZdsp F2812 by using Matlab/Simulink as the software development environment has been designed previously. However, this project faces a lot of limitation and problems, mainly due to the restriction imposed by the usage of Simulink. For example, Simulink does not allow the developer to use multiple General Purpose Input/Output (GPIO) blocks to interface to a single port. Besides, many unspecified errors will occur when the executable format (.out) is downloaded into the chip. In this project, C programming was used in replacement of Matlab/Simulink. The F2812 design supports an efficient C engine with hardware that allows the C compiler to generate compact code that is almost one to one corresponded to the C code. Milled printed electronic circuit board (PCB) was modified and tested to improve the performance of the printer‟s components (DC motor, Stepper motor, Encoder, Cartridge and switches). Various functions embedded in the eZdsp F2812 which is available for motion control applications such as the pulse width modulation (PWM) function and the quadrature encoder pulse (QEP) circuit were successfully implemented to control the printer prototype using C programming as the software development environment.