01-17-2024 09:16 AM
Hello!
I am trying to develop a modular architecture for Labview, but not just some functions o simple programs, I want to modulate all the program and make easier to add or remove some external instruments, without having to change the program, just adding some SubVis.
This is a schematic image what I want to do:
I want to have completely different instruments, but be able to control all of them with the same input and outputs, in order to make it easier to add new instruments. All the instruments should be previously created in a SubVi with all the same input and outputs normalized, just adding the subvi to the code they should work without changes.
This is where the problems start, because every instrument is completely different between them, may one is a IP camera, other one is a motor and another is a spectrometer that has completely different inputs and outputs.
I'm not a veteran expert in labview and I do not how to start, may I'm not focusing the solution correctly or maybe this idea is not possible. So I would like to get some help.
Thank you so much.
01-17-2024 09:46 AM
It looks like you're onto a mix of Measurement Abstraction Layer and Hardware Abstraction Layer.
There are a few more on YouTube.
01-17-2024 11:48 AM - edited 01-17-2024 11:51 AM
Here's what I have done. In my case I have several test systems. All have AC and DC power sources, AD and DC loads, Power analyzers, and a DAQ/Switch unit. I use an XML file for each system that is parsed on start up. My program contains all of the VI's for each instrument and the proper VI is selected by the instrument type in the XML file.
Although we have attempted to standardize our test equipment. There are still several differences present across the test systems.
Despite these differences, the validation platform software can run on any the test system located in the lab without making any modifications to the test script or LabVIEW program.
The Validation Platform software currently supports this test equipment: