Aplikazio honek Kubo Magikoa robot batekin ebazteko aukera ematen du. Robota Bluetooth bidez konektatuta dago.
Kuboa eskuz sar daiteke edo eskaneatuta kameraren funtzioa erabiliz. Antzemandako kuboaren kolore okerrak zuzendu daitezke. Kuboaren hurrengo aurpegira biratzea robotak exekutatu dezake.
Baliozko kubo bat sartzen bada soluzio bat kalkulatzen da eta robotari bidal daiteke. Robotak soluzioa exekutatu dezake eta konpondutako kubo bat itzuliko duzu.
Egin behar duzun guztia robota eraikitzea da!
Aplikazioa robotik gabe erabil daiteke baina aukera hobeak daude.
Robot eraikitzaileentzat:
Aplikazioa Arduino oinarritutako 2 agarreko robot baterako diseinatu zen, kuboaren beheko eta atzeko aurpegia eusten. Bluetooth konexiorako HC-06 modulua erabiltzen da. Aplikazio hau protokolo bera eta HC-06 moduluaren UUID bera erabiliz edozein robotentzat erabil daiteke. Ez ditu serbo mugimenduak transmititzen. Robotak exekutatu behar dituen komandoak bidaltzen ditu.
Prozesua 2 fasetan banatzen da:
1. etapa: kuboa sartzea/eskaneatzea
Kubo-aurpegi bat sartzen edo eskaneatzen bada, hurrengo aurpegira mugitzen zara ikusteko botoia sakatuz. Hori eginez gero, hurrengo aurpegiaren hasierako karaktere bakarra ("l" ezkerrerako, "u" gorarako) robotari bidaltzen zaio. Robotak mugimendua exekutatu behar du. Ordena eskuinera, atzetik, ezkerrera, gora, behera eta atzetik aurrerantz da. Karaktereetan r,b,l,u,d,f da.
2. etapa: Ebaztea
Orientazioa funtsezkoa denez kuboa arrakastaz ebazteko, irtenbidea aurrealdeko ikuspegia aktibo dagoenean bakarrik dago erabilgarri. Honek suposatzen du robotak kuboa posizio egokian biratu duela.
Irtenbidea aplikazioaren barruan kalkulatzen da. Ez da inongo zerbitzaritik lortzen. Eskuragarri dagoen bezain laster ebazteko katea robotari transmititzen zaio. Ebazpen-katea espazio batez bereizitako mugimenduen sekuentzia da. Mugimenduak honela ematen dira:
L - biratu ezkerreko aurpegia erlojuaren orratzen norantz
L' - biratu ezkerreko aurpegia erlojuaren norantzan
L2 - biratu 180°
F-Aurrealdea, R - Eskuinekoa, B-Atzealdea, U-Gora eta D-Behera.
Sekuentzia horrela jarraituz, kuboa ebatzi egiten da.
Zure robotak mugimenduak nola exekutatzen dituen zure esku dago. Aplikazio honek robota kontrolatzeko aukera ematen dizu eta ez duzu kuboa bera konpontzeaz kezkatu beharrik.
Komunikazioa bide bakarra da. Ez dago robotetik Smartphonera itzultzeko transmisiorik.
Espero dut honek zure proiektuarekin hastea.
Zorte on!
Kredituak:
Kredituak honako hauek izango dira:
Kas Arduino foroan proiektua inspiratzeagatik eta Arduino programazioan lan nagusia egiteagatik baita robotarentzat lehen aplikazioa eskaintzeagatik.
https://forum.arduino.cc/index.php?topic=271827.0
Herbert Kociemba ebazteko algoritmoa garatzeko lan izugarria egiteagatik eta doako ebazpen eta tresnen liburutegia eskaintzeagatik.
http://www.kociemba.org/cube.htm
GitHub-en cs0x7f-i GPL pean bi faseko ebazteko liburutegi optimizatua eskaintzeagatik.
https://github.com/cs0x7f/min2phase
Azken eguneratzea
2025(e)ko eka. 10(a)