Kontrolieris#
Ievads#
V5 kontrolierim ir pogas, divas kursorsviras, vibrācijas motors un ekrāns. Kontroliera metodes var izmantot, lai pārbaudītu pogu nospiešanas signālus, nolasītu kursorsviras kustību, aktivizētu kontroliera vibrāciju, iespējotu vai atspējotu konfigurētas kontroliera darbības, palaistu funkcijas, kad notiek kontroliera notikumi, vai parādītu tekstu kontroliera ekrānā.
Konfigurētās kontrollera darbības ir kontrollera uzvedība, kas iestatīta izvēlnē “Ierīces”. Izmantojiet remote_control_code_enabled , lai projekta laikā īslaicīgi iespējotu vai atspējotu šīs konfigurētās darbības.
Šajā lapā kā kontroliera nosaukuma piemērs tiek izmantots controller_1 Ja nepieciešams, nomainiet to ar savu konfigurēto nosaukumu.
Zemāk ir visu pieejamo metožu saraksts:
Darbības — aktivizēt kontroliera vibrāciju vai iespējot/atspējot konfigurētas kontroliera darbības.
rumble— Atskaņo dārdoņas rakstu kontrolierī.remote_control_code_enabled— Iespējo vai atspējo kontrollera darbības, kas konfigurētas ierīču izvēlnē.
Ekrāns — Attēlot tekstu un ciparus kontrollera ekrānā.
print— Kontroliera ekrānā parāda tekstu, skaitļus vai mainīgo vērtības.set_cursor— Pārvieto kursoru uz norādīto rindu un kolonnu kontrollera ekrānā.column— Atgriež pašreizējo kursora kolonnu kontrollera ekrānā.rowrinda — Atgriež pašreizējo kursora rindu kontrollera ekrānā.clear_screen— Notīra kontrollera ekrānu.clear_row— Notīra vienu rindu kontrollera ekrānā.next_row— Pārvieto kursoru uz nākamo rindu kontrollera ekrānā.
Iegūtāji — nolasa pogu stāvokļus un kursorsviru pozīcijas.
.pressing— Atgriež, vai tiek nospiesta norādītā poga..position— Returns the position of a specified joystick axis.
Atzvanīšanas funkcijas — palaist funkcijas, kad mainās kontrollera ievade.
.pressed— Izpilda funkciju, kad tiek nospiesta norādītā poga..released— Runs a function when a specified button is released..changed— Runs a function when the joystick’s position changes along a specified axis.
Konstruktors — manuāli izveidojiet kontroliera objektu.
Controller— Izveido Controller objektu.
Darbības#
rumble#
rumble atskaņo dārdoņas rakstu uz kontrollera. Raksta virknē punkti ir īsi dārdoņi, defises ir gari dārdoņi, un atstarpes ir pauzes.
Usage:
controller_1.rumble(pattern)
Parametrs |
Apraksts |
|---|---|
|
Virkne, kas sastāv no punktiem, defisēm un atstarpēm, kas attēlo dārdoņas rakstu. |
# Rumble the Controller with a short-short-long-long pattern
controller_1.rumble("..--")
remote_control_code_enabled#
remote_control_code_enabled ir mainīgais, kas iespējo vai atspējo kontrollera darbības, kas konfigurētas ierīču izvēlnē. Kontroliera konfigurētās darbības ir iespējotas pēc noklusējuma.
Usage:
remote_control_code_enabled = state
Vērtība |
Apraksts |
|---|---|
|
Iespējo kontrollera konfigurētās darbības. |
|
Atspējo kontrollera konfigurētās darbības. |
# Drive forward or backward using the left joystick
remote_control_code_enabled = False
while True:
if controller_1.axis3.position() > 0:
drivetrain.drive(FORWARD)
elif controller_1.axis3.position() < 0:
drivetrain.drive(REVERSE)
# Press A to use Controller configured actions again
elif controller_1.buttonA.pressing():
break
else:
drivetrain.stop()
wait(20, MSEC)
remote_control_code_enabled = True
Ekrāns#
V5 kontrollera ekrānā ir 3 rindas un 19 kolonnas teksta un skaitļu attēlošanai.

print#
controller_1.screen.print parāda tekstu, skaitļus vai mainīgo vērtības kontrollera ekrānā, izmantojot pašreizējo kursora pozīciju.
Usage:
controller_1.screen.print(value, sep, precision)
Parametrs |
Apraksts |
|---|---|
|
Teksts, skaitlis vai mainīgā vērtība, kas jāparāda kontrollera ekrānā. Vairāk nekā vienu vērtību var parādīt, atdalot tās ar komatiem. |
|
Neobligāti. Virkne, kas jāievieto starp vērtībām. Tai jābūt rakstītai kā atslēgvārda argumentam, piemēram |
|
Neobligāti. Decimālzīmju skaits, kas jāparāda, drukājot vienkāršus skaitļus. Tas jāraksta kā atslēgvārda arguments, piemēram, |
# Print a number on the Controller screen
controller_1.screen.print(1)
# Print multiple numbers separated by hyphens
controller_1.screen.print(1, 2, 3, 4, sep="-")
# Print a number using one decimal place
controller_1.screen.print(1 / 3, precision=1)
set_cursor#
set_cursor pārvieto kursoru uz norādīto rindu un kolonnu kontrollera ekrānā. Nākamā izdrukātā vērtība parādīsies šajā pozīcijā.
Usage:
controller_1.screen.set_cursor(row, col)
Parametrs |
Apraksts |
|---|---|
|
Kursora rinda no |
|
Kursora kolonna no |
# Print text at row 2, column 1
controller_1.screen.set_cursor(2, 1)
controller_1.screen.print("Ready")
column#
column atgriež pašreizējo kolonnu, kurā teksts tiks drukāts kontrollera ekrānā.
Usage:
controller_1.screen.column()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Print the current column number
controller_1.screen.set_cursor(2, 3)
controller_1.screen.print(controller_1.screen.column())
row#
row rinda atgriež pašreizējo rindu, kurā teksts tiks drukāts kontrollera ekrānā.
Usage:
controller_1.screen.row()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Print the current row number
controller_1.screen.set_cursor(2, 3)
controller_1.screen.print(controller_1.screen.row())
clear_screen#
clear_screen notīra kontrollera ekrānu un pārvieto kursoru atpakaļ sākuma pozīcijā.
Usage:
controller_1.screen.clear_screen()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Print text, then clear the Controller screen
controller_1.screen.print("VEX V5")
wait(2, SECONDS)
controller_1.screen.clear_screen()
clear_row#
clear_row notīra vienu rindu kontrollera ekrānā.
Usage:
controller_1.screen.clear_row(row)
Parametrs |
Apraksts |
|---|---|
|
Neobligāti. Rinda, kas jātīra, no |
# Clear row 2 on the Controller screen
controller_1.screen.clear_row(2)
next_row#
next_row pārvieto kursoru uz 1. kolonnu nākamajā kontrollera ekrāna rindā. Nākamā drukātā vērtība parādīsies šajā rindā.
Usage:
controller_1.screen.next_row()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Print on two rows
controller_1.screen.print("VEX V5")
controller_1.screen.next_row()
controller_1.screen.print("Controller")
Getteri#
.pressing#
.pressing , tiek atgriezts, vai pašlaik tiek nospiesta konkrēta kontrollera poga. Šī metode ir jāizsauc konkrētam pogas objektam, piemēram, controller_1.buttonA.
True— Tiek nospiesta norādītā poga.False— Norādītā poga netiek nospiesta.
Lietojums:
Ar šo metodi var izmantot vienu no pieejamajiem pogas objektiem:

Poga |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Turn right while L1 is pressed
while True:
if controller_1.buttonL1.pressing():
drivetrain.turn(RIGHT)
else:
drivetrain.stop()
wait(20, MSEC)
.position#
.position atgriež kursorsviras ass pozīciju kā skaitli no -100 līdz 100.
Šī metode ir jāizsauc konkrētam ass objektam, piemēram, controller_1.axis1.
Lietojums:
Ar šo metodi var izmantot vienu no pieejamajiem asu objektiem:

Ass |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Turn with the left joystick
remote_control_code_enabled = False
while True:
if controller_1.axis4.position() > 10:
drivetrain.turn(RIGHT)
elif controller_1.axis4.position() < -10:
drivetrain.turn(LEFT)
else:
drivetrain.stop()
wait(20, MSEC)
Atzvanīšanas#
.pressed#
.pressed palaiž funkciju, kad tiek nospiesta norādītā poga. Kad tā ir izmantota, funkcija tiks palaista automātiski katru reizi, kad tiks nospiesta šī poga.
Lietojums:
Ar šo metodi var izmantot vienu no pieejamajiem pogas objektiem:

Poga |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parametrs |
Apraksts |
|---|---|
|
Iepriekš definēta funkcija, kas tiek palaista katru reizi, kad tiek nospiesta norādītā poga. |
|
Neobligāti. Kortežs, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Notikumu izmantošana ar parametriem. |
# Drive forward when A is pressed
def drive_forward():
drivetrain.drive_for(FORWARD, 100, MM)
controller_1.buttonA.pressed(drive_forward)
.released#
.released palaiž funkciju, kad tiek atlaista norādītā poga. Kad tā ir izmantota, funkcija tiks palaista automātiski katru reizi, kad poga tiek atlaista.
Lietojums:
Ar šo metodi var izmantot vienu no pieejamajiem pogas objektiem:

Poga |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parametrs |
Apraksts |
|---|---|
|
Iepriekš definēta funkcija, kas jāizpilda katru reizi, kad tiek atlaista norādītā poga. |
|
Neobligāti. Kortežs, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Notikumu izmantošana ar parametriem. |
# Drive backward when A is released
def back_up():
drivetrain.drive_for(REVERSE, 100, MM)
controller_1.buttonA.released(back_up)
.changed#
.changed palaiž funkciju, kad mainās kursorsviras pozīcija pa norādīto asi. Kad tā tiek izmantota, funkcija darbosies automātiski katru reizi, kad mainīsies kursorsviras pozīcija pa šo asi.
Lietojums:
Ar šo metodi var izmantot vienu no pieejamajiem asu objektiem:

Ass |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
Parametrs |
Apraksts |
|---|---|
|
Iepriekš definēta funkcija, kas tiek palaista katru reizi, kad kursorsviras pozīcija mainās pa norādīto asi. |
|
Neobligāti. Kortežs, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Notikumu izmantošana ar parametriem. |
# Play a sound when the left joystick moves
def tada_sound():
brain.play_sound(SoundType.TADA)
controller_1.axis4.changed(tada_sound)
Konstruktori#
Controller#
Controller kontrolleris izveido kontroliera objektu. Kontroliera objekta manuāla izveide ir nepieciešama tikai tad, ja kontrolieris tiek konfigurēts ārpus VEXcode.
Usage:
Controller(controller_type)
Parametrs |
Apraksts |
|---|---|
|
Neobligāti. Izveidojamā kontrollera tips: |
# Create the primary Controller
controller_1 = Controller(PRIMARY)
# Create a partner Controller
controller_2 = Controller(PARTNER)