具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本申请提供一种车辆状态的监测方法、装置、设备以及存储介质,应用于数据处理领域中的智能驾驶、自动泊车、智能交通技术,以提升车辆状态监测的运行效率。
在自动泊车场景中,车辆状态的变化较为频繁。下面结合图1对自动泊车场景中的车辆状态的变化情况进行描述。
图1为自动泊车场景的示意图。图1示例的是平行泊车的场景。如图1所示,车内驾驶员启动平行泊车功能后,车辆在前进过程中通过多种传感器对空闲停车位进行扫描检测,该过程中车辆状态为状态1“寻找停车位”。车辆找到停车位后,车辆状态切换为状态2“找到停车位需要停车挂倒档”,该状态下需要车内驾驶员执行停车并挂倒档的操作。当检测到驾驶员挂倒档后,车辆状态切换为状态3“倒车”,该状态中,车辆按照规划的倒车路线进行倒车。当车辆与后面车辆保持一定距离后,车辆状态切换为状态4“需要挂前进档”。当检测到驾驶员挂前进档后,车辆向前移动一定距离,以使车辆位于停车位中间,车辆状态切换为状态5“泊车结束需要停车”。当检测到驾驶员停车后,本次泊车完成。
由图1可见,在车辆自动泊车过程中,车辆状态的切换较为频繁,且不同车辆状态之间的切换可能需要驾驶员进行换档、停车等操作。因此,在自动泊车场景中,可以对车辆状态进行监测,并将监测到的车辆状态通知给车内驾驶员,以告知当前的泊车阶段,并提醒驾驶员在合适的时机进行预设操作,从而顺利完成泊车过程。
需要说明的是,图1是以平行泊车场景为例进行示意,本申请还可以应用于其他泊车场景,例如:垂直泊车、泊出辅助等。当然,本申请还可以应用于非泊车的智能驾驶场景中。另外,图1中的所示例的各个车辆状态仅为示意,实际应用中,可以包括更多的车辆状态,车辆状态的名称也可以为其他名称,本申请对此不作限定。
本申请实施例中车辆状态的监测过程可以由车机执行。车机指的是安装在车辆中的车载信息娱乐产品的简称,车机在功能上能够实现人与车,车与外界(车与车)的信息通讯。
图2为本申请提供的车机通信网络的示意图。如图2所示,车辆中安装多个传感器,这些传感器接入车辆的控制器局域网络(Controller Area Network,CAN)中。车机也接入CAN网络中,车机通过CAN网络对多个传感器采集的信号进行监听,并根据监听到的信号,识别得到车辆状态。
示例性的,上述多个传感器包括但不限于:方向盘传感器、胎压传感器、档位传感器、雷达传感器等。
其中,上述多个传感器采集的数据对应一组信号,车辆状态由这一组信号决定。当这一组信号取值不同时,对应的车辆状态也不同。以三个信号为例,当三个信号取值分别为A1、B1、C1时,对应的车辆状态为状态1;当三个信号取值分别为A2、B1、C1时,对应的车辆状态为状态2;当三个信号取值分别为A3、B1、C1时,对应的车辆状态为状态3;当三个信号取值分别为A1、B2、C1时,对应的车辆状态为状态4,等。
现有技术中,在监测车辆状态时,需要对这一组信号中的每个信号的取值分别进行判断,然后根据这一组信号的判断结果确定出当前车辆状态。结合上述三个信号的举例,首先判断信号1的取值,若信号1的取值为A1,则继续判断信号2的取值,若信号2的取值为B1,则继续判断信号3的取值,若信号3的取值为C1,则确定车辆状态为状态1。
不难理解,由于每个信号的取值可能有多种,当决定车辆状态的信号数量较多时,采用上述方式会使得代码中出现较多的判断分支,并且这些判断分支可能存在多层嵌套的情况,使得代码复杂度较高,可维护性较低,进而导致车辆状态监测的运行效率较低。
为了解决上述技术问题,本申请提供一种车辆状态的监测方法,在车辆泊车过程中获取多个信号,通过对多个信号作为整体进行运算处理,得到运算结果,进而根据运算结果确定车辆的当前状态。该过程中,无需针对每个信号的取值分别进行判断,代码中不会出现较多的判断分支,降低了代码复杂度,提升监测车辆状态的运行效率。
下面结合几个具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图3为本申请提供的一种车辆状态的监测方法的流程示意图。本实施例的方法可以由车机执行。如图3所示,本实施例的方法包括:
S301:在车辆泊车过程中获取多个第一信号,所述多个第一信号由所述车辆的多个传感器采集得到。
其中,车辆泊车过程包括但不限于:水平泊车、垂直泊车、泊出辅助等场景。
示例性的,上述多个传感器包括但不限于:方向盘传感器、胎压传感器、档位传感器、雷达传感器等。方向盘传感器用于采集方向盘的状态,胎压传感器用于采集车辆轮胎压力的状态,档位传感器用于采集车辆的当前档位状态,雷达传感器用于采集车辆与障碍物之间的距离信息,等。
结合图2所示的网络架构,上述传感器接入到车辆的CAN网络中。CAN网络中包括车辆控制器。传感器采集的数据被传输至车辆控制器。车辆控制器可以对这些传感器采集的数据进行分析,并根据分析结果控制车辆的行驶。
本实施例中,车机也接入到CAN网络中。车机从车辆控制器获取多个第一信号。其中,多个第一信号是由上述传感器采集得到的。应理解,本实施例中的第一信号可以是传感器采集得到的原始数据,还可以是车辆控制器对传感器采集的原始数据进行处理后得到的信号。
一些示例中,上述多个第一信号可以包括下述中的一种或者多种:用于指示方向盘状态的信号、用于指示车辆与障碍物之间距离的信号、用于指示车辆胎压的信号、用于指示车辆档位状态的信号,等。
S302:对所述多个第一信号进行运算处理,得到运算结果。
其中,运算处理可以包括下述中的一种或者多种:算术运算、位运算、逻辑运算、字符串运算等。
运算处理的结果可以为数值类型、字符串类型等。
能够理解,本实施例中,将多个第一信号作为整体进行运算处理,使得得到的运算结果中包含了多个第一信号的取值特征,也就是说,该运算结果即可代表多个第一信号的取值,因此,在步骤S303中可以根据该运算结果确定出车辆的当前状态。
一种可能的实现方式中,在对多个第一信号进行运算处理之前,还可以包括:
确定本次获取的多个第一信号中的至少一个第一信号与上次获取的对应信号不同。
具体的,车机可以按照预设时间间隔从CAN网络获取多个第一信号,每次获取到多个第一信号之后,将本次获取的与上次获取的进行比对,若其中任意一个或者多个第一信号发生变化,则执行S302。若本次获取的多个第一信号与上次获取的均相同,则不必执行S302,这样可以进一步提高监测车辆状态的运行效率。
S303:根据所述运算结果,确定所述车辆的当前状态,所述当前状态用于指示所述车辆当前所处的泊车阶段。
其中,当前状态可以为下述中的一种:正在寻找停车位、找到停车位需要停车、需要挂倒档、倒车、需要挂前进档、正在前进、泊车完成等。
一些可能的实现方式中,可以通过将运算结果与数据库进行匹配的方式,确定出车辆的当前状态。具体的,数据库中存储多个特征标识以及每个特征标识对应的状态。将运算结果与数据库中存储的多个特征标识进行匹配,将与运算结果匹配的特征标识所对应的状态确定为车辆的当前状态。
应理解,上述方式中,数据库中的每个状态对应的特征标识是通过对该状态对应的一组信号进行运算处理得到的。应理解,此处的运算处理与S302中的运算处理是相同的运算处理。另外,每个特征标识可以是数值类型,也可以为字符串类型。例如,当S302中得到的运算结果为数值类型时,数据库中存储的特征标识也为数值类型。当S302中得到的运算结果为字符串类型时,数据库中存储的特征标识也为字符串类型。
本实施例中,不需要对每个第一信号分别进行判断,而是将多个第一信号作为整体进行运算处理,得到运算结果,进而根据该运算结果确定车辆的当前状态。这样,在代码中不会出现较多的判断分支,降低了代码复杂度,提升监测车辆状态的运行效率。
一些示例中,确定出车辆的当前状态后,可以采用多种方式将该当前状态告知车内驾驶员。例如,可以通过显示屏显示该当前状态,还可以通过扬声器语音播放该当前状态。这样,车内驾驶员可以及时获知到车辆当前所处的泊车阶段,进而使驾驶员及时配合执行换挡、停车等操作,使得泊车过程能够顺利完成。
本实施例提供的车辆状态的监测方法,包括:在车辆泊车过程中获取多个第一信号,所述多个第一信号由所述车辆的多个传感器采集得到,对所述多个第一信号进行运算处理,得到运算结果,并根据运算结果,确定车辆的当前状态,所述当前状态用于指示车辆当前所处的泊车阶段。上述过程中,通过将多个第一信号作为整体进行运算处理,得到运算结果,进而根据该运算结果确定车辆的当前状态,使得无需对每个第一信号的取值分别进行判断,在代码中不会出现较多的判断分支,降低了代码复杂度,提升监测车辆状态的运行效率。
在上述实施例的基础上,下面结合几个具体的实施例对本申请技术方案进行更详细的描述。
图4为本申请提供的另一种车辆状态的监测方法的流程示意图。本实施例中对多个第一信号进行的运算处理采用的是位运算。如图4所示,本实施例的方法包括:
S401:在车辆泊车过程中获取多个第一信号,所述多个第一信号由所述车辆的多个传感器采集得到。
应理解,S401的具体实施方式与图3中的S301类似,此处不作赘述。
S402:获取每个第一信号对应的移位数。
S403:根据每个第一信号对应的移位数,对每个第一信号进行移位运算,并对所述多个第一信号的移位运算结果进行位或运算,得到运算结果。
由于本申请应用场景中,多个第一信号的取值通常为离散值,并且,多个第一信号之间彼此独立,为了使多个第一信号的运算结果能够体现出每个第一信号的取值特征,本实施例采用位运算方式,其中,位运算包括移位运算和位或运算。
可选的,移位运算可以采用左移位运算,也可以采用右移位运算。
本实施例中,每个第一信号对应的取值为数值类型。例如,可以为二进制、十进制、八进制、十六进制等数值。为了便于对第一信号进行移位运算,可以将每个第一信号转换为二进制数。
每个第一信号对应的移位数不同。每个第一信号经过移位处理后在运算结果中占据不同的比特位。
图5为本申请提供的运算结果与各第一信号占据的比特位的示意图。示例性的,假设第一信号的数量为n,n个第一信号分别为:T0、T1、T2、…、Tn-1。经过运算处理后,T0占据运算结果的高比特位,Tn-1占据运算结果的低比特位。并且,各个第一信号在运算结果中占据的比特位没有交集。因此,运算结果中能够体现出所有第一信号的取值特征。
一个示例中,采用左移位运算时,可以采用如下方式确定每个第一信号对应的移位数:按照T0、T1、T2、…、Tn-1的顺序,第一信号Ti对应的移位数大于或者等于Ti+1~Tn-1中每个第一信号的最大取值所对应的二进制位数。
例如,Tn-1的移位数为0,即Tn-1不进行移位运算。假设Tn-1的最大取值对应4个二进制位数,即Tn-1的取值范围为十六进制0~F,则Tn-2的移位数可以为4。假设Tn-2的最大取值对应4个二进制位数,即Tn-2的取值范围为十六进制0~F,则Tn-3的移位数可以为8。假设Tn-3的最大取值对应8个二进制位数,即Tn-3的取值范围为十六进制0~FF,则Tn-4的移位数可以为16。依次类推,按照该方式可以确定出每个第一信号对应的移位数。
为了便于示例,假设每个第一信号的取值范围均为十六进制0~F,则可以采用如下公式对n个第一信号进行运算:
F=T0<<[(n-1)*4]|T1<<[(n-2)*4]|...|Tn-2<<4|Tn-1
也就是说,Tn-1不进行左移位运算,Tn-2左移位4位,Tn-3左移位8位,依次类推,T0左移位(n-1)*4位,然后,对上述移位结果进行位或运算,得到运算结果F。
另一个示例中,采用右移位运算时,可以采用如下方式确定每个第一信号对应的移位数:按照T0、T1、T2、…、Tn-1的顺序,第一信号Ti对应的移位数大于或者等于T0~Ti-1中每个第一信号的最大取值所对应的二进制位数。
例如,T0的移位数为0,即T0不进行移位运算。假设T0的最大取值对应4个二进制位数,即T0的取值范围为十六进制0~F,则T1的移位数可以为4。假设T1的最大取值对应4个二进制位数,即T1的取值范围为十六进制0~F,则T2的移位数可以为8。假设T2的最大取值对应8个二进制位数,即T2的取值范围为十六进制0~FF,则T3的移位数可以为16。依次类推,按照该方式可以确定出每个第一信号对应的移位数。
为了便于示例,假设每个第一信号的取值范围均为十六进制0~F,则可以采用如下公式对n个第一信号进行运算:
F=Tn-1>>[(N-1)*4]|Tn-2>>[(n-2)*4]|...|T1>>4|T0
也就是说,T0不进行右移位运算,T1右移位4位,T2右移位8位,依次类推,Tn-1右移位(n-1)*4位,然后,对上述移位结果进行位或运算,得到运算结果F。
S404:将所述运算结果与数据库中存储的多个数值进行匹配,其中,每个数值对应一种状态,并将与运算结果匹配的数值所对应的状态,确定为车辆的当前状态。
上述方式中,数据库中存储了不同状态所对应的数值,该数值是通过对该状态对应的一组信号进行运算处理得到的。应理解,此处的运算处理与S403中的运算处理是相同的运算处理。这样,通过将S403中得到的运算结果与数据库中存储的数值进行匹配,即可确定出车辆的当前状态。
下面结合图6对本申请提供的车辆状态的监测过程进行举例说明。图6为本申请提供的一种车辆状态的监测过程的示意图。如图6所示,假设车机从CAN网络中获取到n个信号,分别为信号T0、信号T1、信号T2、…、信号Tn。假设每个信号的取值范围为十六进制0~F。
参见图6,可以采用如下公式对n个信号进行运算处理,得到运算结果F。
F=T0<<[(n-1)*4]|T1<<[(n-2)*4]|...|Tn-2<<4|Tn-1
然后,继续参见图6,将运算结果F与数据库中存储的数值进行匹配处理。假设运算结果F与数值2匹配成功,则将数值2对应的状态作为车辆的当前状态,即,车辆的当前状态为状态2。
通过上述监测过程,无需对每个信号的取值分别进行判断,在代码中不会出现较多的判断分支,降低了代码复杂度。另外,由于位运算相比判断分支具有较高的执行效率,因此,本实施例能够提升监测车辆状态的运行效率。
一些可能的实现方式中,在确定出车辆的当前状态之后,还可以继续执行S405。
S405:通过显示屏对所述当前状态进行显示。
一些场景中,车机具有显示屏,车机通过显示屏对监测到的车辆状态进行显示。
另一些场景中,车机可以与显示设备连接,车机将监测到的车辆状态发送给显示设备,由显示设备对车辆状态进行显示。其中,显示设备可以为车载显示设备,还可以为用户终端设备。
一种可能的实现方式中,根据当前状态,获取与当前状态对应的文本信息和/或图片信息,通过显示屏对文本信息和/或图片信息进行显示。
文本信息和/或图片信息可用于告知车内驾驶员车辆当前所处的泊车阶段,还可用于提醒驾驶员进行预设操作,例如停车、换档等操作。
图7为本申请提供的一个显示界面的示意图。如图7所示,该显示界面中包括文本区域和图片区域。其中,文本区域的数量可以为一个或者多个,图片区域的数量可以为一个或者多个。文本区域用于显示与当前状态对应的文本信息,图片区域用于显示与当前状态对应的图片信息。
可选的,该显示界面中还可以包括多个操作控件,例如:平行泊车控件、垂直泊车控件和泊出辅助控件。车内驾驶员可以通过操作这些控件触发相应的泊车流程。
需要说明的是,不同车辆状态对应的文本信息和图片信息是不同的,本实施例对于显示界面中的文本信息和图片信息的内容不作具体限定。下面结合图8和图9给出两个可能的示例。
图8为本申请提供的另一个显示界面的示意图。图8示例的是泊出辅助功能对应的一个显示界面。例如,当车机检测到车内驾驶员操作泊出辅助控件后,车机通过执行图2或者图4所示的车辆状态监测方法,确定车辆的当前状态为需要挂D档,则通过显示屏显示如图8所示的显示界面。该界面中的左侧区域的文字信息“请换至D档”以及左侧区域的图片信息用来提醒驾驶员进行换档操作。该界面中右侧区域的图片信息用于展示车辆与周围障碍物之间的位置关系。通过图8所示的展示界面,使得车内驾驶员可以直观了解到车辆当前状态,并及时配合执行相应的操作,以快速完成泊出辅助流程。
图9为本申请提供的又一个显示界面的示意图。图9示例的是平行泊车功能对应的一个显示界面。例如,车辆在寻找停车位过程中,车机通过执行图2或图4所示的车辆状态监测方法,确定车辆的当前状态为找到停车位,则通过显示屏显示如图9所示的显示界面。该界面中的左侧区域的文字信息“找到停车位”用于提醒驾驶员车辆当前状态为找到停车位。该界面中的左侧区域的文字信息“停车”以及左侧区域的图片信息用于提醒驾驶员进行停车操作,以便车辆进行后续的泊车流程。该界面中右侧区域的图片信息用于展示车辆与障碍物、车辆与停车位之间的位置关系。通过图9所示的展示界面,使得车内驾驶员可以直观了解到车辆当前状态,并及时配合执行相应的操作,以便快速完成平行泊车流程。
图10为本申请提供的又一种车辆状态的监测方法的流程示意图。本实施例中对多个第一信号进行的运算处理采用的是字符串运算。如图10所示,本实施例的方法包括:
S1001:在车辆泊车过程中获取多个第一信号,所述多个第一信号由所述车辆的多个传感器采集得到。
S1002:获取所述多个第一信号的拼接顺序。
S1003:将所述多个第一信号分别转换为字符串类型,并按照所述拼接顺序将所述多个第一信号对应的字符串进行拼接运算,得到运算结果。
S1004:将所述运算结果与数据库中存储的多个字符串进行匹配,其中,每个字符串对应一种状态,将与运算结果匹配的字符串所对应的状态,确定为车辆的当前状态。
S1005:通过显示屏对当前状态进行显示。
本实施例中的具体实施方式以及实现原理与图4所示实施例类似。不同之处在于,本实施例采用的运算为字符串运算。本实施例中,数据库中存储了多个字符串以及每个字符串对应的状态。将每个第一信号的取值转换为字符串类型,然后按照指定的拼接顺序,将多个第一信号对应的字符串进行拼接运算,得到的运算结果(即拼接后的字符串)。相对应的,数据库中存储多个字符串以及每个字符串对应的状态。将运算结果与数据库中存储的多个字符串进行匹配,将匹配成功的字符串所对应的状态确定为车辆的当前状态。
通过上述监测过程,无需对每个信号的取值分别进行判断,在代码中不会出现较多的判断分支,降低了代码复杂度。另外,由于字符串拼接运算相比判断分支具有较高的执行效率,因此,本实施例能够提升监测车辆状态的运行效率。
图11A为本申请提供的一种车辆状态的监测装置的结构示意图。本实施例的装置可以为软件和/或硬件的形式。如图11A所示,本实施例提供的车辆状态的监测装置1100可以包括:获取模块1101、处理模块1102和确定模块1103。
其中,获取模块1101,用于在车辆泊车过程中获取多个第一信号,所述多个第一信号由所述车辆的多个传感器采集得到。
处理模块1102,用于对所述多个第一信号进行运算处理,得到运算结果。
确定模块1103,用于根据所述运算结果,确定所述车辆的当前状态,所述当前状态用于指示所述车辆当前所处的泊车阶段。
一种可能的实现方式中,所述处理模块1102具体用于:
对所述多个第一信号进行位运算,得到所述运算结果,其中,所述位运算包括:移位运算和位或运算。
一种可能的实现方式中,所述处理模块1102具体用于:
获取每个第一信号对应的移位数;
根据每个第一信号对应的移位数,对每个第一信号进行移位运算,并对所述多个第一信号的移位运算结果进行位或运算,得到所述运算结果。
一种可能的实现方式中,所述处理模块1102具体用于:
获取所述多个第一信号的拼接顺序;
将所述多个第一信号分别转换为字符串类型,并按照所述拼接顺序将所述多个第一信号对应的字符串进行拼接运算,得到所述运算结果。
一种可能的实现方式中,所述确定模块1103具体用于:
将所述运算结果与数据库中存储的多个特征标识进行匹配,其中,每个特征标识对应一种状态;
将与所述运算结果匹配的特征标识所对应的状态,确定为所述车辆的当前状态。
一种可能的实现方式中,所述处理模块1102还用于:
确定本次获取的所述多个第一信号中的至少一个第一信号与上次获取的对应信号不同。
图11B为本申请提供的另一种车辆状态的监测装置的结构示意图,在图11A所示实施例的基础上,本实施例的车辆状态的监测装置1100,还包括:显示模块1104。
显示模块1104用于通过显示屏对所述当前状态进行显示。
一种可能的实现方式中,所述显示模块1104具体用于:
根据所述当前状态,获取与所述当前状态对应的文本信息和/或图片信息;
通过显示屏对所述文本信息和/或图片信息进行显示。
本实施例提供的车辆状态的监测装置,可用于实现上述任一方法实施例中的技术方案,其实现原理和技术效果类似,此处不作赘述。
根据本申请的实施例,本申请还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器。该电子设备可以为车载电子设备。该电子设备可以为车机。
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任一实施例中的车辆状态的监测方法。其实现原理和技术效果类似,此处不作赘述。
根据本申请的实施例,本申请还提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述任一实施例中的车辆状态的监测方法。其实现原理和技术效果类似,此处不作赘述。
根据本申请的实施例,本申请还提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行实现上述任一实施例中的车辆状态的监测方法。其实现原理和技术效果类似,此处不作赘述。
图12示出了可以用来实施本申请的实施例的示例电子设备1200的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图12所示,电子设备1200包括计算单元1201,其可以根据存储在只读存储器(ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM 1203中,还可存储设备操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
电子设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许设备通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如车辆状态的监测方法。例如,在一些实施例中,车辆状态的监测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1202和/或通信单元1209而被载入和/或安装到电子设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的车辆状态的监测方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车辆状态的监测方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。