Speed Control#
Toolbox for a standard SpeedControl with a PI-Controller in parallel form. It outputs only the reference torque for a subsequent setpoint and current-control module. It can not control a machine on its own.
Setup#
-
typedef struct uz_SpeedControl_t uz_SpeedControl_t#
Object definition for uz_SpeedControl_t.
Configuration#
-
struct uz_SpeedControl_config#
Configuration struct for SpeedControl. Accessible by the user.
Public Members
-
struct uz_PI_Controller_config config_controller#
Configuration struct for speed-Controller
-
struct uz_PI_Controller_config config_controller#
In order to configure the SpeedControl check the configuration section of the PI-Controller for further information.
Example#
1#include "uz/uz_SpeedControl/uz_speedcontrol.h"
2int main(void) {
3 struct uz_SpeedControl_config SC_config = {
4 .config_controller.Kp = 10.0f,
5 .config_controller.Ki = 10.0f,
6 .config_controller.samplingTime_sec = 0.00005f,
7 .config_controller.upper_limit = 10.0f,
8 .config_controller.lower_limit = -10.0f,
9 };
10}
Init function#
-
uz_SpeedControl_t *uz_SpeedControl_init(struct uz_SpeedControl_config config)#
Initialization of the SpeedController object.
- Parameters:
config – uz_SpeedControl_config configuration struct
- Returns:
Pointer to uz_SpeedControl_t object
Example#
1int main(void) {
2 uz_SpeedControl_t* SC_instance = uz_SpeedControl_init(SC_config);
3}
Description#
Allocates the memory for the SpeedControl instance. Furthermore the input values of the configuration struct are asserted.
Reset#
-
void uz_SpeedControl_reset(uz_SpeedControl_t *self)#
Resets the PI-Controller inside the uz_SpeedControl_t.
- Parameters:
self – pointer to uz_SpeedControl_t object
Example#
1int main(void) {
2 uz_SpeedControl_reset(SC_instance);
3}
Description#
Resets the PI-Controller of the SpeedControl. The initial condition for the integrator after the reset is 0.0f.