基于FPGA的系统提高电机控制性能 (基于fpga的系统控制系统)
整理分享基于FPGA的系统提高电机控制性能 (基于fpga的系统控制系统),希望有所帮助,仅作参考,欢迎阅读内容。
内容相关其他词:基于fpga的系统计划书,fpga 系统,基于fpga开发的优点,基于FPGA的系统设计,基于fpga的是fpga最主要的应用方向,基于fpga的系统控制系统,基于fpga的系统控制系统,基于fpga的系统控制系统,内容如对您有帮助,希望把内容链接给更多的朋友!
图1.XilinxZynqSoC功能框图Zynq包括一个双核ARMCortex-A9处理器、一个NEON协处理器和多个用于加速软件执行的浮点扩展单元。处理*处理管理控制、运动控制、*管理、用户接口和远程维护等任务,这些功能非常适合通过软件实现。为了发挥*的能力,可以采用嵌入式Linux或实时*作*。可以使用自给自足的处理器,而无需配置可编程逻辑。这样,软件开发人员编写代码与硬件工程师设计FPGA结构可以同时进行。在可编程逻辑方面,该器件拥有多达,个逻辑单元和个DSPSlice,可提供巨大的处理带宽。FPGA结构可扩展,因而用户的选择范围很广——从包含,个逻辑单元的小型器件到支持最具挑战性的信号处理应用的高端器件。5个AMBA-4AXI高速互连将可编程逻辑紧密地耦合到处理*,提供相当于以上引脚的有效带宽。可编程逻辑适合执行时间关键的处理密集型任务,如实时工业以太网协议等,而且它支持多个控制内核并行工作,以实现多轴机器或多重控制*。基于XilinxAllProgrammableSoC的解决方案和平台满足当今复杂控制算法(如磁场定向控制FOC)和复杂调制方案(如Xilinx和Qdesys设计的再生脉冲频率调制器3)所提出的关键时序和性能要求。利用MathWorksSimulink实现基于模型的设计Simulink是一种支持多域*和基于模型设计的框图环境,非常适合对包括控制算法和工厂模型的*进行*。为了实现精确定位等目的,电机控制算*调节速度、转矩和其他参数。利用*评估控制算法可以有效地确定电机控制设计是否合适,判断其合适后再进行昂贵的硬件测试,从而减少算法开发的时间和成本。图2给出了设计电机控制算法的有效工作流程:●构建精确的*和工厂模型,常常是根据电机、驱动电子、传感器和负载的资源库●对*行为进行*以验证*的表现是否符合预期●产生C代码和HDL进行实时测试和实施●利用原型硬件测试控制算法●在原型硬件上进行*和测试后,如果控制*证明令人满意,则将*部署到最终生产*上图2.电机控制算法设计的工作流程MathWorks产品包括ControlSystemToolbox,™SimPowerSystems,™和Simscape™提供工业标准算法和应用程序以对线性控制*进行*化分析、设计和调谐,此外还有元件库和分析工具,用于对机械、电气、液压和其他物理领域的各种*进行建模和*。利用这些工具可以创建高*的工厂和*模型,进而验证控制*的行为和性能,成功之后方移交实际实施。该*环境是验证极端功能情形和工作状况的理想场所,确保*已为这些状况做好准备,并且其实际*作对设备和工作人员都将是安全的。一旦控制*在*环境中完成了全面验证,就可以利用嵌入式转码器和HDL转码工具将其转换为C代码和HDL,并部署到原型硬件上进行测试,然后部署到最终生产*上。此时要指定定点和时序行为等软硬件实施要求。自动生成代码有助于缩短从概念到实际*实现所需的时间,消除编程错误,确保实际结果与模型相符。图3给出了在Simulink中进行电机*建模并将其转移到最终生产*所需的实际步骤。图3.从*到生产的过程第一步是在Simulink中对*和工厂进行建模和*。在这一阶段,*算法被划分为在软件中实现的模块和在可编程逻辑中实现的模块。划分和*完成后,利用嵌入式转码器和HDL转码器将*模型转换为C代码和HDL。基于Zynq的原型*验证控制算法的性能,并且帮助进一步调谐*模型,然后转移到生产阶段。在生产阶段,将自动生成的C代码和HDL集成到复杂的生产*框架中。此工作流程确保控制算法在达到生产阶段之前经过全面验证和测试,使得*鲁棒性具有高可信度。利用ADI公司智能驱动器套件快速完成原型开发选择合适的原型开发硬件是设计过程的一个主要步骤。ADI公司的智能驱动器套件支持快速、高效的原型开发。AvnetZynq-AllProgrammableSoC/AnalogDevices智能驱动器套件将Zynq-AllProgrammableSoCARM双核Cortex-A9+nm可编程逻辑与ADI公司最新一代高精度数据转换器和数字隔离相结合,可实现高性能电机控制和双通道千兆以太网工业网络连接。该套件带有AvnetZedBoard基板和ADI公司的AD-FMCMOTCON1-EBZ模块,构成一个完整的驱动*,能够高效控制多种类型的电机。另外,该套件可以利用ADI公司的AD-DYNO1-EBZ测功器驱动*,进行扩展,后者是一个动态可调的负载,可用来测试实时电机控制性能。AD-FMCMOTCON1-EBZ模块由*和驱动板组成,如图4所示。图4.AD-FMCMOTCON1-EBZ功能框图控制板是一个混合信号FPGA夹层卡(FMC),可利用低引脚数(LPC)或高引脚数(HPC)FMC连接器连接到任何XilinxFPGA或SoC平台。它具有以下特性:●利用隔离式ADC测量电流和电压●隔离式XilinxXADC接口●完全隔离的数字控制和反馈信号●霍尔、差分霍尔、编码器和旋变器接口●2个千兆以太网物理层,支持EtherCAT、ProfiNET、Ethernet/IP或Powerlink等高速工业通信协议●FMC信号电压自适应接口,支持在所有FMC电压电平上无缝工作隔离是任何电机控制*的一个关键方面,其目的是保护*和用户。控制板上模拟和数字信号的完全隔离,确保FPGA平台永远不受电机驱动侧可能产生的危险电压影响。驱动板包含驱动电机以及电流电压检测与保护电路所需的全部电源电子。该板具有以下特性:●以最大A电流驱动V至V范围的BLDC(无刷直流)/PMSM(永磁同步电机)/有刷直流/步进电机●动态制动功能和集成式过流与反向电压保护●利用隔离式ADC测量相电流;可编程增益放大器使电流测量输入范围达到最大●向控制板提供直流总线电压、相电流和总电流反馈信号●集成BEMF过零检测,用于实现PMSM或BLDC电机的无传感器控制测功器是一个动态可调的负载,可用于测试实时电机控制性能,由两台BLDC电机通过刚性连接直接耦合而成。其中一台BLDC电机用作负载,由测功器的嵌入式控制*控制,而另一台由ADI公司的智能驱动器套件驱动,如图5所示。该*配有一个用户界面,用于显示有关负载电流和速度的信息,并支持设置不同的负载曲线。要实现外部控制,可利用AnalogDiscoveryUSB示波器捕捉负载信号;要从MATLAB®直接控制,可使用MathWorksInstrumentControlToolbox™。图5.测功器驱动*电机电流和电压测量的质量对电机控制*的性能有很大影响。通过利用高性能模拟信号调理器件和ADC,ADI公司智能驱动器套件提供精密电流和电压测量。测量路径分为*和驱动板两部分,如图6所示。图6.相电流信号链相电流通过测量分流电阻上的电压来检测。取决于ADC是否靠近分流电阻,有两条可能的测量路径可以获得最高测量精度。如果ADC靠近分流电阻,则信号路径非常短,不易受到噪声耦合影响。分流电阻上的小差分电压由隔离式Σ-Δ调制器AD直接测量,而无需其他接口和信号调理电路。如果ADC远离分流电阻,则信号路径很长,容易受到噪声耦合影响,尤其是电源开关噪声和电机的噪声耦合。必须采取特别措施确保ADC与分流电阻之间的PCB走线和信号调理电路受到适当的*。分流电阻上的小差分电压被驱动板上的差动放大器AD放大,后者置于分流电阻附近以避免噪声耦合。信号从&plu*n;mV满量程输入范围放大至&plu*n;2.5V范围,以最大程度地降低耦合噪声的影响。放大后的信号又经过一个采用可编程增益仪表放大器(PGIA)AD的放大级,以确保ADC始终接收到经过适当缩放以适应输入范围的输入信号。放大后的模拟信号经过连接器进入控制板。连接器会*每个模拟信号,以降低噪声耦合影响。来自驱动板的模拟信号利用运算放大器ADA-2重新转换到AD输入范围。电流和电压反馈信号链中的最重要器件是二阶隔离式Σ-Δ调制器ADA。这款高性能ADC具有位分辨率(无失码)、.3有效位数(ENOB)和dBSNR。2线数字接口包括一个MHz时钟输入和一个1位数字位流输出。ADC输出利用sinc3数字滤波器重构。数据手册中提供了一个针对位输出和kHz采样速率的滤波器模型和HDL实现方案。输出分辨率和采样速率可通过改变滤波器模型和抽取来控制。kHz采样速率对许多应用可能是足够的,但某些情况需要更高的速率。这些情况下,可利用图7所示的滤波器库来将*采样速率提至最高MSPS(真位数据)。滤波器库包含n个sinc3滤波器,其采样时钟延迟T(即sinc3滤波器传播时间除以n)的倍数。数据选择器以周期T输出ADC码。图7.滤波器库相电流测量也可以由ZynqXADC执行。XADC信号测量链使用常规测量链的完整路径,并在ADΣ-Δ调制器之后增加一个Sallen-Key模拟重构滤波器。该滤波器是在控制板上利用运算放大器AD实现,如图8所示。隔离式Σ-Δ调制器和模拟重构滤波器的组合为实现XADC输入信号的模拟隔离提供了一种便利、低成本的方法,同时不影响测量质量。