System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及人机界面远程更新,尤其涉及一种基于内网穿透技术的人机界面远程更新方法。
技术介绍
1、人机界面(human machine interface,简称:hmi)由硬件和软件两部分组成,其中hmi软件由运行于hmi硬件中的系统软件和运行于pc机windows操作系统下的画面组态软件两部分组成。用户必须先使用hmi的画面组态软件制作“工程文件”,把编制好的“工程文件”下载到hmi的处理器中运行。过去hmi仅需满足设备下联部件的能力,随着工业互联网/物联网技术的深化发展,物联型hmi承担起了设备向上联网的能力,可拆卸的通讯模块不受时间和空间的限制,且成本较低成为首选。
2、现有技术中,如图1所示,用户更新人机界面工程,有以下方式:
3、(1)通过本地pc机和hmi的usb或网口通讯以下载相应的组态工程进行更新人机界面工程,具有在距离下载pc主机数米或者在同一局域网中且布线复杂等缺点,无法应用于无法拉网线或没有无线wifi的场所,这种方式已经远远不能满足当前hmi更新的需求了。
4、(2)通过远程更新人机界面工程,用户将工程文件先上传到服务器,再由服务器将工程文件下载到指定的hmi中。
5、针对上述(2)的方案,公开(公告)号为cn110569047a的中国专利技术专利,公开了一种基于可拆卸通讯模块的远程更新人机界面的方法,核心方案如下:
6、a.带有通讯模块的hmi上电,连接服务器报告当前上线状态;
7、b.上位机程序获取服务器中指定序列号的人机界面已
8、c.服务器将获取人机界面硬件信息的命令发送至人机界面;
9、d.人机界面收到相应的命令,将硬件信息发送给服务器;
10、e.服务器将获取硬件信息命名发送给上位机,上位机确认硬件信息无误后,上传工程文件至服务器;
11、f.服务器将工程文件下载至指定的hmi中;
12、g.人机界面记录当前下载状态,当网络出现通讯问题或其他问题导致超出等待时间并未检测到有数据接收出现下载中断,进入k;
13、h.人机界面接收完工程文件,通过和校验判断与包中相对应的校验段比较来判断文件的完整性,如完整性校验失败进入o,结束;
14、i.hmi回复服务器下载成功;
15、j.服务器将hmi回复发送给上位机,上位机显示下载成功。
16、k.hmi将下载中断点上传至服务器;
17、l.服务器将下载中断处发送到上位机;
18、m.上位机将中断点所在包之后重发至服务器;
19、n.服务器将相应的文件包发送至hmi,返回g;
20、o.删除下载的工程文件,返回服务器文件校验失败;
21、p.服务器将校验失败发送给上位机;
22、q.上位机显示下载失败,结束;
23、但是,其存在如下两个技术问题:
24、1)每一个远程下载都会占用一个连接,并发数量大,会损害服务器的整体性能,直接影响到服务器的并发数。
25、本机pc与人机界面hmi在服务器端进行了业务逻辑处理,数据传输受网络延时影响较大。
26、因此,亟需一种新的技术方案来解决上述技术问题。
技术实现思路
1、本专利技术的目的在于克服上述现有技术的问题,提供了一种基于内网穿透技术的人机界面远程更新方法,以解决传统方案中每一个远程下载都会占用一个连接,并发数量大,会损害服务器的整体性能,进而直接影响到服务器的并发数,以及数据传输受网络延时影响较大的技术问题。
2、上述目的是通过以下技术方案来实现:
3、一种基于内网穿透技术的人机界面远程更新方法,包括如下步骤:
4、步骤(1)将hmi的hmi端口映射到云服务器的公网端口中;
5、步骤(2)将本地pc客户端的pc端口与所述云服务器端口相映射,实现将所述pc端口与所述hmi端口相映射;
6、步骤(3)所述本地pc客户端通过所述pc端口将工程文件经所述hmi端口下载到所述hmi中;
7、步骤(4)所述hmi重启后运行更新组态工程。
8、进一步地,所述步骤(1)具体包括:
9、步骤(1-1)所述hmi通过mqtt与所述云服务器内置的mqtt服务器进行连接,若连接失败,则睡眠60s重连;若连接成功,则订阅主题;
10、步骤(1-2)所述hmi通过mqtt向所述云服务器发送包含hmi序列号的注册包,并判断是否注册成功;若注册失败,则睡眠60s重新注册;若注册成功,则向所述云服务器推送frp客户端状态;若所述hmi的frp状态发生变化,则所述hmi将变化后的所述frp状态推送给所述云服务器;
11、步骤(1-3)所述云服务器通过内置的mqtt服务器接收步骤(1-2)中所述注册包,并记录hmi序列号和在线状态。
12、进一步地,所述步骤(2)具体包括:
13、步骤(2-1)所述本地pc客户端连接所述云服务器中内置的mqtt服务器;若连接失败,则睡眠60s重连;若连接成功,则订阅主题;
14、步骤(2-2)所述本地pc客户端通过mqtt向所述云服务器发出获取注册后的所述hmi的序列号和在线状态的请求;
15、步骤(2-3)所述云服务器验证所述本地pc客户端的账号密码后,将所述hmi的序列号和在线状态发送至所述本地pc客户端;
16、步骤(2-4)所述本地pc客户端向所述hmi发送启动frp的主题报文,且运行自身存储的frpc程序;所述云服务器运行frps程序,将所述本地pc客户端的所述pc端口与所述云服务器的公网端口相映射;
17、步骤(2-5)所述hmi接收到所述本地pc客户端发来的启动frp的主题报文后,从主题报文中提取所述云服务器的ip、映射端口信息,并重写frpc程序的配置文件;然后运行自身存储的frpc程序通过frpc程序向所述云服务器注册所述hmi可以被访问的端口和用于验证所述本地pc客户端连接网关时的密钥;所述云服务器运行frps程序,将所述hmi的hmi端口与所述云服务器的公网端口相映射。
18、进一步地,所述步骤(3)具体为:所述本地pc客户端通过mqtt向所述hmi发送启动内网穿透的主题;所述本地pc客户端接收到所述hmi返回的密钥,重写自身存储的frpc的配置文件,并启动frpc程序,建立所述本地pc客户端到该远程网关的内网穿透;内网穿透建立成功后,所述本地pc客户端通过映射的端口就可向指定的所述hmi下载工程文件。
19、进一步地,所述步骤(3)还包括:
20、步骤(3-1)所述本地pc客户端通过映射的端口向指定的所述hmi发送获取硬件信息指令;
21、步骤(3-2)所述hmi收到相应的指令,将硬件信息发送给上位机;
<本文档来自技高网...【技术保护点】
1.一种基于内网穿透技术的人机界面远程更新方法,其特征在于,包括:
2.根据权利要求1所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(1)具体包括:
3.根据权利要求2所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(2)具体包括:
4.根据权利要求3所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(3)具体为:所述本地PC客户端通过MQTT向所述HMI发送启动内网穿透的主题;所述本地PC客户端接收到所述HMI返回的密钥,重写自身存储的frpc的配置文件,并启动frpc程序,建立所述本地PC客户端到该远程网关的内网穿透;内网穿透建立成功后,所述本地PC客户端通过映射的端口就可向指定的所述HMI下载工程文件。
5.根据权利要求4所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(3)还包括:
6.根据权利要求5所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,还包括断线重连,具体为:所述上位机发送的每包数据包含序号和校验信息
...【技术特征摘要】
1.一种基于内网穿透技术的人机界面远程更新方法,其特征在于,包括:
2.根据权利要求1所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(1)具体包括:
3.根据权利要求2所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(2)具体包括:
4.根据权利要求3所述的一种基于内网穿透技术的人机界面远程更新方法,其特征在于,所述步骤(3)具体为:所述本地pc客户端通过mqtt向所述hmi发送启动内网穿透的主题;所述本地pc客户端接收到所述hmi返回的密钥,重写自身存储的frpc的配置文件,并启动frpc程序,建立所述本地pc客户端...
【专利技术属性】
技术研发人员:李金磊,李锦伟,丁紫微,李新,
申请(专利权)人:无锡信捷电气股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。