Sensor de distância#
Introdução#
O Sensor de Distância pode detetar se um objeto está em frente ao sensor e devolver a que distância se encontra esse objeto. Pode também devolver a velocidade relativa do objeto detetado e estimar se o objeto é pequeno, médio ou grande.
O sensor de distância opera numa gama de 20 mm a 2000 mm.
Abaixo dos 200 mm, a precisão é de aproximadamente ±15 mm. Acima de 200 mm, a precisão melhora para cerca de 5%.
O sensor de distância utiliza um laser de Classe 1. A deteção é feita diretamente à frente e é segura para utilização em sala de aula.

Esta página utiliza distance_sensor como exemplo do nome do sensor de distância. Substitua-o pelo nome que configurou, se necessário.
Segue-se uma lista dos métodos disponíveis:
object_distance— Retorna a distância entre o Sensor de Distância e o objecto detectado mais próximo.object_velocity— Retorna a rapidez com que o objecto detectado se está a mover em direcção ao Sensor de Distância ou a afastar-se dele.object_size— Retorna o tamanho estimado do objecto detectado.is_object_detected— Retorna se o Sensor de Distância detetou um objeto no momento.changed— Regista uma função para ser executada sempre que o valor do Sensor de Distância se altere.
Construtor — Inicializa manualmente um sensor de distância.
Distance— Cria um sensor de distância.
distância_do_objeto#
object_distance devolve a distância entre o Sensor de Distância e o objecto detectado mais próximo como um decimal (float).
Usage:
distance_sensor.object_distance(units)
Parâmetros |
Descrição |
|---|---|
|
Opcional. A unidade de distância: |
# Drive forward until the object is within 50 mm away
drivetrain.drive(FORWARD)
while not distance_sensor.object_distance(MM) < 50:
pass
drivetrain.stop()
velocidade_do_objecto#
object_velocity devolve a velocidade relativa do objecto detectado como um decimal (float) em m/s (metros por segundo).
A velocidade indica a rapidez com que o objeto se move em direção ao sensor de distância ou se afasta dele. Um valor próximo de 0 significa que o objeto não se está a mover muito em relação ao sensor.
Usage:
distance_sensor.object_velocity()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
tamanho_do_objeto#
object_size devolve o tamanho estimado do objecto detectado pelo Sensor de Distância.
O sensor de distância estima o tamanho do objeto com base na área de visão do sensor que é ocupada pelo objeto detetado.
ObjectSizeType(0, “NONE”)— Não foi detectado qualquer objecto.ObjectSizeType(1, “SMALL”)— Foi detectado um objecto pequeno.ObjectSizeType(2, “MEDIUM”)— Foi detectado um objecto médio.ObjectSizeType(3, “LARGE”)— Foi detectado um objecto de grandes dimensões.
Usage:
distance_sensor.object_size()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
is_object_detected#
is_object_detected retorna se o Sensor de Distância detetou um objeto no momento.
True— O sensor de distância detetou um objeto.False— O sensor de distância não detetou qualquer objeto.
Usage:
distance_sensor.is_object_detected()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
# Drive forward until the object is within 50 mm away
while True:
drivetrain.drive(FORWARD)
if distance_sensor.is_object_detected():
if distance_sensor.object_distance(MM) < 50:
drivetrain.stop()
break
mudado#
changed regista uma função a ser chamada sempre que o valor do Sensor de Distância se altere.
Usage:
distance_sensor.changed(callback, arg)
Parâmetros |
Descrição |
|---|---|
|
Uma função previamente definida que é executada quando o valor do Sensor de Distância é alterado. |
|
Opcional. Uma tupla contendo argumentos para passar para a função de callback. Consulte Utilizar funções com parâmetros para obter mais informações. |
def my_function():
brain.screen.print("Distance changed")
# Call my_function whenever distance_sensor's value changes
distance_sensor.changed(my_function)
Construtor#
Os construtores são utilizados para criar manualmente objetos com distância Distance , como quando se configura um sensor de distância fora do VEXcode.
Distance#
O valor Distance cria um objeto Sensor de Distância.
Usage:
Distance(smartport)
Parâmetro |
Descrição |
|---|---|
|
A porta inteligente à qual o sensor de distância está ligado é escrita como |
# Create a Distance Sensor in Port 10
distance_sensor = Distance(Ports.PORT10)