Shift performance
Three crews, the same line, the same target — and one of them is quietly behind. This card slices the production series by the hours each shift works, then gives every shift a row: one bar per run against the target line, the average per run, how much of the target that is, and the share of good output when a scrap key is added. The run that is still going is drawn but never averaged, so a half-finished shift never makes a crew look bad.
Who it’s for
Anyone who runs the same line around the clock with different crews on it — a production supervisor, a plant manager, a continuous-improvement engineer. The daily counters already tell them how much came off the line. What they cannot see is whether the night crew is quietly thirty percent behind the morning one, or whether one shift is steady and another swings from excellent to awful and averages out in the middle.
What it does
A line runs three eight-hour shifts with a target of 500 pieces each. Over the last week Morning averaged 524 a run and Day 498, while Night averaged 330 — and the row of bars shows Night was never once near the line, so it is a staffing problem rather than a bad night.
- Slices one production series by the hours each shift works, so no separate key or tag per shift has to exist anywhere.
- Gives every shift a bar per run against its own target line, which is what separates a steady crew from one that averages the same and swings wildly.
- States the average per run and what percentage of target that is, and badges the leading shift.
- Adds the share of good output when a scrap key is present, so a shift that makes its number by making rework is visible.
- Counts only the runs the time window covers end to end. The one still going, and the one the window opened in the middle of, are drawn in gray and left out of the average, so a half-finished shift never makes a crew look bad.
- Reads a running total as readily as a per-interval count, by summing the steps between readings, so a counter that is reset at every shift change costs nothing.
- Compares shifts of one line on one entity. For several lines side by side, place one card per line.
How to set up
Data keys
The widget takes the production series, and optionally a scrap series, from one entity.
- Good output —
Timeseries. The pieces produced. Set What this key counts to Good output; a key with nothing set is treated as this one. Units and decimals come from the key itself. Without it the card says there are no production readings. - Scrap or rejects —
Timeseries, optional. Set What this key counts to Scrap or rejects. It adds the Good column, which is good divided by good plus scrap over the period. Leave it out and the column is not shown.
The dashboard time window decides which runs are compared. A week gives five to seven runs of each shift; a month gives around thirty, of which the last twenty-four are drawn while every complete one still counts toward the average.
Shifts
- Shifts from — the list below, by default. Choose a key on the entity when each line keeps its own pattern and targets, rather than repeating them in every dashboard.
- Shifts — Morning 06:00, Day 14:00 and Night 22:00 at 500 each, by default. Every shift runs until the next one starts, so three start times cover the day and no boundary can be typed twice. Starts at is local time as HH:MM, and Target is per run of that shift, not for the whole period.
- Key name — empty by default, and used only when the shifts come from a key.
It holds a JSON array like
[{"name":"Morning","start":"06:00","target":500}], read as an attribute or as telemetry. While it is empty or unreadable the list above is used instead. - Readings are — produced since the last reading, by default. Switch to a running total for a counter that only goes up.
How to customize
- To rank the shifts instead of listing them — set Row order to Best first or Worst first; by start time is the default.
- To match the card to the card next to it — turn off Scale to fit the card, on by default, and the configured font sizes are kept at any size.
- To change what a hit and a miss look like — On target,
#3E9C63by default, colors the runs that reached the target, the percentage and the Best badge; Short of target,#D8536B, colors the rest. - To restyle the text — Label font sets the numbers, with the headers and the shift hours one step smaller; Label color is for the headers and hours, Value color for the numbers themselves.
Tips
- Set the target to what one run of that shift is supposed to produce. The card divides by the number of complete runs, so the same target reads correctly whether the window is a day or a month.
- Hover any bar for the date of that run, what it produced, and how far from target it landed.
- Hold the shift pattern as a server attribute and point Key name at it when lines differ. Changing a rota then changes one attribute rather than every dashboard that shows that line.
- A shift that reaches its target with a visibly lower Good share is buying its number with rework. The two columns are worth reading together.
- If every run looks short, check Readings are first — a running total read as per-interval output inflates the numbers, and a per-interval count read as a total flattens them.
Share Your Widget with the Community
Built a custom widget? Export it as a JSON from ThingsBoard and publish it to the IoT Hub through a simple 4-step wizard (Upload, Listing, Readme, Review & Submit). Share it with thousands of ThingsBoard developers worldwide and get featured in the catalog.