1. Parametric Airbag Vent Model Setup
Parametric Airbag Vent Model Setup
An airbag vent is a deceptively simple part: a thin flap of fabric or reinforced film that covers an opening in the cushion and peels back at a calibrated pressure. Its behavior during deployment is governed almost entirely by two geometric quantities — the vent hole diameter and the flap thickness. Because downstream work in this course (mass flow sizing, sensitivity sweeps, CSV-driven parameter studies) depends on a model whose geometry can be driven by named parameters, the first task is to build a vent model that is fully parametric and provably regenerable.
This case builds that model from scratch in a CAD-neutral way, then verifies it by driving the parameters through a small set of values and checking that the regenerated geometry matches the expected analytic relationships. The deliverable is a parameter table plus a regeneration check that you can reuse as the geometric foundation for every later case.
Defining the parametric skeleton
Before any solid geometry is created, fix the parameter set. A vent model needs a small number of driving parameters (the ones a designer or script will change) and a larger number of derived parameters (computed from the drivers so that the model stays self-consistent). Keeping this split explicit is what makes later automation safe: a script should only ever touch drivers.
| Parameter | Role | Example value | Unit | Notes |
|---|---|---|---|---|
vent_dia |
Driver | 40.0 | mm | Clear opening diameter; primary flow-area driver |
flap_thk |
Driver | 0.35 | mm | Flap material thickness; governs peel stiffness |
flap_overlap |
Driver | 6.0 | mm | Radial overlap of flap beyond hole edge |
panel_thk |
Driver | 0.60 | mm | Cushion panel thickness the vent sits in |
flap_dia |
Derived | vent_dia + 2*flap_overlap |
mm | Outer diameter of the flap disc |
vent_area |
Derived | PI * (vent_dia/2)^2 |
mm² | Effective flow area; feeds later mass-flow cases |
flap_volume |
Derived | vent_area * flap_thk |
mm³ | Approximate flap material volume |
Two conventions must be stated up front because they recur in every later case. First, all dimensions are in millimetres and the model origin sits at the centre of the vent hole on the outer face of the cushion panel, with the +Z axis pointing outward (away from the bag interior). Second, vent_area is the geometric clear area; it is not yet corrected for discharge coefficient or flap lift, which belong to the flow cases. Keeping the geometric and flow definitions separate prevents double-counting later.
Building the geometry
The model is three features deep, which is deliberate — a shallow feature tree regenerates fast and fails loudly when a parameter is wrong.
- Panel with vent cutout. Sketch a rectangular panel (say 120 × 120 mm) on the XY plane, extrude it by
panel_thk, then cut a circle of diametervent_diaconcentric with the origin through the full thickness. The cut must be through-all, not a fixed depth, so that changingpanel_thknever leaves a blind hole. - Flap disc. On a plane offset
panel_thkabove the panel face, sketch a circle of diameterflap_diaand extrude byflap_thk. Becauseflap_diais derived fromvent_diaandflap_overlap, the flap automatically grows and shrinks with the hole. - Hinge relief (optional but recommended). A small rectangular notch cut into one edge of the flap disc, sized as a fraction of
flap_dia, represents the hinge line where the flap stays attached. This keeps the model topologically valid when the flap is later used for peel-angle studies.
The critical modelling rule: every sketch dimension must reference a named parameter, never a typed literal. If a dimension reads 40 instead of vent_dia, the model will silently stop tracking that parameter and the regeneration check below will catch it — but only if you look. The check exists precisely to make that failure visible.
flap_dia = vent_dia + 2*flap_overlap) rather than as driven dimensions inside sketches. Expressions in the table are visible, auditable, and exportable to the CSV that later cases consume.
Regeneration verification
A parametric model is only trustworthy if it regenerates correctly across the intended parameter range. The verification below drives the two headline parameters through a small matrix and checks the regenerated geometry against the analytic relationships. The values are teaching examples chosen to span a plausible passenger-vehicle vent range; they are not measured data.
# Regeneration check — run against the CAD API or by manual parameter entry.
# Expected values are computed analytically from the driver set.
import math
cases = [
# vent_dia, flap_thk, flap_overlap, panel_thk
(30.0, 0.25, 5.0, 0.50),
(40.0, 0.35, 6.0, 0.60),
(55.0, 0.50, 8.0, 0.80),
]
for vent_dia, flap_thk, flap_overlap, panel_thk in cases:
flap_dia = vent_dia + 2 * flap_overlap
vent_area = math.pi * (vent_dia / 2) ** 2
flap_volume = vent_area * flap_thk
# --- set drivers in the model, then regenerate ---
# set_parameter("vent_dia", vent_dia)
# set_parameter("flap_thk", flap_thk)
# set_parameter("flap_overlap", flap_overlap)
# set_parameter("panel_thk", panel_thk)
# regenerate()
# --- read back measured geometry ---
# measured_flap_dia = measure_diameter("flap_disc")
# measured_vent_dia = measure_diameter("vent_cutout")
# measured_flap_thk = measure_thickness("flap_disc")
print(f"vent_dia={vent_dia:5.1f} flap_dia(exp)={flap_dia:6.2f} "
f"vent_area(exp)={vent_area:8.2f} mm^2 "
f"flap_volume(exp)={flap_volume:8.2f} mm^3")
When you run the equivalent steps in your CAD tool, the acceptance criteria are:
- No regeneration errors. The feature tree rebuilds with zero suppressed or failed features for every case in the matrix.
- Measured flap diameter equals
vent_dia + 2*flap_overlapwithin modelling tolerance (typically ±0.01 mm). A mismatch means a sketch dimension was typed as a literal instead of referencingflap_dia. - Measured vent diameter equals
vent_diaand the cut remains through-all whenpanel_thkchanges. - Measured flap thickness equals
flap_thk, confirming the extrude depth is parameter-driven.
panel_thk and only breaks when the panel thickness changes.
How the parameters connect
The diagram below shows the dependency structure of the model: which parameters are drivers, which are derived, and how a change to a driver propagates through the derived quantities into the regenerated geometry. This is the map you will reuse when a script later sweeps these parameters.
Reusable parameter and check sheet
The table below is the deliverable you carry forward. Fill the "measured" column from your CAD tool after regeneration and compare against the expected expression. This sheet is also the natural input format for the sensitivity script in a later case, so keep the driver columns clean and numeric.
| Check | Driver(s) changed | Expected expression | Measured | Pass condition |
|---|---|---|---|---|
| Flap tracks hole | vent_dia, flap_overlap |
vent_dia + 2*flap_overlap |
— | |Δ| ≤ 0.01 mm |
| Vent cutout diameter | vent_dia |
vent_dia |
— | |Δ| ≤ 0.01 mm |
| Cutout through-all | panel_thk |
full panel depth | — | no blind floor |
| Flap thickness | flap_thk |
flap_thk |
— | |Δ| ≤ 0.01 mm |
| Feature tree health | all | 0 failed features | — | clean rebuild |
Once every row passes across the three-case matrix, the model is a valid geometric foundation. The derived vent_area and flap_volume values it produces are the quantities that later flow and sensitivity work will consume, so the accuracy of this regeneration check directly bounds the trustworthiness of everything downstream.