Бампер#
Введение#
Бампер представляет собой механический переключатель, который замыкает цепь при нажатии, позволяя роботу распознавать нажатия и отпускания.
Ниже приведён список всех доступных методов:
Проверьте, нажата ли кнопка датчика бампера.
pressed– Возвращает значение, указывающее, нажат ли датчик бампера.
Обратный вызов – выполнение кода при нажатии или отпускании бампера.
on_pressed– Регистрирует функцию, которая будет вызываться при нажатии датчика бампера.on_released– Регистрирует функцию, которая будет вызвана при освобождении датчика бампера.
Геттеры#
pressed#
pressed возвращает логическое значение, указывающее, нажата ли в данный момент кнопка бампера. Это можно использовать для проверки того, столкнулся ли робот с другими объектами.
True– Нажата кнопка бампера.False– Кнопка бампера не нажата.
Usage:
bumper.pressed()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
def main():
# Stop when the Left Bumper is pressed
drivetrain.drive(FORWARD)
while True:
if left_bumper.pressed():
drivetrain.stop()
wait(5, MSEC)
# VR threads — Do not delete
vr_thread(main)
Перезвонить#
on_pressed#
on_pressed регистрирует функцию, которая будет вызываться при нажатии на датчик бампера.
Usage:
bumper.on_pressed(callback)
Параметры |
Описание |
|---|---|
|
A function that is previously defined to execute when the Bumper Sensor is being pressed. |
def bumper_pressed():
# Reverse when the bumper is pressed
drivetrain.drive_for(REVERSE, 100, MM)
drivetrain.stop()
def main():
# Drive forward until the left bumper is pressed
drivetrain.drive(FORWARD)
left_bumper.on_pressed(bumper_pressed)
# VR threads — Do not delete
vr_thread(main)
on_released#
on_released регистрирует функцию, которая будет вызвана при отпускании датчика бампера.
Usage:
bumper.on_released(callback)
Параметры |
Описание |
|---|---|
|
A function that is previously defined to execute when the Bumper Sensor is being pressed. |
def bumper_released():
# Display a message
brain.print("Bumper released!")
def main():
# Hit and back away from an object
left_bumper.on_released(bumper_released)
drivetrain.drive_for(FORWARD, 600, MM)
drivetrain.drive_for(REVERSE, 100, MM)
# VR threads — Do not delete
vr_thread(main)