거리 센서#

소개#

sonar 등급은 VEX IQ 거리 센서(1세대)와 함께 사용됩니다. distance 등급은 VEX IQ 거리 센서(2세대)와 함께 사용됩니다.

두 거리 센서 모두 센서 앞에 물체가 있는지 감지하고 물체와의 거리를 측정할 수 있습니다. VEX IQ 거리 센서(2세대)는 감지된 물체의 상대 속도를 알려주고 물체의 크기를 소형, 중형 또는 대형으로 추정할 수도 있습니다.

클래스 생성자#

1 — 이 생성자는 VEX IQ 거리 센서(1세대)를 생성합니다.

sonar(
    int32_t index);

2 — 이 생성자는 VEX IQ 거리 센서(2세대)를 생성합니다.

distance(
    int32_t index);

클래스 소멸자#

거리 distance 인 객체를 파괴하고 관련 리소스를 해제합니다.

1 — VEX IQ 거리 센서(1세대)를 파괴합니다.

~sonar();

2 — VEX IQ 거리 센서(2세대)를 파괴합니다.

~distance();

매개변수#

매개변수

유형

설명

index

int32_t

거리 센서가 연결된 스마트 포트는 PORTx형식으로 표기되며, 여기서 x 포트 번호입니다(예: PORT1).

예시#

1 — 포트 1에 VEX IQ 거리 센서(1세대) 인스턴스를 생성합니다.

sonar Distance1 = sonar(PORT1);

2 — 포트 1에 VEX IQ 거리 센서(2세대) 인스턴스를 생성합니다.

distance Distance1 = distance(PORT1);

회원 기능#

sonar 클래스는 다음과 같은 멤버 함수를 포함합니다.

  • foundObject — 거리 센서가 현재 객체를 감지하는지 여부를 반환합니다.

  • distance — 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 반환합니다.

distance 클래스에는 다음과 같은 멤버 함수가 포함됩니다.

  • objectDistance — 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 반환합니다.

  • objectVelocity — 감지된 객체가 거리 센서를 향해 또는 멀어지는 속도를 반환합니다.

  • objectSize — 감지된 객체의 예상 크기를 반환합니다.

  • isObjectDetected — 거리 센서가 현재 객체를 감지하는지 여부를 반환합니다.

  • changed — 감지된 거리 값이 변경될 때 실행되는 콜백 함수를 등록합니다.

  • installed — 거리 센서가 설치되고 연결되었는지 여부를 반환합니다.

distance 또는 distance 멤버 함수를 호출하기 전에 아래와 같이 sonar 또는 sonar 인스턴스를 생성해야 합니다.

/* This constructor is required when using VS Code.
Distance Sensor configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a VEX IQ Distance Sensor (2nd gen) instance in Port 1
distance Distance1 = distance(PORT1);

foundObject#

거리 센서가 현재 물체를 감지하는지 여부를 반환합니다.

Available Functions
bool foundObject();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

거리 센서가 물체를 감지했는지 여부를 나타내는 부울 값을 반환합니다.

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (1st gen) function.

distance#

거리 센서와 가장 가까운 감지된 물체 사이의 거리를 반환합니다.

Available Functions
double distance( distanceUnits units );

Parameters

매개변수

유형

설명

units

distanceUnits

거리 단위:

  • mm — 밀리미터 (24mm ~ 1000mm)
  • cm — 센티미터 (2.4cm ~ 100cm)
  • inches — 인치 (1인치 ~ 40인치)

Return Values

지정된 단위로 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 나타내는 double 의 double 값을 반환합니다.

Notes - This is a VEX IQ Distance Sensor (1st gen) function.

objectDistance#

거리 센서와 가장 가까운 감지된 물체 사이의 거리를 반환합니다.

Available Functions
double objectDistance( distanceUnits units );

Parameters

매개변수

유형

설명

units

distanceUnits

거리 단위:

  • mm — 밀리미터 (20mm ~ 2000mm)
  • cm — 센티미터 (2cm ~ 200cm)
  • inches — 인치 (0.78인치 ~ 78인치)

Return Values

지정된 단위로 거리 센서와 가장 가까운 감지된 객체 사이의 거리를 나타내는 double 의 double 값을 반환합니다.

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectVelocity#

감지된 객체의 상대 속도를 반환합니다.

속도는 물체가 거리 센서를 향해 또는 멀어지는 속도를 나타냅니다. 값이 0에 가까우면 물체가 센서에 대해 거의 움직이지 않는다는 의미입니다.

Available Functions
double objectVelocity();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

감지된 객체의 상대 속도를 m/s(미터/초) 단위로 나타내는 double 의 double 값을 반환합니다.

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectSize#

거리 센서가 감지한 물체의 예상 크기를 반환합니다.

거리 센서는 감지된 물체가 센서 시야에서 차지하는 비율을 기준으로 물체의 크기를 추정합니다.

Available Functions
sizeType objectSize();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

감지된 객체의 예상 크기를 나타내는 sizeType 을 반환합니다.

  • none — No object is detected.
  • small — A small object is detected.
  • medium — A medium object is detected.
  • large — A large object is detected.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

isObjectDetected#

거리 센서가 현재 물체를 감지하는지 여부를 반환합니다.

Available Functions
bool isObjectDetected();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

거리 센서가 물체를 감지했는지 여부를 나타내는 부울 값을 반환합니다.

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

changed#

감지된 거리 값이 변경될 때 실행되는 콜백 함수를 등록합니다.

Available Functions
void changed( void (* callback)(void) );

Parameters

매개변수

유형

설명

callback

void (*)(void)

감지된 거리 값이 변경될 때 호출될 함수에 대한 포인터입니다. 이 함수는 매개변수를 받지 않고 void 해야 합니다.

Return Values

이 함수는 값을 반환하지 않습니다.

Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.

installed#

거리 센서가 설치되고 연결되었는지 여부를 반환합니다.

Available Functions
bool installed();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

거리 센서가 설치되고 연결되었는지 여부를 나타내는 부울 값을 반환합니다.

  • true — The Distance Sensor is installed and connected.
  • false — The Distance Sensor is not installed or not connected.
Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.