I’ve been dabbling with Robot Virtual World (RVW) worlds a bit lately. If you’ve never played with that before then let me take a second to explain it. RVW is a 3D virtual robotics system made by Robomatter, which allows you to program and control several different robot models, using ROBOTC. There are many different world or levels that you can play with. You can even make your own levels (which is what I did). RVW allows you to play with robots without actually requiring your to build one first. There are some restrictions, of course. When you build your own, you can make it however you like it, in RVW, you’re “stuck” using the models the designers have made for you. No fear, though, there are several models to play with. Here you can see the start up screen if you pick “NXT” as your virtual platform and use the Level Builder:
I am a big fan of the Mammal Bot, it looks cool and it has all the sensors in the places I want them to be. There are others and they’re all cool. There is also a range of VEX robots, which I won’t get into now. If you look at the bottom left of the screen, you can see the maze level I made. There are tonnes of pre-made ones that you can download from the ROBOTC site. There are even some underwater ones that you can navigate through using the AnemoBot (see right), which looks like a little sub marine!
You can use RVW to practice FTC tables as well. They model the whole thing in RVW, so you can practice certain moves without needing to set everything up. I haven’t really played with that, so I can’t tell you what it’s like, exactly, but the tables look cool and pretty challenging! Once they get the multi-player stuff integrated in the standard RVW program, you could even battle it out against another team in another part of the world!
If you use the standard levels, you can login to the CS2N (Computer Science Student Network) site and keep track of your achievements. Teachers can keep track of their students’ progress. You get cool medals for each milestone, which you can then brag about.
So what have I been doing with it? I’ve been playing with Subsumption using a modified version of Tom Roach’s Behaviour Framework for ROBOTC. It’s a simple maze crawler using the Mammal Bot in my home made maze. I prefer to use the overhead camera view because I currently have pretty bad vertigo, so fast moving 3D stuff makes my stomach turn.
It’s not done yet but it’s a LOT of fun to play with. When it’s working and I’m happy with it, I will put the level and source code up on my blog, of course. Currently, there are three behaviours:
- Position tracking
- Area scanning
- Cruising
The position tracking doesn’t try to get control of the robot, it only serves to, well, keep track of the current position in the maze and change the pointer to the current tile. The area scanning behaviour is triggered by the position tracking behaviour and will scan right, left and in front and update the data of the current tile. The cruise behaviour uses PID and the heading info from the compass to maintain a specific course.
Up next is a behaviour that will change the robot’s course, depending on the obstacles it faces. When that is done, I want to create a behaviour that will solve the maze when it’s done traversing it all and plot the fastest route back to the start.
If you’ve not played with it yet, go ahead and download it. It has a 60 days trial license, so you can play with it. I am sure you’ll like it.
During the month of April, Robomatter are organising a series of free webinars about RVW, so you can tune in on Youtube or Google+ and find out more info! You can watch them here: [LINK], where you can also check out previous episodes. The webinars are on at 16:00 EST. The next one is on 15 April, with another two on 22 April and 29 April. Check ’em out, they’re heaps of fun!