Robotics Program

  • Thread starter Shawnzyoo
  • Start date
  • #1
105
0

Main Question or Discussion Point

is there any programs out there where you can enter a layout of a room for a small robot?
like the room dimensions, basic furniture placement ect...
or can you do this with C or Pbasic or some similiar program?
thanks
 

Answers and Replies

  • #2
Hardware Dependancies

It would be easy enough to write a program that would take a graphic image. (ie an aerial room layout drawn in M.S. Paint) and convert it to a set of commands that would be understood my your chosen hardware. But then you'd have the problem of updating the software every time you changed your room layout, or left your shoes in the middle of the room.

What you would have to do for the problem of leaving shoes, or a backpack in the middle of the room would to have a second set of programming that would handle those cases. Moreover, if your software is good enough to handle shoes or a backpack, it should be able to handle a couch. To have the first level of programming in place would be redundant, and the User would have to go through the added trouble of programming it for each different room.

I did look around online for a while to see if anyone had attempted to write the program that you described. I had not found any, but I did come across a cute game; GNU Robots. You may want to check it out. http://www.mirror5.com/software/robots/faq.html
It requires the GNU Guile, but you can download it from www.gnu.org if you don't have it.
Good Luck in your Adventures.
 
  • #3
Danger
Gold Member
9,607
246
I have no idea who makes it or where you can get it, but there's a robot vacuum cleaner that does pretty much what you want. If you can find the manufacturer, maybe you can adapt their programming to fit your needs. Sorry I don't have any more info about it.
 
  • #4
416
1
Danger said:
I have no idea who makes it or where you can get it, but there's a robot vacuum cleaner that does pretty much what you want. If you can find the manufacturer, maybe you can adapt their programming to fit your needs. Sorry I don't have any more info about it.
I think you might be referring to the http://roombareview.com/buy/?OVRAW=roomba vacuums&OVKEY=roomba vacuum&OVMTC=standard" robotic vacuum. I don't think that program would be of much use though. That program simply starts in the middle of any room and attempts to cover all possible area by making larger and larger circular paths.

Writing a program to model the dimensions of a room and even the placement of furniture is actually quite simple and be programmed using just about any type of programming language. The hard part is getting the robot to know precisely where it is physically withing that floor plan.

Writting a simulation is a piece of cake because you always know where the robot is simply by reading it's pixel coordinates. With a real-world robot there are not pixel coordinates. The robot's actual location must be determined by reading some type of sensors (often distance sensors).

Many industrial robots that need to know precisely where they are use "beacons". A "beacon" is usually some type of radio transmitter system or other type of markers that the robot can read (sometimes lasers). The location of those markers within a building or outdoor space tell the robot it's coordinates relative to the floor plan (kind of like generating pixel coordinates for the robot). Those types of systems are quite dependable and accurate, but they require having beacons or markers external to the robot around the space that the robot is attempting to navigate. This means that the robot can only be used in environments where these beacons are installed. Of course if you are already using a floorplan program you're kind of stuck with a specific floorplan anyhow so adding beacons doesn't reduce your existing flexibility anyway.

Beacons can also easily be made portable and used with other floorplans as well, they just need to be set up prior to using the robot. Using this method allows the robot to be picked up and moved and still be able to easily figure out where it is relative to the floorplan based on the position of the sensor beacons. It also allows the robot to distingish between permanent furnishings and random objects since the permanent furnishing are part of the floor plan whilst the random objects are not.
 
Last edited by a moderator:
  • #5
russ_watters
Mentor
19,705
6,045
NeutronStar said:
Writting a simulation is a piece of cake because you always know where the robot is simply by reading it's pixel coordinates. With a real-world robot there are not pixel coordinates. The robot's actual location must be determined by reading some type of sensors (often distance sensors).
Actually, the reality of that situation is a piece of cake as well. The Roomba uses servomotors and very simplistic obstacle detection systems that make it stop and turn in a pre-programmed way. Using the two, it steps-out distances and creates a very accurate map of the room - very, very similar to a pixel-by-pixel map in a simulation.

So if I were programming it, I'd use Roomba-sized pixels and record a pixel every time the Roomba moves by it's length. Every time you hit an obstacle, you turn 90 degrees to the right and continue (though there may need to be some randomization to avoid unintentional patters, like going back and forth between the legs of a couch)
 
Last edited:
  • #6
Danger
Gold Member
9,607
246
NeutronStar said:
That could very well be the one that I was thinking of, but several generations removed. When I ran across the thing was about 20 years ago (around the same time that the Mobot lawnmower came out). The ones in your link are considerably more sophisticated. Thanks for jogging my memory.
 
Last edited by a moderator:

Related Threads on Robotics Program

  • Last Post
Replies
5
Views
6K
Replies
3
Views
1K
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
5
Views
3K
  • Last Post
Replies
2
Views
3K
  • Last Post
Replies
3
Views
970
  • Last Post
Replies
6
Views
4K
  • Last Post
Replies
3
Views
1K
  • Last Post
Replies
3
Views
1K
  • Last Post
2
Replies
38
Views
6K
Top