• Models
  • Contests
  • Slicer
  • Login
  • Start Here
    thingiverse-iconprintables-iconcults3d-iconmakerworld-iconmyminifactory-icon

    3D GO

    3D ModelsContestsCollectionsSaved ModelsOn a mobile device?

3D GO

Privacy Policy
Rubik cube solver robot (V-shape) 3D Printer File Image 1
Rubik cube solver robot (V-shape) 3D Printer File Image 2
Rubik cube solver robot (V-shape) 3D Printer File Image 3
Rubik cube solver robot (V-shape) 3D Printer File Image 4
Rubik cube solver robot (V-shape) 3D Printer File Image 5
Rubik cube solver robot (V-shape) 3D Printer File Image 6
Rubik cube solver robot (V-shape) 3D Printer File Image 7
Rubik cube solver robot (V-shape) 3D Printer File Image 8
Rubik cube solver robot (V-shape) 3D Printer File Image 9
Rubik cube solver robot (V-shape) 3D Printer File Image 10
Rubik cube solver robot (V-shape) 3D Printer File Image 11
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 1
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 2
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 3
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 4
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 5
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 6
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 7
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 8
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 9
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 10
Rubik cube solver robot (V-shape) 3D Printer File Thumbnail 11

Rubik cube solver robot (V-shape)

Volker avatarVolker

January 14, 2020

printables-icon
DescriptionCommentsTags

Description

Core requirements
Stand-alone (no PC; no smartphone)
Nice looking (minimum cable; solid standing; no “gimmics”)
Should work for all cubes (typical size 2”), in any sticker configuration (pure color; no pattern)
Should work in difficult light situation.
If center stick is marked with a logo it might be required to cover it with the appropriate color (normally those logos are printed on the white center – therefore no problem using a white sticker)
No speed record - but reasonable fast

Concept and idea:
https://forum.arduino.cc/index.php?topic=271827.0

Heavy duty gripper (including link to Fusion360 Files):
https://www.thingiverse.com/thing:2800244
changes, improvements:

  • Holder with soft rubber (4mm) to control gripper force more easily
  • Smaller holder due to conflict caused by inaccurate gripper movement (mechanics and servos)
  • Support of turning servo (turning supported by basement and not only hold by servo axis)

result:

Typical solving time including scanning and calculation < 2 min.

I'm using 270° servos to enable 180° moves (stepper motor might be faster, but more effort for initialization). Other servos could be used – with the limitation to 90° moves (the SW on Github is configured for standard 180° servos)
Small display with core messages (count down; timer and calibration assistance)
Teaching / calibration of servos without external computer

Mechanical assembly with M3 Allen screws
Screws in plastic with brass threads. https://www.youtube.com/watch?v=KUEFhiFB6Zs)

Use wb_shield if gripper is not printed in White. White area is needed to adjust white balance. White balance of picam does not work very well.

SW available on Github:
https://github.com/DrVoHo/Rubik\_solver

Driver for display and kociemba solver needs to be installed separately.

Parts needed:
Raspberry pi
Pi-cam
Servos: MG996 (for given timing in the SW) or Miuzei DS3218 with 270° turning angle to enable the 180° feature. But be aware of the changed Timing.
Display: I used AZDelivery 128 x 64 (luma OLED ssd1306) as found on the big online store. You need to install the luma Driver as described in the handbook. If you decide to use a different Display, be aware to change a couple of parts in the SW, due to the fact that the functions of the library are not the same. Especially the start of the Program and the function "Anzeige()" needed to be adapted.
Optional: PCA9685 PWM Driver board. Creates stable servo moves without jitter (please find adapted program on github
power supply (5V 50W due to high power servos)
set of M3 allen screws (different length)
set of M3 brass threads (only short length required)
microswitches for "+" "-" "Enter. They need to switch GND to the GPIO pin
mini solder boards

Wiring:
The Display is directly connected to the I2C Bus, according the documentation of the Display. Please test with one of the supplied test Programs.

For the microswitches and servos use the GPIO Ports as in the SW described:

PLUS_BUTTON = 11
MINUS_BUTTON = 13
ENTER_BUTTON = 15

LINKS_DREH = 36
LINKS_GRIP = 37
RECHTS_DREH = 18
RECHTS_GRIP = 16

Be aware that those numbers are the Pins of the GPIO Board and not the GPIO number.
If you use "GPIO.BCM" (actual GPIO number and not the Pin) you have to transform the numbers. (s. https://indibit.de/raspberry-pi-die-gpio-schnittstelle-grundlagenbelegung/ - a documentation in German). Some display libraries are using GPIO.BCM and you cannot switch back to GPIO.BOARD.

Make sure that only the control line of the servos goes to the Raspberry Pi. Power an GND of the servos must be directly connected to the power supply. The Raspberry Pi cannot deliver the required current for the servos. Make sure that GND of Raspberry Pi is connected to the GND of the servos
Servo Timing:
Raspberry Pi can only create PWM with 50Hz frequency (20 ms duration). All servos are controlled with a PWM with a Minimum time and a maximum time. You can use different servos with different Timing. The SERVO_PWM_xxx and SERVO_OFFSET_xxx needed to be calculated according the timing of the servo which is sometimes difficult to get.
SERVO_OFFSET_xxx = Minimum_Time / 20 x 100 (Minimum time in percent of PWM Duration)
SERVO_PWM_xxx = (Maximum_Time - Minimum_Time)/ 20 x 100
TURN_MAX_xxx = maximum turn angle of the servos according the timing.
Raspberry Pi is doing a SW-PWM. That means that start and end point of the PWM Signal are created by SW routines (inside Raspberry Pi). If there are background tasks the PWM timing can be influenced, resulting in some jitter on the servos (shaking arms). If this is not acceptable you can use a PCA9685 PWM board. This board creates HW-based PWM Signals without any jitter. You can also use higher PWM frequency (does not Change anything in the behavior of the robot)

Print instructions

Category: Robotics Print Settings

Printer Brand: Prusa

Printer: I3 MK3S

Rafts: No

Supports: No

Resolution: .15

Infill: 15

Filament: PLA / PETG
Notes:

use PETG for all parts with direkt contact to servos

License:

Creative Commons — Attribution — Share Alike

Related Models

Thor Mjolnir Hammer Bic Pen preview image

Thor Mjolnir Hammer Bic Pen

effektz profile image

effektz

9,080

Diverse Schilder / various labels  for hobby & makers preview image

Diverse Schilder / various labels for hobby & makers

RPK profile image

RPK

2

Cacciavite Portachiavi - Scewdriver keychain preview image

Cacciavite Portachiavi - Scewdriver keychain

Butti Maker Studio profile image

Butti Maker Studio

21

Vorpal The Hexapod Walking Robot preview image

Vorpal The Hexapod Walking Robot

vorpal profile image

vorpal

4,981

MakerZ – Open Source 1/28 RC Drift Chassis by Fails & Makes | Açık Kaynak 1/28 RC Drift Şasisi preview image

MakerZ – Open Source 1/28 RC Drift Chassis by Fails & Makes | Açık Kaynak 1/28 RC Drift Şasisi

Fails&Makes profile image

Fails&Makes

Cute Fluffy Puppy Figurine to Print preview image

Cute Fluffy Puppy Figurine to Print

bonowski. profile image

bonowski.

3

Snap-Together Mini Minecraft Jack-O-Lantern with integrated LED preview image

Snap-Together Mini Minecraft Jack-O-Lantern with integrated LED

scottrlindsey profile image

scottrlindsey

4,447

Small Parts Storage Drawers - Organizer preview image

Small Parts Storage Drawers - Organizer

GT 3D Makers profile image

GT 3D Makers

29

7