6

I have no experience with embedded systems hardware and am looking to build a micro-budget underwater robot for exploring the bottom of a lake on the family homestead. I don't have much money to spend on this, but I want to run Debian Linux (I have lots of Linux Admin experience and am right at home with a terminal) or something like that on a small chip which needs to be able to:

  • Connect to the control computer via ethernet.
  • Get digital or analog data from a GPS module, pressure sensor, etc.
  • Control a few thrusters.
  • Do various other hardware IO functions.
  • Possibly control a robotic arm (this is a long shot, I know).
  • Hopefully monitor its internal temperature.

And costs less than about 100 dollars. I have no experience with embedded systems hardware so I really don't know what to buy or where to start, aside from the fact that I heard that this would be a good place for something ARM-related. I am a software developer with time to burn as far as writing the programs to support this goes.

The lake has an area of about 2 acres and is <25 feet at its deepest if this makes any difference.

6
  • 3
    This is going to be harsh but, no way you can do this with $100. If you had embedded systems experience and not needed development hardware, you could maybe do it. If you do decide to go with it, ARM looks like a good place to start. There are powerful chips available which could control hardware with no major problems. Internal temperature is the easiest part of the whole process. Also, expect GPS to be at least $50 if you are going top build module yourself.Try looking for ARM development systems and check out their prices. If they are too expensive, try designing the rest of the robot first
    – AndrejaKo
    Jul 5, 2010 at 23:39
  • The $100 dollar figure is a guideline for the processor and nothing else. I have tons of electronics components and materials lying around (plus enough cash to buy what I don't have), I just need a processor to tie them together. I knew that an accurate GPS would cost a great deal more than $50 (not to mention being technically infeasible for a number of reasons) and was really using it as an example for the type of thing I would be interfacing to. If it STILL can't be done for less than $100, I will just end up stretching.
    – marcusw
    Jul 5, 2010 at 23:47
  • 6
    When I first read your question title, for a moment I wondered if someone at BP had come to SuperUser for help ;-)
    – David Z
    Jul 6, 2010 at 0:24
  • Good luck with the project; it would probably make a pretty interesting geek blog. But wow, you presented your question lacking pretty much every bit of relevant information. It would be good to edit it to more accurately represent your need.
    – msw
    Jul 6, 2010 at 2:23
  • 1
    A raspberry pi might work here, and fit most of your needs. A few folk have built subs off it, and since it has both GPIO and USB slots, you should be able to interface things that way. There's a few interesting, lowish cost x86 boards in the works as well.
    – Journeyman Geek
    Jan 22, 2014 at 2:53

3 Answers 3

2

Since you have experience developing under Linux, I'd recommend going with an off-the-shelf hardware solution that already supports Linux. For example, I've used several single-board ARM-based computers in the $100-$200 range (the processor itself is much cheaper) from this company for automation/robotics projects: http://www.embeddedarm.com/products/index.php . For example, their TS-7260 or newer (but less extensible) TS-7500

You can buy a board that includes Ethernet, USB, serial ports, in some cases some analog and digital I/O and temperature sensor, and most importantly: can come with Debian Linux pre-installed on a USB stick or SD card and the drivers to talk to those hardware peripherals, so you can ssh into the board and start playing around. For controlling thrusters you'll need some additional hardware, but likely whatever motor drivers you purchase can be controlled over digital I/O lines or serial ports.

I also know embedded systems / Linux folks who love Gumstix, though I haven't used them.

1
2

Given your budget and environment, you're aiming a little high in the embedded breadboard department. I'd look at something like a modern 6502 derivative. You'll find the support tools and community vast. It will be less like what you are familiar with, but there are reason people still use 40-pin embedded processors:

  • inexpensive (which also means you'll have $93 left to spend on the support logic, sensors and power)
  • environmentally robust
  • low power consumption (cheaper power supply)
  • less complex operating environment (less software means less chance of fatal crash)

Do you intend for this crawler to be autonomous? I strongly suggest you keep it tethered as it will get stuck. Indeed, software is likely to be the least of your concerns as the bottom of a lake is rougher than the surface of Mars when you are smaller than a shoebox and don't have eons of evolutionary design optimizations.

3
  • Simpler controllers seem like a good way to solve this problem, but you can't run GNU/Linux on them. +1 for tethering and Mars reference!
    – AndrejaKo
    Jul 5, 2010 at 23:47
  • Haha, I will never send a robot where it can't be easily manually retrieved. I have enough experience with robots to know they will get stuck, regardless of the odds (isn't it funny how that works?). I am figuring on a tether rope or cable along with power and ethernet connections plus an aluminium foil balloon to be inflated via electronic ignition of black powder or match heads in case of a connection loss. But to get back to the point, this chip seems to be lacking a network connection and way of relaying video data, things I absolutely need...
    – marcusw
    Jul 5, 2010 at 23:56
  • Oh, and by the way, power and sensors are not included in the $100...
    – marcusw
    Jul 5, 2010 at 23:57
0

Sounds like a cool project.

Have you seen the list of motherboards that run Linux?

Consider sending video data directly from the camera up the umbilical where people up top can see it, completely bypassing the CPU in the sub. (Then everything else on your list can be handled by a relatively low-powered CPU.)

Consider using a low-cost board like the Arduino as a more or less disposable node in the sub, and keeping the more expensive Linux box at the dry end of the umbilical.

Consider using power over ethernet (POE), so you can use standard off-the-shelf CAT5 cable to send power to your sub and also for 2-way communication. Then when the umbilical inevitably gets banged up and torn, it's easy to replace. (Does that give you enough power?)

Not the answer you're looking for? Browse other questions tagged .