- 8
- 0
- 约8.3万字
- 约 18页
- 2017-01-03 发布于贵州
- 举报
#include DSP281x_Device.h // Headerfile Include File
#include DSP281x_Examples.h //
#define HIST 16
unsigned int k=0;
static float adc_current_samples[6][HIST];//定义行为6,列为16的二维数组
static float adclo=0.0;
static Uint16 totsamples_0;
unsigned int count;
#define OCRMAX 1023
unsigned int pwm;
static float left_cof=1.00;
static float right_cof=1.00;
struct gyro_filter pitch_filter;
static Uint16 mode=0x00;//0x00----balance mode; 0x01-------assist mode
static Uint16 still=0x00; //still=1.0, no move; still=0.0,move.
static Uint16 stand=0x00;
static Uint16 last_balance_s0;
static Uint16 samples[6],ticks;
static float left_steer_cof=0.05;
static float right_steer_cof=0.05;
static float steer_lim=0.13;
static float initial_angle=0.0000874;
static float hard_speed_lim=0.90;
static float bus_current;
static float cmd;
static float lpf_angle;
static float lpf_angrate;
static float lpf_steer_knob;
static float left_motor_pwm, right_motor_pwm, steer_cmd;
static float left_motor_pwm, right_motor_pwm, steer_cmd;
static float batt_voltage1, ay, ax, in_steer_knob;
static float pitch_rate;
static float interval;
static float timer0_seconds_conv;
static float p_gain;
static float d_gain;
static float p1_gain;
static float d1_gain;
static float p0_gain;
static float d0_gain;
static float tp0,td0,tp1,td1,tp,td;
static float d_step=0.0001;
static float p_step;
static float cor_bat;
static float p_cmd,d_cmd;//next_cmd;
static float sample_conv = 1.0/1024.0/(float)HIST*5.0;//=3.052exp(-4)
static float sample_conv1 = 1.0/1024.0/(float)HIST*2.07;
static float sample_conv2 = 1.0/1024.0/(float)HIST*1.9;
static float sample_conv3 = 1.0/1024.0/(float)HIST*333.3*2.5;
interrupt void T2_AD_isr(void);
void InitEv(void);
void InitAdc(void);
void InitGpio(void);
struct gyro_filter {
float angle;
float ay_bias;
//float ax_bias;
float rate_bias;
float steer_knob_bias;
float rate;
float steer_knob;
float curr_bias;
float curr;
U
原创力文档

文档评论(0)