Vai al contenuto
PLC Forum


Scrittura dint con scu041


gig1978

Messaggi consigliati

Salve, vi chiedo aiuto, non riesco a scrivere una dint con un modulo scu041 con protocollo modbus in un inverter che da manuale richiede int32 , premetto che da hmi riesco senza problemi , grazie in anticipo

Link al commento
Condividi su altri siti


29 minuti fa, gig1978 scrisse:

con protocollo modbus

 

Se non ricordo male il protocollo modbus la vora a byte, quindi penso dovresti spacchettare l'intero da 32 bits i 4 bytes, se già non lo fa il drive della tua interfaccia.

Link al commento
Condividi su altri siti

No, il modbus trasferisce registri da 16bit (word), ma ci sono comandi dove si può scrivere o leggere più registri. Il come farlo dipende dalle routine che usa.

Link al commento
Condividi su altri siti

Scusate il ritardo , uso delle fb trovate in internet , con la funzione 06 riesco a scrivere una sola word ma con due non pensò che devo usare la funzione 10 (credo) perché in effetti sono due parametri dell’azionamento, in effetti scrive qualcosa ma non sono i valori che scrivo 

Link al commento
Condividi su altri siti

La funzione 0x06 scrive un solo registro, quindi 16 bit. Per scriverne più di uno (due per 32 bit), devi usare la 0x10 (16 in decimale), dove devi specificare il registro iniziale, quanti ne vuoi scrivere e ovviamente poi il buffer con i dati da scrivere nei registri.

Una cosa cui fare attenzione: di base il modbus non gestisce registri a 32bit, per cui in effetti te scriverai due registri a 16bit consecutivi, ma l'ordine (più e meno significativo) lo devi verificare col manuale dell'inverter, siccome non tutti hanno la stessa sequenza.

Link al commento
Condividi su altri siti

Ciao. Allora, ho ritrovato quella FB, è da MyOmron. Era fatta per scrivere UN SOLO registro (parameter) in un inverter, ed è bloccata con un solo parametro (quindi 16 bit).

Anche se internamente usa la funzione 0x10 cioè write multiple register.

Andrebbe modificata per l'utilizzo con più registri consecutivi. Se Dio vuole, le FB di Omron non sono protette e le si possono modificare. Io quelle dell'EasyModbus per CP1 me le sono rifatte ex novo, non mi piacevano. Potresti semplicemente modificare quella. Non ho al momento molto tempo per fartelo io. Non è difficile, devi solo prevedere un ulteriore valore in ingresso, modificare a 2 il numero di registri da scrivere e preparare il buffer di scrittura.

Link al commento
Condividi su altri siti

quella che ho io e aperta , infatti ho modificato uint in dint e ho modificato 2 al numero di registri ,ma niente , te la posso girare in qualche modo?

Link al commento
Condividi su altri siti

Eh, non basta quello, deve essere preparato il buffer ammodo.

Ok, inviala per email diretta

Ma non avere troppa furia, ho un collaudo a breve

 

Modificato: da Ctec
Link al commento
Condividi su altri siti

Esatto. Poi la FB modificata la pubblicheremo qui sul forum, in modo che chiunque possa usufruirne.

L'unica cosa è che non ho PLC con modulo seriale separato, quindi la fase di test e debug la dovrai fare te...

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...