一种Qt平台与PLC的互通控制方法、系统及存储介质与流程

文档序号:36420906发布日期:2023-12-20 10:18阅读:44来源:国知局
一种的制作方法

本技术涉及通信网络,尤其是涉及一种qt平台与plc的互通控制方法、系统及存储介质。


背景技术:

1、因为不同的制造商一般采用不同的编程原理,不同的编程原理对应不同的编程语言,不同的编程语言之间兼容性差,使得不同的制造商硬件设备或各种组件合成一套完整的自动化生产线或者系统难度大,且系统集成项目使用不同硬件生产商设备很难实现跨平台通信。

2、目前,为了实现qt平台和plc之间的互相通信即互通,一般采用在qt平台上进行pc客户端与plc服务器基于tcp、udp、串口等通信协议的网络通讯的编程的方式,来实现客户端与服务器的数据交互从而达到互通的效果,但是该类通信方式在pc端接收到来自plc的数据时,需设定触发槽函数来接收和处理plc端发送的数据,而当pc端需要发送数据给plc时,需设定写函数将报文结构体的数据发送给plc,导致数据处理过程繁琐,工作量大,降低了工作效率。

3、因此,为了解决上述问题,提供一种能够有效简化数据处理过程,提高工作效率的qt平台与plc的互通控制方法、系统及存储介质,是本领域技术人员亟待解决的问题。


技术实现思路

1、为了达到有效简化数据处理过程,提高工作效率的效果,本技术提供了一种qt平台与plc的互通控制方法、系统及存储介质。

2、第一方面,本技术提供了一种qt平台与plc的互通控制方法,包括以下步骤:

3、解析所获取到的配置文件,获取其中的plc网口参数和plc连接参数;

4、若符合实例化规则,则通过加载所述配置文件实例化连接接口;

5、通过qt平台中的连接函数触发所述连接接口;

6、根据所述plc网口参数,获取符合预设连接规则的目标plc;

7、根据所述plc连接参数,控制所述连接接口与所述目标plc建立通信连接;

8、判断所述通信连接是否符合活动连接状态;

9、若符合所述活动连接状态,则控制所述连接接口按照预设读取周期,读取所述目标plc中的变量并缓存至变量缓存中;

10、根据所获取到的变量读取请求中的变量名和变量值,从所述变量缓存中读取对应的目标变量;

11、按照预设输出方式输出所述目标变量。

12、可选的,所述若符合实例化规则,则通过加载所述配置文件实例化连接接口,包括:

13、解析所述实例化规则,获取其中的关注函数;

14、判断当前调用函数中是否包括所述关注函数;

15、若包括所述关注函数,则判定不符合所述实例化规则;

16、若不包括所述关注函数,则判定符合所述实例化规则,并通过加载所述配置文件实例化所述连接接口。

17、可选的,所述若包括所述关注函数,则判定不符合所述实例化规则,包括:

18、若包括所述关注函数,则获取所述当前调用函数中的所述关注函数的调用持续时间;

19、若所述调用持续时间小于或等于预设持续时间,则将判断次数加1;

20、若所述判断次数小于或等于预设判断次数,则在所述调用持续时间后返回判断是否包括所述关注函数的步骤;

21、若所述判断次数大于所述预设判断次数,则判定不符合所述实例化规则,并将所述判断次数清零;

22、若所述调用持续时间大于预设持续时间,则判定不符合所述实例化规则,并将所述判断次数清零。

23、可选的,所述若包括所述关注函数,则判定不符合所述实例化规则,包括:

24、若包括所述关注函数,则判断所述关注函数的处理优先级是否大于实例化优先级;

25、若所述处理优先级大于或等于所述实例化优先级,则判定不符合所述实例化规则;

26、若所述处理优先级小于所述实例化优先级,则判断所述关注函数的调用状态是否符合预设取消规则;

27、若符合所述预设取消规则,则取消调用所述关注函数,并返回所述判断当前调用函数中是否包括所述关注函数的步骤;

28、若不符合所述预设取消规则,则判定不符合所述实例化规则。

29、可选的,所述判断所述通信连接是否符合活动连接状态,包括:

30、根据当前网络的网络状态,获取对应的状态读取权重;

31、根据所述状态读取权重,对状态读取周期进行调整,形成调整读取周期;

32、根据所述调整读取周期,获取所述通信连接的连接状态;

33、若所述连接状态为连接成功,则判定所述通信连接符合所述活动连接状态;

34、若所述连接状态为连接失败,则判定所述通信连接不符合所述活动连接状态。

35、可选的,在所述若所述连接状态为连接失败,则判定所述通信连接不符合所述活动连接状态之后,还包括:

36、根据连接任务列表,获取最近的连接空闲时段;

37、根据资源使用趋势,获取对应的等待调整权重;

38、根据所述等待调整权重和预设等待时间,获取对应的调整等待时间;

39、将所述连接空闲时段对应的等待时间与所述调整等待时间比较;

40、若所述等待时间小于所述调整等待时间,则保留所述连接接口的实例化状态;

41、在等待所述等待时间后,返回所述通过qt平台中的连接函数触发所述连接接口的步骤;

42、若所述等待时间大于或等于所述调整等待时间,则清除所述连接接口的实例化状态;

43、在等待所述调整等待时间后,返回所述若符合实例化规则,则通过加载所述配置文件实例化连接接口的步骤。

44、可选的,在所述根据所述plc连接参数,控制所述连接接口与所述目标plc建立通信连接之后,还包括:

45、若所述通信连接建立成功,则进入所述判断所述通信连接是否符合活动连接状态的步骤;

46、若所述通信连接建立失败,则将失败次数加1;

47、若所述失败次数小于预设失败阈值,则根据所述失败次数获取对应的第一重连时间;

48、间隔所述第一重连时间后,返回所述根据所述plc连接参数,控制所述连接接口与所述目标plc建立通信连接的步骤。

49、可选的,在所述若所述通信连接建立失败,则将失败次数加1之后,还包括:

50、若所述失败次数大于或等于所述预设失败阈值,则将所述失败次数清零;

51、获取所述变量读取请求的重要程度,并根据所述重要程度获取对应的第二重连时间;

52、间隔所述第二重连时间后,返回所述根据所述plc连接参数,控制所述连接接口与所述目标plc建立通信连接的步骤。

53、第二方面,本技术还提供了一种qt平台与plc的互通控制系统,包括:

54、第一解析模块,用于解析所获取到的配置文件,获取其中的plc网口参数和plc连接参数;

55、第一加载模块,用于若符合实例化规则,则通过加载所述配置文件实例化连接接口;

56、第一触发模块,用于通过qt平台中的连接函数触发所述连接接口;

57、第一获取模块,用于根据所述plc网口参数,获取符合预设连接规则的目标plc;

58、第一控制模块,用于根据所述plc连接参数,控制所述连接接口与所述目标plc建立通信连接;

59、第一判断模块,用于判断所述通信连接是否符合活动连接状态;

60、第一读取模块,用于若符合所述活动连接状态,则控制所述连接接口按照预设读取周期,读取所述目标plc中的变量并缓存至变量缓存中;

61、第二读取模块,用于根据所获取到的变量读取请求中的变量名和变量值,从所述变量缓存中读取对应的目标变量;

62、第一输出模块,用于按照预设输出方式输出所述目标变量。

63、第三方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述的qt平台与plc的互通控制方法。

64、综上所述,本技术提供的qt平台与plc的互通控制方法、系统及存储介质,通过实例化符合实例化规则的连接接口结合所加载的配置文件,与目标plc建立通信连接,并在符合活动连接状态的情况下,控制连接接口按照预设读取周期,读取目标plc中的变量并缓存至变量缓存中,进而根据所获取到的变量读取请求中的变量名和变量值,从变量缓存中读取对应的目标变量,并按照预设输出方式输出。从而实现基于软件接口作为连接接口,通过物理网络连接,实现plc控制器与qt客户端系统实时访问或读取共享变量,达到有效简化数据处理过程,提高工作效率的效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1