Rubik’s Cube Solving Robot (RDRK) (Project#2)

RDRK is acronym in my language (Lithuanian) for “Robotas Dėliojantis Rubiko Kubą“. This is my second project involving microcontrollers μC (the zeroth was LED blinkie and the first one was RC5 decoder).

Intro:

Up to now I have used only atmel AVR microcontrollers, so this bot is no exception with: ATmega16. Firmware is written entirely in C, also avrlib library for timing/PWM/UART was used. Although program is written with wxWidgets (C++) library, it won’t compile under Windows because the system calls in serial communication part, thought if you remove it, it should build with no hassle.

In action:

The build:

Basic communication scheme: (USB-to-RS232 (PL-2303))->MAX232->UART

Power: for servos and logic I’ve used L7805 with big heatsink (and yes, at operation time it was necessity) and DSA-20R-12 switching adapter

Servos: 2xMG995‘s for main arms and  for 2xHXT900 “claws”

uC: atmega16; 7.3728Mhz; LF: 3f, HF: de

Other thoughts:

In order to use make with firmware you should export avrlib directory with:

export AVRLIB=/path/to/avrlib

Color recognition would be nice, but because it’s easy to do (as in: no challenge) and some cross platform problems (Unix/Linux) with webCAM I didn’t implement it (also partly because it’s not intended for daily use, and You should know that programmers are lazy)

Any questions? ASK!

Source files (tl;dr):

Extra:

P.S. everything is under GNU GENERAL PUBLIC LICENSE.

70 thoughts on “Rubik’s Cube Solving Robot (RDRK) (Project#2)

  1. Saunuolis, tikrai gabus ir talentingas esi jai sugebejai savo jegom sukonstruoti toki robotuka, manau neblogos perspektyvos taves laukia. Sekmes.

  2. Crazy!
    But the robot got help, I can see a helpful hand at the beginning and at the end, without it it would not do it! :-))))))
    I cannot even finish the one I got at home, just five cubes away … !? I should download your software and figure out how to finish it.
    Very, very neat!

  3. can u plz send me the software of this as i am final year student and want to do this project. my email id is dhep...@yahoo.com. plz plz plz send me that software and also programming. Thanks in advance if u fullfill my request.

  4. Sveikas, gal galima butu gaut schema => (USB-to-RS232 (PL-2303))->MAX232->UART? nes turiu atliekama PL-2303 ir noreciau bendraut per USB, bet nezinau kaip pasijungt. Beto, yra kokie iskirtiniai draiveriai PL-2303?

  5. Saunu Andriau :) as kaip tik irgi pradejau dabar tuom dometis labai.. :) kaip tik ka tik susilitavau Arduino su atmega16 tik va vargstu dabar su bootloader … kazko neuzkraunu tinkamai ir jis nesijungia :) bet manau pavyks …. tada irgi pradesiu delioti tam tikrus projektus :)

  6. Tikrai sveikinu su įvertinimu iftorinoje ;) Ir aš ten buvau. Truputį nustebau išvydęs tavojo darbelio video (pagalvojau juk jau mačiau tą video youtube) ;D Ždž sveikinimai ir nenustok dirbti!

  7. great job,

    i am planning a similar project, so i am interested in the “claws”.

    Self made or bought from somewhere?

    since i dont have Autocad or Corel, i cannot see the CAD drawings (maybe PDF ..)

    thx, chester

    • “Claws” are self-made. About CAD drawings, I will convert them to PDFs ASAP (Tomorrow I have a IELTS test, so please be patient) And thanks for this idea, I will definitely use PDFs for publication in the future.

  8. Nu ka Andriau.. Saunuolis, ka as dar galiu pridrut. ;] Nenuleisk ranku ir daryk tai, kas Tau puikiausiai sekasi. :) Sekmes seni. Ziurek, kad pirmojo skraidancio automobilio isradejas butu mano klasiokas.;DD Sekmes dar karta.

  9. kas butu sudetingiau – sukonstruoti rubiko kuba deliojanti robota ar, pvz, indus plaunanti robota (robotas itaisytas prie ciaupo, viena “ranka” valdantis ciaupo sklende(-s), kita laikantis plaunama lekste, ir treciaja “ranka” mazgojantis nesvarumus/likucius ?

    Arba dar geriau – robotas-siuksliu isvezejas (vidinese patalpose). Padarai robota kartu su tam tikru siuksliu konteineriu (ar tiesiog galimybe ideti vienkartini siuksliu maisa), ir nustatai jo pastoviaja buvimo vieta X (tarkim virtuveje kampe). Ir tada sededamas kitame kambaryje prie TV ir rydamas bulviu traskucius), nuotoliniu pultu issikvieti robota ant ratuku ir su siuksliu maisu “ant kupros”. Robotas savarankiskai susinaviguoja sau kelia is tasko X (virtuves kampo) i taska Y (prie mano sofos). As sumetu visa slamsta i siuksliu maisa ir robotas, gaves kazkoki impulsa (galbut netgi uztektu kokio popiergalio prisilietimo?) isvaziuoja atgal i taska X ir ten stovi, kol ateina laikas wel ji issikviesti. Kadangi as visai ne prie technikos linkes, tai man idomu ar namu salygomis imanoma toki robota pasidaryti. kokios didziausios kliutys/sunkumai butu kuriant toki robota? O gal tokie robotai jau seniai prekyboje??

    ir dar labai gerai butu lova paklojanti robota pasigaminti/nusipirkti. tikiuosi kad tokie robotai, jei dar ju nera, greitai atsiras?

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>