Rückkanal FS20-EAM von crazy-hardware programmieren
Moderator: Co-Administratoren
Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo,
"Wenn AktorXX=AktorXXAntwort
dann keinen weiteren Befehl senden"
Kann das als Makro geschrieben werden.
Der Aktor ( NUR HUTSCHIENENAKTOREN) soll den jeweiligen EIN oder AUS Befehl nur 1x gesendet bekommen.
Im Rückkanalempfänger - dieser wird gegen den Empfänger des Hutschienensystems getauscht werden die Zustandsbefehle
gespechert und alle 3 mIn über den Buss an den jeweiligen Aktor geschickt.
Desweitern bekommt der Aktor eine zweite Adresse für die Rückantwort.Z.B
AktorXX 1121 für den Befehl von der FHZ zum Hutschienensystem und
AktorXX 1122 für den Befehl Rückantwort vom Rückkanalempfänger zur FHZ.
Damit kann der tatsächliche Zustand des betreffenden Aktors visualisiert werden.
Ist es möglich die jetzt vergebenen Adressen zu wechseln oder muß dabei etwas beachtet werden.
Die Vorstellungen sind, daß ungerade Adessen von der FHZ und gerade Adressen zur FHZeingesetzt werden.
Danke MIchael
"Wenn AktorXX=AktorXXAntwort
dann keinen weiteren Befehl senden"
Kann das als Makro geschrieben werden.
Der Aktor ( NUR HUTSCHIENENAKTOREN) soll den jeweiligen EIN oder AUS Befehl nur 1x gesendet bekommen.
Im Rückkanalempfänger - dieser wird gegen den Empfänger des Hutschienensystems getauscht werden die Zustandsbefehle
gespechert und alle 3 mIn über den Buss an den jeweiligen Aktor geschickt.
Desweitern bekommt der Aktor eine zweite Adresse für die Rückantwort.Z.B
AktorXX 1121 für den Befehl von der FHZ zum Hutschienensystem und
AktorXX 1122 für den Befehl Rückantwort vom Rückkanalempfänger zur FHZ.
Damit kann der tatsächliche Zustand des betreffenden Aktors visualisiert werden.
Ist es möglich die jetzt vergebenen Adressen zu wechseln oder muß dabei etwas beachtet werden.
Die Vorstellungen sind, daß ungerade Adessen von der FHZ und gerade Adressen zur FHZeingesetzt werden.
Danke MIchael
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Michael
Welche Adresse du dem Aktor und dem Rückkanal gibst, spielt grundsätzlich keine Rolle. Der besseren Übersicht wegen ist es aber sicher eine gute Idee, gerade und ungerade Ziffern zu wählen.
Wenn du das Adress-System deiner Aktoren neu aufbauen willst, ist das natürlich möglich; bedingt aber ein neues Anlernen aller betroffenen Aktoren mit allen dabei möglichen Fehlerquellen. Ich schlage dir deshalb eher folgendes System vor:
1121 Aktor1 (unverändert)
1122 Aktor2 (unverändert)
2121 Aktor1IST
2122 Aktor2IST
Für den Rückkanal legst du in Homeputer ein Modul vom Typ "FS20 Sensor Standard-Sender" an. Dieses Objekt kannst du, musst du aber nicht, visualisieren. Benennen würde ich das Objekt mit dem gleichen Namen wie den Aktor und dem Zusatz IST.
"Makrotechnisch" wäre das Folgende eine saubere Lösung. Es funktioniert aber nur, wenn im betreffenden Aktor selbst jetzt noch KEIN Makro steht!
Über "Bezüge anzeigen" suchst du nach allen Makros, in welchen der betreffende Aktor geschaltet wird. In ALL diesen Makros setzst du vor allfällige SENDEWERT() an diesen Aktor zwei Sterne **. Damit werden diese SENDEWERT() nicht mehr ausgeführt.
Im Makro des Aktors aktivierst du nun "Ausführung bei Änderung", definierst eine Variable "Zaehler" vom Typ Zahl Startwert 0. Ferner brauchst du noch ein Objekt "Anzeige" vom Typ Zeichen, welches du in der nötigen Breite in deine Visualisierung aufnimmst.
Das Makro im Aktor (HeizungspumpeSolaranlage) lautet dann:
Zum Testen klickst du nun auf deine Pumpe. Es sollte keine Meldung erscheinen und im IOLog.txt sollte ein Signal an die Pumpe und eines vom Rückkanal eingetragen sein. Ist das erste Signal an die Pumpe vielleicht untergegangen, können es auch zwei oder drei sein. Vom Rückkanal darf aber nur ein Signal drin sein und nachher KEIN ausgehendes mehr an die Pumpe!
Nun trägst du in Homeputer beim Rückkanal (...IST) eine FALSCHE Adresse ein. Dann klickst du nochmals auf die Pumpe. Nach 6 Sekunden sollte in der Anzeige die Störungsmeldung mit Datum und Uhrzeit drin stehen. Im IOLog.txt hast du dann 6 Sendungen an die Pumpe (Schaltsignal + 5 Sendewert). Die Pumpe müsste natürlich trotzdem geschaltet haben - es fehlt nur das Rücksignal.
Wenn beide Tests erfolgreich bestanden sind, darfst du nicht vergessen, die Adresse des Rückkanals in Homeputer wieder richtigzustellen.
Es wäre schön, wenn du dieses Mal genau nach Anleitung arbeiten würdest. Und - wenn du davon abweichst - das auch kundtust. Und wenn etwas anders als erwartet abläuft, eine exakte (ausführliche) Fehlerbeschreibung lieferst - inkl. Protokollauszug der IOLog.txt.
Wie gesagt: Mein Vorschlag funktioniert nur richtig, wenn im Aktor selbst heute noch KEIN Makro steht. Sollten auch Aktoren mit eigenen Makros betroffen sein, musst du die hier einstellen, damit man die nötigen Änderungen/Ergänzungen richtig vornehmen kann. Vergiss nicht, auch Ausführungsintervall usw. anzugeben.
Viele Grüsse
Bümpi
PS: Ich habe mir noch erlaubt, den Titel des Threads etwas aussagekräftiger zu formulieren.
Welche Adresse du dem Aktor und dem Rückkanal gibst, spielt grundsätzlich keine Rolle. Der besseren Übersicht wegen ist es aber sicher eine gute Idee, gerade und ungerade Ziffern zu wählen.
Wenn du das Adress-System deiner Aktoren neu aufbauen willst, ist das natürlich möglich; bedingt aber ein neues Anlernen aller betroffenen Aktoren mit allen dabei möglichen Fehlerquellen. Ich schlage dir deshalb eher folgendes System vor:
1121 Aktor1 (unverändert)
1122 Aktor2 (unverändert)
2121 Aktor1IST
2122 Aktor2IST
Für den Rückkanal legst du in Homeputer ein Modul vom Typ "FS20 Sensor Standard-Sender" an. Dieses Objekt kannst du, musst du aber nicht, visualisieren. Benennen würde ich das Objekt mit dem gleichen Namen wie den Aktor und dem Zusatz IST.
"Makrotechnisch" wäre das Folgende eine saubere Lösung. Es funktioniert aber nur, wenn im betreffenden Aktor selbst jetzt noch KEIN Makro steht!
Über "Bezüge anzeigen" suchst du nach allen Makros, in welchen der betreffende Aktor geschaltet wird. In ALL diesen Makros setzst du vor allfällige SENDEWERT() an diesen Aktor zwei Sterne **. Damit werden diese SENDEWERT() nicht mehr ausgeführt.
Im Makro des Aktors aktivierst du nun "Ausführung bei Änderung", definierst eine Variable "Zaehler" vom Typ Zahl Startwert 0. Ferner brauchst du noch ein Objekt "Anzeige" vom Typ Zeichen, welches du in der nötigen Breite in deine Visualisierung aufnimmst.
Das Makro im Aktor (HeizungspumpeSolaranlage) lautet dann:
Code: Alles auswählen
Zaehler := 0
Nochmals:
warte("00:00:01")
wenn HeizungspumpeSolaranlage <> HeizungspumpeSolaranlageIST dann
wenn Zaehler >= 5 dann
Anzeige := Zeit + " Heizungspumpe Solaranlage reagiert nicht"
sonst
Sendewert(HeizungspumpeSolaranlage)
Zaehler := Zaehler + 1
gehezu Nochmals
endewenn
endewenn
Nun trägst du in Homeputer beim Rückkanal (...IST) eine FALSCHE Adresse ein. Dann klickst du nochmals auf die Pumpe. Nach 6 Sekunden sollte in der Anzeige die Störungsmeldung mit Datum und Uhrzeit drin stehen. Im IOLog.txt hast du dann 6 Sendungen an die Pumpe (Schaltsignal + 5 Sendewert). Die Pumpe müsste natürlich trotzdem geschaltet haben - es fehlt nur das Rücksignal.
Wenn beide Tests erfolgreich bestanden sind, darfst du nicht vergessen, die Adresse des Rückkanals in Homeputer wieder richtigzustellen.
Es wäre schön, wenn du dieses Mal genau nach Anleitung arbeiten würdest. Und - wenn du davon abweichst - das auch kundtust. Und wenn etwas anders als erwartet abläuft, eine exakte (ausführliche) Fehlerbeschreibung lieferst - inkl. Protokollauszug der IOLog.txt.
Wie gesagt: Mein Vorschlag funktioniert nur richtig, wenn im Aktor selbst heute noch KEIN Makro steht. Sollten auch Aktoren mit eigenen Makros betroffen sein, musst du die hier einstellen, damit man die nötigen Änderungen/Ergänzungen richtig vornehmen kann. Vergiss nicht, auch Ausführungsintervall usw. anzugeben.
Viele Grüsse
Bümpi
PS: Ich habe mir noch erlaubt, den Titel des Threads etwas aussagekräftiger zu formulieren.
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Bümpi,
Danke für Deine Ausführungen. Ich werde das mit Hansi besprechen. Mal sehe was er sagt.
Danke Michael
Danke für Deine Ausführungen. Ich werde das mit Hansi besprechen. Mal sehe was er sagt.
Danke Michael
-
- Beiträge: 18
- Registriert: 07.08.2007, 18:10
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Michael, Hallo buempi,
ja, so sind wir auf dem richtigen Weg. Schön ist, wenn sich die Rückantwortadresse berrechnen lässt, das kann natürlich Aktoradresse +xxx1 sein oder auch Aktoradresse +1xxxx .
Prima ist auch der Vorschlag/ das Beispiel von buempi, das die Anzahl der Sendeversuche begrenzt wird, das also wenn die Verteilung einen Stromausfall hat nicht unbegrenzt
versucht wird den Aktor zu schalten.
Ich habe selber kein homeputer auf meinem Rechner und kann deshalb nur begrenzt mithelfen, aber Anregungen und Tips sind ja auch viel Wert.
Zu Bedenken ist, dass der Empfänger nach dem Empfang der Daten erst die Daten auf das Hutschienensystem weitersendet und dann die Antwort
zurückschickt, während dieser beiden Zeiten kann in der aktuellen Firmwareversion kein weiteres Schaltsignal empfangen werden, d.h. zwischen
jedem Sendebefehl an den Rückkanalempfänger sollten 0,5 bis 1 Sekunde Verschnaufpause liegen, damit die Daten verarbeitet werden können.
Diese Pause zwischen den Sendebefehlen sollten im übrigen alle bedenken/einhalten die ein oder zwei Repeater in Ihrem System eingebunden
haben, sonst stöst der nächste Sendebefehl der FHZ mit dem Sendebefehl des Repeaters zusammen, im günstigstem Fall gewinnt der stärkere
Sender, im ungünstigsten Fall gehen dann beide Signale verloren.
Gruss Hansi
ja, so sind wir auf dem richtigen Weg. Schön ist, wenn sich die Rückantwortadresse berrechnen lässt, das kann natürlich Aktoradresse +xxx1 sein oder auch Aktoradresse +1xxxx .
Prima ist auch der Vorschlag/ das Beispiel von buempi, das die Anzahl der Sendeversuche begrenzt wird, das also wenn die Verteilung einen Stromausfall hat nicht unbegrenzt
versucht wird den Aktor zu schalten.
Ich habe selber kein homeputer auf meinem Rechner und kann deshalb nur begrenzt mithelfen, aber Anregungen und Tips sind ja auch viel Wert.
Zu Bedenken ist, dass der Empfänger nach dem Empfang der Daten erst die Daten auf das Hutschienensystem weitersendet und dann die Antwort
zurückschickt, während dieser beiden Zeiten kann in der aktuellen Firmwareversion kein weiteres Schaltsignal empfangen werden, d.h. zwischen
jedem Sendebefehl an den Rückkanalempfänger sollten 0,5 bis 1 Sekunde Verschnaufpause liegen, damit die Daten verarbeitet werden können.
Diese Pause zwischen den Sendebefehlen sollten im übrigen alle bedenken/einhalten die ein oder zwei Repeater in Ihrem System eingebunden
haben, sonst stöst der nächste Sendebefehl der FHZ mit dem Sendebefehl des Repeaters zusammen, im günstigstem Fall gewinnt der stärkere
Sender, im ungünstigsten Fall gehen dann beide Signale verloren.
Gruss Hansi
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Hansi
Danke für diesen Hinweis betreffend "Verschnaufpause"! - Um sicher zu gehen, würde ich dann empfehlen, bei meinem obigen Makro das WARTE() auf 2 Sekunden zu erhöhen! Das tut der Zuverlässigkeit keinen Abbruch und verhindert Überschneidungen.
Viele Grüsse
Bümpi
Danke für diesen Hinweis betreffend "Verschnaufpause"! - Um sicher zu gehen, würde ich dann empfehlen, bei meinem obigen Makro das WARTE() auf 2 Sekunden zu erhöhen! Das tut der Zuverlässigkeit keinen Abbruch und verhindert Überschneidungen.
Viele Grüsse
Bümpi
-
- Beiträge: 18
- Registriert: 07.08.2007, 18:10
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Micha,
ich weis zwar nicht was Du gerade machst, aber das Makro von duempi funktioniert erst nach dem Update des Rückkanalempfängers,
wenn er also nicht wie jetzt mit der gleichen Adresse zurücksendet sondern mit der geänderten Adresse.
Also erst mir die Adressen schicken, damit ich das Update fertig machen kann, dann die Makros ändern/testen!
Gruss Hansi
ich weis zwar nicht was Du gerade machst, aber das Makro von duempi funktioniert erst nach dem Update des Rückkanalempfängers,
wenn er also nicht wie jetzt mit der gleichen Adresse zurücksendet sondern mit der geänderten Adresse.
Also erst mir die Adressen schicken, damit ich das Update fertig machen kann, dann die Makros ändern/testen!
Gruss Hansi
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Hansi hallo Bümpi,
Im Moment bin ich dabei die jetzt laufenden Makros zu überprüfen. Dank Thomas seine Software geht das ganz gut. Ich gehe dabei alle Vorschläge von Dir durch und habe auch schon ein paar weitere Fehler gefunden. Diese ändere ich alle einzeln um zu sehen ob sich ein neuer Fehler zeigt. Bis jetzt läuft es ganz gut. Keine Störungen. Die Wahrheit kommt aber erst morgen früh. Starten die Pumpen oder muss ich sie wieder von Hand zuschalten. Erst wenn das alles OK ist werde ich mich an die Adressenänderung machen.
Dann melde ich mich wieder
Danke Michael
Im Moment bin ich dabei die jetzt laufenden Makros zu überprüfen. Dank Thomas seine Software geht das ganz gut. Ich gehe dabei alle Vorschläge von Dir durch und habe auch schon ein paar weitere Fehler gefunden. Diese ändere ich alle einzeln um zu sehen ob sich ein neuer Fehler zeigt. Bis jetzt läuft es ganz gut. Keine Störungen. Die Wahrheit kommt aber erst morgen früh. Starten die Pumpen oder muss ich sie wieder von Hand zuschalten. Erst wenn das alles OK ist werde ich mich an die Adressenänderung machen.
Dann melde ich mich wieder
Danke Michael
-
- Beiträge: 18
- Registriert: 07.08.2007, 18:10
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Michael,
Schreibe mal vor jedem Sendebefehl eien Pause von 1 Sekunde bzw. nach jedem Sendebefehl.
Und das natürlich in allen Makros die Du im System hast !!!!!
Du hast einen "Repeater" im Betrieb, d.h. weden in Deiner Steuerung 2 Pumpen direkt nacheinander angefunkt, dann geht das 2. Signal
mit grosser Wahrscheinlichkeit unter, da der Rückkanalempfänger ( "Repeater" ) zu dieser Zeit die Antwort zurück sendet !!!!!!!
Gruss Hansi
Schreibe mal vor jedem Sendebefehl eien Pause von 1 Sekunde bzw. nach jedem Sendebefehl.
Und das natürlich in allen Makros die Du im System hast !!!!!
Du hast einen "Repeater" im Betrieb, d.h. weden in Deiner Steuerung 2 Pumpen direkt nacheinander angefunkt, dann geht das 2. Signal
mit grosser Wahrscheinlichkeit unter, da der Rückkanalempfänger ( "Repeater" ) zu dieser Zeit die Antwort zurück sendet !!!!!!!
Gruss Hansi
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Hallo Hansi,
Ist das so:
warte("00:00:01")
Und das vor alle Pumpen und Ventile?
Danke Michael
Ist das so:
warte("00:00:01")
Und das vor alle Pumpen und Ventile?
Danke Michael
-
- Beiträge: 18
- Registriert: 07.08.2007, 18:10
Re: Rückkanal FS20-EAM von crazy-hardware programmieren
Da wir noch keine Adressen festgelegt haben auf die geantwortet wird ja!
Es muss jetzt aber einer von den Experten antworten, ob ein anderes Makro parallel laufend senden kann, oder ob die Makros nacheinander abgearbeitet werden.
Im letzten Fall wäre eine Variable "Funkstopp" nützlich die vor der Pause gesetzt und nach der Pause zurück gesetzt wird.
in Jedem Makro könnte dann daurauf gwartet werden das Funken erlaubt wird.
Wieviel Makros hast Du denn die Sendebefehle enthalten?
Gruss Hansi
Es muss jetzt aber einer von den Experten antworten, ob ein anderes Makro parallel laufend senden kann, oder ob die Makros nacheinander abgearbeitet werden.
Im letzten Fall wäre eine Variable "Funkstopp" nützlich die vor der Pause gesetzt und nach der Pause zurück gesetzt wird.
in Jedem Makro könnte dann daurauf gwartet werden das Funken erlaubt wird.
Wieviel Makros hast Du denn die Sendebefehle enthalten?
Gruss Hansi