自顶向下基于DSPBuilder的PID控制系统开发

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

自顶向下基于DSPBuilder的PID控制系统开发|2007-08-28来源:中电网戢方雷勇王俊十佳ERP制造业解决方案对比评估国际顶尖ERP软件。免费案例分析及在线软件选型演示。ERP.TechnologyEvaluation.com/zhGoogle提供的广告为了简单地说明如何用DSPBuilder自顶向下的设计基于FPGA的控制系统,这里用普通的位置式PID算法进行举例。位置式PID算法的PID控制子系统设计框图如图3所示。在图3中,输入误差信号采用了16位精度。而为了实现比例、积分、微分系数的精确可调,在这里PID系数采用了8位精度,使系数至少可以精确到百分位。同时,在系统设计过程中为了尽量避免浮点数的运算,这里将PID系数取成整型,先放大数据值到24位,而在并行加法器运算单元后用IO&Bus中的总线转换器单元对累加后的数据进行位数转换,实现FPGA中的浮点数运算。Matlab仿真结果如图4所示。其中,source为系统设定值,feedback为系统反馈值。波形仿真成功后,需要将Matlab中图形化的顶层设计模型转换成能够被FPGA开发软件识别的HDL语言描述文件。在图2中,打开SignalCompiler模块,配置相关参数,可以将DSPBuilder设计的PID控制子系统编译成VHDL及Veirlog语言的RTL表述和工具命令语言Tcl脚本。根据编译信息前面的设计模型,直到编译报告中ConvertMdltoVHDL,Synthesis,QuartusIIFitter三项状态均为PASSED,即可获得ModelSim所需的tb_SystemName.tcl功能仿真文件脚本和Quartus所需的SystemName.qpf项目文件和SystemName.vec仿真波形文件。3.3在ModelSim中实现HDL代码功能仿真在ModelSim菜单中执行Tools一ExecuteMacro,打开前述SignalCompiler编译生成文件tb_System-Name.tcl(VHBL)或tb_vo_SystemName.tcl(Verilog),调试成功后,仿真得到图5结果。功能仿真结果与Matlab中基本一致,证明顶层设计基本成功。3.4在Quartus中实现FPGA开发在Quartus中打开前述SignalCompiler编译生成文件SystemName.qpf。设定相应器件Device,在TclScripts中运行SystemName_quartus.tcl配置此工程项目变量,然后编译。调试成功后,载入SystemName.vec波形仿真文件运行时序仿真工具,得到图6结果,与图5基本相符,证明设计成功。4结语这里给出了一个最初用于FPGA的系统级设计工具DSPBuilder在自动控制领域的应用,目前在已出版的国内期刊及论文库中似乎还没有相关文献谈到这个交叉领域的应用。在控制领域里,当各种复杂的新型PID算法应用于实际控制系统中时,由于传统单片机与分立元件电路系统的局限性,硬件指标和软件复杂度都使得新的应用及研发设计进展缓慢;普通FPGA/CPLD没计又存在着没计周期长、可重复利用性差等缺点。我们将日益完善的SoC设计工具应用于自动控制领域,不仅在算法设计上有了新的方便快捷的设计工具,同时籍由FPGA硬件本身的优点也可以解决单片机及分立元件存在的电磁干扰、系统复杂度高等各类问题,从而大大提高将各种新型PID算法广泛应用于实际工业控制系统的可行性。在系统设计中进一步的探讨:由于设计是从与硬件完全无关的Matlab系统级仿真开始,因此便于传统控制领域工程师们可以迅速地将算法级的构思应用于控制系统设计中,从而可以将有限的精力专注于系统级算法的设计,而避免陷入重复繁琐的电路设计中去,缩短从人脑构思到实际系统实现的时间周期。其中单个设计MDL文件甚至可以考虑封装成算法包的形式进行资源重复利用,以实现功能单元的便捷增减和缩短产品开发时间。这里可能存在着控制领域里可重用算法及相应包的接口标准。这种情况或许和SOC领域IP核的现象有部分类似,本文就不再多述

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功