Pressing the Y button on the joystick will transition the drive mode of the robot from Arcade to Tank and back again.
If you use this behavior framework, I ask that you share the love. Print out a copy of the GeekMyBot logo and put it on your robot along with the http://geekmybot.blogspot.com/ URL address. Share this Blog with your friends.
If you develop a behavior that you are particularly proud of, I ask that you add a comment to this article and share your behavior along with a link to your software.
Robots are interesting when they perform a set of different behaviors. For example one behavior may be to drive using the joystick in tank mode. Another behavior may be to drive using the joystick in arcade mode.
Wouldn't it be nice if:
- I could build a library of simple behaviors. When I need one, I just add it from the library.
- I could build complicated behaviors by transitioning from one simple behavior to another behavior when an interesting event takes place.
- I could re-use the behaviors in many different applications.
This article describes a simple robot behavior framework (set of Java Classes) that makes constructing behaviors and transitioning from one behavior to another easy. The article is written in 5 different parts as follows:
Part 1 - Behavior
Part 2 - Events
Part 3 - Behaviors
Part 4 - Global Data
Part 5 - OpModes
These articles are written for a two wheel drive robot that is typically used in FTC competitions. Here is a picture of the robot used in this example:
The robot has two drive motors and wheels, a left drive and a right drive. There is one omni-wheel in the back. The electronics are mounted vertically. From left to right in the picture above, the electronics are an android phone, The power distribution (the one shown is home-built using a USB hub and a 5 volt regulator), a Core Legacy Module, a Core Motor Controller, and a Core Device Interface. There is an IR seeker V3 and an integrating gyro sensor plugged into the Core Device Interface.
All software can be downloaded from - https://github.com/dlacres/GeekMyBot.git
No comments:
Post a Comment