LabVIEWForum.de
Modbus Libary benutzen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: Modbus Libary benutzen (/Thread-Modbus-Libary-benutzen)

Seiten: 1 2


Modbus Libary benutzen - p4tti - 25.08.2016 10:09

Hi,

ich habe das Problem das ich die Modbus-Libary nicht klar komme. Ich habe auch schon die anderen Beiträge zu diesem Forum gelesen und komme leider nicht weiter. Bahn

Ich habe einen Leistungssteller (Jumo TYA 201) über einen USB Konverter über die RS 485 Schnittstelle an den PC angeschlossen und die Verbindung steht.

Mir würde schon ein Beispiel reichen, wo ich von meinem Leistungssteller die Netzspannung in Labview auslesen kann.

Gruß
Patrick


RE: Modbus Libary benutzen - jg - 25.08.2016 10:14

Welche Modbus-Library? Es gibt inzwischen so viele Implementationen, angefangen von der "alten" guten MODBUS Lib 1.2.1 bis zur aktuellen Implementation, die im DSC- und/oder RT-Toolkit enthalten ist.

Gruß, Jens


RE: Modbus Libary benutzen - p4tti - 25.08.2016 12:23

Ich habe die ni_lib_modbus_libary-1.1.5.39 eingebunden.

Gruß
Patrick


RE: Modbus Libary benutzen - jg - 25.08.2016 13:12

OK, die habe ich gerade nicht auf meinem System installiert. Aber auch dort sollte es ein VI geben, mit dem du entweder Input oder Holding Register lesen kannst. Um die Netzspannung abzufragen, musst du ab Adresse 76 zwei Register abfragen, die beiden Register dann tauschen und in dein Float typecasten, ungefähr so:

[attachment=56505]

Das setzt natürlich voraus, dass du die serielle Verbindung korrekt geöffnet hast im Modbus RTU Modus.

Gruß, Jens


RE: Modbus Libary benutzen - p4tti - 25.08.2016 13:32

Hallo Jens,

danke für deine schnellen Antwortet, ich habe leider immernoch einen Fehler:

[attachment=56506]

Habe schon versucht etwas über den Error zu finden, aber leider ohne Erfolg.

Gruß
Patrick


RE: Modbus Libary benutzen - jg - 25.08.2016 14:12

Ich gehe schwer davon aus, dass Error-Code 56 bei dieser API dasselbe bedeutet wie bei TPC/IP, das Gerät hat dir einfach nicht geantwortet.

Das kann jetzt alle möglichen Ursachen haben, mir fällt da u.a. ein:
- COM-Parameter (Baud-Rate, Parity) stimmen nicht
- Geräte-ID stimmt nicht, laut JUMO-Doku könntest du ID 255 probieren, dann sollte das Gerät antworten.
- RS-485 falsch angeschlossen
- RS-485 Terminierung aktiviert? Wobei das erst bei längeren Leitungen relevant wird

Gruß, Jens


RE: Modbus Libary benutzen - p4tti - 25.08.2016 14:16

Hallo Jens,

ich bekomme die Verbindung hergestellt und mit dem Programm von Jumo kann ich lesen und schreiben. Daher müsste die Schnittstelle ja funktionieren. Die Baudrate, den COM-Anschluss und die Parity stimmen auch überein.
Der Error escheint bei dem Versuch die Register auszulesen.

Hast du evtl. noch keine andere Idee?

Grüße und danke nochmal für deine Hilfe
Patrick


RE: Modbus Libary benutzen - jg - 25.08.2016 14:51

Das Programm von JUMO läuft aber nicht während deiner LabVIEW-Versuche?

Ansonsten:
- Holding anstatt Input-Register lesen?
- Wie schon geschrieben: Stimmt auch die Geräte-ID? Alternativ ID 255?
- Eine andere API testen, entweder die alte von mir verlinkte API (besser debugbar) oder die von Plasmionique (Open Source!)

Gruß, Jens


RE: Modbus Libary benutzen - p4tti - 26.08.2016 09:44

Hallo,

mit der andern API, habe die von Plasmionique installiert, funktioniert die Kommunikation.

Jetzt habe ich bestimmt noch einen Denkfehler, da ich eine falsche Ausgabe habe:

[attachment=56509]

Die Adresse "4C" steht für die Netzspannung, diese sollte dann um die 230V betragen.

Gruß
Patrick


RE: Modbus Libary benutzen - GerdW - 26.08.2016 09:55

Hallo Patrick,

da ist ein fetter roter CoercionDot an deinem Indicator - der hat einen Grund: sehr wahrscheinlich hat die Konstante am Typecast nicht den korrekten Datentyp…