거리 센서#
소개#
거리 센서는 센서 앞에 물체가 있는지 감지하고 물체와의 거리를 측정할 수 있습니다. 또한 감지된 물체의 상대 속도를 계산하고 물체의 크기를 소형, 중형 또는 대형으로 추정할 수 있습니다.
거리 센서는 20mm에서 2000mm 범위에서 작동합니다.
200mm 미만에서는 정확도가 약 ±15mm입니다. 200mm 이상에서는 정확도가 약 5%로 향상됩니다.
거리 센서는 1등급 레이저를 사용합니다. 감지 방향은 정면이며 교실 환경에서 안전하게 사용할 수 있습니다.

이 페이지에서는 거리 센서 이름의 예시로 distance_sensor 사용합니다. 필요에 따라 설정한 이름으로 변경하십시오.
다음은 사용 가능한 방법 목록입니다.
object_distance— 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 반환합니다.object_velocity— 감지된 객체가 거리 센서를 향해 또는 멀어지는 속도를 반환합니다.object_size— 감지된 객체의 예상 크기를 반환합니다.is_object_detected— 거리 센서가 현재 객체를 감지하는지 여부를 반환합니다.changed— 거리 센서의 값이 변경될 때마다 실행될 함수를 등록합니다.
생성자 — 거리 센서를 수동으로 초기화합니다.
Distance— 거리 센서를 생성합니다.
객체 거리#
object_distance 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 소수점(float)으로 반환합니다.
Usage:
distance_sensor.object_distance(units)
매개변수 |
설명 |
|---|---|
|
선택 사항입니다. 거리 단위: |
# Drive forward until the object is within 50 mm away
drivetrain.drive(FORWARD)
while not distance_sensor.object_distance(MM) < 50:
pass
drivetrain.stop()
객체 속도#
object_velocity 은 감지된 객체의 상대 속도를 m/s(미터/초) 단위의 소수점(부동 소수점) 값으로 반환합니다.
속도는 물체가 거리 센서를 향해 또는 멀어지는 속도를 나타냅니다. 값이 0에 가까우면 물체가 센서에 대해 거의 움직이지 않는다는 의미입니다.
Usage:
distance_sensor.object_velocity()
매개변수 |
설명 |
|---|---|
이 메서드에는 매개변수가 없습니다. |
객체 크기#
object_size 거리 센서가 감지한 객체의 예상 크기를 반환합니다.
거리 센서는 감지된 물체가 센서 시야에서 차지하는 비율을 기준으로 물체의 크기를 추정합니다.
ObjectSizeType(0, “NONE”)— 객체가 감지되지 않았습니다.ObjectSizeType(1, “SMALL”)— 작은 객체가 감지되었습니다.ObjectSizeType(2, “MEDIUM”)— 중간 크기의 객체가 감지되었습니다.ObjectSizeType(3, “LARGE”)— 큰 객체가 감지되었습니다.
Usage:
distance_sensor.object_size()
매개변수 |
설명 |
|---|---|
이 메서드에는 매개변수가 없습니다. |
객체가 감지되었습니다#
is_object_detected 거리 센서가 현재 물체를 감지했는지 여부를 반환합니다.
True— 거리 센서가 물체를 감지했습니다.False— 거리 센서가 물체를 감지하지 못했습니다.
Usage:
distance_sensor.is_object_detected()
매개변수 |
설명 |
|---|---|
이 메서드에는 매개변수가 없습니다. |
# 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
변경됨#
changed 거리 센서 값이 변경될 때마다 호출될 함수를 등록합니다.
Usage:
distance_sensor.changed(callback, arg)
매개변수 |
설명 |
|---|---|
|
거리 센서의 값이 변경될 때 실행되는 이전에 정의된 함수입니다. |
|
선택 사항입니다. 콜백 함수에 전달할 인수를 포함하는 튜플입니다. 자세한 내용은 매개변수가 있는 함수 사용을 참조하세요. |
def my_function():
brain.screen.print("Distance changed")
# Call my_function whenever distance_sensor's value changes
distance_sensor.changed(my_function)
건설자#
생성자는 VEXcode 외부에서 거리 센서를 구성할 때와 같이 Distance 객체를 수동으로 생성하는 데 사용됩니다.
Distance#
Distance 거리 센서 객체를 생성합니다.
Usage:
Distance(smartport)
매개변수 |
설명 |
|---|---|
|
거리 센서가 연결된 스마트 포트는 |
# Create a Distance Sensor in Port 10
distance_sensor = Distance(Ports.PORT10)