高保真动态嵌入式系统仿真探析


AC转换为电压,再通过电压增益为1的功率放大器驱动直流马达。为了尽可能使用便宜的处理器,在每个刷新周期期间,控制器模型要用4ms完成运算。

在为动态系统建模时,必须确定表述每个部件的详细程度。所需细节的数量取决于仿真中的具体用途。在本例中,仿真的主要目的是使数字控制器的设计和实现能应用于转盘系统。因此,要尝试以良好的精确度对马达和转盘动态系统进行建模,并忽略功率放大器的动态特性,必须尽可能精确地模拟数字控制算法的特性。

我们将马达动态特性建模为二阶传递函数,该传递函数的输入为马达驱动电压,输出为马达速度。马达速度的积分可确定马达的位置。位置编码器向数字控制器输出马达位置的数字量化值。数字控制器的输入是受控转盘的位置及由编码器测得的当前位置。控制器的输出驱动功率放大器的模拟电压,功率放大器输出驱动马达。

图4示出了数字控制器控制算法的实现方法。因为该算法执行的时间间隔为5ms,Simulink模型要求添加标有“0阶保持1”、“1阶保持2”和“单位延迟”的方框,这些方框都具备一个设定为5ms刷新的参数。算法的其余部分由比例微分控制器组成,该控制器使用标有“导数估计”的离散时间传递函数来获得转盘角速率的估计值。控制算法的输出反馈到限幅和量化信号的8位DAC。“4ms传输延迟”方框将算法的输出延迟4ms,从而仿真出计算延时。

除了实现仿真模型外,还必须确定所用的积分算法及积分时间步长(如果使用的是固定步长型算法)。经试验测定使用1ms的时间步长和Simulink的4阶Runge-Kutta积分算法可得到满意的结果。通过执行一个步长时间为0.1ms的操作进行验证,结果没有显著变化。

系统的初始状态为转盘停在位置0。0时刻之后,指令将转盘移动到弧度1位置。大约5s之后,可看到转台到达指定位置。

再看一下图5所示的数字控制器输出,可得到位置编码器信号量化的结果。此外,不仅能看到输出信号在仿真初期约1.7s后饱和为最大值,还能看到DAC输出信号电压的量化值。

转盘和控制器的仿真向我们提供了大量关于整个系统动态特性的信息。非线性系统特性的细节对于开发实际应用的设计至关重要。仿真的应用使人们能够通过改变模型参数及给部件模型增加额外的变化因素和复杂性因素来确定系统在各种条件下的特性。还能方便地改变研究以确定系统在设计修改时表现出的特性。这些修改包括不同的控制器刷新速率、不同的DAC位或不同的编码器分辨率等。

本文总结

仿真是复杂嵌入式系统开发和测试中重要且常用的技术。从最初产品概念的定义到工程开发,再到维护软件发布和硬件升级测试的全过程都要应用仿真。在开发项目中采用适宜的仿真不但能降低工程所需的总体时间和费用,而且可开发出经过完全测试的高质量产品。

COPYRIGHT(C) 2011 厦门永宏亚得机电科技有限公司版权所有(闽ICP备05025945号) ALL RIGHTS RESERVED?

电话: 0592-5190891 传真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 厦门市海沧区兴港六里17号2607室 邮编:361009 联系人:翟先生