基于TMS320F2407的主动振动控制系统
扫描二维码
随时随地手机看文章
摘要:基于机械振动理论和控制理论,以TMS320F2407为核心处理器建立了一种数字式主动振动控制系统。设计了该系统硬件电路,并用软件实现了控制策略。实验表明,该系统有效地解决了主动振动控制的实时性问题,并使系统具有较强的适应性,隔振效能大大提高。
主动振动控制具有隔振率高、适应性强、可抗强冲击振动等优点,可使关键设备在恶劣冲击振动环境下可靠工作。但是,主动振动控制系统对相位要求较为严格,要求系统具有极强的实时性,否则由于相位滞后,控制效果将会受到严重影响。因而在数字式主动振动控制系统中,通常在单片机难以达到实时性要求,本文采用高速DSP器件解决控制的实时性问题。
TMS320LF2407是TI公司专为实时控制而设计的高性能16位定点DSP器件,指令周期为33ns,其内部集成了前端采样A/D转换器和后端PWM输出硬件,在满足系统实时性要求的同时可简化硬件电路设计。本文在总线模拟主动控制系统设计作经验的基础上,设计了以TMS320F2407为核心的数字式主动振动控制系统。
1 主动振动控制系统及其数学模型
1.1 控制系统工作原理
主动振动控制系统模型如图1所示。隔振对象通过弱性体与基础相连接,基础振动(振幅为u)通过弱性体(刚度为k)传递到隔振对象上,引起隔振对象振动。传感器置于二者之间检测相对位移并输入到控制器,控制器输出的控制量经过功率驱后输出到电磁作动器控制隔振对象的振动,同时控制器根据隔振对象的加速度反馈实时调节控制参数。
1.2 系统数字模型描述
根据主动振动控制系统工作原理建立的系统振动模型如式(1)所示。为使隔振对象加速度x最小,控制力f的计算式如式(2)所示。其中,u-x为基础和隔振对象相对位移,可通过光电位移传感器(PSD)测得。
mx+cx+kx=cu+ku+f (1)
f=c(x-u)+k(x-u) (2)
式中,m为隔振对象质量,x为隔振对象加速度,u为基础加速度,k为隔振弹性体刚度,c为隔振系统阻尼。
系统作用力f由置于气隙磁场中的载流线圈提供。当在线圈上施加电压v时,其上的咯伦兹力f和施加电压V如式(3)和式(4)所示。
f=bli (3)
v=ri-bl(u-x)+l'l (4)
式中,b为气隙磁感应强度,l为线圈有效长度,I为线圈电流,r为线圈电阻,l'为线圈电感。
2 控制策略及控制器
2.1 控制策略
根据系统各部分数学模型可计算出控制电压输出,如式(5)所示。
v=(l'c/bl)s-[(l'k+rc)bl+bl]s-(rk/bl)s (5)
式中,s为相对位移u-x,s和s分别为相对位移的一次微分和二次微分。在实际应用中,上述控制参数并不能准确得出,而且有些参数如弹性体刚度、磁场强度等并不是恒定值。在控制过程中,先以估算值作为初始值,再以一定控制算法(自整定PID),根据加速度反馈,对控制参数进行实时校正。
2.2 控制系统的硬件结构
控制器硬件结构如图2所示。位移传感器(PSD)输出信号经由信号处理电路、加速度传感器输出信号经由电荷放大器后,再分别通过TMS320F2407中的A/D转换器输入到DSP核心中。DSP核心根据加速度反馈修正控制参数,由位移输入计算出控制量,进行PWM调制后送到PWM功率驱动部分,由功率驱动部分驱动电磁作动器进行振动控制。
2.2.1 DSP及存储器
F2407中集成了32K字的FLASH EEPROM和1.5k字的RAM,由于控制算法的需要,本系统需扩充外部RAM。TMS320F2407片内的FLASH可用作程序存储器,但在开发阶段使用FLASH作为程序存储极为不便,因为每一次程序的修改都需要对FLASH进行清除、擦除和编程操作,而且进行CCS调试时只能设置硬件断点,故从调试的角度考虑,应扩充程序RAM。为了不增加系统复杂度,从扩充的数据RAM中分出一块作为调试时的程序RAM。如图3所示,CY7C1021为64K×16的SRAM,存取时间最小为10ns,故不需要插入等待周期,可保证系统全速运行。
在调试时,用跳线短接PS和与门输入脚,在存储映像文件中将CY7C1021前32K字设为数据RAM,后32K字设为程序RAM,可将程序实时下载到程序RAM中进行调试,避免了对FLASH的繁琐操作。当开发完成时将VCC和与门短接,同时修改映像文件,将64K RAM全部用作数据存储器,而将程序写入内部FLASH中,系统即可脱离开发环境独立运行。
2.2.2 传感器处理电路及A/D变换
加速度传感器和位移传感器输出需进行预处理后再进行A/D变换。前者输出电荷信号,应用电荷放大器将其转化为电压信号,后者输出微弱的电流信号(数个微安),进行前置放大及相关模拟处理后得到表示位移的模拟电压信号,经过处理的此二路信号分别送入DSP片内A/D转换器的1、2通道进行模/数变换。
图4
2.2.3 PWM调制及驱动 2.3.2 中断控制
核心程序计算出控制量后进行PWM调制、功率驱动后输出到作动器中。PWM调制在片内完成,而功率驱动则需依靠外加的驱动电路来完成。商品化的PWM驱动器体积大、价格昂贵,在此采用了瞬息万变制的小功率PWM驱动器,其电路图如图4所示。IR2110完成初次驱动,将来自DSP的TTL电平转化为12W电平输出,推动由四个功率管IRF3710构成的H桥进行开关动作,H桥再驱动作动器施加控制力。
2.3 控制器软件
2.3.1 控制算法
控制算法是整个系统的核心,要求较高的实时性和一定的自适应能力。算法由两部分组成,如图5所示,上半部分根据隔振对象相对位移输入完成的控制量的计算,下半部分根据隔振对象加速度反馈完成控制参数的实时优化。算法先根据式(5)估算出各个系数的值,运用PID算法根据隔振对象加速度反馈输入依次对各系数进行校正,得到最优控制参数。之后脱离PID算法,完全依靠式(5)计算输出。当中环境发生变化,控制效果变差时,再重新调用PID校正参数。这样既满足了实时性的要求,又提高了适应能力。
根据系统控制要求,A/D需定时采样隔振对象加速度和相对位移信号,为提高效率,A/D转换结果以中断方式读取。因此中断控制包括定时器中断控制和A/D转换结束中断控制。
TMS320F2407有二级中断服务程序,分别为通用中断服务程序GISR和特定中断服务程序SISR。所有可屏蔽中断分为六级(INT1-INT6),如图6所示。中断产生时,系统通过通用中断向量表自动跳到该中断所属级PIVR的值,根据外设中断向量表,使程序跳转到中断对应的SISR中。所以进行中断处理需要二级中断向量表(通用中断向量表和外设中断向量有)和二级中断服务程序(GISR和SISR)。其中,通用中断向量表必须映射到零地址开始的片内FLASH程序存储空间中。
2.3.3 PWM及A/D转换接口程序
PWM接口程序实现PWM初始化,控制输出的PWM调制、载波频率、死区宽度等参数的功能。A/D转换接口程序包括A/D转换初始化、转换的通道选择、定时启动和数据读取等部分。
3 实验测试
根据课题的要求,对5Hz~2kHz范围内的信号进行控制。按照采样定理的规定,采样频率应大于4kHz,为精确控制,将系统采样频率扩大到原来的2.5倍,达到10kHz,即系统A/D转换、控制算法、PWM调制均要求在100μs以内完成。TMS320F2407内置A/D转换器最小转换周期可达到500ns(2MHz),PWM亦有较高响应速度,经过测试,A/D转换器和PWM完全可以满足要求。DSP工作在30MHz时钟下时,速度为300MIPS,故控制算法要求不能超过3000条汇编指令,由于控制算法的简化和去除了浮点运算,实际程序没有超过2000条指令。
本设计解决了主动振动控制系统的实时性问题,提高了系统适应性,简化了电路结构,使得系统隔振率大幅提高。在5Hz-2kHz频段内,对振动的隔振率达到6%以上。