Nuovo blocco funzione per Gateway Modbus TCP/RTU
Home › Forum › Programmazione IEC 61131 (LogicLab) › Nuovo blocco funzione per Gateway Modbus TCP/RTU
- Questo topic ha 7 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 6 anni, 11 mesi fa da
Sergio Bertana.
-
AutorePost
-
Dicembre 9, 2014 alle 11:31 am #35689
Sergio Bertana
Amministratore del forumMolte volte succede di dover connettere a programmi SCADA dispositivi Modbus seriali utilizzando come connessione una rete ethernet. Siccome lo SCADA nel momento in cui si seleziona come mezzo di comunicazione la porta ethernet, utilizzano automaticamente il protocollo Modbus TCP. A questo punto per connettere dispositivi seriali Modbus RTU o Ascii via ethernet occorre utilizzare un Gateway Modbus TCP/RTU, esistono sul mercato prodotti stand-alone, vedi quelli da noi distribuiti nella gamma dei convertitori Ethernet-Seriale. Ma se ad un Gateway desidero connettere in rete RS485 più dispositivi, occorre che il Gateway gestisca il passaggio dell’indirizzo di nodo (Topic).Visto il costo paragonabile ad un Gateway commerciale del nostro modulo CPU SlimLine, abbiamo realizzato il blocco funzione ModbusTCPGateway (Estratto manuale). Posto un semplice programma che permette di utilizzare un modulo CPU Compact come Gateway Modbus TCP to Modbus RTU (Stampa programma, Progetto sorgente).
Dicembre 15, 2014 alle 7:01 pm #38587Mauro
PartecipanteDevo installare qualche software nel PC tipo virtual serial port o simili se si quale.
Questo blocco mi torna utile per fare dei test e tentare di leggere dei registri in modbus (spero).Dicembre 16, 2014 alle 7:30 am #38588Sergio Bertana
Amministratore del forumIl blocco funzione agisce da gateway tra una connessione Modbus su TCP/IP ed una connessione Modbus RTU. Quindi si presuppone che il dispositivo master Modbus sia esso uno SCADA, un terminale operatore od altro, apra una connessione TCP/IP verso lo SlimLine che agisce da gateway e quindi non serve un virtual COM.
Ma non capisco cosa vuoi dire quando vuoi fare dei tests, se devi interfacciarti da SlimLine con dispositivi Modbus RTU puoi utilizzare direttamente l’FB ModbusMaster, usa il cerca in alto e vedrai che trovi un sacco di informazioni. In questo topic trovi anche informazioni su programmi per il test del Modbus da PC.
Dicembre 17, 2014 alle 12:56 pm #38600Mauro
PartecipantePer fare dei test intendevo collegarmi alla scheda Modbus di un PLC Crouzet crouzet e provare a leggerne i registri per capire come li devo configurare nel blocco master.
Dicembre 18, 2014 alle 8:41 am #38601Sergio Bertana
Amministratore del forumProseguo con la risposta alla domanda in questo topic in cui abbiamo trattato l’argomento connessione con PLC Crouzet.
Ottobre 3, 2017 alle 12:38 pm #39978Anonimo
InattivoStò provando su uno slimline MPS054A100 l’esempio con il ModbusGateway per interrogare e settare una temperatura e un set point da un termoregolatore ASCOM X3. I valori andranno letti da una postazione HMI siemens Tia Portal v14 tramite Modbus/TCP porta 502 (ho creato il collegamento, la diagnostica dice che è tutto ok, ma le due variabili con indirizzo 40001 e 40002 non sono disponibili). Sull’Ascom ho impostato la comunicazione come Mbus, velocità 9600 e Addr.1. Sullo Slimline da http://ip/System/HwSetup.htm: Serial port “COM2”: 9600 DTR On: 0 DTR Off. Non riesco a capire come procedere per accedere ai due valori dell’Ascom. Potete darmi gentilmente qualche dritta?
Ottobre 4, 2017 alle 6:33 am #39979Sergio Bertana
Amministratore del forumE’ passato un pò di tempo dal primo post nel frattempo è uscito un nuovo target XTarget_12.0 ed alcune cose sono state migliorate, ora sono disponibili il FB SysTCPServer per gestire la connessione TCP in modo server ed il FB SysSerialPort per gestire la porta seriale, ho quindi ripreso il vecchio progetto modificandolo ed ho pensato di realizzarlo in FBD anzichè in ladder ecco il risultato. Qui poi scaricare il programma sorgente.
Ma veniamo alla tua domanda, intanto il programma è un gateway di comunicazione, cioè permette il passaggio dei dati da una connessione TCP verso una connessione seriale e nel passaggio il FB ModbusTCPGateway esegue la conversione dal protocollo Modbus TCP al protocollo Modbus RTU e viceversa.
Se vedi la porta in ascolto sul server TCP è la 1000 (La porta 502 è quella gestita di default dallo SlimLine con il Modbus TCP), quindi devi nel TIA portal impostare la porta 1000 altrimenti dialoghi con il protocollo Modbus dello SlimLine ed intereoghi i suoi registri interni e non quelli del termoregolatore.
Per quanto riguarda l’indirizzo delle variabili 40001 e 40002 sono indirizzi di variabili dello SlimLine ma tu devi riferirti agli indirizzi delle variabili del termoregolatore.
Maggio 17, 2018 alle 6:49 am #44107Sergio Bertana
Amministratore del forumRilasciata una una versione del FB che opera da gateway tra Modbus TCP e RTU, il FB ModbusTCPGateway_v1 sostituisce il precedente. Tra le sue nuove funzionalità c’è la possibilità di gestire connessioni multiple in TCP/IP. Quindi è possibile avere più connessioni Modbus TCP che vengono tutte indirizzate verso una unica connessione Modbus RTU, ecco l’estratto del manuale.
Allego il progetto ModbusTCPGateway che accetta fino a 3 connessioni Modbus TCP sulla porta 1000 e le converte in Modbus RTU su porta COM0 (Download).
-
AutorePost
- Devi essere connesso per rispondere a questo topic.