提出背景:为解决工业互联的IT系统与控制系统的通信问题
**提出原因:**业界的可编程逻辑控制器(PLC)大多采用大量不兼容的协议进行通信。这使得创建将这些系统与新世界(IT/互联网)集成的应用程序变得很困难。这,就是PLC4X项目的用武之地。
项目提出:
项目愿景:“我们的目标是创建一组库,允许统一访问任何类型的PLC”
总的来说,这个项目正在努力实现OPC-UA(大名鼎鼎的通用工控通信协议)试图解决的相同目标,但PLC4X试图通过走一条完全不同的路径来实现这一目标。

OPC-UA的痛点

使用OPC-UA时,每个设备都必须进行“改造”,工程师们通过修改程序让PLC们能够“说出”新协议(OPC-UA),并使用通用客户端与这些设备对话。整个改造无疑是复杂而艰巨的,并且由于存在风险,通常是客户难以接受的。
PLC4X的新方法
PLC4X项目致力于提供统一的API,这些API实现与大多数PLC通过其原生通信协议进行通信的驱动程序。这些驱动程序中的每一个都是根据规范或逆向工程协议实现的(合法的),以便完全获得Apache 2.0许可。
从我们的观点来看,PLC4X相对于OPC-UA的主要优点是:
无需修改现有硬件上的软件不增加硬件计算负担(在现有PLC上激活OPC-UA支持会大大增加PLC的负载)无需支付激活OPC-UA支持的许可证
PLC4X目前支持的原生通信协议:

图例

√ 实施并得到全面支持

? 仿真实现和支持

! 尚未实施

    语言支持

PLC4X目前支持Java语言,并计划后期支持Scala和C++。
实现原理
OPM:PLC对象映射

对象PLC映射(OPM)受Java Persistence API(JPA)的启发。PLC4X项目的主要目标之一是使与PLC设备的通信变得容易,以便开发与PLC交互的应用程序。由于许多(甚至大多数)应用程序员都不是PLC通信和协议方面的专家,因此在没有太多领域知识的情况下,应尽可能轻松地与PLC进行交互。这正是多年前JPA初始化以允许通过简单地调用POJO(Plain old Java Object)上的方法来与数据库交互的原因。这正是OPM模块的用途,通过简单地与POJO交互来实现PLC通信。

以下简短代码片段显示了如何通过OPM从PLC中读取一个数值。

首先,实例化PlcEntityManager,然后为给定的PLC连接地址提取连接的实体。已连接意味着实体的所有方法调用都被交叉并由PLC调用替换。然后将这个值打印到控制台。

在第二个片段中,您可以看到Entity类的外观。@PlcField注释中给出了读取可变压力的地址。

MyEntity类的实现

总结
总体来说,PLC4X是一个新的工业互联网开源项目,在于解决工业控制设备与IT系统的协议通信问题。

这个项目最大的特点是:不是设计一种新的“通用协议”,而是引入一种适配器和编程模型。适配器解决协议互通问题,而编程模型这帮助程序员更方便的开发业务应用。另外值得一提的是,在解决通信协议开发方面,这个项目是符合Apache 2.0协议的。

当然,作为一个新兴的Apache孵化项目(目前的版本是0.3.0),PLC4X目前还不够成熟:一方面支持的PLC通信协议种类还不够丰富、测试也不够完毕;另一方面,功能总体还比较单薄、文档也比较简陋。

Apache-Plc4x-OPC UA-Tcp学习记录
opcua:tcp://127.0.0.1:4840,表示采用OPC UA协议,通过Tcp通道连接127.0.0.1地址的4840端口来发送和接收指令。

Code: 表示协议编码,对应opcua:tcp://127.0.0.1:4840中的opcua;
Name: 表示协议的名称标记,记录协议的名称;
Default Transport: 表示协议的默认通道为Tcp;
Supported Operations: 表示协议支持的操作。read:设备是否支持读取数据功能;write:是否支持写入数据功能;
这四项信息在源码中的OpcuaDriver类中配置,可以根据需求重写。
Discover:
控制OPC UA服务器发现端点的功能,每台服务器将通过“<地址>/发现”端点传播该功能。这里最常见的问题是大多数服务器没有正确配置,传播了错误的外部IP或URL地址。如果是这种情况,可以通过将其配置为false值来禁用发现。
The OPC UA drivers uses the connection string
opcua:{transport}

慧安-PLC4X学习相关推荐

  1. 慧安-PLC4X支持的协议

    点击跳转PLC4X的官网 目录 AB-ETH ADS/AMS BACnet/IP CANopen DeltaV DF1 EtherNet/IP Firmata KNXnet/IP Modbus (TC ...

  2. CSDN签约慧安金科,共建全方位智能风控体系

    近日,中国最大的IT社区和开发技术服务平台CSDN与慧安金科签约,全面达成战略合作.慧安金科针对CSDN平台的场景为其量身打造了一套企业级智能风控决策引擎,保障该平台的安全.平稳运营,实现用户服务升级 ...

  3. 慧安股份加入飞桨技术伙伴计划,共同打造智慧物联网产品和行业应用解决方案...

    近日,慧之安信息技术股份有限公司正式加入飞桨技术伙伴计划,双方将共同努力在AIOT基础技术及生态建设做出贡献,致力于智慧能源.智慧园区.智慧工地.智慧城市等领域,共同打造智慧物联网应用产品和整体解决方 ...

  4. 【金猿技术展】慧安金科反洗钱可疑案宗识别技术——自动全方位提取洗钱行为关联信号...

    慧安金科技术 该技术由慧安金科申报并参与"数据猿年度金猿策划活动--2020大数据产业创新技术突破榜榜单及奖项"评选. 大数据产业创新服务媒体 --聚焦数据 · 改变商业 慧安金科 ...

  5. 五个课时,百余智慧安防AI应用作品落地!AidLux实战训练营圆满收官

    随着视觉检测.智能家居.自动驾驶等智能应用的面世,更多的人认识到,人工智能(AI)将推动不同领域的产业走向"智慧化". 如今,越来越多渴望掌握新技能的学习者选择了人工智能.为了进一 ...

  6. java入门 慕路径,Java入门基础知识总结学习教程大全【必看经典】

    类型的表达式,是循环条件,表达式3是党执行了一遍循环之后,修改控制循环的变量值. ??? for语句的执行过程是这样的:首先计算表达式1,完成必要的初始化工作:然后判断表达式2的值,如果表达式的值为t ...

  7. Java EE学习心得

    –Java EE学习心得   1.    称为编程专家的秘诀是: 思考-----编程--------思考------编程--.. 编程不能一步到位,不能一上来就编,必须先思考如何写,怎样写?然后再编程 ...

  8. FastAI 2019课程学习笔记 lesson 2:自行获取数据并创建分类器

    文章目录 数据获取 google_images_download 的安装和使用 挂载google 个人硬盘到Google colab中 删除不能打开文件 创建ImageDataBunch 训练模型 解 ...

  9. FastAI 课程学习笔记 lesson 1:宠物图片分类

    文章目录 代码解析 神奇的"%" 导入fastAI 库 下载解压数据集 untar_data 获取帮助文档 help() ? ?? doc 设置路径 get_image_files ...

最新文章

  1. 利用java虚拟机的工具jmap分析java内存情况
  2. CSDN蒋涛提出技术社区三倍速定律,称下一个20年全球开发者数量将过亿
  3. 关于小程序云开发的一些经典问题处理
  4. rdcl 报表设置不分页
  5. 安全行业中的event与incident区别
  6. 让自己的user能够看到S4 product master这个tile
  7. java web 润乾报表教程_润乾报表开发 基础教程.ppt
  8. 关于sql语句between and的边界问题
  9. IRQL(转载 自 windows内核情景分析)
  10. python循环语句输出_python循环语句
  11. 蚂蚁课堂二期视频(每特学院二期)
  12. win7修改ftp服务器密码,win7ftp服务器设置用户名密码设置
  13. 略晓网:经验真的能换钱
  14. php guzzle 上传文件,Guzzle 使用文档
  15. TCP连接三次握手协议,释放连接四次挥手,以及使用 awl伪造mac地址进行多线程syn洪泛攻击。...
  16. 这些操作技巧能够让你的公众号迅速增粉
  17. yxc_第一章 基础算法(一)
  18. strtok函数用法
  19. 氧饱夹语音芯片,内置功放直推喇叭输出,低成本语音IC,WTN6系列
  20. 〖全域运营实战白宝书 - 运营角色认知篇⑦〗- 运营人的能力模型

热门文章

  1. 通达信东风导弹幅图指标源码分享
  2. 数值方法3:偏微分方程1:使用有限差分法解一维热传导(扩散)方程
  3. TureType/OpenType, TTF, OTF, TTC
  4. mysql 2.71828_e值如何计算 2.71828
  5. python3 之 趣味数学题(爱因斯坦)
  6. BA无标度网络(一):规则网络生成
  7. 蓝桥杯【第13届省赛】Python B组 93.55分
  8. 【Grafana 了解、学习和使用】
  9. Grafana 安装及基本使用教程
  10. 腾讯微博开放平台授权教程(1)