10-06-2021 05:08 AM
Hi all,
I have this programme in LabVIEW for Photo-CELIV ( charge extraction by linearly increasing voltage). I a using the Keysight B2912A so using the driver B2900a.
I am getting the error messages:
Agilent B2900 Series.lvlib:Error Query.vi<ERR>
Instrument reports:
-113,"Undefined header"
+0,"No error"
<b>Complete call chain:</b>
Agilent B2900 Series.lvlib:Error Query.vi
Agilent B2900 Series.lvlib:Configure Source.vi
I have looked up the error message indicates the header is syntactically correct, but it is undefined for this specific device. For example, *XYZ is not defined for any device.' but as someone new to LabVIEW I am struggling to fix this.
I have attached the program FYI.
Thanks,
Ellie
10-06-2021 06:07 AM
I'm concerned you have 2 parallel things happening with the same VISA resource. You should be initializing before your loop and not closing until after the loop. You can then do all of the other stuff you want. But you definitely need a data dependency between your two tasks or you could be attempting to send multiple commands at the same time, possibly corrupting the communication and therefore causing your error.
10-06-2021 06:48 AM
Hi, thank you for this. Should I create two subVIs to fix this and then call them in the main VI?
10-06-2021 06:50 AM - edited 10-06-2021 06:54 AM
Hi ELLIE,
as pointed out: don't run serial communication in parallel!
Cleanup your blockdiagram to improve readability. And create two subVIs as indicated by the sequence frames:
Now execution order is purely dictated by DATAFLOW: the communication should be more stable than before…
You could (probably) also remove that frame with your wait function once you created your two subVIs.
What's the point of this (Rube-Goldberg) operation:
Why do you need to create a 2D array containing two rows just to index both rows immediatly after?
(And did you know IndexArray provides more than just one output?)
10-06-2021 08:31 AM
Hi GerdW, that is great- thank you for your insight! Quick question- how did you go from the below picture to just 'Typ'?
THanks again,
Ellie
10-06-2021 08:51 AM - edited 10-06-2021 08:52 AM
Hi Ellie,
@ELLIEg wrote:
how did you go from the below picture to just 'Typ'?
It's the same as with IndexArray: you can change the size of that element/the number of inputs/outputs!
With latest LabVIEW versions you can even hide the event data nodes completely. Read the help for the event structure…
(As I have installed the German LabVIEW version: "Typ" is German for "type".)
10-07-2021 07:19 AM - edited 10-07-2021 07:20 AM
Hi again GerdW,
I have tidied the diagram up and added in the flat sequence structures however am still getting the same error codes:
Agilent B2900 Series.lvlib:Error Query.vi<ERR>
Instrument reports:
-113,"Undefined header"
+0,"No error"
<b>Complete call chain:</b>
Agilent B2900 Series.lvlib:Error Query.vi
Agilent B2900 Series.lvlib:Configure Source.vi
do you have any other ideas on how to fix?
THanks!
Ellie
10-07-2021 08:27 AM
I guess you'd better check what's going into the configure source VI and see if all the input values are valid. Common causes could be an empty string that causes the command to be concatenated in a "strange" way.