I want to make _pwm rostopic to check the control input of the motor.
Looking at the firmware code, I checked that the function getDutyCycle in the motor driver (DRV8848.h and DRV8848.cpp) can read the PWM as _pwm.read().
Should I add getDutyCycle to main.cpp in firmware?
Or should I write the code by adding a new node to the rosbot_ekf package?
I would really appreciate it if you could give me a starting point and some details.
Hi Chokings,
You can use the RosbotDrive::getSpeed function that is defined in the RosbotDrive.cpp file. It is based on getDutyCycle() function.
I have prepared for you an outline of the solution that is in my fork (link to commit). When you subscribe /pwm topic, message data (Float32) tells you the ratio of low state time to cycle period.