Rueckmeldung

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Rueckmeldung

Beitrag von PetrOs » 26.03.2020, 10:58

Hallo,

Ist es irgendwie möglich oder geplant, eine Rückmeldefunktionalität anzubieten? Ich will nämlich auch Gleisbesetzmelder über gleiches ESP laufen lassen, und dann per WLAN die Zustände an Z21 zurückmelden, über LAN_LOCONET_FROM_LAN.

Wenn nicht - hast Du vielleicht ein Paar Tips, wo man im Code es am besten strukturiert und einbringt? Ich bin ja hauptberuflich Informatiker/Software Architekt, und würde es gerne richtig in Deinem Konzept es umsetzen, wenn es nicht da ist.

little.yoda
Site Admin
Beiträge: 516
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 13 Mal
Danksagung erhalten: 45 Mal

Re: Rueckmeldung

Beitrag von little.yoda » 26.03.2020, 12:39

Hi

angedacht definitiv ....

Ich hatte es mal in Verbindung mit einem Railcom angedacht, ich habe aber Railcom nicht nicht zu laufen gebracht bzw. es steht gerade nicht auf meiner Todo-Liste.

Um dir wirklich gut helfen zu können, fehlen mir ein paar Informationen.
Wie sieht die Schaltung für die Belegt-Erkennung aus, Ist ein Polling erforderlich, usw.

Mein Vorschlag, wie du es einbauen könntest, als Schnellschuß:
  • Implementiere deine Routinen als Klasse. Analog zu der Klasse ActionSendTurnoutCommand.
    Hier findest du in setSetting schon Anweisungen, die ein Befehl versenden
  • ggf. müsste die Klasse auch von ILoop erben, falls du Polling brauchst
  • In der Klasse Config müsstest du dann die Funktion ParseCfg erweitern. (man müsste
    (später schauen, ob ParseIn evtl. besser passt) [registerILoop ggf. nicht vergessen]
  • Die Klasse CmdSenderBase müsste um Funktionen für die Belegtmeldung erweitert werden
  • Zumindest in CmdReceiverZ21Wlan müssten dann die Funktionen zur Kommunikation mit der Z21 erweietert werden
  • Später könne man die rocrail Klasse erweitern.
Gruß,
Sven

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Rueckmeldung

Beitrag von PetrOs » 26.03.2020, 13:00

Super, Danke! Werde mich gleich daran stuerzen. Darf ich es auch in ein neues branch bei Deiner GIT einchecken?

Und ja, mein Eigenbau GBM sieht so aus dass der einfach X pins hat, die entweder true oder false sind. Also ist evtl noch ein input notwendig?

little.yoda
Site Admin
Beiträge: 516
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 13 Mal
Danksagung erhalten: 45 Mal

Re: Rueckmeldung

Beitrag von little.yoda » 26.03.2020, 15:57

Pin-Zugriffe habe ich gekapselt. Hierbei werden dann auch Portexpander unterstützt.

Code: Alles auswählen

Pin* g = new Pin(pin); // wobei pin dann "D2" oder was auch immer sein darf
GPIOobj.pinMode(g, INPUT_PULLUP, "beschreibung"); // auf Input stellen
pin->getPin() // Zustand abfragen
siehe auch ConnectorGPIO.cpp für die Basis-Funktionalität.

Git:
Forke das Projekt gerne und dann stell mir gerne ein Pull-Request ein.

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Rueckmeldung

Beitrag von PetrOs » 30.03.2020, 20:10

Kurz mal zu meinem Status - soeben erste Signale von neuem Typ "Sensor" von ESP8266 bei Rocrail gesehen. Noch habe ich ein Problem, dass die es dabei die Adressen "verdoppeln" (ich schicke eigentlich nach Spec Adresse 10 und 11, Rocrail meldet 20 und 22), aber es ist ein eher marginales Problem, dem ich morgen angehe.

Ich werde wohl auch Arduino Nano als ein weiteres Port Expander-Typ umsetzen. Ich brauche fuer meine Weichenstrasse sowie Servos als auch LED als auch Gleisbesetzmelder-Steuerung, und die vorhandenen Expander bei mir nicht da sind ;) Arduino Nano sind aber tonnenweise da ;)

little.yoda
Site Admin
Beiträge: 516
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 13 Mal
Danksagung erhalten: 45 Mal

Re: Rueckmeldung

Beitrag von little.yoda » 30.03.2020, 20:49

klingt gut.

Werden die Daten des ESP die z21 gesendet und Rocrail kommuniziert mit der z21?
Oder der ESP direkt mit Rocrail?
PetrOs hat geschrieben:
30.03.2020, 20:10
Ich werde wohl auch Arduino Nano als ein weiteres Port Expander-Typ umsetzen. Ich brauche fuer meine Weichenstrasse sowie Servos als auch LED als auch Gleisbesetzmelder-Steuerung, und die vorhandenen Expander bei mir nicht da sind ;) Arduino Nano sind aber tonnenweise da ;)
interessanter Ansatz.
Welchen Kommunikationsweg wirst du zwischen dem ESP und dem Nano wählen?

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Rueckmeldung

Beitrag von PetrOs » 30.03.2020, 21:03

Mittlerweile auch das Adressenproblem gelöst. Werde morgen den Code bereinigen und schauen, wie ich es bei Dir einsteuern kann.

Es wird über Z21 / LAN_LOCONET_FROM_LAN kommuniziert. In Rocrail ist es dann als "Z21, Bus 1, Addr. 10" sichtbar.

Für Arduino Nano/Uno/Mega/ProMini gibt es mindestens 2 Libraries, die es anbieten. Werde morgen schauen, welche da besser geeignet ist. Ich werde I2C nehmen, da ich mehrere solche Arduinos brauchen werde - je einer unter jedem Segment mit Weichen. Sogar bei einem Testsegment mit einer einzigen Weiche sind da 9 LEDs in Signalen, 1 Servo für die Weiche, 2 Gleisbesetzmeldersignale (oder 3 Servos + 3 LEDs bei Formsignalen). Was da unter einem großem Bahnhofskopf abgeht, braucht man eine Mega - und trotzdem nur 2 Leitungen, die unter gesamten Bahnhofsbereich verlaufen und eine einzige ESP die es steuert.

Ich baue ja meine Segmentbasierte Parkettbahn-Bahnhoefe. Die sollen mit normalem Bettungsgleis komplett verlegt werden, und bis auf DCC vom Gleis keine Kabel mehr brauchen - alles Wireless, da ich mit Kids fahren will und diese schauen nie auf den Boden. So ist sogar die Stromversorgung für Elektronik mit einem LiFePo4 Akku geplant. Mein Thema bei Stummiforum dazu: https://www.stummiforum.de/viewtopic.php?f=168&t=178152

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Rueckmeldung

Beitrag von PetrOs » 31.03.2020, 10:20

So, die Pull Request ist gesendet. ;) Jetzt - ran an den Arduino als Extender.

little.yoda
Site Admin
Beiträge: 516
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 13 Mal
Danksagung erhalten: 45 Mal

Re: Rueckmeldung

Beitrag von little.yoda » 03.04.2020, 21:56

Ich habe den ersten Teil von deinen Änderungen mit ein paar kleineren Änderungen [1] übernommen.

Was mich interessiert:
Werden die von deinem Rückmelde-Modul gesammelten Informationen eigentlich auch in der Z21-App angezeigt?



[1]
- Formatierung
- Defines entfernt
- Auskommentierte Zeilen entfernt

PetrOs
Beiträge: 13
Registriert: 26.03.2020, 10:45
Hat sich bedankt: 3 Mal
Danksagung erhalten: 1 Mal

Re: Rueckmeldung

Beitrag von PetrOs » 03.04.2020, 23:46

Hallo,

Danke! Ich habe es nicht probiert in der Z21 App es zu konfigurieren, für Gleisbild wird bei mir Rocrail ("Steuerkiste" mit Z21, RasPi, HDMI 10" Display, und Wireless Mini-Tastatur-Touchpad, oder per RemoteDesktop auf PC) genutzt, und Z21 App aktuell nur als drahtlose Lokmaus.. Muss mal gucken, wie ich da Gleisbesetzung machen kann.

Antworten