|
liba 0.1.15
An algorithm library based on C/C++
|
Data Structures | |
| struct | a_pid_fuzzy |
| instance structure for fuzzy PID controller More... | |
Macros | |
| #define | a_pid_fuzzy_init(ctx) |
| initialize for fuzzy PID controller | |
| #define | A_PID_FUZZY_BFUZZ(n) |
| compute size of memory block for fuzzy PID controller | |
Typedefs | |
| typedef struct a_pid_fuzzy | a_pid_fuzzy |
Enumerations | |
| enum | { A_PID_FUZZY_EQU , A_PID_FUZZY_CAP , A_PID_FUZZY_CAP_ALGEBRA , A_PID_FUZZY_CAP_BOUNDED , A_PID_FUZZY_CUP , A_PID_FUZZY_CUP_ALGEBRA , A_PID_FUZZY_CUP_BOUNDED } |
| enumeration for fuzzy PID controller operator More... | |
Functions | |
| void | a_pid_fuzzy_set_opr (a_pid_fuzzy *ctx, unsigned int opr) |
| set fuzzy relational operator for fuzzy PID controller | |
| void * | a_pid_fuzzy_bfuzz (a_pid_fuzzy const *ctx) |
| get memory block for fuzzy PID controller | |
| void | a_pid_fuzzy_set_bfuzz (a_pid_fuzzy *ctx, void *ptr, a_size num) |
| set memory block for fuzzy PID controller | |
| void | a_pid_fuzzy_set_rule (a_pid_fuzzy *ctx, unsigned int nrule, a_real const *me, a_real const *mec, a_real const *mkp, a_real const *mki, a_real const *mkd) |
| set rule base for fuzzy PID controller | |
| void | a_pid_fuzzy_set_kpid (a_pid_fuzzy *ctx, a_real kp, a_real ki, a_real kd) |
| set proportional integral derivative constant for fuzzy PID controller | |
| a_real | a_pid_fuzzy_run (a_pid_fuzzy *ctx, a_real set, a_real fdb) |
| compute for fuzzy PID controller | |
| a_real | a_pid_fuzzy_pos (a_pid_fuzzy *ctx, a_real set, a_real fdb) |
| compute for positional fuzzy PID controller | |
| a_real | a_pid_fuzzy_inc (a_pid_fuzzy *ctx, a_real set, a_real fdb) |
| compute for incremental fuzzy PID controller | |
| void | a_pid_fuzzy_zero (a_pid_fuzzy *ctx) |
| zeroing for fuzzy PID controller | |
Variables | |
| a_real(*)(a_real, a_real) | a_pid_fuzzy_opr (unsigned int opr) |
| get fuzzy relational operator for fuzzy PID controller | |
| #define A_PID_FUZZY_BFUZZ | ( | n | ) |
| #define a_pid_fuzzy_init | ( | ctx | ) |
initialize for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| anonymous enum |
| void * a_pid_fuzzy_bfuzz | ( | a_pid_fuzzy const * | ctx | ) |
get memory block for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| a_real a_pid_fuzzy_inc | ( | a_pid_fuzzy * | ctx, |
| a_real | set, | ||
| a_real | fdb ) |
compute for incremental fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | set | setpoint value |
| [in] | fdb | feedback value |
| a_real a_pid_fuzzy_pos | ( | a_pid_fuzzy * | ctx, |
| a_real | set, | ||
| a_real | fdb ) |
compute for positional fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | set | setpoint value |
| [in] | fdb | feedback value |
| a_real a_pid_fuzzy_run | ( | a_pid_fuzzy * | ctx, |
| a_real | set, | ||
| a_real | fdb ) |
compute for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | set | setpoint value |
| [in] | fdb | feedback value |
| void a_pid_fuzzy_set_bfuzz | ( | a_pid_fuzzy * | ctx, |
| void * | ptr, | ||
| a_size | num ) |
set memory block for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | ptr | points to a buffer at least A_PID_FUZZY_BFUZZ(num) |
| [in] | num | the maximum number triggered by the rule |
| void a_pid_fuzzy_set_kpid | ( | a_pid_fuzzy * | ctx, |
| a_real | kp, | ||
| a_real | ki, | ||
| a_real | kd ) |
set proportional integral derivative constant for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | kp | proportional constant |
| [in] | ki | integral constant |
| [in] | kd | derivative constant |
| void a_pid_fuzzy_set_opr | ( | a_pid_fuzzy * | ctx, |
| unsigned int | opr ) |
set fuzzy relational operator for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | opr | enumeration for fuzzy PID controller operator |
| void a_pid_fuzzy_set_rule | ( | a_pid_fuzzy * | ctx, |
| unsigned int | nrule, | ||
| a_real const * | me, | ||
| a_real const * | mec, | ||
| a_real const * | mkp, | ||
| a_real const * | mki, | ||
| a_real const * | mkd ) |
set rule base for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |
| [in] | nrule | number of order in the square matrix |
| [in] | me | points to e's membership function parameter table |
| [in] | mec | points to ec's membership function parameter table |
| [in] | mkp | points to Kp's rule base table which must be a square matrix |
| [in] | mki | points to Ki's rule base table which must be a square matrix |
| [in] | mkd | points to Kd's rule base table which must be a square matrix |
| void a_pid_fuzzy_zero | ( | a_pid_fuzzy * | ctx | ) |
zeroing for fuzzy PID controller
| [in,out] | ctx | points to an instance of fuzzy PID controller |