HCBBS Forum (Deutsch)
Submit Chemical Projects / Find Solutions
Amplify Your Requirements on a Broader Chemical Platform *Engineering · Technology · Equipment · Solutions*
Submit Request

MODBUS RTU-Kommunikationsprobleme

2015-11-17View Original

Thread Content

Es gibt ein System sowie ein DCS, die über MODBUS kommunizieren. Das DCS ist das zentrale Steuerungssystem JX-300XP. Das Problem ist folgendes: Die vom anderen System gesendeten Daten bestehen entweder aus zwei oder vier Bytes. Die Daten mit zwei Bytes werden ordnungsgemäß verarbeitet, während die Daten mit vier Bytes nicht richtig interpretiert werden können. Das Problem ist im Grunde klar: Es handelt sich um eine von der anderen Seite bereitgestellte Registeradresse – es handelt sich dabei um eine 32-Bit-, also vierbytegroße Variable. Doch DCS kann keine vierbytegroßen Variablen direkt lesen. Wie lässt sich dieses Problem lösen?
Reply #22015-11-18
Bei 32 Bit handelt es sich dabei um reelle Zahlen. Im System des Gegners werden sie in 16-Bit-Ganzzahlen umgewandelt, und anschließend wird dies auf der Seite der Zentrale wieder umgewandelt.
Reply #32015-11-18
Im Modbus-Protokoll ist kein 32-Bit-Datentyp vorgesehen; es werden nur 16-Bit-Registerdaten definiert. Daher muss man selbst programmieren, um dieses Problem zu lösen – egal ob auf der Slave- oder Master-Seite. Man muss sich also selbst um die Handhabung dieses Datentyps kümmern
Reply #42015-11-21
Es ist sehr wahrscheinlich, dass die höheren 16 Bit und die niedrigeren 16 Bit vertauscht sind. Man kann die Gleitkommazahl auf der Slave-Seite in eine 16-Bit-Ganzzahl umwandeln oder auf der Master-Seite die höheren 16 Bit mit den niedrigeren 16 Bit austauschen
Reply #52015-11-23
Führen Sie einen Modbus-Scan durch, um den Datentyp zu bestimmen. Es könnte sich um einen 64-Bit-Double-Typ handeln. In einigen Systemen ist der gesammelte Wert tatsächlich vom Double-Typ – beispielsweise sind die gesammelten Werte im Daniel-Flussmessgerät von diesem Typ. Bei Fließkommazahlen sind in der Regel 4 Bytes erforderlich; die möglichen Kombinationen sind meist 1234/3412/2143/4321 usw. . . . Besonders ekelerregend ist es, darauf zu stoßen. . . . Bei Siemens-PLCs, die mit einem Modbus-Communication-Device arbeiten, ist das Format für Fließkommazahlen 3412; bei herkömmlichen PLCs ist es 1234
Reply #62015-11-24
Schauen Sie im DCS-Handbuch nach, wie Datentypen definiert werden – manche werden als „real“ bezeichnet, andere als „dword“
Reply #72015-11-26
Der Threadersteller sowie die anderen Nutzer haben das MODBUS-Protokoll verwendet. Beim MODBUS_RTU-Protokoll können pro Übertragung n Daten übertragen werden – wie hoch kann dieser Wert n maximal sein? Wie viele Daten kann MODBUS_RTU pro Übertragung maximal übertragen? n kann nicht unendlich groß sein, sonst könnte die Datenübertragung nie abgeschlossen werden.

Submit a Project

**Looking for Chemical Technology, Equipment & Solutions?** No Registration Required Broader Platform Exposure | Global Chemical Service Provider Connections

Submit Request — Free Consultation

Disclaimer

This is an automated machine translation of the original thread. Some technical terms may have inaccuracies; the original text shall prevail. Click "View Original" at the top right to access the source page, which supports IP-based automatic real-time language translation. Please watch out for contact details and sales inducements to prevent fraud. All content and translations are for reference only, representing solely the poster's personal views. For enquiries, email service@hcbbs.com.