Vai al contenuto

Rispondi a: Controllo motore passo-passo in Modbus

Home Forum Controllori SlimLine e Netsyst (LogicLab) Controllo motore passo-passo in Modbus Rispondi a: Controllo motore passo-passo in Modbus

#38454
Sergio Bertana
Amministratore del forum

Intanto inizio con il suggerirti di utilizzare il nuovo FB ModbusMaster (Estratto manuale) di gestione protocollo modbus master, vediamo le nuove ed interessanti caratteristiche di questa FB.

Può essere gestita in sequenza, puoi cioè definire piu istanze della FB definendo per ogni istanza il comando modbus da eseguire, basta connettere il Done della FB precedente sull’Enable di quella successiva per effettuare tutti i comandi in sequenza (Vedi questo topic). Certo che se i registri da leggere e/o scrivere sono molti e non consecutivi, piuttosto che istanziare in LD o FBD molte FB conviene gestire una sola FB da ST gestendo una macchina a stati con l’operando CASE (Trovi un esempio di programma in questo topic).

Se poni a TRUE l’ingresso SpyOn ti sarà possibile attivare la procedura di spionaggio da connessione Telnet e vedere i dati trasmessi e ricevuti su porta seriale, questo ti permetterà di capire cosa risponde l’azionamento. Può essere che fai un indirizzamento fuori range, chiedi troppi registri contemporaneamente o utilizzi un comando modbus non supportato.

Ricordati che il protocollo Modbus ha un offset di 1 quindi se nella FB definisci indirizzo di lettura 100 sul pacchetto Modbus verrà inviato l’indirizzo 99 in quanto il dispositivo Slave dovrebbe in accordo allo standard sommare 1. In molti dispositivi Slave questo non viene fatto, quindi in tal caso devi sommare 1 tu all’indirizzo richiesto.