Need help regulating voltages higher than arduino can support.

Hi all,

I'm working on a project that would allow me to do away with a cable to test equipment that rely on a pressure sensor simulator (transmitter). I know the pressure sensor works as a resistor. The current equipment I have relies on a receiver that sends out 24.15v. When the circuit is closed, an idle state is indicated by 21.27v in the circuit. For simulation purposes, only two other states are necessary. 20.6v shows listening state, and drops to 20.45 indicate binary communication "pulses". I plan to use unos paired with xbees to communicate wirelessly. What I need to do is have the Arduino make adjustments to the 24.15v as it sees events from the transmitter wirelessly. I'll break it down.

  1. When the two modules pair, the 24.15v drops to 21.27v (Idle state)

  2. Transmitter goes to talking mode, 21.27v drops to 20.6v (Listening state)

  3. Everytime the transmitter sends a communication "pulse", 20.6v drops to 20.45v

I'm assuming I would use the Arduino to trigger transistors then use pots to fine tune the resistance needed, but I just don't know how to go about setting it up. Any help would be much appreciated. Thanks.

Maybe the reason is that because english isn't my native language, but I'm really having a hard time understanding what you actually try to do :confused:

lg, couka

You really need to provide a schematic diagram to illustrate what is going on.

Everytime the transmitter sends a communication "pulse", 20.6v drops to 20.45v

Are you certain of these figures? This seems completely unreasonable from a noise point of view, and would be a bizarre design approach.

This requires the transmitter to generate, and a receiver to discriminate a 0.15 V signal from noise in a 20.6V background, a transition of just 0.7%, which places extremely strong constraints on circuit component tolerances.

You would need a high precision, 16 bit external DAC and a voltage amplifier to generate such signals using an Arduino.

Yea, sorry, I am far from being an electrical engineer, so as far as writing up a schematic, I'd be lost. I'll try to break everything down the best I can.

Under normal operating conditions, I have a tool that creates controlled pressure spikes in closed flow loop. My pressure transducer is rated to 10,000psi and under normal conditions can see as much as 6,500psi. The transducer is very sensitive in that when connected to the receiver, I can see as little as 1-2psi fluctuations. What I assume is that the transducer contains a resistor of sorts that will vary incoming voltage from the receiver (24.15, I know because I metered it). More pressure, more resistance. Right now the tool is in the flow loop around 3,600psi and I am seeing around 55psi variances when the tool "pulses".

We currently have a small module that plugs into the same cable the transducer does, and it simulates these "pulses" while outside the flow loop. The module reads voltages from the tool (5v on line 7 means tool in in talk mode, and a "pulse" is indicated by every time line 6 jumps from 0v to 5v), and voltages change in a very static way, not dynamic as it would be when plugged into the transducer which could read anything from 0-10,000psi. Here, voltage from the receiver (24.15v) drops to 21.27 (or close), just as it does when the transducer is plugged in. Again, I know this because I metered it. When the module sees 5v on line 7, it drops the 21.27v to 20.6v. When the receiver sees 20.6v it interoperates this as a few thousand psi and starts listening for "pulses". When the module sees the 5v pulses on line 6, it in turn drops the 20.6v to 20.45v which the receiver sees as 1 or 2 hundred psi spikes.

Think of line V on receiver as Vcc and line S as Gnd. Line V sends 24.15v out and obviously, without a transducer or test module plugged in, the circuit is open. When either is plugged in, a little resistance is added to the line which drops 24.15v to 21.27v, but the circuit is now closed and the receiver recognizes this. Apparently, the receiver is calibrated to see 21.27v as 0psi, or thereabouts. As voltage drops coming back to the receiver, it sees it as higher pressure. That is pretty much the breakdown of what is happening with everything talking to each other.

I know I can't run 20v into an Arduino. What I'm thinking I could do is use incoming events to trigger the Arduino to send voltage to a board that does have this higher voltage coming into it.

Ideally, there would be an IC or something that would allow me to do something like...

Pin 1 = V in (24.15v) Pin 2 = Looks for 5v signal from Arduino Pin 3 = Looks for 5v signal from Arduino Pin 4 = V out (Pass through, no Arduino events, 24.15v goes out) Pin 5 = V out (If signal on Pin 2, 24.15v goes out here instead of Pin 4) Pin 6 = V out (If signal on Pin 3, 24.15v goes out here instead of Pin 5)

From there, I can apply resistance to the paths as need. The Arduino just triggers detours in the current.

I suspect that your measurements are misleading, and that your efforts are doomed to failure.

You could try contacting the manufacturer for details of the data transmission protocol, but they are probably proprietary.


Could you give us the make and model of the pressure transducer, so that we can look for a datasheet for it, please?

I am still confused as to what is going on.

Basically, all that being said, I need a way to demultiplex more than 20v using the Arduino's digital outs as a trigger, then multiplexing them back to one line.

| | | O/O 1 | >>> 24.15v out >>> Resistor >>> 21.27v>>> | | 24.15v in >>> | X/O 2 | >>> 24.15v out >>> Resistor >>> 20.60v>>> | | | O/X 3 | N/A | | | X/X 4 | >>> 24.15v out >>> Resistor >>> 20.45v>>> |___________________| | | Digital outs from Arduino | |

Transducer is... Source Technologies Model: HU-L24-IS-6K-PSIS-E15-P36-K8-B64 P/N: 549013-1117

As of right now, I'm not too worried about how accurate the numbers are. I believe I can get that figured out. I just need a way to change the voltage in the circuit to the receiver without running it directly to the Arduino as it is too high, but still using the Arduino to trigger the changes.

I was wondering if anyone has answered this elsewhere or could point me to another one like this with a possible answer?

I was wondering if anyone has answered this elsewhere or could point me to another one like this with a possible answer?

If you note, the original poster was here only 2006 and has never returned.

Are suggesting you have a similar scheme with incoherent specifications?