一种基于ZMQ通信的车载电脑终端软件的模拟测试系统的制作方法

文档序号:32005310发布日期:2022-11-02 12:55阅读:236来源:国知局
一种基于ZMQ通信的车载电脑终端软件的模拟测试系统的制作方法
一种基于zmq通信的车载电脑终端软件的模拟测试系统
技术领域
1.本发明涉及车载电脑测试领域,尤其涉及一种基于zmq通信的车载电脑终端软件的模拟测试系统。


背景技术:

2.随着电控系统技术的飞速发展,车载电脑终端软件的应用领域越来越广泛,算法日益复杂,功能逐步增多。针对日益增长的车载电脑终端软件功能测试需求,电控测试需要更多的测试时间,造成车辆试验的成本逐渐增加。
3.由于目前许多汽车公司已经从传统的开发模式转移到v形开发模型,以减少重复的代码编制和实车试验。
4.在v形开发模式下,通过软件在环仿真平台可在开发过程中更早介入,以确保在早期的开发过程中通过对嵌入式软件的测试及时发现存在的问题,提高改进的效率,从而很大程度上可以节约车载电脑终端软件功能开发成本和周期。然而目前v形开发模式尚不成熟,无法确保在早期开发过程中及时发现车载电脑嵌入式软件的测试相关问题。


技术实现要素:

5.针对以上技术问题,本发明提供了一种基于zmq通信的车载电脑终端软件的模拟测试系统,包括以下步骤:
6.pc端和车载电脑端;
7.pc端包括:模拟仿真测试程序的测试界面显示模块、控制指令生成模块和zmq通信协议服务端模块;
8.车载电脑端包括:zmq通信协议客户端模块、控制指令解析模块;
9.pc端模拟仿真测试程序的测试界面显示模块展示测试功能,并根据对应测试功能的触屏信号,触发控制指令生成模块产生控制指令;
10.控制指令通过zmq通信协议服务端模块和zmq通信协议客户端模块发送至车载端电脑;车载端电脑接收控制指令,并经由控制指令解析模块解析,完成对车载电脑端的软件测试。
11.进一步地,所述模拟仿真测试程序的测试界面显示模块包括:元素显示单元;元素显示单元通过触屏信号进行触发。
12.进一步地,所述控制指令生成模块存储有对应触屏信号与对应控制指令的关系表;关系表以json格式存储。
13.进一步地,所述zmq通信协议服务端模块根据控制指令生成zmq报文,并发送zmq报文至zmq通信协议客户端模块。
14.zmq通信协议客户端模块将zmq报文发送至控制指令解析模块,解析得到真实指令,完成车载端电脑软件的测试。
15.本发明提供的有益效果是:确保在早期的开发过程中通过对嵌入式软件的测试及
时发现存在的问题,提高改进的效率,从而很大程度上可以节约车载电脑终端软件功能开发成本和周期。
附图说明
16.图1是本发明系统结构示意图;
17.图2是本发明测试系统环境搭建示意图;
18.图3是本发明的程序时序图。
具体实施方式
19.为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地描述。
20.请参考图1,图1是本发明系统结构示意图;一种基于zmq通信的车载电脑终端软件的模拟测试系统,包括以下:
21.pc端和车载电脑端;
22.pc端包括:模拟仿真测试程序的测试界面显示模块、控制指令生成模块和zmq通信协议服务端模块;
23.需要说明的是,所述模拟仿真测试程序的测试界面显示模块包括:元素显示单元;元素显示单元通过触屏信号进行触发。
24.模拟仿真测试程序的测试界面显示模块主要是实现图形界面的实时渲染,其会对相应的测试元素进行显示,作为拓展还可对元素的颜色更新;这一部分的人机交互逻辑实现:可以采用触屏信号,或者说通过按钮点击事件响应。
25.在本技术实施例中,采用触屏信号进行实现,更加方便快捷;
26.需要说明的是,所述控制指令生成模块存储有对应触屏信号与对应控制指令的关系表;关系表以json格式存储。
27.以json格式,存储在json配置文件中,这样可以实现程序的热更新。需要调整指令格式时,只需要修改json配置文件,而无需重新修改代码,发布版本。
28.当控制指令生成模块被触发时,根据触屏信号(若采用按钮点击事件的形式,则此处为点击信号),从json配置文件中,读取出控制指令。
29.所述zmq通信协议服务端模块根据控制指令生成zmq报文,并发送zmq报文至zmq通信协议客户端模块;
30.需要说明的是,zmq通讯通信协议服务端的部署过程如下:
31.s11、创建zmq通信协议服务端线程;
32.s12、服务端线程中,将通信端口绑定到3030端口;
33.s13、根据控制指令生成模块提供的指令,生成zmq报文;
34.s14、将zmq报文发送到3030端口;
35.车载电脑端包括:zmq通信协议客户端模块、控制指令解析模块;
36.需要说明的是,zmq通信协议客户端模块的部署过程如下:
37.s21、创建zmq通信协议客户端线程;
38.s22、将通信端口绑定到3030端口;
39.s23、将通信监听的服务端ip地址,设置为pc端的ip地址;
40.s24、监听3030端口的zmq通信报文;
41.s25、从监听到的zmq通信报文中,读取出控制指令;
42.s26、将控制指令发送给控制指令解析模块;
43.zmq通信协议客户端模块将zmq报文发送至控制指令解析模块,解析得到真实指令,完成车载端电脑软件的测试。
44.请参考图3,图3是本发明的程序时序图;一种基于zmq通信的车载电脑终端软件的模拟测试系统,为了使测试程序运行时,不出现系统阻塞情况,本系统采用多线程方案,具体包括以下:
45.pc端:
46.s301、pc端包括主线程和zmq服务端线程。
47.s302、pc端主线程负责系统初始化。
48.s303、pc端主线程负责测试界面显示。
49.s304、pc端主线程负责创建zmq服务端线程。
50.s305、pc端主线程负责负责触屏信号检测,
51.s306、pc端主线程负责画面颜色更新。
52.s307、pc端主线程负责从配置表读取触屏信号对应的控制指令。
53.s308、pc端主线程负责发送控制指令给zmq服务端线程。
54.s309、pc端zmq服务端线程,负责将服务端绑定到3030端口。
55.s310、pc端zmq服务端线程,负责将从pc端主线程收到的控制指令,封装成zmq报文。
56.s311、pc端zmq服务端线程,负责将zmq报文,发送到3030端口。
57.车载电脑端:
58.s401、车载电脑端包括主线程和zmq客户端线程。
59.s402、车载电脑端主线程负责系统初始化
60.s403、车载电脑端主线程负责车载电脑画面显示。
61.s404、车载电脑端主线程负责创建zmq客户端线程。
62.s405、车载电脑端zmq客户端线程,将监听端口号设置为3030端口。
63.s406、车载电脑端zmq客户端线程,将监听地址设置为服务端ip地址。
64.s407、车载电脑端zmq客户端线程,开始监听3030端口的zmq通信报文。
65.s408、车载电脑端zmq客户端线程,将监听到的控制指令发送到车载电脑端主线程。
66.s409、车载电脑端主线程,解析控制指令。
67.s410、车载电脑端主线程,模拟真实的控制命令。
68.s411、车载电脑端主线程,执行真实控制指令的反馈处理程序,更新画面显示内容。
69.综合来看,本系统的原理为:
70.pc端模拟仿真测试程序的测试界面显示模块展示测试功能,并根据对应测试功能的触屏信号,触发控制指令生成模块产生控制指令;
71.控制指令通过zmq通信协议服务端模块和zmq通信协议客户端模块发送至车载端电脑;车载端电脑接收控制指令,并经由控制指令解析模块解析,完成对车载电脑端的软件测试。
72.作为一种实施例,请参考图2,图2是本发明测试系统环境搭建示意图;
73.图2上半部分,为pc端;在实施例中,设计的测试元素有2g、3g、4g、5g通信测试、电量测试、wifi通信测试、车辆座椅加热测试、bt(蓝牙)通信测试;另外,从图2中可以看出,不同的测试元素,有不同的颜色(本技术中以灰度不同表示颜色不同);
74.以上元素测试,可参考表1对应的控制指令生成和控制指令解析对照表;
75.表1测试元素、控制指令生成、控制指令解析对照表
[0076][0077]
图2下半部分,即为车载端电脑;车载端电脑和pc端之间通过zmq通信协议进行通信,根据表1所示的对照表,完成车载端电脑的软件测试过程。
[0078]
本发明的有益效果是:设置车载电脑终端软件的相关信号与仿真平台相连,实现目标控制器算法的在线或离线仿真,从而为开发电控系统的算法节约时间、减少成本。
[0079]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1