Unity Pro XL v3 and Citect v7.0

C

Thread Starter

chibichibi

With Unity using topological addressing and Citect expecting the standard Modbus 0xxx, 1xxx, 3xxx and 4xxx, I am having problem getting the two applications to talk to each other.

I have setup Citect to read from the process as advised from the Help Documentation. I have found the correct device through the setup wizard and it has selected Modnet30 as the protocol to use.

However, I am not sure how I should be addressing it as it is not reading or writing any inputs and outputs, though it compiles with no errors.

I have assigned variables in Unity
DI1 -> %I0.2.0 EBOOL
DI2 -> %I0.2.1 EBOOL
DI3 -> %I0.2.2 EBOOL
DO1 -> %Q0.3.0 EBOOL

and correspondingly in CitectSCADA
DI1 -> 100001 DIGITAL
DI2 -> 100002 DIGITAL
DI3 -> 100003 DIGITAL
DO1 -> 000001 DIGITAL

I am aware that the DI1 is now actually a BYTE, but Citect does not allow this classification, bringing up a Bad Raw Data Type error when compiling.

Please advise.

I can be contacted at yuzuyu__chan at hotmail. com
 
I don't have a handy way to test this, but I would have assumed that %I0.2.0 was the first bit in the 3rd word of 1x memory. 100001 would reference %I0.0.0. Try 100033 for DI1.
 
I believe that old Modbus flat addressing is not supported by the Unity topological addressing %I0.2.0.

To write to I/O I think you have to map your topological address to internal ones in the PLC (%Mx for coils, %MWx for words).
 
A

Al Baumbach II

Modbus messaging don't support Unity topological addressing.

You have to map your I/O to internal storage in the PLC. (%I0.2.0 to %M100) %M100 = Modbus coil 0100. %MW1 = Modbus reg 40001
 
N

Nathan Slider

Others are correct in that you need to map your I/O to internal storage in the PLC. (%I0.2.0 to %M100)

>%M100 = Modbus coil 0100. %MW1 =
>Modbus reg 40001

The Modnet30 protocol also allows you to address the %M and %MW registers using this syntax as opposed to having to specify 40001 you can just specify for your addressing %MW1. Modnet30 (typically used for Schneider Telemecanique Premiums and M340 PACs) Have a look at the Citect\BIN\Modnet_PREM.DBF for valid data format info.

Cheers,
Nathan Slider
 
Dear Sir
From my experience with Unity Pro and Vijeo Citect Scada I'd like to tell you that the Vijeo Citect Can't read Input or outputs so you must copy the Inputs and outputs into Markers (%M) or Memory words (%MW) and the nread these Markers or Memory Words
 
Top