Software: Unterschied zwischen den Versionen

Aus Kicker
Zur Navigation springenZur Suche springen
(Inhalt gekürzt um für den Leihen verständlich zu bleiben)
 
(7 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Navigation|software=underline}}
{{Navigation|software=underline}}


Um den Kicker zu betreiben, sind drei grundlegende Software-Komponenten nötig. Die [[Softwareumgebung#TwinCAT|SPS (TwinCAT)]], die [[Softwareumgebung#Ballerkennung|Ballerkennung]] und die [[Softwareumgebung#Spielsteuerung|Spielsteuerung]]. Um den Zugriff auf die SPS, für die anderen Programme zu vereinfachen, gibt es die [[Softwareumgebung#SPSchnittstelle|SPSchnittstelle]].
Um den Kicker zu betreiben, sind drei grundlegende Software-Komponenten nötig. Die [[Software#TwinCAT|SPS (TwinCAT)]], die [[Software#Ballerkennung|Ballerkennung]] und die [[Software#Spielsteuerung|Spielsteuerung]]. Um den Zugriff auf die SPS, für die anderen Programme zu vereinfachen, gibt es eine [[Software#SPSchnittstelle|SPSchnittstelle]].


== TwinCAT ==
== TwinCAT ==


[http://www.beckhoff.de/default.asp?twincat/default.htm TwinCAT] ist eine Software-SPS der Firma [http://www.beckhoff.de/ Beckhoff Automation]. Sie bietet sowohl die Funktionalität einer SPS, sowie einer numerischen Bahnregelung (NC), zur Regelung der Elektromotoren. TwinCAT läuft unter Windows XP und erweitert dieses um eine echtzeitfähige Laufzeitumgebung. Es wird [http://www.beckhoff.de/default.asp?twincat/twincat_nc_ptp.htm TwinCAT NC PTP] (Numerical
[http://www.beckhoff.de/default.asp?twincat/default.htm TwinCAT] ist eine Software-SPS der Firma [http://www.beckhoff.de/ Beckhoff Automation]. Sie bietet sowohl die Funktionalität einer SPS, sowie einer numerischen Bahnregelung (NC), zur Regelung der [[Hardware#Spielstangen-Aktorik|Elektromotoren]]. TwinCAT läuft unter Windows XP und erweitert dieses um eine echtzeitfähige Laufzeitumgebung. Es wird [http://www.beckhoff.de/default.asp?twincat/twincat_nc_ptp.htm TwinCAT NC PTP] (Numerical
Control, Point-To-Point) in der Version 2.10.0 verwendet. Als Schnittstelle zur SPS, steht [http://www.beckhoff.de/default.asp?twincat/twincat_ads_communication_library.htm ADS] zur Verfügung.
Control, Point-To-Point) in der Version 2.10.0 verwendet. Als Schnittstelle zur SPS, steht [http://www.beckhoff.de/default.asp?twincat/twincat_ads_communication_library.htm ADS] zur Verfügung.


Zeile 12: Zeile 12:
== SPSchnittstelle ==
== SPSchnittstelle ==


Um den Zugriff auf die SPS zu vereinfachen, wurde die SPSchnittstelle programmiert. Sie übersetzt die ADS-Schnittstelle und stellt ein UDP-Server dar, um eine einheitliche [[Softwareumgebung#Interprozesskommunikation|Interprozesskommunikation]] im Projekt zu gewährleisten.
Um den Zugriff auf die SPS zu vereinfachen, wurde eine SPSchnittstelle programmiert. Sie übersetzt die ADS-Schnittstelle und stellt ein UDP-Server dar, um eine einheitliche Interprozesskommunikation im Projekt zu gewährleisten.


== Ballerkennung ==
== Ballerkennung ==


Die Ballerkennung ermittelt die Ballposition auf dem Spielfeld mit Hilfe von zwei Embedded-Kameras im 10ms-Takt. Die Position des Balls wird mittels einer Visualisierung am Bildschirm dargestellt und für weitere Programme per UDP-Server zur Verfügung gestellt.
Die Ballerkennung ermittelt die Ballposition auf dem Spielfeld mit Hilfe von zwei [[Hardware#Ballerkennung|Kameras]]. Die Position des Balls wird hundert mal pro Sekunde berechnet, mittels einer Visualisierung am Bildschirm dargestellt und für weitere Programme per UDP-Server zur Verfügung gestellt.


[[Datei:Screen_Ballerkennung.png|thumb|none|300px|Visualisierung der Ballerkennung]]
[[Datei:Screen_Ballerkennung.png|thumb|none|300px|Visualisierung der Ballerkennung]]
Zeile 24: Zeile 24:
Die Spielsteuerung, ist das Programm, welches die Spielzüge bestimmt. Sie berechnet, mit Hilfe der Ball- und Spielstangenpositionen, welche Bewegungen als nächstes auszuführen sind. Sie stellt also die künstliche Intelligenz dar.
Die Spielsteuerung, ist das Programm, welches die Spielzüge bestimmt. Sie berechnet, mit Hilfe der Ball- und Spielstangenpositionen, welche Bewegungen als nächstes auszuführen sind. Sie stellt also die künstliche Intelligenz dar.


[[Datei:Screen_Spielsteuerung.png|thumb|none|300px|Visualisierung der Spielsteuerung<br />(wurde mittlerweile in ein eigenes Programm ausgelagert)]]
[[Datei:Screen_Spielsteuerung.png|thumb|none|300px|Visualisierung der Spielsteuerung]]

== Highscore-Liste ==

Die Highscore-Liste erlaubt es eine Rangliste der Partien zu führen, Eigenschaften sind:
* Automatische Sortierung nach Spielstand und Zeit
* Automatischer Abruf des Spielstandes von der SPS
* Automatisches Anhalten der Zeit wenn der Ball außerhalb des Spielfeldes ist
* Abspeichern in eine Datei im csv-Format (geeignet für Tabellenkalkulation)

[[Datei:Highscore_Screen.png|thumb|none|300px|Grafische Oberfläche der Highscore-Liste]]

Aktuelle Version vom 2. Oktober 2013, 13:42 Uhr

HomeNewsHardwareSoftwareBilderÜber uns

Um den Kicker zu betreiben, sind drei grundlegende Software-Komponenten nötig. Die SPS (TwinCAT), die Ballerkennung und die Spielsteuerung. Um den Zugriff auf die SPS, für die anderen Programme zu vereinfachen, gibt es eine SPSchnittstelle.

TwinCAT

TwinCAT ist eine Software-SPS der Firma Beckhoff Automation. Sie bietet sowohl die Funktionalität einer SPS, sowie einer numerischen Bahnregelung (NC), zur Regelung der Elektromotoren. TwinCAT läuft unter Windows XP und erweitert dieses um eine echtzeitfähige Laufzeitumgebung. Es wird TwinCAT NC PTP (Numerical Control, Point-To-Point) in der Version 2.10.0 verwendet. Als Schnittstelle zur SPS, steht ADS zur Verfügung.

Visualisierung von TwinCAT

SPSchnittstelle

Um den Zugriff auf die SPS zu vereinfachen, wurde eine SPSchnittstelle programmiert. Sie übersetzt die ADS-Schnittstelle und stellt ein UDP-Server dar, um eine einheitliche Interprozesskommunikation im Projekt zu gewährleisten.

Ballerkennung

Die Ballerkennung ermittelt die Ballposition auf dem Spielfeld mit Hilfe von zwei Kameras. Die Position des Balls wird hundert mal pro Sekunde berechnet, mittels einer Visualisierung am Bildschirm dargestellt und für weitere Programme per UDP-Server zur Verfügung gestellt.

Visualisierung der Ballerkennung

Spielsteuerung

Die Spielsteuerung, ist das Programm, welches die Spielzüge bestimmt. Sie berechnet, mit Hilfe der Ball- und Spielstangenpositionen, welche Bewegungen als nächstes auszuführen sind. Sie stellt also die künstliche Intelligenz dar.

Visualisierung der Spielsteuerung

Highscore-Liste

Die Highscore-Liste erlaubt es eine Rangliste der Partien zu führen, Eigenschaften sind:

  • Automatische Sortierung nach Spielstand und Zeit
  • Automatischer Abruf des Spielstandes von der SPS
  • Automatisches Anhalten der Zeit wenn der Ball außerhalb des Spielfeldes ist
  • Abspeichern in eine Datei im csv-Format (geeignet für Tabellenkalkulation)
Grafische Oberfläche der Highscore-Liste