mirror of https://github.com/ArduPilot/ardupilot
Tools: add support for ina3221 triple-channel current/voltage sensor
This commit is contained in:
parent
4cfbeb11e3
commit
cc4110140c
|
@ -947,6 +947,51 @@ class AutoTestSub(vehicle_test_suite.TestSuite):
|
||||||
self.wait_ready_to_arm()
|
self.wait_ready_to_arm()
|
||||||
self.assert_mag_fusion_selection(MagFuseSel.FUSE_MAG)
|
self.assert_mag_fusion_selection(MagFuseSel.FUSE_MAG)
|
||||||
|
|
||||||
|
def INA3221(self):
|
||||||
|
'''test INA3221 driver'''
|
||||||
|
self.set_parameters({
|
||||||
|
"BATT2_MONITOR": 30,
|
||||||
|
"BATT3_MONITOR": 30,
|
||||||
|
"BATT4_MONITOR": 30,
|
||||||
|
})
|
||||||
|
self.reboot_sitl()
|
||||||
|
self.set_parameters({
|
||||||
|
"BATT2_I2C_ADDR": 0x42,
|
||||||
|
"BATT2_I2C_BUS": 1,
|
||||||
|
"BATT2_CHANNEL": 1,
|
||||||
|
|
||||||
|
"BATT3_I2C_ADDR": 0x42,
|
||||||
|
"BATT3_I2C_BUS": 1,
|
||||||
|
"BATT3_CHANNEL": 2,
|
||||||
|
|
||||||
|
"BATT4_I2C_ADDR": 0x42,
|
||||||
|
"BATT4_I2C_BUS": 1,
|
||||||
|
"BATT4_CHANNEL": 3,
|
||||||
|
})
|
||||||
|
self.reboot_sitl()
|
||||||
|
|
||||||
|
seen_1 = False
|
||||||
|
seen_3 = False
|
||||||
|
tstart = self.get_sim_time()
|
||||||
|
while not (seen_1 and seen_3):
|
||||||
|
m = self.assert_receive_message('BATTERY_STATUS')
|
||||||
|
print(self.dump_message_verbose(m))
|
||||||
|
if self.get_sim_time() - tstart > 1:
|
||||||
|
break
|
||||||
|
continue
|
||||||
|
if m.id == 1:
|
||||||
|
self.assert_message_field_values(m, {
|
||||||
|
"current_battery": 7.28 * 100,
|
||||||
|
})
|
||||||
|
# "voltages[0]": 12 * 1000,
|
||||||
|
seen_1 = True
|
||||||
|
if m.id == 3:
|
||||||
|
self.assert_message_field_values(m, {
|
||||||
|
"current_battery": 2.24 * 100,
|
||||||
|
})
|
||||||
|
# "voltages[0]": 3.14159 * 1000,
|
||||||
|
seen_3 = True
|
||||||
|
|
||||||
def tests(self):
|
def tests(self):
|
||||||
'''return list of all tests'''
|
'''return list of all tests'''
|
||||||
ret = super(AutoTestSub, self).tests()
|
ret = super(AutoTestSub, self).tests()
|
||||||
|
@ -978,6 +1023,7 @@ class AutoTestSub(vehicle_test_suite.TestSuite):
|
||||||
self.SetGlobalOrigin,
|
self.SetGlobalOrigin,
|
||||||
self.BackupOrigin,
|
self.BackupOrigin,
|
||||||
self.FuseMag,
|
self.FuseMag,
|
||||||
|
self.INA3221,
|
||||||
])
|
])
|
||||||
|
|
||||||
return ret
|
return ret
|
||||||
|
|
|
@ -56,6 +56,7 @@ BUILD_OPTIONS = [
|
||||||
Feature('Battery', 'BATTERY_FUELLEVEL_ANALOG', 'AP_BATTERY_FUELLEVEL_ANALOG_ENABLED', 'Enable Analog Fuel level battry monitor', 0, None), # noqa: E501
|
Feature('Battery', 'BATTERY_FUELLEVEL_ANALOG', 'AP_BATTERY_FUELLEVEL_ANALOG_ENABLED', 'Enable Analog Fuel level battry monitor', 0, None), # noqa: E501
|
||||||
Feature('Battery', 'BATTERY_SMBUS', 'AP_BATTERY_SMBUS_ENABLED', 'Enable SMBUS battery monitor', 0, None),
|
Feature('Battery', 'BATTERY_SMBUS', 'AP_BATTERY_SMBUS_ENABLED', 'Enable SMBUS battery monitor', 0, None),
|
||||||
Feature('Battery', 'BATTERY_INA2XX', 'AP_BATTERY_INA2XX_ENABLED', 'Enable INA2XX battery monitor', 0, None),
|
Feature('Battery', 'BATTERY_INA2XX', 'AP_BATTERY_INA2XX_ENABLED', 'Enable INA2XX battery monitor', 0, None),
|
||||||
|
Feature('Battery', 'BATTERY_INA3221', 'AP_BATTERY_INA3221_ENABLED', 'Enable INA3221 battery monitor', 0, None),
|
||||||
Feature('Battery', 'BATTERY_SYNTHETIC_CURRENT', 'AP_BATTERY_SYNTHETIC_CURRENT_ENABLED', 'Enable Synthetic Current monitor', 0, None), # noqa: E501
|
Feature('Battery', 'BATTERY_SYNTHETIC_CURRENT', 'AP_BATTERY_SYNTHETIC_CURRENT_ENABLED', 'Enable Synthetic Current monitor', 0, None), # noqa: E501
|
||||||
Feature('Battery', 'BATTERY_ESC_TELEM_OUT', 'AP_BATTERY_ESC_TELEM_OUTBOUND_ENABLED', 'Enable Ability to put battery monitor data into ESC telem stream', 0, None), # noqa: E501
|
Feature('Battery', 'BATTERY_ESC_TELEM_OUT', 'AP_BATTERY_ESC_TELEM_OUTBOUND_ENABLED', 'Enable Ability to put battery monitor data into ESC telem stream', 0, None), # noqa: E501
|
||||||
Feature('Battery', 'BATTERY_SUM', 'AP_BATTERY_SUM_ENABLED', 'Enable Synthetic sum-of-other-batteries backend', 0, None), # noqa: E501
|
Feature('Battery', 'BATTERY_SUM', 'AP_BATTERY_SUM_ENABLED', 'Enable Synthetic sum-of-other-batteries backend', 0, None), # noqa: E501
|
||||||
|
|
Loading…
Reference in New Issue