Skip to content

Commit 081ea21

Browse files
gregcowelldwalton76
authored andcommitted
Add a wait_until_angle_changed_by() method to GyroSensor (#408)
1 parent d505bb8 commit 081ea21

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

ev3dev/sensor/lego.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,17 @@ def reset(self):
430430
self.mode = self.MODE_GYRO_ANG
431431
self._direct = self.set_attr_raw(self._direct, 'direct', 17)
432432

433+
def wait_until_angle_changed_by(self, delta):
434+
"""
435+
Wait until angle has changed by specified amount.
436+
"""
437+
assert self.mode in (self.MODE_GYRO_G_A, self.MODE_GYRO_ANG,
438+
self.MODE_TILT_ANG),\
439+
'Gyro mode should be MODE_GYRO_ANG, MODE_GYRO_G_A or MODE_TILT_ANG'
440+
start_angle = self.value(0)
441+
while abs(start_angle - self.value(0)) < delta:
442+
time.sleep(0.01)
443+
433444

434445
class InfraredSensor(Sensor, ButtonBase):
435446
"""

0 commit comments

Comments
 (0)