VEXcode V5-ലെ കസ്റ്റം കൺട്രോളർ കോഡ്

കൺട്രോളർ ഉപയോഗിക്കുന്നത് നിങ്ങളുടെ റോബോട്ടിനെ ഡ്രൈവ് ചെയ്യുന്നതും ഒരു ടാസ്‌ക് പൂർത്തിയാക്കാൻ നീക്കുന്നതും എളുപ്പമാക്കുന്നു. എന്നിരുന്നാലും, ഡ്രൈവ് പ്രോഗ്രാം ഉപയോഗിക്കുന്നതിന് പരിമിതികളുണ്ട്, നിങ്ങളുടെ റോബോട്ട് ബിൽഡിനെയോ അല്ലെങ്കിൽ നിങ്ങളുടെ ചുമതലയെയോ ആശ്രയിച്ച്, നിങ്ങൾക്ക് വ്യത്യസ്ത നിയന്ത്രണങ്ങൾ ആവശ്യമായി വന്നേക്കാം. കൺട്രോളർ കോഡ് ചെയ്യുന്നത് നിങ്ങളുടെ റോബോട്ടിനും നിങ്ങളുടെ ചുമതലയ്ക്കും കൂടുതൽ അനുയോജ്യമാക്കുന്നതിന് കൺട്രോളർ ഒപ്റ്റിമൈസ് ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു. VEXcode V5-ൽ കൺട്രോളർ കോഡ് ചെയ്യാൻ നിരവധി മാർഗങ്ങളുണ്ട്. ഓരോന്നിനും അതിന്റേതായ ഗുണങ്ങളും പരിമിതികളുമുണ്ട്, കൂടാതെ ചില രീതികൾ ആവശ്യമുള്ള ഫലത്തെ ആശ്രയിച്ച് ചില സാഹചര്യങ്ങൾക്ക് കൂടുതൽ അനുയോജ്യമാണ്.

VEXcode V5-ൽ കൺട്രോളർ കോഡ് ചെയ്യുന്നതിനുള്ള മൂന്ന് വ്യത്യസ്ത ഓപ്ഷനുകളിലൂടെ ഈ ലേഖനം നിങ്ങളെ കൊണ്ടുപോകും. ഓരോ രീതിയും അതിന്റെ ഗുണങ്ങൾ, പരിമിതികൾ, ഒരു രീതി തിരഞ്ഞെടുക്കുമ്പോൾ നിങ്ങളെ നയിക്കാൻ സഹായിക്കുന്ന ഉപയോഗ സാഹചര്യത്തിന്റെ ഉദാഹരണം എന്നിവ ഉപയോഗിച്ച് വിവരിക്കുന്നതാണ്. ഈ ലേഖനത്തിന്റെ ഉദ്ദേശ്യങ്ങൾക്കായി, കാണിച്ചിരിക്കുന്ന എല്ലാ കോഡ് ഉദാഹരണങ്ങളും ക്ലോബോട്ടിനായി സൃഷ്ടിച്ചതാണ്. എന്നിരുന്നാലും, builds.vex.comൽ കാണപ്പെടുന്ന മറ്റ് നിരവധി ബിൽഡുകളിലും ഇഷ്‌ടാനുസൃത ബിൽഡുകളിലും ഇതേ ആശയങ്ങൾ പ്രയോഗിക്കാൻ കഴിയും.

ഓപ്ഷൻ 1: ഉപകരണ കോൺഫിഗറേഷനിൽ ബട്ടണുകൾ നൽകൽ

സ്പീഡ്ബോട്ട് അല്ലെങ്കിൽ ക്ലോബോട്ട് പോലുള്ള ഒരു സ്റ്റാൻഡേർഡ് ബിൽഡ് ഉപയോഗിക്കുകയും വേഗത്തിൽ പ്രവർത്തിപ്പിക്കാൻ ആഗ്രഹിക്കുകയും ചെയ്യുമ്പോൾ ഈ ഓപ്ഷൻ മികച്ചതാണ്.

ഉപകരണ കോൺഫിഗറേഷനിലെ കൺട്രോളറിലെ ബട്ടണുകളിലേക്ക് മോട്ടോറുകൾ, ഒരു ഡ്രൈവ്ട്രെയിൻ അല്ലെങ്കിൽ മോട്ടോർ ഗ്രൂപ്പുകൾ എന്നിവ നിയോഗിക്കാൻ ഈ ഓപ്ഷൻ നിങ്ങളെ അനുവദിക്കുന്നു. ഡിവൈസ് കോൺഫിഗറേഷനിൽ കൺട്രോളറിലേക്ക് ബട്ടണുകൾ എങ്ങനെ നൽകാം എന്നതിനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, ഈ ലേഖനം കാണുക.

ബ്ലോക്ക് അധിഷ്ഠിത കോഡിംഗ് ട്യൂട്ടോറിയലുകൾ മനസ്സിലാക്കാൻ സഹായിക്കുന്നതിന്, പ്രോഗ്രാമിംഗിനായി V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം, വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും ഒരു വിഷ്വൽ ഫോർമാറ്റിൽ പ്രദർശിപ്പിക്കുന്നു.

ഓപ്ഷൻ 1 ന്റെ സംഗ്രഹം: ഉപകരണ കോൺഫിഗറേഷനിൽ ബട്ടണുകൾ നൽകൽ

പ്രയോജനങ്ങൾ

പരിമിതികൾ

ഉദാഹരണ സാഹചര്യം

  • കോഡിംഗ് ആവശ്യമില്ലാത്ത ദ്രുത സജ്ജീകരണം
  • ഏറ്റവും ലളിതമായ രീതി
  • എളുപ്പത്തിൽ ക്രമീകരിക്കാവുന്നതാണ്
  • ബട്ടണുകൾക്ക് വ്യക്തിഗത മോട്ടോറുകൾ, ഒരു സ്റ്റാൻഡേർഡ് ഡ്രൈവ്ട്രെയിൻ, മോട്ടോർ ഗ്രൂപ്പുകൾ എന്നിവ നൽകാൻ കഴിയും.
  • കൺട്രോളറിലെ ബട്ടണുകളുടെ എണ്ണത്തിലേക്ക് ബട്ടൺ അസൈൻമെന്റുകൾ പരിമിതപ്പെടുത്തിയിരിക്കുന്നു.
  • ഡ്രൈവ്‌ട്രെയിൻ 4 മോട്ടോറുകളിൽ കൂടുതലാകരുത് അല്ലെങ്കിൽ ഇഷ്ടാനുസൃതമാക്കാൻ പാടില്ല (ഒരു സ്റ്റാൻഡേർഡ് ഡ്രൈവ് മാത്രമേ പിന്തുണയ്ക്കൂ, ഒരു H ഡ്രൈവ്, ഹോളോണമിക് അല്ലെങ്കിൽ മറ്റ് ഇഷ്ടാനുസൃത ഡ്രൈവ്‌ട്രെയിൻ പിന്തുണയ്ക്കുന്നില്ല)
  • സ്പീഡ്ബോട്ട്, ക്ലോബോട്ട് പോലുള്ള ഒരു സ്റ്റാൻഡേർഡ് ബിൽഡ് കൈകാര്യം ചെയ്യൽ അല്ലെങ്കിൽ ആ സ്റ്റാൻഡേർഡ് ബിൽഡുകളുടെ ലളിതമായ പരിഷ്ക്കരണം. ഉദാഹരണത്തിന്, ഒരു മോട്ടോർ ഗ്രൂപ്പ് നിയന്ത്രിക്കുന്ന മുൻവശത്ത് ഇൻടേക്ക് ഘടിപ്പിച്ചിരിക്കുന്ന ഒരു സ്പീഡ്ബോട്ട്.
  • റോബോട്ടിലെ വ്യത്യസ്ത പെരുമാറ്റങ്ങളുമായി പൊരുത്തപ്പെടുന്ന ബട്ടണുകൾ ഏതൊക്കെയാണെന്ന് അധികം കോഡിംഗ് ഇല്ലാതെ വേഗത്തിൽ കൈകാര്യം ചെയ്യുന്നു.

ഓപ്ഷൻ 2: ഒരു ഫോറെവർ ലൂപ്പ് ഉപയോഗിക്കുന്നു

നിങ്ങൾ ഒരു സ്റ്റാൻഡേർഡ് ബിൽഡിന് പകരം ഒരു കസ്റ്റം ബിൽഡ് ഉപയോഗിക്കുകയാണെങ്കിൽ, അല്ലെങ്കിൽ നിങ്ങളുടെ കൺട്രോളറിൽ കൂടുതൽ ഇച്ഛാനുസൃതമാക്കൽ സാധ്യമാക്കാൻ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഈ ഓപ്ഷൻ നല്ലതാണ്. നിങ്ങളുടെ കൺട്രോളറിനായി ഇഷ്ടാനുസൃത കോഡ് സൃഷ്ടിക്കുന്നതിനുള്ള ഒരു മികച്ച ആമുഖമാണ് ഫോറെവർ ലൂപ്പ് ഉപയോഗിക്കുന്നത്.

ഈ ഓപ്ഷൻ കൺട്രോളറിനും അനുബന്ധ ബട്ടണുകൾക്കുമുള്ള എല്ലാ അവസ്ഥകളും ഒരു ഫോറെവർ ലൂപ്പിൽ സ്ഥാപിക്കുന്നു. ഇത് കൂടുതൽ വഴക്കം നൽകുന്നു, പ്രത്യേകിച്ച് ഇഷ്ടാനുസൃത ബിൽഡ് ഡിസൈനുകളിൽ, പക്ഷേ കുറച്ച് കോഡിംഗ് അനുഭവവും ആവശ്യമാണ്. എന്നിരുന്നാലും, ഈ ഓപ്ഷൻ ഉപയോഗിക്കുമ്പോൾ പരിഗണിക്കേണ്ട ഒരു കാര്യം, നിങ്ങളുടെ പ്രോജക്റ്റിന്റെ ദൈർഘ്യവും സങ്കീർണ്ണതയുമാണ്. കൂടുതൽ കണ്ടീഷനുകൾ ചേർക്കുന്തോറും കോഡ് സ്റ്റാക്കിന്റെ നീളം കൂടും. ഇതിനർത്ഥം ഒന്നിലധികം ബ്ലോക്കുകൾ ക്രമത്തിൽ നടപ്പിലാക്കേണ്ടിവരുമെന്നാണ്, കൂടാതെ ധാരാളം ബ്ലോക്കുകൾ ഉള്ളപ്പോൾ, ഇത് പ്രോജക്റ്റ് നിർവ്വഹണത്തെ മന്ദഗതിയിലാക്കിയേക്കാം. മന്ദഗതിയിലുള്ള പ്രോജക്റ്റ് നിർവ്വഹണം കൺട്രോളർ ബട്ടണുകൾ അമർത്തുന്നതിനും റോബോട്ട് സ്വഭാവം കാണുന്നതിനും ഇടയിൽ ഒരു കാലതാമസം സൃഷ്ടിച്ചേക്കാം.

താഴെ കാണിച്ചിരിക്കുന്ന പ്രത്യേക ഉദാഹരണം, ഒരു കസ്റ്റം ഡിസൈൻ റോബോട്ടുള്ള (ഒരു കസ്റ്റം ഡ്രൈവ്ട്രെയിനുള്ള ഒരു റോബോട്ട് പോലുള്ളവ) ഒരു ഫോറെവർ ലൂപ്പ് ഉപയോഗിച്ച് റോബോട്ടിനെ ഓടിക്കാനും വസ്തുക്കളുമായി ഇടപഴകുന്നതിന് നഖവും കൈയും കൈകാര്യം ചെയ്യാനും ഉപയോഗിക്കാവുന്ന ഒരു മാർഗമാണ്.

VEX റോബോട്ടിക്സ് പ്രോഗ്രാമിംഗിനെക്കുറിച്ച് മെച്ചപ്പെട്ട ധാരണയ്ക്കായി വ്യക്തവും സംഘടിതവുമായ ലേഔട്ടിൽ വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്ന V5 ബ്ലോക്ക് ട്യൂട്ടോറിയലുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം.

"ഓപ്ഷൻ 2" VEXcode V5 പ്രോജക്റ്റ് ഫയൽ >ഡൗൺലോഡ് ചെയ്യുക.

ഓപ്ഷൻ 2 കോഡിന്റെ വിശദീകരണം.

കോഡ് പീസ്

വിശദീകരണം

വിദ്യാഭ്യാസ ആവശ്യങ്ങൾക്കായി വിവിധ ബ്ലോക്ക് തരങ്ങളും കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്ന, ട്യൂട്ടോറിയൽ ഫോർമാറ്റിൽ V5 ബ്ലോക്ക് ഘടകങ്ങളും അവയുടെ പ്രവർത്തനങ്ങളും ചിത്രീകരിക്കുന്ന ഡയഗ്രം.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

VEX നോളജ് ബേസിലെ ബ്ലോക്ക്സ് ട്യൂട്ടോറിയൽ വിഭാഗത്തിൽ ഉപയോഗിച്ചിരിക്കുന്ന V5 ബ്ലോക്ക് ഘടകങ്ങളും അവയുടെ പ്രവർത്തനങ്ങളും ചിത്രീകരിക്കുന്ന ഡയഗ്രം, വിദ്യാഭ്യാസ ആവശ്യങ്ങൾക്കായി വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്നു. VEX റോബോട്ടിക്സിലെ ബ്ലോക്ക് പ്രോഗ്രാമിംഗ് മനസ്സിലാക്കുന്നതിനുള്ള ട്യൂട്ടോറിയലുകളിൽ ഉപയോഗിക്കുന്ന, ലേബൽ ചെയ്ത ഘടകങ്ങളും കണക്ഷനുകളും ഉള്ള V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

കൺട്രോളറിൽ ഏതൊക്കെ ബട്ടണുകൾ അമർത്തുന്നുവെന്ന് തുടർച്ചയായി പരിശോധിക്കുന്നതിന് ഒരു ഫോറെവർ ലൂപ്പ് ഉപയോഗിക്കുന്നു.

[മോട്ടോർ പ്രവേഗം സജ്ജമാക്കുക] ബ്ലോക്കുകൾ മോട്ടോർ പ്രവേഗം 2 ഉം 3 ഉം അക്ഷങ്ങളിൽ നിലവിലെ കൺട്രോളറിന്റെ സ്ഥാനത്തേക്ക് സജ്ജമാക്കാൻ ഉപയോഗിക്കുന്നു. ഇത് ഒരു കാർ ഡ്രൈവ് ചെയ്യാൻ സജ്ജമാക്കുന്നതിന് തുല്യമാണ്. അത് കാറിനെ ചലിപ്പിക്കണമെന്നില്ല, മറിച്ച് അത് നേരെയാക്കുക മാത്രമാണ് ചെയ്യുന്നത്.

ഓരോ ജോയിസ്റ്റിക്ക് അച്ചുതണ്ടും -100 നും +100 നും ഇടയിലുള്ള ഒരു മൂല്യം നൽകുന്നു, കേന്ദ്രീകരിക്കുമ്പോൾ പൂജ്യം മൂല്യം നൽകുന്നു. ഇതിനർത്ഥം ജോയിസ്റ്റിക്ക് അക്ഷങ്ങൾ തള്ളുമ്പോൾ -100% മുതൽ 100% വരെ തുല്യമാണ് എന്നാണ്. 100 അല്ലെങ്കിൽ -100 ലേക്ക് അച്ചുതണ്ടുകൾ കൂടുതൽ തള്ളപ്പെടുന്തോറും മോട്ടോർ വേഗത്തിൽ കറങ്ങും.

[സ്പിൻ] ബ്ലോക്ക് പിന്നീട് മോട്ടോർ ചലിപ്പിക്കാൻ ഉപയോഗിക്കുന്നു. ദിശ സജ്ജീകരിച്ചുകഴിഞ്ഞാൽ കാറിൽ ഗ്യാസ് അമർത്തുന്നതിന് തുല്യമാണിത്. ഇത് ഓരോ മോട്ടോറിനെയും നാല് കൺട്രോളർ അക്ഷങ്ങളിൽ ഒന്ന് ഉപയോഗിച്ച് നിയന്ത്രിക്കാൻ അനുവദിക്കുന്നു.

വിദ്യാഭ്യാസ സന്ദർഭങ്ങളിൽ കോഡിംഗ് ആശയങ്ങളെക്കുറിച്ചുള്ള ഗ്രാഹ്യം വർദ്ധിപ്പിക്കുന്നതിനായി രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്ന, വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്ന, പ്രോഗ്രാമിംഗ് ട്യൂട്ടോറിയലുകൾക്കായുള്ള V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

കൺട്രോളറിൽ അമർത്തുന്നതോ റിലീസ് ചെയ്യുന്നതോ ആയ ബട്ടണുകളിലേക്ക് ചില പെരുമാറ്റങ്ങളെ മാപ്പ് ചെയ്യാൻ [If then else if then else] ബ്ലോക്ക് ഉപയോഗിക്കുന്നു. ഈ കോഡ് വിഭാഗത്തിൽ, മുകളിലേക്കോ താഴേക്കോ ബട്ടണുകൾ അമർത്തിയാൽ വ്യവസ്ഥകൾ സജ്ജീകരിച്ചിരിക്കുന്നു. അങ്ങനെയാണെങ്കിൽ, കൈ ഉയർത്തുക, താഴ്ത്തുക തുടങ്ങിയ ചില പെരുമാറ്റങ്ങൾ സംഭവിക്കും. ഈ അവസ്ഥയുടെ മറ്റൊരു ഭാഗമുണ്ട്, ഒരു ബട്ടണും അമർത്തിയില്ലെങ്കിൽ, കൈ ചലനം നിർത്താൻ സജ്ജമാക്കിയിരിക്കുന്നു.

ക്ലോവിനായുള്ള പ്രോജക്റ്റിലെ കോഡിന്റെ ഇനിപ്പറയുന്ന വിഭാഗം അതേ വിശദീകരണം പിന്തുടരുന്നുവെന്ന് ശ്രദ്ധിക്കുക.

ഓപ്ഷൻ 2 ന്റെ സംഗ്രഹം: ഒരു ഫോറെവർ ലൂപ്പ് ഉപയോഗിക്കുന്നു

പ്രയോജനങ്ങൾ

പരിമിതികൾ

ഉദാഹരണ സാഹചര്യം

  • ഇഷ്ടാനുസൃത ബിൽഡുകൾ, പ്രത്യേകിച്ച് 4-ൽ കൂടുതൽ മോട്ടോറുകളുള്ള ഡ്രൈവ്‌ട്രെയിനുകൾ എന്നിവ ഉൾക്കൊള്ളാൻ കഴിയും.
  • ഒരൊറ്റ ബട്ടണിലേക്ക് ഒന്നിലധികം പെരുമാറ്റങ്ങൾ നൽകാം
  • കൺട്രോളറിലെ വ്യത്യസ്ത അക്ഷങ്ങളിലേക്ക് പെരുമാറ്റങ്ങൾ നിയോഗിക്കാൻ കഴിയും (ഉപകരണ കോൺഫിഗറേഷനിലെ ലെഫ്റ്റ് ആർക്കേഡ്, റൈറ്റ് ആർക്കേഡ്, സ്പ്ലിറ്റ് ആർക്കേഡ്, ടാങ്ക് ഡ്രൈവ് എന്നിവയുടെ ഏക ഓപ്ഷനുകൾക്ക് വിരുദ്ധമായി)
  • കുറച്ച് കോഡിംഗ് പരിജ്ഞാനം ആവശ്യമാണ് (കണ്ടീഷണലുകൾ, ലൂപ്പുകൾ, കൺട്രോളറിലെ ബട്ടണുകൾ/ജോയ്സ്റ്റിക്കുകൾ എന്നിവയെക്കുറിച്ചുള്ള അറിവ്)
  • പ്രോജക്റ്റ് നിർവ്വഹണം മന്ദഗതിയിലാകാനുള്ള സാധ്യത, അല്ലെങ്കിൽ ബട്ടൺ പ്രതികരണ സമയത്തിലെ കാലതാമസം. എല്ലാ കമാൻഡുകളും ഒരൊറ്റ ഫോറെവർ ലൂപ്പിൽ അടങ്ങിയിരിക്കുന്നതിനാൽ, കോഡിന്റെ ദൈർഘ്യവും വ്യവസ്ഥകളും അനുസരിച്ച് കോഡ് എക്സിക്യൂഷൻ സാവധാനത്തിൽ പ്രവർത്തിക്കും.
  • ഒരു ഇഷ്ടാനുസൃതമായി നിർമ്മിച്ച റോബോട്ടിനൊപ്പം, പ്രത്യേകിച്ച് നിലവാരമില്ലാത്ത ഡ്രൈവ്‌ട്രെയിനിൽ, കൺട്രോളർ ഉപയോഗിക്കുന്നത്
  • ഒരൊറ്റ ബട്ടണിലേക്ക് ഒന്നിലധികം പെരുമാറ്റങ്ങൾ നിയോഗിക്കാൻ ആഗ്രഹിക്കുമ്പോൾ. ഉദാഹരണത്തിന്, മുകളിലേക്കുള്ള ബട്ടൺ അമർത്തുമ്പോൾ, നഖത്തിന് ഒരു വസ്തുവിന് ചുറ്റും തുറക്കാനും മുന്നോട്ട് നീങ്ങാനും അടയ്ക്കാനും കഴിയും.

ഓപ്ഷൻ 3: ഇവന്റുകൾ ഉപയോഗിക്കൽ

നിങ്ങളുടെ കൺട്രോളറിൽ ധാരാളം ഇഷ്ടാനുസൃതമാക്കൽ ആവശ്യമുണ്ടെങ്കിൽ, ഇവന്റുകൾ ഉപയോഗിക്കുക എന്നതാണ് നിങ്ങൾക്ക് ഏറ്റവും നല്ല ഓപ്ഷൻ. ഒരു ബട്ടൺ അമർത്തുന്നത് തന്നെ ഒന്നിലധികം റോബോട്ടുകളുടെ പെരുമാറ്റങ്ങൾക്ക് കാരണമാകും, ഉദാഹരണത്തിന് ഒരു ബട്ടൺ അമർത്തി നഖം തുറക്കുക, കൈ ഉയർത്തുക, ഒരു നിശ്ചിത ദൂരം മുന്നോട്ട് ഓടിക്കുക. ഒരു ഫോറെവർ ലൂപ്പിനുള്ളിൽ ഒരു ബട്ടണിൽ ഒന്നിലധികം പെരുമാറ്റങ്ങൾ കോഡ് ചെയ്യാൻ ശ്രമിക്കുന്നത് പ്രോജക്റ്റ് നിർവ്വഹണം ഗണ്യമായി മന്ദഗതിയിലാക്കാൻ കാരണമാകും - ഇവന്റുകൾ ഉപയോഗിക്കുന്നത് ഇത് കൂടുതൽ ഫലപ്രദമായി ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു.

പ്രോജക്റ്റ് ഫ്ലോ വിഭജിക്കാൻ ഈ ഓപ്ഷൻ ഇവന്റുകൾ ഉപയോഗിക്കുന്നു. ഇത് ഫോറെവർ ലൂപ്പ് ഉപയോഗിക്കുന്നതിന് സമാനമാണ്, പക്ഷേ കോഡ് കൂടുതൽ ചിട്ടപ്പെടുത്താൻ അനുവദിക്കുന്നു, അതുവഴി ബട്ടൺ എക്സിക്യൂഷന് വേഗത്തിലുള്ള പ്രതികരണ സമയം ലഭിക്കും. വേഗതയേറിയ പ്രതികരണ സമയം എന്നതിനർത്ഥം കൺട്രോളർ ബട്ടണുകൾ അമർത്തുന്നതിനും റോബോട്ട് സ്വഭാവം കാണുന്നതിനും ഇടയിൽ ഒരു കാലതാമസവും നിങ്ങൾ കാണില്ല എന്നാണ്. ഈ ഉദാഹരണം മുമ്പത്തെ പ്രോജക്റ്റിന്റെ അതേ പെരുമാറ്റരീതികൾ കാണിക്കുന്നു, പക്ഷേ ഫോറെവർ ലൂപ്പിന് പകരം ഇവന്റുകൾ ഉപയോഗിച്ചാണ് ഇത് ചെയ്യുന്നത്.

ട്യൂട്ടോറിയലുകളിൽ ഉപയോഗിക്കുന്ന V5 ബ്ലോക്കുകളുടെ ചിത്രീകരണം, വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും പ്രദർശിപ്പിക്കൽ, VEX V5 റോബോട്ടിക്സ് ഉപയോഗിച്ച് എങ്ങനെ നിർമ്മിക്കാമെന്നും പ്രോഗ്രാം ചെയ്യാമെന്നും പ്രദർശിപ്പിക്കൽ.

"ഓപ്ഷൻ 3" VEXcode V5 പ്രോജക്റ്റ് ഫയൽ >ഡൗൺലോഡ് ചെയ്യുക.

ഓപ്ഷൻ 3 കോഡിന്റെ വിശദീകരണം.

കോഡ് പീസ്

വിശദീകരണം

റോബോട്ടിക്സ് ട്യൂട്ടോറിയലുകളിൽ ഉപയോഗിക്കുന്ന വിവിധ V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം, വിദ്യാഭ്യാസ ആവശ്യങ്ങൾക്കായി അവയുടെ പ്രവർത്തനങ്ങളും കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്നു.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

ഒരു റോബോട്ടിക്സ് ട്യൂട്ടോറിയലിൽ V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം, പ്രോഗ്രാമിംഗ് ജോലികൾക്കായുള്ള വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ കണക്ഷനുകളും പ്രദർശിപ്പിക്കുന്നു. VEX റോബോട്ടിക്സിലെ ബ്ലോക്ക് പ്രോഗ്രാമിംഗ് മനസ്സിലാക്കുന്നതിനുള്ള ട്യൂട്ടോറിയലുകളിൽ ഉപയോഗിക്കുന്ന, ലേബൽ ചെയ്ത ഘടകങ്ങളും കണക്ഷനുകളും ഉള്ള V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

ജോയ്‌സ്റ്റിക്കുകൾ ഉപയോഗിച്ച് കൺട്രോളറിലെ നാല് അക്ഷങ്ങളിൽ ഒന്ന് മാറ്റുമ്പോൾ ചില പെരുമാറ്റങ്ങൾ ട്രിഗർ ചെയ്യാൻ {When controller axis} ഇവന്റ് ബ്ലോക്കുകൾ ഉപയോഗിക്കുന്നു.

[മോട്ടോർ പ്രവേഗം സജ്ജമാക്കുക] ബ്ലോക്കുകൾ മോട്ടോർ പ്രവേഗം A, D അക്ഷങ്ങളിൽ നിലവിലെ കൺട്രോളറിന്റെ സ്ഥാനത്തേക്ക് സജ്ജമാക്കാൻ ഉപയോഗിക്കുന്നു. ഇത് ഒരു കാർ ഡ്രൈവ് ചെയ്യാൻ സജ്ജമാക്കുന്നതിന് തുല്യമാണ്. അത് കാറിനെ ചലിപ്പിക്കണമെന്നില്ല, മറിച്ച് അത് നേരെയാക്കുക മാത്രമാണ് ചെയ്യുന്നത്.

ഓരോ ജോയിസ്റ്റിക്ക് അച്ചുതണ്ടും -100 നും +100 നും ഇടയിലുള്ള ഒരു മൂല്യം നൽകുന്നു, കേന്ദ്രീകരിക്കുമ്പോൾ പൂജ്യം മൂല്യം നൽകുന്നു. ഇതിനർത്ഥം ജോയിസ്റ്റിക്ക് അക്ഷങ്ങൾ തള്ളുമ്പോൾ -100% മുതൽ 100% വരെ തുല്യമാണ് എന്നാണ്. 100 അല്ലെങ്കിൽ -100 ലേക്ക് അച്ചുതണ്ടുകൾ കൂടുതൽ തള്ളപ്പെടുന്തോറും മോട്ടോർ വേഗത്തിൽ കറങ്ങും.

[സ്പിൻ] ബ്ലോക്ക് പിന്നീട് മോട്ടോർ ചലിപ്പിക്കാൻ ഉപയോഗിക്കുന്നു. ദിശ സജ്ജീകരിച്ചുകഴിഞ്ഞാൽ കാറിൽ ഗ്യാസ് അമർത്തുന്നതിന് തുല്യമാണിത്. ഇത് ഓരോ മോട്ടോറിനെയും നാല് കൺട്രോളർ അക്ഷങ്ങളിൽ ഒന്ന് ഉപയോഗിച്ച് നിയന്ത്രിക്കാൻ അനുവദിക്കുന്നു.

പ്രോഗ്രാമിംഗ് ട്യൂട്ടോറിയലുകളിൽ ഉപയോഗിക്കുന്ന V5 ബ്ലോക്കുകൾ ചിത്രീകരിക്കുന്ന ഡയഗ്രം, VEX റോബോട്ടിക്സ് സിസ്റ്റത്തിലെ വിവിധ ബ്ലോക്ക് തരങ്ങളും അവയുടെ പ്രവർത്തനങ്ങളും പ്രദർശിപ്പിക്കുന്നു.

ഈ കോഡ് ഉദാഹരണത്തിന് ഒരു Clawbot ഉപയോഗിച്ചു. കൺട്രോളറിലെ ബട്ടണുകൾ ഉപയോഗിച്ച് കൈ ഉയർത്തുകയും താഴ്ത്തുകയും ചെയ്യുമ്പോൾ, ബട്ടൺ റിലീസ് ചെയ്യുമ്പോൾ, ഗുരുത്വാകർഷണം കാരണം കൈ താഴേക്ക് വീഴും. കൺട്രോളറിലെ ബട്ടണുകൾ റിലീസ് ചെയ്തതിനു ശേഷവും കൈയും നഖവും "പിടിക്കാൻ" സജ്ജമാക്കുന്നത്, രണ്ടും സ്ഥാനത്ത് തുടരുമെന്ന് ഉറപ്പാക്കും.

കൺട്രോളറിൽ അമർത്തുന്നതോ റിലീസ് ചെയ്യുന്നതോ ആയ ബട്ടണുകളിലേക്ക് ചില പെരുമാറ്റങ്ങളെ മാപ്പ് ചെയ്യാൻ {When controller axis} ഇവന്റ് ബ്ലോക്കുകൾ ഉപയോഗിക്കുന്നു. ഈ കോഡ് വിഭാഗത്തിൽ, മുകളിലേക്കോ താഴേക്കോ ബട്ടണുകൾ അമർത്തിയാൽ വ്യവസ്ഥകൾ സജ്ജീകരിച്ചിരിക്കുന്നു. അങ്ങനെയാണെങ്കിൽ, കൈ ഉയർത്തുക, താഴ്ത്തുക, അല്ലെങ്കിൽ നിർത്തുക തുടങ്ങിയ ചില പെരുമാറ്റങ്ങൾ സംഭവിക്കും.

ക്ലോവിനുള്ള പ്രോജക്റ്റിലെ കോഡിന്റെ അവസാന ഭാഗം ഇതേ വിശദീകരണം പിന്തുടരുന്നുവെന്ന് ശ്രദ്ധിക്കുക.

ഓപ്ഷൻ 3 ന്റെ സംഗ്രഹം: ഇവന്റുകൾ ഉപയോഗിക്കുന്നു

പ്രയോജനങ്ങൾ

പരിമിതികൾ

ഉദാഹരണ സാഹചര്യം

  • ഇഷ്ടാനുസൃത ബിൽഡുകൾ, പ്രത്യേകിച്ച് 4-ൽ കൂടുതൽ മോട്ടോറുകളുള്ള ഡ്രൈവ്‌ട്രെയിനുകൾ എന്നിവ ഉൾക്കൊള്ളാൻ കഴിയും.
  • ഒരൊറ്റ ബട്ടണിലേക്ക് ഒന്നിലധികം പെരുമാറ്റങ്ങൾ നൽകാം
  • കൺട്രോളറിലെ വ്യത്യസ്ത അക്ഷങ്ങളിലേക്ക് പെരുമാറ്റങ്ങൾ നിയോഗിക്കാൻ കഴിയും (ഉപകരണ കോൺഫിഗറേഷനിലെ ലെഫ്റ്റ് ആർക്കേഡ്, റൈറ്റ് ആർക്കേഡ്, സ്പ്ലിറ്റ് ആർക്കേഡ്, ടാങ്ക് ഡ്രൈവ് എന്നിവയുടെ ഏക ഓപ്ഷനുകൾക്ക് വിരുദ്ധമായി)
  • വേഗത്തിലുള്ള കോഡ് നിർവ്വഹണവും അതുവഴി ബട്ടൺ പ്രതികരണശേഷിയും (ഓരോ കണ്ടീഷനും വെവ്വേറെ വിളിക്കപ്പെടുന്നതിനാൽ, ഒരു കോഡ് സ്റ്റാക്കിൽ ഉൾച്ചേർക്കുന്നില്ല)
  • ഓപ്ഷനുകളെക്കുറിച്ചുള്ള ഏറ്റവും മികച്ച കോഡിംഗ് പരിജ്ഞാനം (കണ്ടീഷണലുകൾ, ലൂപ്പുകൾ, ഇവന്റുകൾ, കൺട്രോളറിലെ ബട്ടണുകൾ/ജോയ്സ്റ്റിക്കുകൾ എന്നിവയെക്കുറിച്ചുള്ള അറിവ്) ആവശ്യമാണ്.
  • ഒരു ഇഷ്ടാനുസൃതമായി നിർമ്മിച്ച റോബോട്ടിനൊപ്പം, പ്രത്യേകിച്ച് നിലവാരമില്ലാത്ത ഡ്രൈവ്‌ട്രെയിനിൽ, കൺട്രോളർ ഉപയോഗിക്കുന്നത്
  • കാലതാമസമില്ലാതെ ഒരൊറ്റ ബട്ടണിലേക്ക് ഒന്നിലധികം പെരുമാറ്റങ്ങൾ നിയോഗിക്കാൻ ആഗ്രഹിക്കുമ്പോൾ. ഉദാഹരണത്തിന്, മുകളിലേക്കുള്ള ബട്ടൺ അമർത്തുമ്പോൾ, നഖത്തിന് ഒരു വസ്തുവിന് ചുറ്റും തുറക്കാനും മുന്നോട്ട് നീങ്ങാനും അടയ്ക്കാനും കഴിയും.

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

Last Updated: