Sim Youngwoo / Mbed 2 deprecated torque_calibration_ywsim

Dependencies:   mbed HX711 MotorModuleExample_copy

Committer:
kfmurph2
Date:
Mon Dec 09 23:41:16 2019 +0000
Revision:
5:a2e3d0213315
Parent:
3:f0d054d896f9
First run of examples.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
benkatz 2:36a254d3dbf3 1 #ifndef CAN_COM_H
benkatz 2:36a254d3dbf3 2 #define CAN_COM_H
benkatz 2:36a254d3dbf3 3
benkatz 2:36a254d3dbf3 4 #include "mbed.h"
benkatz 2:36a254d3dbf3 5 #include "../math_ops.h"
benkatz 2:36a254d3dbf3 6
benkatz 2:36a254d3dbf3 7 /// Value Limits ///
benkatz 3:f0d054d896f9 8 #define P_MIN -95.5f // Radians
benkatz 3:f0d054d896f9 9 #define P_MAX 95.5f
benkatz 3:f0d054d896f9 10 #define V_MIN -45.0f // Rad/s
benkatz 2:36a254d3dbf3 11 #define V_MAX 45.0f
benkatz 3:f0d054d896f9 12 #define KP_MIN 0.0f // N-m/rad
benkatz 2:36a254d3dbf3 13 #define KP_MAX 500.0f
benkatz 3:f0d054d896f9 14 #define KD_MIN 0.0f // N-m/rad/s
benkatz 2:36a254d3dbf3 15 #define KD_MAX 5.0f
benkatz 2:36a254d3dbf3 16 #define I_MIN -18.0f
benkatz 2:36a254d3dbf3 17 #define I_MAX 18.0f
benkatz 2:36a254d3dbf3 18
benkatz 2:36a254d3dbf3 19
benkatz 2:36a254d3dbf3 20 /// Structs for organizing commands and data ///
benkatz 2:36a254d3dbf3 21 typedef struct
benkatz 2:36a254d3dbf3 22 {
benkatz 2:36a254d3dbf3 23 int id;
benkatz 2:36a254d3dbf3 24 float position, velocity, current;
benkatz 2:36a254d3dbf3 25 } StateStruct;
benkatz 2:36a254d3dbf3 26
benkatz 2:36a254d3dbf3 27
benkatz 2:36a254d3dbf3 28 typedef struct
benkatz 2:36a254d3dbf3 29 {
benkatz 2:36a254d3dbf3 30 int id;
benkatz 2:36a254d3dbf3 31 float i_ff, p_des, kp, v_des, kd;
benkatz 2:36a254d3dbf3 32 }ControlStruct;
benkatz 2:36a254d3dbf3 33
benkatz 2:36a254d3dbf3 34 typedef struct
benkatz 2:36a254d3dbf3 35 {
benkatz 2:36a254d3dbf3 36 StateStruct state;
benkatz 2:36a254d3dbf3 37 ControlStruct control;
benkatz 2:36a254d3dbf3 38 CANMessage rxMsg;
benkatz 2:36a254d3dbf3 39 CANMessage txMsg;
benkatz 2:36a254d3dbf3 40 }MotorStruct;
benkatz 2:36a254d3dbf3 41
benkatz 2:36a254d3dbf3 42 void pack_cmd(MotorStruct * motor);
benkatz 2:36a254d3dbf3 43 void unpack_reply(MotorStruct * motor);
benkatz 2:36a254d3dbf3 44 void enable_motor(MotorStruct * motor, CAN * can);
benkatz 2:36a254d3dbf3 45 void disable_motor(MotorStruct * motor, CAN * can);
kfmurph2 5:a2e3d0213315 46 void zero_motor(MotorStruct * motor, CAN * can);
kfmurph2 5:a2e3d0213315 47
benkatz 2:36a254d3dbf3 48
benkatz 2:36a254d3dbf3 49
benkatz 2:36a254d3dbf3 50 #endif