05-20-2023 03:24 PM
You can run initialize as much as you like, as long as its reset input is set to false. If you run it with reset set to true, it will reconfigure that terminal for 4WR measurement.
Again, I don't have a way to verify this with a 4065, but I think that should work.
05-20-2023 08:05 PM - edited 05-20-2023 08:11 PM
Chris:
Well you can bet that's what I'm going to be looking at after I made that quick-n-dirty resistance check and saw 100K. I could swear I'm not hitting the reset, but I could be wrong; maybe I am. Needless to say though, a fluke is going across those CurrentMeter terminals, next -- I want so see if I see the source voltage switching in and out -- that'll tell the tale. If there is a way to make it look like a current meter, always, I want to find it. I've been working out in my head how to make a sequencer to handle the shunt relay and CurrentMeter and Voltmeter so that I get the required two measurements, correctly. It'd be great if I can cause CurrentMeter to look like a current meter and stay a current meter, throughout. (Dumb me, I always expected a current meter to look like a current meter. But no...seems NI was "protecting" me. Yeesh! And I'm finding it difficult to find the answer to what, as I said, would've been an already asked and answered question, from years back, so much so that it'd be covered in even these online "manuals.")
Thanks, Chris!
Incidentally, if it works, you get the solution checkmark. But you're going to have to sit tight for a couple days I'm afraid. ...busy busy.
05-20-2023 09:07 PM - edited 05-20-2023 09:20 PM
Studying the niDMM Initialize.vi, based on what you've said, Chris, I need not change anything between the initial call and subsequent calls, as long as I set reset false and leave it there. The initialize subvi initializes to the needed state and then thereafter would just redundantly do this. (So I won't have to have more than one vi (and the bookkeeping of such) for my current measurement needs.)
But how should I handle niDMM Close.vi? It'd seem I shouldn't close until I am completely finished with CurrentMeter, lest it forget it's a current meter and pop in a high impedance. Therefore, I do need bookkeeping in this operation. ...must carry the handle around, too.
One thing that happens in the sequence, should a step fail its test, the flow is sent to a cleanup -- I'll need to close that CurrentMeter handle lest memory leak. In closing it it'll need to be a valid handle. ...bookkeeping overhead. That's the price that must be paid I guess to keep CurrentMeter at a low impedance input and not revert on me constantly.
05-28-2023 12:04 AM
Ok Chris, you get the solution. It was all about the reset defaulted to True in the initialize vi.
Here's what I found. There must be a dummy read, first, and then keep the reset False for the initialize vi. Granted I have not sat on the point with an oscilloscope, but I did monitor the voltage drop using a 2V source and 1K load through CurrentMeter, and throughout I saw about a 10mV drop. It is possible there is a spike, but I don't think so -- it looks like it remains a constant low impedance. I even found that the low impedance remains until the PC is restarted -- only then does it revert.
I did not go to the trouble of calculating the high impedance, but I think what I did suffices to say it's around 100K.
05-30-2023 02:10 PM
> Here's what I found. There must be a dummy read, first, and then keep the reset False for the initialize vi.
To be more precise, you want to configure the session and then commit the configuration to hardware by calling niDMM Commit.vi. What you observe is the fact that when you do a Read, the driver will commit, initiate, and fetch for you but it's overkill.
I would also suggest, if your application permits it without major rearchitecting, to keep your session open and rather than initializing multiple times.