Setup OPC functionality for EC4P-222s, some notes:
The EC4P-222 has a build in OPC functionality and therefore needs no external OPC-library.
setup your EC4P-222 PLC:
- update your EC4P-222 PLC(s) to the newest OS version, which can be downloaded from:
ftp://ftp.moeller.net/AUTOMATION/DOWNLOAD/FIRMWARE_UPDATES/EASY_CONTROL/EC4P_222/
- on EC4P-222s with a display the PLC's OS version can be shown directly and verified via
menu "INFORMATION". Alternatively the OS version can also be shown via the CoDeSys browser
command "metrics".
- configure your EC4P-222 PLCs IP-addresses and subnet mask via the CoDeSys browser command
"setipconfig".
setup CoDeSys gateway server:
- for EC4P-222 ethernet communication please reduce the gateway server's block size to 4k
(0x1000) via gateway-PC/StartMenu/MoellerEaton/CoDeSys/Communication/BlockSizeEditor and
restart the gateway server later.
- in gateway-PC/StartMenu/MoellerEaton/CoDeSys/(Communication/)OPC configurator add an "PLC"
for every OPC project and write the project name of your CoDeSys OPC project into the
project name field and also configure and set the IP connection to the corresponding
EC4P-222 PLC. Increase the "OPC update rate" to a value of at least 500ms. You should
also mark "log events".
Multi PLC config is possible if you have more EC4P-222s running OPC projects and thus
more OPC-projects with different names have to be configured in that case.
- leave the OPC configurator and restart the gateway server via selecting "exit" at the
CoDeSys Gateway status icon.
setup your CoDeSys project:
- configure the "PLC's max cycle time" in your EC4P-222 ethernet project via the
"PlcConfiguration/GeneralParameters" dialogue to a value of at least 200ms or more.
- in your CoDeSys project under "Options/SymbolConfiguration" mark generate symbol entry
(XML is not necessary) and "configure symbol file" via the shown extra button. In
"configure symbol file" be sure to have set all "selector hooks" to active black instead
of grey. You can verify your selection by looking into the freshly generated *.sym file
after every build of your project with a standard editor.
- clean and build your project and copy the freshly generated *.sym and *.sdb files from
the project folder into "C:\WINDOWS\Gateway Files\" and especially the *.sdb files into
"C:\WINDOWS\Gateway Files\Upload\" folders of the 3S server (and additionally into a
suitable folder of every OPC client PC). Repeat the last step every time when the sym and sdb
files have been changed, thus every time when the project was compiled! This has to be done
every time, because EC4Ps cannot store the symbol files needed by the OPC clients on its own.
Once you "forget" this step you'll lose symbol consistency and OPC might "just not work"
without generation of any warnings or further hints. This fault is hard to find sometimes!
Every new project build, even one without any project changes, does change the project ID
in the freshly generated symbol file and thus leads to an not so easy detectable symbol file
inconsistency.
- load your project into the EC4P-222 PLC and generate a boot project onto that EC4P-222 PLC.
If you are in doubt about symbol consistency, please repeat the steps: clean, compile,
generate boot project on the PLC and to copy both new symbol files to the appropriate
destinations, as mentioned before. Sometimes it might additionally be necessary to deactivate
the OPC server on the gateway PC and also to restart the gateway sever on the gateway PC.
- setup your OPC client software on a PC. Run it and select "CoDeSys.OPC.02" or something
equivalent. If running Windows it is quite probable that the firewall will block your
OPC client's ethernet packages. So you should allow your client to pass the firewall
explicitly. Additionally "Gateway.exe" should be allowed to pass the firewall.
- under Windows 7, please set the program properties of CoDeSysOPC.exe under
C:\Program Files (x86)\Eaton\XSoft-CoDeSys V2.3.9 SPx\OPC to "administrator" and
also do the same with your OPC clients properties.
If you face permanent symbol file errors (CoDeSys message: "#1044: symbol file download not
possible" or the green ethernet LED stops to flicker and turns off once in a while for one
or two seconds") please stop the OPC client (which should also terminate the OPC server's
symbol shown in the symbol bar), copy the OPC symbol files to your OPC client's directory
and also terminate the 3S gateway (via right mouse button CoDeSys servers properties in
the symbol bar) and then restart your client. The 3S gateway server and the OPC server
will then restart automatically and their symbols will be shown in the symbol bar again.
Only in very hard cases: If you face persistent symbol file path problems, a reinstallation
of the 3S OPC server via OPCCommonSetup.EXE might also help to setup the server properly again.
about EC4P-222 ethernet limitations:
- Overloading: datagrams/package receiverate above one datagram per 50ms might lead to
some randomly distributed packet loss.
- IP-Filtering:EC4P-222's ethernet controller (CP2200) provides level 2 (MAC) hardware
filtering but no filtering on level 3 (IP). Thus every datagram/package
which has the fitting MAC-address, MAC-multicast-address or MAC-broadcast
address will pass that filter, independently whether this was intended by
the application or not. HUBs and Switches also provide no level 3 filtering
(switches only provide level 2 filtering and HUBs have no filtering at all).
Thus, if you use switches you have to keep sure that there are not too much
MAC-multi- or MAC-broadcasts on the ethernet around. From a level 3 point
of view this are commonly ARP broadcasts and UDP broadcasts (255.255.255.255
broadcasts and also subnet broadcasts). E.g. if you have an EC4P-222
configured to the class C (submask 255.255.255.0) address 192.168.119.60,
this EC4P-222 will also be burdened by subnet broadcasts from other subnets
(e.g. an 192.168.120.255 class C broadcast ARP datagram), because the MAC
addresses of them will also be MAC-broadcast addresses, which are independent
from any level 3 subnet masking. The EC4P-222 has no hardware subnet masking!
- To avoid overloading you should know how much MAC-broadcast-traffic is on the ethernet.
If in doubt, you should place all EC4Ps behind a small router (those provide
level 3 filtering), thus you should place the EC4Ps in a dedicated router
protected subnet segment.
Qulakin