Slashdot Mirror


Ask Slashdot: How To Begin Simple Robotics As a Hobby?

First time accepted submitter nedko.m writes "I would describe myself as more of a 'software guy' rather than somebody who likes to play with hardware much, but I've wanted to start doing basic robotics projects as a hobby for quite a while now. However, I was never sure where to start from and what the very first steps should be in order to get more familiar with the hardware aspects of robotics. For instance, I would like to start off with a simple soccer robot. Any suggestions on what low-budget parts should I obtain, which would provide me, subsequently, extensibility to a bit more elaborate projects?"

36 of 166 comments (clear)

  1. Lego Mindstorms kit by Anonymous Coward · · Score: 5, Informative

    Get a kit, start building/programming. Work from there.

    1. Re:Lego Mindstorms kit by azadrozny · · Score: 2

      Second this. Not too expensive, and lots of examples and help are available on the web.

    2. Re:Lego Mindstorms kit by nedko.m · · Score: 2

      Could either of you give a bit more details about a particular kit that you have got in mind, please?

    3. Re:Lego Mindstorms kit by ArcadeMan · · Score: 4, Informative

      There's only one main LEGO Mindstorms kit.

    4. Re:Lego Mindstorms kit by Marxist+Hacker+42 · · Score: 5, Informative

      Actually, there are at least five I'm aware of, centered around 5 different "brains" that can all talk to each other over infrared.

      RCX 1.0, RCX 1.5, NXT 2.0, NXT 2.5, and Scout. RCX/Scout modules all use the same sensors and motors, and NXT is backwards compatible with the proper cabling. RCX/NXT can accept and store programming, Scout can only either use built in programming or accept commands directly from a computer or another smart brick.

      If you are going for cost- I'd suggest RCX 1.0/1.5. If you are going for complexity, get all 5, though this will run you close to $1000, it will give you the most flexibility.

      There are also tons of add on modules/home built sensors and motors out there to use with these brains.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    5. Re:Lego Mindstorms kit by Jane+Q.+Public · · Score: 3, Informative

      "Get a kit, start building/programming. Work from there."

      Definitely not, in my opinion. Lego Mindstorms are toys designed for children, not something for someone serious about either robotics or programming.

      For the mechanical components, FischerTechnik is vastly superior, and has been for decades. It is used at universities for mechanical engineering and robotics projects.

      For real-world programming and automation that are suitable for both hobbyists and professionals, few things beat the Arduino family of devices.

    6. Re:Lego Mindstorms kit by ArcadeMan · · Score: 2

      You're correct about the five versions / two generations, but if he wants to buy something from a store he's most likely to get an NTX 2.5 kit.

      And FYI there's RCX 2.0, too.

    7. Re:Lego Mindstorms kit by ShanghaiBill · · Score: 5, Informative

      Get a kit, start building/programming. Work from there.

      NO! STOP!! WAIT!!! Lego is coming out with a major upgrade to Mindstorms. It is called EV3.I had a chance to play with it at a recent Maker Faire and it was really slick. It is definitely worth waiting a few months.

      Also, if you are a "software guy" you will quickly outgrow the built in GUI programming environment. I used brixcc to help my son build a solar robot for his science fair project. Brixcc allows you to develop on Linux or Mac, and write code with any editor, and also gives you access to stuff like homebrew voltage sensors that the GUI can't handle (we needed this to keep the panels pointing at the sun). There are also APIs for java, python, etc.

    8. Re:Lego Mindstorms kit by jarkus4 · · Score: 2

      Ill second this: this is what we used in Introduction to Robotics course in my college.
      During practicals we had to build and program robots to accomplish some moderately complex tasks on its own. It was great fun trying to program and work around hardware limitations in my teams robot - we overcomplicated it quite a bit and it turned out a bit inferior to its competitors. Still it gave me great impression of difference between controlling pure software stuff vs a real life hardware.

    9. Re:Lego Mindstorms kit by Anonymous Coward · · Score: 3, Informative

      Next generation Lego Mindstorms EV3 will be out soon -- better CPU, Linux OS under the hood -- supposed to be backward compatible for sensors etc. Don't know about the "stock" programming environment -- it may be just as bad as NXT-G has always been -- who creates a programming environment without arrays? -- no easy averaging signals for you in NXT-G.

      If you are going to use NXT 2.x then get the free LabView+Mindstorms and skip over the NXT-G software if you can.

      The alternative is to look at something like the VEXRobotics stuff.

  2. EMC2 by Shotgun · · Score: 2

    EMC2 at www.linuxcnc.org

    Robotics is about controlling motors via a computer. Building a mill or router will get you started.

    --
    Aah, change is good. -- Rafiki
    Yeah, but it ain't easy. -- Simba
    1. Re:EMC2 by Obfuscant · · Score: 2
      A mill or router is a very large project for someone who has never done this before.

      Lego Mindstorms. Or here.

  3. A "Robotics" project sounds way to generic by sundru · · Score: 4, Informative

    A "Robotics" project sounds way to generic, A little more detail on your end goal would help you focus better. If you want a premade solutions with all interfaces I'd start here Lego Mind storms If you want to try your hand at control algorithms without spending a penny I'd start here (sharp learning curve) http://gazebosim.org/wiki/DRC/Install If you want to visually do something with your robot i'd start here, various boards and controls are included. http://www.roborealm.com/ If you want a bit more advanced hardware I'd start here http://www.ros.org/wiki/Robots For pure visual processing fun, this actually is rolled into ROS and DRC sim i believe http://opencv.willowgarage.com/wiki/

  4. Arduino by spire3661 · · Score: 5, Informative

    Get an arduino, some wire and a cheap motor and start there. Dont worry about going full-blown robotics, jsut get experience controlling the motor, programming the microcontroller, etc.

    --
    Good-bye
    1. Re:Arduino by Anonymous Coward · · Score: 2, Informative

      Arduino is great for a software guy. They've got libraries that do everything to make the hardware piece much easier to handle. You don't have to write the modulated signal to control the motor's rotation, but just use a library that already does it. There's even an Arduino expansion circuit that adds wifi so you can communicate with your computer as the "robot" is running (does one motor count as a robot? I say yes!)

    2. Re:Arduino by Idbar · · Score: 2

      How much power can you draw from Arduino pins? I would have expected you'll need a driver to handle motors without blowing pins. I guess that should be a good first laboratory for the submitter.

  5. Robot toy shops by Anonymous Coward · · Score: 3, Informative

    Everything you need:

    http://www.sparkfun.com

    http://www.pololu.com/

    http://www.jameco.com/

    https://code.google.com/p/ardurover/

  6. Combine the two, on the cheap by Bearhouse · · Score: 3, Interesting

    Like this guy...

    http://www.youtube.com/watch?v=3-13NSDqIzA

    Learn the basis of managing comms on a Arduino, Pi, whatever, (but load of easy add-on stuff for Arduino if breadboarding is not your thing...so far), then grab a cheap Roomba or suchlike.

  7. It all depends... by Anonymous Coward · · Score: 5, Informative

    Robotics generally consists of 3 disciplines -

    Mechanical (structures, wheels, chassis, arms, etc.)
    Electronics (hardware - resistors, sensors, motors, power, etc.)
    Software (the programming)

    If you want to focus mostly on the software, since that's where you have experience - then I'd suggest finding something where the mechanical + electrical is already taken care of for you in the form of a kit robot, and you just focus on the software side. Something like a small "Mini sumo" kit is a great place to start. It'll get you used to the whole "Sense-Decide-Act" control loop theory. Other options here are the Lego Mindstorms or the Vex kits, but you might find them a bit annoyingly limited.

    If you want to delve a bit into the electronics, then pick up something like the Arduino Inventor's Kit from Sparkfun, which will include all you need (including some instructions) to get you started with basic electronics with a programmable microcontroller. Arduino is REALLY easy to get started with.

    Another suggestion is to see if there's a local hobby robotics club. I learned a LOT from the folks at the Atlanta Hobby Robotics Club (botlanta.org). There are several really good robotics for beginners websites out there as well....

    Good luck!

    1. Re:It all depends... by ArcadeMan · · Score: 2

      Holy crap, an AC just posted the most intelligent suggestion. Mod him up!

    2. Re:It all depends... by Anonymous Coward · · Score: 2

      Robotics generally consists of 3 disciplines -

      Mechanical (structures, wheels, chassis, arms, etc.)
      Electronics (hardware - resistors, sensors, motors, power, etc.)
      Software (the programming)

      Being in robot development myself I can confirm this. Skipping attention on one is likely fatal for the other two. The question is what to do about the first two which isn't the right field for "a software guy"

      If you want to focus mostly on the software, since that's where you have experience - then I'd suggest finding something where the mechanical + electrical is already taken care of for you in the form of a kit robot, and you just focus on the software side. Something like a small "Mini sumo" kit is a great place to start. It'll get you used to the whole "Sense-Decide-Act" control loop theory. Other options here are the Lego Mindstorms or the Vex kits, but you might find them a bit annoyingly limited.

      I disagree a bit with you here. Lego mindstorms are great in the sense that they take care of electronics and brings the mechanical part down to a level where "regular people" can handle it. They also make it easy to modify your hardware after you get the idea to make it do something else as well. Making a robot as a hobby is most likely something where it isn't that well planned and the goal will change many times before it's done. Once it's done it will get an extra arm or something to solve another task while still handling the original task... or something.

      Lego admitted that their software part is not as great as it could be. In fact they encourage 3rd party software for advanced programming. The best I can do is to provide you with a list where you can pick based on which language you want to use.

      http://en.wikipedia.org/wiki/Lego_Mindstorms#Programming_languages_2

      a little off topic question. How do you make links clickable? :)

  8. Mindstorms and Arduino by chrysrobyn · · Score: 2

    Lego Mindstorms isn't a cheap way to go, and it's even worse if you don't already have lots of Lego lying around.

    Head to Radio Shack and take a look at their Arduino kits. It's not any cheaper, but it's the popular way to start these days. That will familiarize you with some stuff that's available these days. Once you're familiar with the terminology of what interests you, head to the Internet and see what they have to offer.

  9. VEX Robotics by BlueGMan · · Score: 3, Informative

    VEX is a good place to start.. modular, compatible... worth a look.. http://www.vexrobotics.com/

    --
    "The world is moving so fast these days that the man who says it can't be done is generally interrupted by someone doing
    1. Re:VEX Robotics by Kemanorel · · Score: 2

      As a mathematics teacher and robotics club adviser to 7th and 8th grade students (12-14 years old), I very much second the VEX Robotics angle. They now have three different levels of complexity that scale nicely from one to the next with a C++-based programming environment.

      --
      Mess not in the affairs of dragons, for you are crunchy and good with ketchup.
  10. Arduino Robot by akellyirl · · Score: 2

    A someone who knows a bit about robotics and electronics, I'd recommend the new Arduino Robot: http://arduino.cc/en/Main/Robot It has all the essentials you need to build pretty sophisticated robots; the Compass, IR Sensor, 360 degree turn on the spot, 2 micro-controllers, LCD, sensor ports distributed around.... it's a really well thought out, sound basis for robotics. Here's an interesting account of the story behind it: http://blog.makezine.com/2013/05/14/introducing-new-column-from-arduinos-massimo-banzi/ As for the Lego Mindstorms ( I have one); it's good but basic and you're constrained by what your allowed to do. Put it this way... Mindstorms is the Apple iPad (polished and fancy) whilst Arduino Robot is your fav. Linux machine (very capable, expandable and gives you a sound basis on which to build).

  11. I tech getting started with robotics by Drachs · · Score: 5, Informative

    And here's what I recommend to get started on this long and rewarding journey. First of all, if you want to be successful, you need to make friends that are into this subject to learn from, and get inspired by. I teach at the local Makerspace. A Makerspace is where people go who like to build things congregate. Mine is called the Qc Co-lab, and you can view information about us on facebook or at qccolab.com to get an idea of the sorts of things we do. Makerspaces are also often called hackerspaces.

    Next, you'll need a point of entry, a place to get started, and parts. Now, you've got a long road with many disciplines to master in order to actually create a soccer robot yourself. You can get started on the programming/electronics side or the mechanical/servo/motor side. In any case, I don't consider a soccer robot a good starting point unless you have help.

    If you want to play with the programming and digital electronics, things like sensors and and control, I suggest you get an Arduino ($35). Get an Arduino kit with a good book and some toys to plug in and play with. Learn the electronics. Learn the C programming. "Getting Started with Arduino" is a good foot in the door of a very long hallway.

    Next up is the mechanical/servo/motor stuff. Picking up a radio control hobby is a good way to get started with this. Remote control Styrofoam trainer plains can be purchased for $30. A good remote control can be purchased for $30. (Don't let them sell you a $200 control off the bat. By the time you're good enough to want a $200 control you'll decide you don't like the one you bought because of X, where X is some random reason related to your favorite parts of the hobby). Often these plains require you to do some assembly. You'll get experience with servo's, electric motors, batteries, and how all these things come together. Remote control cars are also very fun and exciting if you find those more interesting. (Make sure you get one that requires assembly and is customizable).

    If you do want to buy a robot kit to knock around, I recommend the Arduino version of the boebot. I use this as a teach aid because Parallax produces very good documentation and training materials. See http://learn.parallax.com/ShieldRobot. I do not recommend the basic stamp version, because if you get into this hobby you're going to need to learn C, so don't waste your time learning some other language. What I linked is for the Arduino version. The Arduino uses C/C++ on an industry standard chip. It's important to develop skills that are going to give you the most bang for you buck because the rabbit hole you're heading into is deeper than any one person can ever plumb the depths of alone. The downside here is this kit is expensive at $120. For the people in my class I build them a clone of the kit for $40. Maybe your local Makerspace has something similar going on, check them out.

    Best of luck. I'll keep an eye on this thread, so if you have questions I'll try to help.

  12. No, not soccer. by Alomex · · Score: 2

    Soccer isn't really a good case study for robotics. A vacuum cleaner is still a better one, as is a "waiter" robot in an industrial setting. In the first version assume the path is painted on the floor. Obstacle detection/avoidance and navigational error detection are enough of a challenge to begin with.

  13. It takes Time by NEDHead · · Score: 3, Funny

    to get all the moves right. Start with the very basic head rotations: begin with just 3 positions each side of center. Practice until moving your head in jerky increments becomes second nature. Add other moves cautiously, perfecting each in turn.

    You can easily add verisimilitude by only answering to 'Robby'.

  14. Visit on-line robot hardware parts vendors by mcpublic · · Score: 2
    There has never been a better time in history to dive into robotics from where you are coming from. There are a solid handful of really high quality, on-line vendors that sell individual parts and complete robot kits. For many items there is extensive documentation and a community of hobbyists who help each other get over the growing pains.

    My three favorite "robot stores" are

    • Pololu Robotics and Electronics
    • SparkFun Electronics
    • RobotShop (based in Canada)

    I don't work for any of these companies, but in the spirit of full disclosure, I did go to school with one of Pololu's founding partners.

  15. Get a kit by r2kordmaa · · Score: 2

    A kit is what you want, building hardware is not as simple as it seems if you have no experience. Once you have the hardware its mostly software dev. During that phase you learn how and why hardware works as it does. And then when you have played around with a kit long enough, maybe you will want to make your own terminator. By then you might have a clue how to go about it.

  16. Two requisites: Arduino and Servo by mynameiskhan · · Score: 2

    This is how I started: 1) Start by getting an arduino and a servo (requiring 5v). 2) Figure out how how to turn the servo Now I fabricate my own frames and elbows and I professionally deploy them to customers. Someone above is suggested lynxmotion. That is a good option if you are not willing to make your own frames. Good luck.

  17. Fischertechnik by Bram+Stolk · · Score: 2

    Start with Fischertechnik.
    It's like LEGO, but German, and much much better.
    It even does things like computer controlled pneumatics.
    http://www.fischertechnik.de/en/Home.aspx

    --
    Bram Stolk http://stolk.org/tlctc/
  18. From personal experience by x181 · · Score: 2

    This is my current set up:

    Robot Controller:
    http://www.pololu.com/catalog/product/1327

    Servo Controller (if you need more than the 8 provided with that particular robot controller):
    http://www.pololu.com/catalog/product/1356 - these can be hooked up to the robot controller's serial interface and daisy-chained for a maximum of ~255 servos

    Servos:
    http://www3.towerhobbies.com/cgi-bin/wti0001p?&I=LXGLN4&P=7 - this one happens to be a giant scale servo for more torque

    Documentation:
    http://www.pololu.com/docs/0J20

  19. Re:Agree CNC mill (was Re:EMC2) by Obfuscant · · Score: 4, Insightful

    With MakerSlide, it's quite easy.

    Many things are easy for people who already know what they are doing. If the question had been "I want to build a CNC mill..." I'd agree, a kit is the easiest way to do it. Note, I didn't say "easy", I said "easiest". "Easy" is calling the vendor and having a completed mill show up in a box ready to run.

    But for someone who says "I want to play with a soccer playing robot...", then a mill kit isn't going to be the best place to start. When/if he finishes the kit, and it works, and he doesn't get distracted or disappointed or burned out or simply tired of the process, he'll have a CNC mill and will have learned how to put that kit together. That's not much closer to a soccer playing robot than when he started.

    I don't think a "software guy" is really going to need to start milling his own robot parts until he gets to generation three, or maybe two if he's really into it, of the robot. Having to build your own parts detracts from the other necessary parts of the project, like "how do I detect the ball", and "what are the necessary steps in doing this task?" It isn't until he's at "how do I make the hardware better" that a mill comes into play, really. Maybe for a mechanical engineer it starts there, but not a "software guy".

  20. Start small and cheap by griffinme · · Score: 3, Insightful

    Get to a Maker Faire. Several years ago I spent awhile talking with Bre Pettis about his new machine from MakerBot without realizing who he was. Take the kids! Solder your own badge! Learn how to make your own air powered rockets! My kids aren't even into robots think it is a blast. A word of waring... they make you sign a serious waiver for a reason. They expect you to pay attention to your surroundings and not blindly walk into that quadcopter demo. Make sure your kids are not texting as they walk. Look for some of the small booths/tables with guys that brought in their home brewed stuff. They were you not that long ago and would love to talk about hot to get started. The fancy booths are people looking to sell stuff. If your not looking to buy your own laser cutter.... they will let you look and they will be polite but they are looking to sell stuff.
    http://makerfaire.com/

    If you decide you want to start now and want to learn how things work....

    Get this kit for $49:
    http://www.adafruit.com/products/193

    Follow the tutorials starting here:
    http://learn.adafruit.com/lesson-0-getting-started

    Soon you will be a master of blinky lights. Think of it as "Hello world" for robotics.

    If you think, "HOLY CRAP. I AM MAKING IT REALLY DO THINGS" Then continue. If you went, "HOLY CRAP, I JUST WASTED $50 AND A FEW HOURS OF MY LIFE TO MAKE A STUPID LIGHT BLINK" you might consider some of the more expensive options or re-consider your desire to do this. If you want to continue...

    If you have an old printer laying around then rip some motors out of it. In fact anything that has a motor or is older electronics will soon be looked at with, "Hey, that has a nice transformer in it. Those are some nice through hole resisters. Would you look at those hardened steel rods! I wonder why they did it this way?"

    Things to consider furthering the addiction:
    motor shield with some basic motors
    digital multimeter
    Soldering iron, do not get one of those nasty Radio Shack $20 pieces of junk. You wouldn't try to build a small deck with a handsaw. This is one of the more expensive pieces you will buy, but it is one of those tools that you will use and will appreciate not having a junk one. This does not mean you need to get a super solder re-work station. Get one with a base station and dial control. Temp controlled would be great.
    Go to a nearby electronics place that sells this stuff and buy some general wire, breadboard etc. They will appreciate the business and might be there someday when you really need that one part and don't want to wait for shipping. I was amazed to find one near me. They were rather knowledgeable compared to some certain chains (they had a soldering iron on the counter just in case)
    An old computer with the following ports: MIDI(computers used to have a port with real IO, oh my), serial, USB, parallel. You might want to eventually talk to ports and individual pins without the OS in the way. Windows stopped allowing this with XP. A P4 is fast but gets warm and very power hungry. A PIII not so hot or power hungry but not as fast. An old laptop works great for this since it has a small footprint.

    Start to follow a few web sites:
    http://hackaday.com/
    http://www.adafruit.com/blog/?main_page=blog
    http://blog.makezine.com/
    http://dangerousprototypes.com/
    http://www.evilmadscientist.com/
    http://diydrones.com/
    https://www.sparkfun.com/

    --
    Is he strong? Listen bud, He's got radioactive blood.
  21. Rasberry PI plus sensors and actuators by peter303 · · Score: 2

    The PI gives you a cheap, but fairly capable Linux computer in size of a cigaratte pack and under $50. Then you can plug sensors,e.g. range finder, and actuators, e.g. rolling motor feet, into its I/O ports. Some of the other vendors mentioned in this thread sell these devices. Then you stick a monitor & keyboard temprarily into the PI to program it as a computer.

    I havent done this myself, but saw a demo.