# Using resistor to drop voltage in circuit with changing current [duplicate]

I have no problem calculating and understanding how to drop voltage using resistor for circuits with purely resistive loads - for example look at much current will an LED draw, subtract source and LED voltage and just use Ohms law to find out the right resistor complete the circuit.

Now I need to drop voltage from 24V to 12V for a thermostat (which can change its current draw by activating its relay) and I am trying to wrap my head around it if a similar solution using simple resistor is even possible. (Yes, I know I can use a step-down or LR.)

In my case, the thermostat draws 20mA and 100mA respectively depending on the relay state at 12V and I have a 24V PSU. Once again, if the current was constant it would be trivial, but with the current changing... what are the mechanics here?

I guess the "voltage drop" achieved by the resistor is not just a voltage drop but also a "current cap" right? Let's say I pick a resistor that would match the 20mA current draw and the thermostat is in relay off state - it should run alright. What would happen when the thermostat switches the relay on? According to Ohm's law the resistor should not let anymore current pass through without the source voltage rising, right?

I guess you get my point.

• A LED is not a resistive load though. Commented Mar 27, 2023 at 5:33
• @Justme my terminology might have been a bit off, but I hope the main point is clear. Commented Mar 27, 2023 at 11:14
• @brhans It confirms part of it. I know what to use when. But furthermore I am curious about the inner workings. Commented Mar 27, 2023 at 11:17
• Have you looked at a 24 to 12 V buck regulator to solve your problem? Commented Mar 27, 2023 at 15:21
• The problem was solved from the beginning 🙂. I am using linear regulator since the current is just 20 - 100 mA and step down would be an overkill. I was just wondering about the mechanics (or electronics 😁). Commented Mar 28, 2023 at 10:18

A resistor has a voltage across it which is proportional to the current through it. If you double the current through it, you also double the voltage through it. If you half the voltage across it, the current through it is halved too. That's Ohm's law.

Another law that helps you understand the mechanism at work is Kirchhoff's voltage law (KVL), which tells you (paraphrased) that voltages across things connected in series all add up. So in the following circuits the voltage across all the resistors in each case must add up to 24V, regardless of their resistance:

simulate this circuit – Schematic created using CircuitLab

The other law at work is Kirchhoff's current law (KCL), which says (again, paraphrasing) the current entering one end of a two terminal device must equal the current leaving the other end. Applying that logic, we must conclude that current everywhere in the loop is the same.

In your setup you are trying to control the voltage across something, your thermostat (the blue box below), setting it to 12V, by "splitting" that into two potential differences across two "resistances", one of which is the thermostat. It looks like the circuit on the left here:

simulate this circuit

That's fine, while the thermostat is off. When it switches on (right), though, its own electrical resistance changes, and that changes the total current flowing around the loop.

Since the current everywhere in the loop is the same, changing current anywhere in the loop changes it everywhere (KCL), including R1, and that in turn must change the voltage across R1 (Ohm's law). If the voltage across R1 changes, the voltage across R2 must also change, to have the same total (KVL).

In other words, any change you make to R1, R2, supply voltage, or even adding something else across R1, will change the loop current, and that changes the voltages everywhere. It's a terrible way to create a constant 12V, when you aren't sure that everything in the loop will stay the same.

what are the mechanics here?

My somewhat trite answer is that KCL, KVL and Ohm's law are the mechanics.

There's no way to break any of those laws, so if you only have a source greater than 12V, but you want to keep the voltage across R2 (your thermostat) at exactly 12V regardless of what else is going on in the circuit, then you need R1 to also change its value as conditions elsewhere fluctuate.

There are magic resistances that do this, they are called "linear regulators". One such device is the 7812, which promises (almost) to have exactly the right resistance to keep the voltage at its output at 12V, regardless of the current state of R2, the power supply voltage, or the current in the loop. You replace R1 in the loop with the regulator:

simulate this circuit

The GND terminal of the regulator is connected to the place you call "zero volts", so it has a reference point to know if its output is the correct 12V or not, and adjust accordingly.

Its effective resistance, the one it is adjusting, is between its IN and OUT pins.

On the right, I have decreased battery voltage to 20V, and also decreased R2 (simulating the change in resistance of the thermostat, as it switches on). Consequently current in the loop has changed, but the voltage across R2 has stayed fixed at 12V. That's the 7812 working its magic. Notice how it's dropping 8V, leaving exactly 12V for the thermostat R2, in accordance with KVL.

The OP's problem is interesting not only as finding a specific circuit solution but also from a conceptual point of view. For this reason, I have developed it in detail and illustrated it step by step with the help of CircuitLab.

OP have set for themselves to reduce the 24 V input voltage twice with the purpose to obtain 12 V.

# The OP solution

OP has inserted a "ballast" resistor R1 in series with the input source. A 12 V voltage drop appears across it, which is subtracted from the input voltage (24 V) and the desired 12 V output voltage remains.

# The problem

Unfortunately, the load (thermostat) changes its resistance and therefore its current when it switches the heater. So the voltage drop across R1 and accordingly across the thermostat varies. Let's see it in CircuitLab.

Switch is OFF: As you can see, a voltage divider is formed by two equivalent resistors (R1 and Rt) in series, and the output voltage Vout is half of the input voltage Vin.

Switch is ON: Now, the heater Rh is connected in parallel to Rt. The equivalent resistance Rt||Rh is less than the initial Rt; so the current IL increases. The voltage drop across R1 increases as well and the output voltage Vout decreases.

From another viewpoint, the bottom voltage divider resistor (Rt||Rh) decreases. The voltage drop across it (Vout) accordingly decreases and the current increases.

simulate this circuit – Schematic created using CircuitLab

# Basic idea

The voltage drop VR1 = R1.IL varies because IL varies but R1 is constant. How do we do it constant? Of course, by varying R1 in the opposite direction. So the basic idea is:

To keep the voltage drop across a resistor constant when the current varies, change the resistance in the opposite direction. As a result, their product will remain constant.

Expressed through the voltage divider point of view, it is:

To keep the voltage divider output voltage constant when its bottom resistance varies, change its top resistance in the same direction. As a result, its transfer ratio and accordingly, the output voltage will remain constant.

# Implementation

## Externally-controlled resistance

The simplest and most obvious idea that occurs to us is to switch the resistor R1 simultaneously with switching the heater. We can see this idea in many life situations where, in order to keep some (output) quantity constant when we change an input quantity, we simultaneously change another input quantity.

Straightforward solution. At first glance, we need another switch TSW2 that works the same way as TSW1 (or one DPST switch).

Switches are OFF: As above, the resistors R1 and Rt form a voltage divider with a ratio of 0.5.

simulate this circuit

Switches are ON: The difference with the above cases is that now an additional resistor R2 is connected in parallel to R1; so R1||R2 < R1. Or, in other words, a second divider R2-Rh is connected in parallel to the first R1-Rt.

simulate this circuit

Inventive solution. If we are observant enough, we can see that the two voltage dividers above form a balanced bridge circuit. There is no voltage difference between their outputs and, accordingly, no current flows. So it does not matter if there is a connection ("bridge") between them or not. Then let's remove it (of course if this is possible).

Switch is OFF: As above, R2 is not connected to R1 (the voltage divider R2-Rh is not connected in parallel to the R1-Rt voltage divider).

simulate this circuit

Switch is ON: Now as though R2 is connected in parallel to R1; so R1||R2 < R1. R2-Rh voltage divider is connected in parallel to the R1-Rt voltage divider.

simulate this circuit

## Self-controlled resistance

There are some interesting resistors that have the property of changing their resistance when the current through or the voltage across them changes. They call them by the boring name "non-linear resistors" but I prefer to call them with the more meaningful "dynamic resistors".

Conceptual solution. The best way to understand how they act is to play their role; CircuitLab can help us do it. Just open the R1 parameters window and change its resistance like a 12 V voltage-stabilizing resistor.

Switch is OFF: In this case, adjust R1 = 600 ohm...

simulate this circuit

Switch is ON: ... and now, adjust R1 = 120 ohm.

simulate this circuit

Diode implementation. In electronics, (Zener) diodes behave such as dynamic resistors keeping up a constant voltage drop across themselves; they called them "shunt voltage stabilizers". When connected in series (our case), they "shift" voltage variations, and when connected in parallel, they fix the voltage variations. In the two circuits below, I have used an "ideal" forward-biased diode with 12 V forward voltage to mimic a 12 V backward-biased Zener diode.

Switch is OFF: As we can see, the diode behaves like us above - it adjusts its (static) resistance equal to 600 ohm...

simulate this circuit

Switch is ON: ... and now equal to 120 ohm.

simulate this circuit

## Negative feedback

The disadvantage of all these solutions above is that they "blindly" compensate for only one disturbance - the change of Rh; but, for example, they will not react to the change of the input voltage.

The universal and most perfect principle we use to maintain a quantity in life is the negative feedback principle. Its idea is to keep Vout = const by subtracting it from a constant reference (voltage) and changing Vout until there is zero difference. In this way, all kinds of disturbances are compensated. Then let's use it here to maintain a constant voltage of 12 V across the load (not across R1).

Conceptual solution. To implement it, we connect Vout contrary in series to Vref and measure the result of comparison (subtraction) by a null indicator (voltmeter) Vdif.

Switch is OFF: We see that Vout = Vref (Vdif = 0) when we reach R1 = 600 ohm...

simulate this circuit

Switch is ON: ... and when we reach R1 = 120 ohm.

simulate this circuit

BJT implementation. Here a BJT transistor act as a varying "resistor" R1.

Switch is OFF: The BJT behaves like as above - it adjusts its (static) collector-emitter resistance equal to 600 ohm...

simulate this circuit

Switch is ON: ... and now equal to 120 ohm.

simulate this circuit

Op-amp implementation. To make the comparison more precise, an op-amp follower can be added.

Switch is OFF: The op-amp makes the transistor adjust its (static) collector-emitter resistance equal to 600 ohm...

simulate this circuit

Switch is ON: ... and now equal to 120 ohm.

simulate this circuit

Voltage-stabilizer implementation. The op-amp, transistor and other elements are housed in the 7812 voltage stabilizer.

Switch is OFF: It makes the same - adjusts its (static) resistance between the input and output equal to 600 ohm...

simulate this circuit

Switch is ON: ... and now equal to 120 ohm.

simulate this circuit

Congratulations, you've discovered why people don't use resistors as voltage regulators.

There is no way to do what you suggest; you need a voltage regulator of some kind. Either a step-down switching converter (preferred, as it's more efficient) or a linear regulator (simpler, but wastes lots of power as heat).

• I agree. OP might also be able to get away with a voltage divider & op-amp buffer solution, as there are many op-amps within the 100mA output spec. Commented Mar 27, 2023 at 13:41