Aktuelle Zeit: 27.05.2017 02:53:59

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Python Server für ZusiDisplay
BeitragVerfasst: 14.05.2017 19:02:59 
Offline

Registriert: 14.05.2017
Beiträge: 6
Liebe Community,

erstmal vielen Dank für die Aufnahme!

Zu meinem Anliegen:
Ich würde gern ZusiDisplay mit einem Python-Skript ansteuern, d.h. ich möchte Daten wie z.B. die aktuelle Uhrzeit und Geschwindigkeit per TCP an ZusiDisplay senden. Allerdings habe ich nicht so ganz verstanden wie die Daten aufgebaut sein müssen, damit ZusiDisplay sie versteht.
Kann mir da jemand konkret helfen?

Grüße
Sven


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Python Server für ZusiDisplay
BeitragVerfasst: 14.05.2017 19:50:15 
Offline
Benutzeravatar

Alter: 35
Registriert: 23.03.2004
Beiträge: 3180
Wohnort: Berlin
Aktuelle Projekte: http://www.zusidisplay.de
Hallo Sven,

im Zusi3-Handbuch im Kapitel 11.3 (ab Seite 652) wird das genutzte Protokoll beschrieben.

Viele Grüße
Jens


Nach oben
 Profil Website besuchen  
 
 Betreff des Beitrags: Re: Python Server für ZusiDisplay
BeitragVerfasst: 14.05.2017 20:02:50 
Offline

Registriert: 01.06.2015
Beiträge: 38
Wohnort: Berliner Ringbahn
Das Datenformat ist kein Geheimnis. Die Zusi 3 Dokumentation beschreibt das TCP-Protokoll und hat detaillierte Beispiele. Darüber hinaus können Sie mit dem Programm "TCPDemoOutput" genau die Daten sehen, die Zusi überträgt.

Allerdings, ist das Datum und die Zeit ein bisschen komisch. Ich berechne es auf C++ so:
Code:
//Digital Time
time_t epoch = time(NULL);
struct tm buf;
localtime_s(&buf, &epoch);
data = new zusi::FloatFsDataItem(zusi::Fs_UhrzeitDigital(0x23), (buf.tm_hour * 3600 + buf.tm_min * 60 + buf.tm_sec) * (1.0f / 86400));

//Date
int daysSinceEpoch = static_cast<int>((epoch / (60 * 60 * 24)) + 25569);
data = new zusi::FloatFsDataItem(zusi::Fs_Datum(0x4B), static_cast<float>(daysSinceEpoch));

Leider ist die Arbeit mit binären Protokollen nicht so einfach in Python wie in C/C++.


Zuletzt geändert von jonathanp am 14.05.2017 20:27:28, insgesamt 1-mal geändert.

Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Python Server für ZusiDisplay
BeitragVerfasst: 14.05.2017 20:19:00 
Offline

Registriert: 14.05.2017
Beiträge: 6
Hallo Jens,

ich habe leider nur Zusidisplay und den TCP-Server zur Hand, da ich das ganze mit dem Trainsimulator verarbeiten möchte.

Viele Grüße
Sven


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Python Server für ZusiDisplay
BeitragVerfasst: 17.05.2017 16:18:46 
Offline

Registriert: 14.05.2017
Beiträge: 6
Hi Jens,

ich hab mich mal durch die TCP Doku von Zusi2 durchgewühlt und habe den Aufbau der Daten gefunden.
Vielen Dank für den Hinweis!


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Python Server für ZusiDisplay
BeitragVerfasst: 17.05.2017 17:48:56 
Offline
Benutzeravatar

Registriert: 24.10.2011
Beiträge: 1524
Im Grundsatz findest du in den verschiedenen Zweigen von https://github.com/FSchn/ZusiTCP.NET/tr ... asterTest1 auch Zusi-TCP-Master (für .Net), die du vielleicht auf deine Programmiersprache übertragen könntest. (Oder gibt es vielleicht sogar etwas, mit dem man .Net aus Python nutzen kann?)

Einen ähnlichen Fall gab es auch schon mal hier: viewtopic.php?f=53&t=12087 Der dürfte aber keine so ideale Vorgehensweise sein, wenn es auch anderst geht.

_________________
Diese Signatur möchte folgendes bekannter machen: ZusiWiki: Führerstände · ZusiWiki: Fahrzeugprojekte · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat


Zuletzt geändert von F. Schn. am 17.05.2017 17:49:16, insgesamt 1-mal geändert.

Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.010s | 16 Queries | GZIP : Off ]