Máy đo khoảng cách#
Giới thiệu#
Loại cảm biến sonar sonar siêu âm, đo khoảng cách đến vật thể gần nhất bằng sóng âm. Nó hoạt động bằng cách phát ra xung siêu âm và đo thời gian âm thanh dội lại.

Hàm tạo lớp#
sonar(
triport::port &port);
Lớp Destructor#
Phá hủy đối tượng sonar và giải phóng các tài nguyên liên quan.
virtual ~sonar();
Thông số#
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Cổng 3 dây đầu tiên của nhóm hai cổng bắt buộc được sử dụng bởi Bộ dò phạm vi. Bộ dò phạm vi chiếm hai cổng liền kề (A–B, C–D, E–F hoặc G–H) trên Bộ xử lý trung tâm (Brain) hoặc Bộ mở rộng 3 dây. Chỉ định cổng đầu tiên trong cặp (A, C, E hoặc G), được viết dưới dạng |
Ví dụ#
// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);
Chức năng thành viên#
Lớp sonar bao gồm các hàm thành viên sau:
foundObject— Trả về liệu Bộ dò phạm vi có phát hiện ra một đối tượng hay không.distance— Trả về khoảng cách giữa Bộ đo khoảng cách và vật thể được phát hiện gần nhất.
Before calling any sonar member functions, a sonar instance must be created, as shown below:
/* This constructor is required when using VS Code.
Range Finder configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);
foundObject#
Trả về giá trị cho biết máy đo khoảng cách có phát hiện vật thể nào trong tầm nhìn của nó hay không.
Available Functionsbool foundObject();
Hàm này không chấp nhận bất kỳ tham số nào.
Return ValuesTrả về giá trị boolean bool biểu thị xem cảm biến khoảng cách có phát hiện vật thể hay không:
true— Cảm biến khoảng cách đang phát hiện một vật thể.false— Cảm biến khoảng cách không phát hiện vật thể nào.
// Check if an object is detected.
if (RangeFinderA.foundObject()){
// Print to screen on the brain that an object was found.
Brain.Screen.print("object found");
}
distance#
Trả về khoảng cách đo được đến vật thể gần nhất mà cảm biến phát hiện.
Available Functionsdouble distance(
distanceUnits units );
Tham số |
Kiểu |
Sự miêu tả |
|---|---|---|
|
|
Đơn vị biểu thị khoảng cách: |
Returns a double representing the distance in the specified units.
// Get the Range Finder distance in millimeters.
double value = RangeFinderA.distance(mm);
// Print the current distance detected by the Range Finder to the
// Brain's screen.
Brain.Screen.print(value);