Hardware design of a mobile education robot, that uses Raspberry Pi 4 and FPGA-board for real-time control

To learn how to program a mobile robot, mobile robots are needed. Because RaM and the Robot Education Lab want a new robot, and because with the available robots the real-time control can not be accessed, a mobile robot needs to be made. In this assignment, the mechanical aspects and hardware of the robot are designed and made. The control unit of the robot is done by another student.

The two main requirements are: the robot needs to be mobile and the robot needs to have space for a robotic arm. This robot is divided into 3 separate parts, the mechanics, the drive train, and the power system. The wheels and the frame are analysed and the components are chosen. The final robot uses a rectangular frame of 24 by 34 cm made from aluminium profiles. Four wheels are used, two of which are round drive wheels of 70mm in diameter, and the other 2 are swivel wheels to make the frame stable.
The motor specifications, torque, RPM and power are calculated. With these specifications, several motors were found. Because of a tight project schedule, the components having a short delivery time had to be chosen. This restricted the motor choice to a reasonable quality choice, instead of a high-quality Macon motor.

To drive the motor, a motor driver of RaM was used, which has a VNH2SP30-E H-bridge motor driver chip on it. The inputs to these drivers and the output of the encoders are connected to an icoBoard, which contains an FPGA. The icoBoard is connected via spi to a Raspberry Pi 4. All of the components are powered by a rechargeable 12V Nickel Metal Hydride battery pack, with a 5V DC-DC converter for the correct voltage for the Raspberry pi.
The robot is constructed, and everything is connected mechanically or electrically. The robot is tested and meets most requirements, but not all. The robot is slower than wanted, the robot could reach a velocity of 0.42 m/s, and the required velocity was 0.5 m/s. But the robot could accelerate to this velocity in 1.09 seconds, which is well below the required 2 seconds. The encoders also did not meet the requirements, the pulse count was 3014-3100 with one rotation of the wheel, while 3408 was expected from the data sheet. The motors of the robot were required to move 10kg, the final weight of the robot is 2.5 Kg. Implies a payload or robotic arm of 7.5 Kg can be added. Due to some software issues, a 20-sim controller could not be tested to drive a trajectory. With some adjustments and better components, this robot could be used by the Robot Education Lab.