Omkar’s Status Report for 12/10

This week, we focused on making our pickup and dropoff as robust as possible. Saral and I worked on modifying the electromagnet PCB to try to discharge the inductor faster by adding a resistor in parallel with the inductor. That did not seem to work very well, but we added some electrical tape between the pallets and the electromagnet, which worked well for disrupting the magnetic field a little bit so that the pallet does not stay magnetized to the electromagnet but not so much that the electromagnet cannot pick up the pallet. I also modified the code for sending the command to enable and disable the electromagnet to the robots, so they activate the electromagnet earlier, and the system is more fault tolerant to dropped packets on the network. We also added a capacitor on the 5V rail to prevent the MCU from restarting when the electromagnet gets enabled, allowing us to extend our battery life. I helped Prithu debug and implement the new task planner, which uses the distance from pallets to robots as a heuristic. Finally, we filmed videos for our demo on Monday in case we have issues in Techspark.

Saral’s final status report (12/10)

For the final push on our project, I worked with the team to get the final items off our checklist in making our system as robust as possible. More specifically, Omkar and I worked on tweaking the electromagnet circuit to de-magnetize it more effectively during drop offs (using resistors with a flyback diode), we also added bus capacitance on the regulator output to help with the inrush current spike during the rising edge of enabling the electromagnet, we worked on improving the visualizer to color code each of the robot paths to make the visualizer more usable.

I also worked on minor fixes with the rest of the team like edge case handling for the robots, and also filming videos for our final demos in case we have issues at the presentations.

Team Status Report for 12/10

For our final week, our team spent all of our time robustifying our system as much as possible for our demo. Prithu worked on putting the finishing touches on the planner and addressed any remaining issues with collision checking and failure modes. Omkar and Saral worked on fixing some issues with pallet pick-up and drop-off reliability as well as a hardware bug caused by the power draw of the electromagnet. We spent a fair bit of time running tests to make sure everything would run smoothly for the demo. We also planned out a rough presentation that we can use to describe various parts of our project/system in detail and filmed demo videos.

Prithu’s Status Report for 12/10

I spent the final week of our project robustifying the planner as much as possible to get ready for our demo on Monday. I experimented with what to do when the planner is unable to find a path for one (or a few) of the robots. No planner is perfect and this is always a possibility. One option I tried was to sample start points within a certain radius of the robot and try planning from those samples until a plan is found. This puts more of a burden on our controller. Unfortunately, this wasn’t able to work properly. The final (and much cleaner) solution was to reassign that robot’s task to a different one if it was not able to find a plan. This sacrifices a bit of efficiency for robustness but is fine since it’s rare for a path to be uncomputable. I also made some small bug fixes to the dynamic collision checking and post-dropoff motions. Finally, I worked with Saral and Omkar to plan our final demo and film a few videos that we can show as a backup in case something goes wrong on Monday.

Team’s status report 12/3/2022

The team worked on getting final things finished on the capstone project. More so, we shifted our focus from putting the final touches and cleanups on the project and shifting into documentation and presentation prep mode. Specifically, we worked on getting our final presentation, final report, and various videos taken. We also collected our various metrics for the project.

Saral’s status report 12/3/2022

This week I focused on getting all the final loose ends tied. Things like charging all the robots, improving the robot’s bugs like weak wheels, dying voltage regulators etc. I also focused on getting the performance of the sense-plan-act loop improved by optimizing the computer-vision visualizer

Prithu’s Status Report for 12/3

This past week I worked on putting the final touches on the planner code. The task planner heuristic was modified to better assign pallets to the robots that are closest to them. I also worked on some bug fixes related to static collision checks with non-moving robots. As a team we spent a lot of time working together on getting ready for the final presentation and demo as well as performing final integration tests/fixes.

Omkar’s Status Report for 12/3

This past week, I worked on optimizing the visualizer by trying to computing the arrow vectors across the multiple processes. However, we ran into many issues with variable sharing across parallel processes in python. We ended up using python’s multiprocess shared memory manager for the different processes, but we found that the bottleneck was actually rendering the image after computing the poses for the robots and the paths. We solved this by downsampling the visualization image and scaling all our arrows by the same ratio to match. I also worked on minor bug fixes on our software stack, like modifying our infinite control loop to exit if all the pallets have been dropped off. I also implemented a timeout in the robot firmware where if it hasn’t received a servo command for over a second, it detaches the servos so that the robot stops.

The rescope from our original proposal is just limiting the number of robots we have on the field to 3 robots.

Team Status Report for 11/19

This week, we got multiple robots working and are working on robustifying the code to handle an arbitrary number of pallets and robots. We are working on testing the task planner heuristic and the backup controller once the robots drop off their pallets. We are on schedule and are hoping to start V&V testing soon. There are a few minor things to do, but we have made good progress on our project.