Posts | Comments

Planet Arduino

Archive for the ‘chess robot’ Category

The Weird and Wonderful History of Chess-Playing Robots

Who said robots had to be all work and no play? For many years, people have been designing and building robots not just to help with chores, but to help us win games. Possibly the most famous examples of this are the robots that play chess.

In this article, we’ll take a look at the history of chess-playing robots, how they’ve evolved over time, and share three famous examples.

And do not forget that with the right inspiration, Arduino, and the Arduino Cloud, creating a robot is not a dream anymore!

The history of robots in chess — Three famous robotic chess prodigies

Chess is an old game. Humans have been playing it for 1,400 years, and for the vast majority of that time, their only opponents were other humans.

As time went on and technology became more advanced, people started to turn their thoughts to ways of using tech to win at chess. One of the first (somewhat clumsy) attempts came in the 18th century.

The Turk

The Mechanical Turk, developed in 1770 by Wolfgang von Kempelen, stunned audiences by repeatedly holding its own against human opponents. The world had changed forever — were machines finally beginning to outsmart their makers!?

Well… not exactly. The Turk actually turned out to be a case of fraud — and featured a human chess player hiding inside the machine and controlling its movements. False alarm.

The Mechanical Turk was destroyed by fire in 1854, after a perplexingly long career.

Boris Handroid

Throughout the 20th century, people worked furiously to build machines that could beat humans at chess. Progress slowly chugged along, and in 1980 the first commercially available chess robot came into being.

It was based on a chess computer called Boris and was extremely rare and limited, to the point where many people doubted it even existed. Due to its incredibly exclusive nature, it’s no surprise that the Handroid never became a household name.

The Milton Bradley Computers

Although the Handroid was not exactly a success story, it did show the world that there was at least an appetite for chess-playing robots, if they could be made effectively and at scale.

In the early 1980s, American board game giant Milton Bradley decided to take on the challenge. Working with computer scientists, they began to develop a robotic chess game that would move the pieces reliably enough to be sold at a mass scale.

The result was actually three different models: the Grandmaster that hit the US market, the Milton which was sold in Germany, France, and the Netherlands, and the Phantom which was built for the British market — although all three devices were extremely similar.

The Milton Bradley chessboard was able to detect where pieces were and used magnets attached to motor-driven belts to pull the pieces around the board. Unlike most of its predecessors, the Milton Bradley chess robot was a success and sold many copies in the US and Europe. 

For chess aficionados, an important moment had arrived — you could now play chess at home without the need for a human opponent.

Deep Blue

Although it’s more of a computer program than a robot per se, no article about chess-playing robots would be complete without a mention of Deep Blue. Built on an IBM supercomputer, Deep Blue was the culmination of many years of grueling research and programming — a computer that could finally challenge a human chess champion.

In a series of games over the course of 1996 and 1997 — 10 years after development began on the project at Carnegie Mellon University — Deep Blue beat chess grandmaster Garry Kasparov.

It was a groundbreaking moment not just for chess, but for humanity as a whole — a reminder that, as advanced and intelligent as we are, the machines might just be catching us up.

Build your own chess robots

Today, you don’t need to rely on astronomically expensive novelty gadgets to experience the wonders of chess-playing robots — you can easily make your own at home. With tools like Arduino, amateur tech enthusiasts can assemble chess-playing machines for relatively low cost and without the need for a highly specialized skillset.

The Arduino Project Hub is home to a ton of chess-related projects, including some robots. YouTuber RobotAvatar built this machine that uses 64 reed switches to direct an Arduino Uno where each chess piece is.

Meanwhile, a computer running a Python program takes care of the “thinking” and sends signals to the device to move pieces. It’s a pretty straightforward device that literally adds an extra dimension to the game of computerized chess — allowing you to play games against machines in a much more tangible way.

Another amazing project, created by Greg06 on Instructables, is the automated chessboard that can not only tell where specific pieces are moved but also play against an actual opponent while moving its own pieces.

Chess isn’t the only thing Arduino is capable of. Check out our homepage to learn more about how it all works, the kinds of projects you can build, and how you can get started.

The post The weird and wonderful history of chess-playing robots appeared first on Arduino Blog.

Almost done with his degree in mechanical engineering, Rose-Hulman Institute of Technology student Josh Eckels had the inspiration to put what he learned to the test by creating an AI-powered robot that plays chess against a human opponent. The system is essentially a giant cube fashioned from a series of aluminum extrusions placed at right angles with a large chess board at its base. At the top is a gantry made with a few metal rods and timing belts that slide the X axis and grabbing mechanism to the correct positions. 

Four total stepper motors were used to move the grabber, including one for the X axis, another for the Y axis, a motor that spins a threaded rod to lift the gripper, and a final motor that rotates to open or close it. All of these motors connect to a central Arduino that has a CNC shield on top. This is connected via a USB cable to a Raspberry Pi running the Stockfish chess engine.

Stockfish is a great chess engine that keeps track of the current state of the game and makes moves according to the selected skill level. At the upper ranges, it becomes nearly, if not fully, impossible to beat by a human. The player selects on a screen where they want to position their piece, which then causes the robot to pick it up and place it somewhere else. Afterwards, the engine makes its move. 

You can read more about this project here and check out its demo below!

The post This autonomous chess-playing robot will beat its human opponents nearly every time appeared first on Arduino Blog.

If you’re tired of playing chess on a screen, then perhaps you could create a “real life” chess robot like Michalsky’s augmented board. The build runs micro-Max source code, enabling chess logic to be executed on an Arduino Mega with room for control functions for a 6DOF robotic arm.

The setup uses magnetic pieces, allowing it to pick up human moves via an array of 64 reed switches underneath, along with a couple shift registers. The Mega powers the robot arm accordingly, lifting the appropriate piece and placing it in the correct square to challenge its human opponent.

You can get a look at the project, with gameplay demonstration, in Michalsky’s video below.

While playing board games on a computer screen can be entertaining, this experience lacks a certain tangible aspect. YouTuber RoboAvatar decided to take things into the third dimension with a chess machine that uses an XYZ gantry system and gripper to move pieces as needed.

Instead of a vision system, RoboAvatar’s robotic device uses 64 reed switches (one for each square) to tell an Arduino Uno where the magnetized pieces reside. The project also features a Mux Shield and a pair of MCP23017 I/O expander chips, providing a total of 93 available pins.

While the Uno controls the physical motion and sensing of the board, a computer runs a Python program that does the chess game calculations and sends this information to it. You can see the machine demonstrated in the first video below. The second gives an overview of how it was made.

Want to build your own chess-playing robot? More details can be found over on Instructables.

[RoboAvatar]’s Chess Robot consists of a gantry-mounted arm that picks up chess pieces and places them in their new location, as directed by the software. The game begins when the human, playing white, makes a move. When a play has been made, the human player presses a button to let the robot to take its turn. You can see it in action in the videos we’ve posted below the break.

Running the robot is an Arduino UNO with a MUX shield as well as a pair of MCP23017 I/O expander chips — a total of 93 pins available! Thanks to all those pins, the Arduino is able to listen to 64 reed switches, one for every square.

The robot detects the human’s move by listening to its reed switches and identifying when there is a change. The gantry consists of X and Y tracks made out of PVC slabs, with half-inch lead screws turned by NEMA-23s and powered by ST-6600 stepper drivers.

Unlike some chess robots that rely on pre-existing software, this one features a custom minimax chess algorithm that [RoboAvatar] coded himself. It consists of Python scripts run on a computer, which interacts with the Arduino via a serial connection. In the second video, he explains how his algorithm works. You can also download the Arduino and Python files from [RoboAvatar]’s GitHub repository.

You’d be surprised how many chess-playing robots we’ve published, like the ChessM8 robot and this voice-controlled chess robot.


Filed under: Arduino Hacks
Mar
16

Lonely? Build Yourself a Chess Robot!

arduino hacks, chess, chess robot, computer chess, hackaday.io Comments Off on Lonely? Build Yourself a Chess Robot! 

[Oriol Galceran] has constructed an interesting robotic chess player for his end of school project. It’s called the ChessM8, and is an impressive feat considering [Oriol] is only 17!  He’s using an Arduino Mega that connects to the host PC via a Python script.

The AI can be any chess engine that uses the Universal Chess Interface protocol, which [Oriol] points out that most of them do.  We’ve seen other chess robots here before, along with others that you can play on your wall and uses Nixie Tubes. But [Oriol’s] build is the largest of them all.

He says there’s a network of REED switches under the chess board to detect when a piece is present or not. It would be interesting to know how he dealt with debouncing issues, and if Hall Effect sensors might have been a better choice. Let us know in the comments how you would detect the chess piece.

And be sure to check out the video below to see the chess robot in action.


Filed under: Arduino Hacks


  • Newsletter

    Sign up for the PlanetArduino Newsletter, which delivers the most popular articles via e-mail to your inbox every week. Just fill in the information below and submit.

  • Like Us on Facebook