Sensor de objeto#
Introdução#
O Object Sensor é um sensor de proximidade infravermelho (IV) que deteta quando um objeto está próximo, utilizando a luz IV refletida.

Esta página utiliza object_sensor como exemplo do nome do sensor de objectos. Substitua-o pelo nome que configurou, se necessário.
Segue-se uma lista dos métodos disponíveis:
reflectivity– Devolve umintegerque representa a quantidade de luz reflectida pelo objecto em percentagem.is_object_detected– Retorna se o Sensor de Objectos está a detectar um objecto.set_threshold– Define a quantidade de luz reflectida necessária antes de um objecto ser considerado detectado.object_detected– Regista uma função a chamar sempre que o Sensor de Objetos detete um novo objeto.object_lost– Regista uma função a ser chamada sempre que o Sensor de Objectos perder um objecto detectado.changed– Regista uma função a ser chamada sempre que o valor do Sensor de Objectos se altere.
Construtor – Inicializa manualmente um sensor de objectos.
ObjectDetector– Criar um sensor de objectos.
refletividade#
reflectivity devolve um integer que representa a quantidade de luz reflectida pelo objecto em percentagem.
Nota:
Uma refletividade de 0% significa que o objeto está demasiado escuro. O sensor deteta um valor bruto de 3000 ou superior.
Uma refletividade de 100% significa que o objeto é demasiado brilhante. O sensor recebe um valor bruto de 0.
Usage:
object_sensor.reflectivity()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# 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 retorna se o Sensor de Objectos está a detectar um objecto.
True– O sensor de objectos está a detectar um objecto.False– O sensor de objetos não está a detetar nenhum objeto.
Usage:
object_sensor.is_object_detected()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# 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)
definir_limite#
set_threshold define a quantidade de luz reflectida necessária, em percentagem, para que um objecto seja considerado detectado.
Usage:
object_sensor.set_threshold(value)
Parâmetros |
Descrição |
|---|---|
|
A quantidade de luz refletida necessária para que um objeto seja considerado detetado é expressa como um número inteiro, de 0 a 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)
objeto_detetado#
object_detected regista uma função a ser chamada sempre que o Sensor de Objectos detecta um novo objecto.
Usage:
object_sensor.object_detected(callback, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função previamente definida que é executada quando o Sensor de Objectos detecta um novo objecto. |
|
Opcional. Uma |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
objeto_perdido#
object_lost regista uma função a ser chamada sempre que o Sensor de Objectos perder um objecto detectado.
Usage:
object_sensor.object_lost(callback, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função previamente definida que é executada quando o Sensor de Objectos perde um objecto detectado. |
|
Opcional. Uma |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
mudado#
changed regista uma função a ser chamada sempre que o valor do Sensor de Objectos é alterado.
Usage:
object_sensor.changed(callback, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função previamente definida que é executada quando o valor do Sensor de Objectos é alterado. |
|
Opcional. Uma |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Construtores#
Os construtores são utilizados para criar manualmente ObjectDetector , que são necessários para configurar os sensores de objetos.
ObjectDetector#
ObjectDetector cria um Sensor de Objectos.
Usage:
ObjectDetector(port, reverse_det)
Parâmetro |
Descrição |
|---|---|
|
A porta de 3 fios à qual o sensor de objectos está ligado:
|
|
Opcional. Indica se a lógica de deteção deve ser invertida:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)