@@ -19,22 +19,23 @@ Motor::Motor(int assigned_number, bool is_inverted, std::array<float, 3> _coefic
1919}
2020
2121int Motor::MotorGo (int newRPM) {
22- // if (newRPM > kMaxRpm) {
23- // LOG_WARNING << " RPM out of range for motor" << motorNumber_;
24- // newRPM = kMaxRpm;
25- // }
26-
27- // if (newRPM < -kMaxRpm) {
28- // LOG_WARNING << "RPM out of range for motor" << motorNumber_;
29- // newRPM = -kMaxRpm;
30- // }
31- LOG_DEBUG << " Set new RPM for motor " << motorNumber_;
22+ if (newRPM > kMaxRpm ) {
23+ LOG_WARNING << " RPM out of range for motor" << motorNumber_;
24+ newRPM = kMaxRpm ;
25+ }
26+
27+ if (newRPM < -kMaxRpm ) {
28+ LOG_WARNING << " RPM out of range for motor" << motorNumber_;
29+ newRPM = -kMaxRpm ;
30+ }
31+
3232 if (MotorSet (newRPM) == -1 ) {
3333 LOG_ERROR << " MotorSet failed" ;
3434 return -1 ;
3535 }
3636
3737 setpointRpm_ = newRPM;
38+ LOG_DEBUG << " Set new RPM " << setpointRpm_ << " for motor " << motorNumber_;
3839 return 0 ;
3940}
4041
@@ -72,7 +73,7 @@ float Motor::GetTimeSegment() {
7273}
7374
7475float Motor::GetActualRpm (int _ticks, float _timeSegment) {
75- LOG_DEBUG << " Get actual RPM for " << _timeSegment << " for motor" << motorNumber_;
76+ LOG_DEBUG << " Get actual RPM " << _timeSegment << " for motor " << motorNumber_;
7677 const float kRevolutions = static_cast <float >(_ticks) / static_cast <float >(kLoopTicks );
7778 const float kInputPoint =
7879 (std::round ((kRevolutions * kSecondsMinute * kMiliSecondsSeconds ) / _timeSegment)) * kSpeedIndexMultipler ;
@@ -84,7 +85,7 @@ int Motor::GetEncoderCounter() {
8485 const int kEncoderTicks = rc_encoder_read (motorNumber_);
8586 int pid_encoder_ticks = kEncoderTicks ;
8687 if (!inverted_) {
87- LOG_DEBUG << " Change encoder value sign for motor" << motorNumber_;
88+ LOG_DEBUG << " Change encoder value sign for motor " << motorNumber_;
8889 pid_encoder_ticks *= -1 ;
8990 }
9091
@@ -97,7 +98,7 @@ int Motor::GetEncoderCounter() {
9798 // LOG_DEBUG << "Run PID regulator";
9899 const int kPidOutput = pidRegulator_.Run (actualRpm_, setpointRpm_, kTimeDt );
99100 rc_encoder_write (motorNumber_, 0 );
100- LOG_DEBUG << " Set absoulute PID value" << kPidOutput ;
101+ LOG_DEBUG << " Set absoulute PID value " << kPidOutput << " motor " << motorNumber_ ;
101102 MotorSet (kPidOutput );
102103 return pid_encoder_ticks;
103104}
0 commit comments