sábado, 10 de setembro de 2016

Projeto: Raspberry Pi - Robo jogador de xadrez - Parte 1

Este projeto tem como objetivo construir um robô capaz de jogar xadrez de maneira autônoma:

- Capaz de identificar a movimentação das peças adversárias
- Processar a jogada e retornar uma jogada
- Mostrar a jogada do adversário e a jogada do computador ( tela ou display LCD )
- Mostrar tempo transcorrido de cada jogador
- Sistema de som ( sintetizador de voz ) para anunciar as jogadas
- Movimentar as peças do tabuleiro através de um braço robótico ou um sistema de mesa cartesiana.

Para o processamento todo será utilizado um raspberry Pi modelo B. A escolha do raspberry Pi é pela farta documentação disponível, pelo bom processamento, pinos de I/O disponíveis, e porque é o modelo que tenho atualmente disponível sem uso.

Para identificação da movimentação das peças a intenção é utilizar visão computacional ( OpenCV ou simple CV )

A programação escolhida é o python 2.7 ( disponível em qualquer distribuição do raspberry pi )

O processamento das jogadas será utilizada uma engine open-source que tenha disponível para diversos sistemas operacionais.

Para visualizar as jogadas será usado inicialmente um display 2x16 com comunicação I2c e backlight RGB ( fornecido no kit  da Hackton da Intel em 2015 ).

Para o som será usado caixas amplificadoras com alimentação 5V

Para a movimentação das peças, será usado uma interface ( via spi ) com um modulo arduino pro  mini ( para movimentação de motores e servos ).


Inicio:

As primeiras peças a providenciar são as peças de xadrez ( óbvio ) e um tabuleiro.

Minhas peças de xadrez foram impressas na minha impressora 3D.
link: Peças

Foram impressas peças brancas e azuis ( já pensando no reconhecimento pelo OpenCV ).

Foi utilizado o tabuleiro do primeiro fascículo da coleção "xadrez Harry Potter" ( 41cmx41cm)



7 comentários:

  1. Ola fiquei interessado em seu projeto, poderia construir um pra mim , com algumas modificacóes?

    ResponderExcluir
  2. Finalizei a parte do raspberry pi como jogador de xadrez autônomo, utilizando um display para informar a jogada do computador e sugerindo uma jogada para o adversário, além de informar em voz robótica as jogadas.Agora estou desenvolvendo um braço robótico para deslocar as peças.

    ResponderExcluir
  3. Fala Cinesio , avançou bastante entao nesse projeto, bolou tudo sozinho? me interessei em sua idéia, gosto muito xadrez.

    ResponderExcluir
  4. Para fazer esse jogador de xadrez reuni informações da internet. No momento estou acrescentando um teclado touch screen para não ter um teclado externo.Para movimentação das peças estou estudando alguns tipos de braço robótico ( scara, delta, cartesiano ).

    ResponderExcluir
  5. Gostaria de encomendar um projeto parecido, mas sem o braço robotico. pode me mandar um email com seu telefone para falarmos melhor? miguel.kjr@gmail.com

    ResponderExcluir
  6. Olá, estou fazendo algo parecido.
    Você conseguiu reconhecer bem as peças de xadrez com OpenCV???
    Qual o link da parte 2?
    O código fonte é aberto?

    ResponderExcluir