一种基于共享内存的数据传输和显示系统及方法与流程

专利2025-05-03  9


本发明涉及计算机系统和通信,尤其涉及一种基于共享内存的数据传输和显示系统和方法。


背景技术:

1、cn201610390281.5公布了用于机器人操作系统的消息传输方法和装置。使用共享内存的方式进行传输通常是多个发送和接收节点同时使用同一段共享内存区。该专利方案虽然解决了同步这些节点进程,让他们互不干扰有顺序地读写共享内存的问题,但是并没有丰富的数据分类和使用方法、调用接口。

2、cn202310044073.x公布了基于共享内存的多进程间通信的方法及装置。该专利方案不需要进行地址的逐一遍历,从而使每个通道数据的增加、删除、查询时间复杂度都是o(1),有效提高进程间通信效率,降低延迟。但是该专利方案只是对下层通讯地址进行编码管理。


技术实现思路

1、在实际的工业控制中,系统下挂的设备的通信模式不尽相同。本发明的目的是:实现上位机软件的界面刷新和通信模式的简化,将与下挂设备的通信和数据下发、更新通过共享内存进行实现,从而提高通信效率。

2、为了达到上述目的,本发明的一个技术方案是提供了一种基于共享内存的数据传输和显示系统,其特征在于,包括

3、多个下挂设备:每个下挂设备通过总线或网络接入共享内存,其协议为网络组播协议或者总线协议;

4、共享内存:用于接收下挂设备定时发送的数据,并经过解析将最新的数据填写在共享内存的对应测点的结构体中,其中,共享内存不保留历史数据,每间隔一个固定时间周期更新其内的测点数据,且共享内存通过使用同一个测点的方式保障不同进程可以进程间通信;

5、上位机软件:与共享内存通过调用接口的方式进行初始化和数据的写入和读出操作,并将读取到的数据实时更新到界面上。

6、优选地,所述上位机软件进一步包括:

7、插件模块:插件模块为自定义控件,根据收到的数据动态更改插件的显示状态,并可实时监测使用者的计算机的外设输入,并根据需要处理外设输入;

8、接口模块:创建并监听共享内存的接口,并创建线程,用于读取或者写入共享内存模块数据;

9、交叉编译模块:将上位机软件交叉编译到所需系统内;

10、界面设计模块:根据需要进行列表图的显示绘制;

11、所述共享内存进一步包括:

12、初始化模块:根据配置文件,初始化共享内存,初始化时,初始化模块读取配置文件中的测点的id、名称、阶码、单位、是否报警量,将其更新到测点信息中保存,并根据是否为报警量,将报警测点的触发进行单独记录;

13、通讯模块:用于实现与下挂设备的通讯;

14、与所述上位机软件的接口模块:初始化共享内存接口、读取共享内存接口、写入共享内存接口、关闭共享内存接口。

15、告警模块:保存全部的告警信息。

16、本发明的另一个技术方案是公开了一种上述的基于共享内存的数据传输和显示系统中的共享内存数据更新方法,其特征在于,当所述共享内存启动后,采用以下方法更新共享内存数据:

17、步骤1、初始化共享内存的内存空间,该内存空间用于存储测点的参数;

18、步骤2、共享内存初始化与下挂设备的接口后,开启线程,用于监听接口内的信息,并将收到的数据包进行处理;

19、步骤3、经过接口不同的协议进行解析后,根据当前测点是否在共享内存空间,对该部分数据采取丢弃或者更新到共享内存当前值的操作,具体为:

20、若当前测点在共享内存空间,更改该测点对应的数据最新值,并更改数据更新时间到当前解析后的时戳时间;

21、若当前测点不在内存空间,将该部分数据采取丢弃处理。

22、优选地,步骤1中,所述存储测点的参数包括测点的id、数据源、设备名称、单位、阶码、数据更新时间以及当前测点对应值。

23、本发明的另一个技术方案是公开了一种上述的基于共享内存的数据传输和显示系统中的共享内存数据下发方法,其特征在于,当所述共享内存启动后,采用以下方法下发共享内存数据:

24、步骤1、初始化共享内存的内存空间,该内存空间用于存储下发测点数据;

25、步骤2、共享内存初始化与下挂设备的接口后,建立数据下发的定时器,用于定时下发当前测点值的最新数据;

26、步骤3、当上位机软件更新了共享内存中的下发测点数据后,共享内存将需要下发的控制命令按照相应的协议进行打包发送到下挂设备,从而控制下挂设备的当前状态。

27、本发明的另一个技术方案是公开了一种上述的基于共享内存的数据传输和显示系统中的上位机软件的拓扑测点更新方法,其特征在于,包括以下步骤:

28、步骤1、上位机软件启动后,初始化与共享内存的接口;

29、步骤2、启动线程,用于不断查询全部测点的最新值,并和测点当前值进行比较:当数据不一致时,首先判断其是否为拓扑上的测点,如果不是拓扑上的测点,对该数据不作操作,否则,将数据更新到拓扑界面。

30、本发明的另一个技术方案是公开了一种上述的基于共享内存的数据传输和显示系统的远程工业信息显示方法,其特征在于,包括以下步骤:

31、系统启动后,位于上位机存储器中的共享内存和上位机软件读取位于存储器中的配置文件后初始化自启动;

32、下挂设备的工控数据通过网络或者总线传输到上位机,上位机接收数据后,交付给处理器进行处理;位于存储器中的共享内存模块定时解析处理器内的数据包后,将新的数据解析后写入相对应的测点中;

33、上位机软件定时读取共享内存模块的相关测点,当监测到测点对应的数据有变化时,对相关的界面和测点信息列表界面进行更新。

34、本发明的另一个技术方案是公开了一种上述的基于共享内存的数据传输和显示系统的远程工业信息控制方法,其特征在于,包括以下步骤:

35、上位机软件触发控制命令后,将更改后的数据填写入共享内存中对应的测点值;

36、共享内存将需要下发的值下发到对应的下挂设备。

37、本发明的另一个技术方案是公开了一种计算机设备,其特征在于,包括:至少四个处理器;与所述至少四个处理器通信连接的存储器;与所述至少四个处理器通信连接的显卡;与所述至少四个处理器通信连接的can卡;与所述至少四个处理器通信连接的网卡,其中,所述存储器存储有可被所述四个处理器执行的计算机程序和共享内存模块以及各个模块的配置文件等;所述计算机程序和共享内存模块被所述四个处理器执行,以使所述至少一个处理器能够执行上述的方法;所述显卡被所述四个处理器驱动,以使所述的计算机程序能够显示;所述can卡、所述的网卡被所述四个处理器驱动,以与远程设备进行通信。

38、本发明的另一个技术方案是公开了基于自定义插件的用于上述的基于共享内存的数据传输和显示系统的界面显示系统,其特征在于,包括:

39、插件接口模块:根据插件的不同,根据当前的测点值,开放信息显示接口;

40、插件绘制模块:根据所显示的设备不同,根据其模型,自定义绘制该插件,当有状态变化时,进行重绘;

41、插件加载模块:将插件封装为库文件,并通过加载库的方式进行插件加载,在使用过程中,通过拖拽的方式将需要的插件放置到界面上的合适位置,并通过其开放的对外接口在界面上更改,同时也可以通过代码的方式在界面外部进行更改。

42、与现有技术方案相比,本发明具有如下优点:

43、通过本发明的技术方案,上位机软件与外部接口只有与共享内存直接的初始化和读写接口,便于上位机软件的开发;

44、通过本发明的技术方案,共享内存与下挂设备的接口丰富,可以适配多种设备的接口,便于数据的读取和解析;

45、共享内存的内容丰富,可以获得设备及测点的全部参数,同时还可以获得告警的全部信息,不需要软件去根据不同状态初始化;

46、可移植性较强,由于通过插件的方式进行软件开发,多个软件均可通过库文件的方式进行调用,同时界面通过拖拽方式进行绘制,可实现定制化开发。


技术特征:

1.一种基于共享内存的数据传输和显示系统,其特征在于,包括

2.如权利要求1所述的一种基于共享内存的数据传输和显示系统,其特征在于,所述上位机软件进一步包括:

3.一种权利要求1所述的基于共享内存的数据传输和显示系统中的共享内存数据更新方法,其特征在于,当所述共享内存启动后,采用以下方法更新共享内存数据:

4.如权利要求3所述的一种共享内存数据更新方法,其特征在于,步骤1中,所述存储测点的参数包括测点的id、数据源、设备名称、单位、阶码、数据更新时间以及当前测点对应值。

5.一种权利要求1所述的基于共享内存的数据传输和显示系统中的共享内存数据下发方法,其特征在于,当所述共享内存启动后,采用以下方法下发共享内存数据:

6.一种权利要求1所述的基于共享内存的数据传输和显示系统中的上位机软件的拓扑测点更新方法,其特征在于,包括以下步骤:

7.一种基于权利要求1所述的基于共享内存的数据传输和显示系统的远程工业信息显示方法,其特征在于,包括以下步骤:

8.一种基于权利要求1所述的基于共享内存的数据传输和显示系统的远程工业信息控制方法,其特征在于,包括以下步骤:

9.一种计算机设备,其特征在于,包括:至少四个处理器;与所述至少四个处理器通信连接的存储器;与所述至少四个处理器通信连接的显卡;与所述至少四个处理器通信连接的can卡;与所述至少四个处理器通信连接的网卡,其中,所述存储器存储有可被所述四个处理器执行的计算机程序和共享内存模块以及各个模块的配置文件等;所述计算机程序和共享内存模块被所述四个处理器执行,以使所述至少一个处理器能够执行权利要求3-7中任一项所述的方法;所述显卡被所述四个处理器驱动,以使所述的计算机程序能够显示;所述can卡、所述的网卡被所述四个处理器驱动,以与远程设备进行通信。

10.一种基于自定义插件的用于权利要求1所述的基于共享内存的数据传输和显示系统的界面显示系统,其特征在于,包括:


技术总结
本发明的一个技术方案是提供了一种基于共享内存的数据传输和显示系统。本发明的另一个技术方案是公开了共享内存数据更新方法。本发明的另一个技术方案是公开了共享内存数据下发方法。本发明的另一个技术方案是公开了上位机软件的拓扑测点更新方法。本发明的另一个技术方案是公开了一种远程工业信息显示方法。本发明的另一个技术方案是公开了一种远程工业信息控制方法。本发明的另一个技术方案是公开了一种计算机设备。本发明的另一个技术方案是公开了界面显示系统。通过本发明的技术方案,上位机软件与外部接口只有与共享内存直接的初始化和读写接口,便于上位机软件的开发;共享内存与下挂设备的接口丰富,便于数据的读取和解析。

技术研发人员:毛辰飞,方文,瞿涛,聂佳,张人杰
受保护的技术使用者:上海电器科学研究所(集团)有限公司
技术研发日:
技术公布日:2024/6/26
转载请注明原文地址:https://doc.8miu.com/read-1819529.html

最新回复(0)