File syn_foc_observer.h¶
FileList > motor > syn_foc_observer.h
Go to the source code of this file
Sensorless FOC Rotor Position & Speed Sliding Mode Observer (SMO) (Q16.16 fixed-point).
#include "../common/syn_defs.h"#include "../util/syn_qmath.h"
Classes¶
| Type | Name |
|---|---|
| struct | SYN_FOCObserver Sliding Mode Observer state structure. |
| struct | SYN_FOCObserverConfig Sliding Mode Observer configuration parameters. |
Public Functions¶
| Type | Name |
|---|---|
| q16_t | syn_foc_observer_get_angle (const SYN_FOCObserver * obs) Get current estimated rotor electrical angle. |
| q16_t | syn_foc_observer_get_speed (const SYN_FOCObserver * obs) Get current estimated rotor electrical angular speed. |
| SYN_Status | syn_foc_observer_init (SYN_FOCObserver * obs, const SYN_FOCObserverConfig * cfg) Initialize the sensorless FOC Sliding Mode Observer. |
| void | syn_foc_observer_reset (SYN_FOCObserver * obs) Reset observer state to zero. |
| SYN_Status | syn_foc_observer_update (SYN_FOCObserver * obs, q16_t V_alpha, q16_t V_beta, q16_t I_alpha, q16_t I_beta) Update observer with latest phase voltages and measured phase currents. |
Public Functions Documentation¶
function syn_foc_observer_get_angle¶
Get current estimated rotor electrical angle.
Parameters:
obsObserver instance.
Returns:
Estimated angle in radians (Q16.16, 0 to 2pi).
function syn_foc_observer_get_speed¶
Get current estimated rotor electrical angular speed.
Parameters:
obsObserver instance.
Returns:
Estimated angular speed in rad/s (Q16.16).
function syn_foc_observer_init¶
Initialize the sensorless FOC Sliding Mode Observer.
Parameters:
obsPointer to observer instance.cfgObserver configuration parameters.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if NULL or invalid parameters.
function syn_foc_observer_reset¶
Reset observer state to zero.
Parameters:
obsObserver instance.
function syn_foc_observer_update¶
Update observer with latest phase voltages and measured phase currents.
SYN_Status syn_foc_observer_update (
SYN_FOCObserver * obs,
q16_t V_alpha,
q16_t V_beta,
q16_t I_alpha,
q16_t I_beta
)
Parameters:
obsObserver instance.V_alphaApplied alpha-axis voltage in Volts (Q16.16).V_betaApplied beta-axis voltage in Volts (Q16.16).I_alphaMeasured alpha-axis current in Amps (Q16.16).I_betaMeasured beta-axis current in Amps (Q16.16).
Returns:
SYN_OK on success, SYN_INVALID_PARAM if NULL.
The documentation for this class was generated from the following file src/syntropic/motor/syn_foc_observer.h