Let's Make Robots!

Bender

AttachmentSize
echo.png31.83 KB
echo.12b.txt - 12Blocks file, rename without the .txt extension and load into 12Blocks8.77 KB
IMG_20100803_232241.jpg -inside Bender's rusty inards1.01 MB
IMG_20100804_231435.jpg - a view of the fitPC21.12 MB
IMG_20100805_204304.jpg1.02 MB

Bender is a medium sized robot based on the Crustcrawler Nomad HD platform. It uses the Parallax Motor Kit with Position Controllers, a pair of Parallax HB-25 Motor Controllers, 6 Parallax Pings, and a Parallax Propeller Robot Control Board.

The propeller handles the low level functions, such as sensor scans, movement, collision avoidance, robot status monitor. Low level routines are written in SPIN and all the behavior software is written in 12Blocks, which talks to the lower level routines through  12Blocks custom blocks written by me.

Bender's brain is a FitPC2, a 12 volt powered Atom 1.6 processor based microPc. It has 1.6Ghz processor, 1 G RAM, 160G hard drive, 6 usb 2.0 ports, dvi video, full audio, an ethernet port and built in WiFi. All of this in a package that measures 4x4x1 inches and consumes only 6-10 watts of power.

There is a Logitech Orbit webcam on board running AbleCam (video web server)

All this is powered by a 13000 mAh NimH battery pack.

Not shown is the scanning laser rangefinder. I have it, just haven't sat down to figure out how to get the propeller to read it. Also not shown is the head, which remains to be built. It sports a 7" touch screen display (back ordered) and is where the camera will be eventually mounted.

At the moment, the PC is still running on house power. I've opted to use a small inverter running off the battery pack to avoid cutting up the power cable. At some point this will have to go but since there is still plenty of room inside, it's a fair prototype trade off. I've ordered the inverter but don't expect to get it until next week. This limits the roving range to the length of the power cable but is sufficient for testing.

Running RealVNC, I can directly control Bender via WiFi. At the present time, I can drive the robot around using manual keystrokes which are passed to the propeller via the Parallax Serial Terminal that comes with the Propeller Development Editor or directly in 12Blocks as it has a built in terminal that also allows you to watch the propellers's pins change state and track all your variable. Very handy for debugging.

Software installed:

  • RealVNC
  • AbleCam
  • 12Blocks
  • Propeller Editor

UPDATE: 5 Aug 2010

Today I installed the 200 watt inverter into Bender. It has two 120 jacks, One goes to the FitPC, the other goes to the new 7 port USB hub, allowing me to hide all of the USB lines inside the robot.

Now, instead of a tangled mess of wires outside, there's a tangled mess of wires inside. I'll have to wrap the excess cable so it will be a bit neater.

Bender is now tether free! it can now be driven around the house under direct control of any computer in the house. Tomorrow I will deal with the rat nest of USB and power cables inside. I suppose I could put the inverter and hub outside, we'll just have to see how things work out tomorrow.  The inverter is a stop gap measure until I can round up a suitable power plug to run directly off the battery.

Beware, Murphy lurks in the darnedest places. 6 Aug 2010

Well tonight I found a couple of power plugs that will allow me to power the PC and the propeller off the battery. As I was checking the polarity of the power plug for the propeller, one of the cables blocked the screen of my voltmeter just enough to not see the '-'. When I plugged it into the propeller, There was the tell tell smell of acrid burning electronics. Too late! The propeller is now fried and gone to silicon heaven  and I've ordered a replacement. unfortunately, it means I can't do any of the weekend testing and development that would have allowed me to take it to work Monday to show it off.

This goes to show you that anybody can make simple mistakes. This one cost me the price of a new board and three or four days lost, all because I was not paying as much attention to everything I should have. In my case, I plead 'cataracts in both eyes, one eye that sees nothing and the other runs at about 20/70' A few years ago, this is a mistake I would not have made, but then I recall making many others,,,

It's a hundred dollar lesson that will last for awhile. They always do. Moral of the story? Don't be afraid of making mistakes, that's where we learn our toughest lessons, Don't be careless either.

 

Update 11 Aug 2010

The new propeller board arrived today. Like the old one, it's a MSR1, the Propeller Robot Control Board. So far, it's been fired up and programmed to handle the simple R/C program I have running for initial tests. Tonight, I'm planning on running it through a few tests to see how well it handles the WiFi things, drive it around to get the feel of it etc. I'll post some video if all goes well.

Update: 12 Aug 2010

Today, Bender fulfilled its primary design function: That of delivering a bunch of Chocolate Chip cookies to the office of our director. While it was all done under the use of telepresense, ie; remote control, Bender successfully navigated the approximatly fifty feet between my office and his, notwithstanding the positioning of a number of trash cans as obstacles. There are still issues with the anti collision software, and controlling the robot solely from the webcam was a challenge. My next step is to switch Bender to using the encoders so it will travel in something that more closely resembles a straight line.

Update 20 Aug 2010

Bender is now Skype enabled. Now I'm working on a pair of programs to talk to Skype. The first is on Bender and listens in on the chat channel for commands, then transfers the appropriate command sequence tot Bender via the serial port. Trivial program.

The second program runs on the remote client, reads mouse commands, and sends them over Skype to bender for execution.

Both programs are in VB.net. They will provide the ability to control Bender usinfg only a skype connection and my VB client.

Comment viewing options

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

Since you have this kind of power in your robot you may want to look into the ViewPort debugger software for the Propeller by hannoware.com since it can do image processing and other things. Have you looked at the Propellant Library download on the Parallax site?

I now want to pick up a FitPC2 and increase my options too. This seems a better alternative to using a Laptop and more cost effective. You have provided me with new inspiration! It also has a line input so that I can run the audio output of the Propeller to the FitPC and use either the voice object in the Prop or in Windows to create speach. Cool!

Or at least some of it. 12Blocks is also written by Hannoware. Viewport is an excellent propeller diagnostic tool. Not only does it handle image processing, it allows you to visually see the states (hi/lo) of each pin and watch the contents of your propeller variables change as they change in real time. You can almost through away those logic probes and oscilloscopes.

Haven't looked at propellant, seen it at Parallax, I'm a frequent flier there. I've been a Stamp fan since the BS2 came out.  I bought a propeller when they first came out but never jumped on it so this is my first 'real' propeller project.

The FitPC gave me some grief at first. Tech support is awful, they will run you around in circles and you will wind up finding the solutions to their most common problems with google, not with them so much. If you use a VGA monitor, you have to buy an extra 'CONVERTER', not adapter, two different things and they won't tell you that up front. It's an $80 part expect to add that to te cost.

That being said, so far the FitPC seems to be working fine. It's no speed demon but it does the job. Frankly All I really cared about at the time was power consumption and 12 volt source, and as small as I could get. Mine runs Windows 7. Linux would be better in some ways, but I've been programming on Windows platforms since 3.1 and while I'm not happy with the way some things are done, I know my way around the OS enough to pretty much do whatever i want. It just turns out that there are better development tools in windows so I'm sticking with it.

I thought I'd use the PC for speech processing and the propeller to generate little status chirps, al ;la R2D2. i Figured it might be interesting to beep and chirp as it moves around, partially to let people know it's around so they don't step on it and hurt themselves and it will be cute.

 

I too feel the need for bigger robots, with stronger motors, hence my latest project, but since I work on a budget(a low one) I have to work with what I have, and to be honest I prefer it this way because I get to have it 100% custom :D

 

Parallax HB-25 12v motor kit - 280$

modified 18v drill motors - less than 40$, including batteries and chargers.

Wind shield wiper motors - 20$ ish each, or free if you know your ways.

The last ones both require you to get wheels though, but wheels are cheap and are everywhere.

 

Sure, the parallax motors are nicer, and easier to mount, but even being able to afford them it's simply not worth it, I am a miser however, I hate spending money...

Sorry to here that you fried your board. I am always afraid of doing that. My wife always teases me about cheching everything in triplicate. But it's only money...LOL

It happens!

Someone in a movie once asked somebosy who wanted to become a powder monkey "Ever lose a finger cuz you got careless?"

The younger man replied, smiling;"No."

"Can't use you" the boss replied.

An d of course the moral of the story? If you're not making mistakes, you haven't learned anything.

Pn the brighter side, it has allowed me to take a step bake and take the time to rewire the whole thing. Everything is much neater now.

And I found what will become Bender's head. An Iron Man mask I saw at Toys R Us. Almost certainly will repaint it, either black to match the body, or white to look more like something out of i Robot.

Chalk up Bender's first real achievement. While it was all done via remote control, it fulfills Bender's only real design goal.

Ya the aniti collision routines are always the tough ones to fine tune. I still haven't found the "Sweet Spot" time between each PING))) being called. I still get echo's from the others interfering. Keep me posted on the encoders. That has not worked out well for me except on good flate and smooth surfaces.

So in the videos inoticed that Bender drifted right. Is it seeing something or is that just engine drift from daisy chaninging the HB-25's. Or is the user doing that?

When I made this run The HB-25s where being run directly from the propeller via PWM, which is why Bender veers. Unfortunately, the veering is not consistent, as anyone who uses PWM without encoders well knows. I hooked it up that way initially just to be able to drive it around. When I got it home, I wired up the encoders and discovered that they don't work. Talking with parallax now, trying to diagnose them. Eats up a lot of time but...

Don't get me wrong, I know that a lot has gone into this robot, and there is a lot to come so maybe I might just be confused here...

Bender's first real achievement and only design goal was to deliver a small package down a hallway via RC? I think it is the RC thing that I am confused by --The second video (7 min, blurry) was showing a robot being controlled by a human, via RC? Am I getting this correct? This has got to mean that a RC signal was used to start an autonomous run, right? If not, I am surprised at 2 things: One, the investment of $4500 to build a very elaborate remote control car and two) the fact that this was the intended goal. I mean, I can get a RC car from the dollar store and duct tape a box of animal crackers to it's back --total cost 11 bucks. I dunno.

Again, I might just be jaded here but I have found that very expensive tools do not a good carpenter make and...

If you put the worst driver in the best car and the best driver in the worst car, the best driver will always win.

So, I have to say again, I gotta be missing something here...