CN112224217B - 集成控制芯片,环境识别方法和装置,存储介质,车辆 - Google Patents
集成控制芯片,环境识别方法和装置,存储介质,车辆 Download PDFInfo
- Publication number
- CN112224217B CN112224217B CN201910581929.0A CN201910581929A CN112224217B CN 112224217 B CN112224217 B CN 112224217B CN 201910581929 A CN201910581929 A CN 201910581929A CN 112224217 B CN112224217 B CN 112224217B
- Authority
- CN
- China
- Prior art keywords
- node
- operation node
- control module
- data stream
- data
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims description 31
- 238000003062 neural network model Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 230000007613 environmental effect Effects 0.000 description 32
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005286 illumination Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
- B60R16/023—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
- B60R16/0231—Circuits relating to the driving or the functioning of the vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Traffic Control Systems (AREA)
Abstract
本公开涉及一种集成控制芯片,环境识别方法和装置,存储介质,车辆,集成控制芯片中集成有控制模块,主控模块以及环境识别模块;集成控制芯片中形成有与多个控制模块一一对应的多条节点流,每一节点流由所对应的控制模块执行的操作串联形成,每一操作分别作为节点流中的一个操作节点;集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一数据流由多个操作节点串联形成;主控模块用于,循环依次调用每一控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;环境识别模块,用于获取同一时刻下,集成控制芯片中各节点流的状态数据以及各操作节点的状态数据,并输入至环境识别模型。
Description
技术领域
本公开涉及数据处理技术领域,具体地,涉及一种集成控制芯片,环境识别方法和装置,存储介质,车辆。
背景技术
车辆可能在不同的环境中行驶,通过识别车辆行驶时所处的环境状态,有助于车辆做出相关的决策,例如车辆在识别出当前所处的环境状态为雨天时,可以在屏幕上显示提示驾驶员不要超过规定中雨天允许的最大行驶速度的提示信息。
相关技术中,为了识别车辆所处的环境状态,通过驾驶员手动输入当前的环境状态信息,或通过相关的传感器获取的信息进行判断。但是,在驾驶员没有输入当前环境状态信息,或车辆缺少相关的传感器时,不能获取环境状态信息,难以进行环境状态的识别。例如,对于缺少识别车身相对于水平面夹角的传感器的车辆,难以对倾斜的坡面环境进行识别。
发明内容
本公开的目的是提供一种集成控制芯片,环境识别方法和装置,存储介质,车辆,用于解决相关技术中,在驾驶员没有输入当前环境状态信息,或车辆缺少相关的传感器时,不能获取环境状态信息,难以进行环境状态的识别的技术问题。
为了实现上述目的,本公开实施例的第一方面,提供一种集成控制芯片,所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,主控模块以及环境识别模块,其中,所述控制模块用于被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点;
所述环境识别模块,用于获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据,并将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
可选地,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
可选地,数据流中首节点的前一操作节点为该数据流的尾节点,所述主控模块还用于:
在对所述数据流中的任一操作节点执行对应的操作后,将该操作节点标记为已完成状态,并将该数据流中该操作节点的前一操作节点由已完成状态标记为未完成状态。
可选地,所述主控模块还用于:
在对应所述数据流的车载部件启动后,执行所述数据流中的首节点对应的操作,并将该首节点标记为已完成状态。
可选地,所述主控模块还用于:
在执行所述数据流的任一操作节点对应的操作之前,若该操作所需资源处于被占用状态,则将用于执行该操作的指令寄存到对应该资源的指令队列中;
所述主控模块还用于,对于每一所述指令队列,在对应该指令队列的资源被释放后,根据该资源执行该指令队列中处于队列头的指令,并在该指令执行之后,将该指令的下一指令调整到队列头位置。
可选地,所述主控模块还用于:
针对所述数据流中的操作节点,记录该操作节点等待在该数据流中的前一操作节点被执行完成所花费的时长,并在该时长大于或等于时长阈值时,中止该数据流;或者,
针对所述数据流中的操作节点,记录在所述数据流的首节点被标记为已完成状态后,该操作节点所属的节点流被遍历的次数,若该次数大于或等于次数阈值,则中止该数据流。
可选地,所述主控模块还用于:
在中止该数据流后,输出错误提示信息。
可选地,所述主控模块用于:
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级确定本次要调用的所述目标控制模块;或者,
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级和每一所述控制模块的遍历时长确定本次要调用的所述目标控制模块。
可选地,还包括存储器,用于存储每一操作节点的状态标记以及该操作节点的数据信息,所述状态标记用于表征该操作节点对应的操作是否被执行完成,所述数据信息用于表征所述该操作节点对应操作的被执行结果;
所述主控模块用于:
在遍历所述节点流中的任一操作节点时,若该操作节点处于数据流中,则读取该数据流中该操作节点的前一操作节点的存储地址,得到所述前一操作节点的状态标记以及数据信息;
通过所述状态标记确定所述前一操作节点是否处于已完成状态;
若所述前一操作节点处于已完成状态,则根据所述数据信息执行该操作节点对应的操作。
本公开实施例的第二方面,提供一种基于集成控制芯片的环境识别方法,所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点;
其中,所述环境识别方法包括:
获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据;
将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
可选地,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
本公开实施例的第三方面,提供一种环境识别装置,包括:
获取模块,用于获取同一时刻下,集成控制芯片中各节点流的状态数据以及各操作节点的状态数据;
识别模块,用于将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息,其中,
所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块用于被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点。
可选地,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被集成控制芯片中的主控模块执行时实现上述第二方面中任一项所述方法的步骤。
本公开实施例的第四方面,提供一种车辆,包括上述第一方面中任一项所述的集成控制芯片。
通过上述技术方案,在依次循环调用每一控制模块时,位于该数据流中的操作节点随被调用的控制模块中的每一操作节点的遍历,进行是否执行该数据流中的操作节点的判断,在确定执行该数据流中的操作节点时,对应的车载部件的事件被实现。当车辆在不同的环境状态中行驶时,驾驶员可能表现出不同的驾驶习惯,进而通过车载部件影响操作节点和节点流的状态数据,以使得在不同的环境状态下,操作节点的状态数据和节点流的状态数据体现出不同的规律,进而可以通过操作节点的状态数据和节点流的状态数据进行环境状态的识别,无需驾驶员手动输入环境状态信息,或专门设置相关的用于获取环境状态信息的传感器,确保了车辆可以进行环境状态的识别。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种集成控制芯片的框图。
图2是根据一示例性实施例示出的一种集成控制芯片中的数据流和节点流的示意图。
图3是根据一示例性实施例示出的一种神经网络模型的示意图。
图4是根据一示例性实施例示出的一种集成控制芯片的另一框图。
图5是根据一示例性实施例示出的一种基于集成控制芯片的环境识别方法的流程图。
图6是根据一示例性实施例示出的一种环境识别装置的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
图1是根据一示例性实施例示出的一种集成控制芯片的框图。如图1所示,所述集成控制芯片100中集成有与多个车载部件一一对应的多个控制模块121~126,以及主控模块110,其中,所述控制模块121~126用于被所述主控模块110调用以实现与所对应的车载部件相关联的多个操作。其中,所述集成控制芯片100中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片100中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块110用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点。
所述环境识别模块140,用于获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据,并将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
在一示例性实施例中,主控模块110可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现。
在一示例性实施例中,控制模块121~126既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。软件功能单元存储在一个存储介质中,包括若干功能函数用以主控模块110调用该控制模块时执行该功能函数。具体来讲,上述软件功能单元存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行。而前述的存储介质包括:只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)等各种可以存储程序代码的介质。
对于控制模块与车载部件的关系,具体来讲,单个车载部件对应于集成控制芯片中多个控制模块中的一者,在需要使用某些车载部件时,则通过主控模块调用与这些车载部件对应的控制模块,并通过控制模块实现与该控制模块对应的车载部件的相关操作,单个操作可以为车载部件执行的一个具体动作,例如雷达对应的单个操作可以为发送用于检测障碍物的雷达波的动作,接收被障碍物反射的雷达波的动作,解析接收到的雷达波的动作中的一者,又例如蜂鸣器对应的单个操作可以为接收已被解析的雷达波信号的动作,基于雷达波信号生成用于控制蜂鸣器蜂鸣的操作指令的动作,基于操作指令控制蜂鸣器蜂鸣的动作中的一者。
举例来讲,单个车载部件可以为雷达、蜂鸣器、仪表、车载空调、车灯系统和智能钥匙中的任意一者,在一种可能的实施方式中,如图1所示,控制模块121为对应于雷达的控制模块,则在需要使用雷达完成某些操作例如发射用于检测障碍物的雷达波时,主控模块110调用控制模块121进而控制雷达发送雷达波。
对于节点流,举例来讲,如图2所示,控制模块121为对应于雷达的控制模块,操作节点1211对应的操作为发送用于检测障碍物的雷达波,操作节点1212对应的操作为接收已发送的雷达波,操作节点1213对应的操作为解析已接收的雷达波,则操作节点1211,操作节点1212和操作节点1213形成对应于控制模块121的节点流,且在该节点流中,按照先执行操作节点1211,然后执行操作节点1212,最后执行操作节点1213的顺序配置操作节点1211~1213。同理,参照图2,操作节点1221~1223形成的节点流对应于控制模块122,操作节点1231~1233形成的节点流对应于控制模块123。
对于数据流,举例来讲,如图2所示,控制模块121为对应于雷达的控制模块,控制模块122为对应于蜂鸣器的控制模块,控制模块123为对应于仪表的控制模块,控制模块121的操作节点1211对应的操作为获取数据信息,例如雷达监测到的障碍物可能位于0~0.5m,0.5m~1m,1m~1.5m,1.5m~2m,2m~6m,共5个距离范围中的一者中,进而获取的数据信息为表明障碍物位于上述5个距离范围中的一者的数据信息。控制模块122的操作节点1222对应的操作为基于操作节点1211获取的数据信息,控制蜂鸣器以与上述距离范围对应的频率进行蜂鸣,例如蜂鸣器可以分别以2kHz,1kHz,500Hz,250Hz,125Hz的频率进行蜂鸣,且2kHz对应于0~0.5m,1kHz对应于0.5m~1m,500Hz对应于1m~1.5m,250Hz对应于1.5m~2m,125Hz对应于2m~6m,即获取的数据信息表明障碍物位于0~0.5m时,蜂鸣器以2kHz的频率蜂鸣,其余同理。控制模块123的操作节点1233对应的操作为基于获取的数据信息,在仪表上显示障碍物相对于车辆的距离。
参见上述对于操作节点对应的操作的说明,事件由数据流完成,数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点。具体地,可以由多个操作按照一定顺序组成,通过配置与该多个操作一一对应的多个操作节点形成数据流实现,用于完成一具体事件,例如,对于通过雷达监测障碍物距离,根据关于该距离的信息控制蜂鸣器蜂鸣,将关于该距离的信息显示在仪表上的事件,可以通过配置操作节点1211,操作节点1222,操作节点1233,按照该顺序串联形成数据流。
在一种可能的实施方式中,主控模块110先调用控制模块121执行对应于操作节点1211的操作,雷达获取的数据信息表明障碍物位于0.5m~1m的范围,然后主控模块110调用控制模块122执行对应于操作节点1222的操作,控制蜂鸣器以1kHz的频率进行蜂鸣,最后主控模块110调用控制模块123执行对应于操作节点1233的操作,在仪表上显示障碍物相对于车辆的距离位于0.5m~1m的范围。当然,雷达获取的数据信息还可以包括障碍物相对于车辆的方向,例如左前方,进而可以控制车辆上位于左前方的蜂鸣器进行蜂鸣,并在仪表上显示障碍物位于车辆左前方。
对于主控模块对控制模块的调用,具体来讲,主控模块按照一定顺序依次调用控制模块,且该调用过程循环进行,在车辆启动的时候,该循环过程开始。对于正在被调用的控制模块即目标控制模块,按照与该控制模块对应的节点流中的操作节点的串联顺序,遍历该控制模块对应的节点流中的每一个操作节点。
沿用上述例子,对于图1中的控制模块121~126,可以按照控制模块121,控制模块122,控制模块123,控制模块124,控制模块125,控制模块126的顺序依次调用,在调用到控制模块121时,如图2所示,按照操作节点1211,操作节点1212,操作节点1213的顺序依次遍历每个操作节点,在调用到控制模块122时,按照操作节点1221,操作节点1222,操作节点1223的顺序依次遍历每个操作节点。
关于主控模块对遍历到的操作节点是否执行相应的操作,举例来讲,如图2所示,对于控制模块122中的操作节点1221~1223,在遍历至操作节点1221时,由于该操作节点1221不位于任何数据流中,故不执行操作节点1221对应的操作,转至遍历操作节点1222,由于该操作节点1222处于操作节点1211,操作节点1222,操作节点1233构成的数据流中,故可以检测该数据流中操作节点1222的前一操作节点即操作节点1211是否处于完成状态,如果操作节点1211处于完成状态,则执行操作节点1222对应的操作,若操作节点1211处于未完成状态,则不执行操作节点1222对应的操作。需要说明的是,在遍历至一操作节点时,无论该操作节点对应的操作是否执行,均在遍历完该操作节点后,进行该操作节点所在节点流中下一操作节点的遍历。此外,如果该操作节点位于数据流中,且该操作节点为其所在数据流中的首节点,则无需检测其所在数据流中前一操作节点是否处于已完成状态,而直接执行该操作节点对应的操作。
本公开中,节点流的状态数据用于表征在集成控制芯片工作期间,节点流的运行状态,包括随集成控制芯片工作进程而保持不变的静态数据和随集成控制芯片工作进程而动态变化的动态数据。其中,静态数据例如节点流的编号,节点流中的操作节点的数量等,动态数据例如节点流被遍历的次数。
操作节点的状态数据用于表征在集成控制芯片工作期间,操作节点的运行状态,包括随集成控制芯片工作进程而保持不变的静态数据和随集成控制芯片工作进程而动态变化的动态数据。其中,静态数据例如操作节点的编号,动态数据例如操作节点被遍历的次数。
关于环境识别模块140获取的各节点流的状态数据,举例来讲,可以包括对应该节点流的控制模块的编号;该节点流中的操作节点的数量;该节点流中操作节点被遍历的顺序;该节点流对应的用于表示该节点流中的部分具有较高相关度的操作节点组成的节点集合的表达式,该表达式用于表征该表达式对应的节点流所对应的车载部件的一个功能,例如蜂鸣器根据障碍物的距离信息进行蜂鸣的功能;该节点流对应的用于进行数据统计的单位时间,例如,统计该单位时间内该节点流对应的控制模块被调用的次数;该节点流对应的控制模块在单位时间被调用的次数;以及该节点流的同一表达式所对应的操作节点的操作均被执行时,该表达式对应的节点集合在单位时间的执行次数。
在一种可能的实施方式中,如图2所示,控制模块121的编号为01,控制模块122的编号为02,控制模块123的编号为03。进一步以控制模块122对应的节点流为例,该节点流中的操作节点1221~1223的数量为3,该节点流中的操作节点1221~1223被遍历的顺序依次为操作节点1221,操作节点1222,操作节点1223,该顺序可以用分别对应于操作节点1221,操作节点1222,操作节点1223的数字1,2,3组成的数字序列1-2-3表示,其中数字1表示操作节点1221第一个被遍历,其余同理。该节点流对应的表达式包括1-1-0,其中,操作节点1221对应该表达式1-1-0中第一个数字1,操作节点1222对应该表达式1-1-0中第二个数字1,操作节点1223对应该表达式1-1-0中第三个数字0,该表达式1-1-0可以表示,在该表达式对应的节点流中的操作节点1221~1223被遍历时,需要进行数据统计的操作节点组成的节点集合包括操作节点1221,以及操作节点1222,例如在该节点流中的操作节点1221~1223被遍历时,在同一次遍历过程中,需要分别统计操作节点1221和操作节点1222对应的操作是否被执行。
该节点流对应的用于进行数据统计的单位时间为120s,该节点流对应的控制模块122被调用的次数为1000次,以及表达式1-1-0所对应的操作节点1221和操作节点1222的操作均被执行时,该表达式1-1-0对应的节点集合的执行次数为300次,通过以下描述说明:
在120s的时间内,控制模块122被调用的次数为1000次,且在控制模块122的同一次被调用的过程中,也即控制模块122对应的节点流中的操作节点1221~1223的同一次遍历过程中,表达式1-1-0所对应的操作节点1221和操作节点1222的操作均被执行时,视为该表达式1-1-0对应的节点集合被执行1次,进而该表达式1-1-0对应的节点集合的执行次数增加1次,上述300次则表示在120s的时间内,按照上述方式,该表达式1-1-0对应的节点集合的执行次数为300次。由于同一控制模块的部分操作节点之间具有较高的相关度,例如蜂鸣器的控制模块对应的节点流包括4个操作节点,依次为用于接收胎压信息的操作节点,用于根据胎压信息确定蜂鸣器的振动频率的操作节点,用于接收雷达信息的操作节点,用于根据雷达信息确定蜂鸣器的振动频率的操作节点,由于用于接收胎压信息的操作节点,与用于根据胎压信息确定蜂鸣器的振动频率的操作节点的相关度较高,可以设置一对应该控制模块的表达式1-1-0-0,另外,由于用于接收雷达信息的操作节点,与用于根据雷达信息确定蜂鸣器的振动频率的操作节点的相关度较高,还可以设置一对应该控制模块的表达式0-0-1-1,进而可以基于表达式1-1-0-0对应的节点集合的执行次数分析轮胎的状态,基于表达式0-0-1-1对应的节点集合的执行次数分析车辆周围的障碍物的分布情况。对于表达式如何设定,本公开不作具体限制,可以根据具体的需求进行设定。
关于环境识别模块140获取的各操作节点的状态数据,举例来讲,可以包括操作节点的编号,该编号可以进行更改;操作节点的影子编号,该影子编号为操作节点的初始的编号的副本,且不可修改,当对操作节点的编号进行修改时,可能出现两个操作节点的编号相同的情况,此时可以通过操作节点的影子编号检索所需的操作节点;该操作节点的等待标记信息,用于表征是否需要等待至接收到该操作节点所在的数据流中上一操作节点的数据信息后,该操作节点对应的操作才被执行;该操作节点的等待次数,用于表征在等待接收该操作节点所在的数据流中的上一操作节点的数据信息时,该操作节点所在的节点流被遍历的次数;该操作节点的最大等待次数,用于表征操作节点运行正常可允许等待的最大次数,当该操作节点的等待次数大于该最大等待次数时,表征该操作节点对应的操作可能运行异常;该操作节点的合理等待次数,用于表征操作节点运行良好对应的可允许等待的最大次数,当该操作节点的等待次数小于或等于该合理等待次数时,表征该操作节点对应的操作运行良好;该操作节点的等待时间,用于表征在接收到该操作节点所在的数据流中的上一操作节点的数据信息之前,该操作节点等待的时长;该操作节点的最大等待时间,当该操作节点的等待时间超过该最大等待时间时,表征该操作节点对应的操作可能运行异常;表征在该操作节点所在的节点流的同一次遍历过程中,该操作节点是否被执行的执行标记信息。
在一种可能的实施方式中,如图2所示,控制模块122的操作节点1222的编号为[02,02],表示编号为02的控制模块122的第二个操作节点,设置该二维数组方便对操作节点进行检索,需要说明的是,操作节点的编号可以进行更改。操作节点1222的影子编号为[02,02],不可进行更改。操作节点1222的等待标记信息为1,表示操作节点1222需要等待至接收到该操作节点1222所在的操作节点1211,操作节点1222,操作节点1233组成的数据流中上一操作节点1211的数据信息后,该操作节点1222对应的操作才被执行,若该操作节点1222的等待标记信息为0,则表示该操作节点1222不需要等待接收操作节点1211的数据信息也可以执行。在等待接收操作节点1211的数据信息时,该操作节点1222所在的节点流被遍历的次数为200次,则该操作节点1222的等待次数为200次;该操作节点1222的最大等待次数为300次,由于该操作节点1222的等待次数小于300次,表征该操作节点1222对应的操作运行正常。该操作节点1222的合理等待次数为240次,由于该操作节点1222的等待次数小于240次,表征该操作节点1222对应的操作运行良好。该操作节点1222在接收到操作节点1211的数据信息之前,该操作节点1222等待的时长为150ms,则该操作节点1222的等待时间为150ms。该操作节点1222的最大等待时间为200ms,由于该操作节点1222的等待时间小于200ms,表征该操作节点1222对应的操作运行正常。在该操作节点1222所在的节点流的一次遍历过程中,若该操作节点1222被执行,则该操作节点当前的执行标记信息为1,若该操作节点1222未被执行,则该操作节点当前的执行标记信息为0。
关于环境识别模块140的具体实现方式,举例来讲,环境识别模型140可以为如图3所示的神经网络模型,包括输入层141,隐含层142和输出层143,该神经网络模型的输入层141的单个输入节点对应的输入数据可以为单个操作节点的上述例子中的所有状态数据组成的向量,也可以为单条操作流的上述例子中的所有状态数据组成的向量,且输入层可以包括对应集成控制芯片中所有操作节点和所有节点流的输入节点。输出层的单个输出节点对应一具体的环境状态,例如输出节点1431对应的环境状态为雨天,输出节点1432对应的环境状态为位于高速公路上,输出节点对应的输出数据可以为表征车辆位于该输出节点对应的环境状态的概率,例如输出节点1431对应的输出数据为0.3,表示车辆位于雨天的概率为0.3,输出节点1432对应的输出数据为0.8,表示车辆当前在高速公路上行驶的概率为0.8。在雨天时,驾驶员通常驾驶车辆以较低的速度行驶,且关闭车辆所有的车窗,而在晴天时,驾驶员可能驾驶车辆以较高速度行驶,且可能开启部分或所有的车窗,进而与车窗和驱动系统相关的操作节点的状态数据,以及这些操作节点所在的节点流的状态数据,在雨天和晴天时,分别呈现出不同的规律,进而可以根据这些操作节点的状态数据及节点流的状态数据识别雨天或晴天。在需要识别当前的环境状态时,可以将当前时刻获取的所有操作节点的状态数据和所有节点流的状态数据输入与之对应的输入节点中,进而得到每个输出节点对应的输出数据,用于判断当前时刻的环境状态。关于神经网络模型实现的具体方式为现有技术,本公开对其不作具体阐述。需要说明的是,环境识别模型,可以位于集成控制芯片内,例如,位于集成控制芯片中的环境识别模块中,也可以位于集成控制芯片外,例如,在独立于集成控制芯片的环境识别模块内。
为了提高环境识别模型识别具体环境状态的准确率,所述环境识别模型可以是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
沿用上述例子,一条训练样本包括同一历史时刻获取的集成控制芯片中所有操作节点的状态数据,以及所有的节点流的状态数据,并根据该历史时刻对应的具体环境状态,设置与该历史时刻对应的环境状态信息,例如一训练样本是车辆于雨天在高速路上行驶得到的,则可以人为设置对应输出节点1431和输出节点1432的输出数据均为1,并将这两个输出数据作为对应该历史时刻的环境状态信息,以得到训练样本。可以将不同环境下得到的上述训练样本对神经网络模型进行训练,提高神经网络模型识别环境状态的准确率。
当然,在其它可能的实施方式中,环境识别模型也可以是其它的机器学习模型,或者针对特定的操作节点或节点流设定的规则集合。
通过上述技术方案,在依次循环调用每一控制模块时,位于该数据流中的操作节点随被调用的控制模块中的每一操作节点的遍历,进行是否执行该数据流中的操作节点的判断,在确定执行该数据流中的操作节点时,对应的车载部件的事件被实现。当车辆在不同的环境状态中行驶时,驾驶员可能表现出不同的驾驶习惯,进而通过车载部件影响操作节点和节点流的状态数据,以使得在不同的环境状态下,操作节点的状态数据和节点流的状态数据体现出不同的规律,进而可以通过操作节点的状态数据和节点流的状态数据进行环境状态的识别,无需驾驶员手动输入环境状态信息,或专门设置相关的用于获取环境状态信息的传感器,确保了车辆可以进行环境状态的识别。
可选地,所述主控模块用于:
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级确定本次要调用的所述目标控制模块;或者,
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级和每一所述控制模块的遍历时长确定本次要调用的所述目标控制模块。
本公开中,控制模块的执行周期可以通过该控制模块相邻两次被调用的时刻之间的时长来体现,例如一控制模块的执行周期为5ms,表示该控制模块先后相邻两次被调用的时刻之间允许的最大时长为5ms,也即在5ms的时长内,该控制模块需要被调用一次。控制模块的执行时长为控制模块对应的节点流中的所有操作节点均被遍历所需花费的时长。
在一种可能的实施方式中,如果当前时刻存在必须要调用的控制模块,不执行会导致该控制模块的实际的相邻两次被调用的时刻之间的时长超过执行周期,则调用该必须要调用的控制模块,例如对于一执行周期为3ms,执行时长为1ms的控制模块,如果在第1ms初调用了该控制模块,在第2ms和第3ms没有调用该控制模块,那么在第4ms初必须调用该控制模块,如果第4ms初没有调用该控制模块,例如到第5ms初,才调用该控制模块,那么该控制模块相邻两次被调用时刻的时长实际为4ms,超过其执行时长3ms。
如果在同一时刻出现多个必须被调用的控制模块,则根据这些控制模块的优先级确定需要本次要调用的控制模块。例如对于执行周期分别为2ms和3ms,执行时长均为1ms的2个控制模块,执行周期为2ms的控制模块的优先级高于执行周期为3ms的控制模块的优先级,在第1ms初,根据优先级先调用了执行周期为2ms的控制模块,在第2ms初调用了其他执行时长为1ms的控制模块,那么在第3ms初,执行周期分别为2ms和3ms的2个控制模块均需要被调用,此时根据优先级调用执行周期为2ms的控制模块,而对于执行周期为3ms的控制模块,可以在执行周期为2ms的控制模块被调用完毕后,马上进行调用,也可以跳过本次对执行周期为3ms的控制模块的调用,在下一个周期再调用执行周期为3ms的控制模块。
如果本次没有必须要调用的控制模块,则在本次对应的可调用的控制模块中根据优先级确定本次要调用的控制模块。可调用的控制模块可以为满足预设条件的控制模块,例如预设条件可以为所有控制模块中排除前N次被调用的控制模块后剩余的控制模块,N为正整数,例如N可以为1或2。预设条件也可以为当前执行的事件对应的数据流中的每一操作节点所在的节点流对应的控制模块,本公开对于预设条件不作具体限制。
执行周期也可以通过同一控制模块上一次被调用结束的时刻与相邻的下一次刚被调用的时刻之间允许的最大时长来体现,在这种情况下,可以参照上述例子,不考虑控制模块的执行时长。例如对于一执行周期为3ms的控制模块,如果其在第1ms末被调用,在第2ms至第4ms,该控制模块没有被调用,那么在第5ms初,该控制模块必须被调用。
对于如何根据执行周期、优先级确定本次要调用的控制模块,或如何根据执行周期、优先级、执行时长确定本次要调用的控制模块,本公开不作具体限制,可以根据具体情况制定调用控制模块的规则。
通过执行周期的设定,保证了在绝大多数情况下,同一控制模块相邻两次被调用的间隔时长在可控范围内,避免控制模块过长时间不被调用,影响该控制模块对应的操作节点所在的数据流对应的事件的执行。
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点。
可选地,数据流中首节点的前一操作节点为该数据流的尾节点,所述主控模块还用于:
在对所述数据流中的任一操作节点执行对应的操作后,将该操作节点标记为已完成状态,并将该数据流中该操作节点的前一操作节点由已完成状态标记为未完成状态。
举例来讲,对于每一操作节点设置一标记位,该标记位通过数字0表示对应的操作节点为未完成状态,通过数字1表示对应的操作节点为已完成状态,则对于上述操作节点1211,操作节点1222,操作节点1233构成的数据流,初始状态时,每个操作节点的标记位均为0。当操作节点1211对应的操作被执行后,操作节点1211的标记位修改为1,操作节点1222和操作节点1233的标记位仍然为0,同理,当操作节点1222对应的操作被执行后,操作节点1222的标记位为1,操作节点1211,操作节点1233的标记位为0,当操作节点1233对应的操作被执行后,操作节点1233的标记位为1,操作节点1211,操作节点1222的标记位为0。该数据流中首节点即操作节点1211的前一操作节点为该数据流的尾结点即操作节点1233,数据流中的每一操作节点可以按照预先设置的顺序循环遍历,故在操作节点1233对应的操作被执行后,可以继续执行操作节点1211,且在该操作节点1211被执行后,将操作节点1233的标记位修改为0,将操作节点1211的标记位修改为1,操作节点1222的标记位保持不变为0,并继续重复上述该过程。
操作节点可以根据其所在数据流中的前一操作节点的标记的状态判断是否执行,且仅需读取一个操作节点的状态,而无需读取所有操作节点的状态,减小了运算量,加快了数据流中操作节点被遍历的速度。
可选地,所述主控模块还用于:
在对应所述数据流的车载部件启动后,执行所述数据流中的首节点对应的操作,并将该首节点标记为已完成状态。
数据流可以是在车辆出厂前就配置在集成控制芯片中,对应所述数据流的车载部件启动,可以为该数据流的任一操作节点所在的节点流对应的车载部件启动,在对应所述数据流的车载部件启动后,将该数据流添加至集成控制芯片运行的线程中,执行所述数据流中的首节点对应的操作,并参照上述描述,将该首节点标记为已完成状态,进而激活对于该数据流中每一操作节点的遍历,车载部件关闭后,从线程中移除该数据流即可。
对应数据流的车载部件启动后,表示需要实现其对应的事件,进而执行所述数据流中的首节点对应的操作,并将该首节点标记为已完成状态,以激活对于该数据流中每一操作节点的遍历,保证了对应该数据流的事件在需要实现时能够被激活执行,且在需要实现相应事件的时候才激活对数据流中每一操作节点的遍历,避免数据流在无需实现其对应事件被频繁激活,占用较多资源。
可选地,所述主控模块还用于:
在执行所述数据流的任一操作节点对应的操作之前,若该操作所需资源处于被占用状态,则将用于执行该操作的指令寄存到对应该资源的指令队列中;
所述主控模块还用于,对于每一所述指令队列,在对应该指令队列的资源被释放后,根据该资源执行该指令队列中处于队列头的指令,并在该指令执行之后,将该指令的下一指令调整到队列头位置。
操作所需资源可以为位于集成控制芯片外的公共资源例如CAN网络通信资源,例如一操作节点对应的操作是通过CAN网络获取光照传感器发送的光照强度信息,若在执行该操作之前,CAN网络被其它操作占用,例如其它一操作节点对应的操作正在通过CAN网络获取雨量传感器发送的雨量信息,那么将通过CAN网络获取光照传感器发送的光照强度信息对应的指令寄存到该资源的指令队列中,指令队列可以位于寄存器中。同时,如果还有其它需要使用CAN网络的操作,按照该操作对应的操作节点对应的控制模块被调用的先后顺序,依次将该操作对应的指令寄存至对应CAN网络通信资源的指令队列中。
在CAN网络通信资源被释放后,例如上述操作节点完成对雨量信息的获取后,执行该指令队列中位于队列头的指令,也即之前最先存入指令队列中的指令,并在该指令执行之后,将该指令的下一指令调整到队列头位置,以执行下一指令,之后重复该过程以执行指令队列中的所有指令。需要说明的是,上述寄存指令的过程和执行指令队列的队列头的指令的过程,可以同步动态进行。
若数据流中的操作节点对应的操作所需资源处于被占用状态,则该操作不能实现,通过将执行该操作的指令寄存到指令队列中,在所需资源被释放后,通过不断调用指令队列的队列头的指令,保证了指令在所需资源被释放后被执行,进而保证了数据流对应事件的实现。采用指令队列实现指令的先进先出,保证指令可以按照寄存的顺序执行。
当然,可以通过限制指令队列中指令的数量,来保证每一个指令在允许的时间内能够被执行,例如一指令允许的最大等待时长为300ms,而每一指令的执行时间为6ms,那么指令队列中可以寄存的指令的最大数量为50个,当指令队列排满时,可以通过加快指令的执行速度的方式,保证指令的等待时长少于其允许的最大等待时长。
可选地,所述主控模块还用于:
针对所述数据流中的操作节点,记录该操作节点等待在该数据流中的前一操作节点被执行完成所花费的时长,并在该时长大于或等于时长阈值时,中止该数据流;或者,
针对所述数据流中的操作节点,记录在所述数据流的首节点被标记为已完成状态后,该操作节点对应的操作被执行之前,该操作节点所属的节点流被遍历的次数,若该次数大于或等于次数阈值,则中止该数据流。
沿用上述例子,如图2所示,对于位于操作节点1211,操作节点1222,操作节点1233组成的数据流中的操纵节点1233,记录操作节点1222执行的时长,例如在检测到操作节点1211的上述标记位为1时,表示操作节点1211被执行完成,操作节点1222对应的操作开始执行,此时开始计时,若计时的时长超过时长阈值,说明数据流对应事件的实现可能出现异常,进而中止该数据流,避免在出现异常状况时,数据流中的操作节点长时间处于等待状态,导致数据流对应的事件长时间不能被实现,中止该数据流后可以开始下一轮对于该数据流中每一操作节点的遍历。
另一方面,对于操作节点1233,当其所在的数据流中的首节点即操作节点1211被标记为已完成状态后,开始记录操作节点1233所在的节点流被遍历的次数,在该节点流被遍历的次数小于次数阈值时,若该操作节点1233对应的操作被执行,表示该操作节点1233的执行状态良好,可以将操作次数置零,便于下次遍历该数据流中的操作节点时,记录该操作节点1233所属的节点流被遍历的次数。若该操作节点1233所属的节点流被遍历的次数达到次数阈值时,该操作节点1233对应的操作仍然未被执行,说明可能出现异常,继而中止数据流,可以开始下一轮对于该数据流中每一操作节点的遍历。
当然,在中止该数据流后,可以在主控模块的控制下输出错误提示信息,进而提示工作人员对车辆进行检修。
可选地,如图3所示,该集成控制芯片100还包括存储器130,用于存储每一操作节点的状态标记以及该操作节点的数据信息,所述状态标记用于表征该操作节点对应的操作是否被执行完成,所述数据信息用于表征所述该操作节点对应操作的被执行结果。
该存储器130可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器。
存储在该存储器130中的状态标记可以包括上述表征操作节点处于已完成状态或未完成状态的标记信息,也可以包括表征在遍历节点流中的操作节点时,该操作节点是否被遍历的标记信息。数据信息可以为操作节点被执行后,该操作节点所在的节点流对应的车载部件获取的信息,例如在上述例子中,操作节点1211通过雷达获取的障碍物的距离信息。数据信息也可以为操作节点被执行前,从其它操作节点输入该操作节点的信息,例如对于操作节点1222,操作节点1211输入操作节点1222的障碍物的距离信息,为操作节点1222的数据信息。当然,对于部分不需要进行信息交互的操作节点,其数据信息可以视为空。此外,主控模块执行的计算机程序,以及数据流的配置信息例如数据流包括操作节点1211,操作节点1222,操作节点1233的信息也可以存储在该存储器中。
所述主控模块用于:
在遍历所述节点流中的任一操作节点时,若该操作节点处于数据流中,则读取该数据流中该操作节点的前一操作节点的存储地址,得到所述前一操作节点的状态标记以及数据信息;
通过所述状态标记确定所述前一操作节点是否处于已完成状态;
若所述前一操作节点处于已完成状态,则根据所述数据信息执行该操作节点对应的操作。
沿用上述例子,如图2所示,操作节点1211对应的存储地址为A,对于操作节点1211,操作节点1222,操作节点1233组成的数据流中的操作节点1222,读取操作节点1222的前一操作节点即操作节点1211的存储地址为A,进而读取存储在存储地址A对应的存储区域中的操作节点1211的状态标记以及数据信息,例如状态标记为数字1表示该操作节点处于已完成状态,进而在读取到状态标记为1时,确定该操作节点1211处于已完成状态,操作节点1222根据数据信息执行对应操作。其中,操作节点1222根据数据信息执行对应操作的具体过程可以参见上述例子。
通过读取存储地址可以准确定位该操作节点的前一节点的状态标记以及数据信息,避免读取到错误的状态标记和数据信息。
本公开实施例的另一方面,示出了一种基于集成控制芯片的环境识别方法,所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点;
其中,如图5所示,所述环境识别方法包括:
S11,获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据。
S12,将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
关于上述实施例中的基于集成控制芯片的环境识别方法,其中各个步骤执行的具体方式已经在有关该集成控制芯片的实施例中进行了详细描述,此处将不做详细阐述说明。
通过上述技术方案,在依次循环调用每一控制模块时,位于该数据流中的操作节点随被调用的控制模块中的每一操作节点的遍历,进行是否执行该数据流中的操作节点的判断,在确定执行该数据流中的操作节点时,对应的车载部件的事件被实现。当车辆在不同的环境状态中行驶时,驾驶员可能表现出不同的驾驶习惯,进而通过车载部件影响操作节点和节点流的状态数据,以使得在不同的环境状态下,操作节点的状态数据和节点流的状态数据体现出不同的规律,进而可以通过操作节点的状态数据和节点流的状态数据进行环境状态的识别,无需驾驶员手动输入环境状态信息,或专门设置相关的用于获取环境状态信息的传感器,确保了车辆可以进行环境状态的识别。
可选地,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
图6是根据一示例性实施例示出的一种环境识别装置的框图,如图6所示,该装置200包括:
获取模块210,用于获取同一时刻下,集成控制芯片中各节点流的状态数据以及各操作节点的状态数据;
识别模块220,用于将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息,其中,
所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块用于被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点。
关于上述实施例中的环境识别装置200,其中各个模块执行操作的具体方式已经在有关集成控制芯片的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是,该装置200可以集成于集成控制芯片中,也可以设置于集成控制芯片之外,例如装置200可以集成于云服务器,或集成于车辆中位于集成控制芯片外的车载主机中。
通过上述技术方案,在依次循环调用每一控制模块时,位于该数据流中的操作节点随被调用的控制模块中的每一操作节点的遍历,进行是否执行该数据流中的操作节点的判断,在确定执行该数据流中的操作节点时,对应的车载部件的事件被实现。当车辆在不同的环境状态中行驶时,驾驶员可能表现出不同的驾驶习惯,进而通过车载部件影响操作节点和节点流的状态数据,以使得在不同的环境状态下,操作节点的状态数据和节点流的状态数据体现出不同的规律,进而可以通过操作节点的状态数据和节点流的状态数据进行环境状态的识别,无需驾驶员手动输入环境状态信息,或专门设置相关的用于获取环境状态信息的传感器,确保了车辆可以进行环境状态的识别。
可选地,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
本公开实施例的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被集成控制芯片中的主控模块执行时实现上述任一项所述基于集成控制芯片的环境识别方法的步骤。
本公开实施例的另一方面,还提供一种车辆,该车辆包括上述集成控制芯片,该集成控制芯片具体可参照以上对图1所述的集成控制芯片进行的说明,此处不再赘述。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (15)
1.一种集成控制芯片,其特征在于,所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,主控模块以及环境识别模块,其中,所述控制模块用于被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点;
所述环境识别模块,用于获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据,并将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
2.根据权利要求1所述的集成控制芯片,其特征在于,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
3.根据权利要求1所述的集成控制芯片,其特征在于,数据流中首节点的前一操作节点为该数据流的尾节点,所述主控模块还用于:
在对所述数据流中的任一操作节点执行对应的操作后,将该操作节点标记为已完成状态,并将该数据流中该操作节点的前一操作节点由已完成状态标记为未完成状态。
4.根据权利要求1所述的集成控制芯片,其特征在于,所述主控模块还用于:
在对应所述数据流的车载部件启动后,执行所述数据流中的首节点对应的操作,并将该首节点标记为已完成状态。
5.根据权利要求1至4中任一项所述的集成控制芯片,其特征在于,所述主控模块还用于:
在执行所述数据流的任一操作节点对应的操作之前,若该操作所需资源处于被占用状态,则将用于执行该操作的指令寄存到对应该资源的指令队列中;
所述主控模块还用于,对于每一所述指令队列,在对应该指令队列的资源被释放后,根据该资源执行该指令队列中处于队列头的指令,并在该指令执行之后,将该指令的下一指令调整到队列头位置。
6.根据权利要求1至4中任一项所述的集成控制芯片,其特征在于,所述主控模块还用于:
针对所述数据流中的操作节点,记录该操作节点等待在该数据流中的前一操作节点被执行完成所花费的时长,并在该时长大于或等于时长阈值时,中止该数据流;或者,
针对所述数据流中的操作节点,记录在所述数据流的首节点被标记为已完成状态后,该操作节点所属的节点流被遍历的次数,若该次数大于或等于次数阈值,则中止该数据流。
7.根据权利要求6所述的集成控制芯片,其特征在于,所述主控模块还用于:
在中止该数据流后,输出错误提示信息。
8.根据权利要求1至4中任一项所述的集成控制芯片,其特征在于,所述主控模块用于:
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级确定本次要调用的所述目标控制模块;或者,
根据所述多个控制模块的执行周期,以及所述多个控制模块之间的优先级和每一所述控制模块的遍历时长确定本次要调用的所述目标控制模块。
9.根据权利要求1至4中任一项所述的集成控制芯片,其特征在于,还包括存储器,用于存储每一操作节点的状态标记以及该操作节点的数据信息,所述状态标记用于表征该操作节点对应的操作是否被执行完成,所述数据信息用于表征所述该操作节点对应操作的被执行结果;
所述主控模块用于:
在遍历所述节点流中的任一操作节点时,若该操作节点处于数据流中,则读取该数据流中该操作节点的前一操作节点的存储地址,得到所述前一操作节点的状态标记以及数据信息;
通过所述状态标记确定所述前一操作节点是否处于已完成状态;
若所述前一操作节点处于已完成状态,则根据所述数据信息执行该操作节点对应的操作。
10.一种基于集成控制芯片的环境识别方法,其特征在于,所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点;
其中,所述环境识别方法包括:
获取同一时刻下,所述集成控制芯片中各节点流的状态数据以及各操作节点的状态数据;
将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息。
11.根据权利要求10所述的环境识别方法,其特征在于,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
12.一种环境识别装置,其特征在于,包括:
获取模块,用于获取同一时刻下,集成控制芯片中各节点流的状态数据以及各操作节点的状态数据;
识别模块,用于将所述节点流的状态数据和所述操作节点的状态数据输入至环境识别模型,以获得所述环境识别模型输出的环境状态信息,其中,
所述集成控制芯片中集成有与多个车载部件一一对应的多个控制模块,以及主控模块,其中,所述控制模块用于被所述主控模块调用以实现与所对应的车载部件相关联的多个操作;所述集成控制芯片中形成有与所述多个控制模块一一对应的多条节点流,每一所述节点流由所对应的控制模块执行的操作串联形成,每一所述操作分别作为所述节点流中的一个操作节点;所述集成控制芯片中还形成有与至少一个事件一一对应的至少一条数据流,每一所述数据流由多个操作节点串联形成,每一所述数据流包括不同所述节点流中的操作节点;
所述主控模块用于,循环依次调用每一所述控制模块,并针对每次调用的目标控制模块,遍历该目标控制模块对应的节点流中的每一操作节点;
对于遍历到的每一操作节点,判断该操作节点是否处于数据流中,若该操作节点处于数据流中,且该数据流中该操作节点的前一操作节点处于已完成状态,则执行该操作节点对应的操作;若该操作节点不处于数据流中,或者该操作节点处于数据流中而该数据流中该操作节点的前一操作节点处于未完成状态,则遍历该目标控制模块对应的节点流中该操作节点的后一操作节点。
13.根据权利要求12所述的环境识别装置,其特征在于,所述环境识别模型是通过多个训练样本对神经网络模型进行训练得到的,其中,一条所述训练样本包括:各节点流在一历史时刻对应的状态数据,各操作节点在同一历史时刻对应的状态数据,以及同一历史时刻对应的环境状态信息。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被集成控制芯片中的主控模块执行时实现权利要求10至11中任一项所述方法的步骤。
15.一种车辆,其特征在于,包括权利要求1-9中任一项所述的集成控制芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910581929.0A CN112224217B (zh) | 2019-06-30 | 2019-06-30 | 集成控制芯片,环境识别方法和装置,存储介质,车辆 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910581929.0A CN112224217B (zh) | 2019-06-30 | 2019-06-30 | 集成控制芯片,环境识别方法和装置,存储介质,车辆 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112224217A CN112224217A (zh) | 2021-01-15 |
CN112224217B true CN112224217B (zh) | 2021-09-03 |
Family
ID=74111336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910581929.0A Active CN112224217B (zh) | 2019-06-30 | 2019-06-30 | 集成控制芯片,环境识别方法和装置,存储介质,车辆 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112224217B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425224A (zh) * | 2007-10-30 | 2009-05-06 | 比亚迪股份有限公司 | 一种用于实时监测系统的数据采集方法 |
CN101870278A (zh) * | 2009-05-27 | 2010-10-27 | 中国汽车技术研究中心 | 在中央信息集成系统中实现两路can总线数据转发的方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7630807B2 (en) * | 2004-07-15 | 2009-12-08 | Hitachi, Ltd. | Vehicle control system |
US8863256B1 (en) * | 2011-01-14 | 2014-10-14 | Cisco Technology, Inc. | System and method for enabling secure transactions using flexible identity management in a vehicular environment |
US9384609B2 (en) * | 2012-03-14 | 2016-07-05 | Autoconnect Holdings Llc | Vehicle to vehicle safety and traffic communications |
US9287701B2 (en) * | 2014-07-22 | 2016-03-15 | Richard H. Sherratt and Susan B. Sherratt Revocable Trust Fund | DC energy transfer apparatus, applications, components, and methods |
-
2019
- 2019-06-30 CN CN201910581929.0A patent/CN112224217B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425224A (zh) * | 2007-10-30 | 2009-05-06 | 比亚迪股份有限公司 | 一种用于实时监测系统的数据采集方法 |
CN101870278A (zh) * | 2009-05-27 | 2010-10-27 | 中国汽车技术研究中心 | 在中央信息集成系统中实现两路can总线数据转发的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112224217A (zh) | 2021-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109784391A (zh) | 基于多模型的样本标注方法及装置 | |
CN109360429B (zh) | 一种基于模拟优化的城市道路交通调度方法及系统 | |
CN108335485A (zh) | 基于车牌识别数据的大事件交通动态仿真拥堵预测的方法 | |
CN111079533B (zh) | 无人车驾驶决策方法、无人车驾驶决策装置及无人车 | |
CN109377694A (zh) | 社区车辆的监控方法及系统 | |
EP3881228A2 (en) | Cnn classification of multi-frame semantic signals | |
US20220012194A1 (en) | Apparatus and method for data transmission and readable storage medium | |
CN111695389B (zh) | 一种车道线聚类方法及装置 | |
US10945888B2 (en) | Intelligent blind guide method and apparatus | |
CN113728369A (zh) | 用于预测车辆的交通状况的方法 | |
CN113508381A (zh) | 用于嵌入式软件应用的基于机器学习的异常检测 | |
US20220114477A1 (en) | Event driven configurable artificial intelligence workflow | |
CN112224217B (zh) | 集成控制芯片,环境识别方法和装置,存储介质,车辆 | |
CN112373475A (zh) | 车辆控制方法、装置、介质、设备及车辆 | |
CN112749727A (zh) | 本地服务器、影像辨识系统及其更新方法 | |
CN117615359B (zh) | 基于多种规则引擎的蓝牙数据传输方法及系统 | |
CN111491854A (zh) | 用于车辆的驾驶操纵辅助的方法、装置、计算机程序和计算机程序产品 | |
JP2020113255A5 (zh) | ||
CN112230572B (zh) | 集成控制芯片及其控制方法,存储介质,车辆 | |
CN115892068A (zh) | 车辆控制方法、装置、设备、介质及车辆 | |
CN110853364A (zh) | 数据监控方法和装置 | |
CN115529553A (zh) | 信号地图生成方法、装置、设备及存储介质 | |
WO2021147995A1 (zh) | 智能汽车的控制方法、装置及相关设备 | |
CN114368390A (zh) | 用于检验基于ki的信息处理系统的方法和设备 | |
CN112232130A (zh) | 下线检测方法、工控机、etc天线装置和系统 |
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 |