2017ロボコンはやとブーメランプログラム

Dependencies:   PID QEI ikarashiMDC recieveController omni

Committer:
WAT34
Date:
Sun Oct 15 13:42:12 2017 +0900
Revision:
17:311aed3cad15
Parent:
14:5cc44bec9cfc
Child:
18:4b629221c215
pid tuned

Who changed what in which revision?

UserRevisionLine numberNew contents of line
WAT34 3:01947ec86f09 1 #include "Spiral.h"
WAT34 3:01947ec86f09 2
WAT34 17:311aed3cad15 3 Spiral::Spiral(ikarashiMDC *spiralMotor_)
WAT34 3:01947ec86f09 4 {
WAT34 17:311aed3cad15 5 beltSpeed = 0;
WAT34 17:311aed3cad15 6 spiralSpeed = 0;
WAT34 3:01947ec86f09 7 spiralMotor = spiralMotor_;
eil4nyqn 8:c47cf4e0230c 8 spiralLimit = new InterruptIn(PB_12);
WAT34 6:0bee4b2bb400 9 spiralLimit->mode(PullUp);
eil4nyqn 8:c47cf4e0230c 10 spiralLimit->rise(this,&Spiral::stopRotation);
WAT34 3:01947ec86f09 11 rotating = false;
WAT34 17:311aed3cad15 12 firing = false;
WAT34 17:311aed3cad15 13 spiralLimit->enable_irq();
WAT34 3:01947ec86f09 14 }
WAT34 3:01947ec86f09 15
WAT34 3:01947ec86f09 16 int Spiral::rotate()
WAT34 3:01947ec86f09 17 {
WAT34 3:01947ec86f09 18 if(rotating)
WAT34 3:01947ec86f09 19 return 1;
WAT34 17:311aed3cad15 20 spiralSpeed=0.4;
WAT34 3:01947ec86f09 21 spiralMotor->setSpeed(0.4);
WAT34 3:01947ec86f09 22 rotating = true;
WAT34 17:311aed3cad15 23 firing = true;
WAT34 3:01947ec86f09 24 return false;
WAT34 3:01947ec86f09 25 }
WAT34 3:01947ec86f09 26
WAT34 3:01947ec86f09 27 void Spiral::stopRotation()
WAT34 3:01947ec86f09 28 {
WAT34 17:311aed3cad15 29 if (!rotating)return;
WAT34 17:311aed3cad15 30 spiralSpeed=0;
WAT34 17:311aed3cad15 31 spiralMotor->setSpeed(0);
WAT34 17:311aed3cad15 32 beltSpeed=-0.8;
WAT34 17:311aed3cad15 33 rotating = false;
WAT34 17:311aed3cad15 34 beltTime.attach(callback(this,&Spiral::beltStop),0.6);
WAT34 3:01947ec86f09 35 }
WAT34 17:311aed3cad15 36
WAT34 17:311aed3cad15 37 void Spiral::beltStop(){
WAT34 17:311aed3cad15 38 beltSpeed=0;
WAT34 17:311aed3cad15 39 firing = false;
WAT34 17:311aed3cad15 40 }