blob: 67ef795066e1b044d746316d13e32edc788d7410 [file] [log] [blame]
jerrym1815d882013-02-14 04:21:29 +00001// RobotBuilder Version: 0.0.2
2//
3// This file was generated by RobotBuilder. It contains sections of
4// code that are automatically generated and assigned by robotbuilder.
5// These sections will be updated in the future when you export to
6// C++ from RobotBuilder. Do not put any code or make any change in
7// the blocks indicating autogenerated code or it will be lost on an
8// update. Deleting the comments indicating the section will prevent
9// it from being updated in th future.
10#include "RobotMap.h"
11#include "LiveWindow/LiveWindow.h"
12// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=ALLOCATION
13Compressor* RobotMap::airCompressorAirCompressor = NULL;
14Solenoid* RobotMap::driveTrainLeftShifter = NULL;
15Solenoid* RobotMap::driveTrainRightShifter = NULL;
16SpeedController* RobotMap::driveTrainLeftMotors1and2 = NULL;
17SpeedController* RobotMap::driveTrainLeftMotor3 = NULL;
18SpeedController* RobotMap::driveTrainRightMotors1and2 = NULL;
19SpeedController* RobotMap::driveTrainRightMotor3 = NULL;
20RobotDrive* RobotMap::driveTrainRobotDrive = NULL;
21Encoder* RobotMap::driveTrainQuadratureEncoderLeft = NULL;
22Encoder* RobotMap::driveTrainQuadratureEncoderRight = NULL;
23SpeedController* RobotMap::shooterWheelPIDControllerShooterMotor = NULL;
24Encoder* RobotMap::shooterWheelPIDControllerShooterSpeedEncoder = NULL;
25SpeedController* RobotMap::shooterShooterTiltMotor = NULL;
26Encoder* RobotMap::shooterShooterTiltEncoder = NULL;
27GearTooth* RobotMap::shooterShooterTiltHomeSensor = NULL;
28Solenoid* RobotMap::shooterLatchFrisbeeSolenoid = NULL;
29Solenoid* RobotMap::shooterLoadFrisbeeSolenoid = NULL;
30Solenoid* RobotMap::shooterShootSolenoid = NULL;
31SpeedController* RobotMap::frisbeeStorageFrisbeeIndexerMotor = NULL;
32Encoder* RobotMap::frisbeeStorageFrisbeeIndexerSpeedEncoder = NULL;
33DigitalInput* RobotMap::frisbeeStorageFrisbeeInputOpticalSensor = NULL;
34DigitalInput* RobotMap::frisbeeStorageFrisbeeIndexOpticalSensor = NULL;
35DigitalInput* RobotMap::frisbeeStorageFrisbeeReadytoshootOpticalSensor = NULL;
36SpeedController* RobotMap::frisbeePickupIntakeandCenteringRollerMotors = NULL;
37SpeedController* RobotMap::pickupArmPickupArmMotor = NULL;
38Encoder* RobotMap::pickupArmPickupArmEncoder = NULL;
39PIDController* RobotMap::pickupArmPickupArmPIDController = NULL;
40GearTooth* RobotMap::pickupArmPickupArmHomeSensor = NULL;
41 // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=ALLOCATION
42void RobotMap::init() {
43 // BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTORS
44 LiveWindow* lw = LiveWindow::GetInstance();
45 airCompressorAirCompressor = new Compressor(1, 5, 1, 1);
46
47
48 driveTrainLeftShifter = new Solenoid(1, 1);
49 lw->AddActuator("Drive Train", "Left Shifter", driveTrainLeftShifter);
50
51 driveTrainRightShifter = new Solenoid(1, 2);
52 lw->AddActuator("Drive Train", "Right Shifter", driveTrainRightShifter);
53
54 driveTrainLeftMotors1and2 = new Talon(1, 5);
55 lw->AddActuator("Drive Train", "Left Motors 1 and 2", (Talon*) driveTrainLeftMotors1and2);
56
57 driveTrainLeftMotor3 = new Talon(1, 6);
58 lw->AddActuator("Drive Train", "Left Motor 3", (Talon*) driveTrainLeftMotor3);
59
60 driveTrainRightMotors1and2 = new Talon(1, 2);
61 lw->AddActuator("Drive Train", "Right Motors 1 and 2", (Talon*) driveTrainRightMotors1and2);
62
63 driveTrainRightMotor3 = new Talon(1, 3);
64 lw->AddActuator("Drive Train", "Right Motor 3", (Talon*) driveTrainRightMotor3);
65
66 driveTrainRobotDrive = new RobotDrive(driveTrainLeftMotors1and2, driveTrainLeftMotor3,
67 driveTrainRightMotors1and2, driveTrainRightMotor3);
68
69 driveTrainRobotDrive->SetSafetyEnabled(true);
70 driveTrainRobotDrive->SetExpiration(0.1);
71 driveTrainRobotDrive->SetSensitivity(0.5);
72 driveTrainRobotDrive->SetMaxOutput(1.0);
73 driveTrainRobotDrive->SetInvertedMotor(RobotDrive::kFrontLeftMotor, true);
74 driveTrainRobotDrive->SetInvertedMotor(RobotDrive::kRearLeftMotor, true);
75 driveTrainQuadratureEncoderLeft = new Encoder(1, 1, 1, 2, false, Encoder::k4X);
76 lw->AddSensor("Drive Train", "Quadrature Encoder Left", driveTrainQuadratureEncoderLeft);
77 driveTrainQuadratureEncoderLeft->SetDistancePerPulse(1.0);
78 driveTrainQuadratureEncoderLeft->SetPIDSourceParameter(Encoder::kRate);
79 driveTrainQuadratureEncoderLeft->Start();
80 driveTrainQuadratureEncoderRight = new Encoder(1, 3, 1, 4, false, Encoder::k4X);
81 lw->AddSensor("Drive Train", "Quadrature Encoder Right", driveTrainQuadratureEncoderRight);
82 driveTrainQuadratureEncoderRight->SetDistancePerPulse(1.0);
83 driveTrainQuadratureEncoderRight->SetPIDSourceParameter(Encoder::kRate);
84 driveTrainQuadratureEncoderRight->Start();
85 shooterWheelPIDControllerShooterMotor = new Talon(1, 1);
86 lw->AddActuator("Shooter Wheel PID Controller", "Shooter Motor", (Talon*) shooterWheelPIDControllerShooterMotor);
87
88 shooterWheelPIDControllerShooterSpeedEncoder = new Encoder(1, 6, 2, 1, false, Encoder::k4X);
89 lw->AddSensor("Shooter Wheel PID Controller", "Shooter Speed Encoder", shooterWheelPIDControllerShooterSpeedEncoder);
90 shooterWheelPIDControllerShooterSpeedEncoder->SetDistancePerPulse(1.0);
91 shooterWheelPIDControllerShooterSpeedEncoder->SetPIDSourceParameter(Encoder::kRate);
92 shooterWheelPIDControllerShooterSpeedEncoder->Start();
93 shooterShooterTiltMotor = new Talon(1, 4);
94 lw->AddActuator("Shooter", "Shooter Tilt Motor", (Talon*) shooterShooterTiltMotor);
95
96 shooterShooterTiltEncoder = new Encoder(1, 7, 1, 8, false, Encoder::k4X);
97 lw->AddSensor("Shooter", "Shooter Tilt Encoder", shooterShooterTiltEncoder);
98 shooterShooterTiltEncoder->SetDistancePerPulse(1.0);
99 shooterShooterTiltEncoder->SetPIDSourceParameter(Encoder::kRate);
100 shooterShooterTiltEncoder->Start();
101 shooterShooterTiltHomeSensor = new GearTooth(1, 9, false);
102 lw->AddSensor("Shooter", "Shooter Tilt Home Sensor", shooterShooterTiltHomeSensor);
103
104 shooterLatchFrisbeeSolenoid = new Solenoid(1, 5);
105 lw->AddActuator("Shooter", "Latch Frisbee Solenoid", shooterLatchFrisbeeSolenoid);
106
107 shooterLoadFrisbeeSolenoid = new Solenoid(1, 3);
108 lw->AddActuator("Shooter", "Load Frisbee Solenoid", shooterLoadFrisbeeSolenoid);
109
110 shooterShootSolenoid = new Solenoid(1, 4);
111 lw->AddActuator("Shooter", "Shoot Solenoid", shooterShootSolenoid);
112
113 frisbeeStorageFrisbeeIndexerMotor = new Talon(1, 7);
114 lw->AddActuator("Frisbee Storage", "Frisbee Indexer Motor", (Talon*) frisbeeStorageFrisbeeIndexerMotor);
115
116 frisbeeStorageFrisbeeIndexerSpeedEncoder = new Encoder(1, 10, 1, 11, false, Encoder::k4X);
117 lw->AddSensor("Frisbee Storage", "Frisbee Indexer Speed Encoder", frisbeeStorageFrisbeeIndexerSpeedEncoder);
118 frisbeeStorageFrisbeeIndexerSpeedEncoder->SetDistancePerPulse(1.0);
119 frisbeeStorageFrisbeeIndexerSpeedEncoder->SetPIDSourceParameter(Encoder::kRate);
120 frisbeeStorageFrisbeeIndexerSpeedEncoder->Start();
121 frisbeeStorageFrisbeeInputOpticalSensor = new DigitalInput(1, 12);
122 lw->AddSensor("Frisbee Storage", "Frisbee Input Optical Sensor", frisbeeStorageFrisbeeInputOpticalSensor);
123
124 frisbeeStorageFrisbeeIndexOpticalSensor = new DigitalInput(1, 13);
125 lw->AddSensor("Frisbee Storage", "Frisbee Index Optical Sensor", frisbeeStorageFrisbeeIndexOpticalSensor);
126
127 frisbeeStorageFrisbeeReadytoshootOpticalSensor = new DigitalInput(1, 14);
128 lw->AddSensor("Frisbee Storage", "Frisbee Ready to shoot Optical Sensor", frisbeeStorageFrisbeeReadytoshootOpticalSensor);
129
130 frisbeePickupIntakeandCenteringRollerMotors = new Talon(1, 8);
131 lw->AddActuator("Frisbee Pickup", "Intake and Centering Roller Motors", (Talon*) frisbeePickupIntakeandCenteringRollerMotors);
132
133 pickupArmPickupArmMotor = new Talon(1, 9);
134 lw->AddActuator("Pickup Arm", "Pickup Arm Motor", (Talon*) pickupArmPickupArmMotor);
135
136 pickupArmPickupArmEncoder = new Encoder(2, 2, 2, 3, false, Encoder::k4X);
137 lw->AddSensor("Pickup Arm", "Pickup Arm Encoder", pickupArmPickupArmEncoder);
138 pickupArmPickupArmEncoder->SetDistancePerPulse(1.0);
139 pickupArmPickupArmEncoder->SetPIDSourceParameter(Encoder::kRate);
140 pickupArmPickupArmEncoder->Start();
141 pickupArmPickupArmPIDController = new PIDController(1.0, 0.0, 0.0,/* F: 0.0, */ pickupArmPickupArmEncoder, pickupArmPickupArmMotor, 0.02);
142 lw->AddActuator("Pickup Arm", "Pickup Arm PID Controller", pickupArmPickupArmPIDController);
143 pickupArmPickupArmPIDController->SetContinuous(false); pickupArmPickupArmPIDController->SetAbsoluteTolerance(0.2);
144 pickupArmPickupArmPIDController->SetOutputRange(-1.0, 1.0);
145 pickupArmPickupArmHomeSensor = new GearTooth(2, 4, false);
146 lw->AddSensor("Pickup Arm", "Pickup Arm Home Sensor", pickupArmPickupArmHomeSensor);
147
148 // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=CONSTRUCTORS
149}