CN107340841A - 快速初始化诊断仪的方法、终端及计算机可读存储介质 - Google Patents
快速初始化诊断仪的方法、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107340841A CN107340841A CN201710451691.0A CN201710451691A CN107340841A CN 107340841 A CN107340841 A CN 107340841A CN 201710451691 A CN201710451691 A CN 201710451691A CN 107340841 A CN107340841 A CN 107340841A
- Authority
- CN
- China
- Prior art keywords
- diagnostic equipment
- equipment
- diagnostic
- phase identification
- reset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/006—Indicating maintenance
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0808—Diagnosing performance data
Abstract
本发明公开了一种快速初始化诊断仪的方法、终端及计算机可读存储介质,该方法包括:建立与诊断仪的通信连接;接收用户发起的诊断请求;根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;若完成复位,则根据所述阶段标识判断是否进入校验阶段;若否,则验证所述诊断仪是否进入工作模式;若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
Description
技术领域
本发明涉及汽车诊断技术领域,尤其涉及快速初始化诊断仪的方法、终端及计算机可读存储介质。
背景技术
随着经济的发展,导致了人们的出行方式发生了改变,如今,汽车已经成为许多人的代步工具,在汽车的使用过程中,难免要对汽车进行保养和维修。在对汽车进行保养和维修时,诊断仪是经常被使用的工具。现有的诊断仪需要进入工作模式才能够进行诊断工作,需要PC端(Personal Computer个人计算机)的应用软件通过串口发送命令给诊断仪使得诊断仪进入工作模式。但是,诊断仪在进入工作模式前,存在关闭串口的过程,PC端的应用程序无法知道串口何时准备好,只能盲目等待一定时间(一般为10秒)才能使诊断仪进入工作模式,现有技术存在诊断仪进入工作模式太慢、等待时间太久的问题,从而在很大程度上不利于用户的使用体验感受。
发明内容
本发明的主要目的在于提供一种快速初始化诊断仪的方法、终端及计算机可读存储介质,旨在解决现有技术中诊断仪进入工作模式太慢、等待时间太久的技术问题。
为实现上述目的,本发明提供一种快速初始化诊断仪的方法,所述快速初始化诊断仪的方法应用于终端,所述快速初始化诊断仪的方法包括:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
优选地,所述诊断请求包含车辆标识信息;所述根据所述诊断请求确定阶段标识,具体为:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
优选地,所述根据所述阶段标识判断是否进入校验阶段,具体包括:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
优选地,所述根据接收到的设备状态改变信息判断所述诊断仪是否完成复位,具体包括:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
优选地,所述根据所述阶段标识判断是否进入校验阶段之后,还包括:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
此外,为实现上述目的,本发明还提供一种终端,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的快速初始化诊断仪程序,所述快速初始化诊断仪程序被所述处理器执行时实现如下步骤:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有快速初始化诊断仪程序,所述快速初始化诊断仪程序被处理器执行时实现如下步骤:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
优选地,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
本发明中,终端在与诊断仪建立通讯连接后,接收基于用户操作触发的诊断请求,根据诊断请求确定阶段标识,并将复位命令发送至诊断仪,若接收到设备状态改变信息,则判断诊断仪复位是否完成,若诊断仪复位完成则根据阶段标识判断是否进入校验阶段,若不为进入校验阶段,则验证诊断仪是否进入工作模式,若是,则表明诊断仪初始化完成,控制诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
附图说明
图1为本发明快速初始化诊断仪的方法第一实施例的流程示意图;
图2为本发明快速初始化诊断仪的方法第二实施例的流程示意图;
图3是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如下各实施例中本发明快速初始化诊断仪的方法应用于终端,终端可以是计算机、移动终端、车载终端、个人数字助理(PDA)、平板电脑等,终端的操作系统可以为Windows、Linux、Android、iOS等,终端的操作系统能检测I/O设备关闭、打开事件。
参照图1,图1为本发明快速初始化诊断仪的方法第一实施例的流程示意图。
在一实施例中,快速初始化诊断仪的方法应用于终端,快速初始化诊断仪的方法包括:
步骤S10,建立与诊断仪的通信连接;
步骤S20,接收用户发起的诊断请求;
步骤S30,根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
步骤S40,根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
步骤S50,若完成复位,则根据所述阶段标识判断是否进入校验阶段;
步骤S60,若否,则验证所述诊断仪是否进入工作模式;
步骤S70,若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
本实施例中,终端与诊断仪建立通信连接的方式可以是通过USB线进行连接,USB线一端接入终端的串行通讯接口(串口),另一端接入诊断仪端口,还可以是蓝牙通信连接。本实施例以USB数据线连接为例进行说明。
本实施例中,诊断仪可以为汽车诊断仪。
例如,在一实施例中,以汽车诊断仪为例子进行说明。用户需要使用诊断仪对车辆进行检测,在建立终端与诊断仪的通讯连接后,用户在终端上操作,终端接收基于用户操作触发的诊断请求,根据诊断请求中包含的车辆标识信息(例如,当前需要汽车诊断仪诊断的车辆的型号信息、车辆VIN码信息等,在此不作限制,具体根据实际情况进行设置),确定阶段标识。例如,若检测到本次诊断请求发起之前,汽车诊断仪同终端保持连接的一段时间内(例如15分钟,该值可根据实际情况进行设置),存在与此次诊断请求包含的车辆型号信息相同的诊断记录,则将当前阶段设置为非校验阶段,否则设置为校验阶段。如本次需要使用汽车诊断仪对“丰田”车系进行测试,在将诊断请求发送至终端后,检测到接收到该诊断请求前该汽车诊断仪同终端建立通讯连接的15分钟内存在对“丰田”车系的测车记录,则确定阶段标识为非校验阶段。
接收到诊断请求后,终端将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变,由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:接收到诊断请求后,诊断APP将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变,由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。
复位完成后,根据确定的阶段标识,例如确定当前为非校验阶段,则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程(步骤S10至S70)。
在本发明另一可选实施例中,复位完成后,根据确定的阶段标识,若确定当前为校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。诊断仪在接收到进入工作模式的指令后,此时串口会先关闭再打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。
由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪已进入工作模式,并标记阶段标记为非校验阶段,接下来则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程(步骤S10至S70)。
本发明中,终端在与诊断仪建立通讯连接后,接收基于用户操作触发的诊断请求,根据诊断请求确定阶段标识,并将复位命令发送至诊断仪,若接收到设备状态改变信息,则判断诊断仪复位是否完成,若诊断仪复位完成则根据阶段标识判断是否进入校验阶段,若不为进入校验阶段,则验证诊断仪是否进入工作模式,若是,则表明诊断仪初始化完成,控制诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
进一步的,在本发明另一可选实施例中,诊断请求中包含车辆标识信息,根据诊断请求确定阶段标识包括:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
本实施例中,预设时间指诊断仪与终端保持通讯连接的一段时间(时长可人为设置)。例如,在15:00终端接收到基于用户操作触发的诊断请求,诊断请求中包含了车辆标识信息,车辆标识信息指待诊断的车辆车系信息,如“丰田”,还可以是待诊断车辆VIN码信息,在此不作限制,具体根据实际需要而定。终端检测到在14:50时存在“丰田”车系的诊断记录,且14:50~15:00时间段内,诊断仪保持与终端的通信连接。则确定阶段标识为非校验阶段,例如,在系统进程中将标识变量设置为“2”,代表阶段为非校验阶段,诊断仪复位完成后不需要进行校验,而是直接发送验证命令,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断;若接收到诊断请求时,检测到不存在诊断请求中车辆标识信息对应的历史诊断记录,则确定当前标识为校验阶段,例如在系统进程中将标识变量设置为“1”,代表阶段为校验阶段,诊断仪复位完成后,终端发送校验命令至诊断仪,在接收到诊断仪的反馈信息后,发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。
本实施例中,根据诊断请求中包含的车辆标识信息,检测本次诊断请求发起之前的预设时间内是否存在该车辆标识信息对应的历史诊断记录,若存在,则确定阶段为非校验阶段,在诊断仪复位完成后不需要进行校验,而是直接发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断。通过本实施例,加快了诊断仪初始化过程。
进一步的,在一实施例中,根据阶段标识判断是否进入校验阶段包括:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
本实施例中,当阶段标识可在系统进程中通过添加标志位进行设置。例如,当阶段标识为非校验阶段,则将标志位为设置为“2”,表示诊断仪在复位完成后不进入校验阶段,而是发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断;当阶段标识为校验阶段,则将标志位设置为“1”,表示诊断仪在复位完成后为进入校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。在诊断仪进入工作模式后,再将标志位更新为“2”,接下来发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式。
本实施例中,根据诊断请求中包含的车辆标识信息,检测本次诊断请求发起之前的预设时间内是否存在该车辆标识信息对应的历史诊断记录,若存在,则确定阶段为非校验阶段,在诊断仪复位完成后不需要进行校验,而是直接发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断。通过本实施例,加快了诊断仪初始化过程。
进一步的,在本发明另一可选实施例中,步骤S40包括:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
本实施例中,接收到诊断请求后,应用程序将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息(设备状态改变信息),通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。
在本实施例中,终端上运行的操作系统能够检测输入/输出接口状态的改变(I/O设备关闭、打开事件)。例如,以Windows操作系统的消息机制为例,当I/O设备关闭、打开事件发生时,会触发WM_DEVICECHANGE消息。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,例如,发一个测试命令至诊断仪,如果能够接收到诊断仪基于该测试命令发出的反馈,则证明此次I/O设备状态改变是由串口状态改变引起的。
在本实施例中,当I/O设备状态改变时,进一步检测是否能与诊断仪进行通信,只有在检测到能与诊断仪进行通信后,才进行下一步,避免了PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息对本发明方案的错误影响。
进一步的,参照图2,图2为本发明快速初始化诊断仪的方法第二实施例的流程示意图。
在本发明另一可选实施例中,步骤S50之后还包括:
步骤S80,若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
步骤S90,完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
步骤S100,根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
步骤S110,若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
在本实施例中,复位完成后,根据确定的阶段标识,若确定当前为校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。同时将阶段标记重置为非校验阶段。诊断仪在接收到进入工作模式的指令后,会进入工作模式,此时串口会先关闭再打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,并根据当前阶段标记,当前阶段标记为非校验阶段,接下来则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程(步骤S10至S70)。
本实施例中,终端在与诊断仪建立通讯连接后,接收基于用户操作触发的诊断请求,根据诊断请求确定阶段标识,并将复位命令发送至诊断仪,若接收到设备状态改变消息,则判断诊断仪复位是否完整,若诊断仪复位完成则根据阶段标识判断是否进入校验阶段,若为进入校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式,若接收到设备状态改变消息,则判断诊断仪的串口是否处于开启通信状态,若串口处于开启通信状态则验证诊断仪是否进入工作模式,若是,则表明诊断仪初始化完成,控制诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
此外,本发明实施例还提出一种终端。
如图3所示,图3是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端(本文中,终端即为终端)可以是计算机、移动终端、车载终端、个人数字助理(PDA)、平板电脑等,终端的操作系统可以为Windows、Linux、Android、iOS等,终端的操作系统能检测I/O设备关闭、打开事件。
如图3所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图3中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及快速初始化诊断仪程序。
在图3所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的快速初始化诊断仪程序,并执行以下操作:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
本实施例中,终端与诊断仪建立通信连接的方式可以是通过USB线进行连接,USB线一端接入终端的串行通讯接口(串口),另一端接入诊断仪端口,还可以是蓝牙通信连接。本实施例以USB数据线连接为例进行说明。
本实施例中,诊断仪可以为汽车诊断仪。
例如,在一实施例中,以汽车诊断仪为例子进行说明。用户需要使用诊断仪对车辆进行检测,在建立终端与诊断仪的通讯连接后,用户在终端上操作,终端接收基于用户操作触发的诊断请求,根据诊断请求中包含的车辆标识信息(例如,当前需要汽车诊断仪诊断的车辆的型号信息、车辆VIN码信息等,在此不作限制,具体根据实际情况进行设置),确定阶段标识。例如,若检测到本次诊断请求发起之前,汽车诊断仪同终端保持连接的一段时间内(例如15分钟,该值可根据实际情况进行设置),存在与此次诊断请求包含的车辆型号信息相同的诊断记录,则将当前阶段设置为非校验阶段,否则设置为校验阶段。如本次需要使用汽车诊断仪对“丰田”车系进行测试,在将诊断请求发送至终端后,检测到接收到该诊断请求前该汽车诊断仪同终端建立通讯连接的15分钟内存在对“丰田”车系的测车记录,则确定阶段标识为非校验阶段。
接收到诊断请求后,终端将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变,由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:接收到诊断请求后,诊断APP将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变,由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。
复位完成后,根据确定的阶段标识,例如确定当前为非校验阶段,则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程。
在本发明另一可选实施例中,复位完成后,根据确定的阶段标识,若确定当前为校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。诊断仪在接收到进入工作模式的指令后,此时串口会先关闭再打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪已进入工作模式,并标记阶段标记为非校验阶段,接下来则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程。
本发明中,终端在与诊断仪建立通讯连接后,接收基于用户操作触发的诊断请求,根据诊断请求确定阶段标识,并将复位命令发送至诊断仪,若接收到设备状态改变信息,则判断诊断仪复位是否完成,若诊断仪复位完成则根据阶段标识判断是否进入校验阶段,若不为进入校验阶段,则验证诊断仪是否进入工作模式,若是,则表明诊断仪初始化完成,控制诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
进一步地,处理器1001可以调用存储器1005中存储的快速初始化诊断仪程序,还执行以下操作:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
本实施例中,预设时间指诊断仪与终端保持通讯连接的一段时间(时长可人为设置)。例如,在15:00终端接收到基于用户操作触发的诊断请求,诊断请求中包含了车辆标识信息,车辆标识信息指待诊断的车辆车系信息,如“丰田”,还可以是待诊断车辆VIN码信息,在此不作限制,具体根据实际需要而定。终端检测到在14:50时存在“丰田”车系的诊断记录,且14:50~15:00时间段内,诊断仪保持与终端的通信连接。则确定阶段标识为非校验阶段,例如,在系统进程中将标识变量设置为“2”,代表阶段为非校验阶段,诊断仪复位完成后不需要进行校验,而是直接发送验证命令,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断;若接收到诊断请求时,检测到不存在诊断请求中车辆标识信息对应的历史诊断记录,则确定当前标识为校验阶段,例如在系统进程中将标识变量设置为“1”,代表阶段为校验阶段,诊断仪复位完成后,终端发送校验命令至诊断仪,在接收到诊断仪的反馈信息后,发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。
本实施例中,根据诊断请求中包含的车辆标识信息,检测本次诊断请求发起之前的预设时间内是否存在该车辆标识信息对应的历史诊断记录,若存在,则确定阶段为非校验阶段,在诊断仪复位完成后不需要进行校验,而是直接发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断。通过本实施例,加快了诊断仪初始化过程。
进一步地,处理器1001可以调用存储器1005中存储的快速初始化诊断仪程序,还执行以下操作:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
本实施例中,当阶段标识可在系统进程中通过添加标志位进行设置。例如,当阶段标识为非校验阶段,则将标志位为设置为“2”,表示诊断仪在复位完成后不进入校验阶段,而是发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断;当阶段标识为校验阶段,则将标志位设置为“1”,表示诊断仪在复位完成后为进入校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。在诊断仪进入工作模式后,再将标志位更新为“2”,接下来发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式。
本实施例中,根据诊断请求中包含的车辆标识信息,检测本次诊断请求发起之前的预设时间内是否存在该车辆标识信息对应的历史诊断记录,若存在,则确定阶段为非校验阶段,在诊断仪复位完成后不需要进行校验,而是直接发送验证命令至诊断仪,以供验证诊断仪是否进入工作模式,并在验证诊断仪进入工作模式后完成初始化并控制诊断仪进行诊断。通过本实施例,加快了诊断仪初始化过程。
进一步地,处理器1001可以调用存储器1005中存储的快速初始化诊断仪程序,还执行以下操作:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
本实施例中,接收到诊断请求后,应用程序将封装好的复位命令通过串口发送给诊断盒。诊断盒接受到复位命令后,开始进行复位,此时串口会关闭又打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息(设备状态改变信息),通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,则表示诊断仪复位完成。
在本实施例中,终端上运行的操作系统能够检测输入/输出接口状态的改变(I/O设备关闭、打开事件)。例如,以Windows操作系统的消息机制为例,当I/O设备关闭、打开事件发生时,会触发WM_DEVICECHANGE消息。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,例如,发一个测试命令至诊断仪,如果能够接收到诊断仪基于该测试命令发出的反馈,则证明此次I/O设备状态改变是由串口状态改变引起的。
在本实施例中,当I/O设备状态改变时,进一步检测是否能与诊断仪进行通信,只有在检测到能与诊断仪进行通信后,才进行下一步,避免了PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息对本发明方案的错误影响。
进一步地,处理器1001可以调用存储器1005中存储的快速初始化诊断仪程序,还执行以下操作:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
在本实施例中,复位完成后,根据确定的阶段标识,若确定当前为校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式。此处终端发送校验命令,接收反馈信息的过程即握手协议。握手协议指通讯设备之间任何实际应用信息的传送总是伴随着一些控制信息的传递,它们按照既定的通讯协议工作,将应用信息安全、可靠、高效地传送到目的地。握手协议就是两个设备在通信之前,要互相的认识一下,然后才能互相传送。同时将阶段标记重置为非校验阶段。诊断仪在接收到进入工作模式的指令后,会进入工作模式,此时串口会先关闭再打开。终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向终端的操作界面发送WM_DEVICECHANGE消息,通知I/O设备状态改变。在具体的实际操作过程中,上述过程可以在终端上通过诊断软件客户端(即诊断APP)完成。具体过程如下:终端操作系统(此处以Windows操作系统进行说明)检测到I/O(输入/输出接口)设备关闭、打开事件发生,Windows系统向诊断APP的主窗口发送WM_DEVICECHANGE消息,通知I/O设备状态改变。由于I/O设备状态改变可能是由于其他事件引起的,例如,由于PC上的I/O设备如鼠标、键盘、U盘的插拔都能触发WM_DEVICECHANGE消息,所以,此时需要检测终端同诊断仪连接的串口的状态,即判断是否能够读取到诊断仪的串口信息、是否能够通过串口进行通信,若能,则排除其他I/O设备如鼠标、键盘、U盘的插拔触发WM_DEVICECHANGE消息,判定此次WM_DEVICECHANGE消息的产生是由于串口的关闭、打开引起的,并根据当前阶段标记,当前阶段标记为非校验阶段,接下来则发送验证命令至诊断仪,用以验证诊断仪是否已经成功进入工作模式。例如,向诊断仪发送一请求,请求获取诊断仪状态信息,在接收到诊断仪反馈的状态信息后,若状态信息表明诊断仪已进入工作模式,则确认当前诊断仪已经成功进入工作模式,则可以进行对车辆的诊断工作。若状态信息表明诊断仪未进入工作模式,则发出告警消息,例如警告声、灯光闪烁、在用户界面显示对话框,提示用户,诊断仪进入工作模式失败,需要用户重新操作,以供重启上述流程(步骤S10至S70)。
本实施例中,终端在与诊断仪建立通讯连接后,接收基于用户操作触发的诊断请求,根据诊断请求确定阶段标识,并将复位命令发送至诊断仪,若接收到设备状态改变消息,则判断诊断仪复位是否完整,若诊断仪复位完成则根据阶段标识判断是否进入校验阶段,若为进入校验阶段,则发送校验命令至诊断仪,在接收到诊断仪的反馈信息后发送进入工作模式的指令至诊断仪,以供诊断仪进入工作模式,若接收到设备状态改变消息,则判断诊断仪的串口是否处于开启通信状态,若串口处于开启通信状态则验证诊断仪是否进入工作模式,若是,则表明诊断仪初始化完成,控制诊断仪进行诊断。通过本发明,大大缩短了诊断仪初始化的时间,极大提升了用户的使用感受。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有快速初始化诊断仪程序,所述快速初始化诊断仪程序被处理器执行时实现如上述所述的快速初始化诊断仪的方法的步骤。
本发明计算机可读存储介质具体实施例同上述快速初始化诊断仪的方法的具体实施例大致相同,在此不做赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种快速初始化诊断仪的方法,其特征在于,应用于终端,所述快速初始化诊断仪的方法包括:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
2.如权利要求1所述的方法,其特征在于,所述诊断请求包含车辆标识信息;所述根据所述诊断请求确定阶段标识,具体为:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
3.如权利要求2所述的方法,其特征在于,所述根据所述阶段标识判断是否进入校验阶段,具体包括:
当所述阶段标识为非校验阶段时,则判断所述诊断仪不进入校验阶段;
当所述阶段标识为校验阶段时,则判断所述诊断仪进入校验阶段。
4.如权利要求1所述的方法,其特征在于,所述根据接收到的设备状态改变信息判断所述诊断仪是否完成复位,具体包括:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
5.如权利要求1-4任一项所述的方法,其特征在于,所述根据所述阶段标识判断是否进入校验阶段之后,还包括:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
6.一种终端,其特征在于,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的快速初始化诊断仪程序,所述快速初始化诊断仪程序被所述处理器执行时实现如下步骤:
建立与诊断仪的通信连接;
接收用户发起的诊断请求;
根据所述诊断请求确定阶段标识,并发送预置复位命令至所述诊断仪;
根据接收到的设备状态改变信息判断所述诊断仪是否完成复位;
若完成复位,则根据所述阶段标识判断是否进入校验阶段;
若否,则验证所述诊断仪是否进入工作模式;
若验证所述诊断仪进入工作模式,则完成初始化,控制所述诊断仪进行诊断。
7.如权利要求6所述的终端,其特征在于,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
判断本次诊断请求发起之前的预设时间内是否存在具有所述车辆标识信息的历史诊断记录;
若存在,则确定阶段标识为非校验阶段;
若不存在,则确定阶段标识为校验阶段。
8.如权利要求6所述的终端,其特征在于,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
在接收到所述设备状态改变信息后,读取所述诊断仪的串口状态信息;
判断所述串口状态是否处于开启通信状态,若处于开启通信状态则判断所述诊断仪完成复位。
9.如权利要求6-8任一项所述的终端,其特征在于,所述快速初始化诊断仪程序被所述处理器执行时还实现如下步骤:
若根据阶段标识判断进入校验阶段,控制所述诊断仪执行校验步骤;
完成校验后,发送进入工作模式的指令至所述诊断仪,并重置阶段标识为非校验阶段;
根据再次接收到的设备状态改变信息判断所述诊断仪的串口是否处于开启通信状态;
若处于开启通信状态,则执行验证所述诊断仪是否进入工作模式,并在验证所述诊断仪进入工作模式后完成初始化,控制所述诊断仪进行诊断。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有快速初始化诊断仪程序,所述快速初始化诊断仪程序被处理器执行时实现如权利要求1至5中任一项所述的快速初始化诊断仪的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710451691.0A CN107340841B (zh) | 2017-06-14 | 2017-06-14 | 快速初始化诊断仪的方法、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710451691.0A CN107340841B (zh) | 2017-06-14 | 2017-06-14 | 快速初始化诊断仪的方法、终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107340841A true CN107340841A (zh) | 2017-11-10 |
CN107340841B CN107340841B (zh) | 2020-01-14 |
Family
ID=60220653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710451691.0A Active CN107340841B (zh) | 2017-06-14 | 2017-06-14 | 快速初始化诊断仪的方法、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107340841B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427577A (zh) * | 2018-01-31 | 2018-08-21 | 深圳市元征科技股份有限公司 | 一种通信方法、装置及系统 |
CN110031232A (zh) * | 2018-01-12 | 2019-07-19 | 上海汽车集团股份有限公司 | 一种车辆诊断系统及方法 |
CN110395078A (zh) * | 2019-07-17 | 2019-11-01 | 深圳市元征科技股份有限公司 | 胎压复位方法及相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103048989A (zh) * | 2012-11-29 | 2013-04-17 | 王志欣 | 一种基于维修资料和专家系统的汽车故障诊断方法 |
CN104155971A (zh) * | 2014-08-07 | 2014-11-19 | 北京九五智驾信息技术股份有限公司 | 一种车辆诊断仪对车辆诊断仪协议的自诊断方法 |
US20150046021A1 (en) * | 2013-08-09 | 2015-02-12 | Hyundai Motor Company | System and method for diagnosing vehicle using learning value |
-
2017
- 2017-06-14 CN CN201710451691.0A patent/CN107340841B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103048989A (zh) * | 2012-11-29 | 2013-04-17 | 王志欣 | 一种基于维修资料和专家系统的汽车故障诊断方法 |
US20150046021A1 (en) * | 2013-08-09 | 2015-02-12 | Hyundai Motor Company | System and method for diagnosing vehicle using learning value |
CN104155971A (zh) * | 2014-08-07 | 2014-11-19 | 北京九五智驾信息技术股份有限公司 | 一种车辆诊断仪对车辆诊断仪协议的自诊断方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110031232A (zh) * | 2018-01-12 | 2019-07-19 | 上海汽车集团股份有限公司 | 一种车辆诊断系统及方法 |
CN108427577A (zh) * | 2018-01-31 | 2018-08-21 | 深圳市元征科技股份有限公司 | 一种通信方法、装置及系统 |
CN110395078A (zh) * | 2019-07-17 | 2019-11-01 | 深圳市元征科技股份有限公司 | 胎压复位方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107340841B (zh) | 2020-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107848522B (zh) | 用于将诊断命令传输至交通工具的系统和方法 | |
US6928349B1 (en) | Scan tool with dropped communications detection and recovery and improved protocol selection | |
EP3141974A1 (en) | Personal vehicle diagnosis system and method based on mobile intelligent terminal | |
CN112596972A (zh) | 车载设备的测试方法、装置、系统、计算机设备 | |
US20150309859A1 (en) | Apparatus and Method of Error Monitoring with a Diagnostic Module | |
CN107340841A (zh) | 快速初始化诊断仪的方法、终端及计算机可读存储介质 | |
CN101916087A (zh) | 一种基于CANoe的诊断测试系统 | |
WO2023125852A1 (zh) | 远程诊断方法及装置、电子设备和存储介质 | |
CN106993303A (zh) | 配置以及维保智能wifi设备的方法、装置、设备和计算机存储介质 | |
CN111880508A (zh) | 一种T-box参数自动标定和测试方法和装置 | |
CN113407393A (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN111506047A (zh) | 车辆诊断方法、装置及存储介质 | |
CN107817789A (zh) | Can总线仿真测试系统 | |
CN113238951A (zh) | 一种软件无障碍自动化测试系统及其测试方法 | |
US8407671B2 (en) | Accessory validation system | |
CN110647139A (zh) | 一种obd量产车评估测试工具及评估测试方法 | |
CN112990495A (zh) | 一种车辆售后诊断的方法、装置、系统及存储介质 | |
CN113810403B (zh) | 一种基于通讯协议的充电桩漏洞检测方法及检测装置 | |
CN105138373A (zh) | 汽车诊断设备固件升级方法及装置 | |
CN116048051A (zh) | 超时时间验证方法、装置、设备以及存储介质 | |
CN113556210B (zh) | 一种上位机和建立通信连接的方法 | |
CN108973542A (zh) | 轮胎压力检测系统tpms诊断工具的升级方法及设备 | |
CN115657637A (zh) | 机器人电动门测试方法、设备及存储介质 | |
CN115167330A (zh) | 用于车辆的通信错误诊断装置、具有该装置的系统及方法 | |
CN111966072B (zh) | 一种空调控制面板模拟测试方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |