Search Code

પાઠ 9 ઓફ 10: રાસ્પબેરી પાઈ પીકો 4WD સ્માર્ટ કારનો ઉપયોગ કરીને અવરોધ ટાળવો

This lesson is part of: Raspberry Pi Pico 4WD Smart Car

પાઠ 9 ઓફ 10: રાસ્પબેરી પાઈ પીકો 4WD સ્માર્ટ કારનો ઉપયોગ કરીને અવરોધ ટાળવો

પરિચય

આ માર્ગદર્શિકા, Robojaxના કોર્સ પાઠ 9 માંથી 10 પર આધારિત, SunFounder Raspberry Pi Pico 4WD સ્માર્ટ કાર કિટનો ઉપયોગ કરીને અવરોધ-ટાળતું રોબોટ કેવી રીતે બનાવવું તે દર્શાવે છે. આ પ્રોજેક્ટ સર્વો-સંચાલિત અલ્ટ્રાસોનિક સેન્સરને મોટર નિયંત્રણ સાથે જોડીને એક રોબોટ બનાવે છે જે તેના વાતાવરણમાં સ્વાયત્ત રીતે નેવિગેટ કરી શકે છે. સેન્સરને રડારની જેમ ફેરવીને, કાર અવરોધો શોધે છે અને આગળ વધવા માટે સ્પષ્ટ માર્ગ બુદ્ધિપૂર્વક પસંદ કરે છે, જે તેને રોબોટિક્સ, સેન્સર એકીકરણ અને સ્વાયત્ત નેવિગેશન માટે ઉત્તમ પરિચય બનાવે છે.

આ પ્રોજેક્ટ માત્ર રમકડું નથી; તે ઘણી વ્યવહારિક એપ્લિકેશનો માટે પાયો છે. તમને પ્રેરણા આપવા માટે અહીં કેટલાક વિચારો છે:

  • સ્વાયત્ત સંશોધન રોબોટ: એક રોબોટ બનાવો જે માનવ હસ્તક્ષેપ વિના ઓરડા અથવા બહારના વિસ્તારનું નકશા અને સંશોધન કરી શકે.
  • સ્માર્ટ વેક્યુમ ક્લીનર: સમાન સિદ્ધાંતોનો ઉપયોગ કરીને એક રોબોટ બનાવો જે ઓરડામાં નેવિગેટ કરે, સફાઈ કરતી વખતે ફર્નિચર અને દિવાલો ટાળે.
  • સુરક્ષા પેટ્રોલ બોટ: કારને પરિમિતિની આસપાસ પેટ્રોલ કરવા અને અલ્ટ્રાસોનિક સેન્સરનો ઉપયોગ કરીને અણધાર્યા અવરોધો અથવા ઘૂસણખોરી શોધી અને જાણ કરવા માટે પ્રોગ્રામ કરો.
  • AI માટે શૈક્ષણિક પ્લેટફોર્મ: આ પ્રોજેક્ટનો ઉપયોગ પાથફાઇન્ડિંગ અને સિમ્યુલટેનિયસ લોકલાઇઝેશન એન્ડ મેપિંગ (SLAM) જેવા વધુ જટિલ અલ્ગોરિધમ્સ શીખવા માટે પગથિયા તરીકે કરો.

આ પાઠ મુખ્ય તર્ક અને કોડ પર ધ્યાન કેન્દ્રિત કરે છે જે કારને નિર્ણય લેવા સક્ષમ બનાવે છે. કાર અલ્ટ્રાસોનિક સેન્સરને ફેરવવા માટે સર્વો મોટરનો ઉપયોગ કરે છે, જે 0 થી 180 ડિગ્રી સુધીના અંતર માપવા માટે રડાર તરીકે કાર્ય કરે છે. કોડ આ ડેટાનું વિશ્લેષણ કરીને સૌથી પહોળો ખાલી માર્ગ શોધે છે અને કારને તે મુજબ આગળ, ડાબે અથવા જમણે ખસેડવા નિર્દેશિત કરે છે. વિડિઓ સંપૂર્ણ પ્રક્રિયા દર્શાવે છે, વ્યક્તિગત ઘટકોના પરીક્ષણથી લઈને વાસ્તવિક ભુલભુલામણીમાં અંતિમ અવરોધ-ટાળવાના અલ્ગોરિધમ ચલાવવા સુધી.

હાર્ડવેર/ઘટકો

આ પ્રોજેક્ટ SunFounder Raspberry Pi Pico 4WD સ્માર્ટ કાર કિટ પર આધારિત છે. આ પાઠમાં ઉપયોગમાં લેવાતા આવશ્યક ઘટકો છે:

  • Raspberry Pi Pico માઇક્રોકંટ્રોલર બોર્ડ
  • ચાર મોટર્સ સાથે SunFounder 4WD સ્માર્ટ કાર ચેસિસ
  • મોટર ડ્રાઇવર બોર્ડ
  • અલ્ટ્રાસોનિક અંતર સેન્સર (HC-SR04 પ્રકાર)
  • સર્વો મોટર (અલ્ટ્રાસોનિક સેન્સર ફેરવવા માટે)
  • પાવર સપ્લાય (કાર માટે બેટરીઓ)

વાયરિંગ માર્ગદર્શિકા

SunFounder કિટ સરળ એસેમ્બલી માટે ડિઝાઇન કરવામાં આવી છે, અને વાયરિંગ સામાન્ય રીતે સમર્પિત એક્સપેન્શન બોર્ડ દ્વારા પૂર્વ-જોડાયેલ હોય છે. અલ્ટ્રાસોનિક સેન્સર સર્વો મોટર પર માઉન્ટ થયેલ છે, જે પછી મુખ્ય નિયંત્રણ બોર્ડ સાથે જોડાયેલ છે. આ સેટઅપ સેન્સરને વાતાવરણ સ્કેન કરવા માટે ફેરવવાની મંજૂરી આપે છે. તમારી કિટ માટે વિગતવાર વાયરિંગ ડાયાગ્રામ માટે, કૃપા કરીને સત્તાવાર SunFounder દસ્તાવેજીકરણનો સંદર્ભ લો.

મુખ્ય જોડાણોમાં અલ્ટ્રાસોનિક સેન્સરના ટ્રિગર અને ઇકો પિન, અને સર્વો મોટરનો સિગ્નલ પિન સામેલ છે, જે બધા Raspberry Pi Pico પર ચોક્કસ GPIO પિન સાથે જોડાયેલા છે. મોટર ડ્રાઇવર પણ ચાર ડ્રાઇવ મોટર્સને નિયંત્રિત કરવા માટે Pico સાથે જોડાયેલ છે. વિડિઓ ઉલ્લેખ કરે છે કે સંપૂર્ણ દસ્તાવેજીકરણ, વાયરિંગ ડાયાગ્રામ સહિત, કિટ સાથે ડાઉનલોડ માટે ઉપલબ્ધ છે.

કોડ સમજૂતી

આ પાઠ `obstacle_avoid` ઉદાહરણમાં તર્ક પર ધ્યાન કેન્દ્રિત કરે છે. કોડ MicroPython માં લખાયેલ છે. સંપૂર્ણ પ્રોગ્રામ ડાઉનલોડ માટે ઉપલબ્ધ હોવા છતાં, અમે કારના વર્તનને નિયંત્રિત કરતા મુખ્ય, વપરાશકર્તા-રૂપરેખાંકિત પરિમાણો પર ધ્યાન કેન્દ્રિત કરીશું. આ સામાન્ય રીતે સ્ક્રિપ્ટની ટોચ પર જોવા મળે છે.

તમારા રોબોટની કામગીરીને સમાયોજિત કરવા માટે તમે ગોઠવી શકો તેવા મુખ્ય ચલો અહીં છે:


# રડાર અને હિલચાલ પરિમાણો
radar_reference = 20  # સલામત ગણાવા માટે સે.મી.માં લઘુત્તમ અંતર
step_angle = 10       # દરેક રડાર સ્કેન પગલા માટે કોણ વધારો
forward_speed = 30    # આગળ વધવા માટે મોટર ઝડપ (0-100)
turn_speed = 50       # વળવા માટે મોટર ઝડપ (0-100)
forward_scan_angle = 50  # કોઈ અવરોધ ન મળે ત્યારે સર્વો સ્કેન કરે તે કોણ
  • radar_reference: આ સેન્ટીમીટરમાં નિર્ણાયક સલામતી અંતર છે. જો કોઈ અવરોધ આ મૂલ્ય કરતાં નજીક મળી આવે, તો કાર તેને "જોખમ" ગણશે અને ટાળવાની યુક્તિ શરૂ કરશે. વિડિઓમાં, આ 20 સે.મી. પર સેટ છે.
  • step_angle: આ રડાર સ્કેનની રિઝોલ્યુશન વ્યાખ્યાયિત કરે છે. નાનું મૂલ્ય (દા.ત., 10 ડિગ્રી) વધુ વિગતવાર સ્કેન સૂચવે છે પરંતુ વધુ સમય લે છે. મોટું મૂલ્ય ઝડપી હશે પરંતુ સાંકડા અવરોધો ચૂકી શકે છે.
  • forward_speed & turn_speed: આ મોટર્સને મોકલવામાં આવતી શક્તિને નિયંત્રિત કરે છે. કારની એકંદર ઝડપ અને ચપળતા બદલવા માટે તમે તેમને સમાયોજિત કરી શકો છો. વળવાની ઝડપ ઘણીવાર વધુ સેટ કરવામાં આવે છે તેની ખાતરી કરવા માટે કે કાર અસરકારક રીતે ફરી શકે.
  • forward_scan_angle: જ્યારે આગળ કોઈ તાત્કાલિક જોખમ ન હોય, ત્યારે કાર તેના સીધા માર્ગમાં અવરોધો વધુ વારંવાર તપાસવા માટે તેના સ્કેનને આ કોણ સુધી સંકુચિત કરે છે (આગળ તરફ કેન્દ્રિત), જે સરળ આગળની હિલચાલ માટે પરવાનગી આપે છે.

વિડિઓ મુખ્ય નિર્ણય-લેવાનો તર્ક પણ સમજાવે છે. એક ફંક્શન `get_direction()` અંતર રીડિંગ્સની સૂચિનું વિશ્લેષણ કરે છે (સલામત/અસુરક્ષિત માટે 1s અને 0s માં રૂપાંતરિત) સૌથી પહોળો સતત "1" નો માર્ગ શોધવા માટે. આ સૌથી પહોળો માર્ગ ક્યાં છે તેના આધારે, ફંક્શન દિશા પરત કરે છે: "આગળ", "ડાબે", અથવા "જમણે". મુખ્ય લૂપ પછી અનુરૂપ ક્રિયા કરે છે, કારને ફેરવે છે અને આગળનો માર્ગ સ્પષ્ટ ન થાય ત્યાં સુધી ફરીથી સ્કેન કરે છે.

લાઇવ પ્રોજેક્ટ/પ્રદર્શન

વિડિયો પ્રોજેક્ટનું સંપૂર્ણ પ્રદર્શન પૂરું પાડે છે. તે અલ્ટ્રાસોનિક સેન્સરનું એકલાનું પરીક્ષણ કરીને શરૂ થાય છે, જે દર્શાવે છે કે તે અંતર કેવી રીતે માપે છે અને મૂલ્યોને શેલમાં છાપે છે. પ્રશિક્ષક પછી ફ્લોચાર્ટનો ઉપયોગ કરીને અવરોધ ટાળવાની અલ્ગોરિધમ સમજાવે છે, જેમાં ડાબે અને જમણે વળવાની નિર્ણય લેવાની પ્રક્રિયાની વિગતવાર માહિતી આપવામાં આવે છે. છેલ્લે, કારને બોક્સથી બનાવેલા નાના ભુલભુલામણીમાં મૂકવામાં આવે છે જેથી સંપૂર્ણ અવરોધ ટાળવાની વર્તણૂક ક્રિયામાં દર્શાવી શકાય. કાર ભુલભુલામણીમાં સફળતાપૂર્વક નેવિગેટ કરે છે, આગળનો સ્પષ્ટ માર્ગ શોધવા માટે ડાબે અને જમણે વળે છે.

વિડિયો પ્રકરણો

  • [00:00] અવરોધ ટાળવાનો પરિચય
  • [01:31] SunFounder સ્માર્ટ કાર કિટ અને સુવિધાઓની ઝાંખી
  • [02:47] અવરોધ ટાળવાની સુવિધા કેવી રીતે કાર્ય કરે છે
  • [03:34] અલ્ટ્રાસોનિક સેન્સરનું પરીક્ષણ
  • [07:45] અવરોધ ટાળવાની અલ્ગોરિધમ અને ફ્લોચાર્ટ સમજાવવું
  • [12:49] મુખ્ય અવરોધ ટાળવાના કોડનું વિશ્લેષણ
  • [15:43] અવરોધ ટાળવાના તર્કનું લાઇવ પ્રદર્શન
  • [22:53] અવરોધોના ભુલભુલામણી સાથે અંતિમ પ્રદર્શન
  • [24:35] નિષ્કર્ષ અને આગળના પગલાં
No code attached.

Resources & references

No resources yet.

Files📁

No files available.