Posted By: BenAxelrod | Aug 15th, 2006 @ 10:03 AM
page 1 of 1
Comments: 21 | Views: 10811 | Downloads: 0
Download:Link for Robotics Studio Maze Simulator(0 Bytes)
This service creates a simple grid world in the Robotics Studio simulation environment.  It takes a black and white image as input where every black pixel becomes a cube in the simulator.

Trevor Taylor has made some great additions to this code.  The latest version can be found below.

Sven Groot
Sven Groot
My name has 9 letters. Coincidence? I think not...
I think something went wrong with your upload.
Error 1 The type or namespace name 'Ccr' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?) C:\Documents and Settings\rahul\Desktop\MazeSimulator\MazeSimulator\MazeSimulatorTypes.cs 7 17 MazeSimulator
:O


Error 9 The type or namespace name 'PortSet' could not be found (are you missing a using directive or an assembly reference?) C:\Documents and Settings\rahul\Desktop\MazeSimulator\MazeSimulator\MazeSimulatorTypes.cs 36 44 MazeSimulator
Mad

Are you missing All Referece DLL File with Uploaded Folder?
or I am getting wrong..?
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
Great idea Ben! I have updated your code to use color to set the height of the walls. I also improved your optimization a bit to reduce the number of simulation entities.

Have a look in the readme.txt included in the ZIP file.

You can download the updated code from:
http://sky.fit.qut.edu.au/~taylort2/MRS/Downloads/MazeSimulator.zip

Trevor
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
But wait, there's more! It now creates coloured blocks! So you too can create your own Lego World!!!

In addition, I have developed a simple example of a wandering behaviour for the simulated Pioneer robot using the bump sensors.

The code for both is available at:
http://sky.fit.qut.edu.au/~taylort2/MRS/

Have fun!

Trevor


Screen shot:
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
With the release of the September 2006 CTP, Microsoft have added some new features to the Simulator. You can now quite easily create coloured objects and apply textures. Gee, I wonder where they got that idea Smiley Tandy Trower even mentioned the Maze Simulator in his announcement of the new CTP.

Anyway, I have updated the Maze Simulator so that you can have a choice of either solid colours or textures. The textures override the colours. All this is now accessible via the initial state using a config file.

Yeah, I know I should have used a config file in the first place, but I'm still learning MSRS just like everybody else ...

Download, run and enjoy!
http://sky.fit.qut.edu.au/~taylort2/MRS/

Trevor
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
Yet another version of the Maze Simulator Smiley

This has the following new features:
Increased the number of colours from 8 to 16
Added MassMap to allow setting of the mass of objects
Added UseSphere to allow creation of spheres (instead of blocks)

The updated sample config file creates an environment with a
couple of balls that you can push around.

Don't forget too that the October CTP includes support for more
than one camera in the Simulation. So you can now view the world
as the robot sees it! Just start the Maze Simulator and press the
Tab key while the Simulation window has the focus.

You can download the updated code from:
http://sky.fit.qut.edu.au/~taylort2/MRS/MazeSimulator/MazeSimulator.htm

Have fun!

Trevor
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
The updated version of the Maze Simulator for the November CTP is now available. Same URL as last time.

There were no changes required and I have not added any new features. However, note that you need to use the F5 key to switch camera views now instead of TAB. You can also do it from the Camera drop-down list in the Status Bar at the bottom of the Simulation window.

Trevor
Hello,

This is a great tool that i have been playing around with and it might be useful for a school project. I am just wondering though, i can't seem to get the simulator to draw the environment properly on computers with older video cards. i can run the simulator fine on one of my computers at home, but when i am running it at the university i can't seem to really see anything unless i go to the "physics" view. Is there a simpler way to "render" the maze that will work, or can i only run this on newer video cards? If so, what are the video card requirements specifically?

Thank you,
Aaron

EDIT:
On a machine with a geforce FX 5200 card, i could not get simulation to display properly in default or wireframe views, however after using the shader files located here it is now working. i will have to see if the same shader files will work on some other older/low end graphics cards or integrated video.
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
Thanks for the feedback, and the solution Smiley

I know this was not your problem, but it is worth noting that if you don't copy the textures to store\media then you get invisible walls. They are still there in physics view and you can actually bump into them with the robot. This is a little "gotcha" for new users, and could be an issue if students were setting it up themselves in a PC lab.

I am planning to develop some simple mapping and exploration examples using a maze. I just don't have time right now. These examples will be aimed at introductory robotics for undergraduates.

The only example I have so far is very primitive exploration using the bump sensors. I am updating this and it is available at:
http://sky.fit.qut.edu.au/~taylort2/MRS/Intro/Intro.htm

(The manifest in the Intro uses my modified version of the Simple
Dashboard which is available from:
http://channel9.msdn.com/ShowPost.aspx?PostID=257190
but you can easily change it to use the Simple Dashboard that comes with MSRS).

There was also a post on the discussion forum about a system to allow multiple "players" to connect and disconnect from an environment. This would be a great tool for running competitions even at the primary or secondary school level. I have not heard any more about it though, so I hope it is still under development.

Trevor
This maze simulator and the autonomous intro actually gives me a good start on which to build on.

This is what i am planning on doing in the next few weeks:

- import my own maze (image)

- modify the robot to use the following sensors: 3 IR sensors, wheel shaft encoder sensor on each wheel, and a "CMU" camera

- modify the robot to have the same dimensions/appearance as an FPGA-based robot that i am ultimately trying to simulate

- implement a maze-solving algorithm, based on graph theory, in the simulation (robot will solve maze and obtain shortest path using this algorithm).

- have the simulation communicate with a Java GUI via XML file(s)

This is for a final-year project i am working on for my Computer Engineering undergrad.

Once i actually get things working i will post what i have done here, just in case anyone is interested.
I will also post if i need some help, as i am sure people here know more about this stuff than i do. Smiley

Aaron
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
Cool! I wish you all the best with your project.

Changing the maze is pretty trivial -- just supply a new BMP file.

Currently the simulator does not have IR sensors and wheel encoders Sad  I have asked this question in the Discussion Forum, and they are on the "to do" list, but I don't know if they will make it in V1.0.

As for a CMU Camera, you might be able to simulate this using the simulated webcam. I'd be keen to see this working. (I am a bit short of time right now.)

Testing code for solving mazes was the original purpose of the Maze Simulator when Ben Axelrod wrote it.

I would definitely be interested in hearing your progress. Perhaps you can post the code to Channel 9 when you have it working?

Trevor
Thanks!

Yeah, i already have imported my own maze image, i just need to do things like change the height of the walls, etc. Not too hard.

It's too bad there aren't any IR sensors or wheel encoders. But, i'm trying to get a very functional-level simulation going so a lot of detail on how the sensors operate is not needed. Basically, i just need sensors feeding distance data and wheel rotation data to the robot control.
There must be some way to modify or create some service that just measures distance to an object (i.e. wall), up to a certain range. And there must be some way to output rotation of each of the wheels to simulate wheel encoders. The CMU camera is less important than these, but you are right in that the webcam could be modified to simulate one.

I will definetly post code once i get something working.

Aaron
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
Hi Aaron,

We should probably continue this discussion somewhere else because each new posting causes this thread to pop to the top of the Channel 9 sandbox. You can e-mail me at T.Taylor at qut.edu.au.

I floated the idea of using the Laser Range Finder on the simulated Pioneer 3DX to create a sonar sensor on the Discussion Forum some time ago. It should be possible. All you need to do is select a particular subset of the angles (the LRF has 180 degree field of view) and then limit the range, e.g. to 2 meters (an LRF usually has a range of 40 to 80 meters).

Infra-red is a bit different. Sonar sensors these days are linear and accurate to within 1cm across their whole range. IR however is often non-linear and actually inverted, i.e. large values mean a small distance. IR is also very much more noisy than sonar and does not have as good a range. But IR sensors are cheap Smiley

As for wheel encoders, you can actually get the pose of the robot from the Simulation Engine if you grab the robot entity. This is not the same as using tick counts, but it saves you from having to integrate the ticks. However, it is cheating! Odometry is notoriously unreliable on real robots.

If all you are interested in is the maze solving algorithms, not the real world aspects, then I think you can implement what you want using the current Simulator.

Trevor

P.S. We can continue this off-line.
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
I have updated the Maze Simulator to work with the newly released Version 1.0 of MSRS. The only significant change is that you can now specify either the Pioneer3DX or LegoNXT as the RobotType in the config file.

It is available from the usual place (see previous postings), along with my modified Dashboard and the Intro program (exploration using bumpers).

As always, comments and suggestions are welcome Big Smile

Trevor


TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
The Maze Simulator has moved on to bigger and better things. I now have the Explorer service working using the Maze Simulator to provide the environment to be explored.

This involved updating the Simulated Differential Drive to support RotateDegrees and DriveDistance. As well, I have updated my Dashboard to display webcam video and a top-down map from the laser range finder data.

If you are interested in trying it out, you must have the May CTP of V1.5 installed. The package, called ExplorerSim, is available from:
http://sky.fit.qut.edu.au/~taylort2/MSRS/ExplorerSim/Explorer.htm

As usual, all feedback is welcome. Bear in mind though that this is still a beta version Smiley

Trevor
TrevorTaylor
TrevorTaylor
Old 'n' Grumpy
I have updated the Maze Simulator and ExplorerSim for the released version 1.5 of MSRS. A complete package is available that includes my enhanced Dashboard and modified Simulated Differential Drive.

The ExplorerSim now draws a map while it is wandering around. Future versions will implement a proper exploration algorithm and SLAM.

You can get the package from:
http://sky.fit.qut.edu.au/~taylort2/MSRS/

Trevor
page 1 of 1
Comments: 21 | Views: 10811 | Downloads: 0
Microsoft Communities