一种基于虚拟串口的PLC设备远程数据通信实现方法技术

技术编号:25184037 阅读:38 留言:0更新日期:2020-08-07 21:12
本发明专利技术公开了一种基于虚拟串口的PLC设备远程数据通信实现方法,包括以下步骤:工控PC机端通过服务器发送链接请求给DTU设备;DTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知;工控PC机端或DTU设备端中任一端创建UDP通道,并使UDP通道信息被另一端获知;获知UDP通道信息的另一端同样创建UDP通道并通过该UDP通道回复使其被已创建通道的一端获知;创建了UDP通道的两端互相通过UDP通道成功发送和接收信号后建立P2P通道;串口PLC设备和工控PC机之间通信的数据在P2P通道上传输;把原本只能串口链接的设备远程化了,可以延申到广域网以外,不受任何距离的限制。

【技术实现步骤摘要】
一种基于虚拟串口的PLC设备远程数据通信实现方法
本专利技术涉及PLC控制
,尤其涉及一种基于虚拟串口的PLC设备远程数据通信实现方法。
技术介绍
物联网革命使得更多的传统串口PLC(可编程逻辑控制器)装置得以以太网、WiFi、4G/5G的方式连接到互联网与云端。然而对于大多数串口PLC设备(如三菱、西门子、松下、LG)等,他们的终端电脑上的PLC编程软件,监控软件是这些公司单独开发,互不通用,且不具备开发修改的。这就限制了这些PLC的联网化改造。由于目前大量的串口PLC存量市场,以及设备成本上,串口PLC设备要比网口的PLC便宜不少。因此,亟需一种在串口PLC和目前的监控软件不变的前提下,能实现串口PLC远程化监控。
技术实现思路
鉴于目前存在的上述不足,本专利技术提供一种基于虚拟串口的PLC设备远程数据通信实现方法,能够在串口PLC和目前的监控软件不变的前提下,实现串口PLC远程化监控及大数据传输的数据通信过程。为达到上述目的,本专利技术的实施例采用如下技术方案:一种基于虚拟串口的PLC设备远程数据通信实现方法,应用于包括工控PC机、DTU设备和串口PLC设备的场景,工控PC机端运行虚拟串口管理软件,串口PLC设备通过DTU设备连接外网,所述方法包括以下步骤:工控PC机端通过服务器发送链接请求给DTU设备;DTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知;工控PC机端或DTU设备端中任一端创建UDP通道,并使UDP通道信息被另一端获知;获知UDP通道信息的另一端同样创建UDP通道并通过该UDP通道回复使其被已创建通道的一端获知;创建了UDP通道的两端互相通过UDP通道成功发送和接收信号后建立P2P通道;串口PLC设备和工控PC机之间通信的数据在P2P通道上传输。依照本专利技术的一个方面,所述方法包括:DTU设备和运行于工控机上的虚拟串口管理软件分别与服务器建立稳定的TCP连接,所述服务器为NAT穿透服务器。依照本专利技术的一个方面,所述工控PC机端通过服务器发送链接请求给DTU设备包括:用户通过虚拟串口管理软件,发送链接请求,链接请求通过TCP通道发给NAT穿透服务器,链接请求数据中带有DTU设备ID。依照本专利技术的一个方面,所述方法还包括:服务器接收到链接请求后,根据DTU设备ID,找到DTU设备的TCP链接,并把链接请求转发给相应的DTU网关。依照本专利技术的一个方面,所述DTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知包括:DTU设备回复请求,告知NAT穿透服务器已处于准备状态NAT穿透服务器把DTU的回复转发给虚拟串口管理软件。依照本专利技术的一个方面,所述UDP通道信息包括:UDP映射在外网上的端口号和IP地址。依照本专利技术的一个方面,所述方法包括:在P2P通道上增加可靠通信的协议来保证数据完整性。依照本专利技术的一个方面,所述可靠通信的协议为KCP通信协议。依照本专利技术的一个方面,所述可靠通信的协议包括:数据发送端的发送数据包由依次的前导码、协议序号和数据内容构成;其中:前导码为保证数据的有效性,并指示区分数据包或管理包;协议序号为2个字节从0x0000~0xFFFF,对于所有的数据报,这个域必须是连续的,不能跳序号;数据接收端根据协议序号,判端是否有丢包发生,如果正常接收,则回复该序号的ACK,否则回复丢失数据序号的NAK;数据发送端根据接收到的ACK或NAK信号,判断数据是否需要重发。依照本专利技术的一个方面,所述P2P通道是在需要数据通信时建立的。本专利技术实施的优点:本专利技术所述的基于虚拟串口的PLC设备远程数据通信实现方法,包括以下步骤:工控PC机端通过服务器发送链接请求给DTU设备;DTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知;工控PC机端或DTU设备端中任一端创建UDP通道,并使UDP通道信息被另一端获知;获知UDP通道信息的另一端同样创建UDP通道并通过该UDP通道回复使其被已创建通道的一端获知;创建了UDP通道的两端互相通过UDP通道成功发送和接收信号后建立P2P通道;串口PLC设备和工控PC机之间通信的数据在P2P通道上传输;把原本只能串口链接的设备远程化了,可以延申到广域网以外,不受任何距离的限制;使用NAT穿透服务器加P2P通道的方式实现远程通信功能,其中NAT穿透服务器的使用使DTU和虚拟串口管理软件可以处于2个不同的局域网内,都不需要固定的公网地址;服务器与DTU/虚拟串口管理软件的控制链接使用TCP协议,其优点是:TCP协议链接稳定性好;而且数据量小,数据传输可靠性高。使用P2P通道的方式,而不是服务器数据转发的方式。其好处有:1.串口通信需要较高的实时性,转发的方式实时性较差;2.PLC应用在程序下载时需要较大的数据带宽,如果用数据转发需要较高的带宽成本;本方法中P2P通道基于UDP协议,数据实时性好,P2P通道上增加了可靠通信协议,避免数据丢失引起PLC监控的稳定性;数据包的传输增加了协议序号和增加ACK/NAK的应答/重发机制,解决UDP协议有丢包或错序的问题。具体的,采用了KCP协议为可靠通信协议,KCP协议除了可以可靠通信外,还有特点是实时性高,小数据包,高发送频率,可以较好的满足PLC的需要。另外,在对PLC进行程序上传和下载时,通信的数据包比较大,所以对该数据进行压缩可以减少数据包的大小,实际测试通常可以减少1/2左右。减少数据包的大小后,可以使链接更加稳定,实时性更高。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例一所述的基于虚拟串口的PLC设备远程数据通信实现方法示意图;图2为本专利技术实施例二所述的基于虚拟串口的PLC设备远程数据通信实现方法示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一原有的串口PLC设备和运行与工控PC机上的PLC监控软件,一般只能放在一起使用,通过串口(RS485)接口连接。本实施例提供一种基于虚拟串口的PLC设备远程数据通信实现方法,应用于包括工控PC机、DTU设备和串口PLC设备的场景,工控PC机端运行虚拟串口管理软件,串口PLC设备通过DTU设备连接外网,PLC连接的DTU设备,DTU作为网关使用,工控机和DTU设备都处于局域网内,而且为不同的2个局域网。图1中N本文档来自技高网...

【技术保护点】
1.一种基于虚拟串口的PLC设备远程数据通信实现方法,其特征在于,应用于包括工控PC机、DTU设备和串口PLC设备的场景,工控PC机端运行虚拟串口管理软件,串口PLC设备通过DTU设备连接外网,所述方法包括以下步骤:/n工控PC机端通过服务器发送链接请求给DTU设备;/nDTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知;/n工控PC机端或DTU设备端中任一端创建UDP通道,并使UDP通道信息被另一端获知;/n获知UDP通道信息的另一端同样创建UDP通道并通过该UDP通道回复使其被已创建通道的一端获知;/n创建了UDP通道的两端互相通过UDP通道成功发送和接收信号后建立P2P通道;/n串口PLC设备和工控PC机之间通信的数据在P2P通道上传输。/n

【技术特征摘要】
1.一种基于虚拟串口的PLC设备远程数据通信实现方法,其特征在于,应用于包括工控PC机、DTU设备和串口PLC设备的场景,工控PC机端运行虚拟串口管理软件,串口PLC设备通过DTU设备连接外网,所述方法包括以下步骤:
工控PC机端通过服务器发送链接请求给DTU设备;
DTU设备接收请求后,进入准备状态且回复请求使其已进入准备状态被工控PC机端获知;
工控PC机端或DTU设备端中任一端创建UDP通道,并使UDP通道信息被另一端获知;
获知UDP通道信息的另一端同样创建UDP通道并通过该UDP通道回复使其被已创建通道的一端获知;
创建了UDP通道的两端互相通过UDP通道成功发送和接收信号后建立P2P通道;
串口PLC设备和工控PC机之间通信的数据在P2P通道上传输。


2.根据权利要求1所述的基于虚拟串口的PLC设备远程数据通信实现方法,其特征在于,所述方法包括:DTU设备和运行于工控机上的虚拟串口管理软件分别与服务器建立稳定的TCP连接,所述服务器为NAT穿透服务器。


3.根据权利要求2所述的基于虚拟串口的PLC设备远程数据通信实现方法,其特征在于,所述工控PC机端通过服务器发送链接请求给DTU设备包括:用户通过虚拟串口管理软件,发送链接请求,链接请求通过TCP通道发给NAT穿透服务器,链接请求数据中带有DTU设备ID。


4.根据权利要求3所述的基于虚拟串口的PLC设备远程数据通信实现方法,其特征在于,所述方法还包括:服务器接收到链接请求后,根据DTU设备ID,找到DTU设备的TCP链接,并把链接请求转发给相应的DTU网关。


...

【专利技术属性】
技术研发人员:刘波董钢辉段体永
申请(专利权)人:上海汉枫电子科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1