Skip to main content

പാഠം 2: '5' എന്ന നമ്പറിലേക്ക് ഡ്രൈവ് ചെയ്യുക

ഈ പാഠത്തിൽ, VR റോബോട്ട് '5' എന്ന നമ്പറിലേക്ക് ഡ്രൈവ് ചെയ്ത് നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലെ '1' എന്ന നമ്പറിലേക്ക് തിരികെ പോകും!

നമ്പർ ഗ്രിഡ് മാപ്പ് കളിസ്ഥലത്തിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച, ഒരു ചുവന്ന ബോക്സ് കൊണ്ട് നമ്പർ 5 ഹൈലൈറ്റ് ചെയ്തിരിക്കുന്നു. VR റോബോട്ട് നമ്പർ 1 ൽ ആരംഭിക്കുന്നു, നമ്പർ 5 ചതുരം വലതുവശത്തുള്ള നാല് ഇടങ്ങളാണ്.

ശ്രദ്ധിക്കുക, നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലെ '5' എന്ന നമ്പറിലേക്ക് നീങ്ങുന്നതിന് X മൂല്യങ്ങൾ വർദ്ധിച്ചുകൊണ്ട് VR റോബോട്ട് X അച്ചുതണ്ടിലൂടെ സഞ്ചരിക്കും.

നമ്പർ ഗ്രിഡ് മാപ്പ് കളിസ്ഥലത്തിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച, ഒരു ബ്ലാക്ക് ബോക്സ് ഉപയോഗിച്ച് നമ്പർ 5 സ്പേസ് ഹൈലൈറ്റ് ചെയ്തിരിക്കുന്നു. X അക്ഷത്തിലുടനീളമുള്ള അളവുകളെ ഒരു രേഖ സൂചിപ്പിക്കുന്നു, ആദ്യ ഇടം X അക്ഷത്തിൽ -900 മില്ലിമീറ്ററും അടുത്തത് -700 ഉം ആണ്, ഓരോ തവണയും 200 എണ്ണുന്നത് തുടരുന്നു. അഞ്ചാമത്തെ സ്ഥലം -100 മില്ലിമീറ്റർ X ലൊക്കേഷനിലാണ്.

നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലെ '5' എന്ന നമ്പറിന്റെ സ്ഥാനത്തേക്ക് VR റോബോട്ട് ഡ്രൈവ് ചെയ്യും. എന്നിരുന്നാലും, വിആർ റോബോട്ടിന് ആ നമ്പറിലേക്ക് നാവിഗേറ്റ് ചെയ്യാൻ കഴിയുന്നതിന് മുമ്പ്, ആ നമ്പറിന്റെ സ്ഥാനം എവിടെയാണെന്ന് വിആർ റോബോട്ടിനോട് പറയേണ്ടതുണ്ട്. കളിസ്ഥലത്തിന്റെ മധ്യത്തിൽ തുടങ്ങി, '5' എന്ന സംഖ്യയുടെ കോർഡിനേറ്റുകൾ (-100, -900) ആണ്.

അഞ്ചാമത്തെ ഇടങ്ങളുടെ സ്ഥാനം അടയാളപ്പെടുത്തുന്ന രണ്ട് അച്ചുതണ്ട് സൂചകങ്ങളുള്ള നമ്പർ ഗ്രിഡ് മാപ്പ് കളിസ്ഥലത്തിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച. VR റോബോട്ട് -900 X ഉം -900 Y ഉം ആണ് ആരംഭിക്കുന്നത്, അഞ്ചാമത്തെ സ്പേസ് -100 X ഉം -900 Y ഉം ആണ്.
  • ആരംഭിക്കുന്നതിന്, വിആർ റോബോട്ട് '5' എന്ന സംഖ്യയ്ക്ക് അഭിമുഖമായിരിക്കണം. വർക്ക്‌സ്‌പെയ്‌സിലേക്ക് ഒരു [ടേൺ ഫോർ] ബ്ലോക്ക് വലിച്ചിടുക.

    VEXcode VR ബ്ലോക്ക് പ്രോജക്റ്റ്, When Started എന്ന ബ്ലോക്കിൽ നിന്ന് ആരംഭിച്ച് 90 ഡിഗ്രി വലത്തേക്ക് തിരിയാൻ ഒരു Turn For ബ്ലോക്കിൽ ആരംഭിക്കുന്നു.
  • [ഡ്രൈവ്] നോൺ-വെയ്റ്റിംഗ് ബ്ലോക്ക് വർക്ക്‌സ്‌പെയ്‌സിലേക്ക് വലിച്ചിടുക.

    VEXcode VR ബ്ലോക്ക് പ്രോജക്റ്റിന്റെ തുടർച്ച, ഇപ്പോൾ ടേൺ ഫോർ ബ്ലോക്കിന് ശേഷം ഒരു ഡ്രൈവ് ഫോർവേഡ് ബ്ലോക്ക് ചേർത്തിരിക്കുന്നു. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക.
  • [ഡ്രൈവ്] ബ്ലോക്കിന് താഴെ ഒരു [വരെ കാത്തിരിക്കുക] ബ്ലോക്ക് അറ്റാച്ചുചെയ്യുക.

    VEXcode VR ബ്ലോക്ക്സ് പ്രോജക്റ്റിന്റെ തുടർച്ച, ഇപ്പോൾ ഡ്രൈവ് ഫോർവേഡ് ബ്ലോക്കിന് ശേഷം ഒരു Wait Until ബ്ലോക്ക് ചേർത്തിരിക്കുന്നു. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക. അവസാനമായി ഇപ്പോൾ ഒരു ശൂന്യമായ ബൂളിയൻ പാരാമീറ്ററുള്ള ഒരു Wait Until ബ്ലോക്ക് ഉണ്ട്.
  • [Wait until] ബ്ലോക്ക് ബൂളിയൻ വ്യവസ്ഥകൾ അംഗീകരിക്കുന്നു. ഡിസ്റ്റൻസ് സെൻസർ യൂണിറ്റ് പോലെ തന്നെ, ഈ പ്രോജക്റ്റ് നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലൂടെ ഡ്രൈവ് ചെയ്യുന്നതിന് കണ്ടീഷനലുകൾ ഉപയോഗിക്കും. <Greater than> ബൂളിയൻ റിപ്പോർട്ടർ ബ്ലോക്ക് [Wait until] ബ്ലോക്കിലേക്ക് വലിച്ചിടുക.

    VEXcode VR ബ്ലോക്ക്സ് പ്രോജക്റ്റിന്റെ തുടർച്ച, ഇപ്പോൾ Wait Until ബ്ലോക്കിൽ ഒരു Greater Than ബ്ലോക്ക് ചേർത്തിരിക്കുന്നു. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക. അവസാനമായി ഇപ്പോൾ ഒരു Wait Until ബ്ലോക്ക് ഉണ്ട്, അതിൽ ഒരു Greater Than ബ്ലോക്ക് ഉണ്ട്, അതിൽ 'blank is Greater Than 50' എന്ന് എഴുതിയിരിക്കുന്നു.
  • VR റോബോട്ട് പ്ലേഗ്രൗണ്ടിന്റെ ഇടതുവശത്ത് നിന്ന് വലതുവശത്തേക്ക് ഓടിക്കുന്നതിനാൽ <Less than> ബ്ലോക്കിന് പകരം <Greater than> ബ്ലോക്ക് ഉപയോഗിച്ചിരിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക. VR റോബോട്ട് -900 മില്ലിമീറ്റർ (മില്ലീമീറ്റർ) എന്ന X-മൂല്യത്തിൽ നിന്നാണ് ആരംഭിക്കുന്നത്. വിആർ റോബോട്ട് മുന്നോട്ട് പോകുമ്പോൾ, എക്സ്-മൂല്യങ്ങൾ വർദ്ധിക്കുന്നു.

    നമ്പർ ഗ്രിഡ് മാപ്പ് കളിസ്ഥലത്തിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള അതേ കാഴ്ച, മുമ്പത്തേതിൽ നിന്ന് അഞ്ചാമത്തെ ഇടങ്ങളുടെ സ്ഥാനം അടയാളപ്പെടുത്തുന്ന രണ്ട് അച്ചുതണ്ട് സൂചകങ്ങൾ. VR റോബോട്ട് -900 X ഉം -900 Y ഉം ആണ് ആരംഭിക്കുന്നത്, അഞ്ചാമത്തെ സ്പേസ് -100 X ഉം -900 Y ഉം ആണ്.
  • (റോബോട്ടിന്റെ സ്ഥാനം) ബ്ലോക്ക് <Greater than> ബ്ലോക്കിലേക്ക് വലിച്ചിടുക.

    VEXcode VR ബ്ലോക്ക്സ് പ്രോജക്റ്റിന്റെ തുടർച്ച, ഇപ്പോൾ ഗ്രേറ്റർ ദാൻ ബ്ലോക്കിലേക്ക് റോബോട്ട് ബ്ലോക്കിന്റെ ഒരു സ്ഥാനം ചേർത്തിരിക്കുന്നു. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക. അവസാനമായി, മില്ലിമീറ്ററിൽ റോബോട്ടിന്റെ X സ്ഥാനം 50-ൽ കൂടുതലാകുന്നതുവരെ കാത്തിരിക്കുക.

    നിങ്ങളുടെ അറിവിലേക്കായി

    (റോബോട്ടിന്റെ സ്ഥാനം) ബ്ലോക്ക് എന്നത് VR റോബോട്ടിന്റെ മധ്യഭാഗത്തെ X അല്ലെങ്കിൽ Y കോർഡിനേറ്റ് സ്ഥാനം റിപ്പോർട്ട് ചെയ്യുന്ന ഒരു സംഖ്യാ റിപ്പോർട്ടർ ബ്ലോക്കാണ്. X അല്ലെങ്കിൽ Y കോർഡിനേറ്റ് സ്ഥാനം റിപ്പോർട്ട് ചെയ്തിട്ടുണ്ടോ എന്ന് തിരഞ്ഞെടുക്കുക.

    ആക്സിസ് ഡ്രോപ്പ്ഡൗൺ മെനു തുറന്നിരിക്കുന്ന റോബോട്ട് ബ്ലോക്കിന്റെ സ്ഥാനം, അളവിന്റെ അച്ചുതണ്ട് X ൽ നിന്ന് Y ലേക്ക് മാറ്റുന്നു.

    സ്വിച്ച് ബ്ലോക്കുകൾ ഉപയോഗിക്കുന്നു 

    ഇതാണ് സ്വിച്ച് (റോബോട്ടിന്റെ സ്ഥാനം) ബ്ലോക്ക്. Y കോർഡിനേറ്റ് റിപ്പോർട്ട് ചെയ്യുന്നതിനായി (റോബോട്ട് സ്ഥാനം) ബ്ലോക്കിന്റെ പാരാമീറ്റർ മാറ്റാൻ, കോർഡിനേറ്റ് മൂല്യത്തിനായി "Y" എന്ന് ടൈപ്പ് ചെയ്യുക അല്ലെങ്കിൽ ദൃശ്യമാകുന്ന കോർഡിനേറ്റ് നിർദ്ദേശം തിരഞ്ഞെടുക്കുക. 

    ഓട്ടോ-കംപ്ലീറ്റ് സവിശേഷത പ്രദർശിപ്പിക്കുന്നതിനുള്ള റോബോട്ട് സ്വിച്ച് ബ്ലോക്കിന്റെ ഒരു സ്ഥാനം. ബ്ലോക്ക് 'location.position(X, MM)' എന്ന് വായിക്കുന്നു, കൂടാതെ ഉപയോക്താവ് ഓട്ടോ-കംപ്ലീറ്റ് ഉപയോഗിച്ച് X പാരാമീറ്റർ Y ലേക്ക് മാറ്റുന്നു.

    (റോബോട്ടിന്റെ സ്ഥാനം) ബ്ലോക്കിന് മില്ലിമീറ്ററിലോ (മില്ലീമീറ്റർ) ഇഞ്ചിലോ മൂല്യങ്ങൾ റിപ്പോർട്ട് ചെയ്യാൻ കഴിയും.

    അളക്കൽ യൂണിറ്റ് ഡ്രോപ്പ്ഡൗൺ മെനു തുറന്നിരിക്കുന്ന റോബോട്ട് ബ്ലോക്കിന്റെ സ്ഥാനം, അളവിന്റെ യൂണിറ്റ് മില്ലിമീറ്ററിൽ നിന്ന് ഇഞ്ചിലേക്ക് മാറ്റുന്നു.

    സ്വിച്ച് (റോബോട്ടിന്റെ സ്ഥാനം) ബ്ലോക്ക് ഉപയോഗിക്കുമ്പോൾ "ഇഞ്ചുകൾ" എന്ന് ടൈപ്പ് ചെയ്തോ ദൃശ്യമാകുന്ന നിർദ്ദേശം തിരഞ്ഞെടുത്തോ നിങ്ങൾക്ക് അളവിന്റെ യൂണിറ്റിനായുള്ള പാരാമീറ്റർ മാറ്റാൻ കഴിയും. അളവെടുപ്പ് യൂണിറ്റുകൾക്കായി പാരാമീറ്ററുകൾ ടൈപ്പ് ചെയ്യുമ്പോൾ എല്ലാ വലിയ അക്ഷരങ്ങളും ഉപയോഗിക്കുന്നത് ഉറപ്പാക്കുക.

    ഓട്ടോ-കംപ്ലീറ്റ് സവിശേഷത പ്രദർശിപ്പിക്കുന്നതിനുള്ള റോബോട്ട് സ്വിച്ച് ബ്ലോക്കിന്റെ ഒരു സ്ഥാനം. ബ്ലോക്ക് 'location.position(X, MM)' എന്ന് വായിക്കുന്നു, കൂടാതെ ഉപയോക്താവ് ഓട്ടോ-കംപ്ലീറ്റ് ഉപയോഗിച്ച് മില്ലിമീറ്റർ പാരാമീറ്റർ ഇഞ്ചിലേക്ക് മാറ്റുന്നു.

  • <Greater than> ബ്ലോക്കിന്റെ പാരാമീറ്റർ -100 ആയി സജ്ജമാക്കുക.

    ഗ്രേറ്റർ ദാൻ ബ്ലോക്കിന്റെ രണ്ടാമത്തെ പാരാമീറ്റർ 50 ൽ നിന്ന് -100 ആയി മാറ്റിയതോടെ, VEXcode VR ബ്ലോക്ക് പ്രോജക്റ്റിന്റെ തുടർച്ചയാണിത്. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക. അവസാനമായി, മില്ലിമീറ്ററിൽ റോബോട്ടിന്റെ X സ്ഥാനം -100 നേക്കാൾ വലുതാകുന്നതുവരെ കാത്തിരിക്കുക.
  • ഒരു [സ്റ്റോപ്പ് ഡ്രൈവിംഗ്] ബ്ലോക്ക് ഡ്രാഗ് ചെയ്ത് പ്രോജക്റ്റിലേക്ക് ചേർക്കുക.

    വെയ്റ്റ് അൺടിൽ ബ്ലോക്കിന് താഴെയായി ഒരു സ്റ്റോപ്പ് ഡ്രൈവിംഗ് ബ്ലോക്ക് ചേർത്തിരിക്കുന്ന, VEXcode VR ബ്ലോക്ക് പ്രോജക്റ്റിന്റെ തുടർച്ചയാണിത്. മുഴുവൻ പ്രോജക്റ്റും ഇപ്പോൾ 'When Started, Turn Right for 90 degree' എന്നാണു പറയുന്നത്. തുടർന്ന് മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക. അവസാനമായി, മില്ലിമീറ്ററിൽ റോബോട്ടിന്റെ X സ്ഥാനം -100 നേക്കാൾ വലുതാകുന്നതുവരെ കാത്തിരിക്കുക, തുടർന്ന് ഡ്രൈവിംഗ് നിർത്തുക.
  • നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട് തുറന്നിട്ടില്ലെങ്കിൽ അത് തുറന്ന് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക.
  • നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ൽ '5' എന്ന നമ്പറിലേക്ക് VR റോബോട്ട് ഡ്രൈവ് ചെയ്യുന്നത് കാണുക.

    നമ്പർ ഗ്രിഡ് മാപ്പ് കളിസ്ഥലത്തിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച, VR റോബോട്ട് അഞ്ചാമത്തെ സ്ഥലത്തേക്ക് ഓടിച്ചു.
  • ഈ പ്രോജക്റ്റിൽ, VR റോബോട്ട് നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലെ '5' എന്ന നമ്പറിലേക്ക് ഡ്രൈവ് ചെയ്യുന്നു. [Wait until] ബ്ലോക്ക് ഉപയോഗിച്ചിരിക്കുന്നതിനാൽ, X-മൂല്യം സൂചിപ്പിച്ചിരിക്കുന്ന സംഖ്യ ഓണായിരിക്കുന്ന കോർഡിനേറ്റിന്റെ X-മൂല്യത്തേക്കാൾ VR റോബോട്ട് മുന്നോട്ട് നീങ്ങുന്നത് തുടരും.
  • X-മൂല്യം -100-ൽ കൂടുതലായാൽ, പ്രോജക്റ്റ് സ്റ്റാക്കിലെ അടുത്ത ബ്ലോക്കിലേക്ക് നീങ്ങുന്നു, അത് [സ്റ്റോപ്പ് ഡ്രൈവിംഗ്] ബ്ലോക്കാണ്. '5' എന്ന സംഖ്യയുടെ X- മൂല്യം -100 ആയതിനാൽ, X- മൂല്യം -100-ൽ കൂടുതലാകുമ്പോൾ VR റോബോട്ട് ഡ്രൈവിംഗ് നിർത്തും.

VEXcode VR ബ്ലോക്ക്സ് പ്രോജക്റ്റിലെ യുക്തിയുടെ ഒഴുക്ക് ദൃശ്യവൽക്കരിക്കുന്ന ഒരു ഡയഗ്രം. ഈ പ്രോജക്റ്റ് ആരംഭിക്കുന്നത് 90 ഡിഗ്രി വലത്തേക്ക് തിരിഞ്ഞ് മുന്നോട്ട് ഡ്രൈവ് ചെയ്തുകൊണ്ടാണ്, കൂടാതെ റോബോട്ട് സെൻസറിന്റെ X പൊസിഷന്റെ സ്ഥാനം മില്ലിമീറ്ററിൽ -100 ൽ കൂടുതലാകുന്നതുവരെ ആ കമാൻഡ് നിലനിർത്തുകയും, അതിനുശേഷം ഒരു സ്റ്റോപ്പ് ഡ്രൈവിംഗ് ബ്ലോക്ക് ഡ്രൈവ് ഫോർവേഡ് കമാൻഡ് അവസാനിപ്പിക്കുകയും ചെയ്യുന്നു.

സ്വിച്ച് ബ്ലോക്കുകൾ ഉപയോഗിക്കുന്നു 

ഈ പാഠത്തിൽ, അടുത്ത പെരുമാറ്റത്തിലേക്ക് നീങ്ങുന്നതിന് മുമ്പ്, റോബോട്ട് X-അക്ഷത്തിൽ -100-ൽ കൂടുതൽ സ്ഥാനത്ത് എത്തുന്നതുവരെ കാത്തിരിക്കാൻ റോബോട്ടിനോട് കമാൻഡ് ചെയ്യുന്നതിന് ബൂളിയൻ അവസ്ഥയുള്ള VEXcode [Wait until] ബ്ലോക്ക് എങ്ങനെ ഉപയോഗിക്കാമെന്ന് നിങ്ങൾ പഠിച്ചു.

"Wait Until X" എന്ന് വായിക്കുന്ന VEXcode VR ബ്ലോക്ക്, മില്ലിമീറ്ററിൽ റോബോട്ടിന്റെ സ്ഥാനം -100 നേക്കാൾ വലുതാണ്.

താഴെയുള്ള ചിത്രത്തിൽ പൈത്തണിലെ അതേ കമാൻഡുകളുള്ള Switch [Wait until] ബ്ലോക്ക് കാണിക്കുന്നു. സ്വിച്ച് ബ്ലോക്കിനുള്ളിൽ, location.position(X, MM) അല്ലെങ്കിലും ആണ് > -100: എന്നത് X-അക്ഷത്തിൽ റോബോട്ടിന്റെ സ്ഥാനം -100 നേക്കാൾ വലുതാണോ എന്ന് പരിശോധിക്കുന്ന ആദ്യത്തെ പൈത്തൺ കമാൻഡ് ആണ്.

ഇൻഡന്റ് ചെയ്ത കമാൻഡ്, wait (5, MSEC)ഒരു നിശ്ചിത സമയത്തേക്ക് പരിശോധനയുടെ നിർവ്വഹണം താൽക്കാലികമായി നിർത്തുന്നു. ഈ ഉദാഹരണത്തിൽ, ഓരോ 5 MSec-ലും റോബോട്ടിന്റെ സ്ഥാനം -100 എന്ന X മൂല്യത്തിൽ കൂടുതലാണോ എന്ന് പ്രോജക്റ്റ് പരിശോധിക്കുന്നു. ഈ കോഡ് വരി കോഡിന്റെ ആദ്യ വരിയുടെ അടിയിൽ ഇൻഡന്റ് ചെയ്തിരിക്കുന്നു, കാരണം ഈ കമാൻഡ് അവസ്ഥ (-100-ൽ കൂടുതലുള്ള ഒരു X കോർഡിനേറ്റ് മൂല്യം) പാലിക്കുന്നതുവരെ ആവർത്തിക്കുന്ന സ്വഭാവമാണ്. 

'while not location.position(X, MM) > -100: wait(5, MSEC)' എന്ന് വായിക്കുന്ന പൈത്തൺ കോഡുള്ള VEXcode VR സ്വിച്ച് ബ്ലോക്ക്.

ഈ പാഠത്തിന്റെ ബാക്കി ഭാഗം തുടരാൻ അടുത്തത് ബട്ടൺ തിരഞ്ഞെടുക്കുക.