Let's Make Robots!



UPDATED and STOPPED* on September 4th 2014

With "stopped" meaning that I didn't finish the project. I'm pretty OCD about either finishing things or just deleting anything about their existence, but as much as I'd like to delete this entire post and pretend it never happened, Ladvien said to document stuff in this post, so people can learn, so I'm gonna try to document the failure here. Plus, it's kinda good to fail every once in a while, since you learn more that way.

So...I originally got the idea when I wished that an alarm clock could roll around in the morning and wake everyone up, making each person have to chase it to turn it off. A bit ambitious, I know. I think the issue there lies in how vague my idea was. I spent a good majority of the project avoiding the issue of navigation of the house, basically saying "we'll cross that bridge when we come to it" and then I came to the metaphorical bridge. And was stuck there for (may-june-july-august) a good four months before throwing my hands up and saying "it's just not working out." And here I am. To be fair, I considered line-following on a grid, and then it could navigate the grid and have points correspond to furniture, but I don't want to cover the floor in a bunch of (I don't even know, tape?) lines. I don't have the authority and there are sometimes kids in the house so any tape could get ripped off really fast.

I got as far as basically just a start here bot, checks both ways and stuff, but nothing beyond that. The physical design wasn't nailed down, and actually changed to a much more cluttered...mishmash, which is why drewtoby's comment below says I have a clean design when I clearly currently don't (in my opinion). The circuitry arrangement was mentally sketched out and did seem to go as planned, although I discovered that the wiring I imagined was REALLY messy in reality. I hadn't considered how many wires it would take, and how many overlapping lines I would need. You guys with your fancy custom-board printing. I don't have that, I have a lot of messy solder, and I can't let stuff overlap so that limits how things can be arranged. Take heed if you too can't print boards as you please. I actually needed a second mini breadboard because I needed space for like, 5 things connected to the Arduino Nano's GND pins, and the mini breadboard could only accomodate 2 or 3. I think already things were kinda doomed when I found out I needed a voltage regulator I didn't have. Specifically, a way to get 5 volts to the servo, without plugging it directly into the Arduino's 5V pin, because apparently that's not a good long term solution. Thank you shoutbox person (whose username currently escapes me but I'd probably know it if I saw it) for telling me that. The visual appeal of the bot is kinda nonexistent, but to be fair that's not something I was after anyway.

I think overall, I found out that making sure everything is powered properly is important. Using regulators or specific batteries instead of just plugging everything into the board. Planning out how concepts will work in advance. Unless you're awesome, I doubt that you can just-like-that think of a solution to a legit problem like navigation. Especially if it's something you previously thought about a lot and couldn't manage to do. Consider how many pins you have, but also how many of that pin you have. If you need six GND pins and you have four, you may want to find a way to fit a breadboard or a splitter-thingy into the equation. Get short wires (like I didn't) so that your wiring doesn't look like a head of hair that's in need of dire help. And uh...yeah. I'm not exactly a veteran at writing this sort of thing, but overall I'd say I failed but learned and that's kinda what I was after anyway. (The learning, not the failure.)

My next attempts/ideas are all over the place, because I'm very scattered in my attention. I'm trying to build a quadcopter using motors salvaged from CD drives (which so far seem to work, I'm actually held up because I need perfect copies of propellers). I'm also looking at trying to make a wearable pulse-measuring-thingy so as to help me when (ok, IF) I exercise and would like to constantly know my heart rate. Imagine an iron-man chest thing, but with a number instead of a circle/triangle of light. I hope to travel sometime, and I want to do something with telepresence in hopes of messing around in the house while I'm overseas. I'd like to make a pair of twin bots, more just to have twins than anyhting else, and compare the two and their slight differences. One would use a knockoff version of the other's board, or have different versions of the same brand motor, and so on. It's also a challenge to make things small enough to fit in little containers, so there's that. If I make those posts, I'll try to link to them from here. You can also check out my previous (and also first) bot called Arpy.


Please know that I'm willing to help people copy this project (as far as I got) if they ask.

Intro (May 4, 2014)

This is my second bot now, Muzzy, which is a 'my version of the start here bot' kind of bot. Currently, it's not put together all the way, rather it's a plan that I have worked out in my head and just have to go do when I get some free time on a weekend. (But not this weekend, because I have a to-do list that has been stewing for months) Muzzy is made of the actual parts, but done with an Arduino Nano as the chip, and with two tic-tac containers as chassis structures. Oh and lots and lots of double-sided tape, more than what was in the start here bot. Last time I had a bunch of Knex holding everything together, and this time it's that thick white tape stuff. While Arpy was built to explore pi-and-arduino-systems, Muzzy is my way of exploring travel and navigation. This was made possible by the HC SR04 ultrasonic sensor finally coming in the mail this past week, but if I end up with more sensors to try out on this, I just might add them. Although I might not because I want it to be really small.

Why Small? (May 4, 2014)

So, it would be as small as possible, so as to have the rooms of my home be 'a big world to explore' as opposed to 'a box to roll around in' and so that it can fit through spaces more easily. Also, when it comes to weight, there's a sort of combo thing where a 2 inch bot weighs xyz ounces, while a scaled-up replica that's a 4 inch bot weighs slightly more than 2xyz. It's a weird thing about mass that I don't know the details of, but the point is to keep things small and light for scouting and exploration, as well as for speed and battery power taken to move it, and less chassis neccesity. You know, one of my long-term goals is to have a bot I can RC around the house to do tasks while I lay in bed. Not a butler to do it for me, but telepresence and remote control for the lazy. Arpy was to see if I could just have a pi and arduino work together well. This is to have something that can get around the house without bumping into anything or running feet over. Also, Arpy was my first experience with a pi, while this is my first experience with an ultrasonic sensor. To fit the size idea, I'm trying to constrain it to a 4 inch cube. So far so good. Hopefully I'll have more for you by next weekend.

So Far... (May 5, 2014)

Yesterday I said I had a big to-do list and couldn't work on this...well I did. And I got a few things off the list at the last minute, too! Anyway, the design went from 'small' to 'tall and lanky' as things got added on. I'm still not quite done with the building, but I know what's what at least and just need to finish, as opposed to needing to start.

The really big issue at this point is that my L293D h-bridge isn't working properly, so I'm getting another one, but until then I can't work on much coding/tweaking/fixing/learning if it can't roll. I don't know where the 'what chip used, what environment it's for, what you programmed with' info for posting your bots is, but I'm using the following stuff. I don't have a big variety of parts anyway, so you'll probably be seeing this same list a lot.

-two GM9 motors from Solarbotics (just like Arpy, my first bot. I have 4 motors total, the other 2 are GM2 motors) and the matching wheels

-two tictac containers with the tops taken off (those unidentified white rectangular things are the tops to them. Technically, I only used one-and-a-half because I didn't use a second see-thru bottom-part, just a second top)

-a good amount of double-sided thick white tape (as opposed to the thin transparent kind)

-an arduino nano

-an L293D motor driver

-two mini-breadboards

-the power rail of a half-sized breadboard (the stick that's hanging off) though it's only there for some extra breadboard space, and I've condensed the wiring so far to get more breadboard open, so I might hook stuff up again differently and not need the extra rows any more.

-a 9v battery for the nano

-three AA batteries for the motors, the exact same setup as in the start here page

-a lot of male, female, and both-ended jumper cables

I have three shaky (sorry) mug shots showing the 8-inch height.

I have a bunch of photos hopefully showing how the top and bottom fit together. So I have the arduino nano on a mini-breadboard, and another empty mini-breadboard under it for the motor driver (a.k.a. h-bridge). Those are both on a transparent tictac container the way a backpack is on a person's back. Also taped awkwardly to that tictac box is the tictac top (shoulders) with a servo in it.(neck) The servo arm is holding the other tictac top, (head) which has the sensor taped on that. (face) So sensor on top=face, stuck to a tictac top=head, which is held by a servo arm=neck, and the servo is sitting on another tictac top=shoulders, which is taped to the main tictac box=upper-body. Then I have the motors+wheels (legs) sandwiched between the 3AA batteries as a 'stomach' and the tictac box as a 'back.' the 9v battery is just taped to the 3 AAs and has the awkward-shoulders tictac top resting on it. Hopefully the pictures will describe things better than I can.

And just overall, I've had to learn a thing or two about the tape. for one thing, it gets less sticky as I take it off and put it back. Which is why there are rubber bands holding the motors, because I kept taking them off and the tape is now lint/dust-ified. The wiring is ridiculously crowded, and I actually unplugged a lot for the photos. I plan to stuff the excess wiring inside the empty tictac box, just as they do in the start here bot's little gap.

But first I gotta

-get the motor driver, then

-tape on a third 'leg' so this doesn't fall forward/back all the time, THEN

-figure out a navigation system for my house that can be implemented with this sensor (yeah i know its a 'good luck with that' sort of effort but im the type to aim high. honestly im fine with using more sensors than this, it's just a question of buying them.)

So...yeah, May 5th, dats wassup so far. I am very much a fan of attempting what other people do, so if you have the list of stuff I mentioned and you wanna do this too yourself, I'd be happy to help where I can. Plus I'd love to see what you come up with. Maybe I'd try to make it a challenge when I'm (iA) done...


Progress (May 23rd, 2014)

Okay, I got my motor driver replacement in the mail and I now have what is basically a start here bot using arduino. The educational/exploratory goal here is to have it navigate the house and not just avoid stuff, so this is probably going to take additional sensors. I'm not going to try camera vision again, but I am willing to put markers on the floor to give it landmarks. I don't know, I haven't decided on a navigation system yet. But here's a picture to compensate for how short this update is.

The double-sided tape wasn't doing it for me so I went back to duct tape, my favorite kind. Blue was closest to my chair so I went with that. The purple thing is the top cover of an air freshener, something i saved from a few years back expecting to use it for something like this. Now it's a slidey-thing for the floor. The wires on the back got rubber banded into a sort of ponytail, which was a relief for me because the mess was looking ridiculous. It reminds me that I need shorter jumper cables. The setup here has more breadboard space so I don't need the extra power rail I had before. Currently, the servo, sensor, and h-bridge all are powered via 5v from the nano. I hope that doesn't break anything over time.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Looks good! Very clean design!