Mündəricat:

Rubics Cube Solver Bot: 5 Addım (Şəkillərlə birlikdə)
Rubics Cube Solver Bot: 5 Addım (Şəkillərlə birlikdə)

Video: Rubics Cube Solver Bot: 5 Addım (Şəkillərlə birlikdə)

Video: Rubics Cube Solver Bot: 5 Addım (Şəkillərlə birlikdə)
Video: How to solve a Rubik’s cube | The Easiest tutorial | Part 1 2024, Iyul
Anonim
Rubics Cube Solver Bot
Rubics Cube Solver Bot

Fiziki Rubik kubunu həll edən avtonom bir robot hazırlamaq. Bu Robotics Club, IIT Guwahati altında bir layihədir.

Asanlıqla tapıla bilən sadə materialdan hazırlanır. Əsasən onları idarə etmək üçün Servo mühərrikləri və Arduino istifadə etdik, Akrilik təbəqələr, qırıq Mini Drafter, L-sıxaclar və İkili lentlər!

Kubun həll alqoritmini əldə etmək üçün github -dan cubejs kitabxanasından istifadə etdik.

Addım 1: İstifadə olunan materiallar

İstifadə olunan materiallar
İstifadə olunan materiallar
  1. 6 Servo mühərrik
  2. Arduino Uno
  3. 3 hüceyrəli LiPo batareyası
  4. Akril təbəqə (qalınlığı 8 mm və 5 mm)
  5. İstilik silahı (
  6. Qazma maşını
  7. Testere
  8. L sıxaclar
  9. Alüminium zolaqlar
  10. Mini Drafter/ metal çubuqlar
  11. İkili Bant
  12. Fevi Tez
  13. Fındıq Boltlar
  14. Jumper telləri

Addım 2: Mexaniki quruluşun hazırlanması

Mexaniki quruluşun hazırlanması
Mexaniki quruluşun hazırlanması
Mexaniki quruluşun hazırlanması
Mexaniki quruluşun hazırlanması

Əsas çərçivə

  • Təxminən 50cm * 50cm olan 8 mm qalınlığında akril təbəqə götürün və hər tərəfin ortasını işarələyin (bu, robotunuzun əsası olacaq).
  • Qırılmış bir tərtibatçı götürün və ondan 4 polad çubuğu çıxarın.. (bu çubuqlar sürüşmə yolunuz olacaq).
  • İki düzbucaqlı akril parçaya (istənilən ölçüdə) bir -birinə paralel olaraq iki çubuq düzəldin və bu montajdan iki cüt düzəldin.
  • Sonra, bir sürgü düzəltmək üçün iki kiçik akril parçanı bir -birinin arasına dörd küncdən ayırın və arakəsmələrdəki boltlarla bərkidin. 4 belə sürgüə ehtiyacınız olacaq.
  • İki parçanı bağlamadan əvvəl, aralarındakı çubuqların xarici səthinə toxunması üçün aralarında əvvəllər bağlanmış paralel çubuqları keçirin.
  • Paralel çubuqların hər bir cütü üçün iki sürgü keçir.
  • Hazır olduqdan sonra, çubuqları 90 dərəcə bir xaç şəklində düzəldin. Çarmıxın hər bir ucunda bir sürgü olduğundan əmin olun.
  • İndi etməniz lazım olan şey, bu kəsişən yolu robotunuzun əsasına, bazadan bir qədər yüksəkliyə bağlamaqdır. (Yüksəkliyin servo motorun hündürlüyündən böyük olduğundan əmin olun)

    Bunun üçün L-qısqaclı akril montajlardan istifadə edə bilərsiniz və ya başqa bir üsul kifayət edər

Bundan sonra quruluşunuz görüntüyə bənzəməlidir.

Əsas servoların bağlanması

  • İki əsas servo, servonun xaç qolunun altında yerləşəcəyi və mərkəzdən kənarda yerləşəcəyi şəkildə bağlanmalıdır.
  • Servo, üfüqi vəziyyətdə, uzun vintlər istifadə edərək, delikli bir silikon gofretə bağlanır, bu da öz növbəsində L-qısqac və iki tərəfli lentlə bazaya bərkidilir.

Dartma çubuqlarının hazırlanması

  • Servo açısını sıfıra qoyun və servonun bərkidici qolunu uyğun bir yerə bağlayın.
  • Kaydırıcının ən yaxın mövqedəki məsafəsini təxmin etmək üçün kubu çarpazın ortasına qoyun və sürgüləri bu mövqelərə qoyun.
  • İkili lent istifadə edərək hər bir sürgünün altına L şəkilli alüminium zolaqlar yapışdırın.
  • İndi hər bir alüminium şeridin düzlüyündə olan servo rokçunun yuxarıdan və ya altından olan məsafəsini ölçmək üçün bu, çəkmə çubuğunuzun uzunluğu olacaq.
  • Uzunluqlar müəyyən edildikdən sonra itmə çubuğu alüminium şeridi və ya başqa bir şeyi qazaraq sabitlənə bilər.

Üst servoların quraşdırılması

  • Kubunuzun hansı yüksəklikdə həll ediləcəyinə qərar verin. Servo motorun oxu bu yüksəklikdə olmalıdır.
  • Şaquli vəziyyətdə boltlar istifadə edərək, hər biri perforasiya edilmiş silikon gofretə dörd servo mühərriki bağlayın.
  • Gofret indi L formalı alüminium zolaqda quraşdırılmışdır ki, əsası servo oxu kubun ortasında yerləşsin deyə əsası düzgün bir hündürlükdə kaydırıcıya sabitlənmişdir.

C-pençələr

  • Dırnaqlar kubun bir tərəfinə tam oturacaq şəkildə olmalıdır və üst və alt hissələrin uzunluğu bir kubun bir tərəfini keçməməlidir.
  • Bunun üçün kifayət qədər qalınlığa malik bir akril zolaq götürün və qızdırın. Yenidən əridikdən sonra, C şəkilli bir sıxac əmələ gətirir ki, kubun bir tərəfini tam tutsun.
  • C-pençəsinin mərkəzini işarələyin və bu qısqacın mərkəzindəki servo çubuğuna sabitləyin.

Hər bir qısqacın eyni hündürlükdə olması üçün lazım olduğu qədər kiçik düzəlişlər edin.

Bu, robotunuzun mexaniki quruluşunu tamamlayır, dövrə əlaqələrinə keçməyə imkan verir.

Addım 3: Dövrə Bağlantıları

Dövrə Əlaqələri
Dövrə Əlaqələri

Botu idarə etmək üçün bir Arduino, gərginlik tənzimləyicisi və 3 hüceyrəli (12v) LiPo batareyasından istifadə etdik.

Servo Motors Çox Güc Çəkdiyinə görə, hər bir motor üçün bir ədəd 6 gərginlik tənzimləyicisi istifadə etdik.

Mühərriklərin siqnal girişləri (üçünün ən açıq rəngli teli) Arduinonun 3, 5, 6, 9, 10, 11 rəqəmsal PWM pinlərinə qoşuldu.

Gərginlik tənzimləyicisi çörək taxtasına qoşuldu və 12 voltluq bir batareya ilə təchiz edildi. Çıxış (5V) təchizatı birbaşa mühərriklərə verilir. Mühərriklərin torpağı da çörək taxtasına qoşulmuşdu. Ortaq zəmin Arduinoya da bağlı idi.

Addım 4:

Image
Image

Addım 5: Kod:

Verilən iki fayl, Arduino istifadə edərək xüsusi addımlar üçün mühərriklərə əmr vermək üçün yazılmış kodu göstərir.

Birinci fayl əsas funksiyanı və digər dəyişən tərifləri ehtiva edir. İkinci fayl, bir kubun həllində istifadə olunan hər hərəkət üçün funksiyaları ehtiva edir (məsələn, "saat üzünün yuxarı istiqamətində fırlanma" üçün U; "sağ üzün saat yönünün əksinə hərəkət" üçün R1 və s.)

Kubun həll alqoritmini əldə etmək üçün github -dan cubejs kitabxanasından istifadə etdik.

Alqoritm birbaşa Arduino kodu ilə tamamlanan 'üz hərəkətlərində' nəticə verir.

Tövsiyə: