1.本发明涉及智能汽车驾驶技术领域,特别涉及一种外部设备互联总线接口设备的探测方法及系统。
背景技术:
2.在自动驾驶领域,现场可编程门阵列(field-programmable gate array,fpga)被广泛使用,负责数据的采集,时间同步,算法融合等等,并且需要通过外部设备互联总线接口设备(peripheral component interface express,pcie)把处理后的数据传送给工控机进行进一步的决策、规划和控制处理。现有的工控机设备大多都不支持外部设备互联总线接口设备的热插拔,这样每次系统启动的时候,如果工控机的启动速度快于现场可编程门阵列的加载速度,会导致工控机无法识别到外部设备互联总线接口设备,在调试阶段频繁的更换现场可编程门阵列固件时,必须要重新启动工控机,非常不方便。
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.若所述停止信号的优先级低于所述启动指令的优先级,在接收到停止信号时,仍控制所述现场可编程门阵列发送心跳报文给工控机。
37.本发明另一方面保护一种外部设备互联总线接口设备的探测系统,用于实现如上所述外部设备互联总线接口设备的探测方法,所述系统包括:
38.第一检测模块,用于获取现场可编程门阵列发送给工控机的心跳报文,根据所述
心跳报文检测是否存在外部设备互联总线接口设备;
39.第二检测模块,用于若未检测到所述外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;
40.执行模块,用于若未检测到所述驱动信息,确定未安装所述热插拔驱动,则安装热插拔驱动;若检测到所述驱动信息,卸载所述热插拔驱动,并重新安装热插拔驱动;
41.确定模块,用于若检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备;
42.第三检测模块,用于检测是否存在所述热插拔驱动的安装完成信息。
43.本发明另一方面还一种计算机可读存储介质,所述计算机可读存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上所述的一种外部设备互联总线接口设备的探测方法。
44.实施本发明实施例,具有如下有益效果:
45.本发明在更换现场可编程门阵列固件时,能够根据所述心跳报文检测是否存在外部设备互联总线接口设备,在根据所述心跳报文未能检测到所述外部设备互联总线接口设备时,可安装热插拔驱动或卸载热插拔驱动再安装热插拔驱动,在检测到所述热插拔驱动的安装完成信息时,就能够确定检测到所述外部设备互联总线接口设备,这能够避免所述工控机在更换现场可编程门阵列后无法识别外部设备互联总线接口设备的情况发生;也能够避免调试阶段频繁更换现场可编程门阵列时需要不断重新启动工控机的情况出现,这缩短了调试阶段的时长,进而降低了生产成本。
附图说明
46.为了更清楚地说明本发明的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还能够根据这些附图获得其它附图。
47.图1为本实施例所述外部设备互联总线接口设备的探测方法的流程图;
48.图2为本实施例外部设备互联总线接口设备的探测系统的结构图。
49.其中,图中附图标记对应为:
50.1-第一检测模块;2-第二检测模块;3-执行模块;4-确定模块;5-第三检测模块。
具体实施方式
51.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
52.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或
描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
53.现有技术存在以下缺点:现有的工控机设备大多都不支持外部设备互联总线接口设备的热插拔,这样每次系统启动的时候,如果工控机的启动速度快于现场可编程门阵列的加载速度,会导致工控机无法识别到外部设备互联总线接口设备,在调试阶段频繁的更换现场可编程门阵列固件时,必须要重新启动工控机,非常不方便。
54.针对现有技术的缺陷,本发明在更换现场可编程门阵列固件时,能够根据所述心跳报文检测是否存在外部设备互联总线接口设备,在根据所述心跳报文未能检测到所述外部设备互联总线接口设备时,可安装热插拔驱动或卸载热插拔驱动再安装热插拔驱动,在检测到所述热插拔驱动的安装完成信息时,就能够确定检测到所述外部设备互联总线接口设备,这能够避免所述工控机在更换现场可编程门阵列后无法识别外部设备互联总线接口设备的情况发生;也能够避免调试阶段频繁更换现场可编程门阵列时需要不断重新启动工控机的情况出现,这缩短了调试阶段的时长,进而降低了生产成本。
55.实施例1
56.参见附图1~图2,本实施例提供了一种外部设备互联总线接口设备的探测方法,包括:
57.s101:获取现场可编程门阵列发送给工控机的心跳报文;
58.s102:根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备;
59.s103:若未检测到外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;
60.s104:若未检测到驱动信息,则安装热插拔驱动;若检测到驱动信息,则卸载热插拔驱动,并重新安装热插拔驱动;
61.s105:检测是否存在热插拔驱动的安装完成信息;
62.s106:若检测到安装完成信息,确定检测到外部设备互联总线接口设备。
63.需要说明的是:现有技术中由于外部设备互联总线接口设备不支持热插拔机制,导致在工控机启动速度过快,或者更换现场可编程门阵列时不重启工控机的情况,都会出现无法识别到外部设备互联总线接口设备的情况;而本实施例在更换现场可编程门阵列固件时,能够根据心跳报文检测是否存在外部设备互联总线接口设备,在根据心跳报文未能检测到外部设备互联总线接口设备时,可安装热插拔驱动或卸载热插拔驱动再安装热插拔驱动,在检测到热插拔驱动的安装完成信息时,就能够确定检测到外部设备互联总线接口设备,这能够避免所述工控机在更换现场可编程门阵列后无法识别外部设备互联总线接口设备的情况发生;也能够避免调试阶段频繁更换现场可编程门阵列时需要不断重新启动工控机的情况出现,这缩短了调试阶段的时长,进而降低了生产成本。
64.在一些可能的实施例中,若检测到安装完成信息,确定检测到外部设备互联总线接口设备的步骤之后还包括:
65.s107:若未检测到安装完成信息,重新执行卸载热插拔驱动,并重新安装热插拔驱
动的步骤,至检测到安装完成信息,确定检测到外部设备互联总线接口设备。
66.在其他可能实施例中,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤包括:
67.s1021:检测心跳报文是否携带外部设备互联总线接口设备的识别信息;
68.s1022:若携带识别信息,确定检测到外部设备互联总线接口设备;
69.s1023:若未携带识别信息,确定未检测到外部设备互联总线接口设备;其中,工控机与外部设备互联总线接口设备链路连接后,现场可编程门阵列的心跳报文中携带外部设备互联总线接口设备的识别信息。
70.具体地,当在工控机内配置热插拔驱动后,能够获取到热插拔驱动的驱动信息;当工控机内未配置热插拔驱动时,则获取不到热插拔驱动的驱动信息。
71.在一些可能的实施例中,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤之后还包括:
72.s1024:若检测到外部设备互联总线接口设备,重新执行获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤,在本实施例中能够实时接收心跳报文,避免频繁更换现场可编程门阵列时,造成工控机仍存储更换前的检测结果,这会造成调试结果不准确。
73.在另一些可能的实施例中,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤之后还包括:
74.s1024:若检测到外部设备互联总线接口设备,发送停止指令给工控机,以控制工控机给现场可编程门阵列发送停止信号,以使现场可编程门阵列停止发送心跳报文,此步骤对应的场景为只需要更换一次现场可编程门阵列,这能够避免不断接收心跳报文而造成资源的浪费。
75.在一些可能的实施例中,获取现场可编程门阵列发送给工控机的心跳报文的步骤包括:
76.s100:获取车辆的工况;其中,工况包括车辆运行工况和车辆调试工况;
77.若车辆处于车辆运行工况时,不发送启动指令给工控机;
78.若车辆处于车辆调试工况时,发送启动指令给工控机,并获取现场可编程门阵列发送给工控机的心跳报文,本实施例中只在车辆处于调试工况时,才进行获取心跳报文,能够避免在车辆运行工况下获取心跳报文,造成的资源浪费。
79.在其他可能的实施例中,现场可编程门阵列与工控机建立通信连接;获取现场可编程门阵列发送给工控机的心跳报文的步骤还包括:
80.工控机发送内存地址和预设频率至现场可编程门阵列,以使现场可编程门阵列以预设频率将心跳报文写入到内存地址;
81.工控机以预设频率周期读取内存地址的内容,并根据预设心跳报文信息判断内容是否是心跳报文,如果此次获取到的心跳报文与预设心跳报文信息一致,确认现场可编程门阵列心跳正常,如果不一致,确认现场可编程门阵列心跳异常。
82.具体地,若确认现场可编程门阵列心跳异常,则重新执行工控机以预设频率周期读取内存地址的内容,并根据预设心跳报文信息判断内容是否是心跳报文的步骤,至确认现场可编程门阵列心跳正常;
83.若确认现场可编程门阵列心跳正常,则根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备,这能够剔除在现场可编程门阵列心跳异常的相关数据,避免使用现场可编程门阵列心跳异常数据导致检测结果出现偏差,这在一定程度上提高了检测精度。
84.在其他可能的实施例中,工控机与现场可编程门阵列通过外部设备互联总线接口设备链路相连,现场可编程门阵列与现场可编程门阵列配置存储器相连,现场可编程门阵列配置存储器中保存由现场可编程门阵列更换所需的配置数据;若车辆处于所述车辆调试工况时,发送启动指令给工控机,并获取现场可编程门阵列发送给工控机的心跳报文的步骤包括:
85.车辆处于车辆调试工况时,控制工控机向现场可编程门阵列发送更换指令;
86.控制工控机卸载当前现场可编程门阵列对应的外部设备互联总线接口设备驱动程序,使外部设备互联总线接口设备链路的状态变为断开状态,以使当前现场可编程门阵列与工控机断开连接,并控制将待更换的现场可编程门阵列与工控机通信连接;
87.发送启动指令给工控机,并获取待更换的现场可编程门阵列发送给工控机的心跳报文,避免要卸载的当前现场可编程门阵列给工控机发送心跳报文,导致后续检测的结果出现偏差,这在一定程度上提高了检测精度。
88.在一些可能的实施例中,检测到安装完成信息,确定检测到外部设备互联总线接口设备的步骤包括:
89.s1051:控制热插拔驱动复位外部设备互联总线接口设备的控制器;
90.s1052:控制外部设备互联总线接口设备与工控机链路连接;
91.s1053:控制热插拔驱动检测外部设备互联总线接口设备;
92.s1054:若热插拔驱动检测到外部设备互联总线接口设备,发送安装完成信息;
93.s1055:检测是否接收到安装完成信息;
94.s1056:若接收到安装完成信息,确定检测到外部设备互联总线接口设备。在本实施例中只要检测到安装完成信息即能够确定存在外部设备互联总线接口设备,这减少了检测步骤,避免检测步骤过多造成调试过程中出现卡顿,而影响调试时间。
95.具体地,安装完成信息中携带检测外部设备互联总线接口设备的信息。
96.在一些可能的实施例中,卸载热插拔驱动的步骤包括:
97.s1041:控制热插拔驱动移除检测到的外部设备互联总线接口设备,并关闭外部设备互联总线接口设备的控制器,通过卸载以往检测到的外部设备互联总线接口设备,避免影响最终检测结果,而导致出现检测偏差。
98.在一些可能的实施例中,若未检测到外部设备互联总线接口设备的步骤包括:
99.s1031:若未检测到外部设备互联总线接口设备,发送停止指令给工控机,以控制工控机给现场可编程门阵列发送停止信号;根据停止信号,控制现场可编程门阵列停止发送心跳报文给工控机,以使现场可编程门阵列停止发送心跳报文;
100.或,s1031:若未检测到外部设备互联总线接口设备,重新执行获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤。
101.在一些可能的实施例中,方法还包括:
102.s109:获取停止信号和启动指令的优先级;
103.s109:若停止信号的优先级高于启动指令的优先级,在接收到停止信号时,控制现场可编程门阵列停止发送心跳报文给工控机;
104.s1010:若停止信号的优先级低于启动指令的优先级,在接收到停止信号时,仍控制现场可编程门阵列发送心跳报文给工控机。
105.在一些可能的实施例中,当本实施例的应用场景为只更换一次现场可编程门阵列固件时,只需要接收一次心跳报文即可,故将停止信号的优先级设置高于启动指令的优先级,这能够避免不断接收心跳报文而造成资源的浪费。
106.在另一些可能的实施例中,当本实施例的应用场景为多次更换现场可编程门阵列固件时,就需要接收多次心跳报文,此时在接收到停止信号时,有可能多次更换现场可编程门阵列固件的操作还未完成,故此时将停止信号的优先级设置为低于启动指令的优先级,即使接收到停止信号,仍能控制现场可编程门阵列发送心跳报文给工控机;这能够通过预先设置优先级来满足不同应用场景,避免浪费测试资源,也能够缩短调试时间。
107.在另一些可能的实施例中,确定检测到外部设备互联总线接口设备的步骤之后还包括:
108.根据检测到外部设备互联总线接口设备的信息,生成并展示第一提示信息;第一提示信息用于提示检测到外部设备互联总线接口设备;
109.未获取到安装完成信息的步骤之后还包括:
110.根据未检测到外部设备互联总线接口设备的信息,生成并展示第二提示信息;第二提示信息用于提示未检测到外部设备互联总线接口设备;其中,第一提示信息和第二提示信息为声音信息、图片信息或文字信息等;展示第一提示信息和第二提示信息能够提示测试人员,进而及时做出相应的操作,这在一定程度上也能够缩短调试时间。
111.在一些可能的实施例中,为了实现避免调试阶段频繁更换现场可编程门阵列时需要不断重新启动工控机的情况出现,并缩短调试阶段的时长,外部设备互联总线接口设备的探测方法具体包括:
112.s100:获取车辆的工况;其中,工况包括车辆运行工况和车辆调试工况;若车辆处于车辆运行工况时,不发送启动指令给工控机;若车辆处于车辆调试工况时,发送启动指令给工控机,此时工控机获取现场可编程门阵列发送的心跳报文;
113.s101:获取现场可编程门阵列发送给工控机的心跳报文;
114.s1021:检测心跳报文是否携带外部设备互联总线接口设备的识别信息;
115.s1022:若携带识别信息,确定检测到外部设备互联总线接口设备;
116.s1023:若未携带识别信息,确定未检测到外部设备互联总线接口设备;
117.s1024:若检测到外部设备互联总线接口设备,重新执行获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤;或,若检测到外部设备互联总线接口设备,发送停止指令给工控机,以控制工控机给现场可编程门阵列发送停止信号,以使现场可编程门阵列停止发送心跳报文;
118.s103:若未检测到外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;
119.s104:若未检测到驱动信息,则安装热插拔驱动;若检测到驱动信息,控制热插拔驱动移除检测到的外部设备互联总线接口设备,并关闭外部设备互联总线接口设备的控制器,并重新安装热插拔驱动;
120.s1051:控制热插拔驱动复位外部设备互联总线接口设备的控制器;
121.s1052:控制外部设备互联总线接口设备与工控机链路连接;
122.s1053:控制热插拔驱动检测外部设备互联总线接口设备;
123.s1054:若热插拔驱动检测到外部设备互联总线接口设备,发送安装完成信息;
124.s1055:检测是否接收到安装完成信息;
125.s1056:若接收到安装完成信息,确定检测到外部设备互联总线接口设备;
126.s107:若未检测到安装完成信息,重新执行卸载热插拔驱动,并重新安装热插拔驱动的步骤,至检测到安装完成信息,确定检测到外部设备互联总线接口设备。
127.本发明另一方面保护一种外部设备互联总线接口设备的探测系统,用于实现如上外部设备互联总线接口设备的探测方法,系统包括:
128.第一检测模块1,用于获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备;
129.第二检测模块2,用于若未检测到外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;
130.执行模块3,用于若未检测到驱动信息,确定未安装热插拔驱动,则安装热插拔驱动;若检测到驱动信息,卸载热插拔驱动,并重新安装热插拔驱动;
131.确定模块4,用于若检测到安装完成信息,确定检测到外部设备互联总线接口设备;
132.第三检测模块5,用于检测是否存在热插拔驱动的安装完成信息。
133.需要说明的是:上述系统能够避免所述工控机在更换现场可编程门阵列后无法识别外部设备互联总线接口设备的情况发生;也能够避免调试阶段频繁更换现场可编程门阵列时需要不断重新启动工控机的情况出现,这缩短了调试阶段的时长,进而降低了生产成本。
134.在一些可能的实施例中,确定模块4还用于若未获取到安装完成信息,重新执行卸载热插拔驱动,并重新安装热插拔驱动的步骤,至获取到安装完成信息,确定检测到外部设备互联总线接口设备。
135.外部设备互联总线接口设备的探测系统还包括:
136.第一获取模块,用于获取车辆的工况;其中,工况包括车辆运行工况和车辆调试工况;
137.第一控制模块,用于若车辆处于车辆运行工况时,不发送启动指令给工控机;若车辆处于车辆调试工况时,发送启动指令给工控机,并获取现场可编程门阵列发送给工控机的心跳报文;
138.第四检测模块,用于若检测到外部设备互联总线接口设备,重新执行获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤;或,若检测到外部设备互联总线接口设备,发送停止指令给工控机,以控制工控机给现场可编程门阵列发送停止信号,以使现场可编程门阵列停止
发送心跳报文;
139.第二控制模块,用于若未检测到外部设备互联总线接口设备,控制工控机给现场可编程门阵列发送停止信号;
140.第三控制模块,用于根据停止信号,控制现场可编程门阵列停止发送心跳报文给工控机;
141.第二获取模块,用于检测是否存在热插拔驱动的驱动信息;
142.第四控制模块,用于控制热插拔驱动移除检测到的外部设备互联总线接口设备,并关闭外部设备互联总线接口设备的控制器;
143.第三获取模块,用于获取停止信号和启动指令的优先级;
144.第五控制模块,用于若停止信号的优先级高于启动指令的优先级,在接收到停止信号时,控制现场可编程门阵列停止发送心跳报文给工控机;若停止信号的优先级低于启动指令的优先级,在接收到停止信号时,仍控制现场可编程门阵列发送心跳报文给工控机。
145.外部设备互联总线接口设备的探测系统还包括:警示模块、显示模块和操作模块;
146.警示模块与确定模块4通信连接,警示模块能够通过确定模块4确定是否存在外部设备互联总线接口设备,并在未检测到外部设备互联总线接口设备时,展示第二提示信息;在检测到外部设备互联总线接口设备时,展示第一提示信息;展示第一提示信息和第二提示信息能够提示测试人员,进而及时做出相应的操作,这在一定程度上也能够缩短调试时间;
147.显示模块与第一控制模块通信连接,显示模块能够将测试人员的操作信息发送给第一控制模块,以确定车辆此时的工况,进而确定是否进行调试操作,使调试过程更快捷。
148.本发明另一方面还保护一种计算机可读存储介质,计算机可读存储介质包括处理器和存储器,存储器中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行以实现如上的一种外部设备互联总线接口设备的探测方法。
149.计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本技术的各个方面的计算机可读程序指令。
150.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
151.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计
算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
152.用于执行本技术操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(现场可编程门阵列)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本技术的各个方面。
153.这里参照根据本技术实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本技术的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
154.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
155.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
156.附图中的流程图和框图显示了根据本技术的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
157.以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨
在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
158.在不冲突的情况下,本文中上述实施例及实施例中的特征能够相互结合。
159.以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
技术特征:
1.一种外部设备互联总线接口设备的探测方法,其特征在于,包括:获取现场可编程门阵列发送给工控机的心跳报文;根据所述心跳报文检测是否存在外部设备互联总线接口设备;若未检测到所述外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;若未检测到所述驱动信息,则安装热插拔驱动;若检测到所述驱动信息,则卸载所述热插拔驱动,并重新安装热插拔驱动;检测是否存在所述热插拔驱动的安装完成信息;若检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备。2.根据权利要求1所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述若检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备的步骤之后还包括:若未检测到所述安装完成信息,重新执行卸载所述热插拔驱动,并重新安装热插拔驱动的步骤,至检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备。3.根据权利要求1所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤之后还包括:若检测到所述外部设备互联总线接口设备,重新执行获取现场可编程门阵列发送给工控机的心跳报文,根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤;或,若检测到所述外部设备互联总线接口设备,发送停止指令给所述工控机,以控制所述工控机给所述现场可编程门阵列发送停止信号,以使所述现场可编程门阵列停止发送心跳报文。4.根据权利要求3所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述获取现场可编程门阵列发送给工控机的心跳报文的步骤包括:获取车辆的工况;其中,所述工况包括车辆运行工况和车辆调试工况;若车辆处于所述车辆运行工况时,不发送启动指令给所述工控机;若车辆处于所述车辆调试工况时,发送启动指令给所述工控机,并获取现场可编程门阵列发送给工控机的心跳报文。5.根据权利要求1所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述根据现场可编程门阵列的心跳报文检测是否存在外部设备互联总线接口设备的步骤包括:检测心跳报文是否携带所述外部设备互联总线接口设备的识别信息;若携带所述识别信息,确定检测到所述外部设备互联总线接口设备;若未携带所述识别信息,确定未检测到所述外部设备互联总线接口设备;其中,所述工控机与所述外部设备互联总线接口设备链路连接后,现场可编程门阵列的心跳报文中携带外部设备互联总线接口设备的识别信息。6.根据权利要求1所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述若检测到安装完成信息,确定检测到外部设备互联总线接口设备的步骤包括:控制所述热插拔驱动复位所述外部设备互联总线接口设备的控制器;
控制所述外部设备互联总线接口设备与所述工控机链路连接;控制所述热插拔驱动检测所述外部设备互联总线接口设备;若所述热插拔驱动检测到所述外部设备互联总线接口设备,发送安装完成信息;若检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备。7.根据权利要求1所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述卸载热插拔驱动的步骤包括:控制所述热插拔驱动移除检测到的外部设备互联总线接口设备,并关闭所述外部设备互联总线接口设备的控制器。8.根据权利要求4所述的一种外部设备互联总线接口设备的探测方法,其特征在于,所述方法还包括:获取所述停止信号和所述启动指令的优先级;若所述停止信号的优先级高于所述启动指令的优先级,在接收到停止信号时,控制所述现场可编程门阵列停止发送心跳报文给工控机;若所述停止信号的优先级低于所述启动指令的优先级,在接收到停止信号时,仍控制所述现场可编程门阵列发送心跳报文给工控机。9.一种外部设备互联总线接口设备的探测系统,其特征在于,用于实现如权利要求1-8任意一项所述外部设备互联总线接口设备的探测方法,所述系统包括:第一检测模块,用于获取现场可编程门阵列发送给工控机的心跳报文,根据所述心跳报文检测是否存在外部设备互联总线接口设备;第二检测模块,用于若未检测到所述外部设备互联总线接口设备,检测是否存在热插拔驱动的驱动信息;执行模块,用于若未检测到所述驱动信息,确定未安装所述热插拔驱动,则安装热插拔驱动;若检测到所述驱动信息,卸载所述热插拔驱动,并重新安装热插拔驱动;确定模块,用于若检测到所述安装完成信息,确定检测到所述外部设备互联总线接口设备;第三检测模块,用于检测是否存在所述热插拔驱动的安装完成信息。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-8任一项所述的一种外部设备互联总线接口设备的探测方法。
技术总结
本发明涉及智能汽车驾驶技术领域,具体是一种外部设备互联总线接口设备的探测方法及系统,方法包括:获取FPGA发送给工控机的心跳报文;根据FPGA的心跳报文检测是否存在PCIE;若未检测到PCIE,检测是否存在PCIE热插拔驱动的驱动信息;若未检测到驱动信息,确定未安装PCIE热插拔驱动,则安装PCIE热插拔驱动;若检测到驱动信息,卸载PCIE热插拔驱动,并重新安装PCIE热插拔驱动;若检测到安装完成信息,确定检测到PCIE;本发明能够避免工控机在更换FPGA后无法识别PCIE的情况发生;也避免调试阶段频繁更换FPGA时需要不断重启工控机,这缩短了调试阶段的时长,进而降低了生产成本。进而降低了生产成本。进而降低了生产成本。
技术研发人员:李丰军 周剑光 周脉成
受保护的技术使用者:中汽创智科技有限公司
技术研发日:2021.11.29
技术公布日:2022/3/8