2000/2001
2000/2001
HTL Neufelden
Mario Aigner
5BAT
Gerhard Engleder
5BAT
Grömer Herbert
Felhofer Hubert
Stögmüller Johann
Problemstellung
Der im Vorjahr konstruierte Scara-Schach-Roboter soll für ein Mühlespiel via Internet umkonstruiert bzw. programmiert werden.
Zielsetzung
-Der User soll über ein als Java-Applet programmiertes Mühlefeld seine Züge tätigen und den Roboter bei der Ausführungen seines Zuges über eine Networkcamera beobachten können.
Weiters sollen folgende Punkte gewährleistet werden:
-Mehrere User können sich einloggen und kommen entsprechend an die Reihe.
-Die Einhaltung der Regeln soll permanent überprüft werden.
-Der Roboter soll möglichst störungsfrei und unterbrechungsfrei laufen.
-Die Steine sollen auch nach längerem Spiel noch genau gesetzt werden.
Ergebnis
Der Roboter und die Programme laufen seit Ende Mai 2001 sicher und zuverlässig.
Verwertbarkeit
Die Anlage kann für diverse Ausstellungs- und Präsentationszwecke der HTL genutzt werden.
Projektablauf
-Konstruktive Änderungen am Roboter und Fertigung eines Gerüstes für Roboter, Brett und Kamera
-Festlegung des Layouts für Applet, Server und HTML-Seite
-Prinzipielle Programmierung dieser
-Festlegung und Ausprogrammierung des Kommunikationsprotokolls zwischen Client und Server
-Ausprogrammierung und Einbindung des Can-Buses in die Programmstruktur
-Intensive Testphase durch außenstehende Mitschüler
Beschreibung
Die Mühlesteine werden mittels Magnetgreifer aufgenommen und transportiert. Um eine Fehlerfortschreitung bei der Position der Steine zu vermeiden, wurden diese an der Unterseite mit einem Kegel versehen, welcher in bestehende Löcher im Mühlebrett rutscht, und somit eine Abweichung in der Position des Steines verhindert.
Die Software besteht im Prinzip aus drei Programmen:
Can-Server:
Dieses Programm bildet die Schnittstelle zwischen Spiel und Roboter, d.h. er übernimmt die
gültigen Spielzüge vom Game-Server und gibt sie über den Can-Bus an den Scara.
Game-Server:
Dieser bekommt die Züge des Users via TCP/IP übermittelt und führt anschließend die sekundäre Regelüberprüfung durch. Ist der Zug korrekt wird er an den Can-Server weitergegeben. Weites verwaltet dieses Programm die Queue der eingeloggten User.
Client:
Hier kann der User seine Züge mittels Mouseclicks und „Drag and Drop“ am graphisch dragestellten Mühlefeld tätigen. Bevor der Zug an den Game-Server weitergeben wird erfolgt mittels simplem Abfragealgorithmus die primäre Regelüberprüfung.
Presentation of the problem
In the year before a Scara-Chess-robot was constructed. We had to prepare and to programm this roboter for playing „Mühle“ via internet.
Objectives
-It should be possible for the user to make his moves with a JAVA-programmed „Mühlefeld“ and to watch the scara with the networkcamera making his moves.
With a stress on these points:
-It should be possible that more than one user are logged in and that everyone gets his turn.
-Every move of the users should be permanently checked by the programm about it´s possibility.
-The robot should work smooth and nonstop
-The stones should be set as exactly as possible every time.
Result
The robot and the programms run safe and proper since end of May 2001.
Usability
This Construction is desinged to represent the school on AUSTELLUNG
Order of events
-Changes in construction of the robot and designing a trestle for the robot, the „Mühlebrett“ and the networkcamera.
-Settling the layout of the applet, the server and the HTML-site.
-Structuring and programming these
-Programming the communicationprotocol between the client and the server.
-Programming and including the Can-bus.
-Intensive tests.
Description
The stones are set and moves magnetically. To avoid faults in the position of the stones, cones are put at the bottom of them. These cones fit into holes in the „Mühlebrett“ so that the position is always constant.
The Software consists of three programms:
Can-Server
This programm connects the actions from the user to the robot. That means that it gets the possible moves from the Game-Server and sends them via Can-bus to the robot.
Game-Server
This server gets the moves from the user via TCP/IP and makes the secondary check of the rules. If the move is possible it will send it to the Can-Server.
Client
Here the user should be able to make his moves on the painted „Mühlefeld“ through mouselcicks and drag and drop. Before the move will be sent to the Game-Server the primary check of the rules is made.