mirror of
https://github.com/team2059/Dent
synced 2024-12-18 20:52:29 -05:00
39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
#include "Raise.h"
|
|
#include "../../DentRobot.h"
|
|
#include "../../OI.h"
|
|
Raise::Raise(double timeout): Command("Raise"){
|
|
SetTimeout(timeout);
|
|
}
|
|
void Raise::Initialize(){
|
|
}
|
|
void Raise::Execute(){
|
|
DentRobot::elevator->Run(1.0);
|
|
}
|
|
bool Raise::IsFinished(){
|
|
//if(!DentRobot::elevator->GetElevatorMiddle()){
|
|
// DentRobot::elevator->stoppedAtSensor = true;
|
|
//}
|
|
//if((DentRobot::elevator->stoppedAtSensor)){
|
|
// printf("Stopped at the middle sensor\n");
|
|
// DentRobot::elevator->stoppedAtSensor = false;
|
|
// return true;
|
|
//}else if(!DentRobot::elevator->GetElevatorTop()){
|
|
if(!DentRobot::elevator->GetElevatorTop()||!DentRobot::elevator->GetElevatorMiddle()||IsTimedOut()){
|
|
printf("Robot stopped raising. Sensor based? %d\n", !DentRobot::elevator->GetElevatorTop()||!DentRobot::elevator->GetElevatorMiddle());
|
|
return true;
|
|
}else{
|
|
return false;
|
|
}
|
|
}
|
|
void Raise::End(){
|
|
// If the elevator is at the top
|
|
if(DentRobot::elevator->GetElevatorTop()){
|
|
DentRobot::elevator->SetUseEncoder(true);
|
|
}
|
|
DentRobot::elevator->Run(0.0f);
|
|
}
|
|
void Raise::Interrupted(){
|
|
End();
|
|
}
|
|
// vim: ts=2:sw=2:et
|