r/AskRobotics • • 16h ago

First robotics project - arm to move chess pieces

I'm a complete newbie to robotics, so I am hoping that some wiser heads can offer some informed opinions on a hobby robotics project that I am considering. FYI, I am an experienced software developer with substantial commercial experience with mobile apps and web apps.

My project is about building a robotic arm that can move physical chess pieces on a standard chess board. I was looking at the Yahboom ROS2 Robotic Arm as a possible device.

The aim is to allow the robotic system to work with any chess board within a physical size (up to 46 cm width)

There would be a custom app running a smart phone/tablet that would dispatch instructions to the robotic arm. The custom app would integrate with one of the main chess platforms (lichess, chess.com) in terms of starting a game, sending/receiving moves, etc

In terms of robotic arm setup, I envisage something like:

  • The robotic arm is placed at one side of the chess board
  • The app would prompt the user to put their finger on the a1, h1, a8 and h8 chess squares to allow the robotic arm camera to map the chess board extent.
  • Again prompted by the app, the user would place each piece type on the e4 square so that the robotic arm/camera can recognise and learn how to pick up each piece type
  • The app would prompt the user for the location of where captured pieces would be placed.
  • The app would prompt the user to put all the pieces on the board. The robotic arm would then move each piece to its starting position.

Is this pure fantasy?

Some immediate questions:

  1. What length of robot arm would be required to move/pick up pieces on the far side of the board?
  2. What software tech stack does the robotic arm use? Would I have to write software that would be deployed onto whatever device is driving the robotic arm, or does it have an API that can be called?
3 Upvotes

1 comment sorted by

1

u/Fragrant_Leading1852 14h ago

My advice is to look at existing projects and start by replicating it. Then you can improve it like by adding the phone app which I imagine many hobby projects do not incorporate. Many people have already built this so its actually a very good one to do for learning.

a few examples:

https://www.instructables.com/Chess-Robot-Raspberry-Pi-Lynxmotion-AL5D-Arm/

https://projecthub.arduino.cc/ricpd/chess-playing-robot-arm-that-will-beat-you-3df8bf

https://community.robotshop.com/robots/show/chess-playing-robot

https://onlinelibrary.wiley.com/doi/full/10.1002/eng2.70607

One thing to point out immediately is that a table top chess board is a different problem from one of those large floor chess boards with large pieces. If you want a robot that can do any size board, you likely need a arm on a mobile base that can move around the board to reach pieces when needed. I would instead just stick to a single size board that is small so the robot does not have to reach that far to move pieces on the opposite side of the board.

My general advice for getting started is to not try to start from scratch. Instead, build from another starting point. Especially in robotics, right now you could have so many options for how to approach this problem. Starting from an existing project can help you learn and constrain you so you are not stuck in limbo trying to determine the best programming stack or the best arm configuration or the best computer vision method among the other multitude of decisions you would have to make.