图4-20 设置访问名
打开特别-标记名字典,选择需要与MATLAB进行数据交换的标记名并将其访问名设置为DDE_MATLAB,所需要设置的标记名如上表4-2所示。
本文选择用编写M文件的方法使二者之间进行数据交换,部分M文件程序如下:
chann=ddeinit('view','tagname'); 建立通道号,若返回值为0,则建立失败,若返回值不为0,则建立成功
r1=ddereq(chann,'TAG_JY'); 从InTouch中获取与标记名TAG_JY对应数据,即获得输入阶跃信号
r3=ddereq(chann,'TAG1'); 从InTouch中获得与标记名TAG1对应的数据,即量化因子K1
r4=ddereq(chann,'TAG2'); 从InTouch中获得与标记名TAG2对应的数据,即量化因子K2
r2=ddereq(chann,'TAG3'); 从InTouch中获得与标记名TAG3对应的数据,即比例因子K3
.
.
.
r5=ddepoke(chann,'TAG_XY',yout(k)); 将以上这些从InTouch里面的采集的数据在MATLAB里面经过计算后再将结果传回InTouch中标记名为TAG_XY的标记,即系统的输出响应并通过趋势图显示出来
ddeterm(chann); 取消通道号,终止通信
通过以上这些函数就可以实现MATLAB和InTouch之间的动态数据交换,InTouch
实现现场数据采集功能,并将采集好的数据通过DDE协议传到MATLAB中进行计算,
再将计算结果传回并在组态界面中显示出来。完成了InTouch和MATLAB之间的通信。
4.5 本章小结
本章主要针对一个具体的二阶对象进行了总体方案设计,首先在MATLAB环境下用M文件实现模糊控制器的编写并进行仿真,然后设计好相应的组态监控画面并通过DDE协议实现二者之间的动态数据交换,通过具体的实例实现了将先进控制算法即模糊控制算法嵌入到组态软件中扩展了其控制功能。仿真结果及分析在下章中会详细讲到。
5.1 初始数据不变时的调试仿真结果及分析
打开InTouch并运行,出现登录界面“entrance”,如图5-1,输入密码“1111”回车,点击下面的箭头登录进入主界面。
若图片无法显示请联系QQ752018766,先进控制在组态软件中的扩展与应用系统免费,转发请注明源于www.751com.cn 图5-1 运行时的登录界面
进入主界面如图5-2所示,参数可以在界面上的浮动方框内设置变动,但是对参数的变化范围进行了限定,当参数在小范围内变化的时候,模糊控制规则仍然能够满足期望输出。初始参数如图所示,阶跃信号为3,量化因子K1,K2分别为30和0.3,比例因子K3为60.
打开MATLAB-open file,选择fuzz1.m打开。选择工具栏中Debug-Run进行仿真,MATLAB程序中的输入信号和用来计算的参数如量化因子比例因子等等均是从InTouch中传过来的.
仿真结果如图5-3所示。通过图5-3可以看出,响应曲线在经过一段时间的超调后恢复平稳,模糊规则基本符合控制要求,各个参数也顺利的从InTouch中传入MATLAB中并完成了计算。
图5-2 运行时的主界面
图5-3 仿真结果图
在组态软件主界面中,选择实时趋势切换到实时趋势界面中,由此可以观察到在实时趋势框中,输出响应在一段时间的超调震荡后趋于稳定。
选择历史趋势进入到历史趋势界面中,通过设置时间段可以观察到该时间段的历史趋势曲线,时间的设置如图所5-4所示。将显示模式设置为“最小/最大”,图标范围设置如图,“最小”设置为0%,“最大”设置为100%,最上排的时间对应于仿真和通信程序运行的时间。由于仿真的时间较短,所以图标长度的设置不能太长,一般都选择以秒为单位。
图5-4 历史趋势时间设置
设置好时间后,可以在历史趋势界面中看到这段时间的历史趋势曲线,如图5-5所示。通过图5-5可以看出,从InTouch中传入MATLAB里进行计算的参数进行计算后顺利的将计算结果传回给InTouch中相应的标记名并在图中显示出来。
图中红色曲线对应的标记名是TAG_XY,代表的是输出响应,黑色的曲线对应的标记名是TAG_JY,代表的是输入阶跃信号。观察该趋势曲线可以看出,输出响应在经过一段时间的超调后恢复平稳,和输入信号合为一条直线,渐渐趋于稳定,基本和期望结果一致。
图5-5 历史趋势曲线
5.2 改变参数的情况下调试仿真结果分析
进入主界面的步骤如5.1所示,输入密码进入主界面。在主界面中修改输入阶跃响应,比例因子及量化因子的值如表5-1所示:
表5-1 修改后的新参数值
输入阶跃信号 |
2 |
量化因子 K1 |
20 |
量化因子K2 |
0.35 |
比例因子K3 |
70 |
在主界面上修改参数如图5-6所示。由于参数的变化设置了上下限,所以新的参数必须在这个范围之内变动,可以通过小键盘输入的方式修改参数值。
图5-6 在主界面中修改参数
修改参数后在MATLAB中的仿真结果如图5-7所示。
图5-7 修改参数后的仿真结果
在主界面中点击“历史趋势”切换到历史趋势界面,设置好相应的时间段,可
<< 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>