一种基于ARM 单片机与CPLD的数字轴角转换方法
- UID
- 871057
- 性别
- 男
|
一种基于ARM 单片机与CPLD的数字轴角转换方法
0 引言同步机.正余弦旋转变压器等广泛应用于火力控制.航空航天.自动控制等领域以实现系统间轴角信息的传输.由于计算机技术在上述领域的广泛应用,数字-轴角转换已(Digitalto Shaft-angle Converting,DSC)成为一个重要的问题.市场上DSC集成模块产品价格较高且接口不够灵活,在某些领域应用受到限制,特别在多路DSC使用时效费问题更为突出.基于上述问题,提出一种采用ARM 单片机+CPLD实现数字-轴角转换的方法.
1 数字-轴角转换原理数字-轴角转换(DSC)是将数字形式表示的轴角度θ通过运算电路转换为正余弦旋转变压器形式的电压(如式(1)),经正余弦旋转变压器和经过Scott变压器后驱动同步机指向对应轴角位置,从而完成数字-轴角转换.
当同步机.正余弦旋转变压器的激磁绕组电压为U0 =Umsinωt时,则正余弦旋转变压器两相绕组输出电压为:
URS =KRUmsinωtsinθ
URC =KRUmsinωtcosθ
驱动同步机三相绕组电压为:
US1 =KSUmsinωtsinθ
US2 =KSUmsinωtsin(θ+120°)
US3 =KSUmsinωtsin(θ-120°)
其中,KR ?KS分别为正余弦旋转变压器和同步机的变压比,θ为轴角位置.
为了将两相正余弦旋转变压器信号变为三相同步机信号,需使用Scott变压器.其基本构造及原理分析如图1所示.
在图1 (a)中,URS ?URC是空间两相正余弦旋转变压器信号,将两变压器按图中抽头连接,如图1 (b)的相量图分析:
Us1 =URS
US2 =-0.5URS -0.866URC
US3 =-0.5URS +0.866URC
这样就将空间两相正余弦旋转变压器信号转变为空间的三相同步机信号.
2 硬件设计
2.1 总体设计
以一路DSC为例,系统的硬件结构如图2所示.工作原理为:STM32F407微控制器为主控芯片,通过通信接口接收外部输入的轴角信号θ,并对其进行粗精分离及利用查表法计算对应占空比大小,通过总线方式将通道对应地址及占空比对应数据信息送入CPLD;CPLD根据数据及地址信息产生对应通道和占空比的PWM 信号;由4个互补MOS管构成的全桥驱动电路由全桥驱动器UBA2032根据PWM 信号控制全桥电路开断,并经选频电路后产生对应轴角的调制波,经Scott变压器转变为三相信号后驱动同步机指向对应轴角位置即完成系统的数字-轴角转换.
2.2 STM32F4微控制器
STM32F4微控制器是由意法半导体生产的基于ARMCortex-M4内核的新型微控制器,性能优越.下面主要说明选用此型号MCU的原因:
(1)内核架构先进,性能优越.由于MCU需要完成诸如轴角粗精分离.取整以及调制波对应PWM 信号占空比等运算,涉及到较多乘除法运算,要求所选MCU需具备较强浮点及乘除运算能力,而所选STM32F4微控制器具有专门的硬件乘法器和具有较高的主频(168MHz),且可适当超频,适合完成较为复杂的实时运算;(2)接口丰富,可方便完成功能扩展.RS232串口用于接收外部信息,同时,此型号MCU具有网络接口,可在系统组网时作为网络节点;(3)可变静态存储控制器(FSMC),是STM32系列采用的一种新型的存储器扩展技术,可根据不同的外部存储器类型通过设置进而匹配信号的速度,达到方便扩展.使用灵活的目的.系统中通过数据/地址/控制三总线方式与CPLD通信.
在多路DSC中,通过地址总线传递所选通道号,数据总线传递对应此通道相应轴角调制波的PWM 信号的占空比,控制总线传递相应控制信号.
2.3 CPLD电路如果利用MCU产生PWM信号,由于其需担负大量运算工作,会增加MCU的负担从而系统的实时性与稳定性均可能得不到保证,因此需要专门产生PWM信号的单元.CPLD是可编程逻辑器件,器件的时延特点较为固定,信号输出稳定性及实时性均可得到保证,因此使用CPLD完成PWM信号的生成.
2.4 全桥电路及选频电路
全桥电路由两对互补连接的MOS管组成,具有丙类功率放大的特征,发热低.效率高.工作时由PWM 信号驱动全桥驱动器UBA2032产生控制全桥电路桥臂开断时间,从而产生不同有效值的电压.50%的占空比对应调制波的零值,为了保证UBA2023的工作及MOS管的正常开断,通常PWM 信号的频率为20kHz,占空比在10%~90%范围内调节.
为了使输出信号平滑连续,在全桥电路输出后需接LC选频电路.通过配置LC电路的电感和电容值,可达到增强基波分量.抑制谐波分量.改进输出精度的作用.基波频率为50Hz,根据要求及相关实验,可知取电感L=700μH,电容C = 25 μF, 截止频率为:
此时可取得较好输出效果.
3 软件设计
系统主要分为轴角粗精角度分离取整.占空比计算以及PWM 信号生成三部分.系统工作流程如图3所示.
3.1 轴角粗精分离设粗精同步机系统表示的轴角为θ,根据粗精传动比例k将其分为精确同步机轴角度θ精和概略同步机轴角度θ粗,这一过程称为轴角粗精角度分离.实际中,概略同步机轴角度θ粗=θ,精同步机的轴角度计算公式为:
3.2 查表法计算占空比根据公式(1),以正弦调制波为例,其输出式子为:
URS = KRUmsinωtsinθ,PWM 波形频率为f1 =20kHz,DSC角度更新速率为f2 =50Hz,因此在每个调制波周期内有N1 =f1/f2=400个PWM信号.CPLD采用时钟计数.CPLD采用时钟计数方法产生不同占空比的PWM 信号,由于CPLD的时钟频率为f3 =32.768 MHz,因此产生20kHz的PWM 信号时,最大计数值为N2 =f3/f1=1638,以中间数值为零值点,即为Z0 =819.
为了减小计算量及加快反应速度,需建立sinωt 值对应占空比的表格,表中
间正整数.同时,将sinθ值存于另一表,表中
间正整数,表示0~6000mil间的正弦值对应的占空比值,在粗精分离后,将粗精角度取整后即可通过查此表得到对应θ的正弦值.
由以上两表值,可得调制波URS的对应占空比计算公式为;
3.3 PWM 信号生成
STM32F4单片机通过总线方式向CPLD发送占空比及选通通道信息,其总线写操作时序如图4所示.
根据写时序,在整个写时序中,地址信号常有效,数据信号出现在R/W#信号拉低后,因此可用此信号作为CPLD程序中时钟计数开始标志位,通过对地址译码,进行通道选择.
在QuartusⅡ中利用VHDL语言编写CPLD程序,在R/W#的下降沿读取地址,在R/W#的上升沿读取数据,而后进行时钟脉冲计数以得到对应占空 比的PWM 信号.程序仿真结果如图5所示,由图中可以看出,对应不同地址和占空比,不同通道输出相应的PWM 信号 .
4 误差分析及测试
4.1 响应实时性分析
PWM 信号频率为20kHz,步长为50μs,因此,系统响应总时延必须远小于50μs.系统总时延主要包括三个部分:
MCU内部运算时延.总线数据发送时延以及CPLD逻辑电路产生PWM 信号时延.全桥电路中MOS管开断时延非常小,基本可忽略,此处不予考虑.
图6 (a)为STM32F4做20万次乘法运算所用时间,经测算时间大约为20ms,每次运算时间约为0.1μs;图6 (b)为STM32总线操作时间,经测算时间大约为250ns.二者总时间延迟约为350ns左右.本着减小时延的原则,CPLD型号 EPM7512AETC144-7,综合时延为7ns左右.由上所述,总时延不会超过400ns,相较于50μs基本可忽略,故可满足系统实时性要求,可 准确反应实时轴角信息.
4.2 动态精度分析
DSC轴角度以50Hz的速率更新数据,与其相连的随动系统或同步机具有惯性平滑作用,可将步进阶梯平滑滤除,但是会产生动态误差,它与角度的变化率有关,可通过动态测量,计算角度变化率的方法以软件方式补偿.
设ti时刻考虑动态补偿的DSC输出角度为θ′i ,ti+1时刻不考虑动态补偿的DSC输出角度为θi+1 ,则角度变化率ωi为:
则考虑动态补偿后ti+1时刻应向DSC输出的角度为:
4.3 测试结果
图8为实测输出调制波结果,从图中可以看出,输出信号波形较好,频率稳定,实时性较好,动态精度良好,满足使用要求。
5 结束语
设 计了一种以ARM Cortex-M4内核的新型STM32F4微控制器和可编程逻辑器件CPLD为核心的数字-轴角转换系统.利用PWM 信号控制全桥桥电路提供大功率输出,进而驱动同步机指向对应轴角.经高炮系统控制实验验证,该系统运转平稳,效率高,改进了原系统功耗较高.发热量大的缺 点,且具有较高精度及效费比,实测静态转换误差小于0.5密位(20:1粗精组合),达到实际要求,为其它数字-轴角转换系统实现提供了一种新的方法,具 有一定推广价值. |
|
|
|
|
|