Датчик объекта#
Введение#
Датчик приближения Object Sensor — это инфракрасный (ИК) датчик, который определяет приближение объекта с помощью отраженного ИК-света.

На этой странице в качестве примера имени датчика объекта используется object_sensor При необходимости замените его на собственное имя, заданное вами.
Ниже приведён список доступных методов:
reflectivity– Возвращаетinteger, представляющее количество света, отраженного от объекта, в процентах.is_object_detected– Возвращает значение, указывающее, обнаруживает ли датчик объектов объект.set_threshold– Устанавливает количество отраженного света, необходимое для того, чтобы объект считался обнаруженным.object_detected– Регистрирует функцию, которая будет вызываться всякий раз, когда датчик объектов обнаружит новый объект.object_lost– Регистрирует функцию, которая будет вызываться всякий раз, когда датчик объектов теряет обнаруженный объект.changed– Регистрирует функцию, которая будет вызываться всякий раз, когда изменяется значение датчика объекта.
Конструктор – Ручная инициализация датчика объекта.
ObjectDetector– Создать датчик объектов.
отражательная способность#
reflectivity возвращает integer, представляющее количество света, отраженного от объекта, в процентах.
Примечание:
Коэффициент отражения 0% означает, что объект очень темный.
100% отражательная способность означает, что объект очень яркий.
Usage:
object_sensor.reflectivity()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
# Drive forward when the reflectivity is greater than 50%.
while True:
if object_sensor.reflectivity() > 50:
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
is_object_detected#
is_object_detected возвращает значение, указывающее, обнаруживает ли датчик объектов объект.
True– Датчик объекта обнаруживает объект.False– Датчик объекта не обнаруживает объект.
Usage:
object_sensor.is_object_detected()
Параметры |
Описание |
|---|---|
Этот метод не имеет параметров. |
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
set_threshold#
set_threshold устанавливает количество отраженного света, необходимое в процентах, прежде чем объект будет считаться обнаруженным.
Usage:
object_sensor.set_threshold(value)
Параметры |
Описание |
|---|---|
|
Значение коэффициента отражения, необходимое для того, чтобы объект считался обнаруженным, варьируется от 0 до 100. |
# Set the reflectivity threshold to 50%.
object_sensor.set_threshold(50)
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
объект_обнаружен#
object_detected регистрирует функцию, которая будет вызываться всякий раз, когда датчик объектов обнаружит новый объект.
Usage:
object_sensor.object_detected(callback, arg)
Параметры |
Описание |
|---|---|
|
Ранее определенная функция, которая выполняется, когда датчик объектов обнаруживает новый объект. |
|
Необязательно. Кортеж |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
объект_потерян#
object_lost регистрирует функцию, которая будет вызываться всякий раз, когда датчик объектов теряет обнаруженный объект.
Usage:
object_sensor.object_lost(callback, arg)
Параметры |
Описание |
|---|---|
|
Ранее определенная функция, которая выполняется, когда датчик объектов теряет обнаруженный объект. |
|
Необязательно. Кортеж |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
измененный#
changed регистрирует функцию, которая будет вызываться всякий раз, когда изменяется значение датчика объекта.
Usage:
object_sensor.changed(callback, arg)
Параметры |
Описание |
|---|---|
|
Ранее определенная функция, которая выполняется при изменении значения датчика объекта. |
|
Необязательно. Кортеж |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Строители#
Конструкторы используются для ручного создания ObjectDetector , необходимых для настройки датчиков объектов.
ObjectDetector#
ObjectDetector создает датчик объектов.
Usage:
ObjectDetector(port, reverse_det)
Параметр |
Описание |
|---|---|
|
Трехпроводной порт, к которому подключен датчик объектов:
|
|
Необязательно. Следует ли изменить логику обнаружения:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)