ARES / Mbed 2 deprecated Robot 2016

Dependencies:   mbed

Committer:
Jagang
Date:
Sun May 24 12:30:47 2015 +0000
Revision:
0:b127c787a51b
Nettoyage du code d'asserv.; L'asserv ne fonctionne plus, juste test, moteurs ? 20% sur 1m

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jagang 0:b127c787a51b 1 #include "Obj_clap.h"
Jagang 0:b127c787a51b 2
Jagang 0:b127c787a51b 3 extern Asservissement *asserv;
Jagang 0:b127c787a51b 4
Jagang 0:b127c787a51b 5 extern bool interruption;
Jagang 0:b127c787a51b 6
Jagang 0:b127c787a51b 7 Obj_clap::Obj_clap(float x, float y, float theta, float x2, float y2, float theta2, AX12 *ax12_brasG, AX12 *ax12_brasD)
Jagang 0:b127c787a51b 8 :Objectif(x,y,theta)
Jagang 0:b127c787a51b 9 {
Jagang 0:b127c787a51b 10 this->ax12_brasG = ax12_brasG;
Jagang 0:b127c787a51b 11 this->ax12_brasD = ax12_brasD;
Jagang 0:b127c787a51b 12 this->x2 = x2;
Jagang 0:b127c787a51b 13 this->y2 = y2;
Jagang 0:b127c787a51b 14 this->theta2 = theta2;
Jagang 0:b127c787a51b 15 }
Jagang 0:b127c787a51b 16
Jagang 0:b127c787a51b 17 void Obj_clap::run()
Jagang 0:b127c787a51b 18 {
Jagang 0:b127c787a51b 19 if(theta2 == PI/2)
Jagang 0:b127c787a51b 20 {
Jagang 0:b127c787a51b 21 if(!interruption)
Jagang 0:b127c787a51b 22 {
Jagang 0:b127c787a51b 23 ax12_brasD->setGoal(BRASD_OUVERT);
Jagang 0:b127c787a51b 24 wait(1);
Jagang 0:b127c787a51b 25 }
Jagang 0:b127c787a51b 26 if(!interruption) asserv->setGoal(x2,y2,theta2);
Jagang 0:b127c787a51b 27 while(!asserv->isArrived() && !interruption)wait(0.1);
Jagang 0:b127c787a51b 28
Jagang 0:b127c787a51b 29 ax12_brasD->setGoal(BRASD_FERME);
Jagang 0:b127c787a51b 30
Jagang 0:b127c787a51b 31 if(!interruption) wait(1);
Jagang 0:b127c787a51b 32 }
Jagang 0:b127c787a51b 33 else
Jagang 0:b127c787a51b 34 {
Jagang 0:b127c787a51b 35 if(!interruption)
Jagang 0:b127c787a51b 36 {
Jagang 0:b127c787a51b 37 ax12_brasG->setGoal(BRASG_OUVERT);
Jagang 0:b127c787a51b 38 wait(1);
Jagang 0:b127c787a51b 39 }
Jagang 0:b127c787a51b 40 if(!interruption) asserv->setGoal(x2,y2,theta2);
Jagang 0:b127c787a51b 41 while(!asserv->isArrived() && !interruption)wait(0.1);
Jagang 0:b127c787a51b 42
Jagang 0:b127c787a51b 43 ax12_brasG->setGoal(BRASG_FERME);
Jagang 0:b127c787a51b 44 if(!interruption) wait(1);
Jagang 0:b127c787a51b 45 }
Jagang 0:b127c787a51b 46
Jagang 0:b127c787a51b 47 done = true;
Jagang 0:b127c787a51b 48 }
Jagang 0:b127c787a51b 49
Jagang 0:b127c787a51b 50 int Obj_clap::isActive()
Jagang 0:b127c787a51b 51 {
Jagang 0:b127c787a51b 52 if(!active)
Jagang 0:b127c787a51b 53 return false;
Jagang 0:b127c787a51b 54
Jagang 0:b127c787a51b 55 if(ax12_brasG->getGoal() == BRASG_OUVERT || ax12_brasD->getGoal() == BRASD_OUVERT)
Jagang 0:b127c787a51b 56 return false;
Jagang 0:b127c787a51b 57
Jagang 0:b127c787a51b 58 return true;
Jagang 0:b127c787a51b 59 }