Turinys:

„Rubics Cube Solver Bot“: 5 žingsniai (su paveikslėliais)
„Rubics Cube Solver Bot“: 5 žingsniai (su paveikslėliais)

Video: „Rubics Cube Solver Bot“: 5 žingsniai (su paveikslėliais)

Video: „Rubics Cube Solver Bot“: 5 žingsniai (su paveikslėliais)
Video: Robot solves Rubik’s cube 2024, Lapkritis
Anonim
Rubikų kubo sprendimų robotas
Rubikų kubo sprendimų robotas

Sukurti autonominį robotą, kuris išsprendžia fizinį Rubiko kubą. Tai yra „Robotics Club“, „IIT Guwahati“, projektas.

Jis pagamintas iš paprastos medžiagos, kurią galima lengvai rasti. Daugiausia mes valdėme „Servo“variklius ir „Arduino“, akrilinius lakštus, sulaužytą „Mini Drafter“, L formos spaustukus ir dvigubas juostas!

Norėdami gauti kubo sprendimo algoritmą, naudojome „github“biblioteką „cubejs“.

1 žingsnis: naudojamos medžiagos

Naudotos medžiagos
Naudotos medžiagos
  1. 6 servo varikliai
  2. Arduino Uno
  3. 3 ląstelių LiPo baterija
  4. Akrilo lakštas (8 mm ir 5 mm storio)
  5. Šilumos pistoletas (
  6. Gręžimo mašina
  7. Pjūklas
  8. L spaustukai
  9. Aliuminio juostelės
  10. Mini siurbliai/ metaliniai strypai
  11. Dviguba juosta
  12. „Fevi Quick“
  13. Veržlių varžtai
  14. Jumperio laidai

2 žingsnis: Paruoškite mechaninę struktūrą

Mechaninės konstrukcijos paruošimas
Mechaninės konstrukcijos paruošimas
Mechaninės konstrukcijos paruošimas
Mechaninės konstrukcijos paruošimas

Pagrindinis rėmas

  • Paimkite 8 mm storio akrilo lakštą, maždaug 50 cm * 50 cm, ir pažymėkite visų šonų centrą (tai bus jūsų roboto pagrindas).
  • Paimkite sulaužytą pjoviklį ir nuimkite nuo jo 4 plieninius strypus.. (šie strypai bus jūsų slankiklio kelias).
  • Ant dviejų stačiakampių akrilo gabalų (bet kokio dydžio) pritvirtinkite du strypus lygiagrečiai vienas kitam ir sudarykite dvi šio mazgo poras.
  • Tada, norėdami pagaminti slankiklį, sudėkite du mažus akrilo gabalus vienas ant kito su tarpikliais tarp keturių kampų ir pritvirtinkite varžtais tarpikliuose. Jums reikės 4 tokių slankiklių.
  • Prieš tvirtindami dvi slankiklio dalis, praeikite tarp jų anksčiau pritvirtintus lygiagrečius strypus taip, kad tarpikliai tiesiog liestų išorinį strypų paviršių.
  • Kiekvienai lygiagrečių strypų porai eikite ant dviejų slankiklių.
  • Kai tai bus paruošta, sutvarkykite porą strypų 90 laipsnių kryžiaus pavidalu. Įsitikinkite, kad kiekviename kryžiaus gale yra vienas slankiklis.
  • Dabar viskas, ką jums reikia padaryti, tai pritvirtinti šį kertamą kelią prie savo roboto pagrindo, tam tikrame aukštyje nuo pagrindo. (Įsitikinkite, kad aukštis yra didesnis nei servo variklio aukštis)

    Norėdami tai padaryti, galite naudoti akrilo tvirtinimus su L formos spaustukais, kaip ir mes, arba bet kokio kito metodo pakaks

Po to jūsų struktūra turėtų atrodyti kaip vaizdas.

Pagrindo servo tvirtinimas

  • Dvi pagrindinės servo dalys turi būti pritvirtintos taip, kad servo sistema būtų žemiau kryžiaus rankos ir nukryptų nuo centro.
  • Servos yra pritvirtintos horizontalioje padėtyje prie perforuoto silicio plokštelės, naudojant ilgus varžtus, kurie savo ruožtu pritvirtinami prie pagrindo su L formos spaustuku ir dvipuse juosta.

Stumiamųjų strypų gamyba

  • Nustatykite servo kampą į nulį ir pritvirtinkite servo svirties svirtį tam tikroje tinkamoje padėtyje.
  • Padėkite kubą kryžiaus centre, kad įvertintumėte slankiklio atstumą artimiausioje padėtyje, ir padėkite slankiklius tose vietose.
  • Kiekvienos slankiklio apačioje pritvirtinkite L formos aliuminio juosteles, naudodami dvigubą juostą.
  • Dabar, norėdami išmatuoti kiekvienos aliuminio juostos atstumą nuo servo svirties viršaus arba apačios, kuri yra jos plokštumoje, tai bus jūsų stumiamojo strypo ilgis.
  • Nustačius ilgį, stūmoklį galima pritvirtinti gręžiant aliuminio juostelę ar pan.

Viršutinių servo montavimas

  • Nuspręskite, kokiame aukštyje jūsų kubas bus išspręstas. Servo variklio ašis turėtų būti šiame aukštyje.
  • Pritvirtinkite keturis servovariklius prie perforuoto silicio plokštelės, naudodami varžtus vertikalioje padėtyje.
  • Vaflis dabar sumontuotas ant L formos aliuminio juostelės, kurios pagrindas pritvirtintas prie slankiklio tinkamu aukščiu, kad servo ašis būtų kubo centre.

C nagai

  • Nagai turi būti tokie, kad tiksliai atitiktų kubo šoną, o viršutinės ir apatinės dalių ilgis neturi viršyti kubo pusės.
  • Tam paimkite pakankamo storio akrilo juostelę ir pašildykite. Kai jis ištirpsta, jis suformuos C formos spaustuką taip, kad tiksliai užfiksuotų kubo pusę.
  • Pažymėkite C-letenos centrą ir pritvirtinkite šį spaustuką prie servo svirties jo centre.

Jei reikia, šiek tiek sureguliuokite, kad kiekvienas spaustukas būtų vienodo aukščio.

Tai užbaigia jūsų roboto mechaninę struktūrą, leidžia pereiti prie grandinės jungčių ……..

3 žingsnis: grandinės jungtys

Grandinės jungtys
Grandinės jungtys

Norėdami valdyti „Bot“, naudojome „Arduino“, įtampos reguliatorių ir 3 elementų (12v) LiPo bateriją.

Kadangi „Servo“varikliai sunaudoja daug energijos, mes naudojome 6 įtampos reguliatorius, po vieną kiekvienam varikliui.

Variklių signalo įėjimai (šviesiausia iš trijų laidų) buvo prijungti prie „Arduino“skaitmeninių PWM kaiščių 3, 5, 6, 9, 10, 11.

Įtampos reguliatorius buvo prijungtas prie duonos lentos ir maitinamas 12 voltų baterija. Išėjimo (5 V) maitinimas buvo tiesiogiai tiekiamas į variklius. Variklių įžeminimas taip pat buvo prijungtas prie duonos lentos. Bendras pagrindas buvo prijungtas ir prie „Arduino“.

4 žingsnis:

Image
Image

5 žingsnis: kodas:

Du pateikti failai rodo kodą, parašytą norint suteikti komandą varikliams atlikti tam tikrus veiksmus naudojant „Arduino“.

Pirmajame faile yra pagrindinė funkcija ir kiti kintamųjų apibrėžimai. Antrajame faile yra kiekvieno judesio, naudojamo sprendžiant kubą, funkcijos (pvz., U-„sukimas aukštyn pagal laikrodžio rodyklę“; R1-„judėjimas dešinėn prieš laikrodžio rodyklę“ir pan.)

Norėdami gauti kubo sprendimo algoritmą, naudojome „github“biblioteką „cubejs“.

Algoritmas tiesiogiai pateikia išvestį „veido judesiais“, kuriuos užbaigia „Arduino“kodas.

Rekomenduojamas: