Omkar’s Status Report for 11/5

This week, we met on Sunday to work on getting the robot to follow a path from the path planner. We were able to tune PID values such that the robot could follow the path with reasonable accuracy (may have to do more tuning later though). We noticed that the communication latency was causing our frame rate to drop from ~25fps from the CV to ~5fps. I prototyped using socket communication for lower latency, but ended up running into out of memory issues on the ESP8266 due to malloc overwriting the heap. I switched to writing a multi-threaded application, where the main program does the CV, path planning, and controls generation, and there are separate children threads that take the controls commands and asynchronously send the commands to the robots. This brought our frame rate up to ~14fps. We also noticed that the cubic interpolation caused large changes in theta error at the waypoints due to an aggressive orientation change. Saral and I worked to debug this and switch to a cubic hermite spline interpolation with a downsampled path on the straights to arrive at a more gradual interpolated trajectory.

Leave a Reply

Your email address will not be published. Required fields are marked *