Your cart is empty
Enter your email address to subscribe to our Newsletter.
Effectual Robotics Forum - Chat about Robots and Courses

Effectual Devices - Corporate Portal

Effectual Education - We raise passionate & inquisitive leaders

Effective Gadgets

Evolution Toys





ACRA

AVG Internet Security 2012

PayPal Verified

 

Posts Tagged ‘advanced nxt’

Robot Arm using Firgelli’s linear actuators

Monday, June 20th, 2011

Experimented with Firgelli’ Linear Actuators and created a simple robot arm. Firgelli’s linear actuator stroke distance can be programmed in a precise manner (in mm or lego holes). Speed can also be programmed. The actuators high-torque output is ideal for this application.

Watch a video of the actuators in action:

LEGO Mindstorms Rubik’s Cube Solver

Tuesday, April 19th, 2011

This Rubic Cube solver by Hans Andersson shows the power of the NXT.

 

The Tilted Twister 2.0 Features Solves a standard Rubik’s cube.  There is no need to replace any color stickers on the cube. It can be built from a single LEGO Mindstorms NXT 2.0 set. It is completely stand-alone operation and there is no need to connect a computer or web cam.  It detects the colors using the LEGO Mindstorms color sensor Support for Herbert Kociemba’s Two-Phase Algorithm. The challenge was to build the robot using a single LEGO Mindstorms NXT-kit. And to make it completely independent, without need of being connected to a computer. The Lego Mindstorms NXT kit contains three servo motors and a set of sensors (touch, color and ultrasonic).

The author got the final design after a lot of experimenting  -

“If I tilted the whole robot, it would be possible for it to tilt the cube using only one motor, leaving the other two motors for twisting the cube and for positioning the color sensor. Thus Tilted Twister.

Color recognition

Even if the LEGO Mindstorms color sensor is very accurate, it is hard to distinguish between the red and the orange colors. The corners are no problem, there is redundancy in that it is possible to use the colors of two sides to determine the color of the third. The center cubies have even more redundancy. The only thing I had to consider was the Rubik’s logo on the white center cubie, which gives undefined color readings. The edge pieces are hardest to resolve. For example to determine whether an instance of a cubie is red/blue or orange/blue. By converting RGB values to hue and saturation and comparing them (orange has a somewhat higher hue/saturation compared to red) it is possible to resolve even these.

Calculating a solution

I wanted the robot to be completely independent, without the need to connect to a computer. This puts some demands on the program. Of the size of the program and memory usage. And not least of performance. The performance of NXT’s processor is quite sufficient for typical robot-tasks. But when it comes to heavy calculations it is significantly slower than an ordinary computer. This rules out heuristic-algorithms (which generates near optimum solutions, with approximately 20 face turns). Instead I tried to find a method to solve the cube, whith limited number of algorithms but that still would generate a solution with not too many moves. First I implemented a quite simple layer by layer algorithm. This gave a solution with an average of almost 100 face turns. I have then implemented a corners-first method which generates a significantly shorter solution. The average is about 60 face turns (which I think is pretty good for a general solution). As a matter of fact, the program calculates three solutions with different starting points, and picks the shortest.

Herbert Kociemba’s Two-Phase algorithm

To get an even quicker solve, it is possible to connect Tilted Twister to a computer via Bluetooth to calculate a shorter solution. I have used Herbert Kociemba’s fantastic Two-Phase algorithm which I use in a Java Application. This produces a solution of typically 21 face turns in just a second.”

Performance Stand-alone:

Scanning the cube: 45 seconds

Calculating a solution: 20 – 40 seconds

Executing the moves: 1 – 5 minutes Average total time: 6 minutes

Connected to computer:

Scanning the cube: 45 seconds

Calculating a solution: 1 second

Executing the moves: 1 – 2 minutes

Average total time: 2.5 minutes

Video of the robot in action:

More info and building instructions: http://tiltedtwister.com