# ramp Voltage generator

Hello evveryone

i want to produce a voltage from 0-10 (increasing 1 v/s) Volt as much as possible it can be closer to a ramp. I have an arduino and i take the 0-5 in the output but i dont know how to extend this limit. The non-invering op amp doesn't work (at least as i used him ) cause i got issues with the double polarity and the dependance from the load.

How much current?

0-10V is common for industrial equipment. There are many converters available online for very cheap prices.

MorganS:
How much current?

0-10V is common for industrial equipment. There are many converters available online for very cheap prices.

its too low about 4 mA

I have an arduino and i take the 0-5 in the output

How are you doing that? The "regular" Arduino doesn't have a digital-to-analog converter. analogWrite() is PWM, which can be filtered to variable DC.

but i dont know how to extend this limit. The non-invering op amp doesn't work (at least as i used him ) cause i got issues with the double polarity and the dependance from the load.

An op-amp should work and 4mA shouldn't present a problem. But, you'll generally need bipolar power supplies if you need to go all they way down to 0V and more than +10V to get 10V out of the op-amp.

A "rail-to-rail" op-amp might get you to 0V (it should at-least get very-close) with a single power supply, but you'd still need +10V (or more).

I took the 0-5 with pwm and an RC Filter. You say that it’s better to do it with dac?

If you have a working RC filter and its performance is adequate for your application, then don't change. Try to get the opamp working. It's a very simple circuit to double an existing voltage up to 10V and 4mA is within the capacity of every opamp.

Here is the first Google result I get:

Thanks for the help but I think that this circuit doubles a dc voltage of 5 volt to 10 volt. I want to double an increasing ramp voltage 0-5 volt to an increasing ramp voltage 0-10 volt .

michalon:
I want to double an increasing ramp voltage 0-5 volt to an increasing ramp voltage 0-10 volt .

Exactly what the circuit does.
Any input voltage is amplified 2x.
Leo..

Ok thanks! I go to check it in practice and come back with the news .

Well the circuit works properly.
These issues came up.
I used a battery of 8 volt instead of 12 volt on pin 4 (didn’t have a power supply12 volt with ground on negative ) but that’s not a problem. I just took 7 volt in the output. (Does someone knows why this voltage is dropped 1 volt )?
When I had the arduino out of the circuit I took a low voltage 0,3 volt offset in the output and its because the battery was charging either the capcitor of the filter either the capacitor Of the op amp.
So now my only problem is the powers supply of 12 volt! Thanks a lot guys you helped so much

Imagine that you have a crane that is 8 feet tall. Can you use that crane to lift something 8 feet off the ground? No, because the crane hook has to be above the thing that it is lifting.

A "rail to rail" opamp can get very close to its supply voltages but never all the way. The error may be 0.1V and it usually depends on the output current. (The crane can lift a light thing closer to 8ft than a heavy one.)

Check the 0V point too. If that does not meet your specification then you either need to buy a different opamp (some go closer to 0 than they go at the top end) or you need to supply it with a negative voltage power supply.

New problem came up.i want to send the 12 volt on the pin 4 of the op amp simultaneously with the start of my arduino. When I turn on the 12 volt and arduino is out of the usb I have an offset voltage in the output.that’s a real problem cause I send the output on a dc high voltage generator. I tried with a n-mosfet as a switch that takes the Vgs=5 voltage from a pin of arduino and in that way when I start the arduino i take the output as I want.but it didn’t work properly .any idea ?

As long as you share grounds between Arduino and OpAmp part (so there's a shared 0V reference) I don't see why it wouldn't work.

You cannot use an N-MOSFET to switch a positive voltage. You always need a supply greater than the voltage you are switching.

Use a P-MOSFET or a pre-built power switch.

Vin is a PWM 0 or 5 volt from an arduino. Which starts when I put the arduino in the usb gate of my pc. When the arduino is out of the circuit I have an offset voltage because of the +12 volt supply. How would you adjust the mosfet so that the 12 volt and the pwm from arduino starts simultaneously?i didn’t draw the n-mosfet because it was wrong as Morgan said.i found that the IRFZ44N is the most appropriate get to get driven by arduino. My main problem is that I cannot understand where to put the d g s pins. Electronics aren’t my stuff .

For starters I don't see what you're trying to do really, and why. As long as the Vin PWM signal is off and connected to GND, the output of the OpAmp is 0V as well.

If the problem is that you get voltages out of the OpAmp while the Arduino is off, that'd be because the input is floating. Connect a large resistor (1M or so, this way you don't affect the signal itself significantly) in parallel with the capacitor and you guarantee a 0V input, so 0V output.

Yes I understand the limitation of output voltage with the huge resistance in the input. I just tried it with the 1 MOhm you said and I take 0,06 volt in the output. This voltage goes to a dc high voltage generator with Vout=3000*Vin so this 180 volt affects my measurements.Thanks for help I hope I explained it well.

Replies #3 and #10 give you some clues.

I would have thought that 180V error out of 30,000 was pretty good for most purposes. Is the 3000x amplifier that accurate anyway?

Ok I’ll try with another op amp(but why you don’t like the mosfet solution?).
Yeah I know it’s difficult to accept it but the amplifier 3000x is so accurate! HV LAB OF A.U.TH is leaded by a perfect engineer.He has done such a perfect job with the equipment.

So you’re looking at 0.5% being too much?! That’s a very high precision. You also have to make sure that your input stage (Arduino & OpAmp) is good enough, then. Target 0.1% or better there.

Arduino: make sure Vcc is very well regulated and stable. Any changes there will affect your OpAmp output. Normal regulators may be at about 1% accuracy check the data sheets. You have to look for a regulator that can do <0.1% stability. As you’re using PWM you’ll be noticing the 256-step limit at your precision.
OpAmp: a precision one. Again you’re looking at <0.1% error in the amplification stage.
Resistors: metal film type, high precision, low temperature coefficient (<25 ppm is available). Carbon resistors are worthless here, they have easily more than 0.1% change in value for every 1 C temperature change.
Capacitor: I think you need a film type here, as those are much more stable than ceramics. PET is good, PP is better (but more expensive and much larger for the same capacitance).