Use user parameters and equations to create adaptable, intelligent CAD models.
Professional CAD models are not static; they are highly adaptable templates. Parametric design allows you to define dimensions using mathematical variables instead of raw numbers. In robotics, this is especially powerful: a single parametric chassis model can be resized for different weight classes, motor mounts can adapt to new actuators, and wheel assemblies can scale from tabletop rovers to full-size field robots — all from one master design.
Parametric modeling shifts your mindset from "drawing shapes" to "encoding design intent." Every dimension becomes a decision you can revisit, test, and optimize without rebuilding geometry from scratch. This is the foundation of iterative prototyping — the ability to explore dozens of design variations in minutes rather than hours.
Instead of typing 20mm directly into a sketch dimension, you define a named variable like GearThickness = 20mm in the User Parameters table. When you reference GearThickness in any sketch or feature, it links back to this single source of truth. Change the parameter once and the entire 3D model updates automatically — no need to hunt through dozens of features to find the right dimension.
Here is an example parameter table for a simple differential-drive robot chassis:
| Parameter Name | Value | Unit | Purpose |
|---|---|---|---|
WheelDiameter |
100 | mm | Outer diameter of the drive wheels |
AxleLength |
150 | mm | Distance between inner wheel faces |
BoltHoleSize |
5 | mm | Diameter for M5 mounting bolts |
WallThickness |
3 | mm | Shell thickness for 3D-printed enclosure |
GearModule |
1.5 | — | Gear tooth size (metric module) |
Parameters become truly powerful when you link them together with equations. Instead of setting every dimension independently, you express relationships — so when one value changes, all dependent dimensions follow automatically.
For example, if the bearing bore must always be slightly larger than the axle to allow a press fit:
BearingBore = AxleRadius * 2 + 0.2 mm
You can also use expressions for gear calculations, pattern spacing, and structural proportions:
GearPitchDiameter = GearModule * ToothCountMountingHoleSpacing = ChassisWidth / 4WheelRadius = WheelDiameter / 2
Equations turn your model into a living system where every dimension knows its relationship to the whole. Change WheelDiameter and the axle clearance, fender height, and ground clearance all adjust in concert.
Design intent is the reasoning behind each dimension and constraint. It captures why a dimension is what it is, not just what it is. A mounting hole is not simply "5 mm" — it is "sized for an M5 bolt with 0.2 mm clearance." A wall is not "3 mm thick" — it is "the minimum printable thickness for PLA at 0.4 mm nozzle."
When you encode design intent through parameters and equations, anyone who opens the model later (including future you) can understand the logic. If a bolt size changes from M5 to M4, you update BoltHoleSize and every hole, counterbore, and clearance pocket adjusts because the intent — "sized for this bolt" — is captured in the math, not just a static number.
Good design intent also means choosing the right constraints in your sketches: making holes concentric rather than just coincidentally overlapping, making edges symmetric rather than independently positioned, and making lengths proportional rather than hard-coded.
Once your model is fully parametric, you can create configurations — named variants of the same part that differ only in specific parameter values. This is invaluable in robotics where you often need:
Each configuration lives inside the same file, sharing all the common geometry. When you fix a bug or improve a feature in the base design, every configuration inherits the change automatically.
Open the User Parameters dialog and create named variables for every key dimension: sizes, spacings, thicknesses, and clearances.
Replace hard-coded numbers in your sketches and features with parameter names. Type the parameter name directly into the dimension input field.
Go back to the parameter table and change a few values. Watch the model rebuild in real time to confirm everything is linked correctly.
Inspect every feature in the timeline. Look for broken sketches, failed fillets, or geometry that did not follow the parameter change. Fix any unlinked dimensions.
Once the model is robust, save named configurations for each variant you need — different sizes, mounting options, or material-specific adjustments.
Avoid cryptic default names like d1, d2, d14. These are meaningless a week later. Instead, use descriptive names that read like English: BracketWidth, MountingHoleSpacing, MotorShaftDiameter. A well-named parameter table acts as living documentation — anyone can open the model and immediately understand what each value controls without tracing it back through the timeline.