INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Serielles Gerät über Modbus RTU einbinden (mit VISA testen)



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

12.09.2014, 14:44 (Dieser Beitrag wurde zuletzt bearbeitet: 12.09.2014 15:03 von buettnerstefan.)
Beitrag #1

buettnerstefan Offline
CLAD
*


Beiträge: 23
Registriert seit: Sep 2014

2014
2014
DE_EN


Deutschland
Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
Hallo alle zusammen,

ich versuche einen Jumo TYA-201 Steller in LabView einzubinden. Der Steller besitzt einen RS485 Anschluss und ist über einen RS485-to-USB Converter an einen PC angeschlossen. Der Anschluss wird unter COM3 zur verfügung gestellt. Mit einem kleinen Testprogramm von Jumo habe ich die Verbindung von PC und Steller Testen können. Sowohl das auslesen als auch das schreiben von Daten funktioniert.
Aber in LabView geht leider garnix! Ahrg1 In dem MAX (Measurement&Automation Explorer) wird mir die Schnittstelle zwar angezeigt und als Device Status steht "This device is working properly" aber mit dem VISA Test Panel wird mir bei Read Status Byte der Fehler "(Hex 0xBFFF003A) Die Operation konnte nicht gestartet werden, da die Einstellungen ungültig sind" angezeigt. Und bei Read (egal was) kommt immmer "(Hex 0xBFFF0015) Zeitüberschreitung bevor der Vorgang abgeschlossen werden konnte. (Den Timeout habe ich schon hochgenommen)

Alternativ habe ich einen IO Server (Modbus) angelegt und diesen dann mit DSM getestet. Sobald man auf Prozess starten geht geht CommFail auf TRUE. Bei den Daten steht manchmal "(Unbekannte schlechte Qualität)" in der Spalte Wert.

Die Modbuseinstellung habe ich überall mehrfach überprüft:

Baudrate: 9600
Data Bit: 8
Stop Bits: 1
Parität: keine
Übertragungsart ist RTU

Hat jemand eine Idee was ich falsch mache oder noch eine andere Idee diese Schnittstelle einzubinden/ zu testen?
Ich bin für jeden Tipp dankbar.

Mit hoffnungsvollen Grüßen

Stefan Büttner


Angehängte Datei(en) Thumbnail(s)
                   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.09.2014, 15:15
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
Meine Empfehlung:
Lass das mit dem I/O Server.

Lad dir eine der beiden frei erhältlichen Modbus Bibliotheken herunter:
http://www.ni.com/example/29756/en/
https://decibel.ni.com/content/docs/DOC-30140

Hier hast du aus LabVIEW heraus die Kontrolle, wann du welche Register abfragen willst.

Und natürlich nicht gleichzeitig das Testprogramm von JUMO laufen lassen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.09.2014, 15:39
Beitrag #3

buettnerstefan Offline
CLAD
*


Beiträge: 23
Registriert seit: Sep 2014

2014
2014
DE_EN


Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
Vielen Dank für die schnelle Antwort!

Also macht es nichts wenn man mit VISA keine Verbindung bekommt bzw. eine Fehlermeldung bekommt? Kann es mit einem Selbstgebauten VI dann also trotzdem Funktionieren?! Huh

Die Modbus Bibliothek habe ich auch drauf, aber keine Ahnung diese zu benutzen... Wie kann ich dann z.B.: die Modbus Adresse 0x003A ansprechen und da einen Floating-Point Wert mit Auslesen? Mit dem Testprogramm sende ich die komplette Anweisung (beginnend mit Slaveadresse usw. was Labview ja selbermacht?!) z.B.: 0103003A0002

Ach ja, und das Testprogramm habe ich natürlich aus wenn ich mit Labview arbeite Wink

Hast du eventuell ein Beispielprogramm wo ich mir das mal anschauen kann?

Grüße
Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.09.2014, 16:39 (Dieser Beitrag wurde zuletzt bearbeitet: 12.09.2014 16:41 von jg.)
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)

Akzeptierte Lösung

Im ersten Download Link ist ein Beispiel-Programm dabei, der Modbus Serial Example Master...

Ein Bsp-Programm für deine Anfrage (Holding-Register 0x3A, 2 Stück zwecks Float) könnte so aussehen:

   

Gruß, Jens

EDIT: Und hier noch ein Link zu einem anderen JUMO-Modbus Thread: http://www.labviewforum.de/showthread.php?tid=24898

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.09.2014, 17:14
Beitrag #5

buettnerstefan Offline
CLAD
*


Beiträge: 23
Registriert seit: Sep 2014

2014
2014
DE_EN


Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
Super, vielen Dank!!

Ich baue es gerade genau so nach wie auf dem Bild und muss zu meiner Schande gestehen das ich gerade verzweifelt versuche so eine 0x3A Eingangsbox zu erstellen für die Adresse. Wo finde ich in der Bibliothek so einen Baustein bzw. wie kann ich aus einem Num Baustein sowas machen? Mit einfach 0x davor schreiben geht es nicht.... Und den (U16) Baustein am Ausgang habe ich auch nicht gefunden. Ohje es ist Freitag....

Grüße
Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.09.2014, 18:01
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
(12.09.2014 17:14 )buettnerstefan schrieb:  Super, vielen Dank!!

Ich baue es gerade genau so nach wie auf dem Bild und muss zu meiner Schande gestehen das ich gerade verzweifelt versuche so eine 0x3A Eingangsbox zu erstellen für die Adresse. Wo finde ich in der Bibliothek so einen Baustein bzw. wie kann ich aus einem Num Baustein sowas machen?
Mit einfach 0x davor schreiben geht es nicht....
Rechtsklick (ein gaaanz wichtige Sache bei LabVIEW Programmierung) auf Eingang am Read -> Create -> Constant. Dann Rechtsklick auf Konstante -> Visible -> Radix. Dann umstellen auf Hex Anzeige. Alternativ im Dezimalsystem 163 eintragen.
(12.09.2014 17:14 )buettnerstefan schrieb:  Und den (U16) Baustein am Ausgang habe ich auch nicht gefunden. Ohje es ist Freitag....
Das ist ein Array of U16 (erkennbar an der dicken Linie). Rechtsklick auf Ausgang -> Create -> Indicator.

Wenn dir solche Basics fehlen, dann solltest du dir die Links in GerdWs Signatur (s. meine Signatur) zu Gemüte führen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.09.2014, 15:39
Beitrag #7

buettnerstefan Offline
CLAD
*


Beiträge: 23
Registriert seit: Sep 2014

2014
2014
DE_EN


Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
EDIT: Und hier noch ein Link zu einem anderen JUMO-Modbus Thread: http://www.labviewforum.de/showthread.php?tid=24898
[/quote]

Unter diesem Link wurden meine letzten beiden Fragen ebenfalls beantwortet, und noch vieles vieles mehr was mein Thema hier betrifft. Sorry Jens, aber den Link habe ich zum Freitag Feierabend leider übersehen... Und auch die Links in GerdWs Signatur werden mir viel weiterhelfen! Vielen Dank für die Hilfe!!Dais

Morgen geht´s dann mit neuem Wissen und frischer Motivation wieder an den Jumo Box
Wenn dann (hoffentlich) alles läuft werde ich hier meine Lösung nochmal posten. Sollen ja alle was davon haben 2hands

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.09.2014, 09:19
Beitrag #8

buettnerstefan Offline
CLAD
*


Beiträge: 23
Registriert seit: Sep 2014

2014
2014
DE_EN


Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
So, das einlesen der Daten funktioniert nun!Big Grin

Nur habe ich immer noch ein Problem mit der Floating point Anzeige. Die Umwandlung habe ich, wie im Forum beschrieben eingebaut, aber der Wert stimmt immer noch nicht.
Ich lese hier von Adresse 0x4C den Wert der Netzspannung ein welcher auf dem Display des Jumo mit 230,085 angezeigt wird, mit dem Testprogramm von Jumo als 230,085 angezeigt wird, aber im LAbview in die millionen geht .... Irgendwie habe ich das Gefühl das es mit dem Gleitkomma noch nicht funktioniert Construction

Grüße
Stefan


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.09.2014, 09:26
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)

Akzeptierte Lösung

Der Datentyp, in den du Type-casten willst, stimmt nicht. Du musst 2 U16 als Float interpretieren, nicht als Double.

Lösung: Rechtsklick (wie schon mal erwähnt) auf die Konstante im BD -> Representation -> SGL.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.09.2014, 09:30
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Serielles Gerät über Modbus RTU einbinden (mit VISA testen)
Hallo Stefan,

komisch, funktioniert doch:
   
- Hi/Lo-Word richtig sortieren!
- korrekten Datentyp für das TypeCast einstellen!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Gerät wird im VI nicht mehr erkannt - Problem mit VISA? MissHeadcrusher 10 10.263 25.11.2019 00:14
Letzter Beitrag: rolfk
  Zwei Messungen mit zwei identischen Messgeräten über VISA hansi9990 7 6.628 21.10.2019 10:40
Letzter Beitrag: HVo
  Messgerät über Visa auslesen AAlp 10 9.457 07.05.2019 08:59
Letzter Beitrag: AAlp
  VISA über MAX geht, im VI nicht mehr buettnerstefan 7 6.774 29.06.2018 13:02
Letzter Beitrag: buettnerstefan
  VISA Gerät wird trotz Sichtbarkeit im MAX im Programm nicht erkannt hulk 4 7.369 19.08.2016 10:34
Letzter Beitrag: hulk
  RS 485 über VISA - Beschleunigung möglich? Riddler 6 7.597 11.11.2015 19:18
Letzter Beitrag: Lucki

Gehe zu: