LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

large numbers of shared variables

I have a medium size application with a huge number of shared variables (>3000). They are broken down into 20 stations. The first 3 are done. We have been taking each lvlib, exporting into CVS, modifying it in Excel, and importing back into a new lvlib. This is absolutely mind-numbingly tedious. Is there a better way to do this? I want to work on the code, not get absorbed like a Borg into a Shared Variable Engine. Smiley Indifferent

PaulG.

LabVIEW versions 5.0 - 2020

“All programmers are optimists”
― Frederick P. Brooks Jr.
Message 1 of 14
(3,482 Views)

will channel view help?

0 Kudos
Message 2 of 14
(3,464 Views)

No. Channel View does not help. To me it only looks like a way of looking at Shared Variables and importing and exporting them into CVS files. Unless I"m missing something I can do all of that in Project Explorer.

PaulG.

LabVIEW versions 5.0 - 2020

“All programmers are optimists”
― Frederick P. Brooks Jr.
0 Kudos
Message 3 of 14
(3,448 Views)

Some things you may be able to do:

 

  1. Write LabVIEW code to do your exporting and importing.  This will be an up-front cost, but should pay for itself fairly quickly.  You will need to maintain it.
  2. Do you need over 3000 shared variables or can they be combined into data structures so there are fewer of them?  You will need to pay attention to performance if you do this.
  3. Are you using the shared variables over a network?  If not, they could be replaced with something else (e.g. shift register wire, data value reference, LabVIEW object) that would make import and export much easier.  It would also cut down on race condition possibilities.

Can you post any of your code?

 

0 Kudos
Message 4 of 14
(3,436 Views)

Yes, we are using Shared Variables on a network. This is a PLC application and each of the 18 test bays have over a 150 SV's. Then there are the overhead system SV's. Each has it's own unique address. That is the where creating SV names has become quite the headache. There is no code to show you regarding creating my SV names. I'm doing everything via the Project Explorer and Excel.

PaulG.

LabVIEW versions 5.0 - 2020

“All programmers are optimists”
― Frederick P. Brooks Jr.
0 Kudos
Message 5 of 14
(3,411 Views)

 


@PaulG. wrote:

Yes, we are using Shared Variables on a network. This is a PLC application and each of the 18 test bays have over a 150 SV's. Then there are the overhead system SV's. Each has it's own unique address. That is the where creating SV names has become quite the headache. There is no code to show you regarding creating my SV names. I'm doing everything via the Project Explorer and Excel.


 

I haven't worked with Shared Variables, but with 18 bays of 150 SV, wouldn't it be possible to use some array/cluster of those 150 instead of 3k individual?

 

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 6 of 14
(3,395 Views)

My predecessor already invested a lot of work in the current architecture, so we are going with making the SV's the way I have been. However ... after talking it over with my boss ... we agreed ... this kind of work is why we have "interns". Smiley Tongue

PaulG.

LabVIEW versions 5.0 - 2020

“All programmers are optimists”
― Frederick P. Brooks Jr.
0 Kudos
Message 7 of 14
(3,379 Views)

@PaulG. wrote:

My predecessor already invested a lot of work in the current architecture, so we are going with making the SV's the way I have been. However ... after talking it over with my boss ... we agreed ... this kind of work is why we have "interns". Smiley Tongue


I was wondering how you got into this situation.

 

[Set Rant mode = True]

 

In the old days of BridgeVIEW and early DSC  the entire tag generation and import into the DSC Tag Engine could be completely automated and that is how I handled a similar challenge with 5000 tags all mapped to distinct PLCs.

 

Since then, I have avoided DSC SV like the plague. May shape up to more work going in but at least I don't end up restricted by the functionality of DSC or playing tag with a support group on the other side of the world that reply with thilling quotes like...

 

"I don't now about BridgeVIEW, it was supposed to be like LV-DSC"

 

Smiley Mad

 

 

[Set Rant mode = False]

 

Sorry I can't help Paul.

 

Ben

 

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 8 of 14
(3,374 Views)

@Ben wrote:

@PaulG. wrote:

My predecessor already invested a lot of work in the current architecture, so we are going with making the SV's the way I have been. However ... after talking it over with my boss ... we agreed ... this kind of work is why we have "interns". Smiley Tongue

 


I was wondering how you got into this situation.

 

 

[Set Rant mode = True]

 

In the old days of BridgeVIEW and early DSC  the entire tag generation and import into the DSC Tag Engine could be completely automated and that is how I handled a similar challenge with 5000 tags all mapped to distinct PLCs.

 

Since then, I have avoided DSC SV like the plague. May shape up to more work going in but at least I don't end up restricted by the functionality of DSC or playing tag with a support group on the other side of the world that reply with thilling quotes like...

 

"I don't now about BridgeVIEW, it was supposed to be like LV-DSC"

 

Smiley Mad

 

 

[Set Rant mode = False]

 

Sorry I can't help Paul.

 

Ben

 


I'm supposed to be telling my new boss good news Smiley Surprised

 

I wanted to tell him we can salvage some use out of DSC - a fairly expensive piece of software. I should have ran screaming when he told me NI told him that DSC doesn't even have a front panel control for a 3-way valve. Smiley Indifferent

PaulG.

LabVIEW versions 5.0 - 2020

“All programmers are optimists”
― Frederick P. Brooks Jr.
Message 9 of 14
(3,366 Views)

My DSC/NSV system is not as large as yours, I only have ~ 500 tags.  I manage my tags from excel workbooks and have written tools that automate everything from naming cRIO I/O aliases, to building NSV libraries to creating HMI NSV bindings.  DSC is overpriced and most of the features that I use are simply exposing properties of NSV's to enable citadel data logging.  The trend I am seeing is that DSC is merging with LabVIEW proper.  An example is the appearance of the Hypertrend Graph into MAX and the Distributed System Manager.  Over the past few years, NSV's have gone through a painful evolution but I think we have rounded the corner and NSV's are now a powerful and reliable mechanism.  Most of the vi's that you need to automated library creation are located in the vi\utility\variable folder.

Message 10 of 14
(3,347 Views)