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 

BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll



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!

15.08.2014, 12:11 (Dieser Beitrag wurde zuletzt bearbeitet: 15.08.2014 12:13 von Piranhaschaf.)
Beitrag #1

Piranhaschaf Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Aug 2014

12.0
2013
DE



Question BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Hallo,

ich bin der Luis und bin Student. Ich habe zur Zeit ein Projekt, bei dem ich mit Hilfe des BK9050 und zwei Klemmen einen Sortierer ansprechen soll, doch dazu eventuell später mehr. Im Moment bin ich noch beschäftigt damit, den Koppler selber anzusprechen. Ich verwende Labview 12.0 und ModbusTCP.

Aktuell habe ich das Problem, dass der Koppler mir keine Rückgabe gibt. Ich glaube, mein Eingabestring ist nicht korrekt. Daher habe ich ein paar Fragen.

Der Aufbau des ModbusTCP-Protokolls nach Handbuch von Beckhoff ist folgendermaßen (in der ersten Spalte das Byte, in der Zweiten der Name, in der dritten einen Erklärung)

0 |Transaction identifier | wird vom Slave zurückgesendet
1 |Transaction identifier |wird vom Slave zurückgesendet
2 |Protocol identifier |immer 0
3 |Protocol identifier |immer 0
4 |Length field |0 (wenn die Nachricht kleiner 256 Byte ist)
5 |Length field |Anzahl der folgenden Bytes
6 |UNIT identtifier |wird vom Slave zurückgegeben
7 |Modbus |es folgt das Modbus-Protokoll beginnend mit der Funktion

Als Eingangsstring ergibt sich nach meiner Ansicht daher ein String mit 8 Bytes in HEX:

00 00 00 00 00 00 FF + Byte für die Funktion (+ Daten).

Stimmt das?

Als eine Mögliche Funktion kann der Beckhoff 9050 die ersten zwei analogen Eingänge lesen. Dazu ist im Handbuch ein Beispiel gegeben. Die Anfrage lautet in diesem Beispiel, die ersetn zwei Register auszulesen:

Funktions-Code 4
Start-Adresse high 0
Start-Adresse low 0
Anzahl high 0
Anzahl low 2

Das bedeutet doch dann, dass mein Eingabestring folgendermaßen aussieht, wobei die letzten 4 Byte meine Daten sind:

00 00 00 00 00 00 FF 04 00 00 00 02

Stimm das?

Ebenfalls habe ich eine Frage zu dem Baustein TCP READ, speziell zu dem Parameter "Zu lesende Bytes". Dieser gibt an, wie viele Bytes die Rückgabe hat. Also wenn mein obiges Beispiel antwortet, dann habe ich doch sicher die 8 Bytes + Daten (z.B. 5) = 13 Bytes. Dann muss ich also bei "Zu lesende Bytes" 13 einstellen, oder?

Beste Grüße,

Luis


Angehängte Datei(en)
8.0 .vi  TCP I.vi (Größe: 42,16 KB / Downloads: 344)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.08.2014, 12:22
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Für das Modbus Protokoll gibt es auf ni.com mindestes 2 kostenlose fertige APIs. Wieso also selber programmieren?

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.08.2014, 13:19
Beitrag #3

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll

Akzeptierte Lösung

Hier noch der Link zur älteren Lib:
http://www.ni.com/example/29756/en/
Leistet bei mit für TCP Master seit Jahren gute Dienste...

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
16.08.2014, 20:21 (Dieser Beitrag wurde zuletzt bearbeitet: 16.08.2014 20:24 von Piranhaschaf.)
Beitrag #4

Piranhaschaf Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Aug 2014

12.0
2013
DE



RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Hallo Jens,

danke für deine Hilfe. Ich habe mir die Lib gezogen, aber ich kann sie nicht mit meinem Manager installieren. Ich nutze LabVIEW 2013. Weißt du, wie ich sie installiere? Oder lade ich einfach das "Modbus VI" von irgendeiner Version?

Beste Grüße,

Luis
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2014, 16:57
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
- Zip-Datei entpacken.
- Inhalt des Ordners 86 nach C:\Programm Files (x86)\National Instruments\LabVIEW 2013\ kopieren.
- LabVIEW neu starten, danach hast du eine neue Palette unter deiner User-Lib.

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
02.09.2014, 09:24
Beitrag #6

Piranhaschaf Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Aug 2014

12.0
2013
DE



RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Hallo,

nach längerer Zeit im Urlaub habe ich meinen Beckhoff wieder in Angriff genommen.

Ich habe jetzt die User-Lib eingefügt. Es funktioniert auch alles soweit. Ich habe einen TCP Master erzeugt und kann nun die direkten und indirekten Register auslesen.

Danke Jens für all deine Hilfe.

LG Luis


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

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Welche Library hast du dir heruntergeladen? Die von mir verlinkte ist das nicht.

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
02.09.2014, 15:46 (Dieser Beitrag wurde zuletzt bearbeitet: 02.09.2014 15:49 von Piranhaschaf.)
Beitrag #8

Piranhaschaf Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Aug 2014

12.0
2013
DE



RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Ich bin mir da ziemlich sicher, dass es deine verlinkte ist. Ich hab sie nach deiner Beschreibung eingefügt und hatte dann unter "Zusatzpakete" die Rubrik "Modbus TCP" und konnte dort diese Elemente auswählen.

Ich schau das morgen nochmals genau nach und melde mich dann.

Beste Grüße,

Luis
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.09.2014, 18:51
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Sieht eher so aus, als ob du diese hier erwischt hast:
https://decibel.ni.com/content/docs/DOC-30140
Dann wundere ich mich aber über die Installations-Frage, das ist doch ein VIPM-Paket.

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
04.09.2014, 07:52
Beitrag #10

Piranhaschaf Offline
LVF-Grünschnabel
*


Beiträge: 16
Registriert seit: Aug 2014

12.0
2013
DE



RE: BK9050 mit LabVIEW ansprechen - Probleme mit dem ModbusTCP-Protokoll
Hallo,

bin heute wieder an meinem projekt unterwegs. Du hast recht, ich habe das von dir verlinkte Paket installiert. Das habe ich einfach mit dem VI Package Manager installiert. Allerdings habe ich es wegen mangelnder Kenntniss nicht zum laufen gebracht, daher dachte ich, es funktioniert nicht o.Ä. Also habe ich nochmals nachgefragt. Am Anfang habe ich wohl auch etwas die Übersicht verloren Angel_not

Ich habe es aber jetzt auch geschafft, meinen Beckhoff mit der ersten Lib anzusprechen, die du verlinkt hattest. Nun habe ich die Wahl. Sollte aber keinen Unterschied machen, welche Struktur ich nehme oder?

Danke für deine Hilfe

Beste Grüße,
Luis


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: