PDA

View Full Version : Robot Simulator



ooops
06-08-2008, 11:01 AM
It was suggested that since I am new to the whole programming “thing” that I should consider starting with a Windows XP operating system.
It occurs to me that I could start building my programming skills and libraries with some sort of simulator since I am on XP with all my PCs anyway. I have searched the threads for a suggestion on where to start with a simulator, but didn’t see one.

Please recommend a good place to start!

Adrenalynn
06-08-2008, 11:17 AM
Today, I just don't like any of the simulation packages out there. MSRS (Microsoft Robotics Studio) is the going thang. IMHO, it's icky. I spent a couple weeks just trying to learn it, forget programming.

There's no universal hardware support simulator today (that's largely what the TROM will be for when it's completed - and the major failing of the existing simulators).

Unless you have something really specific in mind that you want to simulate, start thinking about your environment and what it is you want to accomplish. Then get the simple interfaces for what you're trying to do and start off programming that. If you don't already program, I'd avoid simulators like the plague.

So let's take a step backward.

*Define the problem. What are you trying to accomplish (ie. control some servos (how many?), read a wheel encoder (how many, how accurate), test a bump sensor (how many?), etc)

*Do you have a preferred hardware solution for collecting and/or outputting that data? (Servo Controller is [Phidgets][SSC32][Poulou]) (Analog and/or digital input device will be [Serializer][Arduino][Make Controller][Custom board]), etc

Once we make it that far then we can figure out what languages we support (which may change your decisions) and how we go about learning to communicate with 'em.

I know that doesn't answer your question the way you probably wanted, but that's my opinion.

Adrenalynn
06-08-2008, 11:22 AM
That said, I recently stumbled upon a pretty spiffy drivetrain simulator that will cut my math down substantially:

http://www.enigmaindustries.com/EDTSim.htm

darkback2
06-08-2008, 11:47 AM
I'm not a big programmer either...one thing I do know is you can't really work on programming until you have something to program. I'm also not sure how useful a simulator would be. I would pick your first robotic platform first, then go from there. What are you building by the way?

DB

Adrenalynn
06-08-2008, 11:51 AM
Simulation can be tremendously useful if you have a problem to solve. Without a problem to solve, you might get some pretty pictures, but that's about it. ;)

darkback2
06-08-2008, 11:56 AM
I'm not a big programmer either...one thing I do know is you can't really work on programming until you have something to program. I'm also not sure how useful a simulator would be. I would pick your first robotic platform first, then go from there. What are you building by the way?

DB

Adrenalynn
06-08-2008, 12:15 PM
There's an echo in here echo in here echo in here. :)

darkback2
06-08-2008, 12:51 PM
sorry...My computer didn't like it that you posted a message while I was posting, and then I ended up hitting submit again thinking that it hadn't worked.

Adrenalynn
06-08-2008, 12:54 PM
I figured - I was just givin' you a hard time. :)

ooops
06-09-2008, 08:37 AM
Hmmmmm. Not what I wanted to hear ... seemed like a good idea to start with. That said I guess I need to nail down the mechanical specs, then work up the mech specs.
Thank you!

Adrenalynn
06-09-2008, 10:16 AM
Even better - I'd first work-up what it does and a 30,000ft view of how you want it to do it.

It mows the lawn autonomously. Ok. How does it know what's lawn and what's small child? (if it plans to even care. Great mulch) How does it find the end of your property? How does it know where it's already cut? What happens if it does accidentally stray off property? (It's always funny watching people trying to catch their Sumobots when they get bumped out of the ring. It's like the bot says "woo! Freedom at last!") What happens when the batteries are weak? What happens if the steering sticks? Is this thing going to be able to alert you to problems - text messaging maybe? Is it going to terrain profile to mow uneven ground by lifting/lowering the mower, or does it just blast straight on 'till mornin'?

This is more what I was thinking about when I suggested defining the problem. From answers to questions like that one can begin designing their architecture.

darkback2
06-09-2008, 12:09 PM
Ive been thinking about this...What exactly is my procedure for building a robot? Do I start with parts? A purpose? What if I just want to make "a robot".

Some of my robots are based on robots that I have seen other places. For example "bluebot" is an ER-1 based tachekoma rip off...My "art bots" follow general formats...but do I really have to have a purpose when building a robot? What if the purpose is a highly modifyable/capable chassis? Do I want to build walkers or rovers? Am I more interested in sensors and processing or making realistic motions? Are the two things mutually exclusive

I guess though a lot of where I come from is prior experience...which then begs the question...what was my prior exerience based on? Where did I start?

I started building robots using the Lego Invention system, and worked my way up from there.

To be honest, it took me a really long time before I could "model" a robot before building it.

I guess what I'm saying is if your just starting out, maybe you should start with something like the NXT kit, and work your way up. If you start out with a huge project, you will probably blow a lot of money, and then loose interest. I know I would.

DB

Adrenalynn
06-09-2008, 12:18 PM
I usually preach the "start small" line too. I think the exceptions are folks who are transferring experience that is applicable. In Ooops' case, that's what this is, he has a tremendous amount of mechanical experience - now he just needs to "slap a brain on it". I think he's a good candidate to start big. Somehow I just don't imagine he'd be amused playing with legos. ;)

LinuxGuy
06-09-2008, 12:25 PM
I think he's a good candidate to start big. Somehow I just don't imagine he'd be amused playing with legos. ;)
I'd be amused playing with LEGOs.. :P

8-Dale

darkback2
06-09-2008, 12:59 PM
Ok...so I looked at all of the posts by oops...Now I get it.

You are already going big...so while I still think you can learn a lot playing with legos...you don't really have to.

As for problem solving/modeling cad drawings do a lot for me. Mostly in that I can make paper templates for parts that I need to cut out.

Also...I regularly make my students make lego models of their robots. It helps with solving little problems before they get big...what do we do if the robot manages to wonder out of the test area and stuff.

Have you thought about simply making an RC mower and then converting it to autonomous? You could also use some sort of lazer relay system...robot trips a lazer it gets sent a shut down message.

DB

ooops
06-10-2008, 04:57 PM
Somehow I just don't imagine he'd be amused playing with legos.
Actually legos are fun, but my 12 year old keeps taking them away from me!

he has a tremendous amount of mechanical experience
That is very nice to say … and how I earned the handle “ooops” I tend to never do anything the easy way! Thank you.

Have you thought about simply making an RC mower and then converting it to autonomous?
Actually, I would have been happy with just a RC mower before I stumbled across this forum while looking for parts. I am pretty committed to the autonomous at this point, but understand that it may take a while to “realize the dream”. That said, it may take a while to have it debugged mechanically enough to consider adding the “brains”. Once it is running I will add a sensor or two and take it from there one step at a time.
My thoughts on the simulator, was just my hope for a short cut to programming, that on the surface seemed like an easy good idea. Like so much in life shortcuts can quickly lead to the long way around. That said, I have been thinking about a project kit to get me started, but I would like to have a running mower before dividing my time too much.
Just a further thought on the subject. I am truly and deeply amazed at the accomplishments of the normal “posters” here. To most of you guys and gals the programming side is 2nd nature at this point and you are sorting out details on projects and not sweating the learning curve in front of us mere mortals. To me all the code if you will was just some “black magic” that happened above my ability to understand. Now that I have “glimpsed behind the curtain” so to speak I see now that it is just another skill to learn. It seems like every page I read on the subject leads to a “oh, that’s how they do that”.
So I guess what I am trying to say is first – thank you all for putting up with my “newbie questions”. And second, if someone else out there is just starting out, hang in there you have come to the right place!

darkback2
06-10-2008, 06:34 PM
OK...as for starting out RC...definitely makes things a lot easier down the road in my book. Vivian started out, and still can be completely RC which helps with everything from getting sensor readings to setting timings.

Have you considered making a small working model?

DB

ooops
06-10-2008, 08:47 PM
I agree with the RC should make for easier debugging of the mech.
The smaller working model would be good for the training, but just about impossible with my schedule. That was where the simulator idea came from. I could steal a few minutes/hours here or there to work on the programing, but it would be here or there and not always where the robot would be. If the robot was virtual, I could get instant satisfaction (frustration) of seeing the code in action (or not in action) without having to worry about batteries or tossing the robot in the suitcase.
I have found one http://www.robotbasic.org/ which has definetly help me understand the "magic" of how it all works but if it isn't in the same language that I will need then why spend hours learning it?

Adrenalynn
06-12-2008, 11:39 AM
The thing is that RC is trivial, and [nearly] any [wheeled/tracked] robot can be made RC at the drop of a hat. All you're doing is plugging servo wires into an RC receiver. That's it. No magic.

I too plug in an RC receiver - it's even great for bench testing. I have probably a dozen on the shelf of various vintage.

darkback2
06-12-2008, 02:43 PM
The thing is that RC is trivial, and [nearly] any [wheeled/tracked] robot can be made RC at the drop of a hat. All you're doing is plugging servo wires into an RC receiver. That's it. No magic.

What about this or any project isn't on some level for some one trivial for some one? Matt might find my ideas for a walker trivial. Or the fact that I can't get vivian to draw a circle, and am thrilled with the fact that she can draw a half way decent triangle. Or even the fact that I program using max and not C or .net or anything else.

I guess I have a moderate problem with stopping there (RC). I like the idea of making a robot more and more autonomous...I just think using an RC controller is a good place to start. Its like creating the spash screen for a bit of software...It doesn't do much, and it isn't "magic" but it feels good to get something done, and have it work. If you stop there though, you haven't really accomplished anything.

That said...to each there own. Some people must love just working on the mechanics of a robot, and not worrying about the programming. Sensors smensors. You can have a lot of fun with an RC battle bot for example.



I too plug in an RC receiver - it's even great for bench testing. I have probably a dozen on the shelf of various vintage.

I probably shouldn't post this...but that was my point. See you Saturday btw.

DB

Adrenalynn
06-12-2008, 07:48 PM
I think you might have thought I was disagreeing with your post - I wasn't - I had hoped to clarify with my last statement that you quoted. Sorry!

darkback2
06-13-2008, 01:33 AM
I get it...now...I'm really sorry.

Adrenalynn
06-13-2008, 01:46 AM
No problem at all! I was concerned when I posted that it might sound that way, so I had quickly added the last line in the hope of clarifying. I failed as a communicator, and I apologize as that. Totally my fault. Just a bad choice of phrasing all the way around, and rereading it, I can see why it could be misconstrued. Mea Culpa!

darkback2
06-13-2008, 02:20 AM
hey oops,

I was looking at your pic...have you thought about moving the mower back, and the drive wheels out to the sides? It just seams like you might be fighting a lot of turning resistance with it the way it is...Then again...those cart collectors seam pretty strong.

DB