go away spammer

Author Topic: Getting started in it all  (Read 2844 times)

0 Members and 1 Guest are viewing this topic.

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Getting started in it all
« on: April 28, 2011, 09:53:27 PM »
I have no idea how to program a robot, I am mechanically inclined. Kind of.

What is a good place to start?
I was looking to spend around 400 dollars. I would like something that I can take apart and make into other random stuff.

Thanks guys :D

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #1 on: April 28, 2011, 09:56:44 PM »
I know I kind of broke the rules a bit, but I was looking at the Lynxmotion stuff.
Would that be really over a newbies head?

Offline Gertlex

  • Supreme Robot
  • *****
  • Posts: 763
  • Helpful? 24
  • Nuclear Engineer · Roboticist
    • Index of Oddities
Re: Getting started in it all
« Reply #2 on: April 29, 2011, 12:06:30 PM »
Have you seen the $50 robot concept/tutorial on the main SoR site?  We recommend that for a start :)

Personally, I went ahead and bought an Axon, and then implemented a photovore similar to what the $50 project entails.

I haven't looked at Lynxmotion stuff, but the name is familiar so someone here probably has experience with it...
I

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #3 on: April 30, 2011, 07:03:22 AM »
http://www.robotshop.com/berobot-professional-humanoid-development-platform-11-servos-7.html

I was also looking at this, sure it might be breaking a lot of bank, but it looks like something I can get a lot of.

Or....

http://www.robotshop.com/robobuilder-creator-5710k-robotic-kit-3.html

Which costs a little less and I could use in competitions.

http://www.robotshop.com/robophilo-humanoid-robot-kit-3.html

Or that.

Which one would you go with?
Is that over kill for a newbie?

Offline madchimp

  • Robot Overlord
  • ****
  • Posts: 158
  • Helpful? 2
Re: Getting started in it all
« Reply #4 on: April 30, 2011, 11:25:03 AM »
I have no idea how to program a robot, I am mechanically inclined. Kind of.

With that said I would think any kind of humanoid robot would be a bit over your head for the time being. You would be much better off to start with the $50 robot as was already stated. If you want something that you can pull out of the box and throw a sample program on and run and still be able to expand on check out the 3pi from pololu. It's a bit expensive but can be expanded, it can even become a base for a more complex bot though not a very big bot lol.

Madchimp

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #5 on: April 30, 2011, 11:33:05 AM »
I have no idea how to program a robot, I am mechanically inclined. Kind of.

With that said I would think any kind of humanoid robot would be a bit over your head for the time being. You would be much better off to start with the $50 robot as was already stated. If you want something that you can pull out of the box and throw a sample program on and run and still be able to expand on check out the 3pi from pololu. It's a bit expensive but can be expanded, it can even become a base for a more complex bot though not a very big bot lol.

Madchimp

I was thinking the beRobot might be a good one, from what I have read it uses a GUI much like mindstorms do.
I'm not TOTALLY clueless, I have played around with mindstorms and do have SOME clue about what I have to do.

What could I do with the 3PI?

Offline rbtying

  • Supreme Robot
  • *****
  • Posts: 452
  • Helpful? 31
Re: Getting started in it all
« Reply #6 on: April 30, 2011, 02:07:22 PM »
Mindstorms isn't robotics =).  And all the good Mindstorms projects are done without the GUI anyways, since it is rather limited in what you can program. 

Also, walking robots require a decent understanding of kinematics to be programmed properly - if you don't already know how to do the math, it'll be a much harder learning curve.  And don't rely on a GUI - chances are pretty high you'll need to get rid of the GUI and code in C/C++/BASIC/Python/other language in order to get your robot working beyond a really basic stage, since GUIs and math don't like each other =).

You should also be aware that you won't be able to use any of the bots in competitions and expect to be competitive without understanding all of the parts of the system, from the electronics to the programming. 

A 3PI has built-in sensors for line following, an LCD, a buzzer, and random LEDs on it - it's basically a nice little rover bot that can be extended to do simple robotics tasks.  It's essentially a prebuilt $50.00 robot, with the addition of extra sensors and a professionally designed system, thus the extra cost. 

Since you say you are mechanically inclined but don't really know how to program a robot, it seems to me like you'd be much better off building your own robot from scratch (extruded aluminum, plastic sheeting, etc) and programming it after - it doesn't really make sense to me why you want to avoid the mechanical design portion if that's what you're good at already.  Just my $0.02.

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #7 on: April 30, 2011, 02:14:24 PM »
As far as the humanoid went, I reckoned that I could start with the GUI, and then fiddle around with the programming aspect of the whole shabang on the side.

The only reason I am not going to try to make one from scratch is simple: I live in a barracks. It would make more of a mess then I am willing to deal with. Combine that with I am really more interested in the electronics end of things. Especially the programming.
I know that learning C is going to be hell for me, but... I doubt that it is something that I cannot handle.

I didn't realize that mindstorms were held in such... low regard



Offline hazzer123

  • Supreme Robot
  • *****
  • Posts: 460
  • Helpful? 3
Re: Getting started in it all
« Reply #8 on: April 30, 2011, 05:29:47 PM »
Actually it isn't. Mindstorms is used in some very good universities as an introduction to robotics and there's plenty you can do with them. Installing a 3rd party firmware and using it to run code written in C, Java, etc extends it even further.
Take a look at the list of supported programming languages on Wikipedia's Article

ROS, one of the best and increasingly popular robotics middlewares, has supported Lego NXT for a while too - a clear sign that this is actually a pretty fantastic platform. Here are the docs for NXT on ROS

Of course, what platform you choose depends on what you want to get out of building a robot. As a beginner, I personally loved to understand everything to the lowest level, so I built everything custom. It did mean, however, that everything I built was pretty basic. Nowadays I'll often opt for a more prebuilt system that means I can get experimenting with complex and interesting algorithms really quickly.

Looking back, it's probably the best route I think. Starting on something like lego might mean that you don't fully appreciate the underlying technology and therefore might have more difficulty debugging problems. If I were you, I'd do the $50 robot :)
« Last Edit: April 30, 2011, 05:31:21 PM by hazzer123 »
Imperial College Robotics Society
www.icrobotics.co.uk

Offline knossos

  • Robot Overlord
  • ****
  • Posts: 278
  • Helpful? 14
Re: Getting started in it all
« Reply #9 on: April 30, 2011, 10:05:50 PM »
I would recommend the $50 robot myself.  It will give you a great first project under your belt.  It gives you a good range of all the basics and can easily be expanded upon.  Also, although I do believe anyone can learn to program, not everyone enjoys programming.  The $50 robot will allow you to wet your feet with embedded programming without breaking the bank.  I skipped the $50 robot myself because I had a good background in programming and a good background in electronics (although more from a repair than a design perspective).  I recommend starting somewhere thats within your comfort level for your first project to see if its something that will hold your interest before you dive in.  That will give you a better idea of what aspects you would like to push beyond your comfort zone.  For example, my personal weak point is mechanical engineering, so for now I am beginning with some easier mechanical configurations that will still challenge my programming skills (I'm using Lynxmotion's servo erector set for my project).  In the future though, my goal is to design and build my own CNC machine and have the majority of my parts custom milled.
"Never regret thy fall,
O Icarus of the fearless flight
For the greatest tragedy of them all
Is never to feel the burning light."
 
— Oscar Wilde

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #10 on: May 01, 2011, 02:44:07 AM »
Alright guys thank you :D Would the 3PI Be a good second bot and then after I am comfortable from farting around with those for a while, what kind of thing would I want to move on to?

Is there somewhere I can find a tutorial on programming a robot in C?

Offline knossos

  • Robot Overlord
  • ****
  • Posts: 278
  • Helpful? 14
Re: Getting started in it all
« Reply #11 on: May 01, 2011, 06:51:26 AM »
Honestly, the $50 robot can keep getting expanded until you outgrow the microcontroller.  That's a large part of the beauty of it. 

For example start with the $50 robot as a simple photovore.  Next modify the code to make it a photophobe.  Then get an IR rangefinder and add that to it.  After that you could get another servo for panning the IR rangefinder.  Then you can add a sonar rangefinder.  If you have a Nintendo Wii, you could pick up a WiiChuck adapter to use the Nunchuck to control your robot, giving you a chance to work with I2C.  You could also pick up a bluetooth module for remote control of your robot. 

There are so many possibilities and routes you could take, it would be hard to say what your next step would be. 

If you are really comfortable with the programming of the $50 robot then you could dive right into more complex stuff right away.  I would say that getting comfortable with the programming would probably be your first greatest challenge.  As for a tutorial on programming a robot in C, what kind of programming background do you have?  If you are already familiar with programming, you will likely find the transition fairly easy.
"Never regret thy fall,
O Icarus of the fearless flight
For the greatest tragedy of them all
Is never to feel the burning light."
 
— Oscar Wilde

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #12 on: May 01, 2011, 07:59:47 AM »
Absolutely none.

I am in the Army, stuck in Korea for a year and really honestly have all the time in the world to learn something like this.
Combine that with a decent salary.

I am willing to learn though, I need a SERIOUS challenge.

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #13 on: May 02, 2011, 02:26:16 AM »
Could I use C++?

Also, really stupid question: Where do I find C/C++?

Offline knossos

  • Robot Overlord
  • ****
  • Posts: 278
  • Helpful? 14
Re: Getting started in it all
« Reply #14 on: May 02, 2011, 04:03:20 AM »
I personally prefer C++ over C for programming, but from what I hear, C++ is not as well supported for embedded programming.  Anyone out there feel free to correct me if I'm wrong.  Either way, C and C++ are very similar and should require little adjustment to transition from one to the other.  If you plan on programming beyond the world of embedded electronics, I would recommend starting with C++ so you can learn Object Oriented programming techniques early on.  Don't worry if this is all Greek to you now, you'll understand it later on as you learn to program.  Besides, as luck would have it, several people on this forum speak Greek :).

As for where to get C/C++, it depends on what operating system you will be using for development.  If you start with the $50 robot, the tutorial includes a link to AVR Studio which is the program you would use to write your code.  The tutorial also includes sample code as well.
"Never regret thy fall,
O Icarus of the fearless flight
For the greatest tragedy of them all
Is never to feel the burning light."
 
— Oscar Wilde

Offline Gertlex

  • Supreme Robot
  • *****
  • Posts: 763
  • Helpful? 24
  • Nuclear Engineer · Roboticist
    • Index of Oddities
Re: Getting started in it all
« Reply #15 on: May 02, 2011, 08:41:39 AM »
Could I use C++?

Also, really stupid question: Where do I find C/C++?


A sizable chunk of the microcontrollers (MCUs) out there are programmed with C, has been my impression.  However, you choose the MCU, and then use whatever language is used for said MCU.  Every MCU has guides and a recommended programming interface.  Hope that helps.
I

Offline NERDsoldierTopic starter

  • Jr. Member
  • **
  • Posts: 25
  • Helpful? 0
Re: Getting started in it all
« Reply #16 on: May 05, 2011, 07:24:59 AM »
It does. I figure that learning C/C++ would be a good foot in the door.
Parallax makes some interesting looking stuff for learning this sort of thing- I might check that out as a first step.
The only concern I have is I am using a MacBook Pro.

I'm starting to think I might go in this order

Programming->Basic Robot->BeRobot kit

But a SNOT load of programming time in there.
The HYDRA kit Parallax makes looks fun too :D


Offline WaterPig Master

  • Full Member
  • ***
  • Posts: 62
  • Helpful? 3
  • Hurdy Gurdy playing at Raglan
    • WaterPigs.co.uk
Re: Getting started in it all
« Reply #17 on: May 05, 2011, 09:34:29 AM »
If you're on a Mac, I may be able to help you with problems you will come across programming microcontrollers. I work with PICs on a MacBook, and have come up with a pretty seamless coding, compiling and programming workflow.

If you've never built a robot before, and don't have much of an idea about programming, I would recommend you make a very simple robot from scratch, and take time to understand all of the modules and components. Something like David Cook's Roundabout — that is a very good example of a logic powered robot that can be expanded easily with a microcontroller.

You seem to be more interested in the programming aspect than actual construction — is that due to practical constraints, or are you just more interested in programming than electronics/mechanics?

Thanks,
Barnaby

 


Get Your Ad Here

data_list