This past weekend we were able to do a complete test run of CoLo-PE that we’ve spent the last quarter updating with new changes.
The most notable addition is the new communication module which collects data about the received signal strength and the link quality (based on the number of dropped packets) as the robots move about.
Some quality of life updates were also added. As mentioned in previous blog posts, the robots can now be started remotely via SSH (versus using remote desktop software). More recently I also removed the requirement for the SSH connection to be maintained throughout the duration of the test. This reduces the amount of network traffic and fixes a problem we had before in which we would not be able to halt the robots if the connection was lost in some way. The script also keeps track of the processes that were spawned so that they can be removed cleanly at the end of the test.
|Old System||New System|
This video shows the Optitrack system tracking the robots during the test run. The recording has been sped up to 400% speed to show the progression of the robots more clearly.
While it was great to see the system finally come together, there were a couple issues that we identified during this first test. While it is possible to manually check if each robot was running correctly (i.e. all modules were properly recording data), it was impractical to constantly monitor each process for failure. My plan is to add a second background script that periodically checks the progress of the data collection of each robot to make sure that nothing fails during the test, and if something does happen, notify the operator.
We also learned that the Optitrack system performs best when calibration wandering is performed immediately before capturing a new take. Even if the system was calibrated the night before, we noticed significant tracking issues if we did not recalibrate the next day.