Difference between revisions of "Projets:Perso:2011:Echiquier"

From Electrolab
Jump to: navigation, search
(1: Mode émulation DGT)
(1: Mode émulation DGT)
Line 38: Line 38:
  
 
=== 1: Mode émulation DGT ===
 
=== 1: Mode émulation DGT ===
Il s'agit d'un mode ou le plateau est complètement esclave d'un PC (pour jouer sur internet, ou contre un logiciel tournat sur le PC). Le bout est d'émuler du mieux possible un plateau DGT ; (protocole ici : http://digitalgametechnology.com/site/index.php/Download-document/85-DGT-Electronic-Board-Protocol-Description-version-200912.html)
+
Il s'agit d'un mode ou le plateau est complètement esclave d'un PC (pour jouer sur internet, ou contre un logiciel tournat sur le PC). Le but est d'émuler du mieux possible un plateau DGT ; (protocole ici : http://digitalgametechnology.com/site/index.php/Download-document/85-DGT-Electronic-Board-Protocol-Description-version-200912.html)
 
On pourra également enregistrer les parties ou gérer l'horloge sur l'écran LCD.
 
On pourra également enregistrer les parties ou gérer l'horloge sur l'écran LCD.
  

Revision as of 17:14, 30 August 2011

Interface de jeu
Auteur Jeff
Date de proposition 28/08/2011
Tags du projet PPC
Lieu d'utilisation final Anywhere
Utilisateur final Youngsters
Type de projet

Projet personnel de Jeff

Projet Interface de jeu

Jouer (et se faire écraser) aux échecs contre un ordinateur, c'est bien ; mais avec des vraies pièces plutot que sur un écran, c'est mieux.
Hélas, si les d'échecs jeux autonomes étaient à la mode il y a une vingtaine d'année, ce n'est plus le cas aujourd'hui ; et si on souhaite avoir un plateau connectable à un PC les prix s'envolent...
D'ou l'idée de ce projet : créer une plateforme ouverte permettant à tous de se fabriquer un plateau d'échecs électronique connectable ET autonome "à pas cher"




Introduction

Donne un appercu des tenants et aboutissants du projet.

Objectifs

Fabriquer un plateau d'échecs électronique pas cher (moins de 150 euros) et :


Principe

  • Les pièces sont dotées d'aimants et le plateau est équipé de 64 interrupteurs ILS (reed switch) ; ces interrupteurs sont organisés avec une matrice de diodes de manière à ce que seulement 16 pins soient nécessaires à la lecture de l'échiquier
  • Le lien entre un PC et l'échiquier est effectué via l'interface série émulée de l'Arduino
  • La logique du jeu et la validation des coups légaux avant transmission au PC se fait dans l'Arduino
  • On ajoute un écran LCD permattant le paramétrage ainsi qu'en offrant un fonction de pendule

Fonctionnalités

Le plateau doit avoir 3 modes de fonctionnement :

1: Mode émulation DGT

Il s'agit d'un mode ou le plateau est complètement esclave d'un PC (pour jouer sur internet, ou contre un logiciel tournat sur le PC). Le but est d'émuler du mieux possible un plateau DGT ; (protocole ici : http://digitalgametechnology.com/site/index.php/Download-document/85-DGT-Electronic-Board-Protocol-Description-version-200912.html) On pourra également enregistrer les parties ou gérer l'horloge sur l'écran LCD.

2: Mode plateau autonome

Le but est ici de pouvoir jouer contre le plateau SANS le connecter à un PC. Il s'agit surtout de développer un logiciel adapté à la plateforme (ou sont passés mes gigaoctecs de RAM? :p). Je disopoe d'une bonne base avec mon logicicel maison : http://gaiachess.free.fr

3: Mode module UCI

Le but est de pouvoir faire jouer le plateau comme si c'était un programme 'normal' dans le PC grace au protocole UCI (http://wbec-ridderkerk.nl/html/UCIProtocol.html). On utilisera principalement ce mode pour faire des tests de positions ou contre d'autres programmes lors du développement.


Réalisation

Prototype 1

Réalisation d'un plateau 2x2 cases et détection des pièces

Matériel

Objectifs

  • Prise en mains et validation de la plateforme Arduino
  • Validation de l'idée de la matrice de diodes

Réalisation

28/08/2001 : Le prototype fonctionne ! Détection OK sur quel que soit le nombre de pièces. Voir photo : http://www.wuala.com/api/preview/jromang/Photos/Public/IMGP7730.JPG

Problèmes rencontrés

  • Lecture de valeurs aléatoires sur les entrées de l'Arduinio - solution passage en mode "pullup" sur les précieux conseils de Clem
  • "Mais pourquoi ca fait des grosse patates d'étain quand je soude?" - solution demander mardi prochain :p

Prototype 1.5

le même que le 1, mais avec un plateau en bois. L'objectif est de tester si ca fonctionne encore/de trouver un moyen pour que ca fonctionne encore !

Matériel

  • cf ci dessus (identique)
  • Du bois
  • différents aimants, de différentes forces.
  • outillage: une défonceuse

Objectifs

  • tester la réalisation du plateau en bois (épaisseur max admissible selon aimants, etc)

Réalisation

  • TODO

Problèmes rencontrés

  • trouver une défonceuse (yen a t il une au lab ? Sinon, est-ce que quelqu'un peut ramener/prêter ca ?)

Prototype 2

Réalisation d'un plateau 8x8 cases et détection des pièces.

Matériel

  • Carte arduino MEGA 2560 (49€) (http://arduino.cc/en/Main/ArduinoBoardMega)
  • 64 diodes + 64 interrupeurs ILS (~40€)
  • Un écran LCD
  • Du plastique/plexi transparent
  • Un set de pièces magnétiques (facile a bricoler)

Logiciel

  • Implémenter un générateur de mouvements légaux dans l'Arduino
  • Implémenter le protocole DGT
  • Gestion de l'écran LCD (affichage de la position, pendule)
  • Implémenter un module simple pour le jeu autonome

Objectifs

Il s'agit ici de construire le plateau interrupteurs/diodes "définitif" qui servira pour tous les protos suivants

Réalisation

En cours ! :)


Questions ouvertes/problèmes

acteurs impliqués dans le projet

  • Jeff
  • Clem (malgré lui car je vais probablement lui poser plein de questions ^^)
  • Toute personne intéressée est bienvenue !

Macro planning

  • aout 2011: protoype 1 (FAIT)
  • septembre 2011 : partie "hard" du prototype 2
  • octobre 2011 : implementation du générateur de mouvements et du protocole DGT
  • novembre 2011 : module autonome