well, it better be successful because its a school project :P
Before I even considered the design of the mechanical part of my robot, I created the code that solves the Rubik's cube. It solves the cube using the "layer by layer" method. This is by no means the most efficient way to solve the cube, but it is the way i personally solve the cube. It produces solutions in about 100 moves.
My cube solving python code
|
So after a bit of hot glue and popsicle sticks, i have somewhat of a first prototype:
It is different to my original idea, which was to have two robot hands. This design seemed to be to difficult to achieve without buying expensive claws, and I am on a small budget. Heres a quick video of my new design working. So far all it does is spin one face, but i am working on a system to flip the cube.
I have designed an arm using Lego and a couple of servos to flip the cube. It seems a bit shaky, but i think the design is heading in the right direction.
After designing the cube solving algorithms, and the mechanical part of my robot, all i need to do is code the microcontroller. For this i decided to use an Arduino Uno (i would have tried my Raspberry Pi if i had time). This translates the string of moves the python script outputs, flips the cube around, and spins the correct face.
My Rubik's Cube solving Robot will solve the cube in approximately 10 minutes - a number I would like to greatly reduce using a web camera for colour recognition, and more efficient cube solving algorithms.
Before sending my project away to Brightsparks, i figured it needed a little cleaning up.
I trimmed down the excess popsicle sticks and covered the ugly scrap wood i used with some plain white card. I created a neat GUI using Python to enter the colours of the cube, as i did in fact run out of time to implement a camera.
What makes my project different from all the other cube solvers out there is a few things.
This project I undertook as a fun project has brought me great success. I mentioned earlier about entering my project into the New Zealand Brightsparks Competition. I won this technology competition, scoring $1000 and some free sessions with a patent lawyer (obviously for a future project). This competition entered me into the Realise the Dream Competition. I continued to the final 20 students and won $500 and a weeks travel around New Zealand with these students, visiting research institutes along the way. I also won a major prize in Realise the Dream - an all expenses 9 day trip to Taiwan to enter the Taiwan International Science Fair to compete against students from around the globe, which will be held in jan/feb 2013.
Before sending my project away to Brightsparks, i figured it needed a little cleaning up.
I trimmed down the excess popsicle sticks and covered the ugly scrap wood i used with some plain white card. I created a neat GUI using Python to enter the colours of the cube, as i did in fact run out of time to implement a camera.
- It is a 100% original design. I was not aware of any Rubik's Cube solving robots until I was about half way through my project.
- Minimal budget. I used cheap and easily accessible materials I found around my classroom.
- My age. I am a year 12 student (17 year old) with relatively less experience than university students who have attempted this project.
This project I undertook as a fun project has brought me great success. I mentioned earlier about entering my project into the New Zealand Brightsparks Competition. I won this technology competition, scoring $1000 and some free sessions with a patent lawyer (obviously for a future project). This competition entered me into the Realise the Dream Competition. I continued to the final 20 students and won $500 and a weeks travel around New Zealand with these students, visiting research institutes along the way. I also won a major prize in Realise the Dream - an all expenses 9 day trip to Taiwan to enter the Taiwan International Science Fair to compete against students from around the globe, which will be held in jan/feb 2013.
Looks Great! Sounds like a complicated project. Good Luck!
ReplyDeletethis is amazing. Even your cat is in awe of your work.
ReplyDeleteThanks for sharing it
Very cool, man! nice job!
ReplyDeleteExcellent project, James. I was laughing out loud watching your Lego man flip the cube over (laughing quietly, as it's the middle of the night here in Japan).
ReplyDeleteBest of luck in Taiwan!
You made Hackaday (hackaday.com) over the weekend, BTW.
thanks for the positive feedback, it really means a lot to me :) and i was super ecstatic when i saw my project on Hack a Day!!! my life is complete!!!
Deletevery nice man
ReplyDeletethats a great project... nice.
ReplyDeleteExcellent Job Man.!! At just 17, you've done a wonder job. Really inspired from your work. Good wishes for you future.!!
ReplyDeleteCan you please write the C code for the solver with two side hands and a bottom hand? We're doing the same project using ARM processor.
ReplyDeleteCan you please write the C code for the solver with two side hands and a bottom hand? We're doing the same project using ARM processor.
ReplyDeleteCan you teach me how you created this GUI?
ReplyDeletenice one
ReplyDeleteHow did you do the entire mechanical part?
ReplyDelete