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:
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.
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.
Next, we added 4GB of RAM (DDR3 SDRAM):
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:
A normal computer power supply is typically a huge beast that looks like this:
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.
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.