Pom Bots – Grant Johnson
For this project, we were tasked with something that seemed somewhat monumental at first – making a moving robot using Arduino. Having had some experience with Arduino in the past, I knew that this was surely possible, but I had actually used wheels attached to 360 degree servos in the past, so using no wheels was a new challenge. This assignment started on the drawing board, thinking about ways that I could create simple and effective movement using a couple motors and some simple objects such as popsicle sticks and tape.
My first ideas for motion kind of both resembled the ways that bugs move in nature — one idea involving a crawling sort of motion and one idea involving a motion of the bot sort of tumbling over itself. When I started to test out ideas in lab this week I realized how much time could be spent trying to tweak different speeds of servo movement and adjusting how things sit. Balance was definitely something that was vital in designing a prototype that wouldn’t simply topple over. Coding movement and adjusting it using the Arduino is fairly simple and easy, so that part didn’t take too much effort beyond modifying the sweep prompt from the Arduino IDE. This kind of movement immediately made sense for this project when I saw how the servos reacted:
I started by looking at my idea for a crawling-like motion first, as I figured that might be the easier idea to execute off of. After putting everything together I quickly realized that I was having a hard time getting the arm to actually pull along all the servos and wiring that was being held on the tail end of the bot. I also realized that with only one arm making movement for the bot, it made stuff pretty off balance whenever it would rise up, making the whole thing dump over and not be able to move. After seeing this poor performance I decided to look more at things with bipedal (or even more legs) movement. I figured this would be easier to balance and not have the problems that a crawling or spinning motion would have when designed the ways I had initially designed them.
One thing that really was disappointing with my final design was that I don’t have a way of setting it free from the computer. If I had a small power source to plug it into I would love to see what it could do when introduced into larger environments. I realized through this project that working with movement was a very precise sort of thing — it took a lot of tweaking to get the exact types of movements I was looking for out of my robot. At first, my robot moved incredibly slow, but was actually working so I was excited with that.
I ended up making my robot look somewhat dog-like so I decided I would make it run really fast and kind of skitter like a small dog does. It was crazy how much that personified my robot and made it look like a chihuahua (to me). After seeing that I decided to make it fully into a chihuahua by adding a cutout picture of my girlfriend’s chihuahua to the face and adding a (small) pipe cleaner as a tail. I really enjoyed working with Arduino’s again and this and last week’s lessons really helped me expand my ideas of electronics projects I could work on for different specialty things.
One part of this project that was definitely a ton of fun was iterating different ways of moving an object around using the servos and popsicle sticks. There seems to be endless ways of making your robot walk, run, crawl, wiggle, spaz out in different ways and it was really fun and interesting watching that happen each time I uploaded new code. I think I picked a final design that is fairly simple to execute, but works how I wanted it to, so I was happy with that. Getting the chance to design a source of movement that is inspired by something more tangible and real also definitely was a good place of inspiration for this project and I’m glad we took the time to do that in section.