Python-kilpailumallin käyttäminen VEXcode V5:ssä

Kilpailumalli on esimerkkiprojekti, johon on jo sisällytetty komentoja kilpailujen aikana kenttäohjausjärjestelmän kanssa kommunikoimiseksi, joka varmistaa, että komennot ovat kenttäsääntöjen mukaisia, ja auttaa projektien perustamisessa komplikaatioiden ja hylkäämisen välttämiseksi ("kilpailu" viittaa VEX V5 -robotiikkakilpailutapahtumaan, jossa käytetään virallista kenttäohjauslaitteistoa).  


Avaa kilpailumalli esimerkkisivulta

VEXcode V5 -työkalurivi, jossa Tiedosto-valikko on avoinna ja Avaa esimerkit -vaihtoehto on korostettuna. Avaa esimerkit on valikon viides vaihtoehto, joka sijaitsee Uusi lohkoprojekti, Uusi tekstiprojekti, Avaa ja Avaa viimeisin -vaihtoehtojen alapuolella.


Esimerkkiprojektit-valikko Mallit-kategoriassa, jossa Kilpailumallipohjan esimerkkiprojekti on korostettuna.


Mallin kolme osiota: Esiautomaattinen, Autonominen tila ja Kuljettajan hallinta

# Aloita projektikoodi

def pre_autonomous():
  # ohjelman käynnistyessä tehtävät toiminnot
  brain.screen.clear_screen()
  brain.screen.print("autonomista edeltävä koodi")
  wait(1, SEKUNTIA)
  
def autonomous():
  brain.screen.clear_screen()
  brain.screen.print("autonominen koodi")
  # sijoita autonominen koodi tähän
  
def user_control():
  brain.screen.clear_screen()
  # sijoita ajurin ohjaus tähän while-silmukkaan
  while True:
    wait(20, MSEC)
    
# luo kilpailuinstanssi
comp = Competition(user_control, autonomous)
pre_autonomous()

Huomautus: Jotta projektisi toimisi kilpailussa, sinun on jätettävä nämä funktiot projektiisi. Lisää komentoja kommenttien osoittamiin kohtiin kullekin osiolle.


Käytä pre_autonomous -funktiota mihin tahansa asetukseen

def pre_autonomous():
  # ohjelman käynnistyessä suoritettavat toiminnot
  brain.screen.clear_screen()
  brain.screen.print("auton käynnistystä edeltävä koodi")
  wait(1, SEKUNTIA)

Funktiotapre_autonomous käytetään robotin tarvitsemiin asetuksiin, kuten gyroskoopin kalibrointiin, muuttujien asettamiseen tai muihin laiteasetuksiin. Nämä komennot suoritetaan välittömästi projektin käynnistyksen yhteydessä, ennen kuin matchin autonominen osa alkaa.

VEXcode V5 Python -kilpailumalliprojekti, jossa näkyy pre_autonomous()-funktio. Funktion määrittelyn jälkeiset sisennykset on korostettu osoittamaan, että jokainen funktion sisällä oleva rivi tulee sisentää.

Varmista, että kaikki komennot on sisennetty oikein siten, että ohjausviiva näkyy funktioidenpre_autonomous jaautonomous välissä.

Huomautus: Jos asetuksia ei tarvita, tämä funktio voi jäädä tyhjäksi.


Autonominen

def autonomous():
  brain.screen.clear_screen()
  brain.screen.print("autonominen koodi")
  # sijoita autonominen koodi tähän

Toimintoa autonominen käytetään robotin ohjaamiseen VRC-ottelun autonomisen osuuden aikana. Tämän funktion komennot suoritetaan, kun ottelu aloittaa autonomisen jakson.

VEXcode V5 Python -kilpailumalliprojekti, jossa näkyy autonomous()-funktio. Funktion määrittelyn jälkeiset sisennykset on korostettu osoittamaan, että jokainen funktion sisällä oleva rivi tulee sisentää.

Varmista, että kaikki komennot on sisennetty oikein siten, että ohjausviiva näkyy funktioidenpre_autonomous jaautonomous välissä.

Huomautus: Jos asetuksia ei tarvita, tämä funktio voi jäädä tyhjäksi.


Käyttäjähallinta

def user_control():
  brain.screen.clear_screen()
  # sijoita ajurin ohjaus tähän while-silmukkaan
  while True:
    wait(20, MSEC)

Funktiota user_control käytetään robotin ohjaamiseen VRC-ottelun kuljettajan ohjausosiossa.  Tämän funktion komennot suoritetaan, kun ottelu aloittaa kuljettajan hallintajakson.

Huomautus: Yllä on esitetty silmukka ja True , joten robotti reagoi V5-ohjaimen syötteisiin koko ottelun ajan.

VEXcode V5 Python -kilpailumalliprojekti, jossa näkyy user_control()-funktio. Useita tyhjiä, kaksinkertaisesti sisennettyjä rivejä while True -silmukan sisällä on korostettu osoittamaan, että jokainen silmukan sisällä oleva rivi tulisi sisentää kahdesti.

Varmista, että kaikki komennot on sisennetty oikein silmukan sisällä käyttäjän ohjausosaa koodatessa.while True Kahden ohjausviivan pitäisi olla näkyvissä, kuten tässä on esitetty. Yksi siksi, ettäwhile True on funktionuser_control sisällä. Toinen varmistaa, että komennot ovat silmukan sisälläwhile True.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: