Pavarų dėžė#
Įvadas#
VEX V5 robotas važiuoja ir sukasi naudodamas pavaros mechanizmą. Pavaros mechanizmą sudaro varikliai ir ratai, kurie kartu judina robotą.
Sukonfigūruota pavaros sistema gali naudoti inercinį jutiklį, GPS jutiklį, giroskopinį jutiklį arba jo visai nebūti. Kai naudojamas jutiklis, pavaros sistema jį naudoja, kad padėtų robotui tiksliai judėti ir pasisukti. Kiekvieno projekto pradžioje pavaros sistema automatiškai kalibruoja jutiklį. Kalibravimo metu robotas turi būti nejudantis, kad jis galėtų tinkamai judėti ir pasisukti.
Yra daug būdų, kaip koduoti pavarą. Šiame puslapyje kaip pavaros pavadinimo pavyzdys naudojamas drivetrain Jei reikia, pakeiskite jį savo sukonfigūruotu pavadinimu.
Žemiau pateikiamas visų pavaros metodų sąrašas:
Veiksmai — Judinti ir pasukti robotą.
drive— Robotas judina pirmyn arba atgal amžinai.drive_for— Robotas juda pirmyn arba atgal tam tikru atstumu.turn— Robotas visam laikui pasukamas į kairę arba į dešinę.turn_for— Robotas pasukamas į kairę arba į dešinę tam tikru laipsnių skaičiumi.turn_to_heading– pasuka robotą tam tikra kryptimi nuo -359 iki 359 laipsnių. Robotas pasisuks trumpiausia kryptimi, kad pasiektų tikslinę kryptį.turn_to_rotation— Įjungia roboto sukimąsi konkrečia kryptimi.stop— Sustabdo roboto judėjimą.calibrate_drivetrain– Kalibruoja jutiklį, konfigūruotą su pavaros sistema.
Mutatoriai – reguliuojami pavaros nustatymai.
set_drive_velocity— Nurodo robotui, kokiu greičiu važiuoti.set_turn_velocity— Nurodo robotui, kaip greitai jis turi suktis.set_stopping— Nurodo, kaip robotas nustos judėti: stabdydamas, riedėdamas iš vietos arba palaikydamas.set_timeout— Nustato, kiek sekundžių robotas bandys užbaigti judesį.set_heading— Pakeičia dabartinę roboto kryptį į naują.set_rotation— Pakeičia dabartinį roboto sukimąsi į naują.set_turn_threshold– Nurodo, kiek arti robotas turi priartėti prie tikslinio kampo, kad posūkis būtų baigtas.set_turn_constant– Pakeičia, kaip stipriai robotas koreguoja savo posūkius.set_turn_direction_reverse– Pakeičia, ar išmaniosios pavaros sistemos sukimosi kryptis yra atvirkštinė.
Getteriai – patikrinkite pavaros sistemos būseną.
is_done— Grąžina, ar robotas baigė judėti, kaip loginę reikšmę.is_moving— Grąžina, ar robotas juda, kaip loginę reikšmę.heading— Grąžina dabartinę roboto kryptį nuo 0 iki 359,99 laipsnių.rotation— Grąžina dabartinį roboto sukimąsi.velocity— Grąžina roboto važiavimo greitį.current— Grąžina, kiek elektros srovės naudoja pavaros sistema.power– Grąžina, kaip greitai pavaros sistema eikvoja energiją.torque— Grąžina, kiek sukimo momento naudoja pavaros sistema.efficiency– Grąžina, kaip efektyviai pavaros sistema naudoja galią.temperature— Grąžina pavaros sistemos įšilimo lygį.get_timeout– Grąžina dabartinį skirtojo laiko nustatymą.
Konstruktoriai – rankiniu būdu sukurkite ir konfigūruokite pavaros sistemą.
DriveTrain– Sukuria pavarų dėžę be inercinio jutiklio, GPS jutiklio arba giroskopinio jutiklio.SmartDrive– Sukuria pavaros sistemą, sukonfigūruotą su inerciniu jutikliu, GPS jutikliu arba giroskopiniu jutikliu.
Veiksmai#
drive#
drive robotą judina pirmyn arba atgal amžinai. Robotas judės tol, kol jam bus duotas kitas veiksmas, pvz., pasisukti arba sustoti. Aps./min. arba laipsnių per sekundę riba keičiama pagal pavaros perdavimo skaičių.
Usage:
drivetrain.drive(direction, velocity, units)
Parametrai |
Aprašymas |
|---|---|
|
Roboto judėjimo kryptis: |
|
Pasirinktinai. Važiavimo greitis nuo 0 % iki 100 %, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
# Drive forward, then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# Drive forward at 360 degrees per second
drivetrain.drive(FORWARD, 360.0, VelocityUnits.DPS)
drive_for#
drive_for robotą judina pirmyn arba atgal tam tikru atstumu. Projektas lauks, kol robotas baigs judėti, prieš paleidžiant kitą kodo eilutę. Aps./min. arba laipsnių per sekundę riba keičiama pagal pavaros perdavimo skaičių.
Usage:
drivetrain.drive_for(direction, distance, units, velocity, units_v, wait)
Parametrai |
Aprašymas |
|---|---|
|
Roboto judėjimo kryptis: |
|
Atstumas, kurį nuvažiuoja robotas. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Atstumo vienetas: |
|
Pasirinktinai. Važiavimo greitis nuo 0 % iki 100 %, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
|
Pasirinktinai. |
# Drive forwards and backwards
drivetrain.drive_for(FORWARD, 5)
wait(1, SECONDS)
drivetrain.drive_for(REVERSE, 5)
turn#
turn suka robotą į kairę arba į dešinę amžinai. Robotas suksis tol, kol jam bus duotas kitas veiksmas, pvz., važiuoti arba sustoti. Aps./min. arba laipsnių per sekundę riba keičiama pagal pavaros perdavimo skaičių.
Usage:
drivetrain.turn(direction, velocity, units)
Parametrai |
Aprašymas |
|---|---|
|
Roboto sukimosi kryptis: |
|
Pasirinktinai. Sukimosi greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
# Turn right, then stop
drivetrain.turn(RIGHT)
wait(2, SECONDS)
drivetrain.stop()
turn_for#
turn_for pasuka robotą į kairę arba į dešinę tam tikru laipsnių skaičiumi. Posūkis yra santykinis su dabartine roboto padėtimi. Projektas lauks, kol robotas baigs pasisukti, prieš paleidžiant kitą kodo eilutę. Aps./min. arba laipsnių per sekundę atveju riba keičiama pagal pavaros perdavimo skaičių.
Usage:
drivetrain.turn_for(direction, angle, units, velocity, units_v, wait)
Parametrai |
Aprašymas |
|---|---|
|
Roboto sukimosi kryptis: |
|
Laipsnių, kuriais robotas pasisuka, skaičius. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Posūkio vienetas: |
|
Pasirinktinai. Sukimosi greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
|
Pasirinktinai. |
# Turn left, then turn around to the right
drivetrain.turn_for(LEFT, 90)
drivetrain.turn_for(RIGHT, 180)
turn_to_heading#
Kryptis – tai roboto pasukimo kryptis, matuojama laipsniais. turn_to_heading pasuka robotą tam tikra kryptimi nuo -359 iki 359 laipsnių. Robotas pasuks trumpiausia kryptimi, kad pasiektų tikslinę kryptį.
Roboto pradinė kryptis yra 0 laipsnių.
Projektas lauks, kol robotas baigs suktis, prieš paleidžiant kitą kodo eilutę.
Pastaba: Ši funkcija pasiekiama tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.turn_to_heading(angle, units, velocity, units_v, wait)
Parametrai |
Aprašymas |
|---|---|
|
Kryptis, kuria robotas turėtų pasukti, laipsniais. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Antraštės vienetas: |
|
Pasirinktinai. Sukimosi greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
|
Pasirinktinai. |
# Turn to face the cardinal directions
drivetrain.turn_to_heading(90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(180, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(270, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(0, DEGREES)
# Turn twice slowly
drivetrain.turn_to_heading(90, DEGREES, 20, PERCENT)
wait(1, SECONDS)
drivetrain.turn_to_heading(180, DEGREES, 20, PERCENT)
turn_to_rotation#
turn_to_rotation pasuka robotą į tam tikrą sukimosi kryptį.
Sukimas rodo, kiek robotas pasisuko, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. Sukimą taip pat galima nustatyti naudojant set_rotation metodą.
Sukimosi vertės yra absoliučios. Tai reiškia, kad posūkio kryptis priklauso nuo roboto dabartinio sukimosi. Sukant į dešinę, sukimasis padidėja, o sukant į kairę – sumažėja.
Pavyzdžiui, jei robotas pradeda judėti nuo 0 laipsnių ir jūs pasisukate 720 laipsnių kampu, jis du kartus pasisuks į dešinę. Jei tada pasisuksite 360 laipsnių kampu, jis vieną kartą pasisuks į kairę, nes 360 laipsnių yra mažiau nei 720.
Projektas lauks, kol robotas baigs suktis, prieš paleidžiant kitą kodo eilutę.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.turn_to_rotation(angle, units, velocity, units_v, wait)
Parametrai |
Aprašymas |
|---|---|
|
Pasukimosi vertė laipsniais arba posūkiais, kuriais robotas pasisuks. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Pasukimo vienetas: |
|
Pasirinktinai. Sukimosi greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
|
Pasirinktinai. |
# Turn left, then spin in a circle clockwise and face right
drivetrain.turn_to_rotation(-90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_rotation(450, DEGREES)
# Turn left then slowly spin in a circle clockwise
drivetrain.turn_to_rotation(-90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_rotation(450, DEGREES, 20, PERCENT)
stop#
stop sustabdo roboto judėjimą.
Usage:
drivetrain.stop(mode)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Kaip robotas sustos:
|
# Drive forward, then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
calibrate_drivetrain#
calibrate_drivetrain yra integruota funkcija, kuri kalibruoja sukonfigūruotą pavaros Inercinį jutiklį, GPS jutiklį arba Gyro jutiklį.
Kalibravimas padeda jutikliui teisingai išmatuoti judėjimą. Kalibravimo metu robotą laikykite nejudėdami maždaug 2 sekundes. Jei robotas juda kalibravimo metu, jutiklis gali neteisingai išmatuoti judėjimą.
Projektas lauks, kol bus atliktas kalibravimas, prieš paleidžiant kitą kodo eilutę.
Pastaba: Ši funkcija pasiekiama tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
calibrate_drivetrain()
Parametrai |
Aprašymas |
|---|---|
Ši funkcija neturi parametrų. |
Mutatoriai#
set_drive_velocity#
set_drive_velocity nurodo robotui, kokiu greičiu važiuoti. Didesnis procentas leidžia robotui važiuoti greičiau, o mažesnis – lėčiau. Apsukų per sekundę arba laipsnių per sekundę riba keičiama pagal pavaros perdavimo skaičių.
Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus važiuoja 50 % greičiu.
Pastaba: Didesnis greitis leidžia robotui važiuoti greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui važiuoti lėčiau, bet gali būti tiksliau.
Usage:
drivetrain.set_drive_velocity(velocity, units)
Parametrai |
Aprašymas |
|---|---|
|
Važiavimo greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
# Drive forward at the default velocity
drivetrain.drive_for(FORWARD, 100, MM)
wait(1, SECONDS)
# Drive slower
drivetrain.set_drive_velocity(20, PERCENT)
drivetrain.drive_for(FORWARD, 100, MM)
wait(1, SECONDS)
# Drive faster
drivetrain.set_drive_velocity(100, PERCENT)
drivetrain.drive_for(FORWARD, 100, MM)
wait(1, SECONDS)
set_turn_velocity#
set_turn_velocity nurodo robotui, kaip greitai jis turi suktis. Didesnis procentas leidžia robotui suktis greičiau, o mažesnis – lėčiau. Apsukų per sekundę arba laipsnių per sekundę riba priklauso nuo pavaros perdavimo skaičiaus.
Kiekvienas projektas prasideda nuo to, kad robotas pagal numatytuosius nustatymus sukasi 50 % greičiu.
Pastaba: Didesnis greitis leidžia robotui sukasi greičiau, bet gali būti mažiau tikslus. Mažesnis greitis leidžia robotui sukasi lėčiau, bet gali būti tiksliau.
Usage:
drivetrain.set_turn_velocity(velocity, units)
Parametrai |
Aprašymas |
|---|---|
|
Sukimosi greitis nuo 0% iki 100%, kai naudojama |
|
Pasirinktinai. Greičio vienetas: |
# Turn at the default velocity
drivetrain.turn_for(RIGHT, 100)
wait(1, SECONDS)
# Turn slower
drivetrain.set_turn_velocity(20, PERCENT)
drivetrain.turn_for(RIGHT, 100)
wait(1, SECONDS)
# Turn faster
drivetrain.set_turn_velocity(100, PERCENT)
drivetrain.turn_for(RIGHT, 100)
wait(1, SECONDS)
set_stopping#
set_stopping nustato, kaip robotas sustabdys judėjimą: stabdydamas, riedėdamas iš vietos arba palaikydamas vietoje.
Usage:
drivetrain.set_stopping(mode)
Parametrai |
Aprašymas |
|---|---|
|
Kaip robotas sustos:
|
Jei šis metodas nenaudojamas, robotas stabdydamas naudos BRAKE.
set_timeout#
set_timeout nustato, kiek sekundžių robotas bandys užbaigti judesį. Jei robotas negali užbaigti per tą laiką, jis nustos bandyti ir pereis prie kitos kodo eilutės. Tai neleidžia robotui užstrigti ties judesiu.
Usage:
drivetrain.set_timeout(value, units)
Parametrai |
Aprašymas |
|---|---|
|
Laikas, per kurį robotas gali bandyti užbaigti judesį. Tai gali būti teigiamas sveikasis skaičius |
|
Pasirinktinai. Laiko vienetas: |
set_heading#
Kryptis – tai roboto judėjimo kryptis, matuojama laipsniais. set_heading pakeičia dabartinę roboto kryptį į naują krypties reikšmę.
Pavyzdžiui, jei robotas pasisuko veidu į dešinę, nustačius 0 laipsnių kryptį, ta nukreipta į dešinę pozicija tampa nauja 0 laipsnių. Tada robotas gali pasisukti į kitas pozicijas, remdamasis ta nauja kryptimi.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.set_heading(heading, units)
Parametrai |
Aprašymas |
|---|---|
|
Roboto krypties reikšmė laipsniais arba posūkiais. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Krypties vienetas: |
# Face the new 0 degrees
drivetrain.set_heading(90, DEGREES)
drivetrain.turn_to_heading(0, DEGREES)
set_rotation#
Sukimas rodo, kiek robotas pasisuko, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. set_rotation pakeičia dabartinę roboto sukimosi vertę į naują.
Pavyzdžiui, jei robotas atliko du pilnus posūkius į dešinę, jo sukimosi vertė bus 720 laipsnių. Nustačius sukimąsi į 0 laipsnių, sukimasis bus atstatytas iš 720 į 0 laipsnių. Tada robotas galės atlikti sukimus pagal tą naują vertę.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.set_rotation(rotation, units)
Parametrai |
Aprašymas |
|---|---|
|
Roboto sukimosi vertė laipsniais arba posūkiais. Tai gali būti sveikasis skaičius |
|
Pasirinktinai. Pasukimo vienetas: |
# Spin counterclockwise two times
drivetrain.set_rotation(720, DEGREES)
drivetrain.turn_to_rotation(0, DEGREES)
set_turn_threshold#
set_turn_threshold nustato, kiek arti robotas turi priartėti prie tikslinio kampo, kad posūkis būtų baigtas.
Mažesnis slenkstis gali padėti tiksliau atlikti posūkius, tačiau robotui gali prireikti daugiau laiko, kad baigtų posūkį. Didesnis slenkstis gali padėti posūkiams baigtis greičiau, tačiau jie gali būti mažiau tikslūs.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.set_turn_threshold(value)
Parametrai |
Aprašymas |
|---|---|
|
Posūkio slenkstis laipsniais. Tai gali būti sveikasis skaičius |
set_turn_constant#
set_turn_constant pakeičia, kaip stipriai robotas koreguoja savo posūkius.
Didesnė reikšmė robotui posūkius koreguoja stipriau. Mažesnė reikšmė – posūkius koreguoja švelniau. Numatytoji reikšmė yra 1,0.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.set_turn_constant(value)
Parametrai |
Aprašymas |
|---|---|
|
Posūkio konstanta. Tai gali būti dešimtainė reikšmė ( |
set_turn_direction_reverse#
set_turn_direction_reverse pakeičia, ar išmaniosios pavaros posūkio kryptis yra atvirkštinė.
Tai galima naudoti, jei pavaros agregatas po rankinio konfigūravimo kode sukasi priešinga kryptimi nei tikėtasi. Šis metodas veikia taip pat, kaip ir nustatant parametrą reverse į True , kai konstruojamas „ SmartDrive.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.set_turn_direction_reverse(value)
Parametrai |
Aprašymas |
|---|---|
|
Ar pakeisti išmaniosios pavaros sukimosi kryptį: |
Getteriai#
is_done#
is_done grąžina, ar robotas baigė judėti, kaip loginę reikšmę. Tai gali būti naudojama kitų veiksmų, pagrįstų roboto judėjimu, laikui valdyti.
True— Robotas baigė judėti.False— Robotas vis dar juda.
Šis metodas veikia kartu su šiais „Drivetrain“ metodais, turinčiais parametrą wait : drive_for, turn_for, turn_to_heading ir turn_to_rotation.
Usage:
drivetrain.is_done()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
is_moving#
is_moving grąžina, ar robotas juda, kaip loginę reikšmę. Tai gali būti naudojama kitų veiksmų, pagrįstų roboto judėjimu, laikui valdyti.
True— Robotas juda.False— Robotas nejuda.
Naudojimas:
drivetrain.is_moving()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
heading#
Kryptis – tai roboto pasukimo kryptis, matuojama laipsniais. heading grąžina dabartinę roboto kryptį nuo 0 iki 359,99 laipsnių.
Roboto pradinė kryptis yra 0 laipsnių.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.heading(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Vienetas, kuriuo reikia grąžinti kryptį: |
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain.heading())
rotation#
Sukimas rodo, kiek robotas pasisuko, matuojamas laipsniais. Projekto pradžioje sukimosi vertė nustatoma į 0 laipsnių. rotation grąžina dabartinį roboto sukimąsi.
Sukant į dešinę, sukimasis padidėja, o sukant į kairę – sumažėja. Pavyzdžiui, padarius du pilnus posūkius į dešinę, sukimasis bus 720 laipsnių.
Pastaba: Šis metodas galimas tik tuo atveju, jei pavaros sistema konfigūruojama su Inerciniu jutikliu, GPS jutikliu arba Giroskopiniu jutikliu lange „Įrenginiai“.
Usage:
drivetrain.rotation(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Vienetas, kuriuo grąžinamas sukimasis: |
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Rotation: ")
brain.screen.print(drivetrain.rotation())
velocity#
velocity grąžina roboto važiavimo greitį.
Jis gali grąžinti greitį procentais nuo -100 % iki 100 %, RPMarba VelocityUnits.DPS (laipsniais per sekundę). Teigiama reikšmė reiškia, kad robotas važiuoja į priekį. Neigiama reikšmė reiškia, kad robotas važiuoja atbuline eiga.
Usage:
drivetrain.velocity(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Greičio vienetas: |
current#
current grąžina pavaros naudojamos elektros srovės kiekį, matuojamą amperais. Srovė yra per pavarą tekančios elektros kiekis.
Didesnė srovės vertė reiškia, kad pavaros sistema naudoja daugiau elektros srovės. Taip gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra užstrigęs.
Tai gali būti naudojama norint patikrinti, ar pavaros sistemai kyla problemų judesio metu. Jei srovė išlieka didelė, pavaros sistema gali įkaisti arba ne taip efektyviai naudoti energiją.
Usage:
drivetrain.current(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Srovės matavimo vienetas: |
power#
power grąžina pavaros sunaudojamą galią, matuojamą vatais. Galia rodo, kaip greitai pavara eikvoja energiją.
Didesnė galios vertė reiškia, kad pavaros sistema energiją naudoja greičiau. Tai gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra įstrigęs.
Tai galima naudoti judesiams palyginti arba patikrinti, ar pavaros sistema veikia sunkiai. Jei galia išlieka didelė, pavaros sistema gali įkaisti arba ne taip efektyviai naudoti energiją.
Usage:
drivetrain.power()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
torque#
Sukimo momentas parodo, kaip stipriai transmisija gali stumti arba traukti, kai ratai sukasi.
torque grąžina pavaros naudojamą sukimo momentą, matuojamą niutonmetrais (Nm) arba coliais-svarais (InLb).
Didesnė sukimo momento vertė reiškia, kad pavaros sistema stumia arba traukia stipriau. Tai gali nutikti, kai robotas stumia objektą arba bando pajudėti, kai yra užstrigęs.
Tai galima naudoti norint patikrinti, ar pavaros sistema veikia sunkiai, arba palyginti, kiek stūmimo reikia skirtingiems judesiams.
Usage:
drivetrain.torque(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Sukimo momento grąžinimo vienetas: |
efficiency#
efficiency grąžina, kaip efektyviai pavaros sistema naudoja energiją, procentais nuo 0 % iki 100 %.
Efektyvumas rodo, kiek pavaros galios sunaudojama judėjimui. Didesnė efektyvumo vertė reiškia, kad daugiau pavaros galios sunaudojama judėjimui. Mažesnė efektyvumo vertė gali būti, kai pavara dirba intensyviai, bet juda mažai, pavyzdžiui, kai robotas užstringa arba stumia į objektą.
Tai gali būti naudojama judesiams palyginti arba patikrinti, ar pavarų sistema nešvaisto energijos, užuot ją naudojusi judėjimui.
Usage:
drivetrain.efficiency()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
temperature#
temperature grąžina vidutinę pavaros agregato temperatūrą pasirinktu temperatūros vienetu.
Temperatūra rodo, kiek įkaitę pavaros varikliai. Aukštesnė temperatūra reiškia, kad varikliai darbo metu įkaista. Kad varikliai veiktų visu našumu, jų temperatūra turi būti žemesnė nei 55 °C.
Jei varikliai per daug įkaista, jie sumažina maksimalią srovę, kad apsisaugotų. Esant 70 °C temperatūrai, varikliai nustos veikti, kol atvės.
Tai gali būti naudojama norint patikrinti, ar pavarų dėžė neperkaista pasikartojančių judesių, ilgų važiavimų metu arba kai ji spaudžia objektą.
Usage:
drivetrain.temperature(units)
Parametrai |
Aprašymas |
|---|---|
|
Pasirinktinai. Temperatūros vienetas, kuriuo reikia grąžinti temperatūrą: |
get_timeout#
get_timeout grąžina šiuo metu nustatytą timeout milisekundėmis.
Usage:
drivetrain.get_timeout()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
Konstruktoriai#
Konstruktoriai naudojami rankiniu būdu sukurti DriveTrain ir SmartDrive objektus, kurie yra būtini pavaros konfigūruojimui už VEXcode ribų.
Prieš kuriant transmisiją, turi būti sukurti bent du Motor arba MotorGroup objektai.
DriveTrain#
DriveTrain sukuria transmisiją be inercinio jutiklio, GPS jutiklio arba giroskopinio jutiklio.
Usage:
DriveTrain(lm, rm, wheelTravel, trackWidth, wheelBase, units, externalGearRatio)
Parametras |
Aprašymas |
|---|---|
|
Kairysis variklis arba variklių grupė. |
|
Dešinysis variklis arba variklių grupė. |
|
Pasirinktinai. Varančiosios ašies ratų apimtis. Numatytoji reikšmė yra 300 milimetrų. |
|
Pasirinktinai. Plotis tarp kairiojo ir dešiniojo ratų. Numatytasis nustatymas yra 320 milimetrų. |
|
Pasirinktinai. Atstumas tarp priekinių ir galinių ratų. Numatytasis nustatymas yra 320 milimetrų. |
|
Pasirinktinai. |
|
Pasirinktinai. Pavarų perdavimo skaičius, naudojamas pavaros atstumams reguliuoti, jei naudojamos pavaros. Tai gali būti sveikasis skaičius |
# Create the Motors
left_motor = Motor(Ports.PORT1, GearSetting.RATIO_18_1, False)
right_motor = Motor(Ports.PORT2, GearSetting.RATIO_18_1, True)
# Create a drivetrain with default values
drivetrain = DriveTrain(left_motor, right_motor)
# Create the motors
left_motor = Motor(Ports.PORT1, GearSetting.RATIO_18_1, False)
right_motor = Motor(Ports.PORT2, GearSetting.RATIO_18_1, True)
"""
Create a drivetrain with the following values:
- wheelTravel = 319.19
- trackWidth = 295
- wheelBase = 40
- units = MM (Millimeters)
- externalGearRatio - 1
"""
drivetrain = DriveTrain(left_motor, right_motor, 319.19, 295, 40, MM, 1)
SmartDrive#
SmartDrive sukuria pavaros sistemą, sukonfigūruotą su inerciniu jutikliu, GPS jutikliu arba giroskopiniu jutikliu.
Usage:
SmartDrive(lm, rm, g, wheelTravel, trackWidth, wheelBase, units, externalGearRatio)
Parametras |
Aprašymas |
|---|---|
|
Kairysis variklis arba variklių grupė. |
|
Dešinysis variklis arba variklių grupė. |
|
Pavaros sistemoje naudojamas inercinis jutiklis, GPS jutiklis arba giroskopinis jutiklis. |
|
Pasirinktinai. Varančiosios ašies ratų apimtis. Numatytoji reikšmė yra 300 milimetrų. |
|
Pasirinktinai. Plotis tarp kairiojo ir dešiniojo ratų. Numatytasis nustatymas yra 320 milimetrų. |
|
Pasirinktinai. Atstumas tarp priekinių ir galinių ratų. Numatytasis nustatymas yra 320 milimetrų. |
|
Pasirinktinai. |
|
Pasirinktinai. Pavarų perdavimo skaičius, naudojamas pavaros atstumams reguliuoti, jei naudojamos pavaros. Tai gali būti sveikasis skaičius |
# Create the Motors
left_motor = Motor(Ports.PORT1, GearSetting.RATIO_18_1, False)
right_motor = Motor(Ports.PORT2, GearSetting.RATIO_18_1, True)
# Create a Gyro Sensor in Port A
gyro_a = Gyro(brain.three_wire_port.a)
# Create a drivetrain with default values
drivetrain = SmartDrive(left_motor, right_motor, gyro_a)
# Create the Motors
left_motor = Motor(Ports.PORT1, GearSetting.RATIO_18_1, False)
right_motor = Motor(Ports.PORT2, GearSetting.RATIO_18_1, True)
# Create a Gyro Sensor in Port A
gyro_a = Gyro(brain.three_wire_port.a)
"""
Create a drivetrain with the following values:
- wheelTravel = 319.19
- trackWidth = 295
- wheelBase = 40
- units = MM (Millimeters)
- externalGearRatio - 1
"""
drivetrain = SmartDrive(left_motor, right_motor, gyro_a, 319.19, 295, 40, MM, 1)