mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-02-22 15:53:56 -04:00
Tools: add flight test for rangefinder in Copter
This commit is contained in:
parent
55f751a8f4
commit
ecb3cabf72
@ -1496,9 +1496,32 @@ class AutoTestCopter(AutoTest):
|
|||||||
if flags & mavutil.mavlink.MAV_SYS_STATUS_SENSOR_LASER_POSITION:
|
if flags & mavutil.mavlink.MAV_SYS_STATUS_SENSOR_LASER_POSITION:
|
||||||
raise NotAchievedException("Laser enabled in SYS_STATUS")
|
raise NotAchievedException("Laser enabled in SYS_STATUS")
|
||||||
|
|
||||||
|
self.progress("Re-enabling rangefinder")
|
||||||
|
self.set_rc(9, 2000)
|
||||||
|
self.delay_sim_time(1)
|
||||||
|
m = self.mav.recv_match(type='SYS_STATUS',
|
||||||
|
blocking=True,
|
||||||
|
timeout=10)
|
||||||
|
flags = m.onboard_control_sensors_enabled
|
||||||
|
if not flags & mavutil.mavlink.MAV_SYS_STATUS_SENSOR_LASER_POSITION:
|
||||||
|
raise NotAchievedException("Laser not enabled in SYS_STATUS")
|
||||||
|
|
||||||
|
self.takeoff(10, mode="LOITER")
|
||||||
|
|
||||||
|
m_r = self.mav.recv_match(type='RANGEFINDER',
|
||||||
|
blocking=True)
|
||||||
|
m_p = self.mav.recv_match(type='GLOBAL_POSITION_INT',
|
||||||
|
blocking=True)
|
||||||
|
|
||||||
|
if abs(m_r.distance - m_p.relative_alt/1000) > 1:
|
||||||
|
raise NotAchievedException("rangefinder/global position int mismatch")
|
||||||
|
|
||||||
|
self.land()
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.progress("Exception caught")
|
self.progress("Exception caught")
|
||||||
ex = e
|
ex = e
|
||||||
|
self.land()
|
||||||
self.context_pop()
|
self.context_pop()
|
||||||
self.reboot_sitl()
|
self.reboot_sitl()
|
||||||
if ex is not None:
|
if ex is not None:
|
||||||
|
Loading…
Reference in New Issue
Block a user