• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
2025全景工博会
工业连接

PythonSDK 助力 PLCnext 实现智能化应用

  2022年08月19日  

开发背景

随着当今工业信息化应用的普及,技术学习门槛的降低,越来越多的智能化案例在工业自动化中崭露头角。

Python 语言作为当今实现智能化的首选语言,逐渐被大家认可及掌握。为了方便用户在 PLCnext 实际应用场景中使用 Python 语言进行各种业务交互,现在推出基于 Python 语言的通信SDK,使得我们的应用程序可以方便快捷地与 PLCnext 进行数据通信。

本篇文章介绍 PythonSDK 的基础用法,如何通过 Python 与 PLCnext 进行控制与变量通信。为后续基于 Python 语言的其他应用奠定基本的通信基础。

通过 Python 语言不仅可以开发智能化应用程序,而且可以开发网络通信,高级数据库应用,文件读写,操作日志审计等一系列应用程序,但这些应用都需要Python程序与PLCnext 交互这个基本环节。

本文所述的 PythonSDK 是基于 PLCnext RSC 协议的 Python 实现,同理,还有C\C++、C#、Java实现版本。另外,PLCnext 也推出了基于 gRPC 的 RSC 实现方案,使得用户可以使用各种语言与控制器之间采用RSC协议。

RSC协议是 PLCnext 控制器的专用通信协议,类同西门子的S7协议,由厂家负责维护。通过该协议,除了可以实现基本的变量通信外,还可以实现对控制器的管理与控制。

协议对比

通用的工业协议,例如 OPC UA 、Modbus 等,与本文所要介绍的 PythonSDK 相比的异同点是什么呢?

综上对比,RSC 协议不是工业通信的标准协议,但具有使用简便,效率高,功能多样化等特点。

使用 PLCnext 控制器,可通过 RSC 协议与控制器进行无缝数据通信或控制,最大限度满足严苛与复杂交互需求。

开始使用

使用指令 $ pip install PyPlcnextRsc 即可下载Python SDK

建立连接

在 Python 程序中,可通过以下两种形式与PLCnext连接。

数据交互

建立连接后使用 Data Access Service 进行变量读写。针对非自定义的符合 IEC61131-3 标准的数据类型(BOOL, REAL, INT, STRING等),可使用 ReadSingle 进行单个变量的读取,或使用 Read 进行多个变量的读取。

也可使用 WriteSingle 或 Write 对变量写值。

如使用用户自定义的结构体或数组,可以通过DataTypeStore工具创建和IEC61131-3程序中对等的变量并进行读写。

PLCnext操作及状态监测

Python SDK 可读取 PLCnext 的状态(如 CPU 负载、内存占用情况、固件版本、报警灯、MAC 地址、温湿度等),或与 PLCnext 进行文件的读写,以及控制 PLCnext 停止、冷启等,例如使用下图中的程序完成 PLCnext 的冷启。

以上为 Python SDK 的基础使用方式,更多功能介绍以及使用样例参见:

align=right>(来源:菲尼克斯电气)

最新视频
图尔克亮相2025上海工博会精彩花絮   
探馆 | 深化“双元本地化”战略,博世力士乐以全球首发新品兑现承诺   
研祥金码
重新定义可靠传动,共同创造美好未来!
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
研祥金码R-6000系列读码器调研活动
研祥金码R-6000系列读码器调研活动

Regem Marr研祥金码R-6000H智能读码器,拥有高精度AI算法,精准读取各类条码,在多个行业内帮助企业降本增效

立刻注册,赢取好礼!西门子2025工博会系列直播活动
立刻注册,赢取好礼!西门子2025工博会系列直播活动

步入9月,即将迎来工业人一年一度的相聚时刻,9月23-25日,第五届西门子工业论坛 如约而至!通过三日全天候直播,我们将

在线会议

社区