Home

EnglishGerman formal - Sie
Internet Chess Table
Friday, 9. July 2010
 

Ultra-Low-Cost DIY Internet-Chess-Table. Der Internet-Chess-Table ermöglicht das Spielen von Schach-Partien über den freechess.org Internet-Server auf einem 3D-Brett mit 3D-Figuren. Die Züge des Gegners werden über einen DIY 20W LED low-resolution LCD Projektor auf einem transparenten Schachbrett dargestellt. Die eigenen Züge werden über eine Webcam-basierende Zug-Erkennungssoftware erfasst und an den Server geschickt.

1 Motivation

Seit 2001 spiele ich Schach und habe seitdem um die 1200 Partien über ein 2D-Interface auf dem Internet Chess-Server freechess.org gespielt.  Neulich besuchte ich einen Schachclub, wo ich auf normalen Brettern mit normalen Figuren spielte.

Das Schachspiel kam mir - trotz regelmäßige Spielpraxis auf dem Schach-Server - ziemlich unvertraut vor, was sich auf meine Spielstärke auch sehr negativ auswirkte. Ich fing an, nach einer Lösung zu suchen, die es mir gestattet, über den Schach-Server auf einem richtigen Brett mit echten Figuren zu spielen.

Zunächst versuchte ich ein Brett mit Figuren neben meinen PC stellen und die Züge von Monitor auf das Brett zu übertragen und umgekehrt, was sich aber als sehr ablenkend herausstellte.

Weiterhin ergaben Suchen im Internet, dass es zwar richtige Bretter als USB-Eingabegerät gibt, diese jedoch die zu spielenden Züge des Gegners nicht anzeigen können, weshalb man wieder einen PC benötigt, von dessen Monitor man die Züge auf das Brett überträgt. Andererseits gibt es Schachcomputer, die Züge erfassen und anzeigen können, diese aber nicht über eine Internet-Verbindung zu einem Schach-Server verfügen.

Das daraus entstandene Projekt ist daher eine Art aus beidem. Ein 3D-Interface zum Erfassen und Darstellen der Züge mit Internet-Anbindung zum freechess.org Server.

2 System

2.1 20W LED DIY LCD Projektor

Die Anzeige des Internet-Chess-Servers stellt ein selbstgebauter LCD Projektor dar, der über eine 20W LED-Lichtquelle verfügt. Als Display kam ein sehr günstiges 128x64 Pixel LCD zum Einsatz, von dem allerdings nur ca. 64x64 Pixel nutzbar sind. Weiterhin kam ein Objektiv vom Flohmarkt, ein alter CPU-Kühler und Kunststoff- und Glas-Linsen aus China  zum Einsatz.

 

 

 

 

 

 

 

 

 

2.1.1 Konstantstromquelle / LED-Treiber

Die µC-gesteuerte Konstantstromquelle wurde ebenfalls selbst entwickelt und verfügt über eine Soft-Start-Funktion. Mit ihr ist es ohne Probleme möglich, eine 20W-LED ohne Kühlung des Treibers zu betreiben. 

 

 

 

2.2 Webcam

Zur Eingabe dient eine uralte 320*240px Webcam, die ich in meiner Bastelkiste irgendwo noch gefunden hatte. Diese nimmt von unten Bilder auf, und eine selbstgeschriebene Client Software versucht die gespielten Züge zu erkennen, was erstaunlich zuverlässig funktioniert. Ein wesentlicher Bestandteil ist hier auch die vollständige Implementierung der Schachregeln, um mögliche falsch-erkannte Züge zu korrigieren.

2.3 Multitouch

Bei diesem System handelt es sich eigentlich um ein low-cost multitouch System. Der Unterschied zu Systemen, die FTIR (frustrated total internal reflection) or DI (direct illumination) verwenden ist, dass nur Umgebungslicht verwendet wird. Durch das Umgebungslicht verursachen die Figuren Schatten auf der Oberfläche, die dann ausgewertet werden können. Aufgrund dessen, dass keine zusätzliche Lichtquelle benötigt wird, wie es bei FTIR und DI der Fall ist, wird die ganze Konstruktion noch günstiger.

3 Demonstrationsvideo

 

 

Comments
Add New
+/-
Write comment
Name:
Email:
 
Website:
Title:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Please input the anti-spam code that you can read in the image.
free  - wow     |188.27.107.xxx |2010-07-10 17:33:54
Wow! amazing work !!
Vishi Gondi  - Can this be done on an iPad?     |96.25.178.xxx |2010-07-10 19:10:07
The iPad has touch sensitive screen that can detect multitouch. Can it detect so
many multi touch points though?
Bruno Matos   |188.80.94.xxx |2010-07-10 21:00:42
I want one!!! Where can I get it?!
junk  - PCB proto method   |74.69.41.xxx |2010-07-10 22:37:33
Very nice... I've looked at a couple of your other things and it looks like some
of your boards are commercially made but your power supply board here looks like
an in-house proto. I'm curious what method you typically use to do your protos.
I've been having decent luck with toner transfer and a sealer (with TRF), but
I'm always curious about what others with success are doing.
Alan  - Release of Code   |74.33.185.xxx |2010-07-10 23:57:16
Do you currently have any plans to release the source code of the program that
tracks the movement with the webcam? I would LOVE to make one of these myself,
but do not have the time to write that much code.
mewa   |76.208.66.xxx |2010-07-11 05:11:59
im curious if youve been able to calculate the lag your presenter introduces
into the game. this is obviously critical for people playing any sort of timed
chess game where anything close to 100ms per move would inhibit their
gameplay.

-mewa.rules
Nick Andrik  - Move detection   |93.39.57.xxx |2010-07-11 09:34:24
Don't you think it could be possible to make the program understand that a piece
has moved without having to press the side button?

Especially for the
opponent's move, it already knows what to expect.
Tenaya  - Very Cool, but . . .   |74.196.45.xxx |2010-07-11 15:57:36
. . . you need to add a robotic arm to move your opponents pieces. THEN,
you'll really be playing with him/her.
mohandsyasser  - nice     |41.234.27.xxx |2010-07-12 01:57:25
wow it's tooooooo good

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Letzte Aktualisierung ( Tuesday, 13. July 2010 )
 
Strategie di mercato