c++做plc上位机 语言,C++上位机通过socket读写PLC

本文介绍了如何使用C++ MFC开发的上位机,通过Socket直接与西门子和台达PLC进行通信,无需OPC或组态软件。详细展示了读写台达ModBus和西门子PLC的指令代码,适用于200、300、400、1500和1200系列。
摘要由CSDN通过智能技术生成

做上位机的同行应该有切实体会:由于某些厂家的通信协议不开放的缘故,通信是个很费劲的事,特别是和西门子的通信。就我目前所知,通信手段主要依赖于两条路:

a.OPC,我们自己开发client端,server端借助simatic net 或者kepserver

b.组态软件,组态软件就不说了,稍微会点编程的人都不想用这东西。

OPC服务端和组态软件都需要花钱购买(当然盗版除外),并且是一次性的,使用体验感非常不爽,基于如此,我一直想找一个可替换的方案用于和PLC通信,经过多方面的探索验证,终于找出一条不用经过任何中转,借助socket完全用代码实现的通信路径,主要特征如下:

1.VS2015 C++ MFC开发

2.可实现和200,300,400,1500,1200对接通信(200没测过)

3.可直接读写台达(ModBus)信息

1.台达指令示意

//*********************0F功能码,写多个位寄存器的值**********************************//

/*********************************************************************************/

//****00 00  00 00     00 08         01       0F    A0 00  00 08   01     81********//

//**** 事务| 协议|Modbus数据长度|Modbus站号|功能码|首地址|写入个数|字节数| 值*******//

CString CD

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值