ILC 350 PN - Klemme RS485/422 Pro - Eltako Wettersensor MS

Vaninger

Level-2
Beiträge
160
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebes Forum,

nachdem mir gestern schon so schnell und gut geholfen wurde, hier meine nächste Frage. Ich habe einen Eltako Wettersensor Typ MS, der über RS485 einige Wetterdaten wie Temperatur, Licht, Windrichtung usw. ausgibt. Diesen möchte ich mit meiner ILC 350 PN und der dazugehörigen Klemme IB IL RS485/422-PRO auslesen, hier gibt es ja auch von Phoenix Contact die passende Bibliothek COM_Serial_1.14 dazu.

Leider ist die Dokumentation bei Phoenix immer etwas unverständlich (zumindest für mich), weshalb ich hier immer meine Probleme habe.

Deshalb meine Frage, welche Bausteine ich hier verwenden müsste? Die Bibliothek hat sehr viele verschiedene Bausteine, welcher genau jetzt verwendet werden muss, wird aber leider nicht klar...

Folgend noch das Übertragungsprotokoll, die Eltako ist mit der Elsner baugleich, lediglich der GPS Empfänger fehlt...

http://www.elsner-elektronik.de/uploads/tx_bmproducts/P033-RS485-GPS_Datenblatt_23Aug12.pdf

Technische Daten für Übertragung:

Übertragungsrate: 19200 Baud

Datenbits: 8

Stoppbit: 1
Parität: keine


Falls hier schon einmal jemand was mit dieser Klemme gemacht hat, wäre ich um eine Antwort sehr froh.

Danke und schöne Grüße
Daniel
 
Hallo Daniel,

um eine Kommunikation zu dem Modul herzustellen, musst du den IL_RS485P_TRANSPAR 1.00 nutzen. An diesem Baustein gibst du die Baudrate, die Datenbits etc an.
Die Struktur, die als Ausgang an diesem Baustein genutzt wird, übergibt die Daten an den eigentlichen Kommunikationsbaustein.
Hier kannst du dann z.B. den IL_RS485P_513x4096 1.01 nutzen.

Gerne kannst du mich auch anrufen, wenn du weitere Fragen zu diesem Thema hast.

Mit freundlichen Grüßen
Ulrich Kleinschmidt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Ulrich,

vielen Dank für die ersten Hinweise, habe folgendes ausprobiert:

RS485.jpg

Leider nicht mit dem gewünschten Erfolg... Außerdem finde ich den von dir angesprochenen Baustein in meiner Bibliothek leider auch nicht.
Kurz noch eine andere Frage. Bei den anderen Klemmen muss ich doch immer die Ein- bzw. Ausgänge der Klemmen den Variablen zuweisen, ist das hier auch der Fall? Gibt es evtl. ein Beispielprojekt von Phoenix?

Danke für die Antwort und schöne Grüße

Daniel
 
Hallo Leute,

auch nach diversen anderen Versuchen, die Bausteine zum Laufen zu bringen, komme ich leider hier nicht weiter. Hat noch niemand sonst mit dem RS485 Baustein mal was gemacht?
Leider habe ich auch kein Beispiel gefunden, geschweige denn weiß ich, wie man die Klemme irgendeiner Variablen zuweist. Mit der von Ulrich vorgeschlagenen Lösung kommt immer der oben angezeigte Fehler...
Einer hierzu eine Idee?

Vielen Dank für eure Hinweise und Hilfe!

Grüße
Daniel
 
Hi Vaninger

hast du die Prozessdaten der Inlineklemme mit dem Baustein verbunden ?
was sagt der Diagnosecode aus ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Oerw,
Vielen Dank für deine Antwort. Habe die Klemme noch ich mit dem Baustein verbunden, was muss hier verbunden werden?
Danke und schöne Grüße.
Daniel

Gesendet von meinem GT-I9300 mit Tapatalk-4 now Free
 
Morgen,

ich klink mich auch mal ein. Du musst in der Prozessdatenzurodnung bei der Klemme bis zum Ende hinscrollen zu ~DI96 und ~DO96. Dort verbindest du arrInputAdress mit dem DI und arrOutputAdress mit dem DO. Und dann sollte es eigentlich laufen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mobi und Oerw,

vielen Dank für euren Support.
Habe jetzt die beiden Variablen verbunden, jetzt zeigt der Baustein schon mal xReady an und wenn ich kein True auf xSend oder xReceive gebe, bleibt das auch so.
Wenn ich jetzt aber ein True auf diese gebe, kommt leider eine error Warnung, siehe Bild im Anhang.

Fehlermeldung2.jpg

Wenn ich den bisherigen Aufbau richtig verstanden habe, hat der Eltako Wettersensor ja 8 Datenbits und ein Stoppbit, außerdem keine Parität. Somit dürfte ja mein Baustein IL...Transpar richtig parametriert sein, oder?

Weiterhin würde mich interessieren, wie denn die Inlineklemme kabelmäßig richtig angeschlossen ist. Ich habe derzeit die beiden Anschlusspunkte 2.1.1 und 2.1.2 angeschlossen. Ist dies richtig?

Vielen Dank für eure Hilfe

Schöne Grüße
Daniel
 
Hi

zur Belegung schau einfach mal ins Datenblatt der Klemme, hier ist auch ein Verschaltungbeispiel in Abhängigkeit davon wo die Klemme eingesetzt wird (am Anfang oder Mitte)

Wenn xReceive auf TRUE gesetzt wird, wird der Empfangsspeciher ausgelesen, dazu muss aber erst mal was empfangen werden.
Dager einfach mal den Sendespeicher entsprechend füllen, Länge angeben und anschließend xSend setzen.
Ob etwas gesendet oder empfangen wird kannst du an den LED´s (Tx oder Rx) sehen
 
So, kann zumindest schon einmal einen kleinen Teilerfolg melden, der Baustein funktioniert nun und gibt auch Werte aus, allerdings bin ich mir noch nicht sicher, ob mir diese etwas nützen.
Habe den Multisensor jetzt jeeils mit einem Kabel an 2.1.2 und 2.2.2 angeschlossen, somit leuchtet nun auch die RxD LED im Abstand von ca. 1 s auf, was ja auch mit dem Multisensor übereinstimmen würde...

Hier noch zwei Bilder der Ergebnisse:

Funktioniert.jpg

Watchdoc.jpg

Jemand ne Idee, wie ich diese Werte weiter verarbeiten muss, um ein paar passende Werte für Helligkeit, Temperatur, Regen, etc. zu bekommen? Ist der Anschluss an RxD eigentlich richtig oder müsste der Sensor an TxD angeschlossen werden?

Danke für die Hilfe und Antwort

Grüße
Daniel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also ich würde A an RxD+ und B an RxD- anschliessen. Dann an der Klemme jeweils die Brücken zu R+ und R- für den Abschlusswiderstand.
Dann zum darstellen der Daten, ich weiß ja nicht wie fit du in Programmierung bist, würde ich mir ein kleines Tool schreiben, welches die einzelen Bytes zu Ascii umwandelt und zusammensetzt. Die Bytes bekommste ja mit Hilfe der HTTP-Requests ;).
 
Hi Mobi,

danke für die Hilfe.
Habe es jetzt mal mit Hilfe der Oscat Bibliothek so probiert:

Test_Auswertung.jpg

Das erste Byte müsste die Windrichtung sein, dann kommt die Aussentemperatur, die restlichen muss ich jetzt noch mal überprüfen. Sollte aber so funktionieren, oder? Man kann dies dann ja schön in einen Baustein packen, der dann die Werte ausgibt...

Hast du mit der Visualisierung mit Portisch´s System (jQuery) weiter gemacht? Hast du hier zufällig einen Schieberegler verwendet, bekomm dies irgendwie nicht zum Funktionieren... :)

Schöne Grüße
Daniel
 
Hat es nach meinen Vorschlag funktioniert oder schon vorher, weil in dem anderen Screenshot hatte das Array andere Werte.
Und dafür brauchst du nicht die Oscat. Da reicht auch BYTE_TO_STRING mit dem Format '%c'.
Würde dir aber empfehlen, das ganze in ST zu schreiben, gerade bei den ganzen CONCAT's.

Ja ich bin bei jQuery immernoch bei. Bin zurzeit dabei das anstatt das vollständig in einem Browser zu machen, das ganzen in einer Anwendung zu machen. Weil das Problem ist ja, dass es u.a. bei Firefox nicht funktioniert mit den HTTP-Requests. Deswegen will ich es jetzt so machen. Als Oberfläche zwar die HTML-Seite wegen der jQuery-Optik, aber im Hintergrund ein cpp-Programm für die Kommunikation. Schieberegler hab ich schonmal gemacht, hat auch funktioniert, aber dann wieder verworfen, weil ich ihn nicht gebraucht habe.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mobi und Oerw,

vielen Dank für die Hilfe, Baustein läuft jetzt endlich. Habe den entsprechenden Baustein gestern noch programmiert, zeigt mir jetzt auch die Werte passend an.
Anbei noch zwei Bilder:
Baustein:
Eltako_MS.jpg

Bytes zur Auswertung gemäß BA:
RS485_Bytes.jpg

Sollte jemand den Baustein benötigen, gerne...

jQuery:
Das mit den Browsern ist echt lustig, bei mir funktioniert Firefox, Chrome, etc., nur der IE spinnt jetzt rum. Habe die Viulaisierung auf meinem Router im Webserver liegen, funktioniert zumindest schon mal. Obwohl ich auch erst noch genau durchblicken muss, welche Programmzeile was ausführt...

Schöne Grüße
Daniel
 
Hallo zusammen,

ist es wirklich so das der Eltako Multisensor über RS 485 angebunden kann. Hatte Eltako angefragt und mir wurde geschrieben das ich unbedingt die Auswerteelektronik von Eltako benötige. Allerdings sagen die auch das es ein Einkauf von Elsner Elektronik ist ?

Habt ihr alle schon erfolgreich die Daten über RS 485 ausgelesen ?

Benötigt man zusätzlich einen Abschlusswiderstand ?

Gruss Martin
 
Wieso wir alle? Nur Vaninger. Du siehst doch, dass es funktioniert auf dem Screenshot. Und klar empfiehlt Eltako das, die wollen ja was verkaufen und die Methode so wie es Vaniinger macht, kennen die ja auch nicht.

Wegen dem Widerstand siehe Beitrag von mir weiter oben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Maddin,

die Wetterstation in Verbindung mit dem Baustein funktioniert bei mir bis jetzt problemlos, allerdings noch nicht unter freiem Himmel installiert... Liegt noch neben der Steuerung im Zimmer.
Solltest du den Baustein benötigen, sag Bescheid, dann lade ich diesen mal hoch.
Habe bis jetzt noch keinen Widerstand angeklemmt, lediglich A an RxD+ und B an RxD-, so wie es Mobi vorgeschlagen hatte...

Schöne Grüße
Daniel
 
Hallo,

ich bin gerade dabei ein Gerät zur CO2-, Luftfeuchtigkeit- und Temperaturmessung über RS485 mit einer ILC 130 einzulesen.

Mein Problem ist nun die Daten auch wirklich zu empfangen, mein Baustein sagt zwar, dass er "Ready" ist, aber trotzdem hänge ich an dem Schritt, dass ich das "Sende-Array" füllen soll.

Mein Baustein sieht momentan so aus:
Baustein RS485.png

Kann mir jemand sagen, was ich in das Sende-Array schreiben muss, damit ich etwas gesendet bekomme? Das Format ist für mich auch komisch, die Arrays sind ja vom Typ COM_ARR_B_1_xxxx.


Außerdem frage ich mich momentan, wie ich die Adresse richtig einstelle. Ich habe in der Prozessdatenzuordnung bereits DI 96 und DO96 verbunden. Nun muss ich ja aber eigentlich irgendwo noch die Adresse meines Messwertgebers einstellen. Am Gerät selbst habe ich die 3 über DIP-Schalter gewählt. Auch hier stellt sich für mich die Frage nach dem Typ des Arrays (COM_ARR_B_1_12).

Schon jetzt vielen Dank! Falls meine Angaben so nicht reichen, lasst es mich bitte wissen!

Grüße
Kim
 
Zuletzt bearbeitet:
Hallo RDK,

wie ich dir auch schon in der Email von heute Morgen schrieb, hier noch einmal zur Vollständigkeit für Forum:

Mein Problem ist nun die Daten auch wirklich zu empfangen, mein Baustein sagt zwar, dass er "Ready" ist, aber trotzdem hänge ich an dem Schritt, dass ich das "Sende-Array" füllen soll.Kann mir jemand sagen, was ich in das Sende-Array schreiben muss, damit ich etwas gesendet bekomme? Das Format ist für mich auch komisch, die Arrays sind ja vom Typ COM_ARR_B_1_xxxx.

In dem Datenblatt von deinem Endgerät sollte stehen, was du genau an das Endgerät schicken musst, damit du Daten von diesem bereitgestellt bekommst. Der Typ COM_ARR_B_1_xxxx steht hier für ein Byte Array mit den Felder von 1 bis zu dem jeweils gewählten Bausteinmaximums. In deinem Fall 4096.

Außerdem frage ich mich momentan, wie ich die Adresse richtig einstelle. Ich habe in der Prozessdatenzuordnung bereits DI 96 und DO96 verbunden. Nun muss ich ja aber eigentlich irgendwo noch die Adresse meines Messwertgebers einstellen. Am Gerät selbst habe ich die 3 über DIP-Schalter gewählt. Auch hier stellt sich für mich die Frage nach dem Typ des Arrays (COM_ARR_B_1_12).

Auch hier kann ich leider nicht sagen, an welcher Stelle du in dein Array die Adressierung eintragen musst. Auch dies ist wiederum Hersteller bedingt, da du ja ein transparentes Protokoll gewählt hast. Anders wäre es zB, wenn dein Teilnehmer Modbus RTU sprechen würde.


Mit freundlichen Grüßen
Ulrich Kleinschmidt
 
Zurück
Oben