മത്സരങ്ങൾ നടക്കുമ്പോൾ ഫീൽഡ് കൺട്രോൾ സിസ്റ്റവുമായി ആശയവിനിമയം നടത്തുന്നതിന് കമാൻഡുകൾ ഇതിനകം ഉൾപ്പെടുത്തിയിട്ടുള്ളതും, കമാൻഡുകൾ ഫീൽഡ് നിയന്ത്രണങ്ങൾ പാലിക്കുന്നുണ്ടെന്ന് ഉറപ്പാക്കുന്നതും, സങ്കീർണതകളും അയോഗ്യതയും ഒഴിവാക്കാൻ പ്രോജക്ടുകൾ സജ്ജീകരിക്കുന്നതിൽ സഹായിക്കുന്നതുമായ ഒരു ഉദാഹരണ പ്രോജക്റ്റാണ് മത്സര ടെംപ്ലേറ്റ് ("മത്സരം" എന്നത് ഔദ്യോഗിക ഫീൽഡ് കൺട്രോൾ ഹാർഡ്വെയർ ഉപയോഗിക്കുന്ന ഒരു VEX V5 റോബോട്ടിക്സ് മത്സര പരിപാടിയെ സൂചിപ്പിക്കുന്നു).
ഉദാഹരണങ്ങൾ പേജിൽ നിന്ന് മത്സര ടെംപ്ലേറ്റ് തുറക്കുക.
ടെംപ്ലേറ്റിലെ മൂന്ന് വിഭാഗങ്ങൾ: പ്രീ-ഓട്ടോണമസ്, ഓട്ടോണമസ് മോഡ്, ഡ്രൈവർ കൺട്രോൾ
# പ്രൊജക്റ്റ് കോഡ് ആരംഭിക്കുക
def pre_autonomous():
# പ്രോഗ്രാം ആരംഭിക്കുമ്പോൾ ചെയ്യേണ്ട പ്രവർത്തനങ്ങൾ
brain.screen.clear_screen()
brain.screen.print("pre autonomous code")
wait(1, SECONDS)
def autonomous():
brain.screen.clear_screen()
brain.screen.print("autonomous code")
# ഇവിടെ autonomous code സ്ഥാപിക്കുക
def user_control():
brain.screen.clear_screen()
# while loop
ൽ ഡ്രൈവർ നിയന്ത്രണം സ്ഥാപിക്കുക while True:
wait(20, MSEC)
# create competition instance
comp = Competition(user_control, autonomous)
pre_autonomous()
കുറിപ്പ്: നിങ്ങളുടെ പ്രോജക്റ്റ് ഒരു മത്സരത്തിൽ പ്രവർത്തിക്കണമെങ്കിൽ, ഈ ഫംഗ്ഷനുകൾ നിങ്ങളുടെ പ്രോജക്റ്റിൽ ഉപേക്ഷിക്കണം. ഓരോ വിഭാഗത്തിനും അഭിപ്രായങ്ങൾ സൂചിപ്പിക്കുന്നിടത്ത് കമാൻഡുകൾ ചേർക്കുക.
ഏതൊരു സജ്ജീകരണത്തിനും pre_autonomous ഫംഗ്ഷൻ ഉപയോഗിക്കുക.
def pre_autonomous():
# പ്രോഗ്രാം ആരംഭിക്കുമ്പോൾ ചെയ്യേണ്ട പ്രവർത്തനങ്ങൾ
brain.screen.clear_screen()
brain.screen.print("pre auton code")
wait(1, SECONDS)
നിങ്ങളുടെ റോബോട്ടിന് ആവശ്യമായി വന്നേക്കാവുന്ന ഏതൊരു സജ്ജീകരണത്തിനുംപ്രീ_ഓട്ടോണമസ് ഫംഗ്ഷൻ ഉപയോഗിക്കുന്നു, ഉദാഹരണത്തിന് ഒരു ഗൈറോ കാലിബ്രേറ്റ് ചെയ്യുക, വേരിയബിളുകൾ സജ്ജമാക്കുക, അല്ലെങ്കിൽ മറ്റ് ഉപകരണ ക്രമീകരണങ്ങൾ. പ്രോജക്റ്റ് ആരംഭിക്കുമ്പോൾ തന്നെ, മത്സരത്തിന്റെ സ്വയംഭരണ ഭാഗം ആരംഭിക്കുന്നതിന് മുമ്പ് ഈ കമാൻഡുകൾ പ്രവർത്തിക്കും.
pre_autonomous നുംautonomous ഫംഗ്ഷനുകൾക്കും ഇടയിൽ ഗൈഡിംഗ് ലൈൻ ദൃശ്യമാകുന്ന തരത്തിൽ എല്ലാ കമാൻഡുകളും ശരിയായി ഇൻഡന്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
കുറിപ്പ്: സജ്ജീകരണമൊന്നും ആവശ്യമില്ലെങ്കിൽ, ഈ ഫംഗ്ഷൻ ശൂന്യമായി തുടരാം.
സ്വയംഭരണാധികാരം
def autonomous():
brain.screen.clear_screen()
brain.screen.print("autonomous code")
# ഇവിടെ autonomous code സ്ഥാപിക്കുക
ഒരു VRC മത്സരത്തിന്റെ ഓട്ടോണമസ് ഭാഗത്ത് നിങ്ങളുടെ റോബോട്ടിനെ നിയന്ത്രിക്കുന്നതിന് ഓട്ടോണമസ് ഫംഗ്ഷൻ ഉപയോഗിക്കുന്നു. മത്സരം ഓട്ടോണമസ് പിരീഡ് ആരംഭിക്കുമ്പോൾ ഈ ഫംഗ്ഷനിലെ കമാൻഡുകൾ പ്രവർത്തിക്കും.
pre_autonomous നുംautonomous ഫംഗ്ഷനുകൾക്കും ഇടയിൽ ഗൈഡിംഗ് ലൈൻ ദൃശ്യമാകുന്ന തരത്തിൽ എല്ലാ കമാൻഡുകളും ശരിയായി ഇൻഡന്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
കുറിപ്പ്: സജ്ജീകരണമൊന്നും ആവശ്യമില്ലെങ്കിൽ, ഈ ഫംഗ്ഷൻ ശൂന്യമായി തുടരാം.
ഉപയോക്തൃ നിയന്ത്രണം
def user_control():
brain.screen.clear_screen()
# ഡ്രൈവർ നിയന്ത്രണം while ലൂപ്പ്
ൽ സ്ഥാപിക്കുക, True:
wait(20, MSEC)
ഒരു VRC മാച്ചിന്റെ ഡ്രൈവർ കൺട്രോൾ ഭാഗത്ത് നിങ്ങളുടെ റോബോട്ടിനെ നിയന്ത്രിക്കുന്നതിന് user_control ഫംഗ്ഷൻ ഉപയോഗിക്കുന്നു. ഡ്രൈവർ കൺട്രോൾ കാലയളവിൽ മത്സരം ആരംഭിക്കുമ്പോൾ ഈ ഫംഗ്ഷനിലെ കമാൻഡുകൾ പ്രവർത്തിക്കും.
കുറിപ്പ്: ഉം True ലൂപ്പ് മുകളിൽ കാണിച്ചിരിക്കുന്നതിനാൽ മത്സരത്തിന്റെ മുഴുവൻ സമയത്തും റോബോട്ട് V5 കൺട്രോളറിൽ നിന്നുള്ള ഇൻപുട്ടിനോട് പ്രതികരിക്കും.
ഉപയോക്തൃ നിയന്ത്രണ ഭാഗം കോഡ് ചെയ്യുമ്പോൾ എല്ലാ കമാൻഡുകളുംലൂപ്പിലും True ലൂപ്പിലും ശരിയായി ഇൻഡന്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക. ഇവിടെ കാണിച്ചിരിക്കുന്നതുപോലെ രണ്ട് ഗൈഡിംഗ് ലൈനുകൾ ദൃശ്യമായിരിക്കണം. ഒന്ന്ഉം Trueuser_control ഫംഗ്ഷനുള്ളിലായതിനാൽ. മറ്റൊന്ന് കമാൻഡുകൾലൂപ്പിലും True ലൂപ്പിലും ആണെന്ന് ഉറപ്പാക്കാൻ.