基于FPGA的交流电机驱动器的电流控制器3

FPGA/ASIC技术

205人已加入

描述

仿真和算法改进步骤

正如之前所提到,仿真步骤在Matlab-simulink软件环境中已经演示过。它的目标是: 改变完整的控制系统的功能;根据控制系统的缺陷所需,找到每个控制变量合适的采样周期和定点格式改进。在利用仿真连续时间模块情况下,功能模块的发展能够促使这些功能成功地改变。然而,每个组合数字算法的参数化是在研究采样周期和定点格式的影响下得到的。注意到这一点,每个定点格式的选择都源于可适应的方法[30],[31]。在此等级下,仿真是在使用系统生成工具箱的数字定点专用模型的发展下实现的[32]。然而,对于每个提出的第二等级的模块来说,提出了数据流曲线图这一概念(DFG)。DFG是算法的图形再现,它包括不定时的规范,由点和边沿组成。每个点表示一个简单的算法操作,或一个简单的数学或逻辑功能,每个边沿对应数据转换。例如,如图4(a)所示,第二算法等级的DFG图展示了下式功能:(1)正如关联图DFG所示,在并行模式中可以完成两种应用,但是附加的应用依赖于两种应用的已得结果,并且只有在两种应用取得结果的条件下才能实现。因此,DFG图明确地表示数据依赖关系性和算法的潜在并行性。图3表示了提出的不同的步骤。值得注意的是,到目前为止,关于目标器件的抉择还没能得到,因为模块分离和定点改进也适用于DSP控制器[33]。

交流电机驱动器

Fig.3.Development of DFGs.

交流电机驱动器

步骤最优化

步骤最优化是建立在A3技术的基础之上的[28],此方法的目的是,若进行基于FPGA设计,那么它是在满足空间和时间限制下达到给出算法的硬件结构最优化。在每个DFG图中,某些操作使用数次。如果某些操作使用了n遍,那么A3将进行因式分解处理但仍然适用于此操作,只不过它是仅使用了m遍,而m

模块化硬件结构设计

对于库中每个模块,都需要定义一个数据通道和一个控制装置。结构中的数据通道可以用来代替最终图形中的节点所对应的操作器以及边沿对应的操作器之间的数据总线。数据总线转换由控制装置控制管理,它简单地可以被称为有限状态机(FSM)。图5(a)和图5(b)结构分别对应图4中DFG和FDFG。值得注意的是,已获得的数据通道其实是对应图形的拟拷贝,此外,因式分解的结构较未能因式分解的结构的潜力大很多。

交流电机驱动器

 库中每个已开发模块的特征有:输入输出格式,可重复利用程度,潜力性以及通信协议。所有的这些特征都必须在对应的数据表格中清晰地表明,以方便开发利用。图6所示为第二等级模块中可重复利用模块的一般结构。数据通道由基本的操作器组成,如加法器、乘法器、多路复用器、寄存器等。在这些基本操作器之间的数据转换由一个控制器来完成,此控制器由时钟信号(Clk)进行同步操控。每个模块的控制装置由一个“Start”脉冲信号激活。当计算时间的过程结束时,一个“End”脉冲信号向全局控制装置表明模块的数据输出通道又可以继续使用了。

交流电机驱动器

Fig.6.(a)Generic module architecture.(b)Timing diagram of the module.        至于第三等级模块的硬件结构的发展,可以这么说它是利用库中第一、二等级模块中的块进行运作的。因此,数据通道是第一、二等级模块组合的实例化,它连接着数据总线。在这个程度上来说,第二等级模块的结构可以被认为是粗晶粒操作器。对于这种操作器,一个A3的因式分解过程只能应用一次。这么说,如果控制算法包括两个PI控制器,那么设计只能任意选择其中唯一一次因式分解的PI控制器。第二等级的模块容易操作把控,这只取决于它们的Start和End信号。对于这些模块的协调是通过全局控制装置在明确的界定时间点发出信号激活本地控制装置而完成的,这一过程如图7所示。全局控制装置当然也是在由“Start”脉冲信号激活,然后在输出数据完成后产生的“End”脉冲信号中结束的。对于这种结构,第三等级模块也同样用同样的方式在上一等级模块结构中运作。然而,每个等级模块的结构可以通过结构性方法VHDL语言进行编码。 

交流电机驱动器

验证设计结构

验证的第一步是使用Modelsim和Maltab软件工具一起进行过程运作仿真。这一步骤允许通过编写VHDL修改设计结构中的良性功能,同时可以经过一系列实验平台输入波形进行测试。第二验证步骤是在系统级程度上通过硬件在回路运行步骤完成的,这个过程的目的在于确保第一次实验担保,它通过在测试结构中进行硬件实时完成的,如图8所示,它主要包括三个模块。第一个是产生促进模式,并保存在FPGA存储模块中。这些促进模式直接来源于模拟阶段,能够与模拟系统进行进一步比较。第二个模块是被用来测试的结构,第三个模块是一个连接FPGA和PC主机的通信接口模块。此结构的计算输出应当集中进行测试并通过通信接口送往PC主机,此目的是为了与在Matlab环境下仿真的结果进行比较。一旦这个测试结果被验证成功,那么次设计的结构将可以应用于实际。

交流电机驱动器

Fig.8.Hardware-in-the-loop procedure. [30]D.Menard and O.Sentieys,“Automatic evaluation of the accuracy of fixed-point algorithms,”in Proc.IEEE/ACM Conf.Des.,Autom.and Test Eur.,2002,pp. 529–535, CD-ROM.[31]F.Zhengwei,J.E.Carletta,and R.J.Veillette,“A methodology for FPGA-based control implementation,”IEEE Trans.Control Syst. Technol.,vol.13,no. 6,pp.977–987, Nov. 2005.[32]Xilinx,Data Book,2006.[Online].Available:[33]Texas Instruments DSC Group,A Software Modularity Strategy for Digital Control System Motor.SPRU485A,Aug.2001, revised Oct.2003.
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分