Pulsejet chamber pressure along the rail

Mouse: drag to pan · wheel to zoom time/position · shift+wheel or wheel over the left axis to zoom vertically · ctrl+wheel zooms both · shift+drag to zoom to a box · double-click to reset · click any plot with probe position along the bottom to choose the position shown on the right · space bar plays/pauses

Pressure wave along the chamber

Chamber pressure along the rail through one engine cycle

The probe swept the rail with the engine running, so each position was seen at a different time. A piezo sensor fixed to the engine marks where each cycle starts, which lets the readings be lined up as if every position were measured at once. The blue line is the pressure at every position at one instant of the cycle; press Play to step through it in slow motion. Faint lines show the same wave slightly earlier, so you can see which way it moves. The grey band spans the lowest to highest pressure each position reaches; the dashed line is that position's average. Zero is the reading with the engine off. Pressure is in mV of bridge output per V of bridge drive (mV/V); there is no kPa calibration yet.

One engine cycle of pressure at the chosen position

Pressure over two engine cycles at the position chosen by clicking a plot. Thin lines are the individual sweeps (blue outward, orange inward); the black line is their average. The vertical line follows the animation.

Pressure harmonics at the chosen position

The repeating cycle split into sine waves at 1×, 2×, 3× … the engine frequency. Bar height is each one's amplitude, in dB relative to 1 mV/V (+20 dB = 10 mV/V, −20 dB = 0.1 mV/V). Grey bars are left out of the animated wave by the harmonics slider.

Pressure map: position along the rail × point in the engine cycle

Each column is one probe position and each row one instant of the engine cycle; two cycles are stacked so the pattern can be followed across the wrap. Red means above the engine-off pressure, blue below. If the bands slope, the wave is travelling, and the slope gives its speed. If they run straight across, every position rises and falls together (a standing wave). Dashed lines mark the instant shown in the animation.

How the cycle changes along the rail

Highest, lowest and average pressure in the cycle

At each probe position, for the average of the chosen sweeps. mV/V of bridge drive, zero = engine off.

Pressure swing per sweep

Highest minus lowest pressure in one cycle (peak-to-peak), mV/V of bridge drive, for each sweep separately and their average. Where the sweeps disagree, the engine changed between them.

Pressure amplitude at the engine frequency

Amplitude (half the peak-to-peak) of the sine-wave part of the pressure at the engine's own frequency, mV/V, for each sweep.

Pressure timing relative to the piezo

How many degrees of the engine cycle the pressure's engine-frequency sine wave leads the piezo's. A constant value along the rail means the whole chamber moves in step; a steady slope means a travelling wave. Grey dots are individual 0.05 s slices of data; the black line is a smooth fit. The zero point is arbitrary (it includes an unknown fixed delay in the audio codec), so only changes along the rail mean anything.

Pressure amplitude at each harmonic

Amplitude of the pressure at 1×, 2× … 6× the engine frequency, mV/V, average of the chosen sweeps. A pure sine-wave cycle has only the 1st.

When in the cycle the pressure peaks

Point in the engine cycle (degrees, 0 = peak of the piezo signal, 360 = one full cycle) where the pressure is highest, for each sweep.

Rate of change of pressure timing along the rail

Slope of the "timing relative to the piezo" plot, in degrees per mm, fitted over ±6 mm. Hover to see the speed a travelling wave with that slope would have. In standing-wave regions the slope is near zero and that speed is meaningless.

How repeatable the cycles are

Share of the pressure's variance that repeats identically every cycle. 1 means every cycle is the same; lower means cycle-to-cycle variation or noise.

Amount of data behind each position

Number of engine cycles averaged into each 2 mm slice of the rail, for each sweep. The more cycles, the less noise.

What happened during the run (time axes are linked: zooming one zooms all)

Probe position over time

Probe position in mm from the Limit− end stop. Blue shading marks outward sweeps, orange inward. Dots along the top are logged events; hover them for the text.

Engine frequency over time

Blue: the engine's firing frequency in Hz, read from the pressure. Grey: the piezo's strongest frequency, which is often something other than the engine, so the piezo is checked at the pressure's frequency instead.

Is the engine signal clear enough to use?

How far the engine-frequency peak stands above the rest of each signal's spectrum, in dB (20 dB = 10×). Data counts only while both signals are above their dashed thresholds.

Pressure timing relative to the piezo, over time

Degrees by which the pressure's engine-frequency sine wave leads the piezo's, for each 0.05 s of data. The dashed line is the fitted slow drift that the "remove slow timing drift" option takes out.

Steadiness of the pressure–piezo timing

For each 0.05 s of data: 1 means the pressure kept a fixed timing relative to the piezo throughout, 0 means no fixed relation (the piezo was not a usable cycle clock).

Pressure sensor temperature

Temperature of the Kulite sensor in °C, inferred from its bridge current. Dashed lines bound the range the temperature calibration covers.

Pressure amplitude over time

Blue: amplitude of the pressure at the engine frequency, mV/V. Purple: RMS of the whole pressure signal, all frequencies, mV/V. One dot per 0.05 s.

Piezo amplitude over time

Amplitude of the piezo signal at the engine frequency, in mV at the Teensy input pin. One dot per 0.05 s. When it falls, the cycle timing gets noisier.

Pressure spectrum over time

Frequency content of the pressure signal, in 0.1 s slices. Darker means stronger; hover for the level in dB. Orange dots are the engine frequency.

Piezo spectrum over time

Frequency content of the piezo signal, in 0.1 s slices. Darker means stronger; hover for the level in dB. Orange dots are the engine frequency.

Sweeps in this capture

Timing drift while the probe was parked

While the probe is not moving, any change in how far the pressure leads the piezo cannot come from position: it is drift — the piezo's mounting or the engine changing as it warms. Each row is one stretch of at least 1.5 s with the probe parked and the engine running. A wave crossing the 210 mm stroke changes the timing by only about 19–35°, so drift of a few degrees per second over an 8 s sweep is enough to hide it.

Capture details and processing settings

How the numbers are made

Pressure (mV/V of bridge drive)
The Kulite sensor is a resistor bridge driven with a 24 kHz square wave. Its output, in mV per V of drive, is proportional to pressure. The lock-in demodulator turns it back into a signed reading, and this page uses that signed reading. The strain_scope default trace is the magnitude of the demodulated signal. Magnitude drops the sign, so negative (below-atmospheric) pressure appears flipped upward, sitting on the bridge's ~3 mV/V zero offset. That is why the scope's dips flatten out above zero. Here zero is the reading with the engine off. The sign is chosen so the sharp peaks point up; "flip pressure sign" reverses it. There is no kPa calibration yet.
Point in the engine cycle (degrees)
The piezo sensor stays fixed on the engine, so it gives a cycle clock that does not move with the probe. Its signal is filtered to a narrow band (±10 Hz) around the engine frequency, and the angle of that sine wave says where each moment falls in the cycle: 0° at the piezo's positive peak, 360° one full cycle later. The engine frequency is read from the pressure, but the cycle angle comes only from the piezo. A fixed, known 161.5 µs offset between the two channels is corrected. The audio codec's own filter delay is not known, but it is the same at every position.
Engine frequency (Hz)
The strongest spectral peak of the pressure, in 0.5 s slices. The engine counts as running only when three things hold: that peak stands at least 20× (26 dB) above the spectrum's median; the piezo has a peak at the same frequency at least 8× (18 dB) above its median; and the frequency is within 20 % of the capture's typical value, which rejects slices where a harmonic is strongest.
Probe position (mm)
From the motor's step count. The typical end-stop-to-end-stop travel, about 33.6 motor revolutions, is taken as the stage's full 210 mm, giving 6.248 mm per revolution. Each sweep's zero is reset at the Limit− end stop it starts or ends at, so small step-count drift between sweeps does not accumulate.
Averaging the cycle at each position
The rail is cut into 2 mm slices and the data is split by sweep. In each slice, every pressure sample is sorted by its point in the engine cycle and averaged, giving one clean cycle for that position. The average is stored as the cycle's harmonics (sine waves at 1× to 20× the engine frequency), and the wave is redrawn from them; the harmonics slider sets how many are used. Averaging several sweeps weights each slice by its number of samples.
Slow timing drift
As the engine and the piezo's mounting warm up, the pressure-vs-piezo timing creeps by about a degree per second, even at a fixed position. Because the probe passes each position several times at different moments, that creep can be separated from real changes along the rail. The fit is "timing = smooth function of position + constant × time". With the option ticked, the time part is removed before the sweeps are averaged, treating the creep as a small time shift of the whole cycle.