Author Topic: Program that can log from many multimeters.  (Read 489395 times)

GingGangGooly, HKJ and 6 Guests are viewing this topic.

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1525 on: March 07, 2021, 01:57:09 pm »
Ok -- figured out the load --

Please post the lines you used, then I can include it in the next release.

now for the E3640A power supply...

With the PS on and a serial connection select "Load devices" page and right click on the combobox selecting "Create new SCPI device definition"
This will help you establish a connection.

Then look in a existing power supply definition (Like TTiQL355P.txt). You will have to mostly duplicate that definition to you definition, but replacing all SCPI commands to the E3640A commands.

By using #meta & #metadef it is possible to support the line of E364xA supplies in on definition, but that is more advanced.
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1526 on: March 07, 2021, 10:34:06 pm »
I added the following to the Korad 103.txt file

#metadef
#idString MP710258
#name Multicomp Pro MP710258
#handle MP710258
#replaceText MaxPower 150

#metadef
#idString MP710259
#name MultiComp Pro MP710259
#handle MP710259
#replaceText MaxPower 300

worked for the load. 

I'll work on the supply tomorrow evening...
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1527 on: March 08, 2021, 02:32:51 pm »
I added the following to the Korad 103.txt file

Thanks, they will be included in the next release.
 

Offline Bad_Driver

  • Frequent Contributor
  • **
  • Posts: 364
  • Country: de
Re: Program that can log from many multimeters.
« Reply #1528 on: March 09, 2021, 09:52:19 am »
Hi HKJ

may be there is an answer in this thread but I wasn't able to find it.
I ask for your advice. I own a UNi-T UT181a multi meter - a very nice, feature loaded meter with a beautiful OLED display
and it seems to be a nice, much faster "imitation" of the popular but much more expensive Fluke 289.

Unfortunately the with the meter delivered (optical insulated) USB connector is proprietary, no serial connection possible.
But there is a OpenSource command line program that can be used (the very simple Uni-T software is only a visualizing tool)

C:\Temp\Uni-T UT181a>ut181a-cli read once
Mode: VDC [] [AUTO]
Range: -6...6 V
0.0004 VDC
FAST: -0.029948657 VDC

(manual mode switch)

C:\Temp\Uni-T UT181a>ut181a-cli read once
Mode: mVAC [] [AUTO]
Range: 0...60 mV
48.564 mVAC
FAST: 49.04536 mVAC


Is there a way to use such a command line program with TC???  Thanks in advance!
« Last Edit: March 09, 2021, 01:35:54 pm by Bad_Driver »
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1529 on: March 09, 2021, 07:13:02 pm »
Is there a way to use such a command line program with TC???  Thanks in advance!

Not at the current time, I could fairly easy implement it, but I wonder how useful it would be. The maximum sample rate will be fairly low and how many devices would it be useful for?
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1530 on: March 09, 2021, 08:28:11 pm »
for #askValues I have MEAS:VOLT?; MEAS:CURR?

The causes the E3640A to issue error 410 -- The second meas is performed while there is still unread data in the output buffer.

How do I control range for the supply (it has a low and high range)

suggestions?
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1531 on: March 09, 2021, 08:37:57 pm »
for #askValues I have MEAS:VOLT?; MEAS:CURR?

The causes the E3640A to issue error 410 -- The second meas is performed while there is still unread data in the output buffer.

You might try a [*OPC] or [200], they are both delays and the first version is the preferred type if the device supports it.
But I wonder if that is the problem, TestController will read the answer after each ?, i.e. the output buffer is supposed to be empty.

You can test the commands from the command line in TestController.


How do I control range for the supply (it has a low and high range)

suggestions?

A combobox would probably be a good solution, you cannot specify separate limits for the two ranges, except if you make double set of number fields and uses selector to change between them.
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1532 on: March 10, 2021, 02:31:19 am »
Yeah -- MEAS:VOLT?; MEAS:CURR? does not return both values when issued on the command line in TestCOntroller
It produces error 101 on the device. (Error 101: invalid character - An invalid character was found in the command string. You may have inserted a character such as #, $, or % in the command keyword or within a parameter)

If there is no space after the semicolon, it produces error 101 too.

They work fine individually

The manual says;

If you send two query commands without reading the response from the first, and then attempt to read the second response, you may receive some data from the first response followed by the complete second response. To avoid this, do not send a query command without reading the response. When you cannot avoid this situation, send a device clear before sending the second query command.
« Last Edit: March 10, 2021, 02:49:30 am by ian.ameline »
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1533 on: March 10, 2021, 02:53:05 am »
MEAS:VOLT?; *CLS

Also generates error 101. Both work individually.

looks like queries with multiple commands separated by ; just does not work on this device.
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1534 on: March 10, 2021, 03:08:33 am »
Hmmm -- sending meas:volt; *cls works when using the Agilent connection expert. But not from TestController. In the agilent utility querying both voltage and current on the same command produces error 113. Undefined header - A command was received that is not valid for this power supply. You may have misspelled the command or it may not be a valid command. If you are using the short form of the command, remember that it may contain up to four letters.

(That's with a space after the semicolon - without the space gives errors 410 and 113 (from the agilent utility))

using testController, senting "MEAS:VOLT?;MEAS:CURR?" returns the voltage, but not the current, and sets error 101.  (I had cleared errors before trying this)

Invoking the same command with a space after the semicolon gave no error, but just returned the current. Invoking it a second time returns the voltage and sets an error 101. Next command returns just the voltage.

So issueing "meas:volt?; meas:curr?" (in TestController) alternately returns voltage, then current, then voltage, then current and so on -- and each time it returns the current, it also sets error 101.

Weird...

Looks like multiple queries on the same line just do not work on this instrument - at all.

(Tried reversing current and voltage order in the command -- same behaviour)
« Last Edit: March 10, 2021, 03:10:32 am by ian.ameline »
 

Offline ian.ameline

  • Regular Contributor
  • *
  • Posts: 73
  • Country: ca
Re: Program that can log from many multimeters.
« Reply #1535 on: March 10, 2021, 04:18:51 am »
Ok -- one last try -- ":meas:volt?;[2];:MEAS:CURR?" works.

 

Offline perdrix

  • Frequent Contributor
  • **
  • Posts: 640
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #1536 on: March 10, 2021, 11:46:34 am »
Hello,

I tried to write a definition-file for a Prema 6048.
:
Can somebody help me with this? Thanks!

I thought 6048 could raise an SRQ on completion of a reading, can this not be used as the means to tell the programme to get the now available data?

David
 

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1537 on: March 10, 2021, 12:07:27 pm »
PX100

Working with PX100 with an USB to TTL device, FT232BL,
Working fine, no dropouts.
In the setup Popup, starts OK, with good values,
when setting current, voltage or time,
the values are incorrect.
after inserting ":updatedelayed: 0.5" for each cmdSetup it is working fine.
for example cmdSetup number Voltage:

#cmdSetup number Voltage
:read: setVoltage?
:write: setVoltage
:updatedelayed: 0.5
V MinVoltage MaxVoltage
:tip: Set Cut-Off voltage

Made an personal modification to the Accu discharge script as follows:

#logcmds 0
; Battery discharge test
=var endVoltage=6
=var endVoltageLoad = endVoltage-0.05
=var testCurrent=1
=var stepTime=1
; --------------------------------------------------------------
="Discharge with "+testCurrent+"A to "+endVoltage+"V";
=var load=getDevice("Load")
=setVoltage(load,endVoltageLoad)
=setCurrent(load,testCurrent)
=setOn(load,1);
#delay 1
#log (stepTime)
#haslogged
#wait readVoltage(load)>endVoltage
=setOn(load,0);
#haslogged
#log 0
="Discharge terminated"

With the same endVoltage setting for Testcontroller and the load,
load stops as first, voltage rises and Testcontroller does not stop.
With endVoltage for the load a little lower as the one for Testcontroller,
Testcontroller is in the lead for making the stop dicission.
When there went something wrong, the load aborts a fraction later,
so no harm for battery's.

Question: I like to add a line at start of the script, for resetting the load,
so the capacity and energy starts at zero. Who can explain me? Thanks.


Attached my version of AtorchPX100Devices and my own Discharge script.

Edit: Tested modified AtorchPX100Devices.txt with DL24, works OK.
AccuPX100.txt works also with DL24
DL24 gives dropouts in readings, so script is not completed, aborted by 0 volt reading.
Like to start with Math function to filter out the misreadings,
but was not able yet to figure that out,
when sombody can point me the right way to do that, Thanks.
« Last Edit: March 10, 2021, 12:36:19 pm by Pukker »
 

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1538 on: March 10, 2021, 07:41:43 pm »
Error DL24

When running Testcontroller in Debug mode,with only DL24 connected,
I get Java errors.
Program starts, automatic connect with DL24, nothing done,
after about 20 seconds it begins with Java errors.
It keeps repeating, I can work with te program, everything looks normal,
error keeps repeating. Is this probably the case for the dropout errors?
See attached picture for the error.

Working with PX100 no Java errors.

Tested with the original device file and with my modified file. Both the same.

I have read elsewhere DL24 is sending data in a high frequency,
don't know if that has anything to do with that.
Don't have programming skills.


 

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1539 on: March 10, 2021, 09:22:53 pm »

Using same DMM to do both measurement will cost a bit of precision due to cable resistance, the best solution for battery testing is a electronic load with remote sense. TC supports a couple of models, even a cheap ATorch model, but I do not believe it has remote sense, you can get around that by using the Fluke directly over the battery terminals and only use the current from the load.

Latest DL24 models have 4-wire measurement, so cable resistance is there not a problem.
Beware some sellers on Aliexpress selling the old one, some say we send  old and new randomly.
DL24 has an logging problem yet. (dropouts)
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1540 on: March 11, 2021, 01:38:01 pm »
Ok -- one last try -- ":meas:volt?;[2];:MEAS:CURR?" works.

Looks like the PS is a bit slow to update its own status.
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1541 on: March 11, 2021, 01:41:11 pm »
Hello,

I tried to write a definition-file for a Prema 6048.
:
Can somebody help me with this? Thanks!
I thought 6048 could raise an SRQ on completion of a reading, can this not be used as the means to tell the programme to get the now available data?

TestController do not use the SRQ signal, it expect a protocol that will answer to requests (mostly). Any command ending in ? is a request and will wait for an answer.
Some protocols has a internal layer that will collect transmissions from the device and use them when answering a request, but these protocols do usually not include sending data to the device.
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1542 on: March 11, 2021, 01:59:10 pm »
after inserting ":updatedelayed: 0.5" for each cmdSetup it is working fine.

I have included this in the standard device file.

Made an personal modification to the Accu discharge script as follows:

Good modification, but it will not work on all loads, that is the reason I do not include it in the standard scripts.

Question: I like to add a line at start of the script, for resetting the load,
so the capacity and energy starts at zero. Who can explain me? Thanks.

This is load depend, if a reset command is defined in the definition you can usually use that. The easiest way is probably to press the button on the stup menu, they right click in the log window and select: "Generate scripts, Mode & setup, In log window", it will show the commands in the log window and you can copy the part you need.



Like to start with Math function to filter out the misreadings,
but was not able yet to figure that out,
when sombody can point me the right way to do that, Thanks.

This depends on what type of misreads you want to filter, but for a starter:
Select the "Math" page and press the "Add button"
In the "Source formula" column type the name of the column you want filtered.
Try some different values in the "Type" column, you may also need to put a number in the Samples column (10 is a good starting point).
Secure there is a checkmark in the "Enabled" column.
The "Unit" column is optional, it will not affect the calculations, only the display.

There is more help to the math page here: https://lygte-info.dk/project/TestControllerMath%20UK.html

 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1543 on: March 11, 2021, 02:03:28 pm »
Error DL24

When running Testcontroller in Debug mode,with only DL24 connected,
I get Java errors.

The problem is that TestController cannot keep up with the data rate and it is not all the surprising when you are using debug mode.
It has a high priority task that collects the data from the device and stuff it into a queue, then there is a lower priority task that takes it out, process it and print the debug stuff, this task cannot keep up.

I will mostly fix it by removing queued entries, that I do not have time to process.
 

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1544 on: March 13, 2021, 07:54:18 am »
Just one stupid question,

Made filters in Math.
In my script the are as follows:

#Math VoltageFilter "V" DropOutFilter 10 ATDL24.Voltage
#Math CurrentFilter "A" DropOutFilter 10 ATDL24.Current
#Math TempFilter "°C" DropOutFilter 10 ATDL24.Temperature

In the Table the value is filtered fine.

Load is turned of by the following sentence:

#wait ATDL24.Voltage>endVoltage

How do I replace "ATDL24.Voltage" with the filtered value?
Don't know how to call the filtered value instead of the original value
What is it named?
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1545 on: March 13, 2021, 08:10:37 am »
How do I replace "ATDL24.Voltage" with the filtered value?
Don't know how to call the filtered value instead of the original value
What is it named?

Math values are prefixed with "Math.", this means the names are:

Math.VoltageFilter
Math.CurrentFilter
Math.TempFilter
 

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1546 on: March 13, 2021, 04:11:23 pm »
Sorry last try, I don't get it working.

Math is working fine.
VoltageFilter "V" DropOutFilter 10 ATDL24.Voltage
In the Table page Math.VoltageFilter is correct value when ATDL24.Voltage has dropout.

But then I want to use Math.VoltageFinder value in my script in the Commands page,
I do not get that working

In my script:

=var StoreValue
=globalvar Math.VoltageFilter

=StoreValue=Math.VoltageFilter  ->  StoreValue stays empty
or
=Math.VoltageFilter   ->   No value return.
while program is logging.
so
=ATDL24.Voltage returns a good value.

Sorry for asking again, I like to get it working, usefull for me. Thanks.
 

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1547 on: March 13, 2021, 04:20:54 pm »
Sorry last try, I don't get it working.

Math is working fine.
VoltageFilter "V" DropOutFilter 10 ATDL24.Voltage
In the Table page Math.VoltageFilter is correct value when ATDL24.Voltage has dropout.

But then I want to use Math.VoltageFinder value in my script in the Commands page,
I do not get that working

In my script:

=var StoreValue
=globalvar Math.VoltageFilter

=StoreValue=Math.VoltageFilter  ->  StoreValue stays empty
or
=Math.VoltageFilter   ->   No value return.
while program is logging.
so
=ATDL24.Voltage returns a good value.

Sorry for asking again, I like to get it working, usefull for me. Thanks.

I forgot that I do not create the Math. columns as general variables. You can still access them using the table functions https://lygte-info.dk/project/TestControllerFunctions%20UK.html#Table_related_functions

Something like: table(tableRows()-1,"Math.VoltageFilter")
The reason I write "like" is because I have not tested it.

« Last Edit: March 13, 2021, 04:22:55 pm by HKJ »
 
The following users thanked this post: Pukker

Online HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #1548 on: March 13, 2021, 04:27:19 pm »
Another idea:
You do not need the filter to avoid stopping due to a sample or two missing, you could also use the table functions:

tableCalcMax("Voltage",tableRows()-4)

 
The following users thanked this post: Pukker

Offline Pukker

  • Regular Contributor
  • *
  • Posts: 148
  • Country: nl
Re: Program that can log from many multimeters.
« Reply #1549 on: March 13, 2021, 04:45:58 pm »
Another idea:
You do not need the filter to avoid stopping due to a sample or two missing, you could also use the table functions:

tableCalcMax("Voltage",tableRows()-4)

Yes, that sounds like an good idea, I gonna try ASAP.
Thanks for you quick and detailed reply.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf