stepGoto()로 제어하기


stepGoto()함수로 제어

스텝모터를 모터의 현재 위치가 아닌 초기 위치를 기준으로 제어하고자 할 때 stepGoto()함수를 사용합니다. 이 함수는 모터가 동작 중인 상태에서도 사용이 가능합니다. 모터가 동작 중일 때 새로운 setpGoto()함수가 실행되면 그 즉시 해당 함수를 수행합니다.

step.stepGoto(pos)
step.stepGoto(pos, speed)
step.stepGoto(pos, speed, accel)

예제

#include <PhpocExpansion.h>
#include <Phpoc.h>

byte spcId = 1;

ExpansionStepper step(spcId);

void setup() {
    Serial.begin(9600);
    while(!Serial)
        ;

    Phpoc.begin(PF_LOG_SPI | PF_LOG_NET);
    Expansion.begin();

    Serial.println(step.getPID());
    Serial.println(step.getName());

    step.setMode(4);
    step.setVrefStop(2);
    step.setVrefDrive(8);
    step.setResonance(120, 250);
    step.setSpeed(400);
    step.setAccel(0, 0);
    step.setPosition(0);

    step.stepGoto(400);
    delay(2000);
    step.stepGoto(-400);
    delay(2000);
    step.stepGoto(400);
    delay(2000);

    while(step.getState()) {
        delay(1);
    }
}

void loop() {

}