Cảm biến khoảng cách#

Giới thiệu#

Lớp distance được sử dụng để điều khiển và truy cập dữ liệu từ Cảm biến khoảng cách.

Cảm biến khoảng cách có thể phát hiện xem có vật thể nào ở phía trước cảm biến hay không và trả về khoảng cách của vật thể đó. Nó cũng có thể trả về vận tốc tương đối của vật thể được phát hiện và ước tính xem vật thể đó nhỏ, trung bình hay lớn.

Cảm biến khoảng cách hoạt động trong phạm vi từ 20 mm đến 2000 mm.

Ở khoảng cách dưới 200mm, độ chính xác xấp xỉ ±15mm. Ở khoảng cách trên 200mm, độ chính xác được cải thiện lên khoảng 5%.

Cảm biến khoảng cách sử dụng tia laser loại 1. Cảm biến hướng thẳng về phía trước và an toàn cho môi trường lớp học.

Hàm tạo lớp#

distance( int32_t  index );

Lớp Destructor#

Destroys the distance object and releases associated resources.

~distance();

Thông số#

Tham số

Kiểu

Sự miêu tả

index

int32_t

Cổng thông minh mà cảm biến khoảng cách được kết nối, được viết dưới dạng PORTx, trong đó x là số cổng (ví dụ: PORT1).

Ví dụ#

// Create a Distance Sensor instance in Port 1
distance Distance1 = distance(PORT1);

Chức năng thành viên#

Lớp distance bao gồm các hàm thành viên sau:

  • objectDistance — Trả về khoảng cách giữa Cảm biến khoảng cách và vật thể được phát hiện gần nhất.

  • objectSize — Trả về kích thước ước tính của đối tượng được phát hiện.

  • objectVelocity — Trả về tốc độ di chuyển của vật thể được phát hiện về phía hoặc ra xa Cảm biến Khoảng cách.

  • isObjectDetected — Trả về liệu Cảm biến khoảng cách hiện có phát hiện vật thể hay không.

  • changed — Đăng ký một hàm gọi lại chạy khi giá trị khoảng cách được phát hiện thay đổi.

  • installed — Trả về trạng thái Cảm biến khoảng cách đã được cài đặt và kết nối hay chưa.

Trước khi gọi bất kỳ hàm thành viên nào có khoảng cách distance , cần phải tạo một thể hiện có khoảng cách distance , như được hiển thị bên dưới:

/* 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 Distance Sensor instance in Port 1
distance Distance1 = distance(PORT1);

objectDistance#

Trả về khoảng cách giữa cảm biến khoảng cách và vật thể được phát hiện gần nhất.

Available Functions
double objectDistance( distanceUnits units );

Parameters

Tham số

Kiểu

Sự miêu tả

units

distanceUnits

Đơn vị đo khoảng cách:

  • mm - milimét (20 mm đến 2000 mm)
  • cm - centimet (2 cm đến 200 cm)
  • inches - inch (0,78 inch đến 78,74 inch)

Return Values

Hàm trả về giá trị double biểu thị khoảng cách giữa Cảm biến khoảng cách và vật thể được phát hiện gần nhất theo đơn vị đã chỉ định.

objectSize#

Trả về kích thước ước tính của vật thể được cảm biến khoảng cách phát hiện.

Cảm biến khoảng cách ước tính kích thước vật thể dựa trên mức độ vật thể được phát hiện chiếm bao nhiêu phần trăm tầm nhìn của cảm biến.

Available Functions
sizeType objectSize();

Parameters

Hàm này không nhận tham số nào.

Return Values

Trả về giá trị sizeType , cho biết kích thước ước tính của đối tượng được phát hiện:

  • none — No object is detected.
  • small — A small object is detected.
  • medium — A medium object is detected.
  • large — A large object is detected.

objectVelocity#

Trả về vận tốc tương đối của vật thể được phát hiện.

Vận tốc thể hiện tốc độ vật thể di chuyển về phía hoặc ra xa cảm biến khoảng cách. Giá trị gần bằng 0 có nghĩa là vật thể không di chuyển nhiều so với cảm biến.

Available Functions
double objectVelocity();

Parameters

Hàm này không nhận tham số nào.

Return Values

Trả về giá trị double , biểu thị vận tốc tương đối của vật thể được phát hiện tính bằng m/s (mét trên giây).

isObjectDetected#

Trả về trạng thái cho biết cảm biến khoảng cách hiện có phát hiện vật thể hay không.

Available Functions
bool isObjectDetected();

Parameters

Hàm này không nhận tham số nào.

Return Values

Trả về giá trị Boolean cho biết cảm biến khoảng cách có phát hiện vật thể hay không:

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.

changed#

Đăng ký một hàm gọi lại sẽ chạy khi giá trị khoảng cách được phát hiện thay đổi.

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

Parameters

Tham số

Kiểu

Sự miêu tả

callback

void (*)(void)

Con trỏ đến một hàm sẽ được gọi khi giá trị khoảng cách được phát hiện thay đổi. Hàm này không được nhận tham số nào và trả về void

Return Values

Hàm này không trả về giá trị nào.

installed#

Trả về trạng thái cho biết cảm biến khoảng cách đã được cài đặt và kết nối hay chưa.

Available Functions
bool installed();

Parameters

Hàm này không nhận tham số nào.

Return Values

Trả về giá trị Boolean cho biết cảm biến khoảng cách đã được cài đặt và kết nối hay chưa:

  • true — The Distance Sensor is installed and connected.
  • false — The Distance Sensor is not installed or not connected.