domenek Posted March 6, 2012 Report Share 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. Link to comment Share on other sites More sharing options...
rguaresc Posted March 6, 2012 Report Share 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 Link to comment Share on other sites More sharing options...
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