Mini Cheetah Actuator Branch Superseded by: https://github.com/bgkatz/motorcontrol

Dependencies:   mbed-dev-f303 FastPWM3

Superseded by: https://github.com/bgkatz/motorcontrol

Committer:
benkatz
Date:
Fri Oct 04 14:18:39 2019 +0000
Revision:
55:c4c9fec8539c
Parent:
48:74a40481740c
new mini cheetah first revision;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
benkatz 22:60276ba87ac6 1 #ifndef FOC_H
benkatz 22:60276ba87ac6 2 #define FOC_H
benkatz 22:60276ba87ac6 3
benkatz 47:e1196a851f76 4 #include "../structs.h"
benkatz 22:60276ba87ac6 5 #include "PositionSensor.h"
benkatz 22:60276ba87ac6 6 #include "mbed.h"
benkatz 22:60276ba87ac6 7 #include "hw_config.h"
benkatz 22:60276ba87ac6 8 #include "math.h"
benkatz 47:e1196a851f76 9 #include "../math_ops.h"
benkatz 22:60276ba87ac6 10 #include "motor_config.h"
benkatz 22:60276ba87ac6 11 #include "current_controller_config.h"
benkatz 37:c0f352d6e8e3 12 #include "FastMath.h"
benkatz 37:c0f352d6e8e3 13 #include "user_config.h"
benkatz 22:60276ba87ac6 14
benkatz 22:60276ba87ac6 15 void abc(float theta, float d, float q, float *a, float *b, float *c);
benkatz 22:60276ba87ac6 16 void dq0(float theta, float a, float b, float c, float *d, float *q);
benkatz 55:c4c9fec8539c 17 void svm(float v_bus, float u, float v, float w, int current_sector, float *dtc_u, float *dtc_v, float *dtc_w);
benkatz 22:60276ba87ac6 18 void zero_current(int *offset_1, int *offset_2);
benkatz 22:60276ba87ac6 19 void reset_foc(ControllerStruct *controller);
benkatz 48:74a40481740c 20 void reset_observer(ObserverStruct *observer);
benkatz 45:26801179208e 21 void init_controller_params(ControllerStruct *controller);
benkatz 48:74a40481740c 22 void commutate(ControllerStruct *controller, ObserverStruct *observer, GPIOStruct *gpio, float theta);
benkatz 26:2b865c00d7e9 23 void torque_control(ControllerStruct *controller);
benkatz 45:26801179208e 24 void limit_current_ref (ControllerStruct *controller);
benkatz 55:c4c9fec8539c 25 void update_observer(ControllerStruct *controller, ObserverStruct *observer);
benkatz 55:c4c9fec8539c 26 void field_weaken(ControllerStruct *controller);
benkatz 55:c4c9fec8539c 27 float linearize_dtc(ControllerStruct *controller, float dtc);
benkatz 22:60276ba87ac6 28 #endif