Skip to content

JinZihang/NTU-MA4825-GammaGo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Stargazers Forks Issues MIT License

Introduction to GammaGo

GammaGo

GammaGo is an interactive go game system that integrates image recognition with robot arm control. Game rule depends on the AI algorithm used, which is currently Gomoku.

This repository contains all the necessary materials to reproduce our GammaGo system:

  • Hardware design and materials we used. (Model files for 3D printing, etc.)
  • Image sensing code to find stone positions on the go board. (Both pure python and ROS python version provided.)
  • Control code for the robot arm (Using ROS).

Contents within this repository are under MIT license, feel free to use it for your own project.

The purpose of creating this repository is to provide an easy way for everyone to start a robotics project. So you can suffer less pain on setting up the environment, figuring out how to even make a motor move. Instead, you can spend more time making your own ideas come true. It will be great if you can help add new features here. We will add you to our contributor list.

Contribution Guidelines

  1. Fork this repo
  2. Clone the forked repo to your local system
  3. Commit changes locally
  4. Push your commits to the forked repo
  5. Submit a Pull Request and Request Review from us

Overview

Highlights

Issues

  • When motors overheat, their strength turn smaller and might become inadequate
  • Image recognition does not work well consistently for reflective board surfaces

Future Development

  • Mechanical
    • Use gear sets to reduce the torque required from motors
    • Use stronger motors and 3D-printing materials
    • Improve the stone feeder
  • Software
    • Improve image recognition for reflective board sufaces
  • Control
    • Clean the board after a game completes
    • Replay past games
  • Others
    • Display visible signs when a game ends

External Requirements

  1. Dynamixel
  2. MoveIt
  3. Game algorithm (how the system plays)

Contributors

Special thanks to ros_sony_cam and all-contributors.