Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » 4DIAC - Framework for Distributed Industrial Automation and Control » OPC-UA Read and Write OPC-UA variables Example on [Separate Machines](Getting ERROR : start() has to be called before callAsync on the seprated machine when deploying the client)
OPC-UA Read and Write OPC-UA variables Example on [Separate Machines] [message #1806459] Thu, 09 May 2019 11:27 Go to next message
Michael Bishara is currently offline Michael BisharaFriend
Messages: 2
Registered: May 2019
Junior Member
Following the documentation for the OPC-UA implementing the example https://www.eclipse.org/4diac/documentation/html/communication/opc_ua.html : Read and Write OPC-UA variables on a remote server

The example works fine when the sever and the client are on the same machine, however when I separate them on two different machines (in this case a vairtualbox Ubuntu OS) I start to get inconsistent behavior.

When deploying to the remote machine sometimes the OPC-UA client manages to connect to the server but mostly it doesn't,receiving this error message : ERROR : start() has to be called before callAsync

I tried to restart the forte client before deployment each time, or remove all resources and deploy still inconstant behavior with mostly failing and receiving the error : ERROR : start() has to be called before callAsync

Please find attached images for the FBs and the success and fail console logs.

How can I fix this as this is just the first step on building an OPC-UA communication example
Re: OPC-UA Read and Write OPC-UA variables Example on [Separate Machines] [message #1806526 is a reply to message #1806459] Fri, 10 May 2019 07:42 Go to previous messageGo to next message
Jose Maria Jesus Cabral Lassalle is currently offline Jose Maria Jesus Cabral LassalleFriend
Messages: 136
Registered: February 2016
Senior Member
I'm currently working in the OPC UA layer to make it more stable and try to avoid this type of problems.

What I see from your application is that you have colored E_RESTART Function Blocks, that means that you added them in the application. Try removing them, and using the one you have in the Resource view.

It seems to be that you're triggering the REQ event before the FB was properly initialized. Try the following:

1- Remove all E_RESTART Function Blocks from your application.
2- Use the E_RESTART in the resource view, and connect the COLD and WARM outputs of it to only one INIT.
3- From the INITO connect to the following making a single chain of initialization events.
4- From the last INITO in the change, connect to NumToIncrement.REQ input event.

With that you are sure that all the FBs are initialized before actually triggeing the REQ event.
Re: OPC-UA Read and Write OPC-UA variables Example on [Separate Machines] [message #1806551 is a reply to message #1806526] Fri, 10 May 2019 10:43 Go to previous message
Michael Bishara is currently offline Michael BisharaFriend
Messages: 2
Registered: May 2019
Junior Member
Thank you very much for your reply.

Now the situation is better, However i get the error at least once every ten re-deploys. but this is fine so far.

Thanks again.
Previous Topic:QX block - "FB Not Initialized"
Next Topic:Lock up issue with IEC 61499/Forte when running on Linux
Goto Forum:
  


Current Time: Thu Aug 22 00:44:47 GMT 2019

Powered by FUDForum. Page generated in 0.01252 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top