40 lines
894 B
C++
40 lines
894 B
C++
// MOTOR.cpp
|
|
#include "MOTOR.h"
|
|
|
|
void MOTOR::setMotorPosition(MotorPosition mp) {
|
|
motorPosition = mp;
|
|
}
|
|
|
|
void MOTOR::setPinESC(int pin) {
|
|
pinESC = pin;
|
|
esc.attach(pinESC, minSpeed, maxSpeed);
|
|
setSpeedInternal(minSpeed);
|
|
}
|
|
|
|
void MOTOR::setSpeedInternal(int speed) {
|
|
if (speed < minSpeed || speed > maxSpeed) {
|
|
Serial.println("Speed: " + String(speed) + " out of range! Motorposition: " + String(motorPosition));
|
|
return;
|
|
}
|
|
currentSpeed = speed;
|
|
esc.write(currentSpeed);
|
|
Serial.println("MP:" + String(motorPosition) + "|Speed:" + String(currentSpeed));
|
|
}
|
|
|
|
void MOTOR::setSpeed(int speed) {
|
|
setSpeedInternal(speed);
|
|
}
|
|
|
|
int MOTOR::getSpeed() {
|
|
return currentSpeed;
|
|
}
|
|
|
|
void MOTOR::accelerate() {
|
|
int speed = currentSpeed + speedInterval;
|
|
setSpeedInternal(speed);
|
|
}
|
|
|
|
void MOTOR::decelerate() {
|
|
int speed = currentSpeed - speedInterval;
|
|
setSpeedInternal(speed);
|
|
} |