Go Down

Topic: L78S12CV or Step-Down Converter Or use monitored PWM with RFP30N06LE or (TIP120) (Read 944 times) previous topic - next topic


I am building a circuit using the Arduino to control a electromagnetic coil. I am using the Arduino to read the pot and drive a MOSFET RFP30N06LE to control the coil. The coil will draw around 1.5 amps when at 100% duty cycle. I am trying to decide the best option for regulating the 12 volt supply (from automotive power so in volts will be around 14). I am using LM7805 for Arduino 5V power. And a booster to power a buzzer at 24v based on this. http://www.arduino.cc/playground/Main/RegulatedPositiveVoltageBooster. The LM7805 gets warm to the touch when using the booster. So that made me wonder if the L78S12CV (i had planned on using) rated at 12v 2 amp is going to get very warm when powering the coil. Since its is also not an efficient way to regulate I am looking for new ideas. I looked into step-down converters but don't really like the cost and added circuitry. The one i am considering now I cant find any info at all, so I am asking all of you.(some of it is based on the link i gave) If i use a voltage divider to sense the 14v as it changes. And send the unregulated (regulated to some degree by the alternators regulator) 14v to one side of the coil, use PWM controlled MOSET on the other side. Can i use software to average the duty cycle of the PWM on a base 12. So the POT will end turn control duty cycle on a 0-12v analog (0-100%) to coil. The Arduino would be regulating the power by software so the max to the coil at 100% duty cycle(POT turned all the way) is 12v. and at 50% would be 6v. (So it would never be at 100% to coil it would limit based on the actual "14v reading" and 12base) Im basing the PWM hardware from this 555 control pwm circut (that i have built and tested. http://www.dprg.org/tutorials/2005-11a/index.html {almost all of it is gone thanks to arduino :-)} Does this sound feasible? as it would only add more code to my current plans. And there would be no added heat as with the L78S12CV, and step-down. Has anyone done anything like this, or should i go back to pre-regulating the 12 volts them pwm controlling it. THANKS p.s. please move this to the right category if its wrong


[ I won't respond to messages, use the forum please ]


Its not as complicated as i make it sound, i am just no good at explaining it. The diagram is just to show the general idea not the actual circuit.
I want the Arduino to read the pot on pin A1. Lets say it is at 100%(1023). Then read the voltage divider(A0), lets say it calculates the current voltage at 14v. Since 12 is 85.71 percent of 14. And 218 is 85.71% of 255(rounded). The Arduino writes pin D9 to analogWrite(9, 218). Which is 85% duty cycle for the 14v. Or in a way 100% of a 12v duty cycle. Without the need to pre-regulate 12v before the coil.

duty = ((readPOT/1023)*(12/currentVolts)*255);
analogWrite(9, duty);

If 15v input analogWrite(9, 204) which is 80% duty cycle. For the 15v.

IF POT reads 511.5(50%). then analogWrite(9, 109) for 14v input.

That is my concept, will it work? It would save a step down in the circuit and probably alot of heat and wasted energy.


A misconception you are having is thinking that PWMing the +12vdc through the coil reduces the average voltage of the +12vdc source. It does not, it reduces the average current going through the coil per the duty cycle. PWM signal at any given time at the transistor end of the coil is always at either 0vdc or 12vdc, never some value between those two values. The induction of the coil will cause the current value to average related to the duty cycle.



So i would need to regulate the voltage first? How would be the best way to do this?

Lets say the coil can take the 15 volts (haven't verified but Im sure it will). The coil is to control a hydraulic flow valve. And i want the set flow (set by the pot) to be the same all the time (not fluctuate after being set). Could i use the my example to very the duty cycle depending on the supply voltage to keep the same flow, or will it not matter if the supply rises and falls between 12-15vdc. Thanks for the help as i am new to all of this.

The main reason I am either going to pre-regulate or try this option is so the flow doesn't change with the output of the alternator or the other loads in the system.

I think i need to delete the opening post, as when i read it awake, it even confuses me as to my objective.


for help you i need more info
If the valve only on / off or can vary form full open to full off and can keep in the middle for example (half open)?


It is a electronically adjustable proportional pressure compensated flow control valve. To control flow, your controller sends a 100hz PWM signal directly to the coil. It can be fully open 100% duty PWM, fully closed 0% PWM. Or anywhere in-between according to the PWM signals duty cycle. It would be so much easier if the motor it controlled had a feedback for rpm but it doesn't. And in this app I cant add one. An example of one can be found here. http://www.brand-hyd.com/efc/efc-info.htm this is not the one im useing, I will be machining my own valve block and adding the components to it(such as the coil). But the coil will work exactly the same.

Go Up