Simulators are a very efficient way to learn the RobotC language in a scripted environment using a simulated robot. This enables you to rapidly test different functions of the language. Just like the RobotC Integrated Development Environment (IDE)
, the Robot Simulator
also has a Development Environment.
The major areas of the Integrated Development Environment are identified by the numbered circles in the screen shot below.
- Simulated World The simulated word contains a 3D grid on which the robot moves. Each block on the grid represents a 12-inch square. The robot always starts out in a "base" identified by the grey square in the south west corner of the world.
- Your Program You write the program in this frame. Line numbers are provided by the IDE. Also, the IDE will highlight each line as it is being executed by the robot.
- Mission Instructions Helpful instructions about the mission and how to solve it are shown here. Suggested commands are also shown. You can Block-Drag-and-Drop the commands from the Instructions frame to the Program frame. Block the command you wish to copy, then drag it to your program. Make sure you drop it in the right spot. You may need to press the Enter key or Spacebar to position the command correctly.
- Mission List You can start (or re-start) a mission simply by clicking on the Mission link here.
- Run Buttons You can start, stop, pause, fast forward, step through, and save programs with the buttons in this menu.
Missions in the simulator are progressive in difficulty. The earlier missions are easier to complete than the later missions. Some of the later missions require specific strategies in order to successfully complete the mission. You can access a mission by clicking on the "Mission" link at the top of the screen (See #4 above).
Levels of Play and Locked Levels
There are three levels of play (Beginner, Intermediate, and Advanced). The higher levels are locked and can only be "unlocked" by completing all of the missions in the lower level. The Beginner level has three missions. So, in order to move to the Intermediate level, you need to complete all three of the Beginner missions.
Goals and Points
The goal of each mission is to have the robot leave base, retrieve the blue ball, and return to base without touching any of the red balls (fire) or red squares (lava). Touching a red ball or a red square deducts 25 points from your score. The blue ball is only worth 25 points. So, in summary, you have to retrieve the blue ball without touching anything red and you have to return to base.
At the end of each level is a mission called: "Free Play". The "Free Play" mission is completely optional. You don't have to participate in it if you don't want to. Basically, a "Free Play" mission is an attempt to try to get as many of the blue balls as possible in one run of the robot.
Randomness is Built-In
In the "real world" when you tell the robot to turn 90 degrees, it may turn a little more or a little less depending on a myriad of factors such as: momentum of the robot, speed of the turn, friction (or lack thereof) with the surface, backlash between gears, complexity of the program (i.e., is the program telling the robot to do things in the background while it is turning?), configuration parameters, etc.
In the "real world", when you tell a robot to turn 90 degrees, it may in fact turn anywhere between 85 and 95 degrees (again depending on the conditions mentioned above). This simulator works in the same way. There is a "built-in" variability in the movement of the simulated robot. This is done to more accurately simulate how a robot would act in the "real world".
It is up to you, the programmer, to decide how to best address the randomness that may occur in the robot's movement.
Aligning with the Wall
One of the key strategies for dealing with randomness in the robot's movement is to "re-align" the robot to a known boundary (i.e., the wall). Using the wall to re-align the robot is a sure strategy for success in some of these simulated missions.
Exercise: the RoboCatz Robot Simulator
Demonstrate your skill in using this robot simulator. Complete 6 missions. This is a web based simulator. Go to our website to start it (or click the button below).
Start the Robot Simulator