Mass and Additional Parts
This section defines how to specify mass information for UAV components and track additional parts that are not captured in the geometry or propulsion systems.
Overview
The Setuav Standard uses a simple approach for mass management:
- Geometry Components: Fuselage and wings can have an optional
massparameter (in grams) - Propulsion Components: Motors, ESCs, propellers, and batteries all include
massparameters - Additional Parts: Components outside geometry and propulsion (electronics, landing gear, etc.) are specified separately with mass and placement
Geometry Mass
Geometry components (Fuselage, Wing) can specify mass directly:
airframe:
fuselage:
tag: "main_fuselage"
mass: 250 # grams (optional)
geometry:
sections: ...
wings:
- tag: "main_wing"
mass: 180 # grams per wing (optional)
geometry:
profiles: ...
Note: If a wing has mirror: true in its attachment, the total wing mass contribution will be 2 × mass.
Additional Parts
Parts not represented in geometry or propulsion systems are specified as additional parts:
additional_parts:
- tag: "landing_gear"
description: "Carbon fiber landing gear assembly"
mass: 120 # grams
placement: # optional, for CG calculation
position: {x: 500, y: 0, z: -50}
Additional Part Parameters
| Parameter | Unit | Description |
|---|---|---|
| tag | str |
Unique part identifier. |
| description | str |
Human-readable part description (optional). |
| mass | g |
Part mass. |
| placement | object |
Part placement in SETUAV_BODY frame (optional). |
| placement.position | object |
Position: {x, y, z} in mm. |
Example Configuration
setuav: '1.0'
airframe:
fuselage:
tag: "main_fuselage"
mass: 250
geometry:
sections: ...
wings:
- tag: "main_wing"
mass: 180
geometry:
profiles: ...
propulsion:
motors:
- tag: "main_motor"
mass: 28
# ... other motor parameters
batteries:
- tag: "main_battery"
mass: 185
# ... other battery parameters
additional_parts:
- tag: "motor_mount"
description: "3D printed motor mount"
mass: 12
placement:
position: {x: 0, y: 0, z: 0}
- tag: "landing_gear"
description: "Carbon fiber landing gear assembly"
mass: 120
placement:
position: {x: 500, y: 0, z: -50}
- tag: "electronics_bay"
description: "Flight controller, receiver, GPS, wiring"
mass: 85
placement:
position: {x: 400, y: 0, z: -10}
Center of Gravity Calculation
With placement information for all components, the overall center of gravity can be computed:
\[
\vec{r}_{\text{CG}} = \frac{\sum_{i} m_i \cdot \vec{r}_i}{\sum_{i} m_i}
\]
Where:
- \(m_i\) is the mass of component \(i\)
- \(\vec{r}_i\) is the position vector of component \(i\) in SETUAV_BODY frame
Components contributing to CG:
- Fuselage (if mass specified)
- Wings (position from wing attachment, mass × 2 if mirrored)
- Motors (from placement)
- ESCs (from placement)
- Batteries (from placement)
- Additional parts (from placement)
- Propellers (mounted on motors, use motor position)
This calculation should be performed by analysis tools, not stored in the specification.