Tuesday, April 7, 2015

Final Project v1.0


Perhaps "1.0" is a little dramatic because I said some of this when I was describing my intentions for my first Printed Circuit Board (PCB) design. Anyhoo, this is the 1.0 time that I'm titling a post about "Final Project."


The infamous PCB will enable dual motor control and several sensors along with a couple of lights. (I say "will enable" because I made an error on the design and will have to make a modification to get things working). Here's how PCB#001 is coming along:

 
Manual adjustment to the board thickness (1.50mm) resulted in a cut that took out all of the copper... I had to poke out the holes on the other side, but no big deal. The holes were out off alignment, though, which worried me... The perfect holes on one side lined up almost perfectly between the rows on the other, but it turns out that this was not the insurmountable. Solder really likes to go near the heat, and heating the pins asymmetrically kept the solder from going astray. Below is the finished board:

Aside from some wild soldering moments, you may have noticed that there is a short in this board; by that I mean that I crossed some wires before they got to where they were supposed to do other things. What they do doooo, right now, is make thing really hot. I think I have identified a procedure to remedy this issue with minimal work, so I'll let you know when it's complete. In the mean time, just pretend I didn't tell you. It's sooooo pretty. 

The blue thing in the picture below is the arduino uno that does everything around here, and the next slide shows how they clip together. So cool!!! I played around — as a kid —with broken circuits and chips, plugging them into random toys to imagine new special capabilities... and now I'm building the real deal. Wow! Thanks Michael Shiloh! teachmetomake.com ... check it out.




And now we arrive at the moment of truth — what am I going to do with this thing?


My plan is an autonomous ground vehicle that can navigate to either the nearest object or most open route. One of our two motors would drive us forward and backward, and one would turn a wheel for steering. Connected to that wheel is an array of distance sensors, and turning the wheel turns the sensor array.


Before the vehicle starts driving, it will pan the sensor array back and forth, mapping the surroundings to a matrix (spreadsheet) in the arduino memory. A potentiometer would track the panning and tell the program when to note the readings (e.g., every 10°). Now we have a map of our near surroundings.


A bit of fancy math (yay math!) will reveal the preferred direction, and the car can drive for a bit and stop to take another measurement. I am thinking of having one sensor mounted statically on the vehicle frame for reference and two or three on the rotating mast, pointed level and slightly down to check for stairs.




By switching quickly between these functions of "observe" and "go," I think this system could appear to smartly navigate toward either the closest object or most open route. I think I can also have the vehicle protect itself from driving off a cliff. And it has a socket to plug in a chip!

No comments:

Post a Comment