Skip to main content

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

  • ഇനി വി.ആർ. റോബോട്ട് '1' എന്ന നമ്പറിലേക്ക് തിരികെ പോകും.

    നമ്പർ ഗ്രിഡ് മാപ്പിലെ കളിസ്ഥലത്തിന്റെ താഴെ ഇടത് മൂലയിൽ x, y അച്ചുതണ്ടുകൾ ഓവർലേ ചെയ്തിരിക്കുന്നു. x അക്ഷത്തിൽ നെഗറ്റീവ് 900 മുതൽ നമ്പർ 1 വരെയും y അക്ഷത്തിൽ നെഗറ്റീവ് 900 മുതൽ നമ്പർ 1 വരെയും ഒരു അമ്പടയാളം കാണിച്ചിരിക്കുന്നു. വിആർ റോബോട്ട് ഇപ്പോൾ അഞ്ചാം സ്ഥാനത്താണ്, കോർഡിനേറ്റുകൾ നെഗറ്റീവ് 100 ഉം നെഗറ്റീവ് 900 ഉം ആണ്, റോബോട്ടിന് താഴെയാണ്.
  • VR റോബോട്ടിനെ '1' എന്ന നമ്പറിലേക്ക് തിരികെ നാവിഗേറ്റ് ചെയ്യാൻ, stopകമാൻഡ് നീക്കം ചെയ്‌ത് താഴെ പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുക. നിങ്ങളുടെ പ്രോജക്റ്റ് ഇതുപോലെ ആയിരിക്കണം:
# "main" എന്നതിൽ പ്രോജക്റ്റ് കോഡ് ചേർക്കുക
def main():
    drivetrain.turn_for(RIGHT, 90, DEGREES)

    while location.position(X, MM) < -100:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)
    
    drivetrain.turn_for(RIGHT, 180, DEGREES)

    while location.position(X, MM) > -900:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)

    drivetrain.stop()
  • രണ്ടാമത്തെ ലൂപ്പിൽ, ലൂപ്പിൽ, ലെസ് താൻ ഓപ്പറേറ്ററിന് പകരം ഗ്രേറ്റർ താൻ ഓപ്പറേറ്റർ അടങ്ങിയിരിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക. കാരണം, വിആർ റോബോട്ട് ഇപ്പോൾ എക്സ് അച്ചുതണ്ടിലൂടെ സഞ്ചരിക്കുകയും സംഖ്യകൾ ചെറുതായി വരികയും ചെയ്യുന്നു. X-മൂല്യങ്ങൾ -900-ൽ താഴെയാകുമ്പോൾ VR റോബോട്ട് നിർത്തും.
    രണ്ടാമത്തെ 'ലൊക്കേഷൻ പൊസിഷൻ' കമാൻഡിന് ചുറ്റും ഒരു ചുവന്ന ബോക്സ് ഉപയോഗിച്ച് മുൻ ഘട്ടത്തിൽ സൃഷ്ടിച്ച പ്രോജക്റ്റ്, greater than ഓപ്പറേറ്ററിലേക്ക് ശ്രദ്ധ ആകർഷിക്കുന്നു.
  • നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട് തുറന്നിട്ടില്ലെങ്കിൽ അത് സമാരംഭിച്ച് പ്രോജക്റ്റ് പ്രവർത്തിപ്പിക്കുക.
  • നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ൽ '1' എന്ന നമ്പറിലേക്ക് VR റോബോട്ട് ഡ്രൈവ് ചെയ്യുന്നത് കാണുക.
  • ഈ പ്രോജക്റ്റിൽ, VR റോബോട്ട് നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ട്ലെ '1' എന്ന നമ്പറിലേക്ക് ഡ്രൈവ് ചെയ്യുന്നു. VR റോബോട്ട് '1' എന്ന സംഖ്യയിലേക്ക് ഡ്രൈവ് ചെയ്യുമ്പോൾ X- മൂല്യങ്ങൾ നിന്ന് കുറയുന്നതിനാൽ, പ്രോജക്റ്റ് ഒരു വലിയ ഓപ്പറേറ്ററെ ഉപയോഗിക്കുന്നു.
  • സൂചിപ്പിച്ചിരിക്കുന്ന സംഖ്യ ഓണായിരിക്കുന്ന കോർഡിനേറ്റിനെക്കാൾ X-ന്റെ മൂല്യം കൂടുതലായിരിക്കുമ്പോൾ VR റോബോട്ട് മുന്നോട്ട് നീങ്ങുകയും അതിന്റെ X-ന്റെ മൂല്യം കോർഡിനേറ്റിന്റെ X-ന്റെ മൂല്യത്തേക്കാൾ കുറവ് ആകുമ്പോൾ നിർത്തുകയും ചെയ്യും. '1' എന്ന സംഖ്യയുടെ X- മൂല്യം -900 ആയതിനാൽ, X- മൂല്യം -900-ൽ താഴെയാകുമ്പോൾ VR റോബോട്ട് ഡ്രൈവിംഗ് നിർത്തും.

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

ഒരു waitകമാൻഡ്, അടുത്ത കമാൻഡിലേക്ക് പോകുന്നതിന് മുമ്പ്, സെക്കൻഡുകൾക്കുള്ളിൽ പ്രോജക്റ്റിന്റെ ഫ്ലോ ഒരു നിശ്ചിത സമയത്തേക്ക് താൽക്കാലികമായി നിർത്തും. നിങ്ങളുടെ പ്രോജക്റ്റിലെ വ്യക്തിഗത പെരുമാറ്റങ്ങൾ നിരീക്ഷിക്കാൻ സഹായിക്കുന്നതിന് ഒരു waitകമാൻഡ് ഉപയോഗിക്കാം, അവ ഒരുമിച്ച് വേഗത്തിൽ പ്രവർത്തിക്കും, ഉദാഹരണത്തിന് ഒരു പ്ലേഗ്രൗണ്ടിലെ രണ്ട് വ്യത്യസ്ത സ്ഥലങ്ങൾക്കിടയിൽ നീങ്ങുന്നത്. ഒരുwaitകമാൻഡിന് സെക്കൻഡുകൾക്കോ ​​മില്ലിസെക്കൻഡുകൾക്കോ ​​ഉള്ളിൽ കാത്തിരിക്കാൻ കഴിയും. ഈ രണ്ട് കമാൻഡുകളും VR റോബോട്ടിന്റെ ചലനത്തെ 1 സെക്കൻഡ് നേരത്തേക്ക് താൽക്കാലികമായി നിർത്തും.

കാത്തിരിക്കുക(1, സെക്കൻഡ്)
കാത്തിരിക്കുക(1000, എംഎസ്ഇസി)

നമ്പർ ഗ്രിഡ് മാപ്പ് പ്ലേഗ്രൗണ്ടിൽ,എന്നwaitകമാൻഡ് ഉപയോഗിച്ച് VR റോബോട്ടിനെ പ്രോജക്റ്റിലെ അടുത്ത സ്ഥലത്തേക്ക് പോകുന്നതിന് മുമ്പ് ഒരു നിർദ്ദിഷ്ട നമ്പറിൽ താൽക്കാലികമായി നിർത്താൻ കഴിയും. ഈ ഉദാഹരണത്തിൽ,waitകമാൻഡ് VR റോബോട്ടിനെ '5' എന്ന നമ്പറിൽ 2 സെക്കൻഡ് നിർത്തുകയും പിന്നീട് '1' എന്ന നമ്പറിലേക്ക് തിരികെ പോകുകയും ചെയ്യും.

# "main" എന്നതിൽ പ്രോജക്റ്റ് കോഡ് ചേർക്കുക
def main():
    drivetrain.turn_for(RIGHT, 90, DEGREES)

    while location.position(X, MM) < -100:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)
    
    drivetrain.turn_for(RIGHT, 180, DEGREES)
    wait(1, SECONDS)

    while location.position(X, MM) > -900:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)

    drivetrain.stop()

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