07-15-2010 03:51 AM
hello everyone , recently I am using the Labview 2009
I am running the program LEM D6000 single phase.vi
but in the Error Query.vi(inside D6000 Config Measurement block) there is always a mistake, Error 1300,, because after the VISA read , there comes in a number and compared to those constant number, first row and first column is 16, which somtimes is smaller than the number comes in , so it gives the comparison result as T, Error happens
so I changed 16 to 64, no more errors comes up
So I wonder what is the real function of Error Query is , and why shall I change the constant number to avoid the errors, although I make it work, but I want to know why.
Thank you very much
07-15-2010 07:38 AM
It's checking the Event Status Register and by ANDing it with 16, it is checking the status of bit 4. So, when you change the number, that bit is no longer checked and you are ignoring it. The instrument is setting an error so you would really want to investigate the cause.
07-15-2010 07:50 AM
i am really new in this field , could you please explain it a little detailed? and you said I am ignoring it ?! but that's the error locates, after I changed it , the program can run normally, so would you please give me some suggetions?
07-15-2010 09:44 AM
The error conditions and the Event Status Register should be documented in the instrument manual. Not sure where to start with the basics. There are individual bits in the ESR and the instrument will set specific ones depending on the actual error that the instrument detects. Are you familiar with Boolean math? Bit number 4 reflects a specific error. If you want to check to see if the bit is set, you would AND it with decimal 16 or binary 10000. If bit 1 is set, the result of the AND is 1. You decided to AND it with 64 (a check of bit 5) and by doing that, you are no longer checking to see if bit 4 is set. That is ignoring the error. If you want to ignore any errors, don't run the error query program. Changing the code is just plain wrong.
07-21-2010 03:09 AM
I got your meaning that I just ignored the error after changing it, but after that I can run the program correctly and readout those data I need, do u know why? If I keep it 16, what measure should I take to make the program work?
07-21-2010 03:16 AM
and here what does the 1300 mean?