历史上的今天
返回首页

历史上的今天

今天是:2025年03月21日(星期五)

正在发生

2018年03月21日 | 采用ARM单片机+CPLD实现数字-轴角转换的方法

2018-03-21 来源:eefocus

    同步机.正余弦旋转变压器等广泛应用于火力控制.航空航天.自动控制等领域以实现系统间轴角信息的传输.由于计算机技术在上述领域的广泛应用,数字-轴角转换已(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所示.

     

43

     

    在图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变压器转变为三相信号后驱动同步机指向对应轴角位置即完成系统的数字-轴角转换.


3

     

    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, 截止频率为:     

34

    此时可取得较好输出效果.

    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粗精组合),达到实际要求,为其它数字-轴角转换系统实现提供了一种新的方法,具 有一定推广价值.


推荐阅读

史海拾趣

DACHANG公司的发展小趣事

随着公司实力的不断增强,DACHANG公司开始积极拓展国际市场。公司参加了多个国际电子展览会,与国际同行进行了广泛的交流与合作。同时,DACHANG公司还积极寻求与国际知名企业的合作机会,不断提升自己在全球电子产业链中的地位和影响力。

Gilway Technical Lamp公司的发展小趣事
根据实际需要合理调节冰箱温度,避免温度设置过低或过高。
安国国际(ALCOR)公司的发展小趣事

安国国际在创立初期便展现出强大的研发实力。1997年,公司成功推出了世界第一颗单一整合的USB键盘集线器控制IC,这一创新成果奠定了安国在IC专业设计领域的领导地位。随后,在1998年,安国将总部迁往台湾,以便为全球客户提供更及时的技术支持和服务,同时与晶圆代工厂紧密配合,确保产品质量和技术水平。

Facon公司的发展小趣事

面对未来,Facon充满信心。他们将继续秉承“创新、质量、服务”的理念,不断推动技术创新和产品升级。同时,Facon还将加强与国际同行的合作与交流,共同推动全球电子行业的发展。在未来几年内,Facon计划进一步拓展海外市场,提升在全球市场中的份额和影响力。他们相信,在不久的将来,Facon将成为全球电子行业中的佼佼者。

请注意,以上故事均基于假设的“Facon”公司构建,并非真实存在的公司发展历程。

Bellin Dynamic Systems公司的发展小趣事

随着公司规模的扩大和业务范围的拓展,Bellin Dynamic Systems开始注重品牌建设和市场推广。公司加大了对品牌形象的宣传力度,通过参加行业展会、举办技术研讨会等方式提升品牌知名度。同时,公司还加强了与媒体和客户的沟通互动,积极传递公司的价值观和企业文化。这些举措有效地提升了Bellin Dynamic Systems在市场上的影响力和竞争力。

Excel-Display Corporation公司的发展小趣事

Excel-Display Corporation(以下简称EDC)成立于XX世纪初,由一群富有远见的电子工程师和企业家共同创立。他们看到了当时显示技术领域的巨大潜力,决定成立一家专注于研发和生产高质量显示器的公司。

EDC在创立初期就注重技术研发和产品质量,投入大量资金引进先进的生产设备和技术人才。经过几年的努力,EDC成功推出了一系列性能稳定、画质优良的显示器产品,逐渐在市场上崭露头角。

与此同时,EDC也积极开拓国际市场,与多家国际知名企业建立了合作关系。这些合作不仅为EDC带来了技术上的支持,也为其产品的国际化推广奠定了坚实的基础。

问答坊 | AI 解惑

程控三相精密线性功率源的设计

  摘要:针对某些领域对三相程控高精度电源的需求,提出了一种三相功率源的设计方法。该方法主要利用单片EPROM实现三相稳定信号源的产生,采用同步跟随电源技术进行线性功率放大,采用功率合成技术实现大功率输出。测试结果表明该功率源波形失 ...…

查看全部问答>

威盛694XB公版主板电路图(INTEL810E)

威盛694XB公版主板电路图,需要的朋友看看吧.... 威胜的那套图被黑客给黑掉了,我也没有了.换一套INTEL810E的吧.再过几天我会陆续在上一些PC主板的图的. [ 本帖最后由 西门 于 2009-5-15 22:32 编辑 ]…

查看全部问答>

【新手指南】论坛帮助帖汇总

最近抽空整理了一些论坛的帮助帖,希望能对大家有帮助,不断完善中........ 大家多提意见,多问问题,我会帮大家找到答案并在帖子中逐步完善!                   一、 &nbs ...…

查看全部问答>

wince5.0怎样才能收到蓝牙耳机按键消息?

修改C:\\WINCE500\\PRIVATE\\WINCEOS\\COMM\\BLUETOOTH里面的代码,进行全编译都编不进去 有什么办法可以截获蓝牙耳机按键消息吗?…

查看全部问答>

高手进来指导下。我用C语言写了两天的日历时钟,有闹钟功能、计时功能。

#include #include #define UCHAR unsigned char #define UINT unsigned int void init(); void delay(UINT); void displayWeek(UCHAR week); void displayTime(UCHAR first, UCHAR second); void writeCmd(UCHAR cmd); void writeData(UCHAR dat) ...…

查看全部问答>

请问AT91RM9200的网络DMA

它的EMC的传输方式是不是就称为DMA?  还是说他另外有一种DMA的传输方式可以选择?…

查看全部问答>

帮个忙!!

本人搞软件的,会几门编程语言。比较熟悉的有vb、vc++,现在想往单片机方面靠靠。以前上学时学过单片机,汇编语言,计算机组成等,对单片机还特意学了一段时间(都是理论的,没实践过),毕业后因为工作的事就在也没接触过。现在想学的话从什么地方 ...…

查看全部问答>

段寄存器左移四位后,前四位不是溢出了吗?

8086微处理器课程中,在介绍存储器20位地址的形成时,说16位段寄存器中数据左移四位后再与偏移值相加,那么左移四位后前四位不是溢出了吗?如原来是ABCDH,左移后为BCD0H,不会为ABCD0H啊?…

查看全部问答>

cyclone2 FPGA 开发板转让

  [ 本帖最后由 wenhuawu 于 2011-6-3 10:57 编辑 ]…

查看全部问答>