Skip to main content

പാഠം 4: ഒരു ചുവപ്പും പച്ചയും ഡിസ്ക് നീക്കുക

  • അടുത്തതായി, വിആർ റോബോട്ട് അടുത്ത നിറമുള്ള ലക്ഷ്യത്തിലേക്ക് മുന്നോട്ട് പോകേണ്ടതുണ്ട്. അടുത്ത നിറമുള്ള ഗോളിന്റെ മധ്യഭാഗത്തേക്ക് പോകുന്നതിന് VR റോബോട്ട് നാല് ഗ്രിഡ് സ്ക്വയറുകൾ അല്ലെങ്കിൽ 800 മില്ലിമീറ്റർ (മില്ലീമീറ്റർ) മുന്നോട്ട് ഓടിക്കേണ്ടിവരുമെന്ന് ശ്രദ്ധിക്കുക.

    ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ടിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച, ആദ്യത്തെ നീല ഡിസ്ക് ഉപേക്ഷിച്ച ശേഷം നീല ഗോളിന്റെ അരികിൽ വിആർ റോബോട്ട് സ്ഥാപിച്ചിരിക്കുന്നു, വലതുവശത്തുള്ള ചുവന്ന ഗോളിന് അഭിമുഖമായി. വി.ആർ. റോബോട്ടിന്റെ മുന്നിൽ നിന്ന് ചുവന്ന ലക്ഷ്യത്തിലേക്ക് ഒരു ഡോട്ട് ഇട്ട അമ്പടയാളം ചൂണ്ടിയിരിക്കുന്നു, ഇത് അടുത്ത ഉദ്ദേശിച്ച ചലനത്തെ സൂചിപ്പിക്കുന്നു.
  • കോഡിലേക്ക് ഒരു [Drive for] ബ്ലോക്ക് ചേർത്ത് പാരാമീറ്റർ 800 മില്ലിമീറ്ററായി (mm) സജ്ജമാക്കുക.

    മുൻ പേജിലെ അതേ VEXcode VR പ്രോജക്റ്റ്, സ്റ്റാക്കിന്റെ അവസാനം ഒരു കമന്റും ഡ്രൈവ് ഫോർ ബ്ലോക്കും ചേർത്തിരിക്കുന്നു. രണ്ട് അധിക ബ്ലോക്കുകൾ 'അടുത്ത ലക്ഷ്യത്തിലേക്ക് ഡ്രൈവ് ചെയ്യുക' എന്ന് വായിക്കുന്നു, തുടർന്ന് 800 മില്ലീമീറ്റർ മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക.
  • ഇനി VR റോബോട്ട് നിറമുള്ള ഡിസ്കുകൾക്ക് അഭിമുഖമായി തിരിയേണ്ടതുണ്ട്.

    മുകളിൽ നിന്ന് താഴേക്കുള്ള ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ടിന്റെ കാഴ്ച, അതിൽ VR റോബോട്ട് ചുവന്ന ഗോൾ ഏരിയയിൽ സ്ഥാപിച്ചിരിക്കുന്നു. VR റോബോട്ടിന്റെ മുന്നിൽ നിന്ന് ചുവന്ന ഡിസ്കുകളിലേക്ക് ഒരു വളഞ്ഞ അമ്പടയാളം ചൂണ്ടുന്നു, ഇത് ചുവന്ന ഡിസ്കുകളെ അഭിമുഖീകരിക്കാൻ ആവശ്യമായ തിരിവിനെ സൂചിപ്പിക്കുന്നു.
  • കോഡിലേക്ക് ഒരു രണ്ടാമത്തെ [തലക്കെട്ടിലേക്ക് തിരിയുക] ബ്ലോക്ക് ചേർത്ത് പാരാമീറ്റർ പൂജ്യം ഡിഗ്രിയിലേക്ക് സജ്ജമാക്കുക. ഇത് VR റോബോട്ടിനെ നിറമുള്ള ഡിസ്കുകൾക്ക് അഭിമുഖമായി തിരിക്കും.

    സ്റ്റാക്കിന്റെ അവസാനം ഒരു കമന്റ് ബ്ലോക്കും ടേൺ ടു ഹെഡിംഗ് ബ്ലോക്കും ചേർത്തിരിക്കുന്ന അതേ VEXcode VR പ്രോജക്റ്റ്. ഈ രണ്ട് ബ്ലോക്കുകളും 'ഡിസ്കുകളിലേക്ക് തിരിയുക' എന്നും '0 ഡിഗ്രിയിലേക്ക് തിരിയുക' എന്നും വായിക്കുന്നു.
  • ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ട് തുറന്ന് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക.
  • വിആർ റോബോട്ട് ആദ്യത്തെ നീല ഡിസ്ക് എടുത്ത് നീല ഗോളിലേക്ക് നീക്കും, തുടർന്ന് ചുവന്ന ഗോളിന് മുകളിലൂടെ ഓടിച്ചു പോകും. വിആർ റോബോട്ടും ചുവന്ന ഡിസ്കുകൾക്ക് അഭിമുഖമായി തിരിക്കും.

    ചുവന്ന ഗോളിന്റെ മുൻവശത്ത്, ചുവന്ന ഡിസ്കുകൾക്ക് അഭിമുഖമായി VR സ്ഥാപിച്ചിരിക്കുന്ന ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ടിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച.
  • ഇപ്പോൾ VR റോബോട്ട് ചുവന്ന ഡിസ്കുകളെ അഭിമുഖീകരിക്കുന്നതിനാൽ, ചുവന്ന ഡിസ്ക് എടുത്ത് നീക്കുന്നതിന്, നീല ഡിസ്ക് ശേഖരിക്കാൻ ഉപയോഗിച്ച അതേ പെരുമാറ്റങ്ങൾ VR റോബോട്ടിന് ആവർത്തിക്കേണ്ടതുണ്ട്. ഡിസ്ക് എടുക്കാൻ മുന്നോട്ട് ഓടിക്കുന്നതും, തിരിഞ്ഞു നോക്കുന്നതും, ഡിസ്കിൽ നിന്ന് ഇറങ്ങാൻ വേണ്ടി അതേ നിറമുള്ള ലക്ഷ്യത്തിലേക്ക് തിരികെ ഓടിക്കുന്നതുമായ പെരുമാറ്റങ്ങൾ.

    ചുവന്ന ഗോളിന്റെ മുൻവശത്ത്, ചുവന്ന ഡിസ്കുകൾക്ക് അഭിമുഖമായി VR സ്ഥാപിച്ചിരിക്കുന്ന ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ടിന്റെ മുകളിൽ നിന്ന് താഴേക്കുള്ള കാഴ്ച. ആദ്യത്തെ ചുവന്ന ഡിസ്ക് എടുക്കുന്നതിനും, അത് ചുവന്ന ഗോളിലേക്ക് എത്തിക്കുന്നതിനും, പിന്നീട് പച്ച ഗോളിലേക്ക് തിരിഞ്ഞ് ഡ്രൈവ് ചെയ്യുന്നതിനും ആവശ്യമായ ചലനങ്ങളെ ഡോട്ട് ഇട്ട അമ്പടയാളങ്ങൾ സൂചിപ്പിക്കുന്നു.
  • ആദ്യത്തെ ചുവന്ന ഡിസ്ക് നീക്കിക്കഴിഞ്ഞാൽ, VR റോബോട്ട് പച്ച ലക്ഷ്യത്തിലേക്ക് ഡ്രൈവ് ചെയ്ത് ആദ്യത്തെ പച്ച ഡിസ്ക് നീക്കാൻ നീലയും ചുവപ്പും ഡിസ്ക് നീക്കാൻ ഉപയോഗിച്ച അതേ പ്രവർത്തനങ്ങൾ ചെയ്യേണ്ടതുണ്ട്.

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

    ടൂൾബോക്സിൽ നിന്നുള്ള ഒരു VEXcode VR റിപ്പീറ്റ് ബ്ലോക്ക്, പാരാമീറ്റർ ഡിഫോൾട്ടായി 10 ആയി സജ്ജീകരിച്ചിരിക്കുന്നു.
  • കോഡിലേക്ക് ഒരു [ആവർത്തിക്കുക] ബ്ലോക്ക് ചേർത്ത് പാരാമീറ്റർ '3' ആയി സജ്ജമാക്കുക.

    നിലവിലുള്ള VEXcode VR പ്രോജക്റ്റിലേക്ക് ഒരു റിപ്പീറ്റ് ബ്ലോക്ക് ചേർക്കുന്നതിന്റെ ഒരു അവലോകനം, അതുവഴി ആദ്യത്തെ നീല ഡിസ്ക് എടുത്ത് നീല ഗോളിലേക്ക് നീക്കാനും, അടുത്ത ഗോളിലേക്ക് ഡ്രൈവ് ചെയ്യാൻ തിരിയാനും, തുടർന്ന് ഡിസ്കിന് അഭിമുഖമായി തിരിയാനും ആവശ്യമായ എല്ലാ ബ്ലോക്കുകളും റിപ്പീറ്റ് ബ്ലോക്കിന്റെ C യിൽ പൊതിഞ്ഞിരിക്കും. റിപ്പീറ്റ് ബ്ലോക്ക് പാരാമീറ്റർ 3 ആയി സജ്ജീകരിച്ചിരിക്കുന്നു.
  • ഡിസ്ക് മൂവർ പ്ലേഗ്രൗണ്ട് തുറന്ന് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക.
  • ഈ പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുമ്പോൾ, വിആർ റോബോട്ട് ഓരോ നിറത്തിന്റെയും ഒരു ഡിസ്ക് എടുത്ത് അതിന്റെ അനുബന്ധ നിറമുള്ള ലക്ഷ്യത്തിലേക്ക് ഇടുന്നു.

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

    പ്രോജക്റ്റിന്റെ അവസാനം പച്ച ഗോൾ ഏരിയയിൽ VR റോബോട്ടിനെ കാണിക്കുന്ന പ്ലേഗ്രൗണ്ട് വിൻഡോ, റോബോട്ട് മതിലിലേക്ക് ഓടുന്നതിനുമുമ്പ് പ്രോജക്റ്റ് നിർത്തുന്നതായി സൂചിപ്പിക്കുന്ന ഒരു ചുവന്ന ബോക്സ് ഹൈലൈറ്റ് ചെയ്തിരിക്കുന്ന സ്റ്റോപ്പ് ബട്ടൺ.

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

ഒരു ലൂപ്പ് മറ്റൊരു ലൂപ്പിനുള്ളിൽ സ്ഥാപിക്കുന്നതിനെ നെസ്റ്റിംഗ് എന്ന് വിളിക്കുന്നു. നിങ്ങൾ ലൂപ്പുകൾ "നെസ്റ്റ്" ചെയ്യുമ്പോൾ, അകത്തെ ലൂപ്പ് എത്ര തവണ എക്സിക്യൂട്ട് ചെയ്യുന്നുവെന്ന് പുറം ലൂപ്പ് നിയന്ത്രിക്കുന്നു. നെസ്റ്റഡ് ചെയ്യാൻ കഴിയുന്ന നിരവധി തരം ലൂപ്പുകൾ ഉണ്ട്. ഉദാഹരണത്തിന്, മുകളിലുള്ള മുൻ കോഡിൽ, [Repeat until] ബ്ലോക്കുകൾ ഒരു [Repeat] ബ്ലോക്കിനുള്ളിൽ നെസ്റ്റ് ചെയ്തിരിക്കുന്നു.

മുമ്പത്തെ അതേ VEXcode VR പ്രോജക്റ്റ്, റിപ്പീറ്റ് ബ്ലോക്കിനുള്ളിൽ റിപ്പീറ്റ് അൺറ്റിൽ സി ബ്ലോക്കുകൾ എങ്ങനെ കൂടിച്ചേരുന്നുവെന്ന് കാണിക്കുന്നു, ഇത് റോബോട്ടിനെ മൂന്ന് ഡിസ്കുകൾ വിജയകരമായി നീക്കാൻ പ്രാപ്തമാക്കുന്നു.

ഒരു [Repeat] ബ്ലോക്ക് മറ്റൊരു [Repeat] ബ്ലോക്കിനുള്ളിലും നെസ്റ്റ് ചെയ്യാവുന്നതാണ്. താഴെ കൊടുത്തിരിക്കുന്ന ഉദാഹരണത്തിൽ, പുറം [ആവർത്തിക്കുക] ബ്ലോക്ക് '3' ആയി സജ്ജീകരിച്ചിരിക്കുന്നതിനാൽ, VR റോബോട്ട് പ്ലേഗ്രൗണ്ടിൽ മൂന്ന് ചതുരങ്ങൾ വരയ്ക്കും.

ഇടതുവശത്ത്, ഒരു പ്രോജക്റ്റ് 3 ആയി സജ്ജീകരിച്ചിരിക്കുന്ന ഒരു റിപ്പീറ്റ് ബ്ലോക്ക് കാണിക്കുന്നു, അതിൽ VR റോബോട്ടിനുള്ളിൽ ഒരു ചതുരം വരയ്ക്കുന്നതിന് റിപ്പീറ്റ് ബ്ലോക്ക് ആവശ്യമാണ്, ഇത് നെസ്റ്റഡ് ലൂപ്പുകളുടെ ആശയം ചിത്രീകരിക്കുന്നു. വലതുവശത്ത്, പ്ലേഗ്രൗണ്ട് വിൻഡോയിൽ പ്രോജക്റ്റിൽ നിന്ന് റോബോട്ട് വരച്ച മൂന്ന് ചതുരങ്ങൾ കാണിക്കുന്നു.

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

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