Rapid scanning of output voltages. - Page 1
Forum section: electronics / projects

author: nordic_staffas
author_rank: Newbie
timestamp: July 12, 2021, 12:44:02 pm
content: What equipment would you recommend to use to rapidly scan through a series of output voltages.Background. I want to control a piece of lab equipment that can take as input -10 -> 10 V on two channels. I want to be able to scan through these outputs as rapidly as possible. I.e (ch1, ch1): (10V, 10V) -> (10V, 9V) -> ... -> (9V, 10V) -> ... -> (-10V, -10V). I also want to be able to "wait" a variable amount of time between switching between outputs.I currently use a T7 labjack ( T7https://labjack.com/products/t7) with a tic-dac add on (https://labjack.com/accessories/ljtick-dac) and I'm reasonably happy with the scanning rate and the fact that it has a python wrapper is incredibly useful. I can scan roughly at a rate of 1000 HZ (which is at the limit of the labjack with a tic-dac add on) but my project right now is limited by this speed and I would like to be able go past this.Does anyone have any recommendations of some other commercial system?

author: tonyh88
author_rank: Regular Contributor
timestamp: July 14, 2021, 01:13:55 am
content: really depends on how fast you want to go, what precision you need on your timing delay and what output resolution you require.Do you need both of your voltage simultaneously? or are you ok with a multiplexed solution?Basically all you need is a multi channel DAC with a fast settling time to fit your requirement.If you want off the shelf instrumentation hardware look for DAQ with analog outputs. That is what your Labjack is and there are a lot of companies that manufacture those. They usually come with API and are trivial to get going.If you want to design a solution yourself look for DAC IC. You can control those with an MCU or if you need absolute timing precision you could use an FPGA.

author: tonyh88
author_rank: Regular Contributor
timestamp: July 14, 2021, 01:33:41 am
content: Here are some DAQ manufacturers:https://www.mccdaq.com/data-acquisition/analog-outputhttps://www.ni.com/en-ca/shop/hardware/products/c-series-voltage-output-module.htmlhttps://www.advantech.com/products/data-acquisition-(daq)-communication/sub_1-2mljzahttps://www.keysight.com/ca/en/products/modular/data-acquisition-daq.htmlhttps://www.monodaq.com/All these industrial DAQ are usually expensive but they work well and are reliable.If this is just for hobby project I'm sure you can find some Arduino derivative or "hobbyist" DAC hardware that would suit your needs

author: nordic_staffas
author_rank: Newbie
timestamp: July 14, 2021, 08:18:40 am
content: I practically want to be able to scan as fast as possible and I need to set both output voltages simultaneously.The precision on the timing delay is not very sensitive but the precision on the output voltages are quite crucial.Thank you for the suggestions. I'll look into them.

author: Kleinstein
author_rank: Super Contributor
timestamp: July 14, 2021, 09:28:01 am
content: With only 2 channels (or a limited number), one could just use 2 separate voltmeters in parallel. It probably does not get much faster than a 2 channel DSO.

author: nfmax
author_rank: Super Contributor
timestamp: July 14, 2021, 09:46:13 am
content: How about a 2-channel arbitrary waveform generator? Many of these can step through a list of segments (which can be DC voltages) controlled by a trigger input. The DC accuracy may be problematic, though

author: Berni
author_rank: Super Contributor
timestamp: July 14, 2021, 11:00:51 am
content: You need to give some numbers of what the performance you want is. Like how accurate must it be in %, how many bits of resolution, how many samples per second you want to get.Also once you get to such sub millisecond timings you will probably have to abandon Windows/Linux and Python. These generic OSes for PCs are not designed to offer such real time scheduling performance. Even just Pythons garbage collection alone might kill your timing determinism. You need the device itself to sense an edge on the signal and move to the next sample to get it to reliably work any faster.An arbitrary signal generator might be able to generate such a waveform and use a trigger input port to set it off. But this is going to be a pretty expensive solution (a lot of 'cheap' ones likely won't do this).The fastest possible solution is to get a parallel input DAC chip and directly connect it to some sort of memory chip like SRAM or FIFO buffer chip. Then use a pulse to clock the next sample into the DAC. This should get you easily >30M samples per second with a latency of moving to the next sample in about 100 nanoseconds. With some more work and more expensive high performance chips you can push this to >250M samples per second. If you don't want to roll your own board then you can buy FPGA development boards that include high speed ADCs/DACs

author: tonyh88
author_rank: Regular Contributor
timestamp: July 15, 2021, 01:17:20 am
content: As fast as possible is very subjective in electronic design. I'm sure you don't intend to switch at 1ps intervals right?If you can give some rough requirements you might get some better answer:1. Output resolution. Are we talking 10bits or 20bits?2. Settling time,1ps or 1ms?A dual channel DAC with settling time in the nanosecond range even if it isn't parallel could essentially appear to be simultaneous if you are working in the ms range since it is several orders of magnitude faster.If you need super high speeds you will need to venture in FPGA territoryBasically what I'm trying to say is we are shooting in the dark at the moment so we need more info

author: NiHaoMike
author_rank: Super Contributor
timestamp: July 15, 2021, 02:25:15 am
content: There are $5 fl2k USB 3.0 DACs, only 8 bit but that can be increased with dithering because the sample rate is very high.https://osmocom.org/projects/osmo-fl2k/wiki

author: Berni
author_rank: Super Contributor
timestamp: July 15, 2021, 05:27:00 am
content: Quote from: NiHaoMike on July 15, 2021, 02:25:15 amThat is a pretty cool solution for getting fast analog output out of a PC on the cheap. I will keep this in mind.