domenek Posted March 6, 2012 Report Posted March 6, 2012 Salve, dovrei comunicare tra un PC ed un plc S7-1200 tramite la rete aziendale e con protocollo MODBUS per leggere e scrivere in dei registri di memoria. Sul PLC ho implementato un programma in Perl, il PLC risponde ma non so quale registro andare a leggere. Cioè se devo leggere per esempio la locazione %M0.1, quale indirizzo devo mettere nel mio programa sul PC? Oppure per esempio se volessi leggere in remoto lo stato di un ingresso (es: %I0.1) quale indirizzo di memoria devo leggere? Grazie.
rguaresc Posted March 6, 2012 Report Posted March 6, 2012 (edited) Il 1200 puo' dialogare in modbus RTU tramite una scheda aggiuntiva o in modbus TCP/IP tramite la porta di programmazione, immagino sia un modbus TCP/IP. Nel plc devi creare un'applicazione MB_SERVER con relativo DB di istanza e con questo fissi l'indirizzo iniziale della memoria M che corrispoderà al registro modbus 40001 esempio: il campo di memoria M da vedere in modbus parte da %M256.0 allora %MW256 corrisponde a 40001, %MW258 corrisponde a 40002 e cosi' via secondo la regola: Indrizzo modbus = (indirizzo simatic - indirizzo iniziale ) / 2 + 1 Per gli ingressi %I0.0 diventa 10001, %I0.1 -> 10002, %I1.0 -> 10009 e cosi via. Edited March 6, 2012 by rguaresc
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now