They model the whole thing in RVW, so you can practice certain moves without needing to set everything up. You can use RVW to practice FTC tables as well. There are even some underwater ones that you can navigate through using the AnemoBot (see right), which looks like a little sub marine!
ROBOTC VIRTUAL WORLDS DOWNLOAD
There are tonnes of pre-made ones that you can download from the ROBOTC site. If you look at the bottom left of the screen, you can see the maze level I made. There is also a range of VEX robots, which I won’t get into now. 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. Here you can see the start up screen if you pick “NXT” as your virtual platform and use the Level Builder: No fear, though, there are several models to play with. 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. RVW allows you to play with robots without actually requiring your to build one first. You can even make your own levels (which is what I did). There are many different world or levels that you can play with. RVW is a 3D virtual robotics system made by Robomatter, which allows you to program and control several different robot models, using ROBOTC. If you’ve never played with that before then let me take a second to explain it. Make sure you select the “Mammalbot” as your robot or it won’t work.I’ve been dabbling with Robot Virtual World (RVW) worlds a bit lately.
ROBOTC VIRTUAL WORLDS CODE
You can get the code and the RVW level here in a single zip file. A solver that will find its way back to the start using the fastest route.A route planner that will work with mazes that are not perfect.A route planner that makes sure that all tiles are discovered and mapped.WriteDebugStreamLine("doMainStateTurn: dir: %d, curr: %d, new: %d", dir, currentHeading, newHeading) Don't bother to do anything if the newHeading is the same NewHeading = routePlannerFollowWall(dir, maze, currentTile) Get a new heading from the route planning function Int dir = headingToDirection(currentHeading) * by a route planning function, routePlannerFollowWall() in this case If you wanted to experiment with different route planners, simply change the function called in doMainStateTurn(), which gets called each time we get to another tile. Check if the new tile is the finish tile, stop if this is true.
ROBOTC VIRTUAL WORLDS UPDATE
Update the position of the robot and update the current tile pointer.Wait until the robot gets to the centre of a new tile.Change robot’s heading and wait for turn to complete.Call the route planning function and get new heading.Update current tile walls and those of the neighbouring tiles.Scan left and right walls if they have not been scanned already.Check for a wall ahead and fix the robot’s position if required.Set the pointers to the finish tile and current tile.The main state machine consists of 5 states: Here’s a little video of it, doing its thing. The engine for this robot consists of two Finite State Machines (FSM) that handle the cruising around, turning, scanning, etc. It’s finally finished and ready to be published, my Robot Virtual Worlds Maze Crawler is fully functional.