The project consists in the simulation of an assembly chain where different car frames go through different stages on a conveyor belt. The different stages of the car assembly are the following: visual recognition, selection, and consequent elimination of the wrong car (i.e. damaged car), and assembling doors and wheels on the right car frame.
The horizontal motion of the car were modelled using a ball screw feed drive system actuated by a DC motor and a closed loop control with a proportional controller applied to the transfer function between the angular velocity and the motor input voltage. The angular velocity was then integrated to obtain the motor angle.
As for the programming, the project was developed in C language under the Linux operating system, using the gcc compiler, the Pthread library for tasks management, an ad-hoc library for managing time constraints and the Allegro library for graphics.