VHDL
扫描二维码
随时随地手机看文章
1 引 言
EDA是现代电子系统设计的关键技术。硬件描述语言VHDL以其“代码复用”(code re-use)远高于传统的原理图输入法等诸多优点,逐渐成为EDA技术中主要的输入工具。然而,基于IEEE VHDL Std 1076-1993标准的VHDL只用于描述数字电路。因而从理论的完整性和方法的统一性方面来说,这无疑是一个缺点。为此,IEEE于1999年发布了IEEE VHDL Std1076.1标准,扩展了VHDL对模拟电路及混合信号系统的描述和仿真能力。1076标准和1076.1标准所定义的硬件描述语言,称为VHDL-AMS。
PID控制是最早发展起来的控制策略之一,其算法简单、鲁棒性好、适用性强,广泛应用于过程控制和运动控制中,特别适用于可建立精确数学模型的确定性系统中。
本文介绍VHDL-AMS的新概念和新特性。通过对PID控制原理进行数学分析,建立PID控制器的数学模型,实现PID控制器的VHDL-AMS行为级建模,并进行仿真分析。
2 VHDL-AMS的新特性
集总参数连续时间系统的行为描述通常是用微分/代数方程组来进行描述,即:
F(x,dx/dt,t)=0
其中F是表达式的向量形式,x是未知变量的向量形式,dx/dt是未知变量的向量形式的导数(包括一阶导数和高阶导数)。在VHDL-AMS语言中新增的第一个概念是用于定义表示微分/代数方程组中的未知量的关键字量(Quantity)。量是浮点的标量类型,在VHDL-AMS中可以在任何可以用信号signal描述的地方出现。
VHDL-AMS中新增加的第二个概念是端点(terminal),用于定义守恒系统端口的端点及内部的端点。端点可以在任何可以用信号signal描述的地方使用,而且端点还可以作为实体的接口允许在PORT语句中使用。
IEEE Std VHDL 1076.1补充了一类新语句,即用于描述连续系统行为的联立语句。联立语句的格式为:
[标号:]表达式==表达式
联立提供了表示微分/代数方程的方法,可以直接描述系统输入、输出间的关系或守恒系统中的支路方程。通过求解联立语句中的微分/代数方程组,从而解出满足方程组的量的解。
另外,在VHDL 1076的基础上,VHDL-AMS新增了16种预定义属性,可以分为四类:数据类型类、容差类、量类和信号类。这些新增的预定义属性使得VHDL-AMS具有更为强大的行为描述能力。例如,预定义属性LTF(num,den)/ZTF(num,den)用于建立模拟/离散量的Laplace/Z域传递函数,其中num、den分别为分子、分母多项式的系数。LTF/ZTF属性对主要以传递函数为分析和设计的控制系统建模变得非常方便。
3 VHDL-AMS控制系统分析和设计的应用
在模拟控制系统中,控制器最常用的控制规律是PID控制。模拟PID控制系统原理框图如图1所示。系统由模拟PID控制器和被控对象组成。
PID控制器主要由三部分组成:比例环节,积分环节和微分环节。其中比例环节反映控制系统的偏差信号e(t),偏差一量产生,控制器立即产生控制作用,以减少偏差;积分环节主要用于消除静态误差,提高系统的无差度;微分环节反映偏差信号的变化趋势,并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。
PID控制器是一种线性控制器,根据给定值r(t)与实际输出值y(t)构成控制偏差:
e(t)=r(t)-y(t) (1)
PID的控制规律为:
式中kp为比例系数;TI为积分时间常数;TD为微分时间常数。
将式(2)写成传递函数的形式:
设定忌kP=60,TI=60,TD=0.05,由式(3)可对PID控制器建模如下:
SystemVision是Mentor Graphics公司开发的支持VHDL-AMS的Windows集成开发环境。在SystemVision环境下,由文中的VHDL-AMS程序建立PID控制器模型,并以二阶线性传递函数为被控对象,建立图2所示的仿真分析系统。
设给定信号r(t)=Asin(2πft),其中A=1.0,f=0.2 Hz,仿真时间为50 S。仿真得到PID控制器的正弦响应波形如图3所示。
设给定信号r(t)为单位阶跃信号ε(t),仿真时间为0.1 S。仿真得到锁相环的波形如图4所示。
由仿真结果可以看出,PID控制器控制过程快速、准确、平稳,具有良好的控制效果。还可进一步调整PID参数,分析相关参数对控制性能的影响。
4 结 语
VHDL-AMS突破了VHDL只能设计数字系统的限制,在控制、机电等多域系统(Multl_descriplinessystems)分析与设计中应用越来越广,特别是在以传递函数为系统分析与设计工具的控制系统中应用简捷方便。随着VHDL-AMS综合技术的突破,VHDL-AMS将会逐步取代VHDL,在电子工程设计和多域系统设计领域发挥越来越重要的作用。
0次