SimpleFOClibrary 2.4.0
Loading...
Searching...
No Matches
foc_utils.cpp File Reference
#include "foc_utils.h"
Include dependency graph for foc_utils.cpp:

Go to the source code of this file.

Functions

 __attribute__ ((weak)) float _sin(float a)
 
 if (abs_y > abs_x) r
 
 if (x< 0.0f) r = -r
 
float _electricalAngle (float shaft_angle, int pole_pairs)
 

Variables

float * s = a * a
 
float float * c
 
float x
 
float abs_x = fabsf(x)
 
float a = min(abs_x, abs_y) / (max(abs_x, abs_y))
 
float r
 

Function Documentation

◆ __attribute__()

__attribute__ ( (weak)  )

Definition at line 7 of file foc_utils.cpp.

◆ _electricalAngle()

float _electricalAngle ( float  shaft_angle,
int  pole_pairs 
)

Electrical angle calculation

Parameters
shaft_angle- shaft angle of the motor
pole_pairs- number of pole pairs

Definition at line 83 of file foc_utils.cpp.

Here is the caller graph for this function:

◆ if() [1/2]

if ( abs_y  ,
abs_x   
)

◆ if() [2/2]

if ( ) = -r

Variable Documentation

◆ a

float a = min(abs_x, abs_y) / (max(abs_x, abs_y))

Definition at line 59 of file foc_utils.cpp.

◆ abs_x

float abs_x = fabsf(x)

Definition at line 57 of file foc_utils.cpp.

◆ c

* c
Initial value:
{
*s = _sin(a)
float a
Definition foc_utils.cpp:59
float * s
Definition foc_utils.cpp:43
float _sin(float a)

Definition at line 43 of file foc_utils.cpp.

◆ r

return r
Initial value:
=
((-0.0464964749f * s + 0.15931422f) * s - 0.327622764f) * s * a + a

Definition at line 63 of file foc_utils.cpp.

◆ s

float s = a * a

Definition at line 43 of file foc_utils.cpp.

◆ x

float x
Initial value:
{
float abs_y = fabsf(y)

Definition at line 54 of file foc_utils.cpp.