ዝርዝር ሁኔታ:

RADbot: 7 ደረጃዎች
RADbot: 7 ደረጃዎች

ቪዲዮ: RADbot: 7 ደረጃዎች

ቪዲዮ: RADbot: 7 ደረጃዎች
ቪዲዮ: The Irony of Fate, or Enjoy Your Bath 1 episode (comedy, directed by Eldar Ryazanov, 1976) 2024, ጥቅምት
Anonim
RADbot
RADbot

በጃክሰን ብሬክ ፣ በታይለር ማክቡቢንስ እና በያቆብ ታለር ለኤፍ 230 ፕሮጀክት

በማርስ ላይ ጠፈርተኞች ከከፍተኛ ሙቀት እስከ አቧራ አውሎ ነፋስ ድረስ የተለያዩ አደጋዎች ይደርስባቸዋል። ይሁን እንጂ ብዙውን ጊዜ ችላ የተባለ አንድ ነገር በፕላኔቷ ገጽ ላይ በሚኖሩት ኃይለኛ ራዲዮሶፖፖች የቀረበው አደጋ ነው። RADbot በሚጓዙበት ጊዜ ከፍ ባለ እንቅስቃሴ የሮክ ናሙናዎችን በመለየት በማርስ ወለል ላይ የጠፈር ተመራማሪዎችን ለመመርመር እርዳታ ይሰጣል ፣ እንዲሁም የገደል አነፍናፊዎቹን ፣ የብርሃን ዳሳሾችን ፣ የመገጣጠሚያ ዳሳሾችን እና ካሜራውን የሚጠቀም በፕሮግራም ውስጥ የደህንነት ባህሪዎች አሉት ፣ ሮቦቱን ከጉዳት ይከላከላል። ይቅር በማይለው የማርቲያን መልከዓ ምድር ላይ። በላዩ ላይ ሬዲዮአክቲቭ አደጋ ሊያስከትሉ የሚችሉ ጠፈርተኞችን ከማስጠንቀቅ በተጨማሪ ፣ የሮቦቱ ራዲዮአክቲቭ የናሙና ሥፍራ ባህሪው የዩራኒየም እና የሌሎች አክቲኒዶች ተቀማጭ ቦታዎችን ሊይዙ የሚችሉ ቦታዎችን ለመለየት እንደ መሣሪያ ሆኖ ሊተገበር ይችላል። የጠፈር ተመራማሪዎች እነዚህን ንጥረ ነገሮች ማዕድን ማውጣት ፣ በበቂ ሁኔታ ማበልፀግ እና በፕላኔቷ ላይ ዘላቂ እና ራሱን የቻለ ቅኝ ግዛት ኃይልን ሊያግዝ በሚችል የኑክሌር ኃይል ማመንጫዎች እና ቴርሞኤሌክትሪክ ማመንጫዎች ውስጥ ሊጠቀሙባቸው ይችላሉ።

ከተለመደው የማርስ ሮቨር በተለየ መልኩ የእኛ ዲዛይን ከመደርደሪያ ክፍሎች እና ተመጣጣኝ የዋጋ መለያዎችን ያሳያል። ገንዘቡ እና ፍላጎቱ ካለዎት ይህንን መመሪያ በመከተል እራስዎን እንኳን መገንባት ይችላሉ። የራስዎን RADbot እንዴት እንደሚሠሩ ለማወቅ እባክዎ ያንብቡ።

ደረጃ 1 አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ

አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ
አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ
አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ
አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ
አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ
አስፈላጊ ክፍሎችን እና ቁሳቁሶችን ያግኙ

ለመጀመር የሚያስፈልግዎት (ምስሎች በተዘረዘሩት ቅደም ተከተል የተቀመጡ)

1. አንድ Roomba (ማንኛውም አዲስ ሞዴል)

2. አንድ ጂገር-ሙለር ቆጣሪ

3. አንድ Raspberry Pi

4. የዩኤስቢ መውጫ ያለው አንድ የቦርድ ካሜራ

5. አንድ ማይክሮ ዩኤስቢ ወደ ዩኤስቢ ገመድ

6. አንድ ዩኤስቢ ወደ ዩኤስቢ ገመድ

7. አንድ በቂ የራዲዮአክቲቭ ናሙና (~ 5μSv ወይም ከዚያ በላይ)

8. ማትላብ የተጫነበት አንድ ኮምፒውተር

9. ማጣበቂያ (ለቀላል መወገድ ቢቻል ይመረጣል የቴፕ ቴፕ)

ደረጃ 2 የካሜራውን እና የጊገር-ሙለር ቆጣሪን ማዋቀር

ካሜራውን እና ጂገር-ሙለር ቆጣሪን በማዋቀር ላይ
ካሜራውን እና ጂገር-ሙለር ቆጣሪን በማዋቀር ላይ

አሁን RADbot ን ለመፍጠር የሚያስፈልጉ ሁሉም ቁሳቁሶች ስላሉዎት እንቅስቃሴውን በመደርደሪያው ላይ እንዲያነብ በቀላሉ ካሜራውን በማስቀመጥ እንጀምራለን። የጊገር-ሙለር ቆጣሪን በተቻለ መጠን ወደ Roomba መጨረሻ ቅርብ አድርገው ያስቀምጡ ፣ እና የእሱ ዳሳሽ እንዳልታገደ ያረጋግጡ። እርስዎ ከመረጡት ማጣበቂያ ጋር ቆጣሪውን በቦታው በጥብቅ ይጠብቁ እና ካሜራውን ለመጋጠም ይቀጥሉ። የውጭ ግብዓቶች በፕሮግራሙ ላይ ተጽዕኖ እንዳያሳድሩ ካሜራውን በተቻለ መጠን ወደ ቆጣሪው ማሳያ ያስቀምጡ እና አንዴ ምቾት ከተሰማዎት በቦታው ያስቀምጡት። ምንም እንኳን የካሜራውን ደህንነት ለመጠበቅ በመጨረሻ እንዲያስቀምጡ እንመክራለን ፣ ምክንያቱም ፣ ኮድዎ ሲጠናቀቅ ፣ በካሜራው በእይታ መስክ ላይ እንዲቀመጡ በመፍቀድ ፣ ከካሜራ ምስል ወደ ኮምፒውተርዎ ላይ ማሳየት ይችላሉ። አንዴ ካሜራው እና ቆጣሪው በጥብቅ ከተቀመጡ ፣ ካሜራውን ከራስፕቤሪ ፒ ዩኤስቢ ግብዓቶች በአንዱ ከዩኤስቢ ወደ ዩኤስቢ ገመድ ያስገቡ እና Raspberry Pi ን ወደ ማይክሮባው ዩኤስቢ ገመድ ወደ ሮምባ ያስገቡ።

ደረጃ 3: ከእርስዎ Roomba ጋር ይገናኙ እና የብርሃን ዳሳሽ ኮድ ይፍጠሩ

ከእርስዎ Roomba ጋር ይገናኙ እና የብርሃን ዳሳሽ ኮድ ይፍጠሩ
ከእርስዎ Roomba ጋር ይገናኙ እና የብርሃን ዳሳሽ ኮድ ይፍጠሩ

በመጀመሪያ ፣ የ EF 230 ድር ጣቢያውን የ Roomba መሣሪያ ሳጥን ያውርዱ እና በተገለጹት አቃፊዎች ውስጥ ማስቀመጥዎን ያረጋግጡ። ከእርስዎ Roomba ጋር ለመገናኘት ፣ ከ “Raspberry Pi” ጋር የተለጠፈውን ተለጣፊ በመጥቀስ የጥቅስ ምልክቶች ሳይታዩ ፣ እና x ለ Roomba ቁጥር የሚቆምበትን የትእዛዝ መስኮት “r = roomba (x)” ያስገቡ። ሮምባ ዜማ ማጫወት አለበት ፣ እና ንጹህ አዝራሩ በዙሪያው አረንጓዴ ቀለበት ማሳየት አለበት። ኮድዎን በ ‹ጊዜ› መግለጫ ይጀምሩ ፣ እና በአነፍናፊ ዝርዝር ውስጥ እንደታዩ የብርሃን ዳሳሾችን ይመልከቱ። በትእዛዝ መስኮቱ ውስጥ “r.testSensors” ን በመተየብ የዳሳሽ ዝርዝሩን ይክፈቱ።

ምን ያህል ብርሃን እንደሚንፀባረቅ በሚወስነው የእኛ ነገር ቀለም ላይ በመመስረት መግለጫው እንደ> ተግባር እንዲተገበር የሚያስፈልጉትን መስፈርቶች ያዘጋጁ። በእኛ ሁኔታ ፣ በግራ ወይም በቀኝ የመሃል ብርሃን ዳሳሾች ላይ ያለው ንባብ> 25 ከሆነ በዚህ ጊዜ ውስጥ ኮዱን ለማስኬድ የፊት ብርሃን ዳሳሹን እናዘጋጃለን። ለአፈጻጸም መግለጫው x እና y በቅደም ተከተል የግራ እና የቀኝ ጎማዎች ፍጥነቶች በሚሆኑበት “r.setDriveVelocity (x, y)” ን በመተየብ ፍጥነት ለመቀነስ የ Roomba ን ፍጥነት ያዘጋጁ። ሮምባ ላልተገለጹ እሴቶች እንዳይዘገይ “ሌላ” መግለጫ ያስገቡ ፣ እና ከተለየ ፍጥነት በስተቀር እንደገና ወደ ድራይቭ የፍጥነት ትዕዛዙ ያስገቡ። የጊዜ መግለጫውን በ “መጨረሻ” ጨርስ። ይህ የኮድ ክፍል Roomba ወደ ነገሩ እንዲቀርብ ያደርገዋል ፣ እና ተፅእኖን ለመቀነስ አንድ የተወሰነ ክልል ከደረሰ በኋላ ፍጥነት ይቀንሳል።

ተያይ codeል የእኛ ኮድ ቅጽበታዊ ገጽ እይታ, ነገር ግን የእርስዎን ተልዕኮ መለኪያዎች በተሻለ ሁኔታ ለማጣጣም ለማረም ነፃነት ይሰማዎ.

ደረጃ 4 - የአደጋ መከላከያ ኮድ ይፍጠሩ

የአደጋ መከላከያ ኮድ ይፍጠሩ
የአደጋ መከላከያ ኮድ ይፍጠሩ

ሮምባ እየቀነሰ ሲመጣ ፣ አካላዊ ባምፐርን ባያስነሳም በእቃው ላይ የሚኖረውን ተፅእኖ ይቀንሳል። ለዚህ የኮድ ክፍል እንደገና በ ‹ጊዜ› ሉፕ ይጀምሩ እና አገላለፁ እውነት እንዲሆን ያዘጋጁ። ለአረፍተ ነገሩ ፣ ተለዋዋጭ ቲን ከሃምፓየር ውፅዓት ጋር እኩል ያድርጉት ፣ 0 ወይም 1 ፣ ለሐሰት እና ለእውነት። ለዚህ «T = r.getBumpers» ን መጠቀም ይችላሉ። ቲ እንደ መዋቅር ይወጣል። “If” የሚለውን መግለጫ ያስገቡ እና መግለጫውን ለዝቅተኛ መዋቅር T.front 1 እኩል ያዘጋጁ ፣ እና “r.setDriveVelocity (x ፣ y)” ወይም “r.stop” ን በመጠቀም መግለጫውን ወይ የ ‹ድራይቭ ፍጥነት› ን በ 0 ላይ ያዋቅሩ። . በሚቀጥለው ኮድ ውስጥ ያለው ሁኔታ ከተሟላ በኋላ Roomba መንቀሳቀስ እንዲችል “እረፍት” ያስገቡ። “ሌላ” ያክሉ ፣ እና የመንጃ ፍጥነቱን ወደ Roomba መደበኛ የመርከብ ፍጥነት ለማቀናጀት መግለጫውን ያዘጋጁ።

ተያይ codeል የእኛ ኮድ ቅጽበታዊ ገጽ እይታ, ነገር ግን የእርስዎን ተልዕኮ መለኪያዎች በተሻለ ሁኔታ ለማጣጣም ለማረም ነፃነት ይሰማዎ.

ደረጃ 5 የተቃዋሚ ማያ ገጽን ለማንበብ ኮድ ይፍጠሩ ፣ ይተርጉሙት እና ከምንጩ ያፈገፍጉ

አጸፋዊ ማያ ገጽ ለማንበብ ኮድ ይፍጠሩ ፣ ይተርጉሙት እና ከምንጩ ያፈገፍጉ
አጸፋዊ ማያ ገጽ ለማንበብ ኮድ ይፍጠሩ ፣ ይተርጉሙት እና ከምንጩ ያፈገፍጉ

በፕሮጀክታችን እምብርት ላይ የጊገር-ሙለር ቆጣሪ ሲሆን በማያ ገጹ ላይ ያለው መረጃ ካሜራውን መጠቀም ማለት ምን ማለት እንደሆነ ለማወቅ የሚከተለው የኮድ ክፍል ጥቅም ላይ ይውላል። የምንጭው እንቅስቃሴ ላይ በመመስረት የእኛ ቆጣሪ ማያ ገጽ ቀለሙን ከቀየረ ፣ የካሜራውን ቀለም እንዲተረጎም ካሜራውን እናዘጋጃለን። “R.getImage” ከሚለው ትእዛዝ ጋር እኩል የሆነ ተለዋዋጭ በማዘጋጀት ኮድዎን ይጀምሩ። ተለዋዋጭው በቀይ ፣ በአረንጓዴ እና በሰማያዊ የወሰደውን ስዕል ባለ 3 ዲ ድርድር የቀለም እሴቶችን ይይዛል። ‹1 ከ 1 እስከ 3. 1 ፣ 2 እና 3 ቀይ ፣ አረንጓዴ እና ሰማያዊ በቅደም ተከተል። እንደተጠቀሱት ሁሉም ትዕዛዞች ፣ የጥቅስ ምልክቶችን አያካትቱ።

ቆጣሪው የናሙናውን ትክክለኛ ንባብ እንዲያገኝ እና ከዚያ “ከሆነ” የሚለውን መግለጫ እንዲጀምር ፕሮግራሙ “ለአፍታ አቁም (20)” ን በመጠቀም ለ 20 ሰከንዶች ያህል እንዲቆም ያድርጉ። "ራዲዮሶቶፔ ተገኝቷል! ጥንቃቄ!" ይህ በ «ተጠባባቂ (helpdlg ({'texthere'})») »ትዕዛዝ ሊከናወን ይችላል። እሺን ጠቅ ካደረጉ በኋላ Roomba በ‹ ከሆነ ›መግለጫ ውስጥ የቀረውን ኮድ መከተሉን ይቀጥላል። በመጠቀም ሮምባ በናሙናው ዙሪያ ይንዱ። የ “r.moveDistance” እና “r.turnAngle” ትዕዛዞች ጥምረት። መግለጫዎን በ ‹መጨረሻ› ማለቅዎን ያረጋግጡ።

ተያይ codeል የእኛ ኮድ ቅጽበታዊ ገጽ እይታ, ነገር ግን የእርስዎን ተልዕኮ መለኪያዎች በተሻለ ሁኔታ ለማጣጣም ለማረም ነፃነት ይሰማዎ.

ደረጃ 6: የገደል አነፍናፊ ኮድ ይፍጠሩ

የገደል አነፍናፊ ኮድ ይፍጠሩ
የገደል አነፍናፊ ኮድ ይፍጠሩ

የ Roomba አብሮገነብ ገደል ዳሳሾችን ለመጠቀም ኮድ ለመፍጠር ፣ በ ‹ጊዜ› ሉፕ ይጀምሩ ፣ እና አገላለፁ እውነት እንዲሆን ያዘጋጁ። ከ “r.getCliffSensors” ጋር እኩል እንዲሆን አንድ ተለዋዋጭ ያዘጋጁ ፣ እና ይህ አወቃቀር ያስከትላል። አንድ "ከሆነ" መግለጫ ይጀምሩ, እና "X" እናንተ ወደ ትእዛዝ "r.getCliffSensors" የመረጡትን ተለዋዋጭ ነው የት አንዳንዶች ያለፈች እሴት, የበለጠ መሆን አወቃቀር እስከ ተለዋዋጮች "X.leftFront" እና "X.rightFront» ማዘጋጀት እኩል መሆን። በእኛ ሁኔታ ፣ አንድ ነጭ ወረቀት አንድ ገደል ለመወከል ጥቅም ላይ እንደዋለ 1000 ን እንጠቀም ነበር ፣ እና ዳሳሾች ሲጠጉ ፣ ወረቀቱ ፣ እሴቶቹ ከ 1000 በላይ አድገዋል ፣ ኮዱ የሚሠራው ገደል ሲገኝ ብቻ ነው።. በኋላ “ሰበር” የሚለውን ትእዛዝ ያክሉ እና ከዚያ “ሌላ” መግለጫ ያስገቡ። ገደል ካልተገኘ ለ “ሌላ” መግለጫ ፣ ለእያንዳንዱ መንኮራኩር የመኪናውን ፍጥነት ወደ መደበኛው የመጓጓዣ ፍጥነት ያዘጋጁ። ሮምባ ገደል ካየ ፣ “ዕረፍቱ” ይፈጸማል ፣ ከዚያ በኋላ ከሉፕ ውጭ ያለው ኮድ ይፈጸማል። ለ “if” እና “while” loop “መጨረሻውን” ካስቀመጡ በኋላ የመንቀሳቀስ ርቀት ትዕዛዙን በመጠቀም Roomba ወደ ኋላ እንዲንቀሳቀስ ያዘጋጁ። ገደል አቅራቢያ መሆኑን ጠፈርተኞችን ለማስጠንቀቅ ፣ የእያንዳንዱ መንኮራኩር ፣ x እና y የመንጃ ፍጥነቶች በትራፊክ ፍጥጫ ትዕዛዝ ውስጥ ፣ ሀ እና -ሀ ፣ ትክክለኛ ቁጥር የሚገኝበት እንዲሆን ያድርጉ። ይህ ሮምባ እንዲሽከረከር ያደርገዋል ፣ ጠፈርተኛውን ወደ ገደል ያስጠነቅቃል።

ተያይ codeል የእኛ ኮድ ቅጽበታዊ ገጽ እይታ ፣ ግን የእርስዎን ተልዕኮ መለኪያዎች በተሻለ ሁኔታ ለማጣጣም ለማስተካከል ነፃነት ይሰማዎ።

ደረጃ 7 መደምደሚያ

መደምደሚያ
መደምደሚያ

የ RADbot በማርስ ላይ የመጨረሻው ግብ ጠፈርተኞችን በቀይዋ ፕላኔት ፍለጋ እና ቅኝ ግዛት ውስጥ መርዳት ነው። በላዩ ላይ ሬዲዮአክቲቭ ናሙናዎችን በመለየት ፣ ተስፋችን ሮቦቱ ፣ ወይም ሮቨር ፣ በዚህ ሁኔታ ጠፈርተኞችን ደህንነት ለመጠበቅ እና ለመሠረቶቻቸው (ሮች) የኃይል ምንጮችን ለመለየት ይረዳሉ። እነዚህን ሁሉ እርምጃዎች ከተከተሉ በኋላ ፣ እና ምናልባት በተወሰነ ሙከራ እና ስህተት ፣ የእርስዎ RADbot ሥራ ላይ መሆን አለበት። የራዲዮአክቲቭ ናሙናውን በሙከራ አካባቢዎ ውስጥ በሆነ ቦታ ላይ ያስቀምጡ ፣ ኮድዎን ያስፈጽሙ እና ሮቨርው የተሰራውን ሲያደርግ ይመልከቱ። በእርስዎ RADbot ይደሰቱ!

-EF230 RADbot ቡድን

የሚመከር: