CODESYS - das IEC 61131-3 Programmiersystem

Willkommen im offiziellen CODESYS - Forum von 3S-Smart Software Solutions | A member of the CODESYS Group
Deutsche Version English version russian version 
Aktuelle Zeit: Mo Sep 16, 2019 12:59 am

Alle Zeiten sind UTC




Ein neues Thema erstellen  Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: wann kommt ein Enocean-Telegramm ??
BeitragVerfasst: Mo Sep 05, 2011 6:24 pm 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo,
mit einer Wago 841-750 und der Enocean-Klemme möchte ich die Telegramme von 3 Solar-Temperatursensoren auswerten.
Das funktioniert - im großen und Ganzen. Die Sensoren sollen alle 100s ein Telegramm schicken. So komisch das klingt: meistens(!) machen sie das. Ich traue der Mimik nicht ganz und will wissen, ob die Sensoren Telegramme schicken und die Temp. zufällig gleich geblieben ist oder ob die Telegramme ausbleiben und ich nur die Temp. von vor 4h vorgegaukelt bekomme. Die Funktionsbausteine halten die Temp. dank einer OUT-Variable. :shock:

Hat jemand schon mal herausbekommen, mit welcher Flanke, welchem Ergebnis-Bit oder was weiß ich die Ankunft eines neuen Telegrammes definitiv erkannt werden kann und man damit die Zeitabstände zwischen den Telegrammen erkennen kann.

Den Timeout-Fehler zu nutzen hilft mir nichts, da weiss ich bloß das z.B. nach 5 Minuten kein Telegramm gekommen ist, aber nicht wann nun wieder eins kommt. Ich glaube evtl. in typEnocean wird so ein Empfangsbit rumschwirren, nur eben welches.

Ich habe ein Array gefüllt und kann damit die Zeitabstände ermitteln. Hier im Bild hats gerademal funktioniert.

Dateianhang:
Codesys_Enocean_1.jpg
Codesys_Enocean_1.jpg [ 22.55 KiB | 2462 mal betrachtet ]



Ich habe da aber auch schon 2h und mehr Abstand gehabt.
Programmiert ist das Ganze so:
Dateianhang:
Codesys_Enocean_2.jpg
Codesys_Enocean_2.jpg [ 76.97 KiB | 2462 mal betrachtet ]


Vielen Dank ...

_________________
Vielen Dank
grauerwolf


Nach oben
   
BeitragVerfasst: Mi Sep 14, 2011 9:13 am 
Offline
Benutzeravatar

Registriert: Do Jul 07, 2011 7:55 am
Beiträge: 19
Wohnort: Hansastr. 27 - 32423 Minden
Hallo grauerwolf,

das, was Du suchst, ist leider nicht im Baustein bzw. in der Typstruktur enthalten. Zwar ist es denkbar für jede ID, die per EnOcean angekoppelt ist, so einen Timestamp mitzuliefern, ist aber bislang noch keine Anforderung gewesen.
Du erfasst ja jetzt schon die Zeiten. Kannst Du nicht bei Überschreiten Deiner 100s diese Werte als ungültig erklären und das Handling an eine dementsprechende Fehlerbehandlungsroutine übergeben (z.B. Füllen mit Standardwerten, Auswertung ausblenden etc.)?

Bei weiteren Fragen kannst Du uns auch gerne unter den unten genannten Adressdaten direkt kontaktieren.

_________________
Ihr/Euer

WAGO Support Team
WAGO Kontakttechnik GmbH & Co. KG
http://www.wago.com
mailto:support@wago.com
phone: +49 (0) 571 887 - 555


Nach oben
   
BeitragVerfasst: Mi Sep 14, 2011 2:50 pm 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo liebes Wago-Support-Team,
der Timestamp muss aus meiner Sicht nicht mitgeliefert werden, wenn denn nur eine Flanke sagen würde: Jetzt ist ein Telegramm angekommen. Ich habe mit den Toggle-Bits experimentiert (in typEnocean), kann aber deren Funktionsweise nicht sauber nachvollziehen. Vielleicht gibt's da noch ne Möglichkeit...
Irgendwie basiert das ganze Telegrammspiel doch auf RS232-Basis. Da gibts doch auch klare Empfangssignale oder ??
Viele Grüße
grauerwolf

_________________
Vielen Dank

grauerwolf


Nach oben
   
BeitragVerfasst: Do Sep 15, 2011 2:43 pm 
Offline
Benutzeravatar

Registriert: Do Jul 07, 2011 7:55 am
Beiträge: 19
Wohnort: Hansastr. 27 - 32423 Minden
Hallo grauerwolf,

wir haben einmal versucht Dir ein Beispiel zu erstellen, dass Deiner Anforderung nachkommt. Schaue es Dir doch einfach einmal an.

Bei weiteren Fragen kannst Du uns auch gerne unter den unten genannten Adressdaten direkt kontaktieren.


Dateianhänge:
Beispiel_Update.pro [56.5 KiB]
106-mal heruntergeladen

_________________
Ihr/Euer

WAGO Support Team
WAGO Kontakttechnik GmbH & Co. KG
http://www.wago.com
mailto:support@wago.com
phone: +49 (0) 571 887 - 555
Nach oben
   
BeitragVerfasst: Mo Sep 19, 2011 6:13 pm 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo liebes Wago-Support-Team,
:D Das Beispiel scheint alle meine Anforderungen zu erfüllen. Mit dem Toggelbit und dem OldMsgToggelbit hatte ich auch rumgeübt aber nicht die wohl entscheidende Instanzenbildung pro Sensor gemacht. 3 verschiedene OldMsgToggelbit's definiert und es hätte wohl auch funktioniert. Aber draufkommen muß man erst mal.

Ich habe jetzt eine Testumgebung laufen, wollen wir mal sehen, wie das alles so klappt.

Vielen Dank für die Hilfe.

MfG
grauerwolf

_________________
Vielen Dank

grauerwolf


Nach oben
   
BeitragVerfasst: Di Sep 20, 2011 5:38 pm 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo,
melde mich nochmal mit den Ergebnissen. Funktionierts? - im Prinzip ja, aber ...
Es ist vielleicht pingelig, aber irgendwo gehen Telegramme verloren. Das Toggelbit hat 1703 mal gewechselt, aber echt erkannt wurden nur 1684.

Die verlorenen Telegramme spielen bei der Temperaturerfassung vielleicht wirklich nicht die große Rolle. Aber bei Schaltvorgängen (Tastern) sollte man schon sicher sein, daß was ankommt - oder aber das ein Telegramm erkannt wurde, jedoch fehlerhaft verarbeitet. Letzteres ist, glaube ich, das Wahrscheinlichste.
Es gibt da eine Besonderheit: Im Normalfall ist toggelbit FALSE, wird bei Erkennen des Telegramms TRUE und am Ende wieder FALSE. Bei normaler Betrachtung dürfte es für den Beobachter also nie TRUE werden (höchstens mal kurzzeitig). Nun kann man im Screenshot erkennen, das es TRUE ist (war die ganze Zeit so, nicht nur mal ein Supershot !).

Ich glaube die 21 "verlorenen" Telegramme sind genau das. Der Telegrammverkehr wird gestartet, toggelbit geht auf TRUE, aber das Telegramm wird nicht beendet bzw. fehlerhaft. Nun bleibt das Toggelbit auf TRUE.

Vielleicht kann der gute Wago-Support nochmal behilflich sein und das bestätigen oder anderweitig aufklären. Denn da alles über eine Pipeline hereinkommt, kann ich den Fehlerfall über eine Zeitüberwachung ( z.B.das toggelbit muss nach 200ms oder sowas wieder zurückschalten) nicht erkennen, es kann ja z.B. nach 150ms schon ein anderer Sensor das toggelbit wieder beeinflussen.

Ziemlich kompliziert das Ganze...

Viele Grüße
grauerwolf


Dateianhänge:
Codesys_Enocean_3.jpg
Codesys_Enocean_3.jpg [ 126.61 KiB | 2395 mal betrachtet ]

_________________
Vielen Dank

grauerwolf
Nach oben
   
BeitragVerfasst: Do Sep 22, 2011 8:58 am 
Offline
Benutzeravatar

Registriert: Do Jul 07, 2011 7:55 am
Beiträge: 19
Wohnort: Hansastr. 27 - 32423 Minden
Hallo,

nicht alles Annahmen, die Du hier getroffen hast, sind zwingend richtig.
Der Status des Toggelbits ist abhängig von den internen Vorgängen im Baustein bzw. in der Klemme. So kann dieser auch durch innere Betriebszustände der Klemme den Zustand wechseln. Daher ist die Anzahl der Wertwechsel der Variable unter bestimmten Rahmenbedingungen stets höher als die Anzahl der zugeordneten Telegramme. Diese beschreibt nämlich nur die Anzahl erkannter, vollständiger und richtiger Telegramme. Telegramme von nicht ausgewerteten Sensoren werden z.B. auch empfangen, dann aber verworfen. Auch korrupte Telegramme werden verworfen.
Der Baustein inkrementiert den Zählwert nur dann, wenn auch die ID des Sensors im Empfangsbuffer steht. Und das ist ja das Entscheidende, oder?

Ansonsten freut es uns, dass Du mit Deiner Lösung ein Stück weitergekommen bist.

Und weiterhin gilt: Bei weiteren Fragen kannst Du uns auch gerne unter den unten genannten Adressdaten direkt kontaktieren.

_________________
Ihr/Euer

WAGO Support Team
WAGO Kontakttechnik GmbH & Co. KG
http://www.wago.com
mailto:support@wago.com
phone: +49 (0) 571 887 - 555


Nach oben
   
BeitragVerfasst: Do Sep 22, 2011 9:15 am 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo an den wago-Support,
ich werde mich gerne mal direkt an Euch wenden, nur weiß ich ja, daß man in der zentralen Annahme ankommt und dann hätte ich vielleicht eine Ansprechperson oder ein Codewort oder was weiss ich, um Bezug auf diese Forums-Beiträge nehmen zu können. Falls ein ganz andrer Bearbeiter ran geht, dann ist es doch für beide Seiten umständlich, erst alles von vorn aufarbeiten zu müssen.

Grüße
grauerwolf

_________________
Vielen Dank

grauerwolf


Nach oben
   
BeitragVerfasst: Do Sep 22, 2011 9:36 am 
Offline
Benutzeravatar

Registriert: Do Jul 07, 2011 7:55 am
Beiträge: 19
Wohnort: Hansastr. 27 - 32423 Minden
Hallo,

melde Dich doch einfach unter Deinem Nickname "grauerwolf" oder mit dem Thema "EnOcean", wir wissen uns und Dir dann schon zu helfen:-)

_________________
Ihr/Euer

WAGO Support Team
WAGO Kontakttechnik GmbH & Co. KG
http://www.wago.com
mailto:support@wago.com
phone: +49 (0) 571 887 - 555


Nach oben
   
BeitragVerfasst: Mi Apr 16, 2014 11:16 am 
Offline

Registriert: Mo Aug 14, 2006 10:19 am
Beiträge: 60
Hallo zusammen,
nach geraumer Zeit und der nächsten generation der EnOcean-Lib von Wago komme ich immer noch nicht so richtig auf eine "richtige" Flanke, wenn denn ein neues Telegramm von einem EnOcean - Sensor angekommen ist.
Der weiter oben beschriebene Baustein "FbEnocean_Update" im Beispielprogramm, scheint's nicht mehr so richtig zu tun.
Ich habe nun mal mit dem den Programmen innewohnenden Timeout-Funktionen experimentiert und es sieht so aus , das das eher dies ist, was ich wünsche.
Das Testprogramm sieht so aus:
[attachment=1]Test_Telegramm_flanke_1.jpg[/attachment]

Und wenn das Programm losläuft, erkennt man die unterschiedlichen Zählerstände.
[attachment=0]Test_Telegramm_flanke_2.jpg[/attachment]

Vielleicht hilfts weiter, wer auch immer ankommende Enocean-Telegramme erkennen will...


Dateianhänge:
Test_Telegramm_flanke_2.jpg
Test_Telegramm_flanke_2.jpg [ 307.67 KiB | 2342 mal betrachtet ]
Test_Telegramm_flanke_1.jpg
Test_Telegramm_flanke_1.jpg [ 399.37 KiB | 2342 mal betrachtet ]

_________________
Vielen Dank

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

Alle Zeiten sind UTC


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de