08-12-2021 07:51 AM
Hi,
Based on some previously posted topics I have decided to go deeper in DQMH. Currently I have a small project to automate measurements with a Keysight 34465A. A labview instrument driver is available, so the start is easy.
Once I have downloaded the driver I thought that - hey - this could be a good mini project for a DQMH module... and then I thought - wait a second - what is the benefit of doing that? I mean having the Tester VI is great so I can test if the module does what it has to do, but other than this, I cant really name a benefit. There will be no other user of the module than me, and if I move the subVIs of the driver to a DQMH then at the end I gotta call the dqmh modules pretty much the same as I call the driver VIs individually.
So now I'm somewhat concerned if creating a DQMH module for an instrument makes too much sense.
Let me know your thoughts.
08-12-2021 08:18 AM
We've been developing around yet another custom QMH template for a few years now and I nearly *always* dedicate a loop to each instrument I need to communicate with. Instrument communications and operations can be relatively slow, so it's nice to defer all that over to a parallel loop rather than making direct driver vi calls that slow down the main program logic.
Overall I've found it pretty useful to have dedicated MHL's for each instrument.
-Kevin P
08-12-2021 08:24 AM
DQMH is a state machine, where you can make predetermined or dynamic state transitions to achieve your end goal. DQMH is pretty useful for any application that would require user interaction with a UI (not necessary but a UI will make things complex to warrant a state machine).
Measurement automation by itself does not require a state machine (maybe a simple one like an iteration state machine just to tidy up the BD) as you would have implemented the test methodology (which is predetermined).
You could use DQMH if you would like to make an interactable soft front panel for the instrument or an application where user interaction is required for measurement automation.