Kepware EX server 5.7.84.0 and Ignition 7.3.0 OPC UA

Good afternoon
I have a problem with the connection to the Ignition 7.3.0 “Kepware EX server 5.7.84.0”
With the use of OPC UA.
To set up I used the instructions
inductiveautomation.com/news/item/255
But unfortunately Kepware EX server 5.7.84.0 in Ignition 7.3.0 did not work
In the server status is displayed Unknow

In the console spews out errors

java.lang.NullPointerException at com.inductiveautomation.xopc.client.sropc.ConnectionUtil.getEndpoint(ConnectionUtil.java:76) at com.inductiveautomation.xopc.client.sropc.ConnectionManager.connect(ConnectionManager.java:92) at com.inductiveautomation.xopc.client.sropc.UAServer.setUp(UAServer.java:120) at com.inductiveautomation.xopc.client.sropc.UAServer.access$200(UAServer.java:52) at com.inductiveautomation.xopc.client.sropc.UAServer$3.run(UAServer.java:208) at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:526) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
OPC UA server status:

Our company is a data center in Russia, and we would like to use Ignition as our SCADA, but unfortunately we can not allow access to Kepware EX server

My wapper.log attached to the post
wrapper.log (3.48 MB)

Can you do three things for me please:

  • Upgrade to 7.3.1.
  • Grab a screenshot of the configuration page for the connection to Kepware and post it here.
  • After it’s attempted to connect a few times, send your logs.bin.gz file to support@inductiveautomation.com, or attach it to your post. You can find this in the logs directory or download it from the Console area of the gateway.

Also just as a side note, those instructions are a little bit out of date. The easiest way to configure Kepware is delete any Ignition certificates currently in the certificate manager, then let Ignition try to connect. If at all successful, will make a certificate appear in their certificate manager which you can then trust.

Ignition upgrade to version 7.3.1
Screanshot config Kepware EX and ignition 7.3.1 OPC UA



logs.bin attached to the post
logs.bin.gz (165 KB)

As a temporary solution, we use DCOM, but we hoim move SCADA to Linux OS, so we need an OPC UA.
Everything works through DCOM

It looks like the time on your Kepware server is 2 days behind, which is causing the issue.

This line is from the logs:

StatusCode[0x807F0000, Severity=Bad, Subcode=Bad_TcpSecureChannelUnknown]: Channel expired. Created at Wed Oct 26 12:14:42 PDT 2011, lifetime=3600000, current time is Fri Oct 28 12:14:14 PDT 2011.

Basically, the time on the Kepware machine is Oct 26, 12:14 and the time on the Ignition machine is Oct 28, 12:14. The way secure channels work requires the machines to be set to the correct (or at least the same) time.

Thank you very much it worked!

Had this time problem too.

To overcome this in the future i used the Windows time management to synchronise all PC’s and PLC’s of the Ignition server, which is Windows Server 2008 R2.
Basicall in the Internet Time Settings were it usually says “time.windows.com” i put in the IP address of the Ignition server.
This will keep the time between different PC’s synchornised.
As a side note:
The PLC’s are being synchronised once a day with a script from the ignition server too.
Its not exactly the same time but within 2 seconds which is good enough to satisfy most situations.
Other solutions would be.
GPS Clock - > Costly
IEC 60870 part 5 -> used in Europe, en.wikipedia.org/wiki/IEC_60870-5-104
DNP3 -> used in USA, dnp.org/default.aspx

And as a note to the developers, it would be nice to have these as drivers in ignition as currently i’m only aware of
matrikon having both of these. And as personal preference i find matrikon cumbersome/awkward.
Regards
Sascha

^ If you have a domain setup for your process machines, you can point them at the NTP service on the domain controller as well via group policy.

[quote=“info@focus-eng.com”]
And as a note to the developers, it would be nice to have these as drivers in ignition as currently i’m only aware of
matrikon having both of these. And as personal preference i find matrikon cumbersome/awkward.
Regards
Sascha[/quote]

We have that solution. Give me a call.

Hi Robert,

As far as i remember your solution was an external one, i was more hoping for an ignition module like the siemens driver for example.
If i’m wrong please correct me and show me the way

Regards
Sascha

We have a data collection front end that turns the collected points into SQLTags.

If you can run Ignition on Debian, it can coexist on the same box. Next year we will be writing a module that will allow you to configure the data collection server from within the designer. For those in the electric utility field, besides just points, we can retrieve fault files and other non-scada data.

So yes, it is an external one, but it meshes nicely with Ignition. It would be nice to create a module for those protocols, but it would be a lot of work.

It also gives you a lot of flexibility because we can put multiple hosts in place. Think substation HMI while still sending the data to an EMS/DMS control center. :slight_smile: