The trend object on an HMI panel is not intended to sample faster than once per second, so a trigger bit that pulses for 167 ms never gets seen. Capture every half-inch platen position in a PLC buffer register, then hand one value per second to the register the trend reads. Hold the trigger for 1 s only to prove the wiring works.
A platen that travels a press or a positioning table gives you one position every half inch. The trend graph on the HMI panel misses most of them. The trigger bit from the PLC pulses for a fraction of a second. The trend object samples once per second at best, so the pulse usually starts and ends between samples. Holding the bit on for a full second makes the point appear, but stopping the platen at every mark is no way to run a job.
The fix lives in the PLC. Capture every 0.5 in position into buffer registers while the platen moves at full speed, then hand the values to the register behind the trend one per second. This page gives the checks, the buffer logic, the arithmetic that sizes the buffer and the drain, and the decision for when the panel can carry the record and when it cannot.
Why the trend misses the half-inch pulses
The trend object in a panel HMI is not intended for trending faster than once per second. That is the documented design limit for the object. It comes with a second documented fact: faster triggering misses points, and the miss rate depends on how many trend objects and other processes the panel runs in the background. No trigger setting removes that limit.
A trigger bit held on for a full second always spans a sample instant. That is why the one-second hold produces a point where a short pulse produces none. A half-inch event at production speed is far shorter. At 3 in/s the trigger bit is on for about 167 ms per position, and a 167 ms pulse usually starts and ends between samples.
The panel's built-in clock tags SYS Clock500ms and SYS Clock200ms can be picked as the Trigger tag of one trend object, which plots that object on a faster time base. A clock samples on time, not on position, so it passes over half-inch marks, and it still drops points under background load. Treat a clock trigger as a diagnostic view, never as the record.
The refresh arithmetic behind the one-second limit is worked through in why an HMI trend graph will not update every half second.
Symptoms and what each points to
The pattern is specific, and each symptom points at one layer:
- A point appears when the trigger bit is held on for 1 s, nothing appears on a short pulse. The pulse is shorter than the panel's sampling cycle. Capture belongs in the PLC; go straight to the buffer fix below.
- A clock-triggered trend draws a line, but the points sit at even time spacing instead of at the half-inch marks. The clock tag sampled time. Position capture is what is missing, not display speed.
- The trend shows fewer points than the PLC counted events, and the count changes from run to run. Background load on the panel dropped samples. Buffer and transfer, then retest with every trend object you normally run active.
- Stretched pulses produce flat or duplicate points at speed. At 6 events per second, a 1 s hold spans six thresholds, the bit never drops out and the capture logic loses the edge it needs. The stretched bit is a diagnostic only.
If the PLC itself skips thresholds, no display setting will recover the missing events. Check capture first.
Check that the PLC catches every half-inch first
Separate capture from display. The PLC has to catch every threshold while the platen moves at full travel speed. The trend object is a display path and cannot recover an event the PLC never saw.
- Watch the position register through one full-speed stroke. The count must cover the full travel with no skipped values. If it skips, fix the encoder input first; a high-speed input is the usual cure.
- Set the threshold interval from the machine's own encoder scaling. If the position register is scaled to 0.1 in per count, one half-inch step is 5 counts. Never borrow a count value from another machine.
- Fire the capture once per step. Set the capture bit on entering the threshold band and re-arm it only after the position leaves the band, the same compare-and-save pattern that logs PLC data on V-memory change.
- Count capture events over one cycle and compare with the expected total. A 12 in stroke at that step interval must produce 24 events.
Run this check from the panel or a connected laptop, with hands and tools clear of the moving platen.
Buffer in the PLC, transfer one value per second
When the PLC catches every threshold but the trend does not, store the positions in PLC buffer registers and replay them into the trended register at a pace the panel is documented to keep.
- At each threshold, copy the scaled position into the next free buffer register and advance the write pointer. Size the buffer from the fastest job; the worked example below sizes one.
- Track an unread count: the capture adds one per event, the transfer removes one per value. When the buffer is full, stop writing and set a buffer-full alarm bit, so the record shows a flagged gap and the loss is declared, never silent.
- Pace the read side with a one-second clock bit in the PLC, the same timer pattern as a PLC seconds countdown built on a one-second clock. On each pulse, if the unread count is above zero, copy the oldest buffered value into the register the trend reads, drop it from the queue and decrement the count.
- Pulse the trend trigger with the same transfer, and point the object's Trigger tag at that bit. One value per second gives every point a full sampling cycle to land in.
- Verify with four counts from one cycle: capture events, buffer writes, transfers and trend points. All four must match, and the plotted positions must step by one half-inch interval in the travel direction with no duplicates. Repeat the test with the panel's normal workload running, because a light-load test hides dropped points.
If trend points come up short while the buffer count is complete, the panel is the bottleneck. Keep the full record in the PLC and let the trend carry a coarser view, or move the record to a dedicated high-speed data collector. If the points must also survive a panel power cycle, they have to be held where they are captured; HMI historical trend graphs need PLC memory history explains why the PLC is that place.
One honest limit of the graph itself: a replayed value plots at transfer time, so the trend is a position record, not a time record.
Worked example: a 12 in stroke at 3 in/s
Press platen, 12 in stroke, position recorded every half inch, platen speed 3 in/s, press cycle 40 s.
- Events per stroke: 12 in / 0.5 in = 24 events.
- Stroke time: 12 in / 3 in/s = 4 s.
- Event interval: 4 s / 24 = 0.167 s, so each trigger pulse lasts about 167 ms.
- Direct trigger: the trend samples once per second, so a 4 s stroke yields at most 4 points for 24 events, and usually fewer, because a 167 ms pulse must be on at the sample instant to be seen. Direct triggering is out.
- Clock trigger on
SYS Clock500ms: two samples per second gives at most 8 points of 24, still misses 16, and the documented guidance says points may be missed under background load. Also out as a record. - Buffered replay: 24 values transferred one per second take 24 s to plot. The cycle leaves 40 s - 4 s = 36 s of dwell, so the buffer drains with 12 s to spare. Decision: the buffered trend carries the whole stroke.
- Buffer size: one stroke is 24 registers; allocate 48 for two strokes of headroom, alarm at 80% full, which is 39 values, and stop writing when full.
- Back-to-back travel with no dwell: at 3 in/s the machine makes 6 events per second and the transfer removes 1 per second, so the backlog grows 5 values per second and fills 48 registers in about 10 s. Decision: the panel cannot carry the record at this pace. Keep the half-inch record in the PLC or a data collector, and give the trend a coarse view of every eighth threshold, every 4 in. That is 12 in / 4 in = 3 points per stroke and 3 points / 4 s = 0.75 points per second, inside the drain rate.
Recommendation: buffer every half-inch position in the PLC and replay one value per second into the trended register, whenever the cycle leaves at least as much dwell as the replay takes; on back-to-back travel with no dwell, keep the 0.5 in record in the PLC or a data collector and let the trend plot a coarse view instead.
What to run on your machine
Capture every half-inch position into PLC buffer registers while the platen moves. Feed the register behind the trend one value per second from a paced transfer bit, with the object's Trigger tag pointed at that bit.
Hold the trigger for 1 s once, to prove the trend fires. Never use the stretched bit as the record, because at speed it spans several thresholds and destroys the event edges.
If the cycle leaves the panel at least as much dwell as the replay takes, 24 s of drain for a 24-point stroke in the example above, the buffered trend carries the whole record. If the platen travels back-to-back with no dwell, the panel cannot keep up even buffered: keep the 0.5 in record in the PLC or a data collector, and let the trend plot a coarse position view, every 4 in in that example, which stays inside one point per second.
Questions
Can a trend object be made to sample faster than once per second?
The panel's internal clock tags SYS Clock500ms and SYS Clock200ms can be selected as the Trigger tag of one trend object, and each trend object can carry a different trigger. That changes when that object samples, nothing more. Points still go missing depending on how many trends and other processes run in the background, and the panel's internal clock speed is not a user setting.
How large should the PLC buffer be?
Size it from the fastest job: half-inch steps per stroke, times the strokes the panel may fall behind at peak, plus margin. A 20 in stroke at half-inch steps is 40 registers for one stroke; if the transfer can lag two strokes, keep 120. Set an alarm at 80% full so the backlog shows before the buffer does, and decide the full condition in advance: stop writing and flag the gap.
How do I keep the time each position was taken?
A replayed buffer plots each value at transfer time, so the trend cannot show when a position was taken. In the same PLC rung that copies a position into the buffer, copy the PLC clock into a parallel time-stamp buffer at the same index. After the run, export both buffers and plot position against stored time. The trend stays a position record; the paired buffers carry the timing.
Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.