diff --git a/Arduino/ODriveArduino/ODriveArduino.cpp b/Arduino/ODriveArduino/ODriveArduino.cpp index cd3fcd5e..7bedfc46 100644 --- a/Arduino/ODriveArduino/ODriveArduino.cpp +++ b/Arduino/ODriveArduino/ODriveArduino.cpp @@ -42,7 +42,7 @@ void ODriveArduino::SetCurrent(int motor_number, float current) { serial_ << "c " << motor_number << " " << current << "\n"; } -void ODriveArduino::TrapezoidalMove(int motor_number, float position){ +void ODriveArduino::TrapezoidalMove(int motor_number, float position) { serial_ << "t " << motor_number << " " << position << "\n"; } @@ -50,11 +50,16 @@ float ODriveArduino::readFloat() { return readString().toFloat(); } -float ODriveArduino::GetVelocity(int motor_number){ +float ODriveArduino::GetVelocity(int motor_number) { serial_<< "r axis" << motor_number << ".encoder.vel_estimate\n"; return ODriveArduino::readFloat(); } +float ODriveArduino::GetPosition(int motor_number) { + serial_ << "r axis" << motor_number << ".encoder.pos_estimate\n"; + return ODriveArduino::readFloat(); +} + int32_t ODriveArduino::readInt() { return readString().toInt(); } diff --git a/Arduino/ODriveArduino/ODriveArduino.h b/Arduino/ODriveArduino/ODriveArduino.h index 6620f859..672e9db3 100644 --- a/Arduino/ODriveArduino/ODriveArduino.h +++ b/Arduino/ODriveArduino/ODriveArduino.h @@ -3,21 +3,10 @@ #define ODriveArduino_h #include "Arduino.h" +#include "ODriveEnums.h" class ODriveArduino { public: - enum AxisState_t { - AXIS_STATE_UNDEFINED = 0, //