c

Dependencies:   Servo mbed

Test-Arm.cpp

Committer:
EpicG10
Date:
2017-04-19
Revision:
0:a2e39e1c3e1c

File content as of revision 0:a2e39e1c3e1c:

#include "Test-Arm.h"
#include "mbed.h"
#include "Servo.h"
//#include "Declarations.h"
/*
Servo ServoArm(PA_6);


Arm::Arm(){
    init();
}

void Arm::init(){
    ServoArm.calibrate(0.0015f, 180.0f);
    
    //ServoArm.position(COLLECT_POS);
}

void Arm::down(){
    for(int i=0; i<(COLLECT_POS-TAKE_POS); i+=1) {
            ServoArm.position(COLLECT_POS-(float)i);
            wait(0.02f);
        }
}

void Arm::collect(){
    for(int i=0; i<(COLLECT_POS-TAKE_POS); i+=1) {
            ServoArm.position(TAKE_POS+(float)i);
            wait(0.02f);
        }
}

void Arm::back(){
     for(int i=0; i<(RELEASE_POS-COLLECT_POS); i+=1) {
            ServoArm.position(COLLECT_POS+(float)i);
            wait(0.02f);
        }
}
void Arm::backtocollect(){
     for(int i=0; i<(RELEASE_POS-COLLECT_POS); i+=1) {
            ServoArm.position(RELEASE_POS-(float)i);
            wait(0.02f);
        }
}

void Arm::setAngle(float angle){
    this->angle=angle;
    if (angle>90.0f) angle=90.0f;
    if (angle<-90.0f) angle=-90.0f;
    float pos=ServoArm.read();
    
    for(int i=0; i<int(abs(pos-angle));i++){
        
    if(pos>angle) ServoArm.position(pos-i);
    else ServoArm.position(pos+i);
    wait(0.02f);
        }
}
*/