My Robot
The Robomagellan Version
last updated: june 5, 2012

The Behavior
The behavior is divided into 5 states. It starts in Standby state and switches to other states depending on the situation
Standby
- Keep the robot still
- Allow the operator to enter course information and run tests from the wireless terminal.
- When the operator presses G on the keypad, switch to Beginning
- Determine the heading needed to get to the waypoint
- Turn until facing the waypoint
- Straighten the front wheels
- switch to Middle
- Full speed ahead
- Steer to maintain the desired heading using the compass
- Every 10 seconds, update the heading using GPS
- Watch for obstacles. If getting close to one, switch to Avoid Obstacle
- If close to the waypoint, switch to End
- Move forward a couple of meters at half speed.
- Stop
- Wait a couple of seconds.
- Get co-ordinates of next waypoint if any
- If there's another waypoint, switch to Beginning, otherwise switch to Standby.
- Turn away from the obstacle
- Go straight until the obstacle is no longer in sight while looking to the side
- Switch to Beginning
Telemetry

The numbers in magenta show the number of the waypoint the robot is trying to get to. The letters B,M,E and X show what state has just become active. The G in red means the heading has been recalculated using the GPS. The digits indicate the remaining distance to the waypoint in metres and are sent at the rate of 1 per second. Only the tens digit is shown.
Video
The robot heading for a waypoint (Note: the back and forth motion has been corrected)Misc.
By the way, did you notice the spectator in the top picture? Most people don't.