一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

软件部署方法、装置和系统与流程

2021-10-19 23:35:00 来源:中国专利 TAG: 部署 装置 驾驶 公开 方法


1.本公开涉及自动驾驶技术领域,尤其涉及软件部署方法、装置和系统。


背景技术:

2.为了保障自动驾驶的安全性,常常需要对自动驾驶车辆进行测试。测试时,需要将测试所需的测试文件包部署到测试车辆上。相关技术中,一般是先将测试文件包拷贝到移动存储介质(例如,移动硬盘)中,再由测试操作员将移动存储介质携带至测试车辆,然后将移动存储介质中的测试文件包拷贝到测试车辆上,这种部署方式效率低。


技术实现要素:

3.本公开提供一种软件部署方法、装置和系统。
4.根据本公开实施例的第一方面,提供一种软件部署方法,应用于测试车辆上的车载工控机,所述方法包括:在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到第二网络;所述第二网络的接入服务通过所述指定区域的无线网络接入点提供;通过所述第二网络获取存储在代码服务器中的测试文件包;响应于获取到所述测试文件包,对所述测试文件包进行解压。
5.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应;所述通过所述第二网络获取存储在代码服务器中的测试文件包,包括:通过所述第二网络访问所述代码服务器;从所述代码服务器下载与所述任务编号相对应的测试文件包。
6.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接;所述方法还包括:在接入所述第一网络的情况下,向所述车辆管理平台发送预设信息,所述预设信息与所述测试车辆所执行的测试任务相对应;接收所述车辆管理平台基于所述预设信息返回的所述任务编号。
7.在一些实施例中,所述预设信息包括以下至少任一:所述指定区域的标识信息,所述测试车辆的标识信息,所述测试车辆所执行的测试任务的描述信息。
8.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接,并通过所述第二网络与测试管理平台通信连接;所述通过所述第二网络获取存储在代码服务器中的测试文件包,包括:通过所述第一网络向所述车辆管理平台发送所述测试车辆的信息,以使所述车辆管理平台将所述测试车辆的信息发送至所述测试管理平台,并使所述测试管理平台建立所述测试车辆的信息与对应测试文件包之间的关联关系;通过所述第二网络获取所述代码服务器推送的测试文件包,其中,所述测试管理平台在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于从所述无线网络接入点获取的所述测试车辆的信息和所述关联关系,通知所述代码服务器向所述车载工控机推送所述测试文件包。
9.在一些实施例中,所述方法还包括:在获取所述测试文件包之后,通过所述第二网
络向所述测试管理平台发送信息删除请求,以使所述测试管理平台删除所述测试车辆的信息与对应测试文件包之间的关联关系。
10.在一些实施例中,所述车载工控机与控制中心通信连接;所述通过所述第二网络接入服务获取存储在代码服务器中的测试文件包,包括:接收所述控制中心发送的下载请求;通过所述第二网络将所述下载请求转发至所述代码服务器;获取所述代码服务器响应于所述下载请求返回的所述测试文件包。
11.在一些实施例中,所述测试文件包通过持续集成服务器发布并上传至所述代码服务器。
12.在一些实施例中,所述车载工控机通过所述第二网络与测试管理平台通信连接;通过所述第二网络获取存储在代码服务器中的测试文件包,包括:所述车载工控机在接收到测试操作员的客户端发送的所述测试文件包的信息后,为所述测试车辆从所述代码服务器下载对应的测试文件包,所述测试文件包的信息通过所述测试管理平台预先发送至所述测试操作员的客户端。
13.在一些实施例中,所述测试文件包为二进制包。
14.根据本公开实施例的第二方面,提供一种软件部署系统,所述系统包括:用于存储测试文件包的代码服务器;以及设置在测试车辆上的车载工控机,用于在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到所述指定区域的无线网络接入点提供的第二网络,通过所述第二网络获取存储在所述代码服务器中的测试文件包,并响应于获取到所述测试文件包,对所述测试文件包进行解压。
15.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应;所述车载工控机用于:通过所述第二网络访问所述代码服务器;从所述代码服务器下载与所述任务编号相对应的测试文件包。
16.在一些实施例中,所述系统还包括:车辆管理平台,通过第一网络与所述车载工控机通信连接,用于接收所述车载工控机通过所述第一网络发送的预设信息,所述预设信息与所述测试车辆所执行的测试任务相对应,并基于所述预设信息向所述车载工控机返回所述任务编号。
17.在一些实施例中,所述系统还包括:车辆管理平台,通过第一网络与所述车载工控机通信连接,用于获取所述车载工控机发送的所述测试车辆的信息,所述测试车辆的信息与所述测试文件包相对应;以及测试管理平台,通过所述第二网络与所述车载工控机通信连接,用于获取所述车辆管理平台发送的所述测试车辆的信息,建立所述测试车辆的信息与对应测试文件包之间的关联关系;在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于所述测试车辆的信息和所述关联关系通知所述代码服务器向所述车载工控机推送所述测试文件包。
18.在一些实施例中,所述测试管理平台还用于:接收所述车载工控机发送的信息删除请求;响应于所述信息删除请求删除所述测试车辆的信息与对应测试文件包之间的关联关系。
19.在一些实施例中,所述系统还包括:与所述车载工控机通信连接的控制终端,用于向所述车载工控机发送下载请求,以使所述车载工控机将所述下载请求转发至所述代码服务器,并获取所述代码服务器响应于所述下载请求返回的所述测试文件包。
20.在一些实施例中,所述系统还包括:测试管理平台,通过所述第二网络与所述车载工控机通信连接,用于将所述测试文件包的信息发送至测试操作员的客户端,以使得所述车载工控机在接收到所述测试操作员的客户端发送的所述测试文件包的信息后为所述测试车辆从所述代码服务器下载对应的测试文件包。
21.根据本公开实施例的第三方面,提供一种软件部署装置,应用于测试车辆上的车载工控机,所述装置包括:网络切换模块,用于在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到第二网络;所述第二网络的接入服务通过所述指定区域的无线网络接入点提供;获取模块,用于通过所述第二网络获取存储在代码服务器中的测试文件包;解压模块,用于响应于获取到所述测试文件包,对所述测试文件包进行解压。
22.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应;所述获取模块包括:访问单元,用于通过所述第二网络访问所述代码服务器;下载单元,用于从所述代码服务器下载与所述任务编号相对应的测试文件包。
23.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接;所述装置还包括:发送模块,用于在接入所述第一网络的情况下,向所述车辆管理平台发送预设信息,所述预设信息与所述测试车辆所执行的测试任务相对应;接收模块,用于接收所述车辆管理平台基于所述预设信息返回的所述任务编号。
24.在一些实施例中,所述预设信息包括以下至少任一:所述指定区域的标识信息,所述测试车辆的标识信息,所述测试车辆所执行的测试任务的描述信息。
25.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接,并通过所述第二网络与测试管理平台通信连接;所述获取模块包括:发送单元,用于通过所述第一网络向所述车辆管理平台发送所述测试车辆的信息,以使所述车辆管理平台将所述测试车辆的信息发送至所述测试管理平台,并使所述测试管理平台建立所述测试车辆的信息与对应测试文件包之间的关联关系;第一获取单元,用于通过所述第二网络获取所述代码服务器推送的测试文件包,其中,所述测试管理平台在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于从所述无线网络接入点获取的所述测试车辆的信息和所述关联关系,通知所述代码服务器向所述车载工控机推送所述测试文件包。
26.在一些实施例中,所述装置还包括:删除模块,用于在获取所述测试文件包之后,通过所述第二网络向所述测试管理平台发送信息删除请求,以使所述测试管理平台删除所述测试车辆的信息与对应测试文件包之间的关联关系。
27.在一些实施例中,所述车载工控机与控制中心通信连接;所述获取模块包括:接收单元,用于接收所述控制中心发送的下载请求;转发单元,用于通过所述第二网络将所述下载请求转发至所述代码服务器;第二获取单元,用于获取所述代码服务器响应于所述下载请求返回的所述测试文件包。
28.在一些实施例中,所述测试文件包通过持续集成服务器发布并上传至所述代码服务器。
29.在一些实施例中,所述车载工控机通过所述第二网络与测试管理平台通信连接;所述获取模块包括:下载模块,用于所述车载工控机在接收到测试操作员的客户端发送的所述测试文件包的信息后,为所述测试车辆从所述代码服务器下载对应的测试文件包,所
述测试文件包的信息通过所述测试管理平台预先发送至所述测试操作员的客户端。
30.在一些实施例中,所述测试文件包为二进制包。
31.根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一实施例所述的方法。
32.根据本公开实施例的第五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一实施例所述的方法。
33.本公开实施例在测试车辆进入指定区域的情况下,先将测试车辆上的车载工控机所接入的第一网络切换为指定区域的无线网络接入点提供的第二网络,然后通过指定区域的第二网络直接从代码服务器中获取测试文件包并解压,无需通过移动存储介质拷贝测试文件包,提高了测试文件包的部署效率。
34.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
附图说明
35.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
36.图1是本公开实施例的软件部署方法的流程图。
37.图2是本公开实施例的网络切换过程的示意图。
38.图3是本公开实施例的访问代码服务器以获取测试文件包的示意图。
39.图4是本公开实施例的注册界面的示意图。
40.图5是本公开实施例的获取测试文件包的过程的示意图。
41.图6是本公开实施例的测试车辆与车辆管理平台和测试管理平台的交互时序图。
42.图7是本公开实施例的软件部署系统的示意图。
43.图8是本公开实施例的软件部署装置的框图。
44.图9是本公开实施例的计算机设备的示意图。
具体实施方式
45.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
46.在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合。
47.应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离
本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
48.为了使本技术领域的人员更好的理解本公开实施例中的技术方案,并使本公开实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本公开实施例中的技术方案作进一步详细的说明。
49.为了保障自动驾驶的安全性,常常需要对自动驾驶车辆进行测试。测试时,需要将测试所需的测试文件包部署到测试车辆上。测试文件包存储在专用的代码服务器中,为了保证数据安全性,减少数据泄露的风险,一般不会在测试车辆上部署能够访问代码服务器的专用网络(称为内网),因此,相关技术中,一般是先将测试文件包拷贝到移动存储介质(例如,移动硬盘)中,再由测试操作员将移动存储介质携带至测试车辆,然后将移动存储介质中的测试文件包拷贝到测试车辆上,这就导致了代码部署过程的效率较低。除此之外,在测试文件包数据量较大时,多次拷贝的过程容易出现文件损坏的问题。
50.基于此,本公开实施例提供一种软件部署方法,应用于测试车辆上的车载工控机,如图1所示,所述方法包括:
51.步骤101:在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到第二网络;所述第二网络的接入服务通过所述指定区域的无线网络接入点提供;
52.步骤102:通过所述第二网络获取存储在代码服务器中的测试文件包;
53.步骤103:响应于获取到所述测试文件包,对所述测试文件包进行解压。
54.在步骤101中,测试车辆可以是需要进行自动驾驶测试的任意车辆,例如,汽车、校车、货车等。可以在测试车辆上设置路由器,以便通过路由器为测试车辆提供第一网络接入服务,从而使车载工控机通过路由器接入第一网络。所述第一网络可以是3g网络、4g网络等公共的无线通信网络(称为外网)。路由器可以通过有线或无线方式与车载工控机相连接。还可以在测试车辆上设置无线网卡,以便通过无线网卡为测试车辆提供第二网络接入服务,从而使车载工控机通过无线网卡接入第二网络。所述第二网络可以是自动驾驶测试过程中专用的无线网络(称为内网)。
55.接入第一网络和第二网络中的一者,并不意味着与另一者必须断开连接。可以为第一网络和第二网络设置不同的优先级,例如,第二网络的优先级设置为高于第一网络的优先级,在同时接入第一网络和第二网络的情况下,通过优先级较高的网络来为车载工控机提供服务。当然,车载工控机在接入第一网络和第二网络中的一者的情况下,也可以断开另一者。
56.车载工控机接入第一网络和第二网络的过程可以通过人工控制,或者由车载工控机自动执行。由于测试车辆仅能够在指定区域接入第二网络并获取测试文件包,因此,提高了测试文件包的安全性,减少了数据泄露的风险。所述测试文件包可以是二进制包或者源码包。在采用二进制包的情况下,进一步减少了源代码泄露的风险。
57.在步骤102中,车载工控机能够接入所述第一网络或所述第二网络,并在接入不同的网络的情况下实现不同的功能。例如,在接入第一网络的情况下,车载工控机可以基于获取的测试文件包进行自动驾驶测试,还可以与车辆管理平台进行通信,以便将自身的位置、速度、车牌号等信息上报给车辆管理平台;在接入第二网络的情况下,车载工控机可以获取
存储在代码服务器中的测试文件包,以及将自动驾驶测试过程中产生的测试数据上传到指定的测试管理平台。
58.如图2,是本公开实施例的车辆自动驾驶测试过程的示意图。在默认状态(状态1)下,需要进行自动驾驶测试的测试车辆通过外网与车辆管理平台建立连接,以便与车辆管理平台进行数据通信。其中,外网可以是互联网等开放的网络,例如,4g网络。测试车辆可以将自身的位置、速度、车牌号等信息上报给车辆管理平台。在状态2下,测试车辆断开与外网的连接,并通过内网与存储有测试文件包的代码服务器建立连接,以便从代码服务器获取测试文件包。其中,内网可以是一个专用网络,为了提高数据安全性,一般希望只有在测试车辆与代码服务器之间需要进行测试文件包传输等特定情况下,测试车辆才能够访问内网,并通过内网获取所述测试文件包,而在其他情况下则不希望测试车辆访问内网。因此,在成功获取到测试文件包的情况下,测试车辆的网络连接状态切换到状态3,即,测试车辆断开与内网的连接,并恢复与外网的连接,从而进行自动驾驶测试。在测试满足一定的条件,例如,测试完成,或者测试进度达到一定的进度节点的情况下,进入状态4,测试车辆断开与外网的连接,并切换到内网。此时,测试车辆可以通过内网连接测试管理平台,并将自动驾驶测试过程中产生的测试数据发送给测试管理平台。本领域技术人员可以理解,图2所示的实施例仅为示例性说明,并非用于对本公开的限制。
59.在步骤103中,获取到测试文件包之后,车载工控机可以将所述测试文件包解压到本地,从而完成对测试文件包的部署。
60.本公开实施例在测试车辆进入指定区域的情况下,先将测试车辆上的车载工控机所接入的第一网络切换为指定区域的无线网络接入点提供的第二网络,然后通过指定区域的第二网络直接从代码服务器中获取测试文件包并解压,无需通过移动存储介质拷贝测试文件包,提高了测试文件包的部署效率。此外,由于由车载工控机能够直接从代码服务器获取测试文件包,无需经过多次拷贝,从而减少了测试文件包损坏的情况。
61.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应。因此,车载工控机可以通过所述第二网络访问所述代码服务器;从所述代码服务器下载与所述任务编号相对应的测试文件包。通过这种方式,能够快速定位到测试文件包,提高了测试文件包的获取效率。如图3所示,是访问代码服务器以获取测试文件包的示意图。可以在车载工控机的操作界面301上的搜索栏3011输入代码服务器的统一资源定位器(uniform resource locator,url),以访问代码服务器的页面,在页面上的测试文件包列表3012中,基于任务编号查找相应的测试文件包,并通过查找到的测试文件包对应的下载控件对测试文件包进行下载。
62.所述任务编号可以预先从车辆管理平台获取。具体来说,车载工控机可以在接入所述第一网络的情况下,向所述车辆管理平台发送预设信息,并接收所述车辆管理平台基于所述预设信息返回的所述任务编号。其中,所述预设信息与所述测试车辆所执行的测试任务相对应。
63.所述预设信息可以包括所述指定区域的标识信息。指定区域的数量可以是多个,不同的指定区域可以位于城市的不同方位,例如,指定区域一位于城市南部,指定区域二位于城市西部,指定区域三位于城市东部。在不同的指定区域执行的测试任务可以相同也可以不同,通过设置多个不同方位的指定区域,便于根据测试车辆所处位置选择不同的指定
区域来执行测试任务。
64.不同的测试车辆所需要执行的测试任务可能不同,因此,所述预设信息还可以包括所述测试车辆的标识信息。所述测试车辆的标识信息可以是测试车辆的车牌号。
65.所述预设信息还可以包括测试车辆所执行的测试任务的描述信息。所述描述信息可以包括但不限于“优化定位地图加载方式”、“刹车性能调试”等。不同测试任务的描述信息一般不同,因此,可以基于测试任务的描述信息确定测试车辆所执行的测试任务,进而确定测试任务的编号。
66.上述预设信息可以通过测试车辆向车辆管理平台进行注册,从而提交到车辆管理平台。一些实施例的注册界面如图4所示。其中,指定区域包括测试点一、测试点二和测试点三这三个区域,车辆信息可以由用户手动输入,测试任务可以从下拉列表中选取。通过向车辆管理平台进行注册,能够使测试车辆在进行自动驾驶测试之前快速、方便地获取所执行的测试任务的任务编号,从而在进行自动驾驶测试时,能够直接基于任务编号下载相应的测试文件包,提高了测试文件包的获取效率。
67.进一步地,车载工控机可以通过所述第一网络向所述车辆管理平台发送所述测试车辆的信息,以使所述车辆管理平台将所述测试车辆的信息发送至所述测试管理平台,并使所述测试管理平台建立所述测试车辆的信息与对应测试文件包之间的关联关系,所述测试车辆的信息与所述测试文件包相对应;通过所述第二网络获取所述代码服务器推送的测试文件包,其中,所述测试管理平台在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于从所述无线网络接入点获取的所述测试车辆的信息和所述关联关系,通知所述代码服务器推送所述测试文件包。
68.如图5所示,车辆1的车载工控机可以在接入第一网络的情况下,向车辆管理平台进行注册,以提交车辆1的信息,例如,车辆1的车牌号。车辆管理平台可以通过公用网络或者专用网络(例如,所述第二网络)与测试管理平台通信,并将车辆1的信息提交至测试管理平台,测试管理平台可以维护一个车辆信息与测试文件包之间的关联关系列表,并将车辆1的信息与车辆1所需的测试文件包的编号添加到该关联关系列表中。车辆1的车载工控机在接入指定地点的无线接入点提供的第二网络之后,无线接入点可以检测到车辆1为新接入的车辆,从而触发无线接入点将新接入车辆的车辆信息发送至测试管理平台。测试管理平台可以从关联关系列表中查找与该新接入的车辆(即车辆1)对应的测试文件包编号(即文件包1编号),并通知代码服务器将相应的测试文件包(即文件包1)推送至车辆1的车载工控机。其中,代码服务器可以通过公用网络或者专用网络(例如,所述第二网络)与测试管理平台通信。通过上述方式,可以实现测试文件包的自动部署,无需用户手动输入测试任务编号等信息,提高了测试文件包的部署效率。
69.进一步地,在获取所述测试文件包之后,车载工控机还可以通过所述第二网络向所述测试管理平台发送信息删除请求,以使所述测试管理平台删除所述测试车辆的信息与对应测试文件包之间的关联关系。其中,车载工控机可以在成功获取测试文件包的情况下,即刻向所述测试管理平台发送信息删除请求。或者,车载工控机也可以在成功获取测试文件包,且测试任务完成的情况下,向所述测试管理平台发送信息删除请求,以避免因测试文件包在下载过程中损坏导致无法完成测试任务。
70.在一些实施例中,所述车载工控机与控制中心通信连接;车载工控机可以接收所
述控制中心发送的下载请求;通过所述第二网络将所述下载请求转发至所述代码服务器;获取所述代码服务器响应于所述下载请求返回的所述测试文件包。由于在实际场景下,车载工控机上往往不便于操作,因此,可以通过将车载工控机连接控制中心,在控制中心上进行操作,并通过车载工控机将操作指令转发给代码服务器,从而实现测试文件包的下载。其中,控制中心可以是手机、平板电脑等智能终端,也可以是远程服务器。可以在控制中心点击相应的控件进行操作(例如,输入网页链接、点击下载等),也可以通过在控制中心输入相应的指令代码来实现相应的操作。
71.在一些实施例中,测试文件包可以通过持续集成(continuous integration,ci)服务器发布并上传至所述代码服务器。进一步地,在上传至代码服务器之后,可以存储到指定的主题(topic)下。例如,可以基于测试文件包对应的测试任务,将持续集成服务器发布的测试文件包存储到指定的主题下,其中,每个主题对应一个或多个测试任务。通过这种方式,方便从代码服务器中查找测试文件包,从而能够提高测试文件包的获取效率。
72.在载工控机通过所述第二网络与测试管理平台通信连接的情况下,所述车载工控机可以在接收到测试操作员的客户端发送的所述测试文件包的信息后,为所述测试车辆从所述代码服务器下载对应的测试文件包,所述测试文件包的信息通过所述测试管理平台预先发送至所述测试操作员的客户端。通过预先将测试文件包的信息发送至测试操作员的客户端,可以将对应的测试任务分配至测试操作员,以便测试操作员协助测试文件包的部署过程。所述测试操作员的客户端可以是钉钉、企业微信等。以企业微信为例,可以通过企业微信机器人自动将测试任务详情和测试包等信息发送至测试微信群中,并在微信群中指定测试操作员;或者,也可以通过企业微信机器人自动将测试任务详情和测试包等信息单独发送给测试操作员。测试操作员可以通过在客户端上执行相应的操作,来为测试车辆下载测试文件包。例如,可以将测试操作员的客户端作为控制中心,或者,测试操作员可以将客户端携带至测试现场,并与测试车辆建立通信连接,以便通过客户端来控制车载工控机下载测试文件包。
73.如图6所示,是本公开实施例的测试车辆与车辆管理平台和测试管理平台的交互时序图。在步骤601中,测试车辆可以在接入第一网络的情况下,向车辆管理平台注册信息,以便将与测试任务有关的车辆信息提交到车辆管理平台,所述测试任务的编号与测试文件包相对应。在步骤602中,车辆管理平台可以通过预先与测试管理平台建立的通信连接将车辆信息上报给测试管理平台。在步骤603中,测试管理平台可以将车辆信息添加到预先建立的关联关系列表中,所述关联关系列表中包括车辆信息与测试文件包的编号之间的关联关系。在步骤604中,测试车辆可以切换到第二网络。切换方式可以是手动切换,也可以是由车辆管理平台自动控制测试车辆进行切换。例如,车辆管理平台可以获取测试车辆的实时位置,在所述实时位置进入指定区域的范围内的情况下,控制测试车辆接入指定区域的无线网络接入点的第二网络。在步骤605中,测试管理平台可以获取测试车辆的车辆信息。具体地,测试车辆接入第二网络后,无线网络接入点可以检测到新接入的车辆,并将新接入车辆的车辆信息发送给测试管理平台。测试管理平台可以从关联关系列表中查找车辆信息对应的测试文件包编号。如果查找到,则在步骤606中,通过测试管理平台向代码服务器请求为测试车辆下发测试文件包。
74.如果未查找到,说明接入第二网络的测试车辆未提前向车辆管理平台注册,或者
接入的并非测试车辆。对于未提前注册的测试车辆,可以通过其他方式获取测试文件包,例如,在控制终端上输入代码服务器的url并手动下载测试文件包。在步骤607中,测试车辆获取到测试文件包之后,可以对测试文件包进行解压,从而完成测试文件包的部署。在步骤608中,测试车辆可以在完成测试文件包的部署的情况下,切换到第一网络,并开始进行测试。在步骤609中,测试车辆可以切换到第二网络,并在步骤610中向测试管理平台返回测试数据。
75.如图7所示,本公开实施例还提供一种软件部署系统,所述系统包括:
76.用于存储测试文件包的代码服务器701;以及
77.设置在测试车辆上的车载工控机702,用于在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到所述指定区域的无线网络接入点提供的第二网络,通过所述第二网络获取存储在所述代码服务器701中的测试文件包,并响应于获取到所述测试文件包,对所述测试文件包进行解压。
78.其中,车载工控机702可以通过路由器接入第一网络,并通过无线网卡接入第二网络。第二网络的接入服务可以是指定区域的无线网络接入点(access point,ap)提供的服务。
79.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应;所述车载工控机用于:通过所述第二网络访问所述代码服务器;从所述代码服务器下载与所述任务编号相对应的测试文件包。
80.在一些实施例中,所述系统还包括:车辆管理平台,通过第一网络与所述车载工控机通信连接,用于接收所述车载工控机通过所述第一网络发送的预设信息,所述预设信息与所述测试车辆所执行的测试任务相对应,并基于所述预设信息向所述车载工控机返回所述任务编号。
81.在一些实施例中,所述预设信息包括以下至少任一:所述指定区域的标识信息,所述测试车辆的标识信息,所述测试车辆所执行的测试任务的描述信息。
82.在一些实施例中,所述系统还包括:车辆管理平台,通过第一网络与所述车载工控机通信连接,用于获取所述车载工控机发送的所述测试车辆的信息,所述测试车辆的信息与所述测试文件包相对应;以及测试管理平台,通过所述第二网络与所述车载工控机通信连接,用于获取所述车辆管理平台发送的所述测试车辆的信息,建立所述测试车辆的信息与对应测试文件包之间的关联关系;在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于所述测试车辆的信息和所述关联关系通知所述代码服务器向所述车载工控机推送所述测试文件包。
83.在一些实施例中,所述测试管理平台还用于:接收所述车载工控机在获取所述测试文件包之后发送的信息删除请求;响应于所述信息删除请求删除所述测试车辆的信息与对应测试文件包之间的关联关系。
84.在一些实施例中,所述系统还包括:与所述车载工控机通信连接的控制终端,用于向所述车载工控机发送下载请求,以使所述车载工控机将所述下载请求转发至所述代码服务器,并获取所述代码服务器响应于所述下载请求返回的所述测试文件包。
85.在一些实施例中,所述系统还包括:测试管理平台,通过所述第二网络与所述车载工控机通信连接,用于将所述测试文件包的信息发送至测试操作员的客户端,以使得所述
车载工控机在接收到所述测试操作员的客户端发送的所述测试文件包的信息后为所述测试车辆从所述代码服务器下载对应的测试文件包。所述测试文件包的信息可以包括所述测试文件包的编号、所述测试文件包的描述信息、任务类型、与测试文件包相关的任务编号等用于确定所述测试文件包的信息。测试操作员可以基于测试文件包的信息,手动为测试车辆从代码服务器下载测试文件包,还可以在下载完成之后,基于测试文件包对测试车辆进行自动驾驶测试。测试操作员也可以手动将测试车辆上的车载工控机切换到第一无线网络或第二无线网络。
86.在一些实施例中,所述测试文件包为二进制包。
87.如图8所示,本公开实施例还提供一种软件部署装置,应用于测试车辆上的车载工控机,所述装置包括:
88.网络切换模块801,用于在测试车辆进入指定区域的情况下,从当前接入的第一网络切换到第二网络;所述第二网络的接入服务通过所述指定区域的无线网络接入点提供;
89.获取模块802,用于通过所述第二网络获取存储在代码服务器中的测试文件包;
90.解压模块803,用于响应于获取到所述测试文件包,对所述测试文件包进行解压。
91.在一些实施例中,所述测试文件包与所述测试车辆所执行的测试任务的任务编号相对应;所述获取模块包括:访问单元,用于通过所述第二网络访问所述代码服务器;下载单元,用于从所述代码服务器下载与所述任务编号相对应的测试文件包。
92.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接;所述装置还包括:发送模块,用于在接入所述第一网络的情况下,向所述车辆管理平台发送预设信息,所述预设信息与所述测试车辆所执行的测试任务相对应;接收模块,用于接收所述车辆管理平台基于所述预设信息返回的所述任务编号。
93.在一些实施例中,所述预设信息包括以下至少任一:所述指定区域的标识信息,所述测试车辆的标识信息,所述测试车辆所执行的测试任务的描述信息。
94.在一些实施例中,所述车载工控机通过所述第一网络与车辆管理平台通信连接,并通过所述第二网络与测试管理平台通信连接;所述获取模块包括:发送单元,用于通过所述第一网络向所述车辆管理平台发送所述测试车辆的信息,以使所述车辆管理平台将所述测试车辆的信息发送至所述测试管理平台,并使所述测试管理平台建立所述测试车辆的信息与对应测试文件包之间的关联关系;第一获取单元,用于通过所述第二网络获取所述代码服务器推送的测试文件包,其中,所述测试管理平台在所述车载工控机接入所述第二网络的情况下,通过所述无线网络接入点获取所述测试车辆的信息,并基于从所述无线网络接入点获取的所述测试车辆的信息和所述关联关系,通知所述代码服务器向所述车载工控机推送所述测试文件包。
95.在一些实施例中,所述装置还包括:删除模块,用于在获取所述测试文件包之后,通过所述第二网络向所述测试管理平台发送信息删除请求,以使所述测试管理平台删除所述测试车辆的信息与对应测试文件包之间的关联关系。
96.在一些实施例中,所述车载工控机与控制中心通信连接;所述获取模块包括:接收单元,用于接收所述控制中心发送的下载请求;转发单元,用于通过所述第二网络将所述下载请求转发至所述代码服务器;第二获取单元,用于获取所述代码服务器响应于所述下载请求返回的所述测试文件包。
97.在一些实施例中,所述测试文件包通过持续集成服务器发布并上传至所述代码服务器。
98.在一些实施例中,所述车载工控机通过所述第二网络与测试管理平台通信连接;所述获取模块包括:下载模块,用于所述车载工控机在接收到测试操作员的客户端发送的所述测试文件包的信息后,为所述测试车辆从所述代码服务器下载对应的测试文件包,所述测试文件包的信息通过所述测试管理平台预先发送至所述测试操作员的客户端。
99.在一些实施例中,所述测试文件包为二进制包。
100.在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
101.本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述任一实施例所述的方法。
102.图9示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器901、存储器902、输入/输出接口903、通信接口904和总线905。其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。
103.处理器901可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。处理器901还可以包括显卡,所述显卡可以是nvidia titan x显卡或者1080ti显卡等。
104.存储器902可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行。
105.输入/输出接口903用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
106.通信接口904用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
107.总线905包括一通路,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息。
108.需要说明的是,尽管上述设备仅示出了处理器901、存储器902、输入/输出接口903、通信接口904以及总线905,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
109.本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序
被处理器执行时实现前述任一实施例所述的方法。
110.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd

rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
111.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
112.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
113.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
114.以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献