CTE roka#

Ievads#

arm klase nodrošina CTE darba elementā izmantotās 6 asu rokas vadību. VEX EXP C++ valodā 6 asu roka var pārvietot gala efektoru uz pozīcijām trīsdimensiju telpā, pagriezt gala efektoru, pārbaudīt, vai kustības ir iespējamas, un vadīt pievienotos instrumentus, piemēram, magnēta pacelšanas rīku vai pildspalvas turētāja rīku.

Šajā lapā sniegtajos piemēros tiek izmantota konfigurēta 6 asu roka ar nosaukumu Arm.

Konstruktori#

arm#

arm izveido 6 asu rokas objektu.

Pieejamās funkcijas

arm(int32_t index);

Parametrs

Tips

Apraksts

index

int32_t

Viedports, kuram ir pievienota 6 asu roka, tiek rakstīts kā PORTx, kur x ir porta numurs. Piemēram, PORT1.

Piemērs

// Create a 6-Axis Arm named Arm on Port 1
arm Arm = arm(PORT1);

Iznīcinātājs#

~arm#

~arm iznīcina arm objektu un atbrīvo ar to saistītos resursus.

Pieejamās funkcijas

~arm();

Dalībnieku funkcijas#

arm klase ietver šādas dalībfunkcijas:

Darbības — Pārvietojiet 6 asu sviru uz pozīcijām vai orientācijām.

  • moveTo — Pārvieto gala efektoru uz norādīto x, y un z koordinātu.

  • moveInc — Pārvieto gala efektoru par noteiktu attālumu no tā pašreizējās pozīcijas.

  • moveEndEffectorTo — Pagriež gala efektoru norādītajā pagrieziena, rites un piķa orientācijā.

  • moveEndEffectorInc — Pagriež gala efektoru par norādīto pagrieziena, rites un piķa vērtību.

Mutatori — konfigurējiet kustības, rīkus un vadības iestatījumus.

  • setSpeed — Iestata 6 asu rokas kustības ātrumu.

  • setEndEffectorType — Iestata 6 asu svirai pievienotā gala efektora veidu.

  • setEndEffectorMagnet — Iespējo vai atspējo magnēta uzņemšanas rīku.

  • setPenOffset — Iestata z ass nobīdi, kas tiek izmantota ar pildspalvas turētāja rīku.

  • setControlStop — Iespējo vai atspējo 6 asu sviras vadības apturēšanu.

  • setTimeout — Iestata taimautu, ko izmanto 6 asu rokas kustības funkcijas.

Ieguvēji — atgriež kustības statusu, pozīciju, orientāciju un savienojuma vērtības.

  • isDone — Atgriež, vai 6 asu roka ir pabeigusi kustību.

  • isCrashed — Atgriež, vai 6 asu roka ir avarējusi kustības laikā.

  • getX — Atgriež gala efektora pašreizējo x pozīciju.

  • getY — Atgriež gala efektora pašreizējo y pozīciju.

  • getZ — Atgriež gala efektora pašreizējo z pozīciju.

  • getYaw — Atgriež gala efektora pašreizējo novirzi.

  • getRoll — Atgriež gala efektora pašreizējo apgriezienu.

  • getPitch — Atgriež gala efektora pašreizējo skaņas augstumu.

  • canArmReachTo — Atgriež, vai 6 asu roka var sasniegt norādīto pozīciju.

  • canArmReachInc — Atgriež, vai 6 asu roka var pārvietoties noteiktā attālumā.

  • canEndEffectorReachTo — Atgriež, vai gala efektors var sasniegt norādīto orientāciju.

  • canEndEffectorReachInc — Atgriež, vai gala efektors var pagriezties par noteiktu daudzumu.

  • isConnected — Atgriež, vai 6 asu roka ir savienota ar EXP Brain.

  • timestamp — Atgriež pēdējā no 6 asu rokas saņemtā statusa paketes laika zīmogu.

  • installed — Atgriež, vai ir pievienota 6 asu roka.

Atzvanīšanas funkcijas — palaist funkcijas, kad notiek aktivizēšanas notikumi.

  • controlStopped — Reģistrē funkciju, kas tiks palaista, kad ir iespējota vadības apturēšana.

  • crashed — Reģistrē funkciju, kas jāizpilda, kad tiek konstatēta avārija.

Darbības#

moveTo#

moveTo pārvieto 6 asu sviru uz norādīto x, y un z koordinātu.

X, y un z koordinātas apraksta gala efektora pozīciju trīsdimensiju telpā. Pirms šīs funkcijas izmantojiet canArmReachTo, ja mērķa pozīcija var atrasties ārpus 6 asu rokas sasniedzamās darba zonas.

Pieejamās funkcijas

bool moveTo(
  double x,
  double y,
  double z,
  bool   waitForCompletion = true
);

Parametrs

Tips

Apraksts

x

double

Mērķa pozīcijas x koordināta milimetros.

y

double

Mērķa pozīcijas y koordināta milimetros.

z

double

Mērķa pozīcijas z koordināta milimetros.

waitForCompletion

bool

Neobligāti. true (pēc noklusējuma) gaida, līdz kustība ir pabeigta, pirms turpināt. false sāk kustību un nekavējoties turpina ar nākamo koda rindiņu.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka ir sasniegusi mērķa pozīciju.

  • false — 6 asu roka nesasniedza mērķa pozīciju vai waitForCompletion bija iestatīts uz false.

Piemēri

// Move the 6-Axis Arm to (200, 0, 100)
Arm.moveTo(200, 0, 100);

// Start moving, then print the y-position while the arm moves
Arm.moveTo(-100, 200, 100, false);

while (!Arm.isDone()) {
  Brain.Screen.print(Arm.getY());
  Brain.Screen.newLine();
  wait(0.25, seconds);
}

moveInc#

moveInc pārvieto 6 asu roku par noteiktu attālumu no tās pašreizējās pozīcijas pa x, y un z asīm.

Izmantojiet šo funkciju, lai pārvietotos attiecībā pret gala efektora pašreizējo atrašanās vietu. Pirms šīs funkcijas izmantojiet canArmReachInc, ja kustība var novietot 6 asu roku ārpus tās sasniedzamās darbvietas.

Pieejamās funkcijas

bool moveInc(
  double x,
  double y,
  double z,
  bool   waitForCompletion = true
);

Parametrs

Tips

Apraksts

x

double

Attālums, kas jāpārvietojas pa x asi milimetros.

y

double

Attālums milimetros, kas jāpārvietojas pa y asi.

z

double

Attālums, kas jāpārvietojas pa z asi milimetros.

waitForCompletion

bool

Neobligāti. true (pēc noklusējuma) gaida, līdz kustība ir pabeigta, pirms turpināt. false sāk kustību un nekavējoties turpina ar nākamo koda rindiņu.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka ir sasniegusi pieprasīto pozīciju.

  • false — 6 asu roka nesasniedza pieprasīto pozīciju vai waitForCompletion bija iestatīts uz false.

Piemērs

// Move the 6-Axis Arm 100 millimeters along the y-axis
Arm.moveInc(0, 100, 0);

moveEndEffectorTo#

moveEndEffectorTo pagriež 6 asu rokas gala efektoru norādītajā pagrieziena, rites un piķa orientācijā.

Orientācija apraksta, kā gala efektors tiek pagriezts. yaw rotē ap z asi, roll rotē ap x asi un pitch rotē ap y asi.

Pieejamās funkcijas

bool moveEndEffectorTo(
  double yaw,
  double roll = 0,
  double pitch = 0,
  bool   waitForCompletion = true
);

Parametrs

Tips

Apraksts

yaw

double

Mērķa novirzes leņķis grādos.

roll

double

Neobligāti. Mērķa rites leņķis grādos. Noklusējuma vērtība ir 0.

pitch

double

Neobligāti. Mērķa slīpuma leņķis grādos. Noklusējuma vērtība ir 0.

waitForCompletion

bool

Neobligāti. true (pēc noklusējuma) gaida, līdz kustība ir pabeigta, pirms turpināt. false sāk kustību un nekavējoties turpina ar nākamo koda rindiņu.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — Gala efektors ir sasniedzis mērķa orientāciju.

  • false — Gala efektors nesasniedza mērķa orientāciju vai waitForCompletion bija iestatīts uz false.

Piemērs

// Rotate the end effector to 90 degrees of roll
Arm.moveEndEffectorTo(0, 90, 0);

moveEndEffectorInc#

moveEndEffectorInc pagriež 6 asu rokas gala efektoru par noteiktu pagrieziena, rites un soļa lielumu no tā pašreizējās orientācijas.

Izmantojiet šo funkciju, lai pagrieztu attiecībā pret gala efektora pašreizējo novirzi, svēršanu vai slīpumu.

Pieejamās funkcijas

bool moveEndEffectorInc(
  double yaw,
  double roll = 0,
  double pitch = 0,
  bool   waitForCompletion = true
);

Parametrs

Tips

Apraksts

yaw

double

Novirzes izmaiņas grādos.

roll

double

Neobligāti. Slīpuma izmaiņas grādos. Noklusējuma vērtība ir 0.

pitch

double

Neobligāti. Skaņas augstuma izmaiņas grādos. Noklusējuma vērtība ir 0.

waitForCompletion

bool

Neobligāti. true (pēc noklusējuma) gaida, līdz kustība ir pabeigta, pirms turpināt. false sāk kustību un nekavējoties turpina ar nākamo koda rindiņu.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — Gala efektors ir sasniedzis pieprasīto orientāciju.

  • false — Gala efektors nesasniedza pieprasīto orientāciju vai waitForCompletion tika iestatīts uz false.

Piemērs

// Rotate the end effector -50 degrees in pitch
Arm.moveEndEffectorInc(0, 0, -50);

Mutatori#

setSpeed#

setSpeed iestata 6 asu rokas kustības ātrumu.

Pieejamās funkcijas

void setSpeed(uint32_t speed);

Parametrs

Tips

Apraksts

speed

uint32_t

Ātrums, ar kādu 6 asu rokai jāpārvietojas, milimetros sekundē.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Set the 6-Axis Arm movement speed
Arm.setSpeed(100);

setEndEffectorType#

setEndEffectorType iestata 6 asu svirai piestiprinātā gala efektora veidu.

Kad tiek mainīts gala efektora tips, 6 asu svira automātiski pielāgo savu z-nobīdi, lai tā atbilstu atlasītajam instrumentam.

Pieejamās funkcijas

bool setEndEffectorType(
  endEffectorType type,
  bool            waitForCompletion = true
);

Parametrs

Tips

Apraksts

type

endEffectorType

Instruments, kas piestiprināts pie 6 asu sviras: magnet (magnēta uztveršanas instruments) vai pen (pildspalvas turētāja instruments).

waitForCompletion

bool

Neobligāti. true (pēc noklusējuma) gaida, līdz izmaiņas ir pabeigtas, pirms turpināt. false sāk izmaiņas un nekavējoties turpina ar nākamo koda rindiņu.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — Pieprasītais tips ir iestatīts.

  • false — Pieprasītais tips netika iestatīts vai waitForCompletion tika iestatīts uz false.

Piemērs

// Set the end effector type to the Magnet Pickup Tool
Arm.setEndEffectorType(magnet);

setEndEffectorMagnet#

setEndEffectorMagnet iespējo vai atspējo magnēta uzņemšanas rīku.

Pieejamās funkcijas

void setEndEffectorMagnet(bool enabled);

Parametrs

Tips

Apraksts

enabled

bool

true aktivizē magnētu, lai paceltu un noturētu objektus. false atspējo magnētu un nomet jebkuru turēto objektu.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Pick up objects and then drop them
Arm.setEndEffectorType(magnet);
Arm.setEndEffectorMagnet(true);
wait(2, seconds);
Arm.setEndEffectorMagnet(false);

setPenOffset#

setPenOffset iestata z ass nobīdi, kas tiek izmantota, kad pildspalvas turētāja rīks ir piestiprināts pie 6 asu sviras.

Pirms šīs funkcijas izmantošanas iestatiet gala efektora tipu uz pen Ja pildspalvas turētāja rīks nav atlasīts, šai funkcijai nav nekādas ietekmes.

Pildspalvas nobīde ir attālums no pildspalvas turētāja rīka augšdaļas līdz sausās dzēšanas marķiera galam. Pozitīva z vērtība pārvieto nobīdi uz augšu no rīka stiprinājuma punkta.

Pieejamās funkcijas

void setPenOffset(double zOffset);

Parametrs

Tips

Apraksts

zOffset

double

Pildspalvas nobīdes vērtība milimetros.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Set the end effector type to the Pen Holder Tool and set the pen offset
Arm.setEndEffectorType(pen);
Arm.setPenOffset(25);

setControlStop#

setControlStop iespējo vai atspējo 6 asu rokas vadības apturēšanu.

Kad vadības apturēšana ir iespējota, 6 asu roka nekavējoties aptur kustību un novērš turpmākas lineāras vai locītavu kustības.

Pieejamās funkcijas

void setControlStop(bool state = true);

Parametrs

Tips

Apraksts

state

bool

Neobligāti. true (pēc noklusējuma) iespējo vadības apturēšanu un novērš turpmākas lineāras vai locītavu kustības. false atspējo vadības apturēšanu.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Stop the 6-Axis Arm and prevent further movement
Arm.setControlStop();

setTimeout#

setTimeout iestata taimauta vērtību, kas tiek izmantota, pārvietojot 6 asu roku.

Ja kustība nebeidzas pirms taimauta sasniegšanas, projekts turpinās ar nākamo koda rindu.

Pieejamās funkcijas

void setTimeout(
  int32_t   timeout,
  timeUnits units
);

Parametrs

Tips

Apraksts

timeout

int32_t

Jaunā taimauta vērtība.

units

timeUnits

Laika vienība: sec (sekundes) vai msec (milisekundes).

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Set the 6-Axis Arm timeout to 2 seconds
Arm.setTimeout(2, sec);

Getteri#

isDone#

isDone atgriež, vai 6 asu roka ir pabeigusi kustību.

Šī funkcija ir noderīga pēc tam, kad kustības funkcija tiek izsaukta ar waitForCompletion kas iestatīts uz false.

Pieejamās funkcijas

bool isDone();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka ir pabeigusi kustību.

  • false — 6 asu roka joprojām kustas.

Piemērs

// Display the 6-Axis Arm's y-position while it moves
Arm.moveTo(-100, 200, 100, false);

while (!Arm.isDone()) {
  Brain.Screen.print(Arm.getY());
  Brain.Screen.newLine();
  wait(0.25, seconds);
}

isCrashed#

isCrashed atgriež, vai 6 asu roka ir avarējusi kustības laikā.

Kad tiek konstatēta avārija, 6 asu roka aptur motora kustību un var šķist atslābināma. Tas samazina slodzi un palīdz aizsargāt motorus no nejaušiem bojājumiem.

Pieejamās funkcijas

bool isCrashed();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka ir avarējusi.

  • false — 6 asu roka nav avarējusi.

Piemērs

// Quickly move to a new location
Arm.setSpeed(100);
Arm.moveTo(-40, 250, 40, false);

// While moving, check for a crash
while (true) {
  if (Arm.isCrashed()) {
    // Indicate a crash with the Signal Tower and Brain screen
    Brain.Screen.print("Crash Detected");
    SignalTower6.setColor(signaltower::green, signaltower::off);
    SignalTower6.setColor(signaltower::red, signaltower::on);
    break;
  }

  wait(5, msec);
}

getX#

getX atgriež gala efektora pašreizējo x pozīciju milimetros.

Izmantojiet šo funkciju, lai nolasītu gala efektora pašreizējo atrašanās vietu uz x ass.

Pieejamās funkcijas

float getX();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float , kas apzīmē gala efektora x pozīciju milimetros.

Piemērs

// Print the current x position of the 6-Axis Arm
Brain.Screen.print(Arm.getX());

getY#

getY atgriež gala efektora pašreizējo y pozīciju milimetros.

Izmantojiet šo funkciju, lai nolasītu gala efektora pašreizējo atrašanās vietu uz y ass.

Pieejamās funkcijas

float getY();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float , kas apzīmē gala efektora y pozīciju milimetros.

Piemērs

// Print the current y position of the 6-Axis Arm
Brain.Screen.print(Arm.getY());

getZ#

getZ atgriež gala efektora pašreizējo z pozīciju milimetros.

Izmantojiet šo funkciju, lai nolasītu gala efektora pašreizējo atrašanās vietu gar z asi.

Pieejamās funkcijas

float getZ();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float , kas attēlo gala efektora z pozīciju milimetros.

Piemērs

// Print the current z position of the 6-Axis Arm
Brain.Screen.print(Arm.getZ());

getYaw#

getYaw atgriež gala efektora pašreizējo novirzi grādos.

Pieejamās funkcijas

float getYaw();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float kas attēlo gala efektora pašreizējo novirzi grādos.

Piemērs

// Print the current yaw of the end effector
Brain.Screen.print(Arm.getYaw());

getRoll#

getRoll atgriež gala efektora pašreizējo apgriezienu grādos.

Pieejamās funkcijas

float getRoll();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float kas attēlo gala efektora pašreizējo rullīti grādos.

Piemērs

// Print the current roll of the end effector
Brain.Screen.print(Arm.getRoll());

getPitch#

getPitch atgriež gala efektora pašreizējo piķi grādos.

Pieejamās funkcijas

float getPitch();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež float kas attēlo gala efektora pašreizējo slīpumu grādos.

Piemērs

// Print the current pitch of the end effector
Brain.Screen.print(Arm.getPitch());

canArmReachTo#

canArmReachTo atgriež, vai 6 asu roka var pārvietot gala efektoru uz norādīto x, y un z koordinātu.

Izmantojiet šo funkciju, lai pārbaudītu mērķa pozīciju pirms moveTo izmantošanas.

Pieejamās funkcijas

bool canArmReachTo(
  double x,
  double y,
  double z
);

Parametrs

Tips

Apraksts

x

double

Mērķa pozīcijas x koordināta milimetros.

y

double

Mērķa pozīcijas y koordināta milimetros.

z

double

Mērķa pozīcijas z koordināta milimetros.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka var sasniegt pieprasīto pozīciju.

  • false — 6 asu roka nevar sasniegt pieprasīto pozīciju.

Piemērs

// Move the 6-Axis Arm to (100, -20, 50) if it can reach
if (Arm.canArmReachTo(100, -20, 50)) {
  Arm.moveTo(100, -20, 50);
}

canArmReachInc#

canArmReachInc atgriež, vai 6 asu roka var pārvietot gala efektoru par norādīto x, y un z attālumu no tā pašreizējās pozīcijas.

Izmantojiet šo funkciju, lai pārbaudītu relatīvu kustību pirms moveInc izmantošanas.

Pieejamās funkcijas

bool canArmReachInc(
  double x,
  double y,
  double z
);

Parametrs

Tips

Apraksts

x

double

Attālums, kas jāpārvietojas pa x asi milimetros.

y

double

Attālums milimetros, kas jāpārvietojas pa y asi.

z

double

Attālums, kas jāpārvietojas pa z asi milimetros.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka var veikt pieprasīto kustību.

  • false — 6 asu roka nevar veikt pieprasīto kustību.

Piemērs

// Increment the 6-Axis Arm 100 mm along the x-axis if possible
if (Arm.canArmReachInc(100, 0, 0)) {
  Arm.moveInc(100, 0, 0);
}

canEndEffectorReachTo#

canEndEffectorReachTo atgriež, vai gala efektors var pagriezties norādītajā novirzes, rites un gareniskās pozīcijas orientācijā.

Izmantojiet šo funkciju, lai pārbaudītu mērķa orientāciju pirms moveEndEffectorTo izmantošanas.

Pieejamās funkcijas

bool canEndEffectorReachTo(
  double yaw,
  double roll = 0,
  double pitch = 0
);

Parametrs

Tips

Apraksts

yaw

double

Mērķa novirzes leņķis grādos.

roll

double

Neobligāti. Mērķa rites leņķis grādos. Noklusējuma vērtība ir 0.

pitch

double

Neobligāti. Mērķa slīpuma leņķis grādos. Noklusējuma vērtība ir 0.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — Gala efektors var sasniegt pieprasīto orientāciju.

  • false — Gala efektors nevar sasniegt pieprasīto orientāciju.

Piemērs

// Rotate the end effector to 90 degrees of roll if possible
if (Arm.canEndEffectorReachTo(0, 90, 0)) {
  Arm.moveEndEffectorTo(0, 90, 0);
}

canEndEffectorReachInc#

canEndEffectorReachInc atgriež, vai gala efektors var pagriezties par noteiktu novirzi, svēršanu un piķi no tā pašreizējās orientācijas.

Izmantojiet šo funkciju, lai pārbaudītu relatīvo orientācijas kustību pirms moveEndEffectorInc izmantošanas.

Pieejamās funkcijas

bool canEndEffectorReachInc(
  double yaw,
  double roll = 0,
  double pitch = 0
);

Parametrs

Tips

Apraksts

yaw

double

Novirzes izmaiņas grādos.

roll

double

Neobligāti. Slīpuma izmaiņas grādos. Noklusējuma vērtība ir 0.

pitch

double

Neobligāti. Skaņas augstuma izmaiņas grādos. Noklusējuma vērtība ir 0.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — Gala efektors var veikt pieprasīto rotāciju.

  • false — Gala efektors nevar veikt pieprasīto rotāciju.

Piemērs

// Increment the end effector by 10 degrees of pitch if possible
if (Arm.canEndEffectorReachInc(0, 0, 10)) {
  Arm.moveEndEffectorInc(0, 0, 10);
}

isConnected#

isConnected atgriež, vai 6 asu roka ir savienota ar EXP Brain.

Šī ir saderības funkcija, kas atgriež tādu pašu vērtību kā installed.

Pieejamās funkcijas

bool isConnected();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu roka ir savienota ar EXP smadzenēm.

  • false — 6 asu roka nav savienota ar EXP smadzenēm.

Piemērs

// Print whether the 6-Axis Arm is connected
Brain.Screen.print(Arm.isConnected());

timestamp#

timestamp atgriež pēdējā no 6 asu rokas saņemtā statusa paketes timestampu.

Pieejamās funkcijas

uint32_t timestamp();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež pēdējā statusa paketes laika zīmogu kā uint32_t milisekundēs.

installed#

installed atgriež, vai ir pievienota 6 asu roka.

Pieejamās funkcijas

bool installed();

Parametri

Šai funkcijai nav parametru.

Atgriešanas vērtība

Atgriež Būla vērtību.

  • true — 6 asu svira ir pievienota.

  • false — 6 asu roka nav pievienota.

Atzvanīšanas#

controlStopped#

controlStopped reģistrē funkciju, kas darbojas, kad ir iespējota vadības apturēšana.

Pieejamās funkcijas

void controlStopped(void (* callback)(void));

Parametrs

Tips

Apraksts

callback

void (*)(void)

Funkcija, kas darbojas, kad ir iespējota vadības apturēšana.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Called when the 6-Axis Arm is control stopped
void onControlStopped() {
  Brain.Screen.print("Arm control stopped");
}

int main() {
  vexcodeInit();

  Arm.controlStopped(onControlStopped);
}

crashed#

crashed reģistrē funkciju, kas darbojas, kad 6 asu roka kustības laikā ir avarējusi.

Kad tiek konstatēta avārija, 6 asu roka aptur motora kustību un var šķist atslābināma. Tas samazina slodzi un palīdz aizsargāt motorus no nejaušiem bojājumiem.

Pieejamās funkcijas

void crashed(void (* callback)(void));

Parametrs

Tips

Apraksts

callback

void (*)(void)

Funkcija, kas darbojas, kad 6 asu roka kustības laikā ir avarējusi.

Atgriešanas vērtība

Šī funkcija neatgriež vērtību.

Piemērs

// Called when the 6-Axis Arm crashes while moving
void onArmCrashed() {
  Brain.Screen.print("Crash detected");
  SignalTower6.setColor(signaltower::green, signaltower::off);
  SignalTower6.setColor(signaltower::red, signaltower::on);
}

int main() {
  vexcodeInit();

  Arm.crashed(onArmCrashed);
}