Search Code

ኮርስ ትምህርት 6 ከ10፡ የDC ሞተሮችን በ Raspberry Pi Pico 4WD Smart Car Kit በመቆጣጠር

ይህ ትምህርት ከ: Raspberry Pi Pico 4WD ስማርት መኪና

ኮርስ ትምህርት 6 ከ10፡ የDC ሞተሮችን በ Raspberry Pi Pico 4WD Smart Car Kit በመቆጣጠር

ይህ የፕሮጀክት መመሪያ በRobojax Raspberry Pi Pico Smart Car ኮርስ ትምህርት 6 ላይ የተመሰረተ ነው። በዚህ ክፍለ ጊዜ፣ ለ4WD መኪናዎ ብልህ እንቅፋት-መራቅ ስርዓት ለመፍጠር የሰርቮ ሞተር እና የአልትራሶኒክ ዳሳሽ እንዴት እንደሚዋሃዱ ይማራሉ። ይህ ፕሮጀክት አንድ ነገር ሲያገኝ በቀላሉ ከመቆም ይልቅ፣ መኪናዎን አካባቢውን በንቃት የሚቃኝ፣ ግልጽ መንገዱን የሚወስን እና እንቅፋቶችን የሚዞር አነስተኛ ራሱን የቻለ ሮቦት ይለውጠዋል።

ይህ የንድፈ ሃሳብ ልምምድ ብቻ አይደለም፤ ይልቁንም ይበልጥ ውስብስብ የሆኑ ሮቦቲክስ ስራዎችን ለመገንባት መሰረታዊ ፕሮጀክት ነው። ለዚህ እንቅፋት-መራቅ አመክንዮ ጥቂት ተግባራዊ አፕሊኬሽኖች እነዚህ ናቸው፦

  • ራሱን የቻለ የመመርመሪያ ሮቦት፦ ያለ ማንኛውም የርቀት መቆጣጠሪያ በክፍል ወይም በማዝ ውስጥ በራሱ መንቀሳቀስ የሚችል ሮቦት ይገንቡ።
  • ብልህ ቫክዩም ክሊነር፦ ወለሉን በሚያጸዳበት ጊዜ የቤት እቃዎችን እና ግድግዳዎችን መራቅ የሚችል ቀላል የሮቦቲክ ቫክዩም ለመፍጠር ተመሳሳይ አመክንዮ ይጠቀሙ።
  • የደህንነት ጠባቂ ሮቦት፦ መኪናውን ዙሪያውን እንዲጠብቅ ይፃፉ እና ያልተጠበቁ ነገሮችን ለመለየት እና ለመዞር የአልትራሶኒክ ዳሳሽ ይጠቀሙ።
  • የትምህርት ሮቦቲክስ መድረክ፦ ይበልጥ የላቁ የመንገድ ፍለጋ ስልተ ቀመሮችን እና የዳሳሽ ውህደትን ለመሞከር እንደ መሰረት ይጠቀሙበት።

ዋናው ፅንሰ-ሀሳብ የአልትራሶኒክ ዳሳሹን ለማሽከርከር የሰርቮ ሞተሩን መጠቀም ነው፣ ይህም ከግራ ወደ ቀኝ አካባቢውን የሚቃኝ "ራዳር" ሆኖ ይሰራል። በተለያዩ ማዕዘኖች ርቀቶችን በመለካት፣ መኪናው የአካባቢውን ካርታ መገንባት እና ወደፊት ለመሄድ፣ ወደ ግራ ለመዞር ወይም ወደ ቀኝ ለመዞር ግልጽ መንገድ ለማግኘት ውሳኔ ማድረግ ይችላል (በቪዲዮ 02፡47)።

ሃርድዌር/ክፍሎች

ይህ ፕሮጀክት የተገነባው በSunFounder Raspberry Pi Pico 4WD Smart Car Kit ዙሪያ ነው። በዚህ ትምህርት ውስጥ ጥቅም ላይ የዋሉ ቁልፍ ክፍሎች የሚከተሉት ናቸው፦

  • Raspberry Pi Pico ቦርድ
  • 4WD Smart Car ቻሲስ ከሞተሮች ጋር
  • የሞተር አሽከርካሪ ቦርድ (በኪቱ ውስጥ የተካተተ)
  • የአልትራሶኒክ ዳሳሽ (HC-SR04 ዓይነት)
  • የሰርቮ ሞተር
  • የባትሪ ማህደር

የሽቦ አገናኝ መመሪያ

ቪዲዮው ኪቱ ሙሉ ሰነዶችን፣ ደረጃ በደረጃ መመሪያዎችን እና የሽቦ አገናኝ ሥዕላዊ መግለጫዎችን እንደሚያካትት ይጠቅሳል። የሰርቮ እና የአልትራሶኒክ ዳሳሽ ሽቦ በተለምዶ ከሞተር አሽከርካሪ ቦርድ ጋር ይገናኛል፣ ይህም ለPico ግንኙነቶችን ያጠናክራል።

ለኪትዎ የተወሰኑ የፒን ግንኙነቶችን ከዚህ በታች ያለውን ሥዕላዊ መግለጫ ይመልከቱ።

የኮድ ማብራሪያ

ቪዲዮው በobstacle_avoid.py ፋይል ውስጥ ባለው አመክንዮ ላይ ያተኩራል። ሙሉ ኮድ ከኪቱ ጋር ቢገኝም፣ ይህ ትምህርት የመኪናውን ባህሪ የሚቆጣጠሩትን በተጠቃሚ ሊዋቀሩ የሚችሉ መለኪያዎችን ያጎላል። እነዚህ የሮቦትዎን አፈጻጸም ለማስተካከል ሊያስተካክሏቸው የሚፈልጓቸው ተለዋዋጮች ናቸው።

በዋናው ፕሮግራም መጀመሪያ ላይ፣ የመኪናውን ባህሪ የሚገልጹ ቁልፍ ቅንብሮችን ያገኛሉ (በቪዲዮ 13፡07)፦

# የእንቅፋት መራቅ ቅንብሮች
RADAR_REFERENCE = 20  # እንቅፋት ተደርጎ የሚቆጠርበት ርቀት በሴንቲሜትር
STEP_ANGLE = 10       # ሰርቮው ለእያንዳንዱ የቃኝ እርምጃ የሚንቀሳቀስበት ዲግሪ
FORWARD_SPEED = 30    # ወደፊት በሚሄድበት ጊዜ የሞተር ፍጥነት
TURN_SPEED = 50       # በሚዞርበት ጊዜ የሞተር ፍጥነት
FORWARD_SCAN_ANGLE = 50  # ለፈጣን ወደፊት ቃኝ ዲግሪዎች
  • RADAR_REFERENCE፦ ይህ በጣም ወሳኙ ቅንብር ነው። በሴንቲሜትር የሚለካውን ዝቅተኛውን ደህንነቱ የተጠበቀ ርቀት ይገልጻል። የአልትራሶኒክ ዳሳሹ ከዚህ እሴት ያነሰ ነገር ካወቀ፣ መኪናው እንደ "አደጋ" ይቆጥረዋል እና የመራቅ ሂደቱን ይጀምራል (በቪዲዮ 22፡03)።
  • STEP_ANGLE፦ ይህ የራዳር ቃኝ ጥራትን ይወስናል። አነስተኛ እሴት (ለምሳሌ 10 ዲግሪ) ቃኙን ይበልጥ ትክክለኛ ያደርገዋል ግን ቀርፋፋ ያደርገዋል። ትልቅ እሴት ፈጣን ያደርገዋል ግን ዝርዝር አነስተኛ ያደርገዋል።
  • FORWARD_SPEED እና TURN_SPEED፦ እነዚህ የሞተሮችን ኃይል የሚቆጣጠሩት PWM እሴቶች (0-100) ናቸው። መኪናው ወደፊት የሚሄድበትን ፍጥነት እና የሚዞርበትን ፍጥነት ለመቀየር እነዚህን ማስተካከል ይችላሉ (በቪዲዮ 13፡33)።
  • FORWARD_SCAN_ANGLE፦ እንቅፋት ከተራቀ በኋላ፣ መኪናው ወደፊት ያለው መንገድ ግልጽ መሆኑን ለማረጋገጥ ፈጣን ቃኝ ያደርጋል። ይህ ተለዋዋጭ ለዚያ ቃኝ ማዕዘኑን ያዘጋጃል። የ50 እሴት ማለት ከመሃል አንጻር ከ-25 እስከ +25 ዲግሪ ይቃኛል ማለት ነው (በቪዲዮ 13፡40)።

የቀጥታ ፕሮጀክት/ማሳያ

በቪዲዮው ውስጥ፣ አስተማሪው ፕሮጀክቱን በደረጃዎች ያሳያል። በመጀመሪያ፣ የአልትራሶኒክ ዳሳሹ ርቀትን እንዴት እንደሚለካ እና እሴቶቹን ወደ ሼል እንደሚያትም ለማሳየት ቀላል ሙከራ ያካሂዳል፣ ይህም "0" እንቅፋትን እንደሚወክል እና "1" ግልጽ መንገድን እንደሚወክል ያረጋግጣል (በቪዲዮ 03፡48)።

ከዚያም የውሳኔ አሰጣጥ ፍሰት ገበታውን ያብራራል፣ ይህም የክዋኔው አእምሮ ነው። መኪናው የራዳር ውሂቡን ለመተንተን get_direction() የተባለ ተግባር ይጠቀማል። ይህ ተግባር የቃኝ ውሂቡን ወደ ክፍት ቦታ ክፍሎች ይከፍላል እና ሰፊውን ይለያል። ይህ ሰፊ መንገድ ባለበት (ግራ፣ መሃል ወይም ቀኝ) ላይ በመመስረት፣ መኪናው ወደ የትኛው አቅጣጫ እንደሚዞር ይወስናል (በቪዲዮ 11፡19)።

በመጨረሻም፣ አስተማሪው የእንቅፋት ማዝ ያዘጋጃል እና መኪናው በውስጡ ሲዘዋወር ያሳያል። መኪናው ወደ ግራ እና ቀኝ ሲቃኝ፣ ከተጣበቀ ወደ ኋላ ሲመለስ፣ እና በመጨረሻም ያለ ማንኛውም በእጅ ቁጥጥር በእንቅፋቶቹ ውስጥ የሚያልፍበትን መንገድ ሲያገኝ ማየት ይችላሉ (በቪዲዮ 22፡53)።

ምዕራፎች

  • [00:00] የፒኮ መኪና እንቅፋት መራቅ መግቢያ
  • [01:31] የኪት ባህሪያት እና የሰነድ አጠቃላይ እይታ
  • [02:47] የእንቅፋት መራቅ ባህሪን ማሳየት
  • [03:48] የአልትራሶኒክ ዳሳሽ እና የርቀት መለኪያ መሞከር
  • [07:45] የእንቅፋት መራቅ አልጎሪዝም እና የፍሰት ገበታ ማብራሪያ
  • [12:49] ዋናውን የእንቅፋት መራቅ ኮድ መተንተን
  • [15:50] የቀጥታ ኮድ ማሳያ እና የውሂብ ትርጉም
  • [18:11] የአቅጣጫ አግኝት እና የመዞር አመክንዮ ጥልቅ ምርመራ
  • [22:53] የመጨረሻ የቀጥታ ሙከራ ከእንቅፋት ማዜ ጋር
አንድ ኮድ የተያያዘ የለም።

ምንጮች እና ምንጮች

አሁን ምንም ምንጮች የለም።

ፋይሎች📁

አንድ ፋይል የለም።