Valdiklis#
Įvadas#
„VEX AIM One Stick“ valdiklis turi keturis mygtukus ir vairasvirtę. Vairasvirtę galima judinti dviem ašimis ir ją galima paspausti kaip mygtuką.
Valdiklio metodai gali būti naudojami mygtukų paspaudimams patikrinti, vairasvirtės judesiams nuskaityti, ryšiui ir akumuliatoriaus būsenai patikrinti arba funkcijoms vykdyti, kai įvyksta valdiklio įvykiai.
Žemiau pateikiamas visų metodų sąrašas:
Getteriai – nuskaito mygtuką, valdymo svirtį, ryšį ir akumuliatoriaus būseną.
.pressing— Grąžina, ar nurodytas mygtukas yra paspaudžiamas..position— Grąžina valdymo svirties padėtį išilgai nurodytos ašies.is_connected— Grąžina, ar valdiklis yra prijungtas.get_battery_level— Grąžina valdiklio akumuliatoriaus lygį.
Atgaliniai iškvietimai – vykdyti funkcijas, kai pasikeičia valdiklio įvestis.
Getteriai#
.pressing#
.pressing grąžina, ar šiuo metu paspaudžiamas konkretus valdiklio mygtukas. Šis metodas turi būti iškviestas konkrečiam mygtuko objektui, pvz., controller.button_up.
True— Paspaudžiamas nurodytas mygtukas.False— Nurodytas mygtukas nėra paspaudžiamas.
Naudojimas:
Su šiuo metodu galima naudoti vieną iš penkių galimų mygtukų objektų:
Mygtukas |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
# 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 grąžina valdymo svirties ašies padėtį kaip skaičių nuo -100 iki 100.
Šis metodas turi būti iškviestas konkrečiam ašies objektui, pvz., controller.axis1.
Naudojimas:
Su šiuo metodu galima naudoti vieną iš dviejų galimų ašių objektų:
Ašis |
Komanda |
|---|---|
|
|
|
|
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
# 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 grąžina, ar valdiklis yra prijungtas.
True— Valdiklis prijungtas.False— Valdiklis neprijungtas.
Usage:
controller.is_connected()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
# 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 grąžina valdiklio akumuliatoriaus lygį kaip skaičių nuo 0 iki 100.
Usage:
controller.get_battery_level()
Parametrai |
Aprašymas |
|---|---|
Šis metodas neturi parametrų. |
# Display the controller's battery level
robot.screen.print(controller.get_battery_level())
Atgaliniai skambučiai#
.pressed#
.pressed vykdo funkciją, kai paspaudžiamas nurodytas mygtukas. Kai jis naudojamas, funkcija bus paleista automatiškai kiekvieną kartą paspaudus tą mygtuką.
Naudojimas:
Su šiuo metodu galima naudoti vieną iš penkių galimų mygtukų objektų:
Mygtukas |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
Parametras |
Aprašymas |
|---|---|
|
Anksčiau apibrėžta function, kuri bus vykdoma kiekvieną kartą paspaudus nurodytą mygtuką. |
|
Pasirinktinai. Rinkinys su argumentais, kurie turi būti perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Įvykių su parametrais naudojimas. |
# Kick hard when the Up button is pressed
def kick_object():
robot.kicker.kick(HARD)
controller.button_up.pressed(kick_object)
.released#
.released paleidžia funkciją, kai atleidžiamas nurodytas mygtukas. Kai ji panaudojama, funkcija bus paleidžiama automatiškai kiekvieną kartą atleidus tą mygtuką.
Naudojimas:
Su šiuo metodu galima naudoti vieną iš penkių galimų mygtukų objektų:
Mygtukas |
Komanda |
|---|---|
|
|
|
|
|
|
|
|
|
|
Parametras |
Aprašymas |
|---|---|
|
Anksčiau apibrėžta function, kuri bus vykdoma kiekvieną kartą atleidus nurodytą mygtuką. |
|
Pasirinktinai. Rinkinys su argumentais, kurie turi būti perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Įvykių su parametrais naudojimas. |
# 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 vykdo funkciją, kai vairasvirtės padėtis pasikeičia išilgai nurodytos ašies. Kai ši funkcija naudojama, ji bus vykdoma automatiškai kiekvieną kartą, kai vairasvirtės padėtis pasikeičia išilgai tos ašies.
Naudojimas:
Su šiuo metodu galima naudoti vieną iš dviejų galimų ašių objektų:
Ašis |
Komanda |
|---|---|
|
|
|
|
Parametras |
Aprašymas |
|---|---|
|
Anksčiau apibrėžta function, kuri paleidžiama kiekvieną kartą, kai vairasvirtės padėtis pasikeičia išilgai nurodytos ašies. |
|
Pasirinktinai. Rinkinys su argumentais, kurie turi būti perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Įvykių su parametrais naudojimas. |
# Show an emoji when the joystick moves up or down
def move_joystick():
robot.screen.show_emoji(CONFUSED)
controller.axis1.changed(move_joystick)