Matti Borchers / Mbed 2 deprecated mbed_amf_controlsystem

Dependencies:   mbed-rtos mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers QuadratureController.h Source File

QuadratureController.h

00001 #ifndef QUADRATURE_CONTROLLER_H
00002 #define QUADRATURE_CONTROLLER_H
00003 
00004 #include <mbed.h>
00005 #include <I2C.h>
00006 #include "rtos.h"
00007 
00008 /*
00009  * Necessary for strcut sizes
00010  */
00011 #pragma pack (1)
00012 
00013 class QuadratureController{
00014 
00015 private:
00016     PwmOut *pwmOut;
00017     Queue<float, 2> *quadrature_queue;
00018     Queue<float, 2> *imu_queue_steering_angle;
00019     osEvent steering_angle_set_event, steering_angle_current_event;
00020     
00021     uint8_t timer_steering_angle_sampling_time;
00022     float q_Kp, q_Ki, feed_forward_control_factor, q_esum, feed_forward, q_Ki_sampling_time;
00023     float q_PI_controller, q_PWM, q_e, q_output, steering_angle_set, steering_angle_current;
00024     
00025     void init();
00026     void check_queues();
00027 public:
00028     QuadratureController(PwmOut *pwmOut, Queue<float, 2> *quadrature_queue, Queue<float, 2> *imu_queue_steering_angle);
00029     void cylic_control();
00030 };
00031 
00032 #endif