robot

Dependencies:   FastPWM3 mbed

BREMS/BREMSStructs.h

Committer:
bwang
Date:
2017-02-28
Revision:
79:d0b1bb3dcf68
Parent:
70:5e39beeb4a21
Child:
82:5e741c5ffd9f
Child:
120:57b6f3b1356b

File content as of revision 79:d0b1bb3dcf68:

#ifndef __BREMS_STRUCTS_H
#define __BREMS_STRUCTS_H

#include "mbed.h"

#include "FastPWM.h"
#include "PwmIn.h"
#include "PositionSensor.h"

typedef struct {
    FastPWM *a, *b, *c;
    DigitalOut *en;
    PwmIn *throttle_in;
    PositionSensorEncoder *pos;
    Serial *pc;
} IOStruct;

typedef struct {
    float adval1, adval2, adval3;
    float vbus;
    float p_mech, last_p_mech, w;
    float ia_supp_offset, ib_supp_offset;
} ReadDataStruct;

typedef struct {
    float ia, ib, alpha, beta, d, q, vd, vq, valpha, vbeta, p;
} FOCStruct;

typedef struct {
    float d_integral, q_integral;
    float last_d, last_q;
    float d_ref, q_ref;
    float d_filtered, q_filtered;
    float torque_percent;
} ControlStruct;
    
#endif