Attāluma sensors#
Ievads#
sonar klase tiek izmantota ar VEX IQ attāluma sensoru (1. paaudze). distance klase tiek izmantota ar VEX IQ attāluma sensoru (2. paaudze).
Abi attāluma sensori var noteikt, vai sensora priekšā atrodas objekts, un atgriezt informāciju par to, cik tālu šis objekts atrodas. VEX IQ attāluma sensors (2. paaudze) var arī atgriezt noteiktā objekta relatīvo ātrumu un novērtēt, vai objekts ir mazs, vidējs vai liels.
Klases konstruktori#
1 — Šis konstruktors izveido VEX IQ attāluma sensoru (1. paaudze).
sonar( int32_t index);
2 — Šis konstruktors izveido VEX IQ attāluma sensoru (2. paaudze).
distance( int32_t index);
Klases iznīcinātājs#
Iznīcina distance objektu un atbrīvo saistītos resursus.
1 — Iznīcina VEX IQ attāluma sensoru (1. paaudze).
~sonar();
2 — Iznīcina VEX IQ attāluma sensoru (2. paaudze).
~distance();
Parametri#
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Viedports, kuram ir pievienots attāluma sensors, kas pierakstīts kā |
Piemēri#
1 — Izveidojiet VEX IQ attāluma sensora (1. paaudzes) instanci 1. portā.
sonar Distance1 = sonar(PORT1);
2 — Izveidojiet VEX IQ attāluma sensora (2. paaudzes) instanci 1. portā.
distance Distance1 = distance(PORT1);
Dalībnieku funkcijas#
sonar klasē ir iekļautas šādas dalībfunkcijas:
foundObject— Atgriež, vai attāluma sensors pašlaik nosaka objektu.distance— Atgriež attālumu starp attāluma sensoru un tuvāko noteikto objektu.
distance klase ietver šādas dalībfunkcijas:
objectDistance— Atgriež attālumu starp attāluma sensoru un tuvāko noteikto objektu.objectVelocity— Atgriež, cik ātri noteiktais objekts pārvietojas attāluma sensora virzienā vai prom no tā.objectSize— Atgriež noteiktā objekta aptuveno izmēru.isObjectDetected— Atgriež, vai attāluma sensors pašlaik nosaka objektu.changed— Reģistrē atzvanīšanas funkciju, kas darbojas, kad mainās noteiktā attāluma vērtība.installed— Atgriež, vai attāluma sensors ir instalēts un pievienots.
Pirms jebkuru distance vai sonar dalībfunkciju izsaukšanas ir jāizveido distance vai sonar instance, kā parādīts zemāk:
/* 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#
Atgriež, vai attāluma sensors pašlaik nosaka objektu.
Available Functionsbool foundObject();
Šī funkcija nepieņem nekādus parametrus.
Return ValuesAtgriež Būla vērtību, kas norāda, vai attāluma sensors nosaka objektu:
-
true— The Distance Sensor detects an object. -
false— The Distance Sensor does not detect an object.
distance#
Atgriež attālumu starp attāluma sensoru un tuvāko noteikto objektu.
Available Functionsdouble distance( distanceUnits units );
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Attāluma mērvienība:
|
Atgriež skaitli double kas apzīmē attālumu starp attāluma sensoru un tuvāko noteikto objektu norādītajās vienībās.
objectDistance#
Atgriež attālumu starp attāluma sensoru un tuvāko noteikto objektu.
Available Functionsdouble objectDistance( distanceUnits units );
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Attāluma mērvienība:
|
Atgriež skaitli double kas apzīmē attālumu starp attāluma sensoru un tuvāko noteikto objektu norādītajās vienībās.
objectVelocity#
Atgriež noteiktā objekta relatīvo ātrumu.
Ātrums parāda, cik ātri objekts virzās attāluma sensora virzienā vai prom no tā. Vērtība, kas ir tuvu 0, nozīmē, ka objekts nekustas daudz attiecībā pret sensoru.
Available Functionsdouble objectVelocity();
Šī funkcija nepieņem nekādus parametrus.
Return ValuesAtgriež skaitli double kas apzīmē noteiktā objekta relatīvo ātrumu m/s (metri sekundē).
objectSize#
Atgriež attāluma sensora noteiktā objekta aptuveno izmēru.
Attāluma sensors novērtē objekta izmēru, pamatojoties uz to, cik lielu daļu no sensora skata aizņem noteiktais objekts.
Available FunctionssizeType objectSize();
Šī funkcija nepieņem nekādus parametrus.
Return ValuesAtgriež sizeType kas norāda noteiktā objekta aptuveno izmēru:
-
none— No object is detected. -
small— A small object is detected. -
medium— A medium object is detected. -
large— A large object is detected.
isObjectDetected#
Atgriež, vai attāluma sensors pašlaik nosaka objektu.
Available Functionsbool isObjectDetected();
Šī funkcija nepieņem nekādus parametrus.
Return ValuesAtgriež Būla vērtību, kas norāda, vai attāluma sensors nosaka objektu:
-
true— The Distance Sensor detects an object. -
false— The Distance Sensor does not detect an object.
changed#
Reģistrē atzvanīšanas funkciju, kas darbojas, kad mainās noteiktā attāluma vērtība.
Available Functionsvoid changed( void (* callback)(void) );
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Rādītājs uz funkciju, kas tiks izsaukta, mainoties noteiktajai attāluma vērtībai. Funkcija nedrīkst pieņemt parametrus un atgriezt |
Šī funkcija neatgriež vērtību.
Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.installed#
Atgriež, vai attāluma sensors ir uzstādīts un pievienots.
Available Functionsbool installed();
Šī funkcija nepieņem nekādus parametrus.
Return ValuesAtgriež Būla vērtību, kas norāda, vai attāluma sensors ir uzstādīts un pievienots:
-
true— The Distance Sensor is installed and connected. -
false— The Distance Sensor is not installed or not connected.