1. Übersicht
Die SPS der Serien Mitsubishi FX3U/FX3G/FX3S können über die Kommunikationsadapter FX3U-485ADP-MB oder FX3U-232ADP-MB Modbus-RTU-Master- oder -Slave-Funktionen realisieren. Auf Basis des offiziellen „FX User's Manual - Communication" von Mitsubishi erläutert dieser Artikel die Adresszuordnungsregeln der FX3U-Serie ausführlich.
Die SPS der FX3U-Serie unterstützt zwei Modbus-Betriebsmodi:
- Modbus-RTU-Master: liest und schreibt aktiv Slave-Geräte (z. B. Frequenzumrichter und Messgeräte)
- Modbus-RTU-Slave: antwortet passiv auf die Lese-/Schreibanfragen des übergeordneten Rechners
2. Beschreibung der Modbus-Adresstypen
Das Modbus-Protokoll definiert vier Datenbereiche, jeweils mit festem Adressbereich und festen Funktionscodes:
| Modbus-Adressbereich | Funktionscode | Lese-/Schreibattribut | Datentyp | Entsprechendes FX3U-Gerät |
|---|---|---|---|---|
| 0xxxx (Coils) | 01 (Coils lesen) / 05 (Einzelnes Coil schreiben) / 15 (Mehrere Coils schreiben) | Lesen/Schreiben | Bit (1 Bit) | Bit-Geräte wie Y/M/S |
| 1xxxx (Diskrete Eingänge) | 02 (Diskrete Eingänge lesen) | Nur Lesen | Bit (1 Bit) | X-Eingangsrelais |
| 3xxxx (Eingangsregister) | 04 (Eingangsregister lesen) | Nur Lesen | Wort (16 Bit) | Spezialregister / feste Zuordnung |
| 4xxxx (Halteregister) | 03 (Halteregister lesen) / 06 (Einzelnes Register schreiben) / 16 (Mehrere Register schreiben) | Lesen/Schreiben | Wort (16 Bit) | D/R-Datenregister |
Wichtiger Hinweis: Modbus-Adressen gibt es in zwei Darstellungen — mit Bereichspräfix (z. B. 40001) und als reiner Offset (z. B. 00000). In der tatsächlichen Kommunikation wird die 0-basierte Offset-Adresse verwendet.
3. FX3U Standard-Modbus-Adresszuordnungstabelle
3.1 Diskreter Eingangsbereich (X-Eingangsrelais) → 1xxxx
Die Eingangsrelais X des FX3U sind fest dem Modbus-1xxxx-Bereich für diskrete Eingänge zugeordnet und nur lesbar.
| Modbus-Adresse | FX3U-Gerät | Beschreibung |
|---|---|---|
| 10001 | X000 | Eingangsrelais Bit 0 |
| 10002 | X001 | Eingangsrelais Bit 1 |
| 10003 | X002 | Eingangsrelais Bit 2 |
| 10004 | X003 | Eingangsrelais Bit 3 |
| 10005 | X004 | Eingangsrelais Bit 4 |
| 10006 | X005 | Eingangsrelais Bit 5 |
| 10007 | X006 | Eingangsrelais Bit 6 |
| 10008 | X007 | Eingangsrelais Bit 7 |
| 10009 | X010 | Eingangsrelais Bit 8 (Oktal) |
| 10010 | X011 | Eingangsrelais Bit 9 (Oktal) |
| ... | ... | Und so weiter; X verwendet Oktaladressierung |
| 10256 | X337 | Maximale Adresse (abhängig von der I/O-Punktzahl) |
Hinweis: Die X/Y-Ein- und -Ausgänge von FX-SPS verwenden Oktaladressierung, nicht dezimal! X0-X7 sind die ersten 8 Bits, X10-X17 die nächsten 8 Bits und so weiter.
3.2 Coil-Bereich (Y/M/S usw.) → 0xxxx
Bit-Geräte des FX3U wie Ausgangsrelais Y, Hilfsrelais M und Zustände S können dem Modbus-0xxxx-Coilbereich zugeordnet werden und sind les-/schreibbar.
Standardzuordnung (Beispiel):
| Modbus-Adressbereich | FX3U-Gerät | Anzahl | Beschreibung |
|---|---|---|---|
| 0x0000 - 0x001F (00001-00032) | Y000-Y017 | 32 Punkte | Ausgangsrelais Y (Oktal) |
| 0x0020 - 0x005F (00033-00096) | M0-M63 | 64 Punkte | Hilfsrelais M |
| 0x0060 - 0x007F (00097-00128) | S0-S31 | 32 Punkte | Zustand S |
Beschreibung:
- Die Coil-Bereichszuordnung kann über Parameter angepasst werden
- Standardmäßig werden die Ausgangsrelais Y ganz vorn zugeordnet
- Die Hilfsrelais M werden dem darauffolgenden Bereich zugeordnet
- Jeder SPS-Gerätebereich belegt 1 Bit
3.3 Halteregisterbereich (D/R-Datenregister) → 4xxxx
Die Datenregister D des FX3U sind dem Modbus-4xxxx-Halteregisterbereich zugeordnet und sind les-/schreibbar.
| Modbus-Adresse | FX3U-Gerät | Beschreibung |
|---|---|---|
| 40001 | D0 | 0. Datenregister |
| 40002 | D1 | 1. Datenregister |
| 40003 | D2 | 2. Datenregister |
| 40004 | D3 | 3. Datenregister |
| ... | ... | Und so weiter |
| 40200 | D199 | 199. Datenregister |
| 40201 | D200 | 200. Datenregister (remanent) |
| ... | ... | Und so weiter |
| 48000+ | D7999+ | Maximale Datenregisteradresse |
Berechnungsformel: Modbus-Adresse = 40000 + D-Register-Nummer + 1
Beispiel: für den Zugriff auf D100 gilt Modbus-Adresse = 40000 + 100 + 1 = 40101
Beschreibung der D-Register-Partitionen:
| D-Register-Bereich | Punkte | Beschreibung |
|---|---|---|
| D0-D199 | 200 Punkte | Universell, kann auf remanent geändert werden |
| D200-D511 | 312 Punkte | Remanent, kann auf nicht-remanent geändert werden |
| D512-D7999 | 7488 Punkte | Remanent; ab D1000 als Dateiregister einstellbar |
3.4 Eingangsregisterbereich → 3xxxx
Der 3xxxx-Eingangsregisterbereich des FX3U wird üblicherweise für nur lesbare Daten verwendet, seine Zuordnung ist relativ fest.
- Eingangsregister sind nur lesbar
- Sie werden üblicherweise den Datenregistern von Analogeingangsmodulen zugeordnet
- Die konkrete Adresse hängt von Modell und Anzahl der verbauten Analogmodule ab
4. Benutzerdefinierte Gerätezuordnung
Die Modbus-Adresszuordnung des FX3U ist konfigurierbar. Über die benutzerdefinierte Gerätezuordnung können verschiedene SPS-Geräte in den Modbus-Adressraum abgebildet werden.
Konfigurationsregeln:
- Coils (0xxxx) und Halteregister (4xxxx) sind konfigurierbar
- Die Zuordnung der diskreten Eingänge (1xxxx) und Eingangsregister (3xxxx) ist fest
- Es können bis zu 8 SPS-Gerätebereiche in den Modbus-Adressraum abgebildet werden
- Jede Konfigurationsgruppe belegt 2 Register
Konfigurationsschritte:
- Öffnen Sie die SPS-Parametereinstellungen in der Programmiersoftware GX Works2
- Suchen Sie den Einstellungspunkt „Modbus serielle Kommunikation"
- Konfigurieren Sie den zuzuordnenden Gerätetyp und die Startadresse
- Stellen Sie die Anzahl der zuzuordnenden Geräte ein
- Übertragen Sie die Parameter auf die SPS
5. SPS-Slave-Konfigurationsschritte
5.1 Kommunikationsadapter installieren
- Installieren Sie den Kommunikationsadapter FX3U-485ADP-MB an der linken Seite der SPS
- Bestätigen Sie, dass das Adaptermodel Modbus RTU unterstützt (mit dem Suffix -MB)
- Verdrahtung: A+ an die A-Leitung von RS485, B- an die B-Leitung von RS485 anschließen
5.2 Kommunikationsparameter einstellen
Stellen Sie das Kommunikationsformat über das spezielle Datenregister D8120 ein:
| D8120-Einstellung (H) | Baudrate | Datenbits | Parität | Stoppbits |
|---|---|---|---|---|
| H0000 | - | 8 Bit | Keine Parität | 1 Bit |
| H0080 | 600 bps | 8 Bit | Keine Parität | 1 Bit |
| H0081 | 600 bps | 8 Bit | Ungerade | 1 Bit |
| H0082 | 600 bps | 8 Bit | Gerade | 1 Bit |
| H00B0 | 19200 bps | 8 Bit | Keine Parität | 1 Bit |
| H00B1 | 19200 bps | 8 Bit | Ungerade | 1 Bit |
| H00B2 | 19200 bps | 8 Bit | Gerade | 1 Bit |
Häufige Konfiguration: 9600 bps, 8 Datenbits, gerade Parität, 1 Stoppbit → D8120 = H00A2
5.3 Slave-Adresse einstellen
Stellen Sie die Modbus-Slave-Adresse über das spezielle Datenregister D8121 ein:
- D8121 = Slave-Adresse (1-247)
- Beispiel: D8121 = 1 bedeutet, die Slave-Adresse ist 1
5.4 Modbus-Anweisungen aufrufen
Verwenden Sie die speziellen Modbus-Kommunikationsanweisungen:
- Mastermodus: Verwenden Sie die spezielle Modbus-Lese-/Schreibanweisung ADPRW (FNC276). ADPRW ist eine einzige Anweisung, die über den Funktionscode (S1) zwischen Lesen und Schreiben unterscheidet: H01 Coils lesen, H02 diskrete Eingänge lesen, H03 Holding-Register lesen, H04 Eingangsregister lesen, H05 einzelnes Coil schreiben, H06 einzelnes Register schreiben, H0F mehrere Coils schreiben, H10 mehrere Register schreiben, H17 mehrere Register lesen/schreiben. Form ADPRW S S1 S2 S3 S4 D: S = Slave-Adresse (0 = Broadcast), S1 = Funktionscode, S2/S3/S4 = Befehlsparameter (Startadresse, Anzahl usw.), D = Startgerät für Daten/Antwort. Es gibt keine separaten Anweisungen ADPU und REPU am FX3U; Lesen und Schreiben erfolgen einheitlich über ADPRW mit dem jeweiligen Funktionscode
- Slavemodus: den Slavemodus in den Parametern aktivieren, die SPS antwortet automatisch
6. Beispiel: SPS-Master liest einen Frequenzumrichter
Angenommen, der FX3U arbeitet als Master und liest die Betriebsfrequenz eines Mitsubishi-Frequenzumrichters:
| Überwachungsposition | FU-Befehlscode | Modbus-Adresse | Beschreibung |
|---|---|---|---|
| Betriebsart | H7B | 40010 | Betriebsstatus |
| Ausgangsfrequenz (Drehzahl) | H6F | 40201 | Tatsächliche Ausgangsfrequenz |
| Ausgangsstrom | H70 | 40202 | Motorstrom |
| Ausgangsspannung | H71 | 40203 | Ausgangsspannung |
Kommunikationsschritte:
- Master-Kommunikationsparameter einstellen (Baudrate, Parität usw.)
- Slave-Adresse angeben (die FU-Stationsnummer)
- Die zu lesende Modbus-Adresse angeben
- Daten in das angegebene D-Register lesen
- Nach der Datenverarbeitung anzeigen oder steuern
7. Häufige Probleme und Fehlersuchleitfaden
7.1 Keine Kommunikationsantwort
- Verdrahtung prüfen: ob A+ und B- von RS485 vertauscht sind
- D8120-Einstellung prüfen: ob das Kommunikationsformat korrekt ist
- D8121-Einstellung prüfen: ob die Slave-Adresse korrekt ist
- Adaptermodel prüfen: es muss ein spezieller Modbus-Adapter mit dem Suffix -MB sein
- Busspannung messen: die A-Leitung sollte etwa 200 mV über der B-Leitung liegen
7.2 Daten können nicht gelesen werden
- Gerätezuordnung prüfen: bestätigen, ob das zuzugreifende Gerät im Zuordnungsbereich liegt
- Adressoffset prüfen: den Unterschied zwischen 1-basiert und 0-basiert beachten
- Oktaladressierung prüfen: X/Y-Geräte sind oktal, nicht dezimal
- Adressbereich prüfen: ob die Anzahl der zugeordneten Geräte überschritten ist
7.3 Falsche oder unleserliche Daten
- Datenformat prüfen: 16-Bit-Ganzzahl oder 32-Bit-Gleitkommazahl
- Byte-Reihenfolge prüfen: Big-Endian oder Little-Endian und ob sie konsistent sind
- Wortreihenfolge prüfen: die High-/Low-Wort-Reihenfolge von 32-Bit-Daten
- Skalierung prüfen: ob ein Multiplikator erforderlich ist
7.4 Gelegentliche Kommunikationsausfälle
- Schirmkabel prüfen: ob geschirmtes Twisted-Pair-Kabel verwendet wird
- Buslänge prüfen: ob die Entfernung die Spezifikation überschreitet
- Störungen prüfen: ob die Kommunikationsleitung parallel zu Leistungskabeln verläuft
- Abschlusswiderstand prüfen: ob an beiden Busenden 120-Ω-Abschlusswiderstände angebracht sind
8. Unterschiede zur Siemens S7-200 SMART
| Vergleichsposition | Mitsubishi FX3U | Siemens S7-200 SMART |
|---|---|---|
| X/Y-Adressierung | Oktal | Dezimal |
| Halteregisterzuordnung | Startet standardmäßig bei D0, konfigurierbar | Über HoldStart und MaxHold konfiguriert |
| Kommunikationsadapter | Erfordert externen FX3U-485ADP-MB | Integriertes RS485 |
| Programmieranweisungen | Spezielle Anweisung ADPRW (FNC276); Lesen/Schreiben über Funktionscode | MBUS_CTRL/MBUS_MSG-Bibliotheksanweisungen |
| Konfigurationsmethode | SPS-Parameter + Spezialregister | Durch Aufruf von Bibliotheksanweisungen konfiguriert |
9. Zusammenfassung
Modbus-Adresszuordnungsregeln der Mitsubishi FX3U-SPS:
- 0xxxx Coils → Bit-Geräte wie Y/M/S, konfigurierbar
- 1xxxx Diskrete Eingänge → X-Eingangsrelais, feste Zuordnung
- 3xxxx Eingangsregister → nur lesbar, Analogeingänge
- 4xxxx Halteregister → D-Datenregister, konfigurierbar
In der Praxis ist besonders auf die Oktaladressierung der X/Y-Geräte zu achten — der größte Unterschied zwischen Mitsubishi- und Siemens-SPS. Es empfiehlt sich, zuerst mit Debugging-Software wie Modbus Poll zu testen und das SPS-Programm erst nach Bestätigung der korrekten Adresszuordnung zu schreiben.
10. Weiterführende Links
- Modbus-RTU-Kommunikations-Grundlagentutorial
- Konfigurationsbeispiel für die Mitsubishi FX3U Modbus-Kommunikation
- Anleitung zur Modbus-Steuerung von Mitsubishi-Frequenzumrichtern
- RS485-Bus-Verdrahtungsrichtlinie
Antwort veröffentlichen