The ÜberBots’ Control System In order to successfully conquer Breakaway’s diverse and challenging goals The ÜberBots designedmultiple drive systems that provide various permutations to effectively control the robot in thenumerous field positions and game situations. Additionally, The ÜberBots have implemented manyautomated functions to assist the drivers’ control, robot versatility, and reliability. Drive System Aspects: • Driver Control: • Joystick 1: • X-axis controls robot steering which depends on the current drive state • Y-axis controls the speed of the wheels • Z-axis: Sensitivity control; multiplies axis (from 0 to 1) by the X-axis of the joystick to control sensitivity of joystick • Switch Box: • First two switches on the switch box control drive states • Second two switches sever steering motors from input to lock them in place • Drive Permutations: • Swerve Drive: Turns front wheels in the direction of the joystick while turning the back wheels in the opposite direction to increase versatility and maneuverability • Traverse Drive: Turns all four wheels in the direction of the joystick by calculating the angle of the joystick from the center • Car Drive: Turns the front wheels in the direction of the joystick while locking the back wheels in a straight position to give the driver more control over the robot, but with less maneuverability • Standard 90° Drive: Turns the robot 90° and slows down the wheels on the inside of the theoretical circle of rotation while turning the outside wheels inward • Traverse 90° Drive: Turns the robot 90° and steers the robot as if it were in traverse drive • Feedback to Calculate and Correct for Error: • Gearbox Encoders: • Finds the rate of rotation of the wheels, and compares it to the speed that the joystick is trying to reach • Automatically corrects for the error to spin the wheels at the correct speed. • Magnetic Rotary Encoders:
• Finds the absolute position of the steering motors in volts and normalizes the voltage to be consistent for all encoders • Automatically corrects for the error of the wheel rotation to center the wheels or move them to the correct position given by the joystick• Arcade Integration: • When the robot is in standard 90° mode, the wheels on the inside of the theoretical circle of rotation slow down as a function of the x-value of the joystick to increase maneuverability.• Rate Limit: • When the wheels are sent 12V from the jaguar, and then quickly shifted to -12V, the jaguar experiences a fault condition • All control over that wheel is cut off for approximately 5 seconds • To fix this, a rate limiter is used to control the acceleration rate.• Motor Linearizer: • The motors on the robot are not linear, which means that even if the motor is receiving 30% power, it might only move 10% • To fix this, a motor linearizer is inserted before the signal is sent to the motor, so that when the motor is receiving 30% power it moves 30%.• Drive Physical Robot: • A signal is sent from the cRIO to the digital sidecar where a PWM value is sent to the jaguars controlling the motor • Depending on the signal that is received from the sidecar, the jaguar allows a certain amount of power to reach the motor, which controls the speed of the robot.
Kicker System Aspects: • Driver Control: • Joystick 2: • Trigger: The trigger on Driver 2’s joystick activates the light sensor on the robot. If the light sensor is tripped, the kicker is deployed. • Override: If there is a problem with the light sensor, Driver 2 can override the light sensor by pressing a separate button which will deploy the kicker without light sensor input • Light Sensor: • Detects Ball in Range: • On the side of the robot where the kicker comes out • If it is tripped, then a value is sent to the cRIO, and if the trigger on Joystick 2 is pressed, the kicker is deployed • Automatically Reloading Pneumatic Actuators: • Each time the kicker is deployed, the kicker is automatically pulled back and locked into place • The kicker is then pulled forward to cock it, ready to kick again
Autonomous Mode Aspects: • Camera Tracking: • The camera locates the x position of the target and determines if the robot needs to turn left or right • It then uses this value and inputs into a function to emulate the joystick turning left and right • This moves the robot towards the target. • Sixteen Different Preset States: • A box on the robot with four switches controls the 16 different states that the robot can achieve • Some of the states: • Camera tracking at different speeds • Driving forward to kick the balls at different speeds and with different delays to allow other robots to kick before us • Drive straight forward at different speeds and delays to push the ball straight into the goal • Detection of Game Pieces via Light Sensor: • The light sensor detects when a ball is in the kicking zone and kicks it towards the scoring zone • Distance the Robot has Traveled Using Encoders: • The distance in inches that the robot has traveled is calculated using the gearbox encoders and the circumference of the wheels • With this data, the robot can travel different distances during the autonomous period.