WOLFRAM SYSTEM MODELER
CameraStabilizerA simple model of the disturbances and dynamics involved in the stabilization of vertical motion |
SystemModel["DocumentationExamples.Control.CameraStabilizer"]
Damped spring-mass systems under the effect of input forces and gravity are connected in series, emulating the general dynamics of an un-controlled vertical motion. With the body at the top representing a camera, this model can be used to generate a control system geared towards stabilization. Bodies are initialized at their equilibrium positions, which are computed with vanishing inputs. Parameters for the characterization of masses, damping and springs are provided, and a constant stores the value of the gravitational acceleration.
mcMass |
Value: 0.5 Type: Mass (kg) Description: Mass of camera |
---|---|
mbMass |
Value: 290 Type: Mass (kg) Description: Mass of sprung body |
mwMass |
Value: 59 Type: Mass (kg) Description: Mass of bottom structure |
c1 |
Value: 190000 Type: TranslationalSpringConstant (N/m) Description: Spring constant of bottom spring |
c2 |
Value: 150000 Type: TranslationalSpringConstant (N/m) Description: Spring constant of mid spring |
c3 |
Value: 100 Type: TranslationalSpringConstant (N/m) Description: Spring constant of top spring |
l1 |
Value: 0.3 Type: Length (m) Description: Unstretched spring length of bottom spring |
l2 |
Value: 0.2 Type: Length (m) Description: Unstretched spring length of mid spring |
l3 |
Value: 0.2 Type: Length (m) Description: Unstretched spring length of top spring |
d2 |
Value: 1000 Type: TranslationalDampingConstant (N⋅s/m) Description: Damping constant of mid spring |
d3 |
Value: 10 Type: TranslationalDampingConstant (N⋅s/m) Description: Damping constant of top spring |
ycEq |
Value: l1 + l2 + l3 - g * mcMass / c3 - g * (mbMass + mcMass) / c2 - g * (mcMass + mbMass + mwMass) / c1 Type: Position (m) Description: Equilibrium position of body mc resolved in world frame |
ybEq |
Value: l1 + l2 - g * (mbMass + mcMass) / c2 - g * (mcMass + mbMass + mwMass) / c1 Type: Position (m) Description: Equilibrium position of body mb resolved in world frame |
ywEq |
Value: l1 - g * (mcMass + mbMass + mwMass) / c1 Type: Position (m) Description: Equilibrium position of body mw resolved in world frame |
yc0 |
Value: ycEq Type: Position (m) Description: Initial position of body mc resolved in world frame |
yb0 |
Value: ybEq Type: Position (m) Description: Initial position of body mb resolved in world frame |
yw0 |
Value: ywEq Type: Position (m) Description: Initial position of body mw resolved in world frame |
fw |
Type: RealInput Description: Disturbance force |
|
---|---|---|
fa |
Type: RealInput Description: Control force |
|
ycb |
Type: RealOutput Description: Relative displacement of body mc with respect to body mb, offsetted by their equilibrium points, resolved in world frame |
|
ywb |
Type: RealOutput Description: Relative displacement of body mw with respect to body mb, offsetted by their equilibrium points, resolved in world frame |
world |
Type: World Description: World coordinate system + gravity field + default animation definition |
|
---|---|---|
kc |
Type: SpringDamper Description: Linear 1D translational spring and damper in parallel |
|
ks |
Type: SpringDamper Description: Linear 1D translational spring and damper in parallel |
|
kt |
Type: Spring Description: Linear 1D translational spring |
|
mc |
Type: PointMass Description: Rigid body where body rotation and inertia tensor is neglected (6 potential states) |
|
mw |
Type: PointMass Description: Rigid body where body rotation and inertia tensor is neglected (6 potential states) |
|
mb |
Type: PointMass Description: Rigid body where body rotation and inertia tensor is neglected (6 potential states) |
|
ycEqOffset |
Type: Constant Description: Generate constant signal of type Real |
|
ybEqOffset |
Type: Constant Description: Generate constant signal of type Real |
|
ywEqOffset |
Type: Constant Description: Generate constant signal of type Real |
|
feedbackc |
Type: Feedback Description: Output difference between commanded and feedback input |
|
feedbackb |
Type: Feedback Description: Output difference between commanded and feedback input |
|
feedbackw |
Type: Feedback Description: Output difference between commanded and feedback input |
|
feedbackwb |
Type: Feedback Description: Output difference between commanded and feedback input |
|
feedbackcb |
Type: Feedback Description: Output difference between commanded and feedback input |
|
prismaticcb |
Type: Prismatic Description: Prismatic joint (1 translational degree-of-freedom, 2 potential states, optional axis flange) |
|
prismaticbw |
Type: Prismatic Description: Prismatic joint (1 translational degree-of-freedom, 2 potential states, optional axis flange) |
|
prismaticw |
Type: Prismatic Description: Prismatic joint (1 translational degree-of-freedom, 2 potential states, optional axis flange) |
|
mcPosition |
Type: AbsolutePosition Description: Measure absolute position vector of the origin of a frame connector |
|
mbPosition |
Type: AbsolutePosition Description: Measure absolute position vector of the origin of a frame connector |
|
mwPosition |
Type: AbsolutePosition Description: Measure absolute position vector of the origin of a frame connector |
|
disturbanceForce |
Type: Force2 Description: Input signal acting as torque on two flanges |
|
controlForce |
Type: Force2 Description: Input signal acting as torque on two flanges |