Self-Balancing Robot Control System in CODESYS for Raspberry Pi : Design and Construction of a Self-Balancing Robot using PLC-programming tools

University essay from Umeå universitet/Institutionen för tillämpad fysik och elektronik

Abstract: The Department of Applied Physics and Electronics at Umeå University offers education and conducts research in the field of automation and robotics. To raise the competence in automation in the CODESYS development environment it’s proposed to build a remote controlled self-balancing robot as a testing platform which is then programmed using CODESYS for Raspberry Pi.   The chassis of the robot consists of laser-cut plexiglass plates, stacked on top of each other and fixed using threaded rods, nuts and washers. On these plates the robots’ electrical components, wheels and motors are attached.   The control system is designed as a feedback loop where the robots’ angle relative to the gravity vector is the controlled variable. A PID-controller is used as the system controller and a Kalman Filter is used to filter the input signals from the IMU board using input from both the accelerometer and the gyro.   The control system is implemented in CODESYS as a Function Block Diagram (FBD) using both pre-made, standard function blocks and customized function blocks. By using the in-built web-visualization tool the robot can be remote controlled via Wi-Fi.   After tuning the Kalman Filter through plot-analysis and the PID-controller through Ziegler-Nichols method the robot can stay balanced on a flat surface.   The robots’ performance is tested through a series of test scenarios of which it only completes one out of four. The project ran out of time before further testing could be done.   For future work one could improve the performance of the PID-controller through more sophisticated tuning methods. One can also add a steering-function or test different type of controllers.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)