ዝርዝር ሁኔታ:

የ BricKuber ፕሮጀክት - Raspberry Pi Rubiks Cube መፍታት ሮቦት 5 ደረጃዎች (ከስዕሎች ጋር)
የ BricKuber ፕሮጀክት - Raspberry Pi Rubiks Cube መፍታት ሮቦት 5 ደረጃዎች (ከስዕሎች ጋር)
Anonim
Image
Image

BricKuber የሩቢክ ኩብን ከ 2 ደቂቃዎች ባነሰ ጊዜ ውስጥ ሊፈታ ይችላል።

BricKuber እርስዎ እራስዎ መገንባት የሚችሉት ክፍት ምንጭ የሩቢክ ኩብ መፍታት ሮቦት ነው።

ከ Raspberry Pi ጋር የ Rubiks ኩብ መፍታት ሮቦት መገንባት እንፈልጋለን። ለፈጣን ከመሄድ ይልቅ እኛ በቀላልነት ሄድን -Raspberry Pi ፣ BrickPi kit እና መደበኛ LEGO Mindstorms EV3 ወይም NXT Kit ካለዎት የእኛን ፈለግ በቀላሉ መከተል መቻል አለብዎት። ሶፍትዌሩ የተፃፈው በ Python ፕሮግራም ቋንቋ ነው። በ Github ላይ ሁሉንም ምንጭ-ኮድ እዚህ ማየት ይችላሉ።

ዳራ የሩቢክ ኩብ በቅርቡ ተመልሶ መምጣት ጀመረ። እ.ኤ.አ. በ 1974 የተፈለሰፈ ፣ በዓለም ላይ በጣም የተሸጠ አሻንጉሊት ነው። ግን እነሱን መፍታት ሀሳብ ፣ ጥረት እና ችሎታ ይጠይቃል።.. ስለዚህ ለምን ሮቦት እንዲያደርግ አትፈቅድም? በዚህ ፕሮጀክት ውስጥ Raspberry Pi ን ፣ BrickPi ን እና የ LEGO Mindstorms ስብስብን ወስደን የሮቢክ ኪዩብ መፍቻ ሮቦት እንገነባለን። በቀላሉ ያልተፈታ የሩቢክ ኩቤን በመፍትሔው ውስጥ ያስቀምጡ ፣ የፓይዘን ፕሮግራሙን ያሂዱ እና የእርስዎ ሩቢክ ኪዩብ ተፈትቷል! የሮቢክ ኩቤን በቀጥታ ለመፍታት ፕሮጄክቱ ፒን ይጠቀማል። BrickPi3 ያልተፈታውን የሮቢክ ኩብ ይወስዳል እና Raspberry Pi የእያንዳንዱን የሩቢክ ኩብ ፎቶ ከ Raspberry Pi ካሜራ ጋር ይወስዳል። ፒው በኩቤው ላይ የት እንደሚገኙ የሚያሳይ የቀለም ካሬዎች የጽሑፍ ካርታ ይፈጥራል። እሱ ኪዩቡን ሙሉ በሙሉ ካርታ ሲያደርግ ፣ ፒፒ የ Rubik ን ኪዩብ ለመፍታት የሚያስፈልጉትን እንቅስቃሴዎች ለማውጣት የ “kociemba” Python ቤተ -መጽሐፍትን ይጠቀማል። የ LEGO ሞተሮችን በመጠቀም የ Rubik's cube ን ለመፍታት ይህ መረጃ በ Pi እና BrickPi3 ይወሰዳል። ውጤቱ - የተፈታ የሩቢክ ኩብ።

ደረጃ 1 መሣሪያዎች እና ቁሳቁሶች

ይገንቡት
ይገንቡት
  • BrickPi3 - የ Rubik's cube solver ን የሚፈቱትን የ LEGO ሞተሮችን ለመቆጣጠር BrickPi ን እንጠቀማለን።
  • Raspberry Pi - The Pi ሂደቱን ያካሂዳል ፣ ፎቶዎችን ያንሳል ፣ እና BrickPi ን ያዝዛል።
  • Raspberry Pi ካሜራ - የፒ ካሜራ ያልተፈታውን የ Rubiks ኩብ ምስል ይወስዳል።
  • የኤተርኔት ገመድ - ማሽንዎ ከበይነመረቡ ጋር እንዲገናኝ ያስፈልግዎታል። ይህንን በ wifi ላይ ማድረግ ከፈለጉ ፣ ያ እንዲሁ ጥሩ ነው!
  • Raspbian ለሮቦቶች ኤስዲ ካርድ - Raspberry Pi ን የሚያሄድ ሶፍትዌር። ይህ ለዚህ አጋዥ ስልጠና ከሚያስፈልጉት አብዛኛዎቹ ሶፍትዌሮች ጋር ነው የሚመጣው። እንዲሁም ሶፍትዌሩን በነፃ ማውረድ ይችላሉ።
  • LEGO Mindstorms EV3 Kit (31313) - የ LEGO ክምር እና ሁለት ትላልቅ ሞተሮች ፣ እና አንድ ሰርቮ ሞተር ፣ እና የአልትራሳውንድ ዳሳሽ ያስፈልግዎታል።
  • አንድ የሩቢክ ኩብ - እዚህ ቆንጆ በነፃ የሚሽከረከርን አግኝተናል። ምንም እንኳን ስለ ማንኛውም 9x9x9 Rubik's cube መጠቀም ይችላሉ።

ደረጃ 2: ይገንቡት

ይገንቡት
ይገንቡት
ይገንቡት
ይገንቡት

ፈላጊውን መገንባት

ይህ ንድፍ ለ LEGO EV3 በ MindCub3r ንድፍ ተመስጦ ነበር። BricKuber ን ለመገንባት ፣ MindCub3r ን በመገንባት ይጀምሩ። ሙሉ የ LEGO ግንባታ መመሪያዎች እዚህ ይገኛሉ።

የ Rubiks cube solver ንድፍ ሦስት ዋና ዋና ተንቀሳቃሽ ክፍሎች አሉት። የመጀመሪያው የሩቢክ ኩብ የሚይዝበት አልጋ ነው። ሁለተኛው ደግሞ የሩቢክን ኩብ ለመገልበጥ የሚያገለግል ሹፌር ነው።

በመጨረሻም ፣ የካሜራ ክንድ እንጨምራለን። በ MindCubr በመጀመሪያው ንድፍ ፣ ይህ በሩቢክ ኪዩብ ላይ የ EV3 ቀለም ዳሳሽ ተይ heldል። በእኛ በተሻሻለው ዲዛይን ውስጥ ፣ በሩቢክ ኪዩብ ላይ Raspberry Pi ካሜራ ይይዛል። እኛ ኩቦውን ለማሽከርከር ሁለት የ LEGO Mindstorms ሞተሮችን እንጠቀማለን -የመጀመሪያው ኩብውን ለማሽከርከር ከህፃኑ በታች ይቀመጣል ፣ ሁለተኛው ደግሞ የኩባውን በተቃራኒ ዘንግ ላይ ለማሽከርከር የማሽከርከሪያውን ክንድ ያንቀሳቅሳል።

BrickPi3 ን ሰብስብ

ለ BrickPi3 የስብሰባ መመሪያዎችን እዚህ ማግኘት ይችላሉ። ጉዳዩን ማሰባሰብ ፣ BrickPi3 ን ፣ Raspberry Pi ፣ Raspberry Pi ካሜራ ማያያዝ ፣ ኤስዲ ካርድ ማከል እና ባትሪዎችን ማከል አለብን። ሶፍትዌሩን ለማዋቀር ቀላል ለማድረግ Raspbian for Robots አስቀድመው ከሚያስፈልጉት አብዛኛዎቹ ሶፍትዌሮች ጋር ይመጣል። ቢያንስ 8 ጊባ ኤስዲ ካርድ ያስፈልግዎታል ፣ እና ከ SD ካርድ ሙሉ መጠን ጋር እንዲስማማ ዲስኩን ማስፋት ይፈልጋሉ።

BrickPi3 ን ያያይዙ

እኛ BrickPi3 ን ወደ LEGO ስብሰባ እንጨምራለን። እኛ BEGPi3 ን ለመደገፍ እና ከ BricKuber አካል ጋር እንዲመጣጠን የ LEGO EV3 “ክንፎቹን” ተጠቅመንበታል። ይህ 8XAA ባትሪዎችን ወደ የኃይል ፓኬጅ ለማከል እና የ BrickPi3 የኃይል ማሸጊያውን ከ LEGO ስብሰባ ጋር ማያያዝ ጥሩ እርምጃ ነው። ለፕሮግራም BrickPi3 ን በዩኤስቢ ኃይል በኩል ወደ Raspberry Pi ኃይል ማምጣት ይችላሉ ፣ ሆኖም ግን ሞተሮችን ለማንቀሳቀስ ኃይልን በኃይል ጥቅል ማቅረብ ያስፈልግዎታል።

ሞተሮችን ከ BrickPi3 ጋር ያገናኙ

ሹፌለር ሞተርን ወደ ሞተር ወደብ “ኤምዲ” ያያይዙ። የብሬክ ሞተርን በ BrickPi3 ላይ ካለው “MA” ወደብ ጋር ያያይዙ። የካሜራ ዳሳሽ ሞተርን ከ “ኤምሲ” ወደብ ጋር ያያይዙ (ይህ አነስ ያለ ሰርጎ መሰል ሞተር ነው)። ምንም እንኳን ካሜራውን የማንንቀሳቀስ ቢሆንም ፣ ሞተሮችን በመጠቀም የካሜራውን ቦታ ማስተካከል ይፈልጉ ይሆናል።

Raspberry Pi ካሜራ ያያይዙ

የ LEGO ካሜራ ድጋፍን በመጠቀም ካሜራውን ያያይዙ። የካሜራው ትንሽ ጥቁር ሌንስ በሁለቱ የ LEGO ጨረር ድጋፎች መካከል መቀመጥ አለበት። በአንዳንድ የኤሌክትሪክ ቴፕ (LEGO) ድጋፎች ላይ ካሜራውን በቦታው ይጠብቁ። ካሜራውን መላውን የሩቢክ ኩብ ለመያዝ የሚችልበት ቦታ መሆኑን ለማረጋገጥ ይህ ጥሩ ጊዜ ነው። በ raspistill ትዕዛዝ የሙከራ ስዕል ማንሳት ይችላሉ

raspistill -o cam.jpg

ኩብ በስዕሉ መሃል ላይ በደንብ ያተኮረ መሆኑን ያረጋግጡ።

ደረጃ 3: ሶፍትዌሩን ያዘጋጁ

ቀድሞውኑ ከተጫነው BrickPi3 ጋር የሚመጣውን የእኛን ብጁ ምስል ማንኛውንም የ Raspbian ወይም Raspbian ለሮቦቶች መጠቀም ይችላሉ። የ Raspbian ን መደበኛ ስሪት የሚጠቀሙ ከሆነ ትዕዛዙን በመጠቀም የ BrickPi3 ቤተ -ፍርግሞችን መጫን ይችላሉ

sudo curl -kL dexterindustries.com/update_brickpi3 | ባሽ

ይህ እርምጃ BrickPi3 ን በራስ Rasbian ምስልዎ ላይ ለማሄድ የሚያስፈልጉትን ሁሉንም ቤተ -ፍርግሞች ይጭናል። Raspbian ን ለሮቦቶች የሚጠቀሙ ከሆነ ይህንን ደረጃ ይዝለሉ - BrickPi3 ቀድሞውኑ ተጭኗል።

በመጨረሻም ትዕዛዙን በመጠቀም ሁሉንም የፕሮጀክት ጥገኛዎችን ይጫኑ።

sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | ባሽ

ለዚህ ደረጃ የእርስዎ BrickPi3 ከበይነመረቡ ጋር መገናኘት አለበት። የሩቢክ ኩቤን ለመፍታት የሚያገለግሉ አንዳንድ ወሳኝ የሆኑትን በዳንኤል ዋልተን (@dwalton76) በ Github ላይ ጨምሮ በርካታ ቤተ -መጻህፍት አሉ።

ደረጃ 4 የ Rubik's Cube ን ይፍቱ

የ Rubik's Cube ን ይፍቱ
የ Rubik's Cube ን ይፍቱ
የ Rubik's Cube ን ይፍቱ
የ Rubik's Cube ን ይፍቱ
የ Rubik's Cube ን ይፍቱ
የ Rubik's Cube ን ይፍቱ

በመፍትሔው ውስጥ ያልተፈታ የሩቢክ ኩብ ያስቀምጡ። ትዕዛዙን ያሂዱ

sudo Python ~/Dexter/BrickPi3/ፕሮጀክቶች/BricKuber/BricKuber.py

ሮቦቱ ኩቡን ወደ እያንዳንዱ ፊት ያዞራል እና ካሜራው 6 ፎቶዎችን ይወስዳል ፣ ከኩቤው እያንዳንዱ ጎን። Raspberry Pi ከስድስቱ ስዕሎች የኩቤ ውቅረትን ይወስናል። ውጤታማ መፍትሔ ለማግኘት የኩቤው ውቅር ወደ kociemba Python ቤተ -መጽሐፍት ይተላለፋል። በመጨረሻም ሮቦቱ የሩቢክ ኩብን ለመፍታት እንቅስቃሴዎችን ያካሂዳል!

ደረጃ 5: የምንጭ ኮድ

ለ BricKuber የምንጭ ኮድ ሁሉ በእኛ ክፍት ምንጭ github repo ውስጥ እዚህ ይገኛል።

ይህ ፕሮጀክት በትእዛዙ የተጫኑትን የሚከተሉትን የሶፍትዌር ጥቅሎች ይጠቀማል

የሚመከር: