12-17-2019 10:15 PM
Hi, I'm using Labview 2019,
Is there any chance that I can read Object from labview application using Event Based
which I already edit the file.ini by inserting these two (Using VI server between application):
server.tcp.enabled=True server.tcp.port=3364
Below, is the error i get at register event pallete
12-17-2019 10:57 PM
12-17-2019 11:22 PM
The things that I want to do is to create an application for a system contain of Data Acquisition Pressure Transmitter and Controlling Valve. In future there will be a need to export all those data to another PC server (OPC UA). Instead of me, have to disturb the program that are running 24/7. I can just tap the application using VI server and probably do some controlling using an Event Based (Value Signalling) from New Application (Read & Write OPC UA Client).
I'm thinking of future adjustment or changes without interfere the existing application running.
12-18-2019 01:02 AM
For example below?
(Main.vi) Acquired Data -- Any method --> Another PC --> (OPC VI) --> OPC Server
Can you allow data drop? Are you looking for a method such as Queue?
Or you do have a trouble on your VI? I didn't see the same error on VI. Should I build the VI into EXE application?
12-18-2019 01:16 AM
Yes, you should build one.vi under exe. Then using another vi (in development Mode) to get access via VI server.
Require to add Server TCP in this link;
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019LbZSAU&l=en-MY
12-18-2019 03:57 AM
Even if you could do that (register for events in another application instance) it doesn't sound like a good idea.
Why not use a network stream? Or your own TCP\IP connection? Even shared variables would work...
12-18-2019 04:18 AM
yeah I could do that, Shared Variable, TCP/IP, Network Stream but yet I still need to disturb the main.vi and do the Write Data Shared Variable ready, TCP/IP ready or Network Stream ready. I do see the potential of VI server as in vi between vi. I can make it event driven. But not in between application.
12-18-2019 05:13 AM
@fendywoo wrote:
yeah I could do that, Shared Variable, TCP/IP, Network Stream but yet I still need to disturb the main.vi and do the Write Data Shared Variable ready, TCP/IP ready or Network Stream ready. I do see the potential of VI server as in vi between vi. I can make it event driven. But not in between application.
Is the goal to leave the main.vi executable undisrupted?
There are options... You can make a VI that catches the main.vi events. Drop this VI on the executable, and it will catch the events. The executable will be unmodified. The VI can then communicate the events in some other way. Even VI Server, but not the events.
This is on the hacky side of development. It will work, but I'd only use it if the I couldn't change the executable.
12-18-2019 08:13 AM
I am not really sure what you end goal is but you could...
Serve-up a Wrapper around an Action Engine that can fire a User Event.
The Action Engine will have to have a reference to the User Event created in the context of the application that is going to register for the event.
See here for more insight into that approach.
Ben
12-18-2019 08:18 AM
I think (but please confirm or clarify) OP wants to register for events that happen in another application (exe). So outside the exe, you'd be getting dynamically register for events in the VI that lives in the exe.