台达DOP人机界面一机多屏的实现.docx

上传人:b****5 文档编号:7437368 上传时间:2023-01-24 格式:DOCX 页数:14 大小:565.30KB
下载 相关 举报
台达DOP人机界面一机多屏的实现.docx_第1页
第1页 / 共14页
台达DOP人机界面一机多屏的实现.docx_第2页
第2页 / 共14页
台达DOP人机界面一机多屏的实现.docx_第3页
第3页 / 共14页
台达DOP人机界面一机多屏的实现.docx_第4页
第4页 / 共14页
台达DOP人机界面一机多屏的实现.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

台达DOP人机界面一机多屏的实现.docx

《台达DOP人机界面一机多屏的实现.docx》由会员分享,可在线阅读,更多相关《台达DOP人机界面一机多屏的实现.docx(14页珍藏版)》请在冰豆网上搜索。

台达DOP人机界面一机多屏的实现.docx

台达DOP人机界面一机多屏的实现

深度挖掘-台达DOP人机界面“一机多屏”的实现

 

前言:

随着人机界面的发展及用户对高功能的追求,人机界面“一机多屏”的使用方式越来越频繁。

本文用清晰的图示结合一个样例详细的说明台达DOP是如何实现“一机多屏”功能的。

关键字:

人机界面宏指令

问题的引出与解答:

现在市面上很多的人机界面(HMI)都提供了方便的一台控制器连接两台或者更多人机的功能,也就是大家常说的“一机多屏”,如WeinView、Hitech等都可以实现。

台达的人机功能很强,但在ScreenEditor编辑软件中并没有提供这样的功能。

那么如果用户想使用“一机多屏”就没有办法了吗?

当然不是这样,台达人机很好的一个特点就是提供了2个通讯口,而且2个通讯口可以独立使用。

这样,我们就可以用一个通讯口连接控制器,另一个通讯口连接第二台或者第三台触摸屏了。

解决方法有了,下面我们就结合一个样例来看一看DOP是怎么做到的。

系统图:

如上面这样的系统图,我们可以用一个人机作为MasterHMI,其余若干个人机作为SlaveHMI,分别为2#、3#......。

MasterHMI的COM1与一台EHPLC通过RS232连接,COM2与各个SlaveHMI通过RS485连接。

这样,MasterHMI作为两条线路上的主站,负责交换两条线路上的数据。

本例我们采用两台HMI同一个PLC连接,所以将上面的系统图简化并作个变形,以形成我们熟悉的样子。

两台人机直接通过MODBUSASCII来连接。

如下图:

样例要实现的功能:

1、两台人同时显示PLC的数据变化。

2、当其中任意一台人机修改PLC寄存器的数值时,同时能在另一台人机上一起变化。

3、当一台人机切换画面时,另一台人机也会自动切换。

功能分析与框图:

DOP有个很大的特点就是支持宏指令功能,所以这些功能都要依靠宏来实现。

我们先设功能1中PLC用到的寄存器地址为D200,D201。

2#SlaveHMI与之对应的地址设为$109,$110,根据下表DOP内部与MODBUS的对应关系可以知道对应MODBUS的地址为W40110,W40111。

然后在MasterHMI中用BMOV指令将D区传送给$区就行了。

Modbusaddress

HMI内部数据定义

W40001~W41024

$0~$1023

内部缓存器

W42001~W43024

$M0~$M1023

断电保持内部缓存器

W44001

RCPNO

配方编号缓存器

W45001~...

RCP0~RCPn

配方缓存器

 

 

 

B00001~B01024

$2000.0~$2063.15

内部缓存器(bit)

B01025~B02048

$M200.0~$M263.15

断电保持内部缓存器(bit)

功能2要实现主从人机换画面同步,就要用【系统控制区】来帮忙了。

设主从人机共用从机的MODBUS地址W40100来切换画面。

功能3实现比较麻烦一点。

关键是主从机都可以改变PLC中的数据。

设PLC中的寄存器地址为D100,D101。

2#SlaveHMI与之相对应的地址是W40010,W40011。

我们的思路是这样:

当1#MasterHMI完成对D100,D101的数值输入的时候,触发一个标志位1#$101.0(1#表示1#Master,2#表示2#SlaveHMI)。

在1#backgroud宏中检查$101如果为1,就Call子宏2,在子宏2中用BMOV指令把D100,D101分为传送给2#W40010,2#W40011以达到数据同时改变。

同时启动D100,D101的执行后宏,先做200ms延时,之后复位$101.0.

同样的做法,当2#完成对2#W40010,2#W40011数值输入后触发标志位2#B00001。

因为在1#backgroud宏的IF语句中不能直接使用BasePort或者Link2的地址,所以要先把2#B00001GET到$100.0,之后在在1#backgroud宏中检查$100如果为1,就Call子宏1,在子宏1中用BMOV指令把2#W40010,2#W40011分为传送给D100,D101以达到数据同时改变。

同时启动2#W40010,2#W40011的执行后宏,先做200ms延时,之后复位2#B00001。

三种功能实现的图示图下图所示:

PLC1#MasterHMI2#SlaveHMI

功能一图示

功能二图示

1#$100.0=2#B00001

功能三逻辑框图

其中绿色表示在2#SlaveHMI中执行的;桔色表示在1#MasterHMI中执行的

ScreenEditor软件的编写:

上面我们做了大量的准备工作,建立方案、理清思路、建立方框图,最终还是要通过ScreenEditor来软件实现。

下面我们就一步一步的编写软件。

由于篇幅的限制,一些基本的软件操作就不在此文说明,本文只提到一些比较关键的点。

1、1#MasterHM程序的编写:

启动ScreenEditor软件,建立一个新文件,【设定模组参数】的设置如图:

一般

 

上图中1#MasterHMI的COM1连接DVPPLC,作为PLC的主站。

与PLC的通讯参数设置如下图

新建一个Link2,用1#MasterHMI的COM2去连接2#SlaveHMI,如图通讯Link2

新建如下图的1-Screen_1画面。

其中D101的属性设置与D100一样。

1-Screen_1画面

 

建立如图的2-Screen_1画面,来配合切换画面的实现

2-Screen_2画面

建立如图的Backgroud宏

建立如图的两个子宏

子宏1子宏2

这样,1#MasterHMI的程序就编写完成了。

 

2、2#SlaveHMI的程序编写

【设定模组参数】如下图所示

 

 

为2#建立2个画面

1-Screen_1画面

1-Screen_1画面

 

2-Screen_2画面

这样,2#SlaveHMI的程序也完成了。

最后实际运行的情况如图

通过以上的连接,小节如下:

1、所有的从机与PLC的数据交换都是通过主机中的宏完成周转的。

2、每台人机可以运行不一样的程序。

3、举一反三。

这种形式推广的一个变型就是可以在多台人机和多台控制器之间轻松的完成数据的交换。

结束语:

台达电子作为享誉国际的机电产品供应商,每一样产品都是精雕细琢的杰作。

台达人机的2个通讯口独立使用和方便的宏指令结合,可以完成许多复杂的通讯功能。

希望以此为例,大家能够挖掘处更多的潜在应用。

参考书籍《DOPA系列人机界面应用技术手册》

 

2006年4月6日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1