Systems & feedback Field guide · Systems & feedback · 5 of 6
How does anything stay near a target?
Over the causal loop diagram’s marks, a feedback control diagram shows each variable’s role above its name, and a stock with its flows where the controlled variable accumulates.
Feedback control diagram
Variables: boiler output.
boiler output
variable Enlarge
Causal-loop diagram
Variables: price; sales; revenue. Effects: price to sales (−, opposite direction); sales to revenue (+, same direction).
−
+
price
sales
revenue
polarity Enlarge
Causal-loop diagram
Variables: orders; deliveries. Effects: orders to deliveries (+, same direction, with a delay).
+
orders
deliveries
delay Enlarge
Causal-loop diagram: R1 practice habit
Variables: practice; skill; enjoyment. Effects: practice to skill (+, same direction); skill to enjoyment (+, same direction); enjoyment to practice (+, same direction). Loop R1 practice habit, reinforcing: practice, skill, enjoyment, and back to practice.
+
+
+
practice
skill
enjoyment
R1 practice habit
loop Enlarge
Causal-loop diagram: R1 compounding
Variables: savings; interest. Effects: savings to interest (+, same direction); interest to savings (+, same direction). Loop R1 compounding, reinforcing: savings, interest, and back to savings.
+
+
savings
interest
R1 compounding
reinforcing loop Enlarge
Causal-loop diagram: B1 warming up
Variables: room heat; heating. Effects: room heat to heating (−, opposite direction); heating to room heat (+, same direction). Loop B1 warming up, balancing: room heat, heating, and back to room heat.
−
+
room heat
heating
B1 warming up
balancing loop Enlarge
Causal-loop diagram
Variables: orders; stock. Effects: orders to stock (−, opposite direction). Boundary the shop contains: orders; stock.
the shop
−
orders
stock
boundary Enlarge
Causal-loop diagram
Variables: weather (external driver); footfall. Effects: weather to footfall (+, same direction). Boundary the café contains: footfall. Outside every boundary: weather.
the café
+
‹weather›
footfall
external driver Enlarge
Feedback control diagram
Variables: temperature wanted (target); temperature gap (gap); thermometer reading (measured value). Signals: temperature wanted to temperature gap, +; thermometer reading to temperature gap, −.
+
−
temperature wanted target
temperature gap gap
thermometer reading measured value
gapa role, written above its variable's name Enlarge
Causal-loop diagram
Variables: workload; mistakes. Effects: workload to mistakes (+, same direction, nonlinear).
+
workload
mistakes
nonlinear effect Enlarge
Causal-loop diagram
Variables: training; quality. Effects: training to quality (polarity not yet set, hypothesis).
training
quality
evidence coding Enlarge
Causal-loop diagram
Variables: . Behavior note: oscillation.
oscillation
behavior note Enlarge
Stock & flow diagram: water in tub
Stocks: water in tub (liters). Behavior-over-time graph of water in tub: rises toward a value and flattens.
liters water in tub
water in tub (liters) time
behavior-over-time graph Enlarge
Feedback control diagram: chlorine in the water
Stocks: chlorine in the water (grams, controlled variable).
grams chlorine in the water controlled variable
stock Enlarge
Feedback control diagram
Stocks: chlorine in the water (grams). Variables: dosing pump speed (corrective action). Flows: dosing, from a cloud to chlorine in the water (grams per hour). Signals: dosing pump speed to dosing, +.
dosing
+
dosing pump speed corrective action
grams chlorine in the water
flow Enlarge
Stock & flow diagram: water in tub
Stocks: water in tub (liters). Flows: draining, from water in tub to a cloud (liters per minute).
draining
liters water in tub
cloud Enlarge
Stock & flow diagram: water in tub
Stocks: water in tub (liters). Auxiliaries: tap opening. Flows: filling, from a cloud to water in tub (liters per minute). Signals: tap opening to filling, +.
filling
+
liters water in tub
tap opening
signal Enlarge
Stock & flow diagram: water in tub
Stocks: water in tub (liters). Flows: filling, from a cloud to water in tub (liters per minute); draining, from water in tub to a cloud (liters per minute). Stock equation: change in water in tub = filling − draining.
filling
draining
liters water in tub
change in water in tub = filling − draining
stock equation Enlarge
Feedback control diagram
Variables: temperature wanted (target); temperature gap. Signals: temperature wanted to temperature gap, +.
+
temperature wanted target
temperature gap
targeta role, written above its variable's name Enlarge
Feedback control diagram
Variables: temperature gap; boiler output (corrective action). Signals: temperature gap to boiler output, +.
+
temperature gap
boiler output corrective action
corrective actiona role, written above its variable's name Enlarge
Feedback control diagram: room temperature
Variables: boiler output; room temperature (controlled variable). Signals: boiler output to room temperature, +.
+
boiler output
room temperature controlled variable
controlled variablea role, written above its variable's name Enlarge
Feedback control diagram
Variables: room temperature; thermometer reading (measured value). Signals: room temperature to thermometer reading, +.
+
room temperature
thermometer reading measured value
measured valuea role, written above its variable's name Enlarge
Feedback control diagram
Variables: gust seen upwind (external driver); heel past upright (gap); sheet eased (corrective action). Signals: gust seen upwind to sheet eased, +; heel past upright to sheet eased, +. Feedforward: gust seen upwind → sheet eased.
+
+
‹gust seen upwind›
heel past upright gap
sheet eased corrective action
feedforward Enlarge
Feedback control diagram
Variables: room below target (gap); heater output (corrective action, at most 2 kW). Signals: room below target to heater output, +.
+
room below target gap
heater output corrective action at most 2 kW
saturation Enlarge
Feedback control diagram
Variables: string below pitch (gap); peg turned (corrective action). Signals: string below pitch to peg turned, +, deadband ±3 cents.
+ deadband ±3 cents
string below pitch gap
peg turned corrective action
deadband Enlarge
Feedback control diagram
Variables: boost button (override); boiler output (corrective action). Signals: boost button to boiler output, +.
+
boost button override
boiler output corrective action
overridea role, written above its variable's name Enlarge
How each mark is drawn and read: chapter 8, What the notation expresses .
A thin line with an arrowhead is a signal : an effect carrying a reading or a setting, not material, that changes the variable at its head. Where the controlled variable is a stock, its flows’ double lines move material.
Feedback control diagram: room temperature
Variables: desired temperature (target); temperature gap (gap); boiler output (corrective action); room temperature (controlled variable); thermometer reading (measured value); outdoor temperature (external driver). Signals: desired temperature to temperature gap, +; thermometer reading to temperature gap, −; temperature gap to boiler output, +; boiler output to room temperature, +; room temperature to thermometer reading, +; outdoor temperature to room temperature, +. Loop B1 heating, balancing: temperature gap, boiler output, room temperature, thermometer reading, and back to temperature gap. Control loop B1: temperature gap → boiler output → room temperature → thermometer reading; target: desired temperature.
+
−
+
+
+
+
desired temperature target
temperature gap gap
boiler output corrective action
room temperature controlled variable
thermometer reading measured value
‹outdoor temperature›
B1 heating
Enlarge
B1 heating runs from temperature gap through boiler output , room temperature and thermometer reading ; outdoor temperature , an external driver, acts on room temperature from outside the loop (chapter 8’s house ).
Draw one when someone has chosen a value for a quantity to stay near, when the quantity and its reading can disagree, or when something outside keeps pushing it away (chapter 8’s signals ).
With no target, as when tea cools toward the room’s temperature, a causal loop diagram does; when the reading and the quantity can’t come apart, as with a cistern’s float, a sentence does (chapter 8, what stays informal ).
Reasoning 4 of 5 Polish 4 of 5 signal sketch → nested control loops Target, gap, corrective action, controlled variable and measured value External drivers, delays, saturation and nested loops Feedforward, adaptation, stability, and failure modes
A feedback control diagram is drawn as a causal loop diagram is, with a role written above each variable that plays one, its effects called signals. Where the controlled variable accumulates, it is drawn on a feedback control diagram with a stock & flow diagram ’s stock, flows and signals, the roles written above them.
Chapter 8, Sense, Compare, Correct : target and gap, measured value, corrective action, controlled variable, control loops, external drivers, delays, control with accumulation and the engineering names; exercises FC 01–05.
Chapter 9, Anticipation, Limits, and Nested Control : feedforward, sampling and filters, deadband, saturation, competing targets, nested loops, override and false alarms; exercises FC 06–10.
Donella H. Meadows, Thinking in Systems: A Primer (Chelsea Green, 2008), chapter 2, A Brief Visit to the Systems Zoo , on the thermostat drawn as one stock, the room’s temperature, with two competing balancing loops.
Karl Johan Åström and Richard M. Murray, Feedback Systems: An Introduction for Scientists and Engineers , second edition (Princeton University Press, 2021), chapter 1, on feedback, the parts of a feedback system, a thermostat’s on-off rule, feedforward and nested loops; chapter 3, on how engineers draw boxes and lines; and chapter 11, on a throttle held at its limit on a steep hill.
Stephen Boyd, “Feedback Control Systems: Static Analysis” , lecture 12 of EE102 (Stanford University), on the names engineers give a feedback system’s parts.
James K. Roberge, Operational Amplifiers: Theory and Practice (MIT), section 2.2, the source of the engineering name for where the target and the measured value meet.