For two weeks, I have been mostly working on motion control. First, as our original motors had low torque for our robot base, we switched to motors with higher torques (6.5 kg*s/m). As soon as it came, Hirani and I put the motors in and tested them, which turned out to be successful. The robot was able to move forward and rotate. It was concerning, though, that the robot cannot move in-place because of its rectangular shape. As a solution, we are thinking of using backward movement while rotating 45 degrees when the trash items are not detected so that it can be in-place.
Also, I have set up the ultrasonic sensors on the bottom left of the robot base so that we can initiate the roller once the object is detected by the sensor. Today, I also connected the top ultrasonic sensor which is to avoid obstacles that are larger than the height of the robot. I ran into a problem where some of the gpio pins were not working, and, since we are using most of the gpio pins for our pick up mechanism and wheels, there were not many gpio pins left for the sensors. Now, we are figuring out what is causing such issue.
Finally, we have tested the pick up mechanism with new motors with higher torques as the stepper motors were not giving sufficient force for both roller and conveyor belt. As long as the teeth pulley is taut, roller and conveyor belt are working as expected. As we discovered that the trash item would not be properly placed on top of the conveyor belt because the belt was too far away, today I moved the belt and the ramp forward and tested with a soda can and a water bottle. Now, the entire pick up mechanism works as intended.
Therefore, my action item will be the following:
- figure out the issues with the gpio pins for ultrasonic sensors
- work on the final presentation slides
- complete path planning algorithm with obstacle ovoidance
- test with multiple trash items and with different directions
- cut out a hole on the front side of the electrical box to lower the position of the camera
For this week’s additional question:
I found Youtube videos and website articles to be very useful to implement and debug issues with the robot. For example, to make a conveyor belt and roller, I first searched up some Youtube videos that introduce how to make DIY belts and rollers. Then, I looked at the materials they used and saw if they were going to be necessary/useful for our robot base with aluminium extrusions. Then, I read other online articles that explain the methods of building the pick up mechanism. Once I gathered all the materials and gained information, I verified them with my teammates and my TA so that those information are accurate. To debug, as I did not have sufficient knowledge on how to debug those mechanical elements, I referred to online forums and friends who have knowledge in them.
Another example would be a set up for ultrasonic sensor, where I looked up an official website for an instruction in the first place to refer to the circuitry and codes they used, because they are all verified sources. Then, I looked at the official documentation on libraries they used in the codes so that I have a sense of what classes and features I am using for the sensors. For debugging, I would look at the online forum (such as raspberry pi community) to see if there are any similar issues people have encountered in the past.
0 Comments