Sense, Compare, Correct
Feedback control diagramsPart IV · Control · Chapter 8 of 12 · the first of two chapters on feedback control diagrams
How does anything stay near a target? Its value is read, the reading is compared with the target, and the difference is corrected, in a loop. In a feedback control diagram, the part each variable plays in that loop is written above its name.
Print this chapter, with a sheet for each exercise and the answers at the back, from its PDF.
Signals you need this diagram
Section titled “Signals you need this diagram”- Someone has chosen a value for a quantity to stay near: a temperature, a speed, a rate of inflation.
- The quantity and the reading of it can disagree, or the reading arrives late.
- A correction overshoots, or goes on after the quantity is back where it was wanted.
- Something outside keeps pushing the quantity away from that value.
A house kept warm on a winter evening
Section titled “A house kept warm on a winter evening”It is −2 °C outside, and someone sets the thermostat’s dial to 20 °C. While the thermostat’s thermometer reads less than 20 °C, the boiler runs and the room warms. At 20 °C the boiler stops, the room loses heat to the cold outside, the reading falls, and the boiler starts again.
What the notation expresses
Section titled “What the notation expresses”A feedback control diagram is drawn as a causal loop diagram is, with the part each variable plays written in small type above its name, one part per variable. Its effects are signals: they carry readings and settings, not material.
Target and gap
Section titled “Target and gap”The target is the value someone chooses for a quantity to stay near: desired temperature, 20 °C. No signal ends at a target, and a change of target is a new choice, not an effect.
The gap is chapter 4’s gap: the difference between the target and the measured value. The target’s and the measured value’s signals into it carry opposite polarities: desired temperature → temperature gap is +, thermometer reading → temperature gap is −. Only the measured value’s signal lies on the loop, so it is the one the parity rule counts.
Measured value
Section titled “Measured value”The measured value is the controlled variable as it is read: thermometer reading, a variable of its own, with a signal from room temperature. The two come apart: a thermometer above a radiator reads the radiator’s heat, not the room’s.
Corrective action
Section titled “Corrective action”The corrective action is the variable changed to close the gap: boiler output, in kilowatts. The boiler is a thing; its output is a quantity, and only quantities are drawn. Temperature gap → boiler output is +: the wider the gap, the more heat the boiler puts out.
Controlled variable
Section titled “Controlled variable”The controlled variable is the quantity the corrective action holds near the target: room temperature. The measured value reads it. The target and the measured value are counted in its units, degrees.
Control loops
Section titled “Control loops”A control loop is a declared balancing loop that runs from a gap through a corrective action, a controlled variable and a measured value, back to the gap: B1 heating, from temperature gap through boiler output, room temperature and thermometer reading.
A central bank steering inflation is drawn with the same six variables, roles and signals. The government sets the Bank of England a target of 2% inflation, and the Bank raises its policy interest rate, Bank Rate, to bring inflation down.
Here the gap is inflation above the target, so the target’s signal into it is − and published inflation’s +; a higher rate lowers inflation, −. The loop holds one − signal, as the thermostat’s does.
External drivers
Section titled “External drivers”In a feedback control diagram, an external driver acts on the controlled variable: outdoor temperature → room temperature, +. It may also act on the measured value, as noise, a draft across the thermometer, or on the corrective action, a path chapter 9 draws. It never acts on a gap or a target.
World energy prices act on inflation: the Bank of England names Russia’s invasion of Ukraine, which cut the supply of gas and raised its price, among the causes of the rise in inflation. Like any external driver, they lie outside the boundary: nothing on the diagram changes them.
Delays in control
Section titled “Delays in control”A delay can sit on either half of a control loop. The forward path runs from the gap to the controlled variable; the return path runs from the controlled variable back to the gap, through the measured value.
A delay on the forward path is a correction arriving late. In estimates the Bank of England cites, the change in inflation after a change in interest rates peaks around one to two years later, so policy interest rate → inflation carries a delay. A delay on the return path is a reading arriving late: a thermometer read once an hour. Where the controlled variable is a stock, a delay on either path is a material or signal delay.
Control with accumulation
Section titled “Control with accumulation”Where the controlled variable accumulates, it is drawn as a stock, filled and drained by flows, and the corrective action and external drivers reach it by signals to the flows’ valves. Meadows draws the thermostat this way: the room’s temperature as a stock, filled by heat from the furnace and drained by heat leaking outside.
Only the roles’ words are added: controlled variable above the stock’s box, corrective action above boiler output, whose signal reaches heating’s valve. B1 runs through heating, as chapter 7’s loops through stocks run through a flow. Outdoor temperature acts at heat lost’s valve, −: the colder outside, the faster heat leaks out. Room temperature → heat lost closes a second balancing loop, B2 cooling: the warmer the room, the faster it loses heat.
The engineering block diagram
Section titled “The engineering block diagram”An engineer draws the same thermostat as a block diagram: a box for each part that acts, lines carrying signals between them, and a circle where two signals are subtracted.
| Engineering name | In the block diagram | In a feedback control diagram |
|---|---|---|
| setpoint | the line named thermostat dial, marked + | the target |
| comparator | the circle | the gap, which the target and the measured value both affect |
| error | the line named difference | the gap |
| controller | the thermostat box | the signal from the gap to the corrective action |
| actuator | the boiler box | the corrective action, boiler output |
| plant | the room box | the controlled variable, room temperature |
| sensor | the thermometer box | the measured value, thermometer reading |
| disturbance | the line named cold outside | an external driver acting on the controlled variable |
An engineer’s box is a part that acts, such as the boiler; this book’s box is a stock, and a part that acts appears only through the quantity it changes, such as boiler output.
What stays informal
Section titled “What stays informal”When no one chooses the value a quantity settles at, draw it as a causal loop diagram: a cup of tea cools toward the room’s temperature through a balancing loop with no target, reading or corrective action. When the reading and the quantity read can’t come apart, write a sentence: a toilet cistern’s float rides on the water, so the cistern fills until the float shuts the valve.
How much the corrective action changes for each degree of gap, and how fast, are numbers the diagram doesn’t hold: they go in a sentence or a table beside it.
The bad diagram
Section titled “The bad diagram”What’s wrong with this diagram of the house kept warm on a winter evening?
The cold outside changes the room’s temperature, and the thermometer reads the room. Here the signal from outdoor temperature ends at the gap instead: the cold is drawn as if it changed the temperature someone wants, and the room’s temperature as if only the boiler changed it. The lab’s check reports:
outdoor temperature → temperature gap ends at a gap. End it at the variable the external driver changes: an external driver acts on a controlled variable, a measured value or a corrective action, never on a gap or a target.
The corrected diagram
Section titled “The corrected diagram”Corrected, the outdoor temperature’s signal ends at room temperature, +, and only the target and the thermometer reading have signals into the gap.
Labels unchanged. Signals: 1 added, 1 removed.
Notation moves
Section titled “Notation moves”| Notation move | When | What it shows | Example |
|---|---|---|---|
| Write target above a variable | Someone chooses a value for a quantity to stay near | The chosen value, with no signal into it | desired temperature |
| Give the gap’s two signals opposite polarities | Which way the gap runs | desired temperature +, thermometer reading − | |
| Draw the measured value apart from the controlled variable | Where a reading can run late or mislead | room temperature → thermometer reading | |
| Write corrective action above a quantity | What is changed to close the gap | boiler output, not boiler | |
| Declare the control loop | The loop from gap to corrective action, controlled variable and measured value | B1 heating | |
| End an external driver at the controlled variable | Something outside pushes the quantity away from its target | Where the push enters | outdoor temperature → room temperature |
| Mark a delay on the forward or return path | A correction or a reading arrives late | Which half of the loop runs late | policy interest rate → inflation |
| Draw the controlled variable as a stock | It accumulates | The flows the corrective action and external drivers reach | room temperature, filled by heating |
Check your understanding
Section titled “Check your understanding”Body temperature regulation, redrawn
Section titled “Body temperature regulation, redrawn”Redrawn from OpenStax, Anatomy and Physiology 2e, section 1.6, “Homeostasis”, the copy on LibreTexts, Figure 1.10, panel (b), Body temperature regulation. CC BY 4.0.
Panel (b) alone, its five boxes drawn as variables with roles: body temperature exceeds 37 °C as body temperature, the controlled variable, and degrees above 37 °C, the gap; nerve cells in skin and brain as temperature sensed by nerve cells, the measured value; sweat glands throughout body as sweating, the corrective action; increased heat loss as heat loss; the temperature regulatory center in brain as the signal from the gap to sweating; normal body temperature, from its text, added as the target; polarities added and the loop named; its heavy red lines drawn as thin signals, and its colors left out.
Exercises
Section titled “Exercises”Passing the checks means meeting the brief, not being right.
FC 01Fresh air in a choir's rehearsal room
One balancing loop that holds a target
Forty singers rehearse for two hours in a room with its windows shut, and every breath adds carbon dioxide to the air. A meter on the wall shows the carbon dioxide in the air, in parts per million. The caretaker has set the ventilation fan to hold the air near 1,000 parts per million: the further the meter's reading rises above that, the faster the fan runs, and the faster it runs, the more carbon dioxide it carries out of the room.
The brief
- Draw one control loop of five variables, each with its part: the target, the gap, the fan's speed as the corrective action, the carbon dioxide in the air as the controlled variable, and the meter's reading as the measured value. checked by the lab
- Declare the control loop balancing. checked by the lab
- Draw the singers' breathing as an external driver acting on the carbon dioxide in the air. checked by the lab
- The fan's speed and the carbon dioxide in the air are two variables. you check this
Your palette
variable polarity loop balancing loop external driver gapa role, written above its variable's name signal targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Double-click or double-tap a variable or a loop's label or name to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a signal, a variable or a loop label on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Signals E
- draw a signal by dragging from one variable to another.
- Loop L
- declare a loop by selecting its signals in order, then label and name it.
Keys
- R reverse the selected signal
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 11 checks passed; 11 pending.
- Draw one control loop of five variables, each with its part: the target, the gap, the fan's speed as the corrective action, the carbon dioxide in the air as the controlled variable, and the meter's reading as the measured value. (Not started)
- Declare the control loop balancing. (Not started)
- Draw the singers' breathing as an external driver acting on the carbon dioxide in the air. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- No effect runs into an external driver (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No external driver acts on a gap or a target (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
FC 02Chlorine in a town's outdoor swimming pool
A target, a corrective action, and what uses it up
A town's outdoor swimming pool holds about 500 cubic meters of water, and the staff keep about 750 grams of chlorine in the water. A dosing pump adds chlorine from a tank: the faster it runs, the faster chlorine goes in. Sunshine and swimmers use chlorine up, faster on hot, crowded afternoons. Every two hours the staff test the water and set the pump's speed by how far the result falls short of 750 grams. Count the chlorine in grams, and time in hours.
The brief
- Draw the chlorine in the water as one stock, the controlled variable. checked by the lab
- Draw sunshine and swimmers as an external driver acting on the flow that uses chlorine up. checked by the lab
- Close one control loop through the flow that adds chlorine: the gap, the pump's speed, the chlorine in the water and the test result. checked by the lab
- The target and the test result name the same quantity, in grams. you check this
Your palette
variable polarity loop balancing loop external driver gapa role, written above its variable's name stock flow cloud signal targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Double-click or double-tap a stock's name or units, a flow's name, a variable or a loop's label or name to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a stock, a flow, a signal, a cloud, a variable or a loop label on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Stocks S
- add a stock (press an empty spot) and name it.
- Flows M
- draw a flow by dragging from a stock or an empty spot to a stock or an empty spot, and name it; clouds appear at empty ends.
- Signals E
- draw a signal by dragging from a variable, a stock or a flow's valve to a variable or a flow's valve.
- Loop L
- declare a loop by selecting its signals and flows in order, then label and name it.
Keys
- R reverse the selected signal or flow
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 15 checks passed; 15 pending.
- Draw the chlorine in the water as one stock, the controlled variable. (Not started)
- Draw sunshine and swimmers as an external driver acting on the flow that uses chlorine up. (Not started)
- Close one control loop through the flow that adds chlorine: the gap, the pump's speed, the chlorine in the water and the test result. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- No effect runs into an external driver (Not started)
- Every stock has units (Not started)
- The time unit is given (Not started)
- Every stock has a flow in or out (Not started)
- Every flow has a name (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No external driver acts on a gap or a target (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
FC 03A kayaker crossing a river
An external driver acting on the controlled variable
A kayaker is learning to cross a river. She aims the bow at a tree on the far bank, and the current pushes the bow downstream, away from the tree. She sees how far the bow has swung off the tree and takes extra strokes on the downstream side, which turn the bow back upstream, until it points at the tree again. Halfway across she picks a new tree. Count a heading as an angle: the further upstream the bow points, the larger the angle.
The brief
- Draw the current's push as an external driver acting on the boat's heading. checked by the lab
- Close one control loop: the gap, her extra strokes, the boat's heading and the heading as she sees it. checked by the lab
- Draw one target: the heading to the tree she aims at. checked by the lab
- The new tree halfway across is her choice: no signal ends at the target. you check this
Your palette
variable polarity loop balancing loop external driver gapa role, written above its variable's name signal targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Double-click or double-tap a variable or a loop's label or name to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a signal, a variable or a loop label on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Signals E
- draw a signal by dragging from one variable to another.
- Loop L
- declare a loop by selecting its signals in order, then label and name it.
Keys
- R reverse the selected signal
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 11 checks passed; 11 pending.
- Draw the current's push as an external driver acting on the boat's heading. (Not started)
- Close one control loop: the gap, her extra strokes, the boat's heading and the heading as she sees it. (Not started)
- Draw one target: the heading to the tree she aims at. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- No effect runs into an external driver (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No external driver acts on a gap or a target (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
FC 04A shower whose hot water arrives late
A corrective action that arrives late
Sofia wants her morning shower at about 38 °C. After a turn of the tap, the water at the shower head changes about five seconds later, once the hot water reaches it. She feels the water, and while it feels too cold she keeps turning the tap toward hot. By the time the hot water arrives she has turned the tap too far, so the water runs too hot; she turns the tap back, and the water swings too hot and too cold before it settles near 38 °C.
The brief
- Mark the seconds between a turn of the tap and the water at the shower head as a delay on the forward path. checked by the lab
- Close one control loop: the gap, the tap, the water temperature at the head and how hot the water feels. checked by the lab
- Add a behavior-over-time graph of the water temperature at the head, overshooting and swinging, with a line at the temperature she wants. checked by the lab
- The delay sits between the tap and the water at the head, not between the water and her skin. you check this
Your palette
variable polarity delay loop balancing loop gapa role, written above its variable's name signal targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name behavior note behavior-over-time graph
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Drag a behavior note to move it. Double-click or double-tap a variable, a loop's label or name or a behavior note to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a signal, a behavior-over-time graph, a variable, a loop label or a behavior note on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Signals E
- draw a signal by dragging from one variable to another.
- Loop L
- declare a loop by selecting its signals in order, then label and name it.
- Note N
- place a behavior note (press where it goes).
- Behavior-over-time graphs H
- select a stock, an auxiliary or a flow, then press an empty spot, to add its behavior-over-time graph there.
Keys
- R reverse the selected signal
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 9 checks passed; 9 pending.
- Mark the seconds between a turn of the tap and the water at the shower head as a delay on the forward path. (Not started)
- Close one control loop: the gap, the tap, the water temperature at the head and how hot the water feels. (Not started)
- Add a behavior-over-time graph of the water temperature at the head, overshooting and swinging, with a line at the temperature she wants. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
FC 05Elephants in a national park
Control with accumulation
A national park's managers aim to hold its elephants near 2,000. In this park about 150 calves are born each year and about 60 elephants die, more in a year of drought. Every two years a survey plane counts the herd. From the latest count the managers approve moving elephants to other parks: the further the count is above 2,000, the more moves they approve. Moves approved this year happen the next year, when the elephants are caught and taken away by truck. Count the herd in elephants, and time in years.
The brief
- Draw the elephants in the park as one stock, the controlled variable, counted in elephants. checked by the lab
- Mark the year between moves approved and elephants moved as a delay on the forward path. checked by the lab
- Close one control loop through the flow of elephants moved: the gap, moves approved, the elephants in the park and the aerial count. checked by the lab
- Moves approved are a variable, and elephants moved the flow: the year lies between them. you check this
Your palette
variable polarity delay loop balancing loop external driver gapa role, written above its variable's name stock flow cloud signal stock equation targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Double-click or double-tap a stock's name or units, a flow's name, a variable or a loop's label or name to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a stock, a flow, a signal, a cloud, a variable or a loop label on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Stocks S
- add a stock (press an empty spot) and name it.
- Flows M
- draw a flow by dragging from a stock or an empty spot to a stock or an empty spot, and name it; clouds appear at empty ends.
- Signals E
- draw a signal by dragging from a variable, a stock or a flow's valve to a variable or a flow's valve.
- Loop L
- declare a loop by selecting its signals and flows in order, then label and name it.
Keys
- R reverse the selected signal or flow
- Q the selected stock's equation, on or off
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 15 checks passed; 15 pending.
- Draw the elephants in the park as one stock, the controlled variable, counted in elephants. (Not started)
- Mark the year between moves approved and elephants moved as a delay on the forward path. (Not started)
- Close one control loop through the flow of elephants moved: the gap, moves approved, the elephants in the park and the aerial count. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- No effect runs into an external driver (Not started)
- Every stock has units (Not started)
- The time unit is given (Not started)
- Every stock has a flow in or out (Not started)
- Every flow has a name (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No external driver acts on a gap or a target (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
CS 08Kelsham Primary School: the governors and the reserve
A stock held to a target, with staff hours as the corrective action
Tom Hale and the governors hold the school's reserve to at least £60,000; in October 2026 it stood at £96,000. Funding arrives through the school year, £4,800 for each pupil at the October count before it and £140,000 whatever the school's size, and pay goes out, a teacher costing the school £52,000 a year. Each term the governors read the reserve in the budget report, and the further it reads below £60,000, the more staff hours they cut, a teaching assistant's before a teacher's. The governors set neither the funding for each pupil nor the pupils on roll. Count the reserve in pounds, and time in years.
The brief
- Draw the school's reserve as one stock, the controlled variable, counted in pounds. checked by the lab
- Close one control loop through the flow of spending: the gap, staff hours cut, the reserve and the reserve in the budget report. checked by the lab
- Draw funding for each pupil and the pupils on roll as external drivers acting on the flow of funding. checked by the lab
- The target and the reserve in the budget report are both counted in pounds, so the gap compares one quantity. you check this
Your palette
variable polarity loop balancing loop external driver gapa role, written above its variable's name stock flow cloud signal targeta role, written above its variable's name corrective actiona role, written above its variable's name controlled variablea role, written above its variable's name measured valuea role, written above its variable's name
To draw in the lab, use a tablet or a larger screen. Everything else reads normally here.
Press an empty spot to add a variable and type its name. Drag a variable to move it. Select a variable, a signal or a loop label to change it. Double-click or double-tap a stock's name or units, a flow's name, a variable or a loop's label or name to edit its words in place, or select it and use Rename or the fields under the canvas.
Nothing selected. Select a stock, a flow, a signal, a cloud, a variable or a loop label on the canvas, and what you can change shows here.
The tools
- Variables V
- add a variable (press an empty spot), move one (drag it), rename one (double-click it, or Rename under the canvas), or select anything.
- Stocks S
- add a stock (press an empty spot) and name it.
- Flows M
- draw a flow by dragging from a stock or an empty spot to a stock or an empty spot, and name it; clouds appear at empty ends.
- Signals E
- draw a signal by dragging from a variable, a stock or a flow's valve to a variable or a flow's valve.
- Loop L
- declare a loop by selecting its signals and flows in order, then label and name it.
Keys
- R reverse the selected signal or flow
- P the selected variable's role, in turn: none, then each role this exercise offers
- +− the selected signal's polarity
- Delete delete what's selected
- Ctrl+Z undo
- Ctrl+Shift+Z redo
- Esc clear the selection
- Enter finish the words you're writing
- Esc cancel them
Keys act on the lab you last used, or on the open lab view, and never while you type.
0 of 15 checks passed; 15 pending.
- Draw the school's reserve as one stock, the controlled variable, counted in pounds. (Not started)
- Close one control loop through the flow of spending: the gap, staff hours cut, the reserve and the reserve in the budget report. (Not started)
- Draw funding for each pupil and the pupils on roll as external drivers acting on the flow of funding. (Not started)
Always checked
- Each loop's kind matches its − effects (Not started)
- Loop labels are unique and match their kind (Not started)
- No effect runs into an external driver (Not started)
- Every stock has units (Not started)
- The time unit is given (Not started)
- Every stock has a flow in or out (Not started)
- Every flow has a name (Not started)
- Each gap reads a target and a measured value, with opposite polarities (Not started)
- Each measured value reads a controlled variable (Not started)
- Each gap closes a balancing loop (Not started)
- No external driver acts on a gap or a target (Not started)
- No variable's name breaks the more test's three rules (Not started)
Written feedback
One defensible answer
It opens here once you've drawn at least one variable in the lab above. Your attempt saves as you draw.
Sources
Section titled “Sources”- 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 and a thermostat’s on-off rule, and chapter 3, on how engineers draw boxes and lines.
- 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.
- Bank of England, Monetary policy, on the 2% target the government sets.
- Bank of England, What is happening with interest rates in the UK?, on gas prices after Russia’s invasion of Ukraine and the rate rises from the end of 2021.
- Bank of England, Monetary Policy Report, August 2024, box C, on the impact of interest rates on inflation peaking at around one to two years.