DEWBOT IX Control
From DEW Robotics
Revision as of 22:58, 31 March 2013 by MaiKangWei (talk | contribs)
The control system is implemented by the Electrical and Programming teams, who are charged with providing motor controllers, sensors, and programming to enable the robot to meet competition goals. | ("The Amazing Machine", The Franklin Institute) |
Contents
2013 Control System
Punchlist for February 19 - February 27
- Caterpillar
- Debug compressor code issues
- Confirm timing of engaging sequence for front leg
- Confirm sequence WITHOUT DRIVE MOTOR: front prox, front LS, mid prox, mid LS, back LS
- Confirm sequence WITH DRIVE MOTOR, preferably on pyramid with safety rope
- Confirm beginning and ending of climb sequence; modify code if needed
- Test entire climbing procedure on pyramid with safety rope
- Shooter
- Confirm shooting sequence, including timing
- Confirm elevation control
- Test shooting
- Arm
- Gather angle data for docking positions
- Implement PID control of motor
- Test
- Targeting
- Test on driver station with shooter for accuracy
- Dashboard and User Interface
- Gather controls needed on dashboard
- Build custom dashboard
- Confirm UI for driver and operator
- Autonomous
- Use dashboard control for switches
- Implement primitives
- Test
- Integration
- Build entire robot project
- Test
Modules
In Week 2, we brainstormed the software module breakdown:
- Caterpillar
- Caterpillar front leg (1)
- Caterpillar back legs (2)
- Skid Extender
- Drive
- pivot drive (4)
- Ocelot
- UI (User Interface)
- Shooter
- Feeder
- Compressor
I/O
- 2013 Inputs and Outputs (Excel) - includes solenoids, digital in, analog in, spikes, motors
Caterpillar
I/O
- Front Leg
- Sensor indicates corner proximity
- LS indicates down
- Solenoid Claw grab/release
- Solenoid Foot down/up (dual acting)
- Middle Leg
- Sensor indicates corner proximity
- LS indicates down
- Solenoid Claw grab/release
- Back Leg
- LS indicates down
- Solenoid Claw grab/release
- Skid Extender
- Solenoid Extend/Retract (dual acting)
Stories
User story: driving up the pole
- When the robot is turned off, the front foot is wherever it was last and all claws are Grab. The skid extender is wherever it was last.
- When you turn on the robot, the front foot should be down. All claws should be released. Skid extender should be retracted.
- Drive up to the pole, using camera to align the pole with the first caterpillar leg.
- Drive up the pole.
- Grab the pole with the front claw
- Press the climb button and hold it.
- As long as the climb button is held, the robot will climb until it reaches the top.
- If the driver lets go of the climb button, the robot will stop.
- If the operator hits an emergency override button the robot will stop.
User story: beginning sequence
- Grab the pole with the front claw (the front foot is already down)
- Start the motor
- after a bit, grab the pole with the second claw
- after a further time, grab the pole with the third claw
User story: ending sequence
- When you detect third horizontal pole, disengage the front leg
- drive for a little bit (until the front hits the top part of the pyramid)
- stop the motor
User story: manual intervention
- Once the robot gets to the top of the pole, the driver will manually control the robot to get to the optimum scoring position.
- If the robot gets unaligned during the ascent, the driver will be able to control the the skid extender, motor, and three legs.
- We may give the foot and leg control to the drivers during the manual intervention. This will depend on the meetings we have with the drive team.
Shooter
User Stories
- The motor can be turned on or off by the user, and the velocity of the motor at its shooting speed is always the same.
- The motor takes time to reach its correct shooting speed.
- At the moment, no motor reversal is planned.
- Press the trigger, and it shoots the Frisbee.
- If you keep the trigger pressed, it will push out all of the Frisbees in the magazine as fast as possible (as it takes the motor to speed up again).
- If you don't keep the trigger pressed, but press it again before the motor speeds up to the correct speed, it will not shoot until the motor speeds up.
- If you set the elevation up or down, the shooter platform's elevation changes to each predetermined height.
Feeder
I/O
- ARM (Motor + Encoder PID controlled)
- Feed position
- Dunk position
- Floor position
- GRIPPER (Solenoid)
- Open/Closed
- FRISBEE DETECTOR (Limit switch)
- True/False
User Stories
User story: normal feeding
- Go to "feed position"
- Set gripper to "open"
User story: floor pickup
- Operator lowers arm to "floor position"
- Driver scoops the Frisbee
- Operator sets gripper to "closed"
- Operator raises arm to "feed position"
- Operator sets gripper to "open," Frisbee slides into magazine
User story: dunking
- Operator puts arm into "four frisbee feed position," sets gripper to "open"
- Human player loads four Frisbees
- Operator sets gripper to "closed"
- Caterpillar finishes
- Operator sets arm to "dunk position"
- Operator sets gripper to "open"
User story: automatic floor pickup (OPTIONAL - LOW PRIORITY)
- Operator lowers arm to "floor position"
- Gripper automatically opens
- Driver scoops Frisbee into feeder
- Frisbee detector detects Frisbee, gripper automatically closes
- Operator raises arm to "feed position," gripper automatically releases when position is reached