OPC 技术学习总结,linux 教程第四版答案第五章
?? 每增加 1 个新的硬件设备需要为 M 个软件开发新的设备驱动程序。
在上图所示的例子中,针对 4 种控制设备所完成的 3 个应用系统一共需要开发 3*4=12 种驱动程序。新增应用软件或者硬件设备带来的只会是驱动程序种类的迅速增长。
1.2.2 基于 OPC 技术的过程控制系统结构
基于 OPC 技术的过程控制系统则可以完美地解决传统方式种的上述问题。

任何一种设备只需要提供一种驱动就可以供任何软件系统使用,系统构建完成后的最终结果是:
?? M 类软件要使用 N 类硬件设备只需要开发 N 个驱动。
?? 每增加 1 个新的应用软件不需要另外开发硬件设备的驱动程序;
?? 每增加 1 个新的硬件设备只需要为开发 1 个新设备的驱动程序;
在上图所示的例子中,针对 4 种控制设备所完成的 3 个应用系统一共仅需要开发 4 种驱动程序。新增应用软件或者硬件设备可以轻松的扩展您的系统。


详细原理图:

?? 硬件设备:DCS,PLC,扫描仪,电子设备…
?? 应用软件:HMI,历史数据库,震动检测器…
?? 通讯协议:DDE,Modbus,ODBC,GenCS…
?? 操作系统:Windows,UNIX,VMS,Macintosh,嵌入式 OS…
即 OPC 服务器可以从上面任何一种形式的数据产生实体中读取数据。这个实体可以是霍尼韦尔 PHD 的 Application,也可以是 Modbus 的通讯协议,还可以是一种 PLC,也就是一种 Device(硬件设备),或者是一种 Platform。
======================================================================
2.1 Matrikon 公司的 OPCServer Simulator
简单,单文件注册后,各种数据类型,各种点类型(只读点,只写点,读写点)都有了,更好的一点是,如果想做大规模的测试,10 万点,那么只需要在它的 Random 下添加任意名称即可,OPCServer 会自动给你建出对应的测点,还是随机数变化。
2.1.1 配置时的几个关键概念
Alias Group(Group) ——对 Items 的分类管理,自定义的。类似于 Java 中的包。
Alias (Item) ——一个 Item 代表与服务器进行通信的 PLC 或其它硬件设备上的一个地址。与 Kepware 中的一样。
配置顺序如下(在 Alias Configuration 下):
New AliasGroup/Alias --> Inset Alias
一个商业软件,需要花费金钱购买 License 的,但 Kepware 公司的 OPCServer 需要花钱的不是 OPCServer 本身,而是采集驱动。不过 Kepware 公司的 OPCServer 提供了不花钱的仿真驱动,用来测试上非常好的。
缺点就是太庞大,不简单,学习成本较高。但为了能满足 OPC 这类产品的各种测试,它真的是最佳选择。可以去它的官方网站下载。
2.2.1 配置时的几个关键概念
Chanel——通道是一个从 PC 到一个或多个外部设备之间的传播媒介。一个通道可以用来代表一个串行端口(一个安装在个人电脑上的卡或是以太网接口)。
Device——设备代表了与服务器进行通信的 PLC 或其他硬件。它受限于 Channel 所选择的设备驱动程序(Device driver)。
Group——对 tags 的分类管理,自定义的。类似于 Java 中的包。
Tag——一个 Tag 代表与服务器进行通信的 PLC 或其它硬件设备上的一个地址。服务器允许动态标签(客户端自定义创建)和用户定义的静态标签(服务端管理人员创建的标签)。动态标签是直接进入了 OPC 客户端和指定设备存取数据。静态标签在服务器被创建的且支持标签扩展,他们可以从 OPC 客户浏览,支持标签浏览。
配置顺序如下:
New Channel -->New Device --> New Group/Tag --> New Tag
========================================================================
标准,稳定,单文件,通讯过程的信息还比较丰富,我是比较喜欢用它在创建 OPC 组时定义同步方式或异步方式来验证远程计算机的 OPC 配置是否正确。缺点就是大了点,2M 多。
功能很强大,标准,稳定,日志信息很丰富,最推荐的功能是支持对 OPCServer 中点名的条件过滤,支持点表的导入导出,支持自动导入 OPCServer 的所有点,根据点表识别好点坏点,按照列排序,用它可以弥补很多国产组态软件不能在线遍历 OPCServer 点表的功能、不能过滤 OPCServer 点的功能、不能识别 OPCServer 中好点坏点的功能等。缺点就是非单文件。
4. OPC Client 和 OPC Server 配置的安全策略
===========================================================================================
下表是对 OPC Client 和 OPC Server 所在操作系统之间的安全策略的配置对应说明:

===========================================================================
有两种开源包,分别是 JeasyOpc 和 utgard(Openscada),他们的区别如下:

经对比分析,我们采用 Utgard(Openscada)开源技术,Openscada 可以很好的实现与 OPC 服务器的链接及读写数据等功能,还可以随时获取和修改 OPC 的 Server 和 Item 的属性状态信息。所以它能够很好的满足我们的需求,建议使用 Openscada。
OPC 数据存取服务器由三个对象组成:服务器对象(Server)、组对象(Group)和项对象(Item)。
按说明配置好 OPC Server?与 OPC Client 所在电脑的组件服务配置和防火墙设置(windows7 直接关闭就行了)注意一定要把本机希望链接 OPC 服务的用户或用户组添加到 DCOM 配置列表中,否则链接会失败。
如果其他都配置好了,运行程序还是连接不上的话,首先常看防火墙是否配置(或关闭)。
OPC 对象——服务器(OPC? Server)、组(OPC? Group)、项(OPC? Item)。
Openscada 开源项目:
ConnectionInformation 中:
Host——本地主机/网络主机 IP(示例:localhost(默认)、127.0.0.1)
Domain——域(默认为 localhost)
User——用户名
最后
总而言之,面试官问来问去,问的那些 Redis 知识点也就这么多吧,复习的不够到位,知识点掌握不够熟练,所以面试才会卡壳。将这些 Redis 面试知识解析以及我整理的一些学习笔记分享出来给大家参考学习
还有更多学习笔记面试资料也分享如下:

评论