Thursday, October 16, 2014

Robotics - Wi-Fi Time

As in all Thursdays, today's robotics meeting was extended from its normal length of 90 minutes, this time to a full three hours! (Fortunately, there was pizza.) I finally started on the engineering notebook, taking advantage of my nice video-and-image camera to photograph the sketches on the whiteboards. 

I also took some time to read over the engineering notebook section of the rulebook, and also went through the official FTC Forum's question-and-answer section. When a question is asked there that requests a rule clarification, the response from the FTC officials is essentially added to the rulebook. Unfortunately, it's spread out all over a bunch of forum threads and not centralized very well, so basically rules are constantly being created and I don't have a convenient way to know about them.

The box-with-flap idea continued its development. The team captain attached a servo to the box and constructed a frame for the assembly, which will be combined with another design by a different builder.

Builders from the school's other team asked me to help them program their robot. They don't have a programmer, and I didn't have anything else to do, so I started hooking up their robot with some functionality. First, we needed wireless connectivity. The Samantha module that I couldn't get to power on previously worked on their robot (I guess the battery I was using is bad), but it refused to accept configuration from the USB drive - it would do the light cycle like it was updating, but would always go to a random unsecured network instead of the one I told it about.

It turns out there were two problems. One: the Samantha module was bad. Two: the flash drive I was using had too much capacity. The Samantha bootloader can only address 4GB of hard drive space and will be very confused if there is more. Fortunately, there was a 2GB drive laying around.

With everything connected, I moved on to writing some code. Since all they had connected to the robot was the driving motors, the code was extremely simple. However, it didn't work well at all - the joystick controls don't seem to have any effect. It works as expected when I hard-code motor power values, but passing in joystick values makes the robot go in circles slowly or do nothing at all, depending on whether I epsilon'ed the value.

I did discover that I have to call getJoystickSettings (or something like that) on the "joystick" object, but even that doesn't seem to help. I'll have to keep looking in the configuration - something has to be wrong with the controller setup.

No comments:

Post a Comment