Nachdem wir das grundlegende Format der Modbus-Kommunikation verstanden haben, wird in dieser Ausgabe die Anwendung des Modbus-RTU - Kommunikationsprotokolls auf Mitsubishi FX3U PLC durch Simulation realisiert.
Anweisung Einführung
Er, Software Vorbereitung
●Virtuelle Serial-Port - Tool
●Modbus Slave
●Lingyi PLC-Emulator
●GX works2 Programmierungssoftware
Zweitens, RS-Anweisung
RS-Anweisung ist die Anweisung zum Empfangen und Senden von Daten bei der Ausführung der seriellen Kommunikation, die Verwendung dieser Anweisung erfordert das Einfügen des FX3U - 485 - BD-Kommunikationsmoduls in die SPS.
1) Grundformat
Wo m (Anzahl der erzeugten Daten) und n (Anzahl der empfangenen Daten) benötigen die Anweisungen des Nachrichtenformats des externen Geräts und können nicht zufällig festgelegt werden.
2) Beispiele
X0: RS-Befehl löst eine Bedingung aus, wenn die X0 - Bit ON ist, wird die RS-Befehl in den Wartezustand für das Senden oder Empfangen von Daten geraten.
D10: Startregister, in dem Daten gesendet werden.
K8: Die Anzahl der Daten, die gesendet werden, zeigt an, dass acht Register im Bereich D10 bis D17 pro Sende gesendet werden.
D20: Startregister für die Empfangsdaten.
K7: Die Anzahl der empfangenen Daten, die vom externen Gerät zurückgegeben werden, wird in sieben Registeren im Bereich D20 bis D26 gespeichert.
III. Spezielle Hilfsrelais
1) M8161 Datenverarbeitung Bit-Flag - Relais
Verarbeitet 16 - Bit-Daten, wenn M8161 = OFF.
Bei M8161 = ON werden die niedrigen 8 - Bit-Daten verarbeitet.
2) M8122 Datenübertragungsignal Relais
Setze M8122, wenn die RS-Anweisung in einem Warte-Zustand für das Senden oder Empfangen von Daten ist, werden die Daten im Senden-Daten - Register in der RS-Anweisung an das externe Gerät gesendet. Nach Abschluss der Datenübertragung wird das System M8122 automatisch zurücksetzen, und es kann nicht mit dem Programm zurückgesetzt werden.
3) M8123 Datenempfang-Flag Relais
RS-Befehl Nach Abschluss der Datenübertragung geht es in den Zustand des Empfangsdaten. Zu diesem Zeitpunkt wird M8123 auf ON gesetzt und die empfangenen Daten verarbeitet, und nach Abschluss der Datenverarbeitung muss M8123 auf OFF zurückgesetzt werden, sonst kann die nächste Runde von Daten nicht empfangen werden.
4. Kommunikationsparameter festlegen
Die Kommunikationsparameter können entweder direkt in der SPS-System - Einstellung eingestellt werden, oder durch die Änderung des Wertes von D8120 eingestellt werden, die zwei Einstellungsmethoden sind optional (in diesem Artikel wird hauptsächlich die Einstellung durch D8120 beschrieben).
1) direkte Einstellung
Klicken Sie dann auf die Parameterliste "PLC-Parameter" → "PLC-System - Einstellungen 2" → aktivieren Sie "Kommunikations-Einstellungen", und dann gemäß den tatsächlichen Bedürfnissen die Kommunikationsparameter einstellen, die Einstellung abgeschlossen und überprüfen, nachdem die Fehler sind, klicken Sie auf die Schaltfläche "Einstellungen beendet" Speichern Sie die Einstellungen.
2) Einrichtung über D8120
Entsprechend der folgenden Tabelle angegebenen Parameter und in Kombination mit den tatsächlichen Bedürfnissen der Wert von b0 ~ b15 und konvertieren in Hexadezimalzahl an D8120, um die Kommunikationsparameter Einstellung zu erreichen.
3) Beispiele
Die Kommunikationsparameter-Einstellungen werden wie folgt festgelegt: 8 - Bit-Datenlänge, Paritätsprüfung, 1 - Bit-Stop - Bit, 9600 - Baudrate, kein Header-End und eine RS - 485 - Schnittstelle ohne Protokoll.
Das Bearbeitungsprogramm übergibt die Parameter an D8120.
V. CRC-Richtlinie
Die Funktion der CRC-Befehl ist die Berechnung des Prüfcodes für die Modbus RTU-Kommunikationsnachrichten.
Im Low 8 - Bit-Modus (M8161 = ON) berechnet der CRC-Befehl, wenn X0 ON ist, den Validationcode, der von den sechs Registeren D10 bis D15 erzeugt wird, und speichert das Ergebnis der höheren Octave in D16 und der niedrigen Octave in D17.
Anweisungen anwenden
I. Projektanforderungen
Drücken Sie die X0 - Taste, um den Wert des Slave-Station - Halterregisters Nr. 1 40000 zu lesen, drücken Sie die X1 - Taste, um 100 in das Slave-Station - Halterregister Nr. 1 40002 zu schreiben, und die Kommunikationsparameter bleiben im Einklang mit dem oben angegebenen Beispiel.
II. Das redaktionelle Verfahren
1) Initialisierung
M8161 muss im Initialisierungsprogramm auf den niedrigen 8 - Bit-Datenmodus (M8161 = ON) eingestellt werden, die Kommunikationsparameter an das spezielle Register D8120 und die Register, die im Reset-Programm verwendet werden, übergeben werden.
2) Hinzufügen von RS-Anweisungen
Wenn die Länge der Daten bei jeder Verarbeitung gleich ist, müssen Sie nur einmal einen RS-Finger hinzufügen und die RS-Anweisung warten, um Daten zu senden oder zu empfangen.
Die gesendete oder empfangene Datenlänge muss gemäß den Anforderungen des externen Geräts festgelegt werden, hier ist das externe Gerät Modbus Slave, dessen Nachrichtenformat entspricht dem Standard-Nachrichtenformat, so dass die gesendete und empfangene Datenlänge hier K8 und K7 bzw.
3) Bearbeiten des Leserprogramms
a) Berechnung des Leserprogramms Nachrichten
können automatisch mit Hilfe des Debugger-Assistenten für den seriellen Port generiert werden, wobei 84 0A der CRC-Prüfcode ist.
b) Bearbeiten Sie den Sender
Wenn die aufsteigende Kante von X0 erkannt wird, wird die erzeugte Nachricht in die Register D10 bis D15 übergeben, die für das Senden von Daten verwendet werden.
Die Meldung muss im sechzehnstelligen System angegeben werden.
c) Hinzufügen der CRC-Befehl
Die CRC-Befehl berechnet den Prüfcode anhand der ersten sechs Nachrichten und speichert die hohen Octave in D16 und die niedrigen Octave in D17.
Da die CRC-Befehl in der Simulation manchmal gut und manchmal schlecht ist, wird in diesem Projekt keine CRC-Befehl verwendet, sondern der Prüfcode direkt in D16 und D17 übergeben.
d) Senden von Daten
Setzt M8122 für den Abschluss der Datenübertragung, wenn eine rückläufige Kante von X0 erkannt wird.
e) Empfangen und Verarbeitung der zurückgelesenen Daten
Die Daten, die von der Station zurückgegeben werden, werden durch die Analyse der Nachricht in D23 und D24 gespeichert, die Daten, die von der Station zurückgegeben werden, die höchsten und niedrigsten acht Bits.
Die Daten von D23 und D24 werden durch Berechnungen zusammengeführt und dann in D31 gespeichert.
4) Schreibprogramm bearbeiten
a) Nachrichtenübermittler bearbeiten
Verweis auf die Bearbeitung des Lesprogramms.
b) Daten senden
c) Daten empfangen
Da die Daten von der Station nicht empfangen werden müssen, muss der M8123 direkt zurückgesetzt werden.
Simulationsumgebung Konfiguration
1. Hinzufügen eines virtuellen seriellen Anschlusses
Zwei Paare virtueller serieller Anschlusses müssen hinzugefügt werden, ein Paar für die Implementierung der Verbindung zwischen GX works2 und Ling Yi PLC-Emulator, das andere Paar für die Implementierung der Verbindung zwischen Ling Yi PLC-Emulator und Modbus Slave
2. Konfiguration Ling Yi Emulator
Nachdem die Konfiguration abgeschlossen ist, müssen Sie den Download-Port öffnen und die erweiterte Kommunikation aktivieren und die SPS in Betrieb nehmen.
Konfiguration von GX Works2
Die Konfigurationsmethode entspricht der Methode, wenn Sie eine physische PLC anschließen, wobei die Portnummer hauptsächlich ausgewählt wird. Klicken Sie auf "Kommunikationstest", wenn die Einstellungen abgeschlossen sind, und klicken Sie auf "OK", wenn der Test erfolgreich ist, um die Einstellungen zu speichern und das Programm in den Emulator herunterzuladen.
Konfiguration von Modbus Slave
1) Die Konfiguration der Modbus Slave-Verbindung
muss mit den Kommunikationsparametern in D8120 übereinstimmen.
2) Konfigurieren der Modbus Slave-Funktion
Setzen Sie die Funktion der Slave-Station wie in der Abbildung dargestellt und ändern Sie den Wert des Registers 40000.
V. Simulation der Demonstration
Nachdem die Simulationsumgebung konfiguriert ist, laden Sie das Programm in den Emulator herunter und wechseln Sie in den Überwachungsstatus.
1) Lesen Sie die Präsentation
Klicken Sie auf die X0 - Taste im Emulator, um zu sehen, ob der Wert von D31 mit dem Wert übereinstimmt, der im Modbus-Slaven für das Aufbewahrungsregister 40000 festgelegt wurde.
2) Schreib-Demonstration
Klicken Sie auf die X1 - Taste im Emulator und beobachten Sie, ob 100 in das Hold-Register 40002 des Slaves geschrieben wird.
6. Das gesamte Verfahren betrachten
ADPRW 指令