top of page

Final Crunch

These past two weeks we've been working non stop to get the robot ready for demos. Here's how our progress went:


Electrical

Last week we finished assembling the robot, so now we were ready to wire everything together. The picture below shows our power distribution board which connects the battery to 12 buck converters that power the joint servos and another buck converter for the Jetson Nano and gimble servos.

After finishing soldering the power distribution board, we proceeded to assemble it on the robot. Then we assembled the buck converters and wired them to all the joint servos. We then proceeded to wired all the PWM signals of the servos to the Teensy. The result can be seen in the picture below:

After that, the gimble servos, Jetson Nano, GPS and the last buck converter was wired. The final wired robot can be seen below.



Software

Disease Detection

The disease was successfully detected by the machine learning algorithm implemented. YoloV5 was used to achieve a roughly 90% accuracy. It lagged a bit when used during the live feed, with a couple seconds of delay.


Webapp

The webapp was created for easier access to the controls for the robot. This was done by adding buttons for each one of the existing actions In addition, the webapp was able to show off battery status and location of the robot, and show a live video feed of the robot.





App

The app was able to show the location of the robot, but the controls were not able to be implemented on the app. As such, the webapp was favored.


Controls

While the app and website was being worked on, roll, pitch and yaw was incorporated into the inverse kinematics. Some issues were encountered with the roll and pitch but that was dealt with after re deriving the math and the bugs were found. After that, a basic control loop that ran a state machine for walking was incorporated. The gait that was implemented was one where only 1 leg ever lifts off the ground at a time which results in a very stable gait. However the performance was quite since the servos were not fast enough due to the high gear reduction used. This meant that when the robot lifts its leg, it ends up dipping instead of the ground coming off the ground. This causes a weird walking shuffling motion. Finally, the robot motions integrated into a serial command interface so they can be run by the Jetson (as mentioned in the Webapp section). The video below is the demonstration of all the robot motions that have been programmed.


Mechanical Adjustments

During testing it was discovered that the legs would twist, and bend under the combined weight of all the components. This sort of bending out of plane of the sheet metal parts was not accounted for during the initial design phase and led to gear meshing issues. In particular, the bending of the sheet metal plates caused the cantilevered pinion to disengage with its respective gear, as a result this would cause gear teeth to skip. The original leg can be seen in the image below.


To fix this issue, a large PLA block was printed to add rigidity.





bottom of page