Hello,
We need to expand and alter the transient recorder possibilities for the PCSU1000 we use in our test-environment.
Is it possible to get the programming code for the transient recorder program?
Please reply,
best regards,
Christian
Hello,
We need to expand and alter the transient recorder possibilities for the PCSU1000 we use in our test-environment.
Is it possible to get the programming code for the transient recorder program?
Please reply,
best regards,
Christian
[quote]Is it possible to get the programming code for the transient recorder program?[/quote]Sorry, for copyright reasons we never supply source code.
Ok, no problem.
Then could you explain how to get one continuous stream of data from the PCSU1000 oscilloscope. It seems it’s only possible to get 4096 bytes of data at the time “Dataready” is true.
The sample rate is included in this “snapshot” of 4K of data from the input signal. But the next data block does not fit to the previous data block.
To make one continuous stream of measured data from the signal on the input of the scope seems to be more complicated.
Could you help me out how to approach this challenge to get one stream of data from the PCSU1000 scope?
Best regards,
Christian
Indeed, the continuous data access is not possible via the DLL.
Yes, you can use the PCSU1000D.DLL to get data from the oscilloscope in groups of 4096 bytes.
Selecting the highest sample rate using the DLL function Time(14), you’ll get the whole data buffer filled in about 82us.
You can use the data as ‘one sample’ in your application to get continuous data stream.
In this case the final sampling interval will be 82us plus the USB data transfer time.
So actually 4096 bytes (data) + 3 bytes (sample rate, input level, gnd level) = 4099 bytes ready in about 82us (=1/(50000000/4099)) at sample rate 50MS/s ( = Time/div setting at 14 = 2us).
That means that the transfer rate should be 50 MBytes/s ((1/0,000082)*4099) to be transfered via the USB link. The scope has USB 2.0 ; the maximum speed of USB2.0 is 60 MBytes/s that should fit.
This is still theory.
What I see in practice:
I made a routine to read databuffer1 at high speed (every 10us) at Time/div setting = 14: the data in databuffer1 changes at a much slower rate only every 62.5 milliseconds!
This is really too slow. It seems the scope is not ready in this 62,5 milliseconds. What do you suggest to improve the speed of the data collection from the PCSU1000?
Best Regards,
Christian
The PCSU1000 is using Full Speed USB communication. The max speed is only 12Mbits/second.
Transferring 2*4096 bytes of data takes in theory about 5.5ms.
[quote]I made a routine to read databuffer1 at high speed (every 10us) at Time/div setting = 14: the data in databuffer1 changes at a much slower rate only every 62.5 milliseconds!
This is really too slow. It seems the scope is not ready in this 62,5 milliseconds. [/quote]It seems there is a lot of “overhead” in the data transfer.
I’m sorry, no solution to speed it up.
Hello,
The dataready Boolean also changes at a the slow speed on around 62 ms so delay is in PCSU1000 or in DLL.
My suggestion to increase transfer speed is to build an extra command into the DLL that only sends the first 4 bytes (Sample Rate, Input level, GND-Level and First Data Byte) of the databuffer instead of all 4099 bytes. Maybe an extra DataReady boolean for this short data version. This way it should become possible to poll the PCSU1000 at a much higher speed.
Could you consider my suggestion.
We try to build a new product that includes the PCSU1000 for data collection purpose and we need higher performance than 62ms.
Please reply,
Best Regards,
Christian
[quote]My suggestion to increase transfer speed is to build an extra command into the DLL that only sends the first 4 bytes (Sample Rate, Input level, GND-Level and First Data Byte) of the databuffer instead of all 4099 bytes. Maybe an extra DataReady boolean for this short data version. This way it should become possible to poll the PCSU1000 at a much higher speed.
Could you consider my suggestion.[/quote]Yes, the feature you suggested will be taken in consideration to be added to the software.
Ok thanks,
Please let me know when this feature is available in the DLL.
Best Regards,
Christian
The feasibility of this feature will be checked soon.
You’ll be informed about the results.
I’m sorry to inform the suggested modification is too large to implement into the software and firmware.
Normally only small ‘custom’ modifications can be done.