Test Data Tab

From BurnSim Wiki
Jump to navigation Jump to search

The Test Data tab (next to Results and Notes, bottom right of the main window) lets you bring real motor-test data into BurnSim and compare it against a simulation.

BurnSim 4 Test Data tab with imported data
Test data imported and overlaid on the simulated curves

Importing

  • Import File... - reads CSV and other delimited text (.csv, .txt, .tsv, .dat), WinDaq recordings (.wdh, .wdq) and RMTS firings (.fire). See Import from CSV
  • Import Clipboard - columns copied from a spreadsheet, the same way as a text file
  • Re-import... - converts the selected set again from the file embedded when it was imported, to correct a sensor calibration, a column or channel assignment or the window, without needing the original file. (Only for imports small enough to embed - under about 1 MB compressed.)
  • Each import becomes a named dataset, selectable from the dropdown at the top of the tab; Delete removes the selected one. The grey line under the buttons says where the selected set came from

Changed in 4.0.0.24. Every import except a .fire file opens one dialog, where you say what each column or channel is. The rest of this section describes it.

The import dialog

  • Roles. Each column (text) or channel (WinDaq) gets a role: Time, Pressure, Thrust, Fire marker or Unused. Pressure or thrust is required - a thrust-only stand imports fine. Header names and units such as Pressure (psi) are read to start you off; a file with no header is taken as time, pressure, thrust, so an old three-column file imports as it always did.
  • Units. A column already in engineering units is marked Already in psi, kPa, MPa, bar, Pa, lbf, N or kgf. A column of raw volts goes through a sensor from your saved list instead. Time can be in s, ms or µs, or given as a sample rate when there is no time column.
  • Sensors. New... adds a sensor: a name, whether it measures pressure or force, its units, and its calibration as a slope and intercept per volt - or calculate it from two known readings, such as its output at zero and at a pressure read off a reference gauge. A sensor can also be set to zero itself from its pre-fire reading on every import, and carries a serial number, calibration date and notes. Sensors are saved, so you set each one up once.
  • t=0. Either BurnSim finds it - from a fire marker channel if there is one, otherwise where pressure (or thrust) starts to rise - or you keep the file's own times, for data you already processed. A fire marker is a spare DAQ channel wired across the igniter leads, with the DAQ ground tied to one lead; t=0 is then the moment the firing circuit closed.
  • Zeroing. Converted columns can be zeroed against their reading just before t=0, because a transducer's resting output wanders between firings.
  • Pressure drift. A transducer whose zero drifted during the firing can be corrected from its reading after burnout. The import says when it has done this.
  • Vertical firings. Fired vertically, the load cell was zeroed with the propellant's weight on it, so thrust drifts by the weight burnt away. Say how the motor sat on the stand and give its propellant mass, and the import adds the weight back (nozzle up) or takes it off (nozzle down) as the propellant burns.
  • Window. Keep only the firing keeps the burn plus a lead-in before t=0 and a tail after pressure has fallen back, every sample at the recorded rate; both are 0 s to start with, so the set runs from t=0 to burnout. Untick it to import the whole recording, still with t=0 at the fire.

Pressure is gauge, as it always was for CSV imports, and a negative pressure reading becomes zero. A packed WinDaq file (channels recorded at different rates) is refused with a message.

RMTS firings

An RMTS .fire file imports directly, already set up from the file - including the weight correction for a vertical firing.

Working with a Dataset

  • Use in simulation - when checked, the dataset's pressure/thrust traces are drawn on the graph alongside the simulated ones, so you can see how closely the simulation matches reality. This setting is saved with the motor, so a motor you saved with its test data graphed comes back that way next time you open it.
  • The grid below is a live, editable view of the dataset's raw points - edit a cell, or use Add Row / Delete Rows to fix bad points (shift-click to select a range)
  • Add to Burn Rate Data... - measures the selected firing's burn rate as web thickness over burn time, at the mean chamber pressure, and adds it as a point to the current propellant's burn rate data. The measured burn window is marked on the graph while you confirm. See Add to Burn Rate Data
  • Trim... - removes a number of points from the start of the dataset, and shifts the time base of what's left so the trimmed trace still begins at about zero. Useful for dropping a run of leading zeros recorded before the igniter fired. Note that you do not need to trim an ignition spike or a post-burnout tail for characterization - BurnSim finds and excludes those itself, and it needs the full burn to measure burn time. See Import the whole trace.

On the Graph

With a dataset checked "Use in simulation", three extra checkboxes appear above the graph (see Graph):

  • Imported Pressure - the dataset's raw pressure trace
  • Imported Thrust - the dataset's raw thrust trace, if it has one
  • Thrust From Imported Pc - thrust back-calculated from the imported pressure trace through the motor's actual nozzle, useful when your test data only recorded pressure

All three are drawn over the full length of the imported data, however long the simulated burn turned out to be. If an imported trace carries on past the point where the simulated curves drop to zero, you are seeing real recorded data from after the motor burned out - which is normal and expected - BurnSim uses it. Since 4.0.0.24 the CSV export, Thrust From Imported Pc and the measured impulse also run to the end of the recording rather than stopping at the simulated burnout, so the measured impulse of a set that outlasts the simulation is now complete.

Test data recorded faster than the simulation's time step is averaged across each step rather than sampled at its first point. A 100 Hz set compares exactly as before; a 1 kHz set will look smoother against the simulation than it did in earlier versions.

Characterizing a Propellant from Test Data

BurnSim 4 can fit a propellant's burn rate coefficient and exponent (a and n) directly from a dataset imported here - open Action → Characterize Propellant... with the dataset you want to fit against selected in the dropdown above. See Characterizing a propellant inside BurnSim 4 for the full walkthrough.

Import the trace complete, from before ignition to after burnout. Earlier advice to trim the ignition spike and the post-burnout tail by hand no longer applies: BurnSim excludes both from the curve fit automatically, and it needs the whole burn to measure burn time from. See Import the whole trace.