如果在寄存器DBTCONx中设置了死区时间值,则相应事件管理器所有PWM输出通道使用同一个死区值。由于加入了死区,PWM波高电平脉冲的宽度减少了一个死区时间,但是周期没有变化,所以高有效和低有效的PWM波形的占空比可分别用式(1)和(2)来计算。
通过调节占空比,可以调节输出电压,用这种无级连续调节的输出电压可以给出速度信息,因此可以通过调整PWM信号有效电平的宽度达到控制转速的目的。
3 硬件设计
整个硬件电路包括DSP芯片TMS320F2812、电源、JTAG仿真接口、通讯、RAM、PWM、A/D、I/O扩展、备用端口、电机驱动和光电信号处理等模块,其控制系统结构如图3所示。
双足机器人总电源采用24 V直流电源,为了满足DSP及外围电路的需要,需将电源转换成5 V,3.3 V和1.8 V。首先使用DC-DC变换器将24 V转换成5 V,再选用TPS767D318电源转换芯片将5 V转换成1.8 V和3.3 V。该芯片专门针对DSP设备提供稳压电源,为双电源输出,每路电源的最大输出电流为1 A,此外该芯片的电压漂移非常低,在最大输出电流为1 A的情况下为350 mV,每路输出还有过热保护、复位和监控输出电压等功能,能满足系统对电源性能的要求。
系统特别留有JTAG接口电路,使控制器可以通过TDS510仿真器连接到计算机,其仿真信号采用JTAG标准IEEEll49.1,使用双列14脚的插座,并将DSP上的EMU0和EMU1上拉连接至Vcc。
TMS320F2812自身集成CAN总线的控制模块,所以在外围电路中加入CAN总线收发器SN65HVD251D即可实现DSP与CAN总线的通信功能。为了确保在CAN总线传输信号的完整性,设计时在CAN总线的两根传输线之间加上150 Ω的电阻进行阻抗匹配,可以提高CAN总线传输信号的精度。
利用XINTF的区域O和区域1扩展一块存储容量为(64K×16)b的RAM存储器IS61LV6416-10T。其数据存取时间为10 ns,能满足高速运行的需要,工作电压为3.3 V,与DSP工作电压一致,无需电平转换电路。
此外,DSP控制系统中的I/0端口电压绝大部分为3.3 V,而外部信号一般为5 V,因此需要将外部5 V信号转换为符合DSP芯片要求的3.3 V信号,系统使用总线驱动器74LVX4245进行电平转换。
电机驱动电路采用全桥驱动三相无刷直流电机的控制方式,由于要独立控制5个电机,系统需按照前面的原理由DSP事件管理器生成PWM,并用其波形占空比给出转速信息,该信息结合转向、制动等信号通过控制电路转换后进行电机的调速,这里使用三相无刷直流电机控制器MC33035。驱动电机时,MC33035的输出信号施加到三相桥功率电路MPM3003上,决定功率开关器件开关频度及换流器换相时机,使其产生出供电机正常运行所需的三相方波,根据速度电压MC33035可改变底部半桥输出脉冲宽度,相当于改变供给绕组的平均电压,从而控制转速。
4 软件设计
运动控制系统软件设计的关键是接收到主控计算机传来的运动控制指令后,电机是否能够达到要求的速度和角度,考虑到整个系统运行过程中不可避免的误差,特别引入补偿算法,实现速度和位置双闭环PID控制,其具体的控制流程如图4所示。
主控计算机根据步态规划的数据,发出运动指令,生成下一个运动周期各个电机的转动方向和角度等控制参数,运动控制器接收到新的数据之后,PWM控制根据数据计算出占空比信息并生成相应的PWM波,进而控制电机转动,随后将电机光电编码器传送回的信号转换成关节位置和速度等信息,补偿控制针对速度和位置误差采用PID算法进行调节,计算需要的执行量,调整PWM波形,在每一个运动周期内使电机达到指定的速度,并使运动中的关节电机能够克服机器人重力和外力的影响,保持在设定的角度。图5是CCS仿真调试时,程序运行后在指定的摆动角度下监控到的单关节电机速度跟踪曲线,其响应时间和稳定性基本满足双足步行的要求。
5 结语
介绍了一种基于DSP的无刷直流电机运动控制系统,在控制方案的具体实现过程中,根据机器人腿部系统的自身特点,将控制器围绕DSP处理和电机控制电路来分别设计,这样既方便设计和调试,又增强了系统的灵活性和扩展性。电机驱动采用速度和位置双闭环控制,保证运转精度。经测试,系统基本满足运动控制的要求,为双足步行规划提供了试验平台。
评论
查看更多