Cuprins:
- Pasul 1: Materiale utilizate
- Pasul 2: Pregătirea structurii mecanice
- Pasul 3: Conexiuni de circuit
- Pasul 4:
- Pasul 5: Cod:
Video: Rubics Cube Solver Bot: 5 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Realizarea unui robot autonom care rezolvă un cub Rubik fizic. Acesta este un proiect sub Robotics Club, IIT Guwahati.
Este realizat folosind materiale simple care pot fi găsite cu ușurință. În principal, am folosit motoare servo și un Arduino pentru a le controla, foi acrilice, un Mini Drafter rupt, cleme în L și benzi duble!
Pentru a obține algoritmul de rezolvare a cubului, am folosit biblioteca cubejs de la github.
Pasul 1: Materiale utilizate
- 6 motoare servo
- Arduino Uno
- Baterie LiPo cu 3 celule
- Foaie acrilică (8 mm și 5 mm grosime)
- Pistol cu aer cald(
- Mașină de găurit
- Ferăstrău
- L cleme
- Benzi de aluminiu
- Mini Drafter / tije metalice
- Bandă dublă
- Fevi Quick
- Șuruburi cu piuliță
- Sârme de jumper
Pasul 2: Pregătirea structurii mecanice
Cadrul de bază
- Luați o foaie acrilică de 8 mm grosime de aproximativ 50 cm * 50 cm și marcați centrul tuturor laturilor (aceasta va fi baza robotului dvs.).
- Luați un draper rupt și îndepărtați cele 4 tije de oțel de pe acesta.. (aceste tije vor servi drept cale pentru glisorul dvs.).
- Pe două bucăți dreptunghiulare de acril (de orice dimensiune) fixați două tije paralele între ele și faceți două perechi din acest ansamblu.
- Apoi, pentru a face un glisor, stivați două bucăți mici de acril, una peste alta, cu distanțiere între ele la cele patru colțuri și fixați-le cu șuruburi în distanțiere. Veți avea nevoie de 4 astfel de glisoare.
- Înainte de a fixa cele două bucăți de glisor, treceți tijele paralele afixate anterior între ele astfel încât distanțierii să atingă doar suprafața exterioară a tijelor.
- Pentru fiecare pereche de tije paralele treceți două glisoare pe ele.
- Odată ce acest lucru este gata, aranjați perechea de tije sub forma unei cruci de 90 de grade. Asigurați-vă că există un glisor la fiecare capăt al crucii.
-
Acum tot ce trebuie să faceți este să atașați această cale încrucișată la baza robotului dvs., la o anumită înălțime de la bază (asigurați-vă că înălțimea este mai mare decât înălțimea unui servomotor)
Pentru aceasta, puteți utiliza suporturi acrilice cu cleme în L, așa cum am făcut noi sau orice altă metodă va fi suficientă
După aceasta, structura dvs. ar trebui să arate ca imaginea.
Atașarea servoarelor de bază
- Cele două servome de bază trebuie atașate astfel încât servo să fie sub brațul crucii și să fie decalat de centru.
- Servoanele sunt atașate în poziție orizontală la o placă perforată din siliciu folosind șuruburi lungi, care la rândul lor sunt atașate la bază cu clemă L și bandă bidirecțională.
Realizarea tijelor push-pull
- Setați unghiul servo la zero și atașați brațul oscilant al servo-ului într-o poziție adecvată.
- Așezați cubul în centrul crucii pentru a obține o estimare a distanței glisorului în cea mai apropiată poziție și plasați glisoarele în acele poziții.
- Atașați benzi de aluminiu în formă de L în partea de jos a fiecărui glisor folosind bandă dublă.
- Acum, pentru a măsura distanța fiecărei benzi de aluminiu de la partea superioară sau inferioară a balansierului servo care se află în planul său, aceasta va fi lungimea tijei dvs. push-pull.
- Odată determinate lungimile, tija de împingere poate fi fixată prin găurirea benzii de aluminiu sau ceva similar.
Montarea servo-urilor superioare
- Decideți înălțimea la care cubul dvs. va fi rezolvat. Axa servomotorului ar trebui să fie la această înălțime.
- Atașați cele patru servomotoare, fiecare la o placă de siliciu perforată folosind șuruburi în poziție verticală.
- Placa este acum montată pe o bandă de aluminiu în formă de L a cărei bază este fixată pe glisor la o înălțime adecvată, astfel încât axa servo să se afle în centrul cubului.
Ghearele C
- Ghearele trebuie să fie astfel încât să se potrivească exact unei laturi a cubului, iar lungimea porțiunilor superioare și inferioare nu trebuie să depășească latura unui cub.
- Pentru aceasta luați o bandă de acril cu suficientă grosime și încălziți-o. Odată ce se topește, se remodelează, formează o clemă în formă de C astfel încât să prindă exact o parte a cubului.
- Marcați centrul ghearei C și fixați această clemă pe balansierul servo din centrul său.
Efectuați câteva ajustări minore, după cum este necesar, astfel încât fiecare clemă să fie la aceeași înălțime.
Acest lucru completează structura mecanică a robotului dvs., permite trecerea la conexiunile circuitului ……..
Pasul 3: Conexiuni de circuit
Pentru a controla botul, am folosit un Arduino, un regulator de tensiune și o baterie LiPo cu 3 celule (12v).
Întrucât motoarele servo consumă multă putere, am folosit 6 regulatoare de tensiune, câte unul pentru fiecare motor.
Intrările de semnal ale motoarelor (cel mai ușor fir de culoare dintre cele trei) au fost conectate la pinii PWM digitali 3, 5, 6, 9, 10, 11 ai Arduino.
Regulatorul de tensiune a fost conectat pe panou și alimentat de bateria de 12 volți. Alimentarea cu ieșire (5V) a fost alimentată direct în motoare. Pământul motoarelor a fost, de asemenea, conectat la panou. Terenul comun a fost atașat și la Arduino.
Pasul 4:
Pasul 5: Cod:
Cele două fișiere date arată codul scris pentru a da comanda motoarelor pentru pași anumiți folosind Arduino.
Primul fișier conține funcția principală și alte definiții ale variabilelor. Al doilea fișier conține funcții pentru fiecare mișcare utilizată la rezolvarea unui cub (de ex. U pentru „rotația în sus în sensul acelor de ceasornic”; R1 pentru „mișcarea feței drepte în sens invers acelor de ceasornic” etc.)
Pentru a obține algoritmul de rezolvare a cubului, am folosit biblioteca cubejs de la github.
Algoritmul oferă ieșire directă în „mișcările feței”, care este completată de codul Arduino.
Recomandat:
Solver Rubik’s Cube Blindfolded în timp real folosind Raspberry Pi și OpenCV: 4 pași
Solver Rubik’s Cube Blindfolded în timp real folosind Raspberry Pi și OpenCV: Aceasta este a doua versiune a instrumentului cub Rubik’s cub făcut pentru rezolvarea în legături la ochi. Prima versiune a fost dezvoltată de javascript, puteți vedea proiectul RubiksCubeBlindfolded1 Spre deosebire de versiunea anterioară, această versiune folosește biblioteca OpenCV pentru a detecta culorile și e
Q-Bot - Open Source Rubik's Cube Solver: 7 pași (cu imagini)
Q-Bot - Open Source Rubik's Cube Solver: imaginați-vă că aveți un Cub Rubik amestecat, știți că puzzle-ul din anii 80 pe care îl are toată lumea, dar nimeni nu știe cu adevărat cum să rezolve și doriți să îl readuceți în modelul său original. Din fericire în zilele noastre este foarte ușor să găsești instrucțiuni de rezolvare
Scutul Arduino Mega Stepper pentru un Solver Rubiks Cube: 4 pași
Arduino Mega Stepper Shield pentru un Rubiks Cube Solver: Acum ceva timp lucram la o mașină care rezolva automat orice Rubiks Cube 3x3 amestecat. Puteți vedea instructabile despre asta aici. În proiect, driverele pas cu pas de la polulu au fost utilizate pentru a conduce șase motoare. Pentru a face două, conectați aceste d
Magic Cube sau Micro-controller Cube: 7 pași (cu imagini)
Magic Cube sau Micro-controller Cube: În acest Instructables, vă voi arăta cum să faceți un cub Magic din Micro-controller defect. Această idee vine din momentul în care am luat microcontrolerul Faulty ATmega2560 de la Arduino Mega 2560 și fac un cub .Despre hardware-ul Magic Cube, am făcut ca
ARS - Arduino Rubik Solver: 13 pași (cu imagini)
ARS - Arduino Rubik Solver: ARS este un sistem complet pentru a rezolva cubul lui Rubik: da, un alt robot pentru a rezolva cubul! de un sofat de casă