Vai al contenuto

Impostazione indirizzo nodo modbus moduli I/O distribuito

Home Forum Moduli I/O distribuiti Impostazione indirizzo nodo modbus moduli I/O distribuito

Stai visualizzando 5 post - dal 1 a 5 (di 5 totali)
  • Autore
    Post
  • #34930
    Anonimo
    Inattivo

    Ho acquistato dei moduli I/O distribuito TRP della Trycom con il protocollo Modbus RTU, volevo avere informazioni su come  effettuare l’impostazione dell’indirizzo di nodo.

    Dovrei definire indirizzi diversi ai vari moduli per poterli inserire in una rete RS485 multidrop.

    #36593
    Sergio Bertana
    Amministratore del forum

    E’ possibile connettersi al modulo in RS485 definendo parametri di comunicazione 9600, n, 8, 1, i moduli TRP sono settati di default con indirizzo 0x01. Come visibile dal manuale del prodotto è possibile con un comando modbus eseguire il set dell’indirizzo del modulo (Vedere capitolo Set up the module’s address). Il comando è ID 46 04 IP 00 00 00 (CRC), dove ID è l’indirizzo attuale del modulo, di default è 0x01, IP è l’indirizzo che si vuole definire, mentre il CRC deve essere calcolato utilizzando l’algoritmo definito dalle specifiche modbus.
    Attenzione! tutti i caratteri della stringa (Trattandosi di modbus RTU) sono da considerarsi binari. Per inviare caratteri binari consiglio di utilizzare il programma Toolly. Per impostare ad esempio l’indirizzo 0x02 occorre inviare la stringa modbus 01 46 04 02 00 00 00 F5 1E (Da programma Terminal $01$46$04$02$00$00$00$F5$1E). Per impostare ad esempio l’indirizzo 0x03 occorre inviare la stringa modbus 01 46 04 03 00 00 00 F4 E2 (Da programma Terminal $01$46$04$03$00$00$00$F4$E2). Il nuovo indirizzo verrà memorizzato permanentemente nel modulo il quale risponderà a comandi modbus che iniziano con l’indirizzo definito, vedere anche questo post.

    #36595
    Sergio Bertana
    Amministratore del forum

    In questo post è documentato, ed è possibile il download, di un programma su SlimLine che gestisce la lettura di un modulo di ingressi logici e la scrittura di un modulo di uscite logiche.

    #36843
    Roberto
    Partecipante

    A proposito dell’implementazione del modbus sul Trycom TRP-C24M 16 out digitali. Non ho problemi per lettura e scrittura uscite, diverso è per l’ID nodo o altre funzioni, che usano il function code 0x46, non documentato dalle specifiche modbus standard e soprattutto non gestito dalle due librerie commerciali che possiedo e che dovrei impiegare per chiacchierarci insieme.

    Almeno l’ID nodo devo gestirlo. Avete qualche info o tool standalone per gestire questi parametri ?

    #36844
    Sergio Bertana
    Amministratore del forum

    Il function code 0x46 fà parte di quei codici funzione lasciati liberi dal protocollo standard per implementare funzioni utente dedicate. Per questo non è documentato e non è gestito dalle librerie standard di comunicazione modbus.

    Come vedi nel post precedente è indicato come eseguire l’invio di stringhe modbus utilizzando il programma Terminal. In alternativa puoi eseguire il download dal nostro sito del programma Toolly, che oltre ad essere un emulatore di terminale ha la possibilità di inviare stringhe binarie (Per il protocollo RTU) ed ha al suo interno una utility per il calcolo del CRC del frame modbus RTU.

    Nello screenshot allegato come vedi ho definito nella finestra Cmd 1 il comando modbus per impostare l’indirizzo 0x02 nel modulo con indirizzo 0x01 (Come spiegato nel post precedente). Si vede anche l’utility del calcolo del CRC che ritorna il valore 0xF51E che è stato posto al termine del frame modbus di comando.

Stai visualizzando 5 post - dal 1 a 5 (di 5 totali)
  • Devi essere connesso per rispondere a questo topic.