പാഠം 3: സോപാധിക പ്രസ്താവനകൾ
മുൻ പാഠത്തിൽ, ഒരു പ്രോജക്റ്റിൽ ഒപ്റ്റിക്കൽ സെൻസറിൽ നിന്നുള്ള ഡാറ്റ ഉപയോഗിച്ച് ഒരു ഡിസ്ക് നിറം അനുസരിച്ച് അടുക്കുന്നത് എങ്ങനെയെന്ന് നിങ്ങൾ പഠിച്ചു. ഈ പാഠത്തിൽ, ഒപ്റ്റിക്കൽ സെൻസർ ഏത് നിറം കണ്ടെത്തിയാലും തീരുമാനമെടുക്കാൻ പ്രോജക്റ്റിനെ പ്രാപ്തമാക്കുന്ന VEXcode-ലെ ഓപ്ഷനുകൾ പര്യവേക്ഷണം ചെയ്യാൻ നിങ്ങൾ പഠിച്ചതിനെ അടിസ്ഥാനമാക്കിയാണ് നിങ്ങൾ നിർമ്മിക്കുന്നത്. നിങ്ങൾ ഇതിനെക്കുറിച്ച് പഠിക്കും:
- ഒരു വ്യാവസായിക പശ്ചാത്തലത്തിൽ തീരുമാനമെടുക്കൽ ഒപ്റ്റിമൈസ് ചെയ്യുന്നത് എന്തുകൊണ്ട് പ്രധാനമാണ്.
- if then,if then else,ifബ്ലോക്കുകൾ എന്നിവ തമ്മിലുള്ള വ്യത്യാസം.
ഒന്നിലധികം അവസ്ഥകൾ പരിശോധിക്കുന്നു
മുൻ പാഠത്തിൽ, ഒരു ഡിസ്കിനെ നിറം അനുസരിച്ച് ചുവന്ന പാലറ്റിലേക്കോ പച്ച പാലറ്റിലേക്കോ അടുക്കാൻ കഴിയുന്ന ഒരു പ്രോജക്റ്റ് നിങ്ങൾ സൃഷ്ടിച്ചു. ഇത് ഫലപ്രദമാണെങ്കിലും, ഒരു സമയം ഒരു ഡിസ്ക് മാത്രമേ സോർട്ട് ചെയ്യാൻ കഴിയൂ. ഒരു ഫാക്ടറി ക്രമീകരണത്തിൽ, പല വസ്തുക്കളും ആവർത്തിച്ച് തരംതിരിച്ച് പാലറ്റൈസ് ചെയ്യേണ്ടതുണ്ട്. ഇത് ഫലപ്രദമായി ചെയ്യുന്നതിന്, വസ്തുക്കളെ എങ്ങനെ നീക്കണം, അല്ലെങ്കിൽ മനുഷ്യന്റെ ഇടപെടൽ ആവശ്യമുണ്ടോ എന്നതിനെക്കുറിച്ച് 6-ആക്സിസ് ആം ആവർത്തിച്ച് തീരുമാനമെടുക്കാൻ കഴിയേണ്ടതുണ്ട്. 6-ആക്സിസ് ആം കോഴ്സിലേക്കുള്ള ആമുഖത്തിൽ നിങ്ങൾ നീക്കിയ ക്യൂബുകൾ പരിഗണിക്കുക.
ലോഡിംഗ് സോണിൽ ഒരു നീല ക്യൂബ് ഉണ്ടെങ്കിലോ? മുൻ പാഠത്തിലെ പ്രോജക്റ്റിൽ എന്ത് സംഭവിക്കും? ഒരു വ്യാവസായിക സാഹചര്യത്തിൽ, സാധ്യമായ എല്ലാ സാഹചര്യങ്ങളും പരിഗണിക്കേണ്ടതുണ്ട്. തരംതിരിക്കേണ്ട വസ്തുക്കളിൽ ഒരു തെറ്റായ വസ്തു ചേർത്തിട്ടുണ്ടെങ്കിൽ, വർക്ക്സെല്ലും അതിനു ചുറ്റുമുള്ള തൊഴിലാളികളും സുരക്ഷിതമായി തുടരുകയും ഫലപ്രദമായി പ്രവർത്തിക്കുകയും ചെയ്യുന്നുവെന്ന് ഉറപ്പാക്കാൻ മനുഷ്യ ഇടപെടൽ ആവശ്യമായി വന്നേക്കാം.
ക്രമംഎങ്കിൽബ്ലോക്ക്
മുൻ പാഠത്തിൽ, പ്രോജക്റ്റിനുള്ളിൽ രണ്ട് വ്യത്യസ്ത വ്യവസ്ഥകൾ ഒന്നിനുപുറകെ ഒന്നായി പരിശോധിക്കുന്നതിന് നിങ്ങൾ രണ്ട്എങ്കിൽബ്ലോക്കുകൾ ക്രമത്തിൽ ഉപയോഗിച്ചു, അടിസ്ഥാനപരമായി രണ്ട് ചോദ്യങ്ങൾ ചോദിച്ചു.

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

അനുക്രമംഎങ്കിൽ അല്ലെങ്കിൽബ്ലോക്ക്
ചുവപ്പും പച്ചയും നിറങ്ങളുടെ അവസ്ഥ പരിശോധിക്കാനും വ്യത്യസ്തമായ നിറം കണക്കാക്കാനും നമ്മെ പ്രാപ്തരാക്കുന്ന മറ്റൊരു ബ്ലോക്ക് ഉണ്ട്. If then elseബ്ലോക്ക് എന്നത്ifബ്രാഞ്ചിനുള്ളിലോelseബ്രാഞ്ചിനുള്ളിലോ ഉള്ള ബ്ലോക്കുകൾ പ്രവർത്തിപ്പിക്കുന്ന ഒരു C ബ്ലോക്കാണ്, റിപ്പോർട്ട് ചെയ്ത ബൂളിയൻ മൂല്യത്തെ അടിസ്ഥാനമാക്കി.

ifബ്രാഞ്ച് അല്ലെങ്കിൽ elseബ്രാഞ്ച് പ്രവർത്തിപ്പിച്ച ശേഷം, പ്രോജക്റ്റ് സ്റ്റാക്കിലെ അടുത്ത ബ്ലോക്കിലേക്ക് നീങ്ങും. ശാഖകൾ കൂടുതൽ ദൃശ്യമാക്കുന്നതിന്അല്ലെങ്കിൽബ്ലോക്കുകളുടെ പ്രോജക്റ്റ് ഫ്ലോ കാണിക്കാനും കഴിയും.

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

ഇതുവരെയുള്ള ചിത്രങ്ങൾ, വസ്തുവിന്റെ ചുവപ്പ് നിറത്തിന്റെ അവസ്ഥ എങ്ങനെ കൈകാര്യം ചെയ്യണമെന്ന് മാത്രമേ കാണിച്ചിട്ടുള്ളൂ. മറ്റൊരു വസ്തുവിന്റെ പച്ച നിറത്തിലുള്ള അവസ്ഥ പരിശോധിക്കാൻ മറ്റേതെങ്കിലുംആവശ്യമുണ്ടെങ്കിൽ.

ഈ ഘടനയിലുള്ള പ്രോജക്റ്റ് പ്രവാഹത്തെക്കുറിച്ച് നമുക്ക് ചിന്തിക്കാം. ഓരോ തവണ പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുമ്പോഴും, ഒപ്റ്റിക്കൽ സെൻസർ ഏത് നിറം കണ്ടെത്തിയാലും, ഒന്നിലധികം ശാഖകൾ പ്രവർത്തിപ്പിക്കപ്പെടും.

ഒരു ചുവന്ന ഡിസ്ക് ഉദാഹരണമായി ഉപയോഗിച്ച് ഇതിനെക്കുറിച്ച് ചിന്തിക്കാം. ഒപ്റ്റിക്കൽ സെൻസർ ചുവപ്പ് നിറം കണ്ടെത്തിയാൽ, ആദ്യത്തെന്റെ അവസ്ഥ അങ്ങനെയാണെങ്കിൽബ്ലോക്ക് ശരിയാണെന്ന് റിപ്പോർട്ട് ചെയ്യും. ആണെങ്കിൽബ്രാഞ്ചിനുള്ളിലെ ബ്ലോക്ക് പ്രവർത്തിക്കും, 6-ആക്സിസ് ആം ചുവന്ന പാലറ്റിന് മുകളിലൂടെ നീക്കും. എന്നിരുന്നാലും, രണ്ടാമത്തെയുടെ ഉള്ളിലെ അവസ്ഥ അങ്ങനെയാണെങ്കിൽബ്ലോക്ക് തെറ്റാണെന്ന് റിപ്പോർട്ട് ചെയ്യും. ഇതിനർത്ഥം അതിന്റെഅല്ലെസ്ബ്രാഞ്ചിനുള്ളിലെ ബ്ലോക്ക് പ്രവർത്തിക്കുകയും 6-ആക്സിസ് ആമിനെ ഒരു നിയന്ത്രിത സ്റ്റോപ്പിലേക്ക് മാറ്റുകയും സിഗ്നൽ ടവറിൽ നീല മിന്നുകയും ചെയ്യും എന്നാണ്. 6-ആക്സിസ് ആം നിയന്ത്രിത സ്റ്റോപ്പ് അവസ്ഥയിലായതിനാൽ, പ്രോജക്റ്റിലെ മറ്റ് ബ്ലോക്കുകളൊന്നും പ്രവർത്തിക്കാൻ കഴിയില്ല, മാത്രമല്ല അത് പരിഹരിക്കപ്പെടുന്നതുവരെ എല്ലാ പ്രവർത്തനങ്ങളും നിർത്തിവയ്ക്കുകയും ചെയ്യും.

ഇപ്പോൾ നമുക്ക് ഒരു അപ്രതീക്ഷിത വസ്തുവിനെ (നീല ക്യൂബ് പോലുള്ളവ) കണക്കാക്കാൻ കഴിയുമെങ്കിലും, 6-ആക്സിസ് ആം ഒരിക്കലും ഡിസ്ക് പാലറ്റിലേക്ക് വിടുന്ന പ്രോജക്റ്റിലെ പോയിന്റിലേക്ക് എത്തില്ല. ചുവപ്പും പച്ചയും നിറത്തിലുള്ള അവസ്ഥകൾ ഒന്നിനുപുറകെ ഒന്നായി പരിശോധിക്കുന്നതിനുപകരം, ഒരു വസ്തു പച്ചയാണോമാത്രം, വസ്തു ചുവപ്പല്ലെങ്കിൽമാത്രം എന്ന് പരിശോധിക്കാനുള്ള ഒരു മാർഗമുണ്ട്.
നെസ്റ്റഡ്ആണെങ്കിൽ അല്ലെങ്കിൽബ്ലോക്ക്
യുടെ ഓരോ ശാഖകൾക്കുംബ്ലോക്കിനുള്ളിലെ മറ്റ് C ബ്ലോക്കുകൾ സ്വീകരിക്കാൻ കഴിയും. ഇതിനെ 'നെസ്റ്റിംഗ്' എന്ന് വിളിക്കുന്നു. ഇതിനർത്ഥം, രണ്ടാമത്തെIf then elseബ്ലോക്ക്, ആദ്യത്തേതിന്റെelseബ്രാഞ്ചിനുള്ളിൽ ഇതുപോലെ നെസ്റ്റ് ചെയ്യാമെന്നാണ്.
ഇനി, പച്ച നിറം കണ്ടെത്തുന്ന ഒപ്റ്റിക്കൽ സെൻസറിന്റെ അവസ്ഥ പരിശോധിക്കുന്നത്, മുമ്പത്തെ അവസ്ഥ (ഒപ്റ്റിക്കൽ സെൻസർ ചുവപ്പ് നിറം കണ്ടെത്തുന്നു) തെറ്റാണെന്ന് റിപ്പോർട്ട് ചെയ്യുമ്പോൾ മാത്രമാണ്. അതിനാൽ ഒപ്റ്റിക്കൽ സെൻസർ ചുവപ്പ് നിറം കണ്ടെത്തുമ്പോൾ,ബ്രാഞ്ച് ഉണ്ടെങ്കിൽ ആദ്യത്തെമാത്രമേ പ്രവർത്തിക്കൂ, ഡിസ്ക് ചുവന്ന പാലറ്റിന് മുകളിലേക്ക് നീക്കും.

ഒപ്റ്റിക്കൽ സെൻസർ പച്ച നിറം കണ്ടെത്തുകയാണെങ്കിൽ, ആദ്യത്തെifബ്രാഞ്ചിന്റെ അവസ്ഥ (ഒപ്റ്റിക്കൽ ചുവപ്പ് നിറം കണ്ടെത്തുന്നു) തെറ്റാണെന്ന് റിപ്പോർട്ട് ചെയ്യും, അങ്ങനെelseബ്രാഞ്ചുകളും പ്രവർത്തിക്കും. നെസ്റ്റഡ് ന്റെ അവസ്ഥ. അല്ലെങ്കിൽ ഒപ്റ്റിക്കൽ സെൻസർ പച്ച നിറം കണ്ടെത്തുന്നുണ്ടോ എന്ന് കാണാൻബ്ലോക്ക് പരിശോധിക്കും. ആ അവസ്ഥ ശരിയാണെന്ന് റിപ്പോർട്ട് ചെയ്യപ്പെടും, അതിനാൽബ്രാഞ്ച് മാത്രമേ ഉള്ളൂവെങ്കിൽ രണ്ടാമത്തെയ്ക്കുള്ളിലെ ബ്ലോക്ക് പ്രവർത്തിക്കും, ഡിസ്ക് പച്ച പാലറ്റിന് മുകളിലൂടെ നീക്കും.
ഒപ്റ്റിക്കൽ സെൻസർ ചുവപ്പോ പച്ചയോ കണ്ടെത്തിയില്ലെങ്കിൽ (നീല ക്യൂബ് എടുക്കുന്നത് പോലെ), രണ്ട് അവസ്ഥകളും തെറ്റാണെന്ന് റിപ്പോർട്ട് ചെയ്യപ്പെടും, അതിനാൽ നെസ്റ്റഡ്ന്റെelseബ്രാഞ്ച് പ്രവർത്തിക്കും. അങ്ങനെയെങ്കിൽബ്ലോക്ക് പ്രവർത്തിക്കും, ഇത് ഒരു നിയന്ത്രിത സ്റ്റോപ്പ് ട്രിഗർ ചെയ്യുകയും തൊഴിലാളികളെ മനുഷ്യ ഇടപെടലിന്റെ ആവശ്യകതയെക്കുറിച്ച് മുന്നറിയിപ്പ് നൽകുകയും ചെയ്യും. ഈ പ്രോജക്റ്റ് ഫ്ലോകളെ ഇവിടെ കാണുന്നതുപോലെ ഒരു ഫ്ലോ ചാർട്ടായും ദൃശ്യവൽക്കരിക്കാവുന്നതാണ്.

നെസ്റ്റഡ്എങ്കിൽ അല്ലെങ്കിൽബ്ലോക്കുകൾചോദ്യങ്ങളുടെ ഒരു കാസ്കേഡിംഗ് പട്ടികയായി കാണാൻ കഴിയും. ഇവിടെ ചോദ്യങ്ങൾ ഇപ്രകാരമാണ്:
- വസ്തു ചുവപ്പാണോ?
- അതെ? ചുവന്ന പാലറ്റ് മാറി നിന്ന് ചോദ്യങ്ങൾ ചോദിക്കുന്നത് നിർത്തൂ.
- ഇല്ലേ? മറ്റൊരു ചോദ്യം ചോദിക്കൂ.
- വസ്തു പച്ചയാണോ?
- അതെ? പച്ച പാലറ്റ് മാറി നിന്ന് ചോദ്യങ്ങൾ ചോദിക്കുന്നത് നിർത്തൂ.
- ഇല്ലേ? അപ്പോൾ ആ വസ്തു ചുവപ്പോ പച്ചയോ അല്ല. സിഗ്നൽ ടവറിന്റെ നിറങ്ങൾ മാറ്റി നിയന്ത്രിത സ്റ്റോപ്പ് ട്രിഗർ ചെയ്യുക.
- വസ്തു പച്ചയാണോ?
മുൻ ചോദ്യത്തിന് നെഗറ്റീവ് ഉത്തരം ലഭിച്ചാൽ മാത്രമേ ചോദ്യങ്ങൾ ചോദിക്കൂ എന്ന് ശ്രദ്ധിക്കുക.
നമ്മൾ പരിശോധിക്കാൻ ആഗ്രഹിക്കുന്ന എല്ലാ അവസ്ഥകളും ഇത് കൈകാര്യം ചെയ്യുമ്പോൾ, അതേ രീതിയിൽ അവസ്ഥകൾ പരിശോധിക്കുന്ന മറ്റൊരു ബ്ലോക്ക് ഉണ്ട്, പക്ഷേ നെസ്റ്റിംഗ് ബ്ലോക്കുകളേക്കാൾ നിർമ്മിക്കാൻ എളുപ്പമാണ്.
ബ്ലോക്ക് ആണെങ്കിൽ അല്ലെങ്കിൽ
Else if ബ്ലോക്ക് ഒരേ ബ്ലോക്കിനുള്ളിൽ ഒന്നിലധികം അവസ്ഥകൾ പരിശോധിക്കാൻ നിങ്ങളെ പ്രാപ്തമാക്കുന്നു. ഈ ബ്ലോക്കിലെ ഓരോ വ്യവസ്ഥയും തുടർച്ചയായി പരിശോധിക്കപ്പെടും, മുമ്പത്തെ വ്യവസ്ഥ തെറ്റാണെന്ന് റിപ്പോർട്ട് ചെയ്താൽ മാത്രം. else if branches-ന്റെ എല്ലാ ബൂളിയൻ വ്യവസ്ഥകളും false ആണെങ്കിൽ, else വിഭാഗത്തിനുള്ളിലെ ബ്ലോക്കുകൾ പ്രവർത്തിപ്പിക്കും.

ഈ ബ്ലോക്കിന് നെസ്റ്റഡ്If then elseബ്ലോക്കുകളുടെ അതേ പ്രോജക്റ്റ് ഫ്ലോ ഉണ്ട്, പക്ഷേ ബ്ലോക്കുകൾ നെസ്റ്റ് ചെയ്യേണ്ട ആവശ്യമില്ലാത്തതിനാൽ നിർമ്മിക്കാൻ എളുപ്പമാണ്. അടുത്ത പാഠത്തിൽ നിന്ന് Else ifബ്ലോക്ക് ഉപയോഗിച്ച് കോഡ് ചെയ്യുന്നതിനെക്കുറിച്ച് നിങ്ങൾ കൂടുതലറിയും.
നിങ്ങളുടെ ധാരണ പരിശോധിക്കുക
അടുത്ത പാഠത്തിലേക്ക് കടക്കുന്നതിനു മുമ്പ്, നിങ്ങളുടെ എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്കിൽ താഴെ പറയുന്ന ചോദ്യങ്ങൾക്ക് ഉത്തരം നൽകി ഈ പാഠത്തിലെ ആശയങ്ങൾ മനസ്സിലാക്കിയിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
നിങ്ങളുടെ ധാരണാ ചോദ്യങ്ങൾ പരിശോധിക്കുക > (Google Doc/ .docx / .pdf)
ഒരു പ്രോജക്റ്റിൽ Else ifബ്ലോക്ക് പ്രയോഗിക്കാൻNext >തിരഞ്ഞെടുക്കുക.