Comunicazione DAT3014 con Weintek mt8050 Modbus
Home › Forum › Terminali operatore (Weintek) › Comunicazione DAT3014 con Weintek mt8050 Modbus
- Questo topic ha 8 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 6 anni, 7 mesi fa da
Sergio Bertana.
-
AutorePost
-
Agosto 27, 2018 alle 6:11 am #45305
Carmelo
PartecipanteDevo far comunicare dei moduli di acquisizione Pt100 dat3014 con un mt8050 per la visualizzazione delle temperature! Mi trovo in difficoltà nel far visualizzare la temperatura! Nelle prorpieta del dispositivo ho inserito:
Modbus rtu( zero based addressing)
COM1 (9600 e 8 1) il dispositivo e stato programmato con le stesse impostazioni
Stazione plc 1 (indirizzo Programmato nel modulo 1)Per la visualizzazione utilizzo una numerica:
Nome plc modbus rtu(zero based addressing)
indirizzo 4x. 40015 che è l’ingresso 0 della sonda1 riportato nel manuale del dat3014Le coil con indirizzo 00001 fino alla 00008, usando le lampade bit vanno alla grande, e rilevano il guasto o l’interruzione dei cavi delle Pt100. La visualizzazione delle temperature non vanno, il terminale mi dice Plc no response! Ecco il link al manuale del modulo.
Come posso risolvere il problema?
Agosto 27, 2018 alle 6:25 am #45309Sergio Bertana
Amministratore del forumIl protocollo Modbus standard ha offset 1, tu hai scelto la modalità zero base addressing e quindi hai eliminato l’offset. Molti dispositivi comunque lavorano senza offset (Puo darsi che anche il DAT3014 sia così) ma l’offset al limite ti sfalsa di 1 l’indirizzamento (Basta sommare o sottrarre 1 all’indirizzo per sistemarlo).
Il fatto che i Coils funzionano però significa che l’indirizzamento è corretto, ora per quanto riguarda i registri WORD leggendo il manuale mi sembra che il comando 4x operi sui registri banco 3xxxx che sono lo specchio dei registri 4xxxx. Quindi io proverei ad usare l’indirizzo 30015 al posto del 40015.
Per l’acquisizione analogica di Pt100/1000 specie se hai molti punti ti consiglio di dare una occhiata al nostro sistema modulare SlimLine con il suo modulo di espansione I/O analogico.
Agosto 28, 2018 alle 6:02 am #45332Carmelo
PartecipanteSalve! Grazie per la risposta. Ho fatto la prova a usare il comando 3x 40015 e 4x 30015 ma il problema persiste! Ho notato che la numerica non viene visualizzata per niente! E dopo qualche secondo il terminale dice PLC no response.
Ho fatto una miriade di prove ma niente, ho provato anche in ascii riprogrammando il DAT3014! E addirittura usando un convertitore rs485/modbus TCP. Sto utilizzando il DAT3014 perché ne ho un paio a casa, e volevo usarlo per un progetto prototipo, ho preso già in considerazione di usare i vostri prodotti!
Agosto 28, 2018 alle 6:10 am #45334Sergio Bertana
Amministratore del forumSe il terminale visualizza PLC no response significa che non riceve risposta al comando Modbus che invia al dispositivo, solitamente per un errore di indirizzo. La documentazione del dispositivo non è chiarissima e sopratutto non c’è un esempio di frame Modbus.
Ti consiglio di provare con un programma di simulazione modbus su PC (Esempio Modbus Master Simulator) per cercare di capire che comandi Modbus il prodotto accetta.
Se conosci bene il protocollo Modbus puoi anche tentare con il nostro programma Toolly che permette di inviare stringhe binarie su seriale ed ha nelle utilità anche un pratico calcolatore di CRC/LRC per protocollo Modbus (Vedi l’ultimo post di questo topic).
Agosto 28, 2018 alle 12:37 pm #45336Carmelo
PartecipanteHo installato modbus master simulator e il DAT3014 si comporta come la sua documentazione!
Agosto 28, 2018 alle 12:42 pm #45338Sergio Bertana
Amministratore del forumProva a fare un progetto con nella pagina di default un oggetto visualizzazione dati e lo punti su 3x 40016 anzichè 40015. Tu hai scelto modbus zero based addressing e quindi può esserci un 1 di differenza sull’indirizzamento ed ho visto che il registro 40014 è riservato.
Leggendo un unico registro 3x 40016 sia che ci sia un offset positivo che negativo và sempre bene… al limite leggi un valore diverso da quello che credi.
Agosto 29, 2018 alle 5:53 am #45343Carmelo
PartecipanteProvato e riprovato nessun miglioramento! Ho anche usato il protocollo modbus tcp ip usando un convertitore di interfaccia ma nessun risultato ci rinuncio…
Agosto 30, 2018 alle 12:20 pm #45346Carmelo
PartecipanteBe dopo una miriade di prove ho risolto impostando protocollo Modbus TCP/IP andando a leggere l’indirizzo 4×16 e non 4×40016 E funziona anche l’indirizzo 3×16.
Problema risolto grazie mille di tutto!
Agosto 30, 2018 alle 12:22 pm #45348Sergio Bertana
Amministratore del forumQuindi il problema è che nella documentazione è indicato indirizzo 40016 quando in realtà l’indirizzo è 16…
Quindi capito il problema lo puoi utilizzare anche direttamente in RS485 senza dover mettere il convertitore ethernet/seriale.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.