Our turtlebot was able to find the most efficient path to pick up the trash and then drove itself to the trash bin. However, the main raspberry pi on the turtle could not be accessed due to security reasons. Therefore, we added another raspberry pi to control the motor and IMU.
As demonstrated in "STEP 4" in the implementation part, we were successful to control the motor based on the movement of the IMU.
When the turtlebot reached the target, the motor could not be actuated due to the fluctuation of the readings from the IMU. This is mainly caused by the fact that our turtlebot moved at a constant velocity thus having a small-scaled value of the acceleration that is not detectable by the IMU.
Our 3D printed scooper was too heavy for our low-torque motors (within our budget), hence it could not move up throughout the entire demo.
Overall, our design and software implementation were able to achieve path planning task and pick up trash.
During the design and software implementation, our team encountered several problems. Some of them still remained unsolved. Our difficulties include:
ssh into the main raspberry pi board on the turtlebot (No access due to security reason)
IMU readings were not accurate because of noise (loose connection, electromagnetic disruption).
Limited rated current drawing from rasberry pi. Thus we couldn't use a better motor.
Some future improvements includes:
Using the main raspberry pi board can make our wirings and connection more neat and robust.
Using the raspberry pi from the turtlebot can reduce our system design complexity and overall weight.
This will also make the wirings connection more neat and robust, and eliminate the use of IMU, the additional raspberry pi, and supply more current to the motors, achieving higher torque (T ∝ kt ⋅ I).
Implement object detection to improve accuracy and get rid of external camera