/ ezls / lehre / studiendiplomarbeiten / ctrlsyssensoractuatormobrobot / ctrlsyssensoractuatormobrobot.html
Development of an Embedded Control System for the Sensor and Actuator System of a Mobile Robot
Supervisors:Prof. Dr.-Ing. Klaus-Dieter Kuhnert
Dipl.-Ing. Jens Schlemper
Submitted by:Manvir Singh (M Sc. Mechatronics)
IntroductionIn the era of Robots, robotics engineers are facing new challenges where autonomous driving is a prime requirement. At the same time, the number of different sensors and electronic components in the Robots are increasing which increases the complexity of the Robot control system. With the emergence of Embedded Systems all the sensors, actuators and electronic components of the Robots now days are mostly controlled by the Embedded system. Robots are used for different application in Industries, Space and Educational institutes. It is a big challenge for the engineers to improve the autonomous driving capabilities of the mobile Robots. This concept of autonomous driving includes SLAM (Simultaneous Localization and Mapping), odometry, and developing algorithms for locomotion, perception and intelligent navigation. In order to develop this kind of Robot, different kind of sensors and actuators are required for the purpose of prediction of its position relative to the reference position and to get the real time information about the surrounding. This information helps the Robot control system to be able to move precisely, avoid obstacles and construct a map of the known and unknown environment. Some sensors are used for sensing the external environment and some are used internally in the different parts of the Robots for measuring the different physical quantities.
Sensors used in the Robots are generally classified in two categories. Proprioceptive Sensors are used for measuring internal quantities or values like battery voltage, pressure, current consumption, wheel speed, wheel load, heading of the Robot etc. Exteroceptive Sensors are used to gather information about the Robot environment like distance from the obstacles and Robot position in the field (GPS, Accelerometer, Gyro, Ultrasonic Sensor, IR Sensor, Cameras and Laser Scanner etc). Proprioceptive Sensors are mainly used to measure kinematic and dynamic parameters of the Robot. Based on these measurements the control system controls the actuators to exert the torque by result of which the mechanical structure performs the desired operation. Kinematic are the joint positions, velocities and accelerations and dynamics parameters are pressure, forces and inertia. This project mainly deals with the Proprioceptive Sensors which include pressure sensor, angle encoder and current sensor. Servo motor is used as an actuator.
ObjectiveThe sole aim of this project is to develop an Embedded Control System for the sensor and actuator system of a mobile Robot which can be used for measuring the physical quantities like pressure, current, steering angle and controlling the actuators of the Robot. This prototype can also be employed later for other mobile Robot platforms. This Embedded control system consists of the main computer Raspberry Pi, DC Servo motor as an actuator, a potentiometer and three sensors for measuring pressure, current consumption and steering angle.
The whole project is divided into three parts. The first part is to select and integration of the hardware. Next step is to program the hardware on LINUX™ platform and finally to develop a Graphical User Interface (GUI) to control the system and show the numerical values of different sensors and actuator using a Socket TCP/IP protocol.
DescriptionThe implementation of the project has been done in three steps:
Step 1: Hardware Integration
Step 2: Hardware Programming
Step 3: Graphical User Interface Development and Socket Programming
Hardware used in the project:
# Raspberry Pi
# Three Sensors (Pressure Sensor, Current Sensor and Angle Encoder)
# D.C Servo motor
# Potentiometer (Used to vary the duty cycle of the Servo motor)
# Analog to Digital (A/D) Converter
# Pulse Width Modulation (PWM) Controller