Posts

Common Robot Updates – 2/23/17

Goal: to calibrate driving forwards, turning left, and turning right.

Driving straight forwards: the first time we tested the code for the robot to drive straight, it more or less turned left. To correct for the veering to the left, we changed the motor power percents to correct the misalignment of the wheels. After managed to get the robot to drive straight, our next task was to correctly calibrate the distance traveled using the igwans. Because the robot doesn’t stop immediately after driving forwards, we must correct any input to the drive forwards method by reducing it slightly, accounting for any inertia that causes the robot to continue moving forwards even after the stop command had been given.

Our strategy was to command the robot to drive forwards 10 inches, and then measure the true distance traveled, allowing us to obtain a correction factor we could integrate into our code. Using this correction factor, we were able to travel to within 0.25 inches of any targeted distance.

Turning left/right: Our strategy for turning left or right was to move one wheel forward while moving another wheel backwards, allowing the robot to turn within a relatively small radius. To adjust the correct encoder count for a full 90 degree turn, the robot was tested with varying counts until a full 90 degrees had been reached. Our final encoder count was determined to be 280.

 

I also got to see the robot complete the first performance test today. I can’t explain my excitement. It worked.

Common Robot Updates – 2/22/17

We’re finally off to building our actual robots! After nearly two weeks of careful planning of our chassis, we finally got the acrylic laser cut and finished. It looked beautiful, at first I thought it was perfect. The choice to use the laser cutter was motivated by the fact that we had no mechanical experience, so holding it our hands, it truly was perfect, at least in comparison to anything we could have made ourselves.

Unfortunately the euphoria of finally holding a physical part of the finished robot quickly dissipated, as we realized that the skid mounts were barely misaligned with the acrylic holds that could not be modified. No problem – we’d simply sand down the skids to allow for the solder joints to better fit the skids and all of a sudden, we were able to squeeze the skids and the line following kit onto the robot. Our first hurdle crossed.

But of course, how could our problems simply end there? As we mounted the igwan motor adapters onto the frame, we slowly realized that with its current orientation, the wheels would rub against the sides of the chassis as they were turning. Somehow we had managed to totally ignore the importance of the adapter mounts relative to the sides of the chassis. This was definitely not something we could fix as easily as we did with the skids. In a spark of rare genius, we came up with the idea of redrilling the mount holes on the motor adapter itself rather than try to modify the acrylic, as drilling through the laser cut acrylic would potentially crack the entire chassis, while drilling through 3D printed plastic would be perfectly fine.

A day of finding problems and getting creative with our solutions ended with a final test. All sensors, motors, shaft encoders – sans a single pesky analog optosensor – were working.