c
Dependencies: Servo ServoArm mbed
Fork of PES_PIXY_Official by
Sources/Arm.cpp
- Committer:
- EpicG10
- Date:
- 2017-05-23
- Revision:
- 1:fd3cef0f116d
- Parent:
- 0:15a8480061e8
File content as of revision 1:fd3cef0f116d:
#include "Robot.h" #include "Declarations.h" Arm::Arm(){ } Arm::Arm(ServoArm* arm){ init(arm); } void Arm::init(ServoArm* arm){ this->arm = arm; this->arm->calibrate(0.0015f, 180.0f); this->arm->position(RELEASE_POS); } int Arm::collectToDown(){ static float pos=COLLECT_POS; if(pos>TAKE_POS) { pos-=3; this->arm->position(pos); return 0; } else{ pos = COLLECT_POS; return 1; } } int Arm::downToCollect(){ static float pos=TAKE_POS; if(pos<COLLECT_POS) { pos+=3; this->arm->position(pos); return 0; } else{ pos = TAKE_POS; return 1; } } int Arm::collectToBack(){ static float pos=COLLECT_POS; if(pos<RELEASE_POS) { pos+=3; this->arm->position(pos); return 0; } else{ pos = COLLECT_POS; return 1; } } int Arm::backToCollect(){ static float pos=RELEASE_POS; if(pos>COLLECT_POS) { pos-=3; this->arm->position(pos); return 0; } else{ pos = RELEASE_POS; return 1; } } int Arm::backToDown(){ static float pos = RELEASE_POS; static int i=0; if( pos > TAKE_POS ){ pos -= 3; this->arm->position(pos); return 0; } else{ //pos = RELEASE_POS; return 1; } } int Arm::downToBack(){ static float pos = TAKE_POS; static int i=0; if( pos < RELEASE_POS ){ pos += 5; this->arm->position(pos); return 0; } else{ //pos = TAKE_POS; return 1; } }