Arduino Rubik Robot solver with 8 servo motors

Поделиться
HTML-код
  • Опубликовано: 31 авг 2021
  • This Robot is my personal project and was accomplished with an Arduino Uno with the 16 channel servo board connected. I also made an Android App to capture the cube's colors correctly and used the HC-06 module to establish the connection. The solution is figured out with CFOP method although improvements on a more efficient method might come in the future.
    Source code: github.com/EmanGM/Arduino-Rub...

Комментарии • 61

  • @skillswithrubikscube9512
    @skillswithrubikscube9512 2 года назад +1

    Super robort solved Rubiks Cube .keep it up 💪💪💪

  • @TinyMaths
    @TinyMaths 2 месяца назад

    Great project; thanks for showcasing. I like this design because it seems more approachable than others I've been looking at, and because of how 'clean and minimal' it looks. Just finished programming a solver in JavaScript, and, like yourself, I hard-coded the solution using the CFOP method; I'll eventually look at developing some type of solving algorithms; this is just for fun though and not about efficiency per se'. The app scrambles are either from user activated button rotations, online scramble generators, or a colour picking method designed for the app - where I use a color palette to select the color of each facet to match a scrambled physical cube.
    Next is comuter vision; I'm looking at using P5JS for this, or OPEN CV js. Thanks for providing the cad files; they'll be of great help.

  • @giggetto71
    @giggetto71 6 месяцев назад +2

    Great project! Thanks for sharing. I am about to start a similar one but i am struggling to find gears for the sg90 servos to make the linear motion. Where did you find them for your project? Thanks

  • @ee08012
    @ee08012 2 года назад +1

    Excelente!
    Parabéns!

    • @eman4885
      @eman4885  2 года назад

      Não teria conseguido sem ti! Ajudaste-me no que eu não sabia e também trabalhaste muito nisto, o projeto também é teu.

  • @johncarlobundoc3424
    @johncarlobundoc3424 Год назад +1

    very awesome please make a tutorial on how you build this😁

  • @lorenzoboiko
    @lorenzoboiko 2 года назад

    amazing

  • @user-kt8vg4uq2n
    @user-kt8vg4uq2n 10 месяцев назад +3

    Could you please post a video on how to make this. And which app do you use

  • @slawko1974
    @slawko1974 2 года назад +1

    Great project.
    What version of arduino to compile it because I tried different and still a lot of errors.
    What version of the Adafruit_PWMServoDriver.h library should I install?
    Errors for example: z_main: 279: error: array bound is not an integer constant before ']' token
    C: \ Users \ SK \ Desktop \ Arduino-RubikSolver-master \ Arduino-RubikSolver-master \ arduino files \ Rubik \ Rubik.ino: In member function 'void Cubo :: Init ()':
    Rubik: 18: error: 'Rubik_FaceToColorLUT' was not declared in this scope
    int color = Rubik_FaceToColorLUT [face];

  • @makerEmber
    @makerEmber Год назад

    What a fantastic project. I just made 1 set of claw with 2 servos using 3d printing. Then now trying to install app to the smartphone. Could you give some directions to install app? App link seems to be broken.

  • @Ely-mg8lw
    @Ely-mg8lw Год назад +2

    Hi! I've started a project similar to yours. I am interested in transmitting data from smartphone's camera to arduino via bluetooth. What's the process to install that app? Can you give me a more in detail guide? If private, how can I get in touch with you? Thanks in advance, Great wok you did!!

  • @mohamedaminebenbouali2941
    @mohamedaminebenbouali2941 Год назад +3

    the fact that u only have to hold the cube by and wait for servos to close on it is genius cause now u no longer need a servo on the bottom to hold it up for u, the side servos hold it, the grippy tape on the insides of those black arms keep it from slipping too, very little 3d printing required and it just requires a wooden piece for everything to be held together, the app takes away the need for a camera, the clever turning of the servos of the cube to show u each face to take a photo is lovely. i do recommend you use some of the better out there algorithms for solving the cube (there r ones better than kociemba) i see that youre not using kociemba either, youre kind of using a hardcoded method? props to u, but the good algorithms can give u 20 turn long solutions that r gonna make ur robot that much better (its already lovely). ive made several different kinds of cube solving machines from overpowered ones to simpler more afforable ones, i wanna try making urs, ill comment again if i do end up giving it time and ill post my design files if i end up improving upon it somehow

    • @mohamedaminebenbouali2941
      @mohamedaminebenbouali2941 Год назад +2

      a day later and I have designed a sliding mechanism to move the servo back and forth, it looks very similar to urs since I made it based on ur design, next is the handle that lets the servo turn the cube face, it's trick, the grippy parts on the inside need to hold onto the cube just enough to prevent it from slipping when the side servos pull away from it and when it's held in the air by two horizontal servos and also must be able to pull away from the cube without dragging it with it, come to think of it, I can just make the servos press against each other to keep the cubeup when showing the faces to the phone, this way I don't have to rely on the grippiness so much.

    • @eman4885
      @eman4885  Год назад +1

      First of all, thank for you feedback and admiration. In the alpha version a small camera was in the bottom but found the way it is now more simple and appealing, the "claw" pieces was a lot of trial and error to get the right measures and the servos press against each so that the cube doesn't fall, for the algorithm I needed one that used very low resources due to hardware limitations.

    • @mohamedaminebenbouali2941
      @mohamedaminebenbouali2941 Год назад +2

      ​​​​​​@@eman4885 2 weeks later (I just saw ur comment) and I have made a very similar installment to yours, however it is fully 3d printed, the sliders are also just 3d printed hinges included in the 3d print, yours use metal axies (like the ones found inside floppy disk readers) which are much smoother but my goal is to make something super cheap, so I know I'm compromising here, I have 3d printes TPU socks for the grippers and did the same as what you said about "the servos pressing against each other so the cube doesn't fall" and it works flawlessly, the TPU socks take a way a little bit of pressure and they're also grippier than PLA (what I had before) and today I just succeeded in making U and D turns by flipping the cube around in the same fashion as u made it do in the robot (using Left and Right servos pressing hard on it and spinning in the same direction), next step is to make the app, and here is my reply to your algorithm idea, you don't have to keep the algorithm inside of the Arduino, you can have it in the app, which is what I'm going to do, kociemba does exist as a library for mobile apps (since it's written in java too) so I'll do the same method as urs of taking photos of the cube, I'll let kociemba solve it within the app and then simply send the required turns to the robot, so the Arduino has nothing inside it except for taking care of turning the cube faces

    • @mohamedaminebenbouali2941
      @mohamedaminebenbouali2941 Год назад +1

      ​​​​@@eman4885 here is some of the motion so far, nowhere near done tho (I do notice some of the turns are incomplete but I didn't bother to fix that by adding a bit more angles to the turn bcz I wanna see if it can handle imperfect turns) there are lots of delays between turns I haven't yet reduced them more ruclips.net/video/kpB84YW45og/видео.html

    • @eman4885
      @eman4885  Год назад +2

      3D printed was considered by me, however I do not hadd access to a 3D printer and as weird as it may be, in my case using acrylic pieces has cheaper.
      After completed my project I realised I could use that strategy (kociemba running on mobile phone) but the challenge was to pass my mental instrutions to solve the cube directly to code and I was more comfortable with arduino programming at the time.

  • @youcube2
    @youcube2 Месяц назад +1

    I want to make one but where should I start

  • @hugroit9872
    @hugroit9872 Год назад +2

    hi! how did you attach the servos to the parts that twist the cube?

  • @darkdeath4480
    @darkdeath4480 2 года назад +2

    Can I get the blueprints of the project ?

  • @user-kv7df6kj6p
    @user-kv7df6kj6p Год назад

    Did you use Android studio when you installed apk?

  • @sangang8169
    @sangang8169 Год назад

    how much arduino software do you use to program it

  • @JmarbinGG
    @JmarbinGG Год назад +1

    Hi, this is an awesome design, and I am trying to make one that scrambles the cube for school, what servos did you use, and could you please attach the 3d printing files? Thank you so much!

    • @gamingmonts9737
      @gamingmonts9737 Год назад +1

      I'm currently making an exact replica of the robot we saw in the video, I'm using servos called SG90, which looks like he is using as well.
      As for the software and the 3D prints I'm doing this all by myself from scratch. Except for the algorithm that actually solves the cube. For that I import kociemba

    • @sangang8169
      @sangang8169 Год назад +1

      Can you give me the program that you did not write?

  • @pavletrnic1433
    @pavletrnic1433 2 года назад

    Awesome! Did you try making it using stepper motors?

    • @eman4885
      @eman4885  Год назад

      no, I could but servo motors are cheaper :)

    • @pavletrnic1433
      @pavletrnic1433 Год назад

      @@eman4885 true, but stepper motors arent limited to 180* so that would make it faster

  • @navkaranhanda
    @navkaranhanda 11 месяцев назад

    hi, i am in the final stretch of making the robot, could you please tell me what the grippy tape you used in the connectors is? how do you make sure the cube doesnt fall off when you turn the whole thing sideways?

    • @eman4885
      @eman4885  11 месяцев назад

      just any type of sponge and a lot of trial and error to see what works and what doesn't

    • @navkaranhanda
      @navkaranhanda 11 месяцев назад

      @@eman4885 a sponge, thats smart, i used a lot of different materials but I landed on athelete cloth tape. A bit finicky but it too seems to work in a certain configuration

  • @edysolis5243
    @edysolis5243 9 месяцев назад

    Impressive, hello, I wanted to ask you which is the Arduino file that needs to be executed because you have several and I don't understand which is the main one. Could you help me?

    • @eman4885
      @eman4885  9 месяцев назад

      All files need to be executed and be loaded in alphabetical order, that's the way arduino works. The last file z_main is the one with the "main" function.

  • @navkaranhanda
    @navkaranhanda Год назад

    could the data on the piece colors be inputted through a website instead of an app?

    • @eman4885
      @eman4885  Год назад

      That could be an option, although I wanted a more small device

  • @slawomirkon6090
    @slawomirkon6090 2 года назад

    How to run applications on the smartphone?

  • @ezequielpino437
    @ezequielpino437 18 дней назад

    What do I have to do to use the application?

  • @sdfsdfsdfsdffdhghghg
    @sdfsdfsdfsdffdhghghg 8 месяцев назад

    greetings friend, firstly I would like to congratulate you on the project and for making the code available.
    Could you help me with the APK, as I can't install it and I'm not able to compile the apk that you left in the link.
    thanks!

  • @nejcbohinec7978
    @nejcbohinec7978 Год назад

    how to download your android app?

  • @S--xc4rv
    @S--xc4rv Год назад

    Waoo excellent 🎉 , hey i want to buy this . How can i buy this ?

    • @eman4885
      @eman4885  Год назад

      Thank you! The files produced to build this are all available in the github repo in the description, use it as you wish.

  • @patriknovogradec453
    @patriknovogradec453 2 года назад

    Hi there!
    I am interested in aplication. Can you explain me how it works?

    • @eman4885
      @eman4885  Год назад

      I used CFOP method to solve the cube and OpenCV for the smartphone camera

    • @patriknovogradec453
      @patriknovogradec453 Год назад

      @@eman4885 Thank you very much!

  • @sayyedanasali7189
    @sayyedanasali7189 2 года назад

    Are the stands 3D printed ,
    If not what material did you use to make them.
    If possible can you provide us with the pdf copy of the shape and measurement of the stands.
    We are trying to make this project for our college mini project.

    • @eman4885
      @eman4885  2 года назад

      The pieces were made in acrylic cutted in a CNC cutting machine but you could definitely do it with a 3D printer.
      The github repo in the description was updated with media files and a pdf of the project's design.

    • @slawomirkon6090
      @slawomirkon6090 2 года назад +1

      Could you include android .apk please

  • @sangang8169
    @sangang8169 Год назад

    Can I ask what is the name of the android app?

    • @eman4885
      @eman4885  Год назад

      the android application is not available on any platform.

    • @sangang8169
      @sangang8169 Год назад

      @@eman4885 so how can i get

    • @slawomirkon6090
      @slawomirkon6090 Год назад

      @@eman4885 What is the order of data entry? I enter data from the terminal instead of using a smartphone. I enter a wall, e.g. YYYYOYYYY. I put in the rest of the walls. the cube starts to stack but it doesn't stack, it just mixes up. I put the cube like you do in the video. red center to the top, and blue center to the left

  • @edwincraju115
    @edwincraju115 2 года назад

    project report pls

  • @zahernanaa736
    @zahernanaa736 Год назад

    Great, can I get some more information?

    • @eman4885
      @eman4885  Год назад +1

      Yes, What would you like to know?

    • @zahernanaa736
      @zahernanaa736 Год назад

      @@eman4885 Is there a way to email you
      I'm making one for my graduation project

    • @eman4885
      @eman4885  Год назад

      email contact on my github profile

  • @LinuxNation.
    @LinuxNation. 7 месяцев назад

    You could have done much better with this lol

  • @Poliart3D
    @Poliart3D 8 месяцев назад

    greetings friend, firstly I would like to congratulate you on the project and for making the code available.
    Could you help me with the APK, as I can't install it and I'm not able to compile the apk that you left in the link.
    thanks!