കണ്ടീഷണലുകൾ ഉപയോഗിച്ചുള്ള പ്രോഗ്രാമിംഗ് - പൈത്തൺ
അധ്യാപക ഉപകരണപ്പെട്ടി
-
ഈ പ്രവർത്തനത്തിന്റെ ഉദ്ദേശ്യം
സ്ക്രീനിൽ അമർത്തിയാൽ മാത്രമേ റോബോട്ട് മുന്നോട്ട് നീങ്ങൂ എന്നതിന് ഉം ഉം ഇഫ് പ്രസ്താവനകൾ ഉപയോഗിക്കാൻ ഈ പ്രവർത്തനം വിദ്യാർത്ഥികളെ പരിചയപ്പെടുത്തും.
- ഈ പ്രവർത്തനം വിദ്യാർത്ഥികളെ സ്ക്രീനിൽ അമർത്തിയാൽ മാത്രമേ റോബോട്ട് മുന്നോട്ട് ഓടിക്കാൻ സാധിക്കൂ എന്നതിനെക്കുറിച്ചുള്ള നിബന്ധനകളും നിർദ്ദേശങ്ങളും പരിചയപ്പെടുത്തും.
- ഈ പ്രവർത്തനത്തിൽ ഉപയോഗിച്ചിരിക്കുന്ന if ഉം if-else പ്രസ്താവനകളോ മറ്റുള്ളവയോ സംബന്ധിച്ച കൂടുതൽ വിവരങ്ങൾക്ക്, VEXcode V5-ലെ സഹായ വിവരങ്ങൾ സന്ദർശിക്കുക. ഈ ബിൽറ്റ്-ഇൻ ഹെൽപ്പ് ടൂളിനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, പൈത്തൺലെ ഹെൽപ്പിനെക്കുറിച്ചുള്ള ലേഖനം പരിശോധിക്കുക.
ടീച്ചർ ടൂൾബോക്സ്
ഈ വിഭാഗത്തിലെ അധ്യാപന തന്ത്രങ്ങളെക്കുറിച്ചുള്ള നിർദ്ദേശങ്ങൾക്ക്, ചെയ്യേണ്ടതോ ചെയ്യരുതാത്തതോ ആയ പേസിംഗ് ഗൈഡിന്റെ ഡെലിവറി കോളം അവലോകനം ചെയ്യുക! (ഗൂഗിൾ ഡോക് / .ഡോക്സ് / .പിഡിഎഫ്)
ക്ലോബോട്ട് തീരുമാനങ്ങൾ എടുക്കാൻ തയ്യാറാണ്!
if-elseസ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുന്ന ചില രസകരമായ പ്രോജക്ടുകൾ സൃഷ്ടിക്കാൻ തുടങ്ങുന്നതിനുള്ള ഉപകരണങ്ങൾ ഈ പര്യവേക്ഷണം നിങ്ങൾക്ക് നൽകും.
- ഈ പര്യവേഷണത്തിൽ ഉപയോഗിക്കുന്ന VEXcode V5 പൈത്തൺ കമാൻഡുകൾ:
- ഡ്രൈവ്ട്രെയിൻ.ഡ്രൈവ്_ഫോർ(ഫോർവേഡ്)
- ബ്രെയിൻ.സ്ക്രീൻ.പ്രസ്സിംഗ്()
- ഡ്രൈവ്ട്രെയിൻ.സ്റ്റോപ്പ്()
- വ്യവസ്ഥ ആണെങ്കിൽ:
- അല്ലെങ്കിൽ:
- ശരിയാണെങ്കിലും:
- കാത്തിരിക്കുക(5, സെക്കൻഡ്)
പൈത്തൺ കമാൻഡുകളെക്കുറിച്ച് പഠിക്കാൻ VEXcode V5-ന്റെ ഉള്ളിലെ സഹായ വിവരങ്ങൾ നിങ്ങൾക്ക് ഉപയോഗിക്കാം.

ആവശ്യമായ ഹാർഡ്വെയർ, എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്ക്, VEXcode V5 എന്നിവ തയ്യാറാണെന്ന് ഉറപ്പാക്കുക.
| അളവ് | ആവശ്യമായ വസ്തുക്കൾ |
|---|---|
| 1 |
VEX V5 ക്ലാസ്റൂം സ്റ്റാർട്ടർ കിറ്റ് (കാലികമായ ഫേംവെയറോടുകൂടി) |
| 1 |
VEXcode V5 (ഏറ്റവും പുതിയ പതിപ്പ്, വിൻഡോസ്, macOS) |
| 1 |
എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്ക് |
| 1 |
ക്ലോബോട്ട് (ഡ്രൈവ്ട്രെയിൻ 2-മോട്ടോർ, ഗൈറോ ഇല്ല) ടെംപ്ലേറ്റ് |
അധ്യാപക നുറുങ്ങുകൾ
വിദ്യാർത്ഥി ആദ്യമായി VEXcode V5 ഉപയോഗിക്കുകയാണെങ്കിൽ, ഈ പര്യവേക്ഷണ വേളയിൽ ഏത് സമയത്തും അവർക്ക് ട്യൂട്ടോറിയലുകൾ റഫർ ചെയ്യാൻ കഴിയും. ട്യൂട്ടോറിയലുകൾ ടൂൾബാറിലാണ് സ്ഥിതി ചെയ്യുന്നത്.

ഘട്ടം 1: കണ്ടീഷണൽ സ്റ്റേറ്റ്മെന്റുകളെക്കുറിച്ചുള്ള ഒരു ധാരണയോടെ നമുക്ക് ആരംഭിക്കാം.
കണ്ടീഷനലുകൾ ഉപയോഗിച്ച് പ്രോഗ്രാമിംഗ് ആരംഭിക്കുന്നതിന് മുമ്പ്,if-elseപ്രസ്താവനകൾ വിശദീകരിക്കുന്ന ലേഖനം വായിക്കുക. ലേഖനം ഇവിടെ കാണാം (Google Doc / .docx / .pdf).
if-elseപ്രസ്താവനകളിൽ ഉപയോഗിക്കേണ്ട ഓപ്പറേറ്റർമാരുടെ പട്ടികയ്ക്കായി, ബൂളിയൻസിനെ വിശദീകരിക്കുന്ന ലേഖനം വായിക്കുക. ഈ ലേഖനം ഇവിടെ കാണാം (Google Doc/.docx/.pdf).
ഘട്ടം 2: കണ്ടീഷണൽ സ്റ്റേറ്റ്മെന്റുകൾ ഉപയോഗിച്ച് പ്രോഗ്രാമിംഗ് ആരംഭിക്കാം.
-
Clawbot (Drivetrain 2-motor, No Gyro) ടെംപ്ലേറ്റ് ഉദാഹരണ പ്രോജക്റ്റ് തുറക്കുക.

- താഴെ പ്രോജക്റ്റ് നിർമ്മിക്കുക.
# പ്രോജക്റ്റ് കോഡ്
ആരംഭിക്കുമ്പോൾ True:
drivetrain.drive(FORWARD)
brain.screen.pressing():
drivetrain.stop()
while brain.screen.pressing():
wait(5, MSEC)
wait(5, MSEC)നിങ്ങളുടെ എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്കിൽ ഇനിപ്പറയുന്നവ ചെയ്യുക:
- ക്ലോബോട്ടിന്റെ പ്രോജക്റ്റ് എന്താണ് ചെയ്യുന്നതെന്ന് വിശദീകരിക്കുക. അത് ഒരു സ്റ്റോപ്പ് ബട്ടൺ സൃഷ്ടിക്കുന്നു എന്ന വസ്തുതയേക്കാൾ കൂടുതൽ നിങ്ങൾ വിശദീകരിക്കേണ്ടതുണ്ട്. ഏതൊക്കെ നിർദ്ദേശങ്ങളാണ് ക്ലോബോട്ടിനെ എന്തുചെയ്യാൻ പ്രേരിപ്പിക്കുന്നതെന്ന് വിശദീകരിക്കുക.
- പ്രോജക്റ്റ് എന്താണ് ചെയ്യുന്നതെന്ന് വ്യക്തമാക്കുന്ന ഒരു വാചക സംഗ്രഹം എഴുതുക.
- ക്ലോബോട്ട് ചെയ്യുന്ന പ്രോജക്റ്റിനെക്കുറിച്ചുള്ള നിങ്ങളുടെ പ്രവചനം ശരിയാണോ എന്ന് പരിശോധിക്കാൻ ശ്രമിക്കുക.
- പ്രോജക്റ്റിന്എന്ന് പേര് നൽകുക CreatingAStopButton. Clawbot-ൽ പ്രോജക്റ്റ് ഡൗൺലോഡ് ചെയ്ത്.
- പ്രോജക്റ്റിനെക്കുറിച്ചുള്ള നിങ്ങളുടെ വിശദീകരണങ്ങൾ പരിശോധിക്കുക, ആവശ്യാനുസരണം അവ ശരിയാക്കാൻ കുറിപ്പുകൾ ചേർക്കുക.
ടീച്ചർ ടൂൾബോക്സ്
-
ഉത്തരങ്ങൾ
ഈ പ്രോജക്റ്റിൽ റോബോട്ട് തുടർച്ചയായി മുന്നോട്ട് ഓടിക്കുന്നു, പക്ഷേ സ്ക്രീൻ അമർത്തിയാൽ നിർത്തുന്നു. ഇത് തുടർച്ചയായി ഡ്രൈവ് ചെയ്യുന്നതിനും പരിശോധിക്കുന്നതിനുമായി ഒരു "forever" സ്റ്റേറ്റ്മെന്റ് (അതേസമയം True)ഉപയോഗിച്ചാണ് ചെയ്യുന്നത്. സ്ക്രീൻ അമർത്തിയാൽ (ശരി), ക്ലോബോട്ട് ഡ്രൈവിംഗ് നിർത്തും.
brain.screen.pressing():ഉം wait(5, MSEC) കമാൻഡുകൾ ഉപയോഗിക്കുമ്പോൾ ഉപയോഗിക്കുന്നത് എന്തുകൊണ്ടാണെന്ന് വിദ്യാർത്ഥികൾക്ക് മനസ്സിലാകുമെന്ന് പ്രതീക്ഷിക്കുന്നില്ല. റോബോട്ടിന്റെ പ്രോഗ്രാം ഫ്ലോയുടെ വേഗത കാരണം ഈ കമാൻഡുകൾ ആവശ്യമാണെന്ന് വിശദീകരിക്കുക. അത് അവിടെ ഇല്ലായിരുന്നുവെങ്കിൽ, പ്രോജക്റ്റിലൂടെ ലൂപ്പ് ചെയ്യുമ്പോൾ ഉപയോക്താവ് സ്ക്രീൻ വീണ്ടും വീണ്ടും അമർത്തുന്നത് പോലെ ക്ലോബോട്ടിന്റെ മോട്ടോറുകൾ പ്രവർത്തിക്കും. പകരം, ഈ നിർദ്ദേശങ്ങൾ പ്രോഗ്രാം ഫ്ലോ നിർത്തുന്നു, കൂടാതെ ഉപയോക്താവ് സ്ക്രീൻ അമർത്തുന്നത് നിർത്തുന്നത് വരെ പ്രോജക്റ്റ് വീണ്ടും ലൂപ്പ് ആരംഭിക്കാൻ അനുവദിക്കുന്നില്ല.
സ്യൂഡോകോഡിന്റെ വരി ഇതുപോലെ ലളിതമാകാം: സ്ക്രീൻ അമർത്തുന്നത് വരെ മുന്നോട്ട് ഡ്രൈവ് ചെയ്യുക.
വിദ്യാർത്ഥികളുടെ എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്കുകൾ വ്യക്തിഗതമായി (ഗൂഗിൾ ഡോക് / .docx / .pdf) അല്ലെങ്കിൽ ഒരു ടീമായി (ഗൂഗിൾ ഡോക് / .docx / .pdf) പരിപാലിക്കുകയും സ്കോർ ചെയ്യുകയും ചെയ്യാം. മുമ്പത്തെ ലിങ്കുകൾ ഓരോ സമീപനത്തിനും വ്യത്യസ്തമായ റൂബ്രിക് നൽകുന്നു. വിദ്യാഭ്യാസ ആസൂത്രണത്തിൽ ഒരു റൂബ്രിക് ഉൾപ്പെടുത്തുമ്പോഴെല്ലാം, പ്രവർത്തനം ആരംഭിക്കുന്നതിന് മുമ്പ് റൂബ്രിക് വിശദീകരിക്കുകയോ കുറഞ്ഞത് വിദ്യാർത്ഥികൾക്ക് പകർപ്പുകൾ നൽകുകയോ ചെയ്യുന്നത് നല്ല രീതിയാണ്.
ഘട്ടം 3:whileഉംwait()പ്രസ്താവനകൾ മനസ്സിലാക്കുക.
ബ്രെയിനിന്റെ സ്ക്രീൻ അമർത്തിയാൽ, പ്രോജക്റ്റിന്റെ ഒഴുക്ക് വേഗത്തിൽ നീങ്ങുകയും പ്രോജക്റ്റ് അടുത്ത നിർദ്ദേശത്തിലേക്ക് നീങ്ങുകയും ചെയ്യും, അത് drivetrain.stop()കമാൻഡാണ്.
അതിനാൽ, പ്രോജക്റ്റിന് while ഉം wait കമാൻഡുകൾ ആവശ്യമാണ്, അവ ബ്രെയിനിന്റെ സ്ക്രീൻ റിലീസ് ചെയ്യുന്നതുവരെ റോബോട്ടിനോട് നിർത്തിയിരിക്കാൻ പറയുന്നു. അല്ലെങ്കിൽ, foreverസ്റ്റേറ്റ്മെന്റ് പ്രോജക്റ്റ് വീണ്ടും ആരംഭിക്കാൻ കാരണമാകും.
brain.screen.pressing() ചെയ്യുമ്പോൾ:
wait(5, MSEC)പ്രോജക്റ്റിന്റെ വേഗത കാരണംwhile ഉം waitകമാൻഡുകൾ ആവശ്യമാണ്. അവർ അവിടെ ഇല്ലായിരുന്നുവെങ്കിൽ, റോബോട്ടിന് പ്രതികരിക്കാൻ സമയം ലഭിക്കുന്നതിന് മുമ്പ് പ്രോജക്റ്റ് അടുത്ത നിർദ്ദേശത്തിലേക്ക് നീങ്ങുമായിരുന്നു.
ഘട്ടം 4: പ്രോജക്റ്റ് മാറ്റുക.
നമ്മുടെ അടുത്ത ഘട്ടംifസ്റ്റേറ്റ്മെന്റിൽ നിന്ന്if-else സ്റ്റേറ്റ്മെന്റിലേക്ക് മാറ്റുക എന്നതാണ്.
- പുതിയ പ്രോജക്റ്റ്,StopOrDrive ആയിCreatingAStopButtonസേവ് ചെയ്തുകൊണ്ട് ആരംഭിക്കുക.
- ഒരു പ്രോജക്റ്റ് സംരക്ഷിക്കുന്നതിന് സഹായം ആവശ്യമുണ്ടെങ്കിൽ, ഈ ലേഖനങ്ങൾ കാണുക.
- പിന്നെ താഴെ കാണിച്ചിരിക്കുന്നStopOrDriveപ്രോജക്റ്റ് നിർമ്മിക്കുക.
# പ്രോജക്റ്റ് കോഡ്
ആരംഭിക്കുമ്പോൾ True:
brain.screen.pressing():
drivetrain.stop()
while brain.screen.pressing():
wait(5, MSEC)
else:
drivetrain.drive(FORWARD)
wait(5, MSEC)- നിങ്ങളുടെ Clawbot-ൽStopOrDriveനിന്ന് Slot 2-ലേക്ക് ഡൗൺലോഡ് ചെയ്യുക.
- ഒരു പ്രോജക്റ്റ് ഡൗൺലോഡ് ചെയ്യുന്നതിനും പ്രവർത്തിപ്പിക്കുന്നതിനുമുള്ള സഹായത്തിന്, ഈ ലേഖനംകാണുക.
- CreatingAStopButton(സ്ലോട്ട് 1) പരീക്ഷിച്ചു നോക്കൂ, തുടർന്ന്StopOrDrive(സ്ലോട്ട് 2) പരീക്ഷിച്ചു നോക്കൂ, റോബോട്ടിന്റെ പെരുമാറ്റത്തിൽ എന്തെങ്കിലും വ്യത്യാസമുണ്ടോ എന്ന് താരതമ്യം ചെയ്ത് നോക്കൂ. നിങ്ങളുടെ എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്കിലെ വ്യത്യാസങ്ങൾ ശ്രദ്ധിക്കുക.
ടീച്ചർ ടൂൾബോക്സ്
-
ഉത്തരം
റോബോട്ടിന്റെ പെരുമാറ്റം സംബന്ധിച്ച്,CreatingAStopButtonഉംStopOrDriveപ്രോജക്റ്റുകളും തമ്മിൽഅല്ലവ്യത്യാസം മാത്രമേ ഉണ്ടാകാവൂ.
if-elseപ്രസ്താവനകൾ മനസ്സിലാക്കാൻ വിദ്യാർത്ഥികൾക്ക് കൂടുതൽ സഹായം ആവശ്യമുണ്ടെങ്കിൽ, ഈ ലേഖനം കാണുക (Google Doc / .docx / .pdf).
രണ്ട് പ്രോജക്റ്റുകളിലും ക്ലോബോട്ടിന്റെ പെരുമാറ്റം ഒരേ രീതിയിലാണ്. StopOrDrive പ്രോജക്റ്റിൽ if-else സ്റ്റേറ്റ്മെന്റിന്റെ ഉപയോഗം മാത്രമാണ് വ്യത്യാസം.
if-else സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുന്നത് വരാനിരിക്കുന്ന പ്രവർത്തനങ്ങളിൽ സ്ക്രീനിൽ കൂടുതൽ ബട്ടണുകൾ ചേർക്കാൻ നിങ്ങളെ അനുവദിക്കും.
നിങ്ങളുടെ പഠനം വിപുലീകരിക്കുക
ഈ STEM ലാബ് മുന്നോട്ട് പോകുമ്പോൾ, ക്ലോബോട്ടിന്റെ സ്ക്രീൻ ഒരു ഉപയോക്തൃ ഇന്റർഫേസായി പ്രവർത്തിക്കാൻ അനുവദിക്കുന്ന പ്രോജക്ടുകൾ വിദ്യാർത്ഥികൾ വികസിപ്പിക്കും. അതിനുള്ള തയ്യാറെടുപ്പിൽ, ഒരു ബട്ടൺ പോലെ പ്രവർത്തിക്കുന്ന ഒരു നിറമുള്ള ദീർഘചതുരം സ്ക്രീനിൽ എങ്ങനെ വരയ്ക്കാമെന്ന് കണ്ടെത്താൻ വിദ്യാർത്ഥികളെ വെല്ലുവിളിക്കുക. സ്ക്രീനിൽ എവിടെയെങ്കിലും അമർത്തുക എന്നതാണ് നിലവിലെ വ്യവസ്ഥ, അതിനാൽ ബട്ടൺ മുഴുവൻ സ്ക്രീനും ആക്സസ് ചെയ്യണം. പദ്ധതി ആരംഭിക്കുമ്പോൾ ബട്ടൺ വരയ്ക്കുന്നതിനായി വിദ്യാർത്ഥികൾ ഒരു പരിപാടി പ്രക്ഷേപണം ചെയ്യണം.
തലച്ചോറിന്റെ സ്ക്രീൻ ഒരു കോർഡിനേറ്റ് സിസ്റ്റമായി എങ്ങനെ ക്രമീകരിച്ചിരിക്കുന്നുവെന്ന് ആദ്യം പഠിക്കാൻ വിദ്യാർത്ഥികളെ പ്രേരിപ്പിക്കുക. അവർ ഉപയോഗിക്കുന്ന കമാൻഡുകളിൽ പാരാമീറ്ററുകൾ സജ്ജമാക്കുന്നതിന് അവർ ഇത് മനസ്സിലാക്കേണ്ടതുണ്ട്. ഉപയോഗിച്ചിരിക്കുന്ന കോർഡിനേറ്റുകൾ നിരയുടെയോ വരിയുടെയോ എണ്ണവുമായി പൊരുത്തപ്പെടുന്നില്ല, പിക്സലുകളുടെ എണ്ണവുമായി പൊരുത്തപ്പെടുന്നു. സ്ക്രീനിന്റെ ലേഔട്ട് ഇതാ:
വിദ്യാർത്ഥികൾ അവരുടെ എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്കുകളിൽ രേഖപ്പെടുത്തുമ്പോൾ പ്രോജക്റ്റിലെ ഈ മാറ്റങ്ങൾ ആസൂത്രണം ചെയ്യുകയും പരീക്ഷിക്കുകയും പരിഷ്കരിക്കുകയും വേണം. വ്യക്തിഗത എഞ്ചിനീയറിംഗ് നോട്ട്ബുക്ക് റൂബ്രിക്കിനായി, ഇനിപ്പറയുന്ന ലിങ്കുകളിൽ ഒന്ന് ക്ലിക്കുചെയ്യുക (Google Doc / .docx / .pdf), അല്ലെങ്കിൽ ടീം നോട്ട്ബുക്കുകൾക്കായി ഇനിപ്പറയുന്ന ലിങ്കുകളിൽ ഒന്ന് ക്ലിക്കുചെയ്യുക (Google Doc / .docx / .pdf).
ഒരു ഉദാഹരണ പരിഹാരം ഇതാ:
# പ്രൊജക്റ്റ് കോഡ് ആരംഭിക്കുക
draw = Event()
def draw_button():
brain.screen.set_fill_color(Color.RED)
brain.screen.draw_rectangle(0, 0, 480, 240)
wait(1, SECONDS)
draw(draw_button)
while True:
draw.broadcast()
drivetrain.drive(FORWARD)
brain.screen.pressing():
drivetrain.stop()
while brain.screen.pressing():
wait(5, MSEC)
else:
drivetrain.drive(FORWARD)
wait(5, MSEC)നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, (0, 0) ആരംഭത്തിൽ നിന്ന് ആരംഭിച്ച് 480 തിരശ്ചീന (x-ആക്സിസ്) പിക്സലുകളും 240 ലംബ (y-ആക്സിസ്) പിക്സലുകളും പൂരിപ്പിക്കുന്നതിനായി ബട്ടൺ വരയ്ക്കുന്നു.
