Monday, September 21, 2015

The Computer Brain for a Bot

You know there are suddenly a lot of "brain" options for robot projects. It's not a new concept. My first robots used an Apple II E for a brain. It was great fun, but not very practical. The computer weighed around 100 lbs (with the monitor) and the poor little bot weighed a few ounces. Imagine setting up a roving bot to monitor burglars with that setup! Now we have the Pi, the Edison, Galileo, pcDuino, and others that I haven't even heard of. My favorite, however, which hasn't been considered is the Asus EEE.

Wait the Asus EEE is a netbook you can't hook that into a robot! Why not? Well, you can but not directly. So that said, how and why? Why not just get one of the other systems and build a computer with parts that are open source, and use an OS that is free. Why not build the systems onto computers that are built to directly control the parts and pieces that are "robofriendly"?

Before USB we could use the parallel and serial ports to control the bits and pieces. Now you have to use a FTDI device (like an Arduino) or cable to give that functionality back to the computer. I'm actually using ROB's brain to write this blog. So why not use a netbook? Here are a few of the reasons that I have thought of, and coincidentally, why mine has worked so well;

1. A netbook already has all of the features needed to run a complicated robot. This one has 3 USB hubs, a keyboard, and a monitor. With the ability to hook up to an external monitor. This one has Bluetooth and WI-fi, but I don't use either. It has a battery backup that, under normal functions, can last for around 8 hours, and through some tinkering I can get that to 12 hours and possibly longer. If I can get the cpu to pass out at times, I think I could get it to last longer. It has sound and Ethernet built in. It has an SD card slot. This thing is loaded. It is even faster than its robocousins, and it has an x86 processor so I can run Windows. There is another part that an EEE has that those others don't, and to me it's a crucial part that I am adding here as an afterthought, a Case!

2. I'm comfortable with the x86 architecture. I've written about the cloud, Android, and Unix style OSes before. I don't like them and won't use them if I can get out of it. Not because I'm a fanboy, as you know, but because I just don't like them. I don't like how they work. Some of you may remember my theory about it being a right brain, left brain, thing. After using Windows 7 and 8, I'm convinced of it. With those OSes the brain got thrown out. Still, I think that an EEE equipped with 8 as an OS might be extremely useful. Especially, if the EEE was a new Transformer mounted on the bot.

3. Cost. Cost is always a component of any build. The EEE is a very inexpensive PC. Especially if you go after the after market, or scratch and dent, models. You can get several models for under $300, with everything included. Even a transformer with the keyboard can be had for less that $300. I would stay away from the E-bay sales models though. Parts are hard to find and all of those that I have seen on E-bay are only good for parts. Really $300 is excellent for a brain. If you get the robocousin equivalents you could be looking at more than that for less bang for your buck anyway.   

4. Size. As most of you know, I like big robots. They have their problems, but to do anything useful they have to have the size to do the job. That means that they have to room and pull to accommodate the EEE as a brain, but that also means that the EEE is small enough to stay out of the way. Even a moderate sized bot can use the EEE as a brain without being overwhelmed. Also, while it looks big and menacing, the actual components for an EEE are really no bigger than their stripped down counterparts. Inside the EEE you have 3 or 4 boards (depending on the model), a hard drive a battery pack, and a fan. If you arrange the development board, shields, and other parts to get the equivalent functionality to the EEE, you would actually have to take up more physical space by two or three times. Why? The EEE is 1.6ghz to 2ghz, with 2 cores. The closest equivalent that I have heard of is the pcDuino at 1ghz. So you would have to run 2 to get the equivalent power wise, taking up twice as much space. I know some of you will argue, but I can't spell out the entire reason here just for your benefit.

5. Power is another really big reason. An EEE can be plugged into the panels and recharged. If that makes you nervous you could use an inverter on the panel and then recharge. Like I said before, you can get 8 hours under the normal settings. What if you could put the CPU into a super low power  usage state? you could theoretically stretch that into days. Even so, you could put a LiFe battery into the mix as a primary and keep the onboard battery pack as a backup. I may show how to do that at some point, as that is the setup I will have to use for the clambot.

In  the end what you use for your robots brain is up to you, and whether your bot even needs higher brain functions. A lot of them don't. Those that need to run a lot of sensors, functions, and need to log data need something a bit more robust, and relying on an arduino with a crapload of shields isn't always feasible. Anyway, for me the EEE has always been a handy, tidy, way to go. It's miles better than an Apple II E!
 

No comments:

Post a Comment