# PMU 6S node
This board monitors the battery (voltage and current) and allows to control charging, source and load. It might be useful for applications where you need to control the power of the drone including the board computer and charging process.
# 1. DroneCAN interface
This node interacts with the following messages:
№ | type | message |
---|---|---|
1 | publisher | uavcan.equipment.power.BatteryInfo (opens new window) |
2 | publisher | uavcan.equipment.power.CircuitStatus (opens new window) |
3 | publisher | inno_msgs.PmuStatus |
4 | subscriber | inno_msgs.PmuChargerControl |
5 | subscriber | inno_msgs.PmuPowerControl |
6 | subscriber | inno_msgs.PmuLoadControl |
№ | type | message |
---|---|---|
1 | RPC-service | uavcan.protocol.param (opens new window) |
2 | RPC-service | uavcan.protocol.RestartNode (opens new window) |
3 | RPC-service | uavcan.protocol.GetTransportStats (opens new window) |
# 2. Main function description
This board monitor:
- battery voltage (PA0, k=13.91)
- 5V voltage (PA1, k=2)
- charger contact status (PB4)
- load current (PA3, 60 Ampers ~ 3.15V)
and controls:
- connect the charger (PB6)
- enable load (autopilot, motors, etc) (PB7)
- enable jetson (PB5)
# 3. Parameters
# 4. Usage example on a table
broadcast(uavcan.thirdparty.inno_msgs.PmuChargerControl(cmd=0))
broadcast(uavcan.thirdparty.inno_msgs.PmuChargerControl(cmd=1))
broadcast(uavcan.thirdparty.inno_msgs.PmuPowerControl(cmd=0))
broadcast(uavcan.thirdparty.inno_msgs.PmuPowerControl(cmd=1))
broadcast(uavcan.thirdparty.inno_msgs.PmuLoadControl(cmd=0))
broadcast(uavcan.thirdparty.inno_msgs.PmuLoadControl(cmd=1))