Sign in to follow this  
Followers 0
Ricardo R

Problem with TSX Premium MODBUS TCP messaging

3 posts in this topic

Hello, I have a problen with SCHNEIDER PREMIUM TSX P57 2634M to connect to remote slave devices via Modbus GPRS. In this project, we have to communicate witch remote stations MOTOROLA MOSCAD, via GPRS Modbus TCP/IP. Actually there are 9 remote stations. We program MOTOROLA Moscad to work as Modbus RS-232 Slaves. Then we install VIOLA GPRS Routers and VIOLA M2M in control centre to manage VODAFONE dynamic IP remote addresses. To control GPRS traffic we use PREMIUM READ_VAR and WRITE_VAR functions, the TIMEOUT is set to 5 seconds. Every minute (its depends on the CICLO_LECTURA value), PREMIUM communicate with active remote stations (it depends on ESTACION_X_COM_ACTIVADA is set or not). If I reset PREMIUM, all active stations communicate OK, but if one station fails, in next communication PREMIUM open a new port to communicate with this station. One or two days after, one or more station stop communicate OK, the messages reported as 16#12FF, but if I communicate with ModbusPoll, remote station its OK, then if I reset PREMIUM, all stations can communicate OK, and in SNMP window, pots opened are set to "0". I hope you understand my English. Do you know the solution of this problem? Thank you very much, Ricardo R

Share this post


Link to post
Share on other sites
Hello, I would like to know if someone uses other PLC with Modbus TCP/IP messages over GPRS VPN with a good result. Thanks, Ricardo R

Share this post


Link to post
Share on other sites
Dear Ricardo; refer my example for using Modbus with multiple slaves using execution check here. I was facing the same problem when one slave was not getting accessed. Why your slaves stop communicating after some time is because the read_var block's management parameters (GEST) is NOT getting reset to zero. The array of 4 integers must be re-initialised as follows GEST[0]=0,Gest[1]=0, GEST[3] =timeout period in 0.1 sec counts. & GEST[4] =0. Even though I've used Modbus RS-485 and you are using TCPIP, the principle is the same. If you reinitialise the Read_Var like in my example you should get good results. Also you must reduce the time out to reasonable limits. I've not only set the time out period to the bare minimum ie. 100ms. but have also configured the Modbus master with low time-out and also NO retries. Othewise the master wastes time in re-attempting comms with un-responsive slaves. During this period other slaves cannot communicate. Regards, best wishes, Raj S. Iyer Edited by rajsiyer

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0