写我自己的OPC

时间:2013-03-08 13:41:20

标签: client-server plc opc

我对OPC的实施有一些疑问:

  • 我是否可以为想要向服务器发送和接收实时数据的PLC编写自己的OPC服务器和OPC客户端?

    一个本科生容易多少钱?!!

  • 或者我可以使用免费软件作为服务器(例如“ MartikonOPC Explorer ”)并且客户端可以连接到PLC吗?

  • 我可以使用哪种编程语言?

======================================

评论:

  • PLC型号:Delta

4 个答案:

答案 0 :(得分:3)

  

我可以为想要的PLC编写自己的OPC服务器和OPC客户端吗?   发送和接收实时数据到服务器??

是的,你可以,听起来好像你只需要OPC DA,即读/写值。

  

本科学生容易多少钱?!!

这取决于,如果你想要实现OPCDA 3.0那么你需要一些关于COM的知识,如果你之前没有使用它可能会令人生畏。通常,当您创建OPC服务器时,您将使用来自某个供应商的框架,例如Matrikon但是如果你预算紧张,你可能需要自己完成。

  

或者我可以为服务器使用免费软件(例如“MartikonOPC   资源管理器“)和客户端连接到PLC ??

您可以使用Matrikon OPC资源管理器连接到您的OPC服务器,但通常您希望将您的客户端代码嵌入到程序中并使用这些值执行某些操作,资源管理器更适合测试

  

我可以使用哪种编程语言?

对于服务器部分C / C ++,对于客户端部分,您更灵活,支持COM的任何语言

或者您可以实现OPC UA服务器,OPC UA是独立于平台的,并且几乎与语言无关。

opcfoundation.org

了解详情

答案 1 :(得分:2)

根据您的技能,答案可以是肯定或不是。 OPC基金会拥有标准,会员可以使用这些标准。

请记住,PLC不使用OPC进行通信,OPC服务器使用PLC制造商专有协议,能够使用OPC协议向客户“提供”数据。

要正确回答这个问题,需要做出很多澄清,对于本科生来说,容易取决于你学习的内容。

使用哪种编程语言,您可以找到的任何编程语言,您的首选项是什么。

答案 2 :(得分:1)

Python很简单,可以做到。 仅创建全局通信模块(全局重用)。 一些问题:

1-更多PLC品牌使用BUFFER进行访问(Delta不使用)。需要先读取需要的寄存器(所有EV值)。

2 - 一个线程内部(不仅一个,每个节点线程)

3 - 你的分辨率是1/10秒(对于modbus over serial)

4-Need在PLC中编写一个强大的安全程序(否则声称风险很大!)

5-Minimal通信线路为2(2)(当丢失一个时,使用其他)。

所有编程语言都是宝贝。如果你吃得很多而且喜欢它,那就快点。你能做到!别忘了你有个孩子!

答案 3 :(得分:0)

上次我检查过德尔福是唯一同时拥有免费OPC客户端和OPC服务器示例的人。我使用 this 页面中的来源制作了OPC DA 2.04服务器和客户端。