Sign in to follow this  
Followers 0
rajsiyer

Citect with Industry Sd. Modbus Protocol

9 posts in this topic

Hi guys, I should have brought up this problem at this forum much earlier.. I don't know how many of you have gone through this! On most occasions, when I try communicating Citect(V 7.1) with a Modbus serial device, it doesn't work. In all these attempts, the slave device easily communicates with MODSCAN/Mbus or any other Modbus testing software on the same computer. So this isn't a matter of getting the port/board/baud-rate/slave-Id settings right. What I observe is that Citect's Modbus query doesn't go out of the PC's port! I've tried ALL the settings for MODBUS section parameters in the Citect 's ini file. Nothing works. Is there anything else to be done or checked?? I'll welcome all help. A million thanks for looking in, best wishes, Raj S. Iyer

Share this post


Link to post
Share on other sites
Never encountered this problem. If you not getting anything out of your com port I expect you've made a mistake in the comm settings. More information might be useful: which modbus driver you are using The version number of the mobus driver Maybe you can post the project with just the I/O deice setup. Edited by Gambit

Share this post


Link to post
Share on other sites
Thank you, for your interest and fast reply. OK... Its like this... What I have is a PID controller (Radix, Indian make) with a RS-485 port which is meant for use as an RTU. It has settings for port configuration which we've set as follows. Slave-ID =5, baud-rate =9600, parity = None, data bits =8, stop bits =1. With these port settings, I can easily communicate with Modscan, which is modbus comm. testing freeware,; installed on the same PC. The Set-point, PV, and other such variables as Kc, Ti, Td.. which are typically found in the PID controller's memory area are easily visible on Modscan. Since the onset of the problem when working on a laptop, to rule out USB driver issues, we are now using a desktop PC with a 9-pin Serial port COM1. The above device even passes the Modbus-test on Telemecaniques driver manager(V 2.6). That is after applying the com-port settings on the Modbus driver manager, the device easily connects and successfully returns the octets sent by this software and one can see that there is no missing packet and all responses are valid. OK... Now we take up Citect(V7.01). we create a cluster(only one) and set up an IO Server =IOServ. (only one). Modbus driver is V2.06.04.001 I run express wizard and set up a new I/O device. I use the Industry-Standard Modbus protocol. After running through the wizazrd,What I see in the project editor is attached as screenshot. No mismatch here. Ah... one more thing. In the diagnostic kernel, I see that the point limit value is 1 , Point Count value Max = -1; what is this signify?? does this mean that Citect won't communicate?? Regards, & best wishes for your life, Raj S. Iyer screen Shot citect config.bmp

Share this post


Link to post
Share on other sites
Raj S. Iyer At first glance the setting look ok but since you said before that your COM port is not producing any data at all. I have a feeling that the problem is this: I see you have two records in your project which probably have the same settings(duplicate records), this will most likely be the problem. I would delete your I/O server and then pack your project (Citect project editor - File - > Pack) This will really delete all deleted files. Now run your I/O device setup again or recreate the setting you've made before. Then try commmunications again. regards Gambit Edited by Gambit

Share this post


Link to post
Share on other sites
Raj Is Net01 set to your IP adress or as local host(127.0.0.1) if not your compyter will not been seen as the I/O server and therefor not start comm. Edited by Gambit

Share this post


Link to post
Share on other sites
Thanks Gambit, At present, it is set to 127.0.0.1, but I'll change it though. . But why should it matter?? as we are not using ethernet comms at all. Regarding 'Record 2" it appears sometimes despite pack + compile. There are no duplicate records regards, best wishes and really, really, appreciate your continued interest in helping me out, Raj S. Iyer

Share this post


Link to post
Share on other sites
Citect is set up to work as system containing multiple PC. It will look to the IP adress of the machine to indetify it's role in the system. So your I/O server name should have the IP adress of your machine or 127.0.0.1. Maybe you can upload your Citect project I can check if I get something from my serial port.

Share this post


Link to post
Share on other sites
Hi Gambit, Solved this issue just now. I'm obliged to make it known to you(& others here as well) that the crucial difference was 2 parameters in the citect.ini file. These were... 1. [MODBUS]:DoCRC This was set to 1. Resetting it to 0 results in #COM. 2. [MODBUS]:Delay =10. Increasing this slows down comms. decreasing it leads to intermittent appearance of #COM. Thank you very much once again, for your active interest and prompt help. Hope to be useful to you perhaps someday:-) Happy Christmas and best wishes for your success & happiness. Raj S. Iyer

Share this post


Link to post
Share on other sites
Happy Christmas Raj, Edited by Gambit

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