Blog

A small computer for a robot

Thursday, January 9th, 2014

As you know, we usually use Arduino microcontrollers on our robots. But in some cases, an Arduino doesn’t have enough power to do what we need to do. We are currently working on a new project that requires advanced image processing for target acquisition. This can’t be done on an Arduino, so we had to find an alternative. We researched the idea of using a Raspberry Pi or a Beagle Bone Black, but these single board Linux computers weren’t powerful enough either. On our CNC Mill and our “Telegance” telepresence robot, we enjoyed building a custom computer, so we decided to do it again for this new project. We needed the computer to be small, powerful, low power consumption, no screen, no keyboard, and capable of Windows 7. We decided on an ASUS Mini ITX motherboard, which is about 6.7″ square:

Haswell2

We installed an Intel Core i5 Haswell processor, which has 4 cores and a standard clock speed of 2.90Ghz, overclockable to 3.60 Ghz.

i5_Processor

I don’t know if it will be necessary (I hope it won’t be), but we’ve added a processor fan just in case. After doing some tests, we hope to remove this.

Computer_Fan

Next, we added 4GB of RAM (DDR3 SDRAM):

RAM

We love Solid State Drives (SSD) for our small computers because SSD drives are super small, super fast, low power consumption, and no moving parts. It slides nicely beneath the motherboard:

OLYMPUS DIGITAL CAMERA

A normal computer power supply is typically a huge beast that looks like this:

PS_Large

To avoid using up all that space, we found this super cool tiny power supply called a picoPSU that plugs right into the 24-pin jack on the Mini ITX motherboard. This neat little PicoPSU takes up no additional space.

picoPSU

We had to combine this with a few additional cables to make it work, but once we figured it out, it was super easy.

So, our fully-assembled computer, with the motherboard, CPU, fan, RAM, hard drive, and power supply has a footprint of 6.7″ inches square. Not too bad. We set it up and tested it. Running directly off our robot’s 12v lithium-ion battery, it runs our target acquisition application very nicely. In normal use, this computer will operate on its own without a human interface, but in those situations where we need to interact with the computer, we plug a small 7″ LCD monitor into the HDMI port and we use a USB-based wireless keyboard and mouse. In future posts, we’ll show you the robot that it’s going into. This is just one of the components inside.

Mini_ITX_Computer

Comments (11)

  1. Drago
    January 12th, 2014

    What about power consumption? Intel processors consume alot of power comparing to ARM in Raspberry PI/BBB. How much power does it consume?

  2. admin
    January 12th, 2014

    Drago: Good question. I just did a measurement on power usage of the computer shown in the picture (motherboard, CPU, power supply, 4GB, plus 120GB Intel SSD). Here are the results: On standby, prior to first boot up: 0.01 amps. Maximum draw during boot up 3.55 amps. Once the computer is boot up and in steady state condition in Windows 7: 1.14 Amps. In standby immediately after shutdown: 0.04 amps.

  3. Mark Symonds
    January 12th, 2014

    Nice computer package. I’m eager to see the application it will be used in.

  4. Lork
    January 12th, 2014

    I remember seeing your site glad I subscribed. I am really surprised how small this motherboard is. Why did you decide on windows os? Why not linux?

    Which computer vision application are you using? You may be able to cut down on the current by removing unnecessary processes that eat up cpu cycles.

  5. admin
    January 13th, 2014

    Lork: Thanks, Lork. I’m glad you’re enjoying the site. I chose Windows because we’re working with an informal partner on this prototype project, and we thought potential future customers might be more comfortable with Windows rather than Linux (the tech folks like Linux, but it’s unfamiliar territory to a lot of “regular” folks). Yes, we’ll try removing unnecessary processes. Thanks for the tip.

  6. ilovesiena
    January 14th, 2014

    Wow!! And as a “regular folk” I would have to agree windows is much easier to navigate and use. ..although I do like to think of myself as a SUPER “regular folks
    Thanks for keeping us posted, you guys rock

  7. Walt
    February 15th, 2014

    Nice DIY choice, but I wonder if an Xi3 system could have been a beter “off the shelf” option. Even if the processor wouldn’t have been as powerful as an i5. http://www.xi3.com/

  8. admin
    February 16th, 2014

    Walt: The xi3 looks like an excellent computer as well. I love the size and low power usage.

  9. ali
    August 13th, 2014

    Dear Sir
    We are manufacturer of different robots. We are manufacturing one mobile robot just now. The way you design is the 100% best way. If you like we can help each other.
    Regards
    Ali

  10. Mujtaba
    September 4th, 2014

    I want to have my final year project regarding this issue .
    Could you please tell me if it is possible to use the mother board on the robot for making a wireless communication to control the robot from far distance.

  11. Robert
    September 4th, 2014

    Mujtaba. You **could** use this motherboard for wireless communication by utilizing a bluetooth dogleg or USB-based xbee radio, but when we want to have wireless control of the robot, we usually use an Arduino board with an xbee radio.

Leave a Comment

Human Test (captcha): * Time limit is exhausted. Please reload the CAPTCHA.