本帖最后由 TataJen 于 2016-5-28 16:55 编辑
1:自举电容预充电---》启动
2:MOS管防反接----》去掉,烧R020
3:IR2136启动自举电容办法:打开下桥臂,通过IR2136的工作电压15V对自举电容充电。
先把LIN1/2/3引脚置低, 使能IR2136, 打开HIN1/2/3PWM输出,延时500ms对自举电容进行充电,(IR2136有防止上下桥臂同时导通的机制,要对自举电容充电,先关闭LIN1/2/3,IR2136比较特殊,LIN1/2/3输入波形与HO1-VS1的电压差值相同,而HIN1/2/3输入波形跟LO1/2/3的波形相同,芯片标定的字母上方的取反符号(横杠)没作用)
刚上电初始化执行下面程序:
a:GPIO_ResetBits(GPIOE, GPIO_Pin_8 | GPIO_Pin_10 | GPIO_Pin_12); //接LIN1/2/3
b:MOTOR2_ENABLE;//接EN
c: TIM_CtrlPWMOutputs(TIM1, ENABLE);
d: delay_ms(500);
//MOTOR2_DISABLE;
接收指令后执行下面程序:
//MOTOR2_ENABLE;
POWER_ON;
motor_2.Target=20;
上面四个步骤是给自举电容充电。如果还是启动不了,请把PID的P增大些,如果PWM占空比增长较慢,也启动不了,想当于把电容电量缓慢释放,也可以增大自举电容容量。
经过上面步骤之后,如果直接给电机供电POWER_ON,电机会抖动一下,此时最好的方式是在接收控制指令之后再打开电机电源,这样的抖动看起来是主动控制引起的抖动,而不是上电瞬间芯片初始化引起的抖动,
两相电机千万注意,如果驱动做不好,主控芯片初始化的时候和驱动芯片刚上电的时候,电机会全速运转。这是不可以哦
|