
OPC(OLE for Process Control)是一种标准化的工业自动化数据通信协议,它提供了一种标准的接口,使得不同厂商的设备和软件可以进行数据交换。OPC通常被用于将PLC的数据传输到上位机或者其他设备中,以便进行数据分析、监控和控制等 *** 作。在这种情况下,PLC向OPC服务器发送数据,而OPC服务器向上位机或者其他设备发送数据,这是一种单向通信。
但是,OPC也可以支持双向通信。在这种情况下,PLC和OPC服务器之间可以进行双向数据传输,以实现更复杂的控制和监控 *** 作。例如,PLC可以向OPC服务器发送控制指令,而OPC服务器可以向PLC发送反馈信息,这是一种双向通信。
需要注意的是,PLC和OPC之间的通信方式取决于具体的应用场景和实现方式。在实际应用中,需要根据具体的需求和技术条件来选择合适的通信方式。
OPC是dcom技术,opc通信是软件与软件通信,本机通信较为简单,网络OPC通信有很多麻烦的系统设置。
modbus是物理硬件技术,是设备与设备通信,两个设备之间物理能通就可以通信,有串口和TCP。
扩展资料:
开发OPC的最终目标是在工业控制领域建立一套数据传输规范,现有的OPC规范涉及以下五个领域。
①在线数据监测。OPC实现了应用程序和工业控制设备之间高效、灵活的数据读写。
②报警和事件处理。OPC提供了OPC服务器发生异常时以及OPC服务器设定事件到来时,向OPC客户发送通知的一种机制。
③历史数据访问。OPC实现了对历史数据库的读取、 *** 作和编辑。
④远程数据访问。借助Microsoft的DCOM(Distributed Component Object Model)技术,OPC实现了高性能的远程数据访问能力。
⑤OPC实现的功能还包括安全性、批处理和历史报警事件数据访问等。
Modbus是在1970年末为可编程逻辑控制器通信开发的,这些有限的数据类型在那个时代是可以被PLC理解的,大型二进制对象数据是不支持的。
对节点而言,没有一个标准的方法找到数据对象的描述信息,举个例子,确定一个寄存器数据是否表示一个介于30-175度之间的温度。
由于Modbus是一个主/从协议,没有办法要求设备“报告异常”(构建在以太网的TCP/IP协议之上,被称为open-mbus除外)- 主节点必须循环的询问每个节点设备,并查找数据中的变化。
在带宽可能比较宝贵的应用中,这种方式在应用中消耗带宽和网络时间,例如在低速率的无线链路上。
Modbus在一个数据链路上只能处理247个地址,这种情况限制了可以连接到主控站点的设备数量(再一次指出以太网TCP/IP除外)。
Modbus传输在远端通讯设备之间缓冲数据的方式进行,有对通信一定是连续的限制,避免了传输中的缓冲区漏洞的问题。
Modbus协议自身提供针对未经授权的命令或截取数据没有安全性。
参考资料来源:百度百科-OPC
百度百科-Modbus通讯协议
组态与OPC技术的MATLAB的数据交换步骤:
1、下载matlab70以上版本,最好别用70,matlab70虽然有opc工具箱,但没有opc仿真模块,我用的是matlab2010。
2、下载组态王653,我是在亚控科技官网下载的组态王653。
3、为保证OPC Toolbox 中对象和OPC 服务器对象连接起来,下载并安装客户端开发工具包OPC CoreComponents 200 Redistributable 220msi控件。打开matlab安装路径D:\ProgramFiles\MATLAB\R2010b\toolbox\opc\opc\private,
找到该文件双击安装。(有些版本这个控件已经损坏了,考一下别人的也可以安装)
4、打开matlab,在command window 输入命令opcregister('install'),注册OPC 服务器和客户端用到的来安装能在网络上浏览其他计算机并能与之通讯的核心组件,分别是:
OPC 通讯接口组件OPCcomn_psdll
OPC 自动化接口组件OPCdaAutodll
OPC 代理占位组件OPCProxydll
还有opc_aepsdll。
5、在OPC 服务器和OPC 客户端进行分布式COM的环境设置,这个步骤有些麻烦,有个名为“dcom配置”的文件步骤很详细,上面有好几个系统的dcom配置,看准了我们需要的XP系统的。
这一步目的同样是为使OPC Too lbox 中的对象和OPC 服务器对象之间建立连接。
通过OPC自定义接口来实现客户端数据的读取步骤如下。
1:使用OPC DA进行Client的读写 *** 作时,我们使用Custom接口,出此之外还有Automation接口。以下是Custome接口开发时涉及到的三个关键对象:OpcServer、OpcGroup、OpcItem。
2:在客户端开发时,要使用OpcServer对象来实现客户端与Opc服务器之间的连接。一个OpcServer对象下有多个OpcGroup,一个OpcGroup下有多个OpcItem,在自定义接口下的Client开发,是以Group为单位的 *** 作,数据读写都是通过OpcGroup进行的。
3:我们可以不写OPC Client程序来测试,如何通过OPCServer与PLC之间的交互。首先当我们安装完毕SimaticNet之后,需要对Station Configuration Editor进行配置。
4:当我们组态完毕时,如何判断组态是否正确,在SimaticNet的目录上有个叫Opc Scout(Opc Scout V10)的软件,列出来了本机所有的Server,我们能使用名为OPCSimaticNET的Server。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)