പാഠം 3: ചുവപ്പ് നിറം കണ്ടെത്തുമ്പോൾ
ചുവപ്പ് നിറം കണ്ടെത്തിയാൽ എന്തുചെയ്യണമെന്ന് വിആർ റോബോട്ടിനോട് പറയാൻ കമാൻഡുകളൊന്നുമില്ല. ചുവന്ന ബോർഡർ ഒഴിവാക്കാൻ, ഈ വീഡിയോയിലെന്നപോലെ, ചുവപ്പ് നിറം തിരിച്ചറിഞ്ഞുകഴിഞ്ഞാൽ VR റോബോട്ട് പിന്നിലേക്ക് തിരിഞ്ഞുനോക്കണം.
-
ഡൗൺ ഐ സെൻസർ ചുവന്ന ബോർഡർ കണ്ടെത്തുമ്പോൾ എന്ത് സംഭവിക്കണമെന്ന് സൂചിപ്പിക്കുന്നതിന്whileലൂപ്പിന്റെ അവസാനം ഒരു കമന്റ് ചേർക്കുക. നിങ്ങളുടെ പ്രോജക്റ്റ് ഇപ്പോൾ ഇതുപോലെ ആയിരിക്കണം:
def main(): # ചുവന്ന ബോർഡർ കണ്ടെത്താത്ത സമയത്ത് കെട്ടിടം തിരയുക down_eye.detect(RED) അല്ലാത്തപ്പോൾ: # ഡിസ്റ്റൻസ് സെൻസർ ഒരു കാസിൽ കണ്ടെത്തുന്നുണ്ടോ? if front_distance.found_object(): # Distance Sensor drivetrain.drive(FORWARD) വഴി ക്രാഷ് കാസിൽ കണ്ടെത്തി else: # Distance Sensor drivetrain.turn(RIGHT) ഉപയോഗിച്ച് ഒരു കാസിൽ കണ്ടെത്താൻ തിരിയുക wait(5, MSEC) # ചുവന്ന ബോർഡർ കണ്ടെത്തുമ്പോൾ പിന്നിലേക്ക് തിരിയുക -
VR റോബോട്ടിനെ റിവേഴ്സ് ചെയ്യാനും ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം തിരിച്ചറിഞ്ഞാൽ തിരിക്കാനും അനുവദിക്കുന്നതിന് കമന്റിന് താഴെ drive_forഉം turn_for ഉം കമാൻഡുകൾ ചേർക്കുക.
def main(): # ചുവന്ന ബോർഡർ കണ്ടെത്താത്ത സമയത്ത് കെട്ടിടം തിരയുക down_eye.detect(RED) അല്ലാത്തപ്പോൾ: # ഡിസ്റ്റൻസ് സെൻസർ ഒരു കാസിൽ കണ്ടെത്തുന്നുണ്ടോ? if front_distance.found_object(): # Distance Sensor drivetrain.drive(FORWARD) വഴി ക്രാഷ് കാസിൽ കണ്ടെത്തി else: # Distance Sensor drivetrain.turn(RIGHT) ഉപയോഗിച്ച് ഒരു കാസിൽ കണ്ടെത്താൻ തിരിയുക wait(5, MSEC) # ചുവന്ന ബോർഡർ കണ്ടെത്തിയപ്പോൾ പിന്നിലേക്ക് തിരിയുക drivetrain.drive_for(REVERSE, 300, MM) drivetrain.turn_for(RIGHT, 90, DEGREES) - ഡൈനാമിക് കാസിൽ ക്രാഷർ പ്ലേഗ്രൗണ്ട്തുറന്നിട്ടില്ലെങ്കിൽ അത് തുറന്ന് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക. നിങ്ങൾ ഉദ്ദേശിച്ചതുപോലെയാണോ VR റോബോട്ട് പ്രവർത്തിക്കുന്നത്?
- ഈ പ്രോജക്റ്റ് നടപ്പിലാക്കുമ്പോൾ, രണ്ട് നിബന്ധനകൾ പരിശോധിക്കുന്നു. ആദ്യത്തേത്, ലൂപ്പിനിടയിലും ലൂപ്പിനിടയിലും ഉള്ളിൽ ചുവപ്പ് നിറം കണ്ടെത്തുന്ന ഡൗൺ ഐ സെൻസറിന്റെ അവസ്ഥയാണ്. ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം കാണുന്നില്ലെങ്കിൽ, പ്രോജക്റ്റ് ഫ്ലോ കണ്ടെത്തുന്ന ഒരു വസ്തുവിന്റെ അടുത്ത അവസ്ഥയിലേക്ക് മാത്രം അവസ്ഥയിലേക്ക് നീങ്ങുമെന്ന് ശ്രദ്ധിക്കുക. ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം കണ്ടെത്തിയാൽ, പ്രോജക്റ്റ് ഫ്ലോ if else സ്റ്റേറ്റ്മെന്റ് ഒഴിവാക്കി റിവേഴ്സിലും ടേണിംഗിലും ഡ്രൈവിംഗിലേക്ക് നീങ്ങുന്നു.

- പരിശോധിക്കുന്ന രണ്ടാമത്തെ അവസ്ഥif elseസ്റ്റേറ്റ്മെന്റാണ്. ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം കണ്ടെത്തുന്നില്ലെങ്കിലും, ഡിസ്റ്റൻസ് സെൻസറിന്റെ അവസ്ഥ പരിശോധിക്കുന്നതിനായി പ്രോജക്റ്റ്വേളയിൽലൂപ്പിൽ തുടരും. ഡിസ്റ്റൻസ് സെൻസറിൽ നിന്നുള്ള ഡാറ്റ ഉപയോഗിച്ച് വിആർ റോബോട്ട് മുന്നോട്ട് വാഹനമോടിക്കണോ വലത്തേക്ക് തിരിയണോ എന്ന് തീരുമാനിക്കും.

-
എന്നിരുന്നാലും, ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം തിരിച്ചറിഞ്ഞുകഴിഞ്ഞാൽ, വിആർ റോബോട്ട് പിന്നിലേക്ക് ഡ്രൈവ് ചെയ്യും, തിരിയും, തുടർന്ന് നിർത്തും, കാരണം അവിടെയാണ് പ്രോജക്റ്റ് ഫ്ലോ അവസാനിക്കുന്നത്. പെരുമാറ്റങ്ങൾ വീണ്ടും ആവർത്തിക്കാൻ ഒരു ലൂപ്പും ഉപയോഗിക്കുന്നില്ല.

ലൂപ്പ് ഉള്ളപ്പോൾ അനന്തമായ ചേർക്കുന്നു.
-
ഒരു ലൂപ്പിൽ സ്വഭാവങ്ങൾ ആവർത്തിക്കുന്നതിന് അനന്തമായ ഉംലൂപ്പും ആവശ്യമാണ്. പ്രോജക്റ്റിന്റെ മുകളിൽ while ലൂപ്പ് ഡ്രാഗ് ചെയ്യുക അല്ലെങ്കിൽ ടൈപ്പ് ചെയ്യുക, തുടർന്ന് ഒരു ഇൻഫിനിറ്റ് ലൂപ്പ് സൃഷ്ടിക്കാൻ കൺഡിഷൻ True ആയി സജ്ജമാക്കുക. പിന്നെ, ഇൻഫിനിറ്റ് whileലൂപ്പിനുള്ളിൽ മുമ്പത്തെ കോഡ് പകർത്തി ഒട്ടിക്കുക. കമാൻഡുകൾ ശരിയായ തലക്കെട്ടുകൾക്ക് കീഴിൽ ശരിയായി ഇൻഡന്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക, അല്ലാത്തപക്ഷം പ്രോജക്റ്റ് പ്രതീക്ഷിച്ചതുപോലെ പ്രവർത്തിച്ചേക്കില്ല. നിങ്ങളുടെ പ്രോജക്റ്റ് ഇപ്പോൾ ഇതുപോലെ ആയിരിക്കണം:
def main(): while True: # ചുവന്ന ബോർഡർ കണ്ടെത്താത്ത സമയത്ത് കെട്ടിടം തിരയുക while not down_eye.detect(RED): # ഡിസ്റ്റൻസ് സെൻസർ ഒരു കാസിൽ കണ്ടെത്തുന്നുണ്ടോ? if front_distance.found_object(): # Distance Sensor drivetrain.drive(FORWARD) വഴി ക്രാഷ് കാസിൽ കണ്ടെത്തി else: # Distance Sensor drivetrain.turn(RIGHT) ഉപയോഗിച്ച് ഒരു കാസിൽ കണ്ടെത്താൻ തിരിയുക wait(5, MSEC) # ചുവന്ന ബോർഡർ കണ്ടെത്തിയപ്പോൾ പിന്നിലേക്ക് തിരിയുക drivetrain.drive_for(REVERSE, 300, MM) drivetrain.turn_for(RIGHT, 90, DEGREES) - ഡൈനാമിക് കാസിൽ ക്രാഷർ പ്ലേഗ്രൗണ്ട്തുറന്നിട്ടില്ലെങ്കിൽ അത് തുറന്ന് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക. നിങ്ങൾ ഉദ്ദേശിച്ചതുപോലെ വിആർ റോബോട്ട് പ്രവർത്തിക്കുന്നുണ്ടോ?
-
ഈ പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുമ്പോൾ, VR റോബോട്ട് കണ്ടെത്തിയ ഒരു കോട്ടയിലേക്ക് ഓടിക്കുകയും കോട്ടകളൊന്നും റിപ്പോർട്ട് ചെയ്തിട്ടില്ലെങ്കിൽ വലത്തേക്ക് തിരിയുകയും ചെയ്യും. ഡൗൺ ഐ സെൻസർ ചുവപ്പ് നിറം തിരിച്ചറിഞ്ഞുകഴിഞ്ഞാൽ, വിആർ റോബോട്ട് പിന്നിലേക്ക് നീങ്ങി, തിരിഞ്ഞ് മറ്റൊരു കോട്ടയിലേക്ക് നീങ്ങുന്നത് തുടരുന്നു.

ചോദ്യങ്ങൾ
പാഠ ക്വിസ് ആക്സസ് ചെയ്യുന്നതിന് താഴെയുള്ള ലിങ്ക് തിരഞ്ഞെടുക്കുക.