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

0 Members and 5 Guests are viewing this topic.

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2800 on: November 04, 2022, 09:01:28 am »
Setting the cut-off voltage via the PC does not work well. For example, when I require a cut-off voltage of 1V, 25.6V is set on the load. It always sets to 25.6 times the set point on the load and I can't do anything about it.

 There is a non-linear error when setting the current with Protocol1. For example, I require 200mA, the load is set to 20mA. But when 1000mA is required, 256mA is set on the load. When 10A is requested, 2.56A is set on the load. Up to 1A, 0.1 times the desired value is set on the load, and from 1A it is 0.256 times. With Protocol2, the error is 10x larger, but the nonlinearity remains.

  The load should also be able to be switched on, off and reset the measured values ​​via the PC. Reset and shutdown work (discharge of the load occurs when any On/Off button is pressed). Switching on the load via PC does not work with any button.


It will probably be necessary to make a Protocol3 definition, but I need to now what to put in it first. Also use Protocol2 is is closer to Protocol3.

In the definition you will find some *dd, *10 *100 *1000
*dd pack the value in a special format that support 2 decimal digits, the other uses a normal binary encoding. If a value jumps (i.e. is non-linear)  it is probably because the wrong one is used.
If I have to make another *dd format for this protocol I need either some documentation or hex dump from the communication (Only the actual lines) combined with what the load displays for a couple of combinations.

You can always adjust the scale factor by modifying the (value) to something like (value/10.0) etc. This is for use with *dd, the *10 *100, etc. are the scale factors.

You want to look for the lines:
#scpiCmd setVoltage tx 3 (value) *dd
#scpiCmd setCurrent tx 2 (value) *dd   This line has separate entries in Protocol1 and Protocol2


I am still in contact with the Chinese store Atorch. I have something to ask them that would help us eliminate the mentioned problems. Well thank you.

If you can get more of the protocol definition it would make it easier. What you got was only how to read the values, not how to set the values.

 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2801 on: November 04, 2022, 02:26:55 pm »
Thanks, I'll try it.
 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2802 on: November 04, 2022, 11:13:25 pm »
So, on your advice, I added a line to ATorchPX100Devices:

#PXVersion 3

This allowed me to connect.

On the seller's website, this upgraded load is called Atorch DL24MP, or DL24M. It logs in via Bluetooth as DL24M, so I put it in the menu as DL24M.

#metadef
; 600Watt discharge power
#idString ATorch,ATorch DL24M,
#name ATorch DL24M
#handle ATDL24M
#sections Protocol2
#replaceText MinCurrent 0.003
#replaceText MinVoltage 2
#replaceText MaxCurrent 40
#replaceText MaxVoltage 200


Then I fixed the voltage input.
I modified the values ​​in the third line and it goes without error:

  ; Possible factors: none, *dd, *10, *100, *1000
#scpiCmd on tx 1 (value)*dd
#scpiCmd setVoltage tx 3 (value*10)
#scpiCmd setTime tx 4 (value)
#scpiCmd reset tx 5 0

I used Protocol2 to set the stream. But it is a compromise solution. It only works when entering whole numbers. Tenths or hundredths of amperes cannot be set. This doesn't work for me even on the DL24M-H with updated software.

When I summarize it, I am 99% satisfied with this state.
Setting voltage and time works, current only in whole numbers. I will turn on the load with the button on the load. Power off and reset works.

If you have time, incorporate it into your program, because after modification with #PXVersion 3, it is not backwards compatible. I have 3 versions of Atorch loads at home, DL24P, DL24M-H with updated software and now also DL24M. I can then try it with all three.
Thank you for cooperation.
Vladimir
 

Offline MiroS

  • Regular Contributor
  • *
  • Posts: 157
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2803 on: November 05, 2022, 07:45:57 am »
Next maybe to add  FFT and THD ?
For slow multimeters - equivalent sampling may do the job
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2804 on: November 05, 2022, 08:05:08 am »
If you have time, incorporate it into your program, because after modification with #PXVersion 3, it is not backwards compatible. I have 3 versions of Atorch loads at home, DL24P, DL24M-H with updated software and now also DL24M. I can then try it with all three.

Try attached definition file, it adds a Protocol3 definition and the DL24M you posted.

To get the current working I either need more documentation or maybe it can be done with some experimenting:
Start TC in debug mode (Use the testControllerDebug.bat file).
Open the "Setup" menu.
Clear the log window.
Set a current value with decimals.
Post the value you entered, the output in the log window and what the load shows.
Repeat for a couple of different current values.
 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2805 on: November 05, 2022, 08:09:55 am »
I will experiment but it will take a while. Well thank you.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2806 on: November 05, 2022, 08:14:19 am »
Next maybe to add  FFT and THD ?
For slow multimeters - equivalent sampling may do the job

FFT is already in TestController, you can find it in the "Popups" menus. It is mostly useful for sub 1Hz frequencies, this can be slow oscillations in a control loop or hourly/daily variations.

equivalent sampling cannot work, the logging time is not precise enough.

If you have a fast sampling bench meter and can save the samples as a CSV file, TC may be able to analyze them.
Documentation: http://lygte-info.dk/project/TestControllerPopupFFTView%20UK.html
 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2807 on: November 06, 2022, 11:57:11 am »
Hi HKJ.
 Using the new "ATorchPX100Devices.txt" it is possible to connect with any of my three loads. DL24P, DL24M-H V2 and the latest DL24M. It's great. My first version of DL24P also works with DL24. I think there is no difference between them. For others, the correct version must be selected so that the settings are correct.

With the help of your advice, I also managed to make the current settings for the DL24M and DL24M-H V2 functional. The attached picture shows the correct setting where it works 100%. I came up with this completely by accident because I noticed that you corrected the voltage setting line after me and corrected the multiplication from the parenthesis to the multiplication after the parenthesis. After this modification, the setting of decimal places in the voltage setting stopped working. If I requested 2.5V, the load set only 2V. She did not accept tithes. Returning the multiplication to the parentheses solved the problem.

This made me wonder if the unresolved current setting would have the same problem. Well, it was enough to write the multiplication in parentheses and the problem was over. According to the settings in the attached image, everything works 100% even with older versions.
 That is, except for one detail. The ON button does not yet work on the DL24M. The load must be turned on manually with the button on the load display. I can't solve that yet.
Please incorporate these changes into your program and I hope this helps someone. I am very satisfied with your TC so far.

Thanks for the help and see you over that beer. I pay.
Vladimir.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2808 on: November 06, 2022, 12:30:02 pm »
That is, except for one detail. The ON button does not yet work on the DL24M. The load must be turned on manually with the button on the load display. I can't solve that yet.
Please incorporate these changes into your program and I hope this helps someone. I am very satisfied with your TC so far.

This line controls on:

#scpiCmd on tx 1 (value) *dd

Maybe you have to get rid of the *dd?

if that doesn't work you can try:
#scpiCmd on tx 1 (value?0xffffff:0)
 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2809 on: November 06, 2022, 04:53:20 pm »
Removing *dd made no change. Insert #scpiCmd on tx 1 (value?0xffffffff:0)
will cause the On button to be completely disabled. It worked before, but incorrectly, because it turned off the load instead of turning it on. We don't want that. So the change is having an impact, but we still need it to kick in.

 The Off button works normally.
 

Offline vladobac

  • Contributor
  • Posts: 43
  • Country: sk
Re: Program that can log from many multimeters.
« Reply #2810 on: November 06, 2022, 05:39:51 pm »
 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2811 on: November 07, 2022, 08:33:22 am »
Hi HKJ,

Firstly, thanks for writing and sharing the Test Controller.
I am trying to communicate with your program the UD24 device from ATORCH.
As it is not listed I selected ATORCH USB and it looks like some communication is taking place. The "Current values" tab shows the parameters I am interested in, but there is a problem reading the values.
The "Commands" tab still displays -> ATUSB: Rx as numbers <No data (timeout?)>

What should I check/change in order to be able to read the values in real time?
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2812 on: November 07, 2022, 09:02:32 am »
I am trying to communicate with your program the UD24 device from ATORCH.
As it is not listed I selected ATORCH USB and it looks like some communication is taking place. The "Current values" tab shows the parameters I am interested in, but there is a problem reading the values.
The "Commands" tab still displays -> ATUSB: Rx as numbers <No data (timeout?)>

What should I check/change in order to be able to read the values in real time?

Atorch has many different protocols, most loads uses a variation of the PX100 (There are 3 in the beta of TC, 2 in older) and other devices uses another protocol with a ID of the device type.
You can find the definition in the files: "ATorchDevices.txt" and  "ATorchPX100Devices.txt"

I would recommend starting TC in debug mode using the "TestControllerDebug.bat" file and then try the different devices (Look in the files for names, the are after the #name tag) and see if any of them answers.
If you get a answer (RX lines) but nothing works, post it here and I will take a look.

The best solution is to find a document describing the protocol, but it may be possible to work it out without that.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2813 on: November 07, 2022, 09:13:04 am »
Removing *dd made no change. Insert #scpiCmd on tx 1 (value?0xffffffff:0)
will cause the On button to be completely disabled. It worked before, but incorrectly, because it turned off the load instead of turning it on. We don't want that. So the change is having an impact, but we still need it to kick in.

I put too many ff in the message, there is only supposed to be six.
#scpiCmd on tx 1 (value?0xffffff:0)
this will send all bits as one and turn the load on if it checks on a specific bit position, but not if it checks for a specific value.

#scpiCmd on tx 1 (value?0x000001:0)
is similar to #scpiCmd on tx 1 (value)
that sends a 1

#scpiCmd on tx 1 (value?0x000100:0)
is similar to #scpiCmd on tx 1 (value)  *dd


You can try other values, using a 1-2-4-8 sequence in the different positions will try all single bit combination, but is a lot of work and do not check if it want a a specific number (That is more and 16 million combinations).
#scpiCmd on tx 1 (value?0x000002:0)
#scpiCmd on tx 1 (value?0x000004:0)
#scpiCmd on tx 1 (value?0x000008:0)
#scpiCmd on tx 1 (value?0x000010:0)
#scpiCmd on tx 1 (value?0x000020:0)
etc.
Some documentation would be much better.

Best regards
Henrik K. Jensen

None of the following will help you:

You are correct.
 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2814 on: November 07, 2022, 09:40:26 am »
I don't know if I understood correctly, in debug mode it is currently as below.
Then RX responds in the same way over and over again

Code: [Select]
;; jSerialComm version: 2.9.1
;; Start thread for: COM59 - ATorch USB
;; Start thread for: COM1
;; Start thread for: COM2
;; Start thread for: COM60
;; Stopping thread for: COM59 - ATorch USB
;; COM59: Close
;; Stopping thread for: COM60
;; COM60: Close
;; COM1: Set params: 9600
;; COM2: Set params: 9600
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
;; COM1: Tx: <*IDN?.> 2A 49 44 4E 3F 0A
;; COM2: Tx: <*IDN?.> 2A 49 44 4E 3F 0A
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
;; COM1: Rx: timeout
;; COM2: Rx: timeout
;; COM1: Tx: <*IDN?.> 2A 49 44 4E 3F 0A
;; COM2: Tx: <*IDN?.> 2A 49 44 4E 3F 0A
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 13 00 AD 09 2B 14 00 00 00 00 00 00 00 33
;; COM1: Rx: timeout
;; Stopping thread for: COM1
;; COM1: Close
;; COM2: Rx: timeout
;; Stopping thread for: COM2
;; COM2: Close
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
;; COM59: Rx: FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2815 on: November 07, 2022, 09:58:13 am »
I don't know if I understood correctly, in debug mode it is currently as below.
Then RX responds in the same way over and over again

That is a very useful result, but there is too much clutter. This is because you have check marked "Scan serial ports", that makes the display more complicated to read when using debug mode.

The answer from the device is:
FF 55 01 03 00 02 07 00 00 00 01 4B D1 00 00 00 45 00 00 00 00 00 14 00 AD 09 2B 14 00 00 00 00 00 00 00 3C
And that is the ATorch USB interface.

This is supposed to work, try selecting the "Current value" page shortly when debug is on.

 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2816 on: November 07, 2022, 10:05:09 am »
Nothing appears in the mentioned page.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2817 on: November 07, 2022, 10:39:20 am »
Nothing appears in the mentioned page.

That is not right, but I tried the log messages you posted and found out the checksum did not work.

Go into the "ATorchDevice.txt" file and find:

#driver ATorch
#readingDelay 5

#checksum SUM44

Change the last line to

#checksum none


Save file and restart.
 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2818 on: November 07, 2022, 10:51:17 am »
Bingo, it looks like the values have started to display  :)
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2819 on: November 07, 2022, 11:06:58 am »
Bingo, it looks like the values have started to display  :)

Good. In normal usage you do not want to run it in debug mode. and you can checkmark "Scan serial ports" again if you need it (It is mostly for homemade Arduino devices).
 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2820 on: November 07, 2022, 11:40:17 am »
By the way, some tabs are inactive with me (Chart, Histogram, Range). What does this depend on?
What should I do to log the change in e.g. current values over time?

I think I already see -> Log button :)

Thank you for your help so far.
« Last Edit: November 07, 2022, 11:42:31 am by Arczi »
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2821 on: November 07, 2022, 12:35:50 pm »
By the way, some tabs are inactive with me (Chart, Histogram, Range). What does this depend on?
What should I do to log the change in e.g. current values over time?

I think I already see -> Log button :)

You found it and that also enabled the other tabs (You either need to log some data or load a CSV file to enable these tabs).
 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2822 on: November 09, 2022, 09:41:30 am »
You found it and that also enabled the other tabs (You either need to log some data or load a CSV file to enable these tabs).
I will ask about one more aspect.

Currently, readings of voltage and current values are limited to two decimal places but UD24 displays data to 5 decimal places.
Can the accuracy of the reading be easily extended?
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 2904
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2823 on: November 09, 2022, 09:49:41 am »
Currently, readings of voltage and current values are limited to two decimal places but UD24 displays data to 5 decimal places.
Can the accuracy of the reading be easily extended?

Yes, find this section in the file:
#metaSection USB_DEVICE
#subDriver USB
#value Voltage V D2
#value Current A D2
#value Capacity Ah D3
#value Energy Wh D2
#value D_Minus V D2
#value D_Plus V D2
#value Power W D3

The D2/D3 is the format, using D5 will show 5 decimal places.
Please post your final settings and I will update the original definition.

You can also directly in the window override the build-in settings by right-clicking and select format.

 

Offline Arczi

  • Newbie
  • Posts: 8
  • Country: pl
Re: Program that can log from many multimeters.
« Reply #2824 on: November 09, 2022, 09:59:27 am »
Four digits after the decimal point is sufficient for me. File attached.
Thank you.

Edit
It appears that changing the settings did not make the TC read the data more accurately.
Readings are displayed to four decimal places but the last two digits are always zeros!
« Last Edit: November 09, 2022, 10:56:29 am by Arczi »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf