Hello! I am working with an ODrive Pro on a robitics project, and I want to better understand the readings available from the ODrive.
I put together the below table to summarize what I found so far from the ODrive API page:
(ODrive API Reference — ODrive Documentation 0.6.10 documentation)
My questions so far are as follows:
-
How is the Electrical Power calculated? Is it simply the VBus Current * VBus Voltage?
-
Am I missing any measurements from the ODrive that I should consider monitoring?
Statistic | Measured? | Odrive API Command | Arduino CAN Function | |
---|---|---|---|---|
VBus Voltage [V] | Yes | Voltage on the DC bus as measured by the Odrive | vbus_voltage | getBusVI |
VBus Current [A] | No | Current on the DC bus as calculated by the ODrive. A positive value means that the ODrive is consuming power from the power supply. A negative value means that the ODrive is sourcing power to the power supply. This value is equal to the sum of the motor currents and the brake resistor currents. The motor currents are measured, the brake resistor current is calculated based on config.brake_resistor0.resistance. |
ibus | getBusVI |
Motor Current [A] | Yes | The phase current measured along the “q” axis in the FOC (Field-Oriented-Control) control loop. This is the torque-generating current. |
Iq_measured | getCurrents |
Torque Estimate [NM] | No | Motor torque from measured current and config.motor.torque_constant | torque_estimate | getTorque |
Velocity Estimate [rev/second] | Yes | From encoder | vel_estimate | getFeedback |
Electric Power [W] | No | Motor electrical power (modulation * voltage * current). Should always be greater than mechanical power. I’m unsure what voltage is used for this. | electrical_power | getPower |
Mechanical Power [W] | No | Motor mechanical power (torque * speed) | mechanical_power | getPower |
Thank you so much for any help you can provide!