-
Notifications
You must be signed in to change notification settings - Fork 43
Home
Gears (aka GearsBot) is a 3D Robotics simulator. It supports programming in blocks (...using Blockly), auto-conversion of blocks into Python code, and direct programming in Python (...Ev3dev and Pybricks). The generated Python code can run on both Gears as well as on a real robot with little or no modifications.
Gears is easy enough to be used by beginners, but the primary audience is intermediate to advanced users. Some robotics simulator (eg. Vexcode VR and Ev3DevSim) simplifies the physics simulation to make it easier for beginners, but Gears tries to achieve as realistic a simulation as is practicable. This means that just like a real robot, a GearsBot will experience tire slippages and other effects that prevent the robot from travelling straight without the help of a line or gyro. This can make Gears a little harder to use for beginners, but facilitates intermediate to advanced students in learning how to deal with such inaccuracies in their real robots.
If you'll like to help with documentations, testing, or coding, drop me a message (cort@aposteriori.com.sg). All help are appreciated.
Sensors and Actuators (link)
This section describes the sensors and actuators available in Gears. Most of the components are based on EV3 parts, but there are also a few virtual components that only exists in the simulator.
Challenges (link)
This section describes the challenges available under the "World" button in the Simulator panel.
Ev3dev Most, but not all API are supported. If something you need is missing, drop me an email or post a new issue on Github.
Pybricks Most API are supported. As the official Pybricks API lacks many features used in Gears (eg. no move_tank or move_steering), Gears will add functions to the generate Python to replace them. This can result in messier code. If you're writing directly in Python, you can use the DriveBase provided by Pybricks, but the autogenerated code does not use DriveBase.
Customization Guide (link)
The robot and image world are highly customizable using the built-in Robot Configurator and World Builder. This can be useful in creating your own missions and challenges. Read the customization guide to learn how.
Tutorials (link)
FAQ (link)
Python References