Motor fáze
Motor fáze najde konkrétní dosažitelnou orientaci v zadaném směru a podrží vybranou otáčku.
control.set_phase_motor(options)
control.get_phase_motor()| Položka | Význam / výchozí hodnota |
|---|---|
| enabled / phase | true / 0; 0 ≤ phase < 1 |
| direction | "shortest" / "positive" / "negative"; default "shortest" |
| speed | 360 °/s; 0 < speed ≤ 10⁶ |
| max_torque / frequency / damping | 10 N·m / 5 Hz / 1 |
| resolved_angle | Pouze getter: vybraný absolutní logický cíl ve stupních. |
phase:0.25 znamená čtvrt otáčky. Hodnota 1 není platná; pro celou otáčku použijte fázi 0. shortest volí kratší cestu, při přesné půlotáčce kladný směr. positive volí cíl v kladném směru a negative v záporném. Tato volba řeší cílovou otáčku, nepředstavuje trvalý jednosměrný pohon.
Příklad#
wheel = jolt_control_wheel({phase_motor: {
phase: 0.25, direction: "shortest", speed: 90, max_torque: 5
}});
var motor = wheel.get_phase_motor();
show_debug_message(motor.resolved_angle);Cílová otáčka se uloží. Překmit, pozastavení vyšší prioritou a změna síly či rychlosti ji nezmění. Přepočet nastává při první konfiguraci, změně phase/direction, opětovném zapnutí a set_zero(). To brání nechtěnému honění další otáčky při malém překmitu.
enabled znamená uložený požadavek, active aktuální vlastnictví pohonu. Vyšší priorita může motor pozastavit. Position a phase navíc vracejí mode: off / paused / velocity / position, reached, angle_tolerance (0.1°) a speed_tolerance (1°/s). reached hodnotí skutečnou polohu i rychlost právě teď; není jednorázová událost a dosažený motor dále drží cíl.
Nové související postupy#
Ověřené kontrakty operací#
Následující kontrakty rozlišují jednotky, návratové hodnoty, chyby a životnost podle aktuální implementace. Nevynechávej kontrolu výsledku: false, 0 a undefined mohou mít u různých metod odlišný význam.
| Symbol / vlastník | Signatura | Kontrakt operace |
|---|---|---|
| JoltControl.get_phase_motor | JoltControl.get_phase_motor() | Wheel/Crank; phase [0, 1) default 0, direction shortest/positive/negative default shortest. Dynamika jako position_motor. Setter Boolean; getter config + mode/active/reached/tolerance/resolved_angle, undefined při nevhodném objektu. |
| JoltControl.set_phase_motor | JoltControl.set_phase_motor(options) | Wheel/Crank; phase [0, 1) default 0, direction shortest/positive/negative default shortest. Dynamika jako position_motor. Setter Boolean; getter config + mode/active/reached/tolerance/resolved_angle, undefined při nevhodném objektu. |