Kontrolieris#
Ievads#
VEX AIM One Stick kontrolierim ir četras pogas un kursorsvira. Kursorsviru var pārvietot pa divām asīm un to var arī nospiest kā pogu.
Kontroliera metodes var izmantot, lai pārbaudītu pogu nospiešanas reizes, nolasītu kursorsviras kustību, pārbaudītu savienojumu un akumulatora stāvokli vai palaistu funkcijas, kad notiek kontroliera notikumi.
Zemāk ir visu metožu saraksts:
Ieguvēji — nolasa pogu, kursorsviru, savienojumu un akumulatora statusu.
.pressing— Atgriež, vai tiek nospiesta norādītā poga..position— Atgriež kursorsviras pozīciju pa norādīto asi.is_connected— Atgriež, vai kontrolieris ir pievienots.get_battery_level— Atgriež kontroliera akumulatora līmeni.
Atzvanīšanas funkcijas — palaist funkcijas, kad mainās kontrollera ievade.
Getteri#
.pressing#
.pressing atgriež, vai pašlaik tiek nospiesta konkrēta poga uz kontrollera. Šī metode ir jāizsauc konkrētam pogas objektam, piemēram, controller.button_up.
True— Tiek nospiesta norādītā poga.False— Norādītā poga netiek nospiesta.
Lietojums:
Ar šo metodi var izmantot vienu no pieciem pieejamajiem pogu objektiem:
Poga |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Move forward while the Up button is being pressed
while True:
if controller.button_up.pressing():
robot.move_at(0)
else:
robot.stop_all_movement()
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.axis1.
Lietojums:
Ar šo metodi var izmantot vienu no diviem pieejamajiem asu objektiem:
Ass |
Komanda |
|---|---|
|
|
|
|
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Move forward when the joystick is moved up
while True:
if controller.axis1.position() > 0:
robot.move_at(0)
else:
robot.stop_all_movement()
wait(20, MSEC)
is_connected#
is_connected atgriež, vai kontrolieris ir pievienots.
True— Kontrolieris ir pievienots.False— Kontrolieris nav pievienots.
Usage:
controller.is_connected()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Stop the robot if the controller disconnects
robot.move_at(0)
while True:
if not controller.is_connected():
robot.stop_all_movement()
wait(100, MSEC)
get_battery_level#
get_battery_level atgriež kontroliera akumulatora līmeni kā skaitli no 0 līdz 100.
Usage:
controller.get_battery_level()
Parametri |
Apraksts |
|---|---|
Šai metodei nav parametru. |
# Display the controller's battery level
robot.screen.print(controller.get_battery_level())
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 pieciem pieejamajiem pogu 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. |
# Kick hard when the Up button is pressed
def kick_object():
robot.kicker.kick(HARD)
controller.button_up.pressed(kick_object)
.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 pieciem pieejamajiem pogu 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. |
# Clear the screen after the Up button is released
def clear_screen():
robot.screen.clear_screen()
controller.button_up.released(clear_screen)
robot.screen.print("Press Up, then")
robot.screen.next_row()
robot.screen.print("Release 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ās kursorsviras pozīcija pa šo asi.
Lietojums:
Ar šo metodi var izmantot vienu no diviem 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. |
# Show an emoji when the joystick moves up or down
def move_joystick():
robot.screen.show_emoji(CONFUSED)
controller.axis1.changed(move_joystick)