REVOBOTS: Manny the Manual Line Following Robot

Manny, the manually operated robot

So the other day I got bored and prototyped something which I quite liked for revobots.  It might be to people advantage to see it here before revobots meets again in two weeks, so I thought I would do a post.

One might wonder what a manual robot is.  Well, thats what I am calling this.  It doesn’t have any actuators, so you have to move it around with your hand, but if you follow the instructions it gives you (via the LEDs) it will follow a line!

The pseudoalgorithm for this is that each sensor has some threshold so that it reports a status back- either light or dark.  If the middle sensor is dark, and the outer sensors are light, then light no LEDs.  If any sensor is not on the proper darkness, a corresponding LED is lit.  So if the left sensor strays onto the line, and the other two are off the line, then the middle and left sensor LEDs turn on, indicating the need for a right turn.

Oh no! Hard to port!

Soon I will have this mounted on a revobot chassis with power, then I will post a video and documentation!



REVOBots Week 1: A Success, Overall

Microcontrollers, Yo.

Links to videos and handouts for class:

Part 1, Part 2, Part 3

REVOBots handout 1

REVOBots week 1 was a success, in my opinion.  Teaching a class is tricky.  This first class was doubly so because it was my first time giving a long lecture, and because I had about 25 people to distribute tiny parts to, and then I had to walk them through manipulating these tiny, unfamiliar parts so that they worked.

The first mistake I made was not printing out the handouts ahead of time.  This was a big mistake- there were four color pages + a black and white feedback page, and for 25 people + extras, it took the xerox about 10 minutes to print them out.  This delayed me getting to class on time!

Lots of people=lots of prep

This of course, meant that I didn’t have time to parcel out the tiny components we were going to use to build the arduino.  This took up more class time, but it was not something I was willing to spend my own time on.  Since I am the one doing basically everything for the class (aside for actually paying for parts, which has been graciously funded by CORE, the Council of Olin REpresentatives), and that takes a lot of time, I try to minimize the amount of extra time I spend on it for just one person.  In other words, I try to optimize my bang-per-hour.  That means I have to stop myself from hunting people down and delivering their parts because they couldn’t make it, because that takes too much time (10 people x 10 minutes is an hour and 40 minutes!).

Once the handouts were out I started in on a very broad lecture about microcontrollers.  I tried to cover all the important aspects; brands, memory size, programming, and how PWM, ADC, and counters worked.  I intentionally went broader than the scope of what we were going to do in class because, I am basically throwing mud at the side of a barn and seeing what sticks.  I might as well throw a lot of mud, because people are not going to be able to devote a lot of time or effort to this class since it is once a week and not for credit; more mud means more will stick, which is the point of this class.

Now I know how the guy in the blue (one of our professors) feels sometimes!

After the talking at people was completed, I asked that people fill out the first half of the feedback sheet.  Then parts were passed out, the building of secret knowledge arduinos began!  I wish I had been able to prevent people from starting to build the circuit, but since some of them knew how to read the schematics (aided in large part by my guide), people began to build the circuit.  I tried to walk people through step by step, but I was often interrupted by people who needed help or by needing to supply tools to do part of the assembly.

This of course, fragmented everyones build process, much to my chagrin.  I saw everything wrong with the circuits over the next hour; D+ and D- switched, power shorted to ground, diodes in backwards, resistor in the wrong spot, chip in upside down…the works.  Many cries of “it gets really hot” were heard, and some magic smoke was released, although only two chips were damaged permanently.

Oh Windows 7, y u no work?

By the middle of the build session a few software problems had come up, particularly with windows users.  Linux users are advised to start the arduino IDE with sudo arduino, which works well and gives you USB privileges.  Windows users will need an installer designed by Kevin Mehall, which I will try to add to the downloads page.  It also turns out that the new version of the arduino software does not work very well, as in it couldn’t compile its own example code, so people had to revert to the old version.  Other than that, everything went well.  I tested everyones board before they left, to ensure that they were ready for the next class!