Generators
Choose the generator family that matches a member's process behavior, control path, or lifecycle-dependent response.
Pick a generator when a member needs runtime behavior instead of a fixed value.
Technical details
Choose a generator family by role
Resolve input deliberately
generator:
type: first-order-lag
tau: 30
input: { member: "speed_feedback" }generator:
type: transport-delay
delay: 15
initial_value: 0
input: { previous_member: "entry_signal" }generator:
type: noise
center: "$param.rated_rpm"
stddev: 5generator:
type: weighted-sum
terms:
- input:
generator:
type: noise
center: 0
stddev: 0.2
weight: 1Build a chain, not a bag of signals
speed_setpoint:
kind: variable
data_type: Double
access: readwrite
unit: rpm
generator:
type: timetable
repeat: true
interpolation: step
points:
- { time: 0, value: 0 }
- { time: 21600, value: 1200 }
- { time: 64800, value: 900 }
speed_feedback:
kind: variable
data_type: Double
access: read
unit: rpm
generator:
type: slew-rate-limiter
input: { member: "speed_setpoint" }
rate_up: 220
rate_down: 320
min: 0
max: 1850Keep dependencies readable. Long chains are fine. Hidden coupling is not. Member order remains part of the runtime contract.
Reference
| Role | Generator types |
|---|---|
| Local source | sine, noise, random-walk, step, ramp, mean-reverting-noise, timetable, state-machine, waveform, chirp, impulse |
| Signal transform | first-order-lag, integrator, transport-delay, slew-rate-limiter, second-order, hysteresis-relay, weighted-sum, gate |
| Context-aware | correlated, health-dependent |
Supports $param.X in common coefficient fields | sine, noise, waveform, chirp, mean-reverting-noise, correlated, first-order-lag, second-order, transport-delay, hysteresis-relay, weighted-sum |
Related pages
Twin models
Generator placement in .twin.yaml.
Lifecycle and faults
Wear and failure effects.
Model catalog
Built-in generator chains.
CLI ⭢ models inspect
Inspect one model definition from the shell.
Was this page useful?
Last updated on
Miravo