CN108621978B - 车辆及其控制方法 - Google Patents
车辆及其控制方法 Download PDFInfo
- Publication number
- CN108621978B CN108621978B CN201711054339.XA CN201711054339A CN108621978B CN 108621978 B CN108621978 B CN 108621978B CN 201711054339 A CN201711054339 A CN 201711054339A CN 108621978 B CN108621978 B CN 108621978B
- Authority
- CN
- China
- Prior art keywords
- task
- function
- executed
- unexecuted
- vehicle
- 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
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
- B60W50/06—Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
-
- 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
-
- 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
- B60W50/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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
- B60W2050/009—Priority selection
- B60W2050/0091—Priority selection of control inputs
-
- 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
- B60W50/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
- B60W2050/146—Display means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2400/00—Special features of vehicle units
- B60Y2400/90—Driver alarms
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开车辆及其控制方法。汽车开放系统架构(AUTOSAR)平台应用于的车辆可包括:信息获取部,被配置为从进程控制块获取关于第一任务的信息和关于在第一任务中执行的功能中的每个的类型和执行时间的信息;以及控制器,被配置为当未执行的功能在第一任务中未执行或未完全执行但是与在第一任务中执行的功能一起存在时实施控制以在第二任务中执行未执行功能。根据本公开,在任务中从一开始就未被执行或部分执行的功能可经检测,以在另一个任务中执行,使得程序可更稳定地执行。
Description
技术领域
本公开的实施例涉及车辆及其控制方法,并且更具体地,涉及以下技术,在汽车开放系统架构(AUTOSAR)平台应用于的车辆中,该技术用于获取关于任务的信息并且用于在从一开始就未被执行的功能或部分执行的功能不存在时在另一任务中执行未执行功能以及执行未执行功能的剩余部分。
背景技术
在现代社会,汽车是最常见的运输工具,使用车辆的人数逐渐增加。由于汽车技术的发展,在与过去相比时,生活中存在许多变化,如促进长途旅行、使生活更轻松等。
为了方便驾驶员,正在开发汽车的多种电子装置,其包括免提装置、全球定位系统(GPS)接收器、蓝牙装置、高通装置(high-pass device) 等,并且在汽车相关技术领域创造的电气/电子领域的新价值逐渐增加。
汽车电气/电子装置领域的重要组成部分是嵌入式软件技术,并且操作系统技术在嵌入式软件中起重要作用。
汽车开放系统架构(AUTOSAR)是由汽车制造商和汽车部件制造商协同组织用于开发和制定汽车软件结构的实际行业标准的伙伴关系,并且开放汽车电子系统及其接口(anoffene systeme und deren schnittstellen für die elektronik inkraftfahrzeugen)(OSEK)操作系统是被设计为可用于汽车的实时操作系统。OSEK操作系统的模块被定义为符合OSEK标准(即, ISO 17356-3),并且OSEK操作系统提供多任务功能、事件、资源管理功能、中断功能等。
然而,近年来,许多电气/电子部件安装在汽车中,并且许多程序经常被同时执行,并且在此类情况下,可能发生其中中央处理单元(CPU)过载以导致程序的不正确运行的问题。
因此,在现有技术中,通过以下方式防止CPU过载:使用微控制器单元(MCU)定时器来假定程序的任务时间和实际执行时间,然后计算任务时间和实际执行时间之间的百分比来向用户提供该百分比。
然而,因为在现有技术中不存在关于在任务中执行的每个功能的执行时间的计算信息,所以存在许多问题:未确定超过每个任务的目标时间之后未执行的功能,并且不存在用于自动解决执行超时的问题的另外技术。
发明内容
因此,本公开的一个方面是提供车辆及其控制方法,它们能够通过实时确定在任务中执行的功能的状态以检测错误并且通过在检测到错误时解决该错误而能够更稳定地执行程序。
本公开的附加方面将部分地在以下描述中阐述,并且部分地将从描述中显而易见,或者可通过本公开的实践而习知。
根据本公开的一个方面,提供应用了汽车开放系统架构(AUTOSAR) 平台的车辆,车辆可包括:信息获取部,被配置为从进程控制块获取关于第一任务的信息和关于在第一任务中执行的每个功能的类型和执行时间的信息;以及控制器,被配置为当未执行功能在第一任务中未被执行或者未被完全执行但是与第一任务中执行的功能一起存在时,实施控制以在第二任务中执行未执行功能。
未执行功能包括在第一任务中从一开始就未被执行的功能或在第一任务中被部分执行的功能。
控制器可通过从第二任务的整个时间减去必须在第二任务中执行的每个功能的执行时间的总和来确定第二任务具有时间,第二任务的时间比用于执行未执行功能所需时间长。
控制器可从多个任务中选择具有以下比率最小的一个任务作为第二任务:每个功能的执行时间的总和与整个时间的比率。
控制器可基于第一任务从多个任务中选择最接近所述第一任务的一个作为第二任务。
当存在多个未执行的功能时,控制器可实施控制以在多个第二任务中执行多个未执行的功能。
当不存在可执行未执行功能的第二任务时,控制器可通过与执行所执行功能的核不同的另一个核来执行未执行的功能。
车辆还可包括显示器,被配置为通知用户不存在任何能够执行未执行功能的核。
当不存在能够执行未执行功能的另一个核时,控制器可根据预设规则终止功能的执行。
信息获取部可通过插入工具代码获取关于第一任务和功能的信息。
根据本公开的另一个方面,可提供控制车辆的方法,汽车开放系统架构(AUTOSAR)平台应用于该车辆,所述方法包括:从进程控制块获取关于第一任务的信息和关于在第一任务中执行的功能中的每个的类型和执行时间的信息;确定未执行功能是否在所述第一任务中未被执行还是未被完全执行但与所述第一任务中执行的功能一起存在;以及当存在未执行的功能时,实施控制以在第二任务中执行未执行功能。
未执行功能可包括在所述第一任务中从一开始就未被执行的功能或在所述第一任务中被部分执行的功能。
方法还可包括通过从第二任务的整个时间减去必须在第二任务中执行的功能中的每个的执行时间的总和来确定第二任务具有时间,所述第二任务的时间比用于执行未执行的功能所需时间长。
方法还可包括从多个任务中选择一个作为第二任务,在多个任务中,该一个任务可具有功能中的每个的执行时间的总和与整个时间的最小比率。
方法还可包括从多个任务中选择一个作为第二任务。基于多个任务中的第一任务,该一个任务可最接近第一任务。
当存在多个未执行的功能时,控制的实施包括实施控制以在多个第二任务中执行多个未执行的功能。
当其中未执行的功能可被执行的第二任务不存在时,控制的实施还可包括通过与执行所执行功能的核不同的另一个核来执行未执行的功能。
方法还可包括通知用户不存在任何能够执行未执行功能的核。
方法还可包括当不存在能够执行未执行功能的另一个核时,根据预设规则终止功能的执行。
信息的获取还可包括通过插入工具代码获取关于第一任务和功能的信息。
根据本公开,在任务中从一开始就未被执行或部分执行的功能可经检测,以在另一个任务中执行,使得存在其中程序可更稳定地执行的效应。
附图说明
虽然将参考以下附图详细描述本公开,但是因为这些附图示出本公开的优选实施例,所以本公开的技术精神不应被理解为限于这些附图。
图1为示出根据本公开的一个实施例的车辆的外部外观的示图。
图2为示出根据本公开的一个实施例的车辆的内部外观的示图。
图3为示出根据本公开的一个实施例的车辆的配置的一部分的框图。
图4A、图4B和图4C为示出任务和在每个任务中执行的各种功能的示图。
图5为示出根据本公开的一个实施例的车辆中的操作顺序的流程图。
图6A和图6B为用于示出根据本公开的第一实施例的其中从一开始就未被执行的功能在和部分执行的功能在第二任务中执行的原理的示图。
图7和图8为用于示出根据本公开的第二实施例的其中从一开始就未执行和部分执行的功能在第二任务中执行的原理的示图。
图9和图10为用于示出根据本公开的第三实施例的其中从一开始就未执行的功能和部分执行的功能在第二任务中执行的原理的示图。
图11为用于示出根据本公开的第四实施例的其中从一开始就未执行的功能和部分执行的功能在第二任务中执行的原理的示图。
具体实施方式
本文所述的实施例和附图所示的配置是本公开的优选示例,并且可存在可以在提交本申请时替代本公开的实施例和附图的各种修改示例。
此外,本文所使用术语用于描述实施例,并且不旨在限定和/或限制本公开。除非上下文另有明确规定,单数形式包括复数形式。
本文中使用的术语“包括”,“包含”或“具有”指定所陈述特征、数字、步骤、操作、组件、元件或其组合的存在,除非在本申请中另有明确陈述,否则不排除一个或多个特征、数字、步骤、操作、组件、元件或其组合的存在或添加。
此外,包括本文中使用的“序数”如“第一”、“第二”等的术语可用于描述各种组件,但是组件不受这些术语的限制。
在下文中,本公开的实施例将被参考附图详细描述,以便由本领域技术人员实现。此外,为了清楚地描述本公开,在附图中省略了与描述无关的部分。在下文中,将参考图1和图2描述本公开应用于的车辆。
图1为示出根据本公开的一个实施例的车辆的外部外观的示图。
参考图1,根据本公开的一个实施例的车辆1可包括被配置成形成车辆1的外部外观的主体80,被配置成使车辆1移动的车轮93和94,被配置成使车轮93和94旋转的驱动装置95,被配置成将车辆1的内部与车辆外部阻隔的车门84,被配置成向车辆1内部的驾驶员提供前方视野的挡风玻璃87,被配置成向驾驶员提供车辆1后方视野的侧镜91和92,以及安装在车体80的后侧并且被配置成提供车辆1后方视野的后窗90,并且车辆主体80可包括引擎盖81、前挡泥板82、车门84、行李箱盖85和后顶盖侧板86。
车轮93和94包括设置在车辆1的前侧的前轮93和设置在车辆1的后侧的后轮94,并且驱动装置95将旋转力提供到前轮93和后轮94,使得主体80可在向前方向上或向后方向上移动。此类驱动装置95可采用被配置成通过燃烧化石燃料产生旋转力的发动机,或者被配置成通过接收从电容器(未示出)供应的电力来产生旋转力的电动机。
车门84可枢转地设置在主体80的左侧和右侧,以在打开时使驾驶员进入车辆1内部,并且在关闭时将车辆1的内部与外部阻隔。
挡风玻璃87可设置在主体80的上前侧,以使得车辆1内的驾驶员能够获取关于车辆1前方的视觉信息。另外,侧镜91和92可包括设置在主体80的左侧的左侧镜91和设置在主体80的右侧的右侧镜92,以使得车辆1内的驾驶员能够获得关于车辆1的侧方和后方的视觉信息。
此外,车辆1可包括感测装置,包括被配置成感测后方障碍物或另一车辆的近距离传感器,被配置成感测是否落下降水如雨、雪或冰雹的雨水传感器。
例如,近距离传感器可在车辆1的侧方或后方发射感测信号,然后从障碍物(如另一个车辆,等等)接收反射信号。另外,近距离传感器可感测车辆1的后方障碍物是否存在,并且基于所接收的反射信号的波形,检测后方障碍物的位置。此类近距离传感器可采用以下方法:发射超声信号且使用来自障碍物的反射超声信号来检测直到障碍物的距离。
图2为示出根据本公开的一个实施例的车辆的内部的配置图。
被配置成与外界通信的远程信息处理终端(未示出)可安装在车辆内部10中。远程信息处理是电信和信息学的组合,并且其是指使得驾驶员能够通过互联网在车辆中发送和接收电子邮件或搜索各种类型信息的系统。
远程信息处理终端可被配置成计算机、无线通信功能和卫星导航功能均具有的装置。因此,驾驶员可使用远程信息处理终端连接到在外部提供的远程信息处理服务器,并且通过此类远程信息处理终端,他或她可使用各种功能(诸如发送和接收数据、图像等)。
因为远程信息处理终端安装在车辆内部10中,所以其不是驾驶员可见的外部装置,用户通常可使用车辆内部10的显示器70来使用远程信息处理功能。
空调装置16可安装在车辆内部10中。空调装置16是指这样的装置,该装置自动控制空调环境(包括车辆1的内部和外部环境条件,空气的吸入和排出,空气的循环,冷却和加热状态等),或者根据来自用户的控制命令来控制空调环境。例如,空调装置16可实施冷却操作和加热操作这两者,并且可通过经由通风口排出经加热或冷却的空气来实施车辆内部10 中的温度控制。
同时,车辆内部10可包括仪表板14,被配置成使得车辆1的驾驶员能够坐在其上的驾驶员座椅40以及被配置成显示车辆1的操作信息的集群显示器51和52,在仪表板14处安装被配置成使得驾驶员能够操作车辆 1的各种装置。
仪表板14可从挡风玻璃11的下部朝向驾驶员伸出,以使得驾驶员能够在向前看时操纵安装在仪表板14处的各种装置。
驾驶员座椅40可设置在仪表板14的后面,以使得驾驶员在从车辆1 向前看以及查看仪表板14的各种装置时以稳定姿势驾驶车辆1。
集群显示器51和52可设置在仪表板14的驾驶员座椅40侧,并且可包括被配置成显示车辆1的行驶速度的驾驶速度仪表51和被配置成显示动力装置(未示出)的转速的转速/分钟(rpm)仪表52。
另外,车辆内部10可包括被配置成操纵车辆1的各种装置的独立飞梭旋转键(jogdial)60。飞梭旋转键60可经由通过使飞梭旋转键60旋转或向其施加压力而实施驾驶操作的方法来操作,并且该飞梭旋转键60还可具有触摸板,该触摸板具有触摸识别功能且经操作以实施用于驾驶操作的手写识别,该驱动操作使用用户的手指或具有触摸识别功能的独立工具来输入。
用于操纵车辆1的行驶的转向装置可包括被配置成接收由驾驶员输入的行驶方向的方向盘42,被配置成将方向盘42的转动转换成往复运动的转向齿轮(未示出)以及被配置成将转向齿轮(未示出)的往复运动传递到前车轮93的转向连杆(未示出)。此类转向装置可通过改变方向盘42 的旋转轴的方向来改变车辆1的行驶方向。
制动装置可包括被配置成接收从驾驶员输入的制动操纵的制动踏板 (未示出),联接到车轮的制动鼓(未示出),被配置成使用摩擦力使制动鼓(未示出)的旋转停止的制动片,等等。此类制动装置可使车轮的旋转停止以制动车辆的行驶。
如上所述,已经参考图1和图2描述外部配置和内部配置。在下文中,将参考附图描述本公开的特征。
图3为示出根据本公开的一个实施例的车辆1的配置的一部分的框图。
参考图3,车辆1可包括进程控制块110、信息获取部120、控制器 130以及显示器140,该进程控制块110被配置成存储关于一个或多个任务以及在该一个或多个任务中执行的一个或多个功能的信息,信息获取部 120被配置成从进程控制块110获取关于一个或多个任务和一个或多个功能的信息,控制器130被配置成当从一开始就未执行的功能或部分执行的功能存在于第一任务200中时,基于所获取的信息,实施控制以在第二任务300中执行未执行功能,显示器140被配置成向外界显示其中未执行的功能可被执行的第二任务300的不存在。
进程控制块是指存储装置,诸如RAM存储器、闪速存储器、ROM存储器、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器 (EEPROM)、寄存器、硬盘,以及可移动磁盘,其中操作系统能够存储关于进程的有用信息。因此,进程控制块110包括关于以下项的信息:进程的当前状态、进程的唯一标识符、进程的优先级、指示其中加载了进程的存储装置的指针、指示被分配到进程的资源的指针、存储寄存器内容的存储装置等。
当操作系统即将使CPU切换到另一个进程时,各种类型的信息将被立即存储于在对应进程的进程控制块中设置的存储装置中,并且将来,当再次执行该对应进程时,重新使用存储在存储装置中的信息。
因此,进程控制块110包括关于以下项的信息:管理进程所需的调度状态(即,就绪状态、运行状态、等待状态和挂起状态)、任务的标识符 (ID)、CPU定时器,等等。
信息获取部120用于获取关于在进程控制块110中存在的任务以及在该任务中执行的功能的信息,并且将所获取的信息发送到控制器130。
具体地,通过将工具代码插入到操作系统(OS)内核中,信息获取部 120可从进程控制块110获取关于以下项的信息:每个任务的ID、每个任务的当前状态(即,任务中的每者是处于活动状态还是处于空闲状态)、以及任务中的每者的开始时间以及结束时间。
此后,信息获取部120可基于所获取的任务获取关于在任务中的每者中执行的每个功能的类型以及功能中的每者的执行时间的信息,以发送所获取的信息。
具体地,信息获取部120可通过在功能中的每者的开始点和结束点处产生中断并且当功能中的每者开始时插入工具代码(唯一功能ID被输入到其中)来获取在每个任务中执行的每个功能的开始时间和结束时间。
图4A、图4B和图4C是示意性地示出如上所述获取的关于任务以及在任务中的每者中执行的功能的信息的示图。
参考图4A、图4B和图4C,任务210、220和230中的每一者可包括多个功能。例如,如图4所示,在任务A210中执行四个功能a1、a2、a3和a4,并且任务A210的整个时间与在任务A210中执行的四个功能a1、 a2、a3和a4的执行时间的总和相同。
如图4B所示,三个功能b1、b2和b3在任务B 220中执行。因为在任务B 220中存在其中无功能被执行的部分224,所以任务B 220的整个时间大于在任务B 220中执行的三个功能b1、b2和b3的执行时间的总和。因此,部分224可用作用于执行在另一个任务中未执行的功能的一部分。下面将对其进行详细描述。
如图4C所示,三个功能c1、c2和c3在任务C 230中执行。与任务B 220 不同,在执行任务C 230中的三个功能c1、c2和c3之前,存在其中无功能被执行的部分231。
控制器130可基于从信息获取部120获取的关于任务中每者的信息实施控制第一任务200、第二任务300以及包括在第一任务200和第二任务 300中的功能,并且可将满足第二任务300要求的任务的不存在发送到显示器500。
具体地,第一任务200被称为作为目标的任务,控制器130为了该目标而确定在至少一个任务中是否存在未执行的功能,并且第二任务300被称为当第一任务200中存在未执行的功能时可在其中执行的第二任务300。
因此,第二任务300应具有未执行功能可在其中被执行的剩余时间,即,第二任务300应具有任务的整个时间比在该任务中执行的功能的执行时间的总和长并且剩余时间应比执行未执行功能所需的时间长的特性。
此外,未执行的功能可具体地包括从一开始就未执行的功能或部分执行的功能。
因此,当在第一任务200中存在未执行的功能时,控制器130可实施控制以在第二任务300中执行未执行的功能,并且当在第一任务200中存在多个未执行的功能时,控制器130可检索多个第二任务300以在多个第二任务300中执行多个未执行的功能。
图5为示出根据本公开的一个实施例的车辆中的操作顺序的流程图。
参考图5,在操作S100中,本公开的车辆1从进程控制块110获取关于第一任务200的信息和关于在第一任务200中执行的功能的信息。
该信息包括关于第一任务200的ID和CPU定时器的信息,关于第一任务200的整个时间及该任务200的当前状态的信息,以及关于在第一任务200中执行的功能类型和功能中的每者的执行时间的信息。
当获取关于第一任务200的信息时,在操作S200中确定第一任务200 中是否存在未执行的功能。
未执行的功能可包括从一开始就未执行的功能或部分执行的功能。
当检索到的第一任务200的所有功能均被正常执行时,进程返回到操作S100,否则,当在第一任务200中存在未执行的功能时,在操作S300 中检索第二任务300。
第二任务300被称为当第一任务200中存在未执行的功能时可在其中被执行第二任务300,其中。因此,第二任务300应具有未执行功能可在其中被执行的剩余时间,即,任务的整个时间比在该任务中执行的功能的执行时间的总和长并且剩余时间应比执行该未执行功能所需的时间长的特性。
当存在满足上述要求的第二任务300时,在第一任务200中未被执行的该未执行功能在操作S400和S500中执行,否则,在S600操作中,检索未执行的功能是否可由其他核执行。
核被称为CPU,并且在其中未执行的功能可由其他核执行的情况下,在操作S700中由另一个核执行,否则,在操作S800,通知用户未执行的功能不可由其他核执行,使得防止风险。
另外,虽然在图中未示出,但是在未执行功能甚至也不可由其他核执行时,可根据预设标准来终止。即,当未执行的功能甚至不可由其他核执行时,CPU可被确定为过载,使得根据预设标准可终止未执行的功能,以防止CPU过载。
可根据车辆环境来不同地设定预设标准,并且可将非关键功能、具有最少执行时间或长执行时间的功能等确定为标准。此外,可根据用户偏好设定预设标准。
图6A和图6B是用于例示根据本公开的第一实施例的未执行功能在第二任务中执行的原理的示图。
参考图6A,三个功能a1、a2和a3在任务A210中执行,两个功能b1和b2在任务B 220中执行,并且与任务A210不同,任务B 220具有剩余时间223。
原则上,三个功能a1、a2和a3应该在任务A210中执行,但是如图6A 所示,存在其中在分配给任务A210的整个时间期间未执行每个功能的情况。例如,在分配给任务A210的整个时间期间,未执行功能a3。
根据相关技术,当存在未执行的功能时,仅向用户通知存在未执行功能,并且他或她不知道未执行的功能是否是功能a3 213,以及同时,功能 a3 213是否不可执行。
另一方面,根据本公开,当如图6A所示存在未执行的功能a3 213时,检索未执行功能可在其中被执行的任务B 220,然后未执行的功能a3 213 在剩余时间223内执行,使得存在可提供更稳定系统的效果。因此,在图 6A的情况下,任务B 220成为第二任务300。
图6B的基本原理与图6A的基本原理相同,不同之处在于未执行功能的类型。即,图6A示出未执行的功能被设定为从一开始就未被执行的功能a3,并且在任务B 220中执行,而图6B示出仅执行未执行功能的一部分,然后将未执行功能的剩余部分设定为剩余部分213b,使得剩余部分 213b在任务B 220中执行。因此,基本原理彼此相同,所以将省略另外的描述。
图7和图8是示出根据本公开的第二实施例的确定第二任务300的进程的示图。
参考图7,如同在图6中,在任务A210中存在未执行的功能a4 214。另外,任务B 220和任务C 230各自具有剩余时间224和233。
因此,根据在图6中描述的标准,任务B 220和任务C 230均具有剩余时间,并且因此它们可成为第二任务300,但是在图7中,仅任务C 230 成为第二任务300。其原因是执行未执行的功能a4 214需要时间a,任务 B 220仅具有比时间a短的时间b作为剩余时间,而任务C 230具有比时间a长的时间c。因此,在图7的情况中,可变成第二任务的任务是任务 C230。
此类原理可表达为由边际比率确定,并且本公开中的边际比率是指在任务的整个时间与剩余时间(其通过从任务的整个时间减去在任务中执行的功能的总时间而获得)之间的比例。例如,当任务的整个时间为1,并且在任务中执行的功能的总时间为0.8时,边缘比率变为0.2,并且当在任务中执行的功能的总时间为0.4时,边际比率变成0.6。因此,在边缘比率较大时,剩余时间增加,因此最好设定未执行功能可在其中被执行的第二任务300。因为时间更加足以确保,所以存在能够稳定地驱动系统的优点。
图8的基本原理与图7的基本原理相同,不同之处在于未执行功能的类型。即,图7示出未执行的功能被设定为从一开始就未执行的功能a4 214 并且在任务C 230中执行,而图8示出未执行功能的仅一部分被执行,然后其剩余部分被设定为剩余部分214b,使得剩余部分214b在任务C 230 中执行。因此,图8的基本原理与图7的基本原理相同,所以将省略另外的描述。
图9为示出根据本公开的第三实施例的确定第二任务300的进程的示图。
参考图9,如同在图7中,未执行的功能a4 214存在于任务A210中,而任务B 220和任务C 230各自具有剩余时间223和233。另外,时间b 和时间c中的每一个都比时间a长,使得未执行功能a4 214可在任务B 220 的剩余时间223和任务C 230的剩余时间233中的一个中执行。
然而,在这种情况下,控制器130可将(即,基于任务A210)最接近第一任务200的任务B 220设定为第二任务300以执行未执行的功能a4 214。对此的原因是,任务B 220在任务C 230之前被执行,使得通过设定任务B 220而非任务C 230作为第二任务300,未执行的功能更快地被执行。
图10的基本原理与图9的基本原理相同,不同之处在于未执行功能的类型。即,图9示出未执行的功能被设定为从一开始就未执行的功能a4 214并且在任务B 220中执行,而图10示出未执行功能的仅一部分被执行,然后将其剩余部分设定为剩余部分214b,使得剩余部分214b在任务C 220 中执行。因此,图10的基本原理与图9的基本原理相同,所以,将省略另外的描述。
图11为示出根据本公开的第四实施例的确定第二任务300的进程的示图。
参考图11,两个未执行功能213b和214存在于任务A 210中,并且任务B 220和任务C 230各具有剩余时间223和224。
在图11中,因为存在两个未执行的功能213b和214,所以控制器130 可指定两个第二任务300。即,在图11中,任务B 220和任务C 230可各自被指定为第二任务300。
另外,可在任务B 220中执行在两个未执行功能213b和214中的应首先执行的功能a3 213b,而其应该其次执行的功能a4 214可根据两个未执行的功能213b和214的顺序执行。在这种情况下,存在这样的优点,其中系统可更稳定地操作,因为未执行的功能的顺序在不混乱的情况下前进。
本文所公开的各种实施例可使用耦合到存储计算机可执行指令的存储器(或其他非暂态机器可读记录介质)的一个或多个处理器来实现,所述计算机可执行指令用于使一个或多个处理器实施上述功能(包括关于信息获取部120和控制器130描述的功能)且/或实施以上参考图5中所示的流程图描述的操作。
在上文中,已经参考附图描述本公开的特征和效果。因为在现有技术中不存在关于在任务中执行的每个功能的执行时间的计算信息,所以存在许多问题:未确定超过每个任务的目标时间之后未执行的功能,并且不存在用于自动解决执行超时的问题的另外技术。
通过以上描述可显而易见的是,根据本公开的实施例的车辆及其控制方法能够检测在任务中从一开始就未执行的功能或在任务中部分执行的功能,以在另一任务中执行从一开始就未执行的功能或部分执行的功能,使得存在可更稳定地执行程序的效果。
虽然已经参考具体实施例和附图描述了实施例,但是本领域技术人员可通过本公开的以上描述中得出各种变化和修改。例如,应当理解,即使当本文所描述的技术可按与所描述方法不同的顺序实施时,也可实现合适结果,和/或所描述系统、结构、装置、电路等的组件以不同于所述方法的形式耦合或组合,或用其它组件或等同物代替或替换。因此,其它实施例和权利要求的等同物在所附权利要求的范围内。
Claims (18)
1.一种应用了汽车开放系统架构(AUTOSAR)平台的车辆,所述车辆包括:
信息获取部,被配置为从进程控制块获取关于第一任务的信息和关于在所述第一任务中执行的每个功能的类型和执行时间的信息;以及
控制器,被配置为当未执行功能在所述第一任务中未被执行或者未被完全执行但是与所述第一任务中执行的功能一起存在时,实施控制以在第二任务中执行所述未执行功能,
其中,所述控制器通过从所述第二任务的整个时间减去必须在所述第二任务中执行的每个功能的执行时间的总和,确定所述第二任务具有一时间,由所述控制器确定的所述第二任务的所述时间比用于执行所述未执行功能所需的时间长。
2.根据权利要求1所述的车辆,其中,所述未执行功能包括在所述第一任务中从一开始就未被执行的功能或在所述第一任务中被部分执行的功能。
3.根据权利要求1所述的车辆,其中,所述控制器从多个任务中选择具有以下比率最小的一个任务作为所述第二任务:每个功能的执行时间的总和与所述整个时间的比率。
4.根据权利要求1所述的车辆,其中,所述控制器基于所述第一任务从多个任务中选择最接近所述第一任务的一个任务作为所述第二任务。
5.根据权利要求1所述的车辆,其中,当存在多个未执行功能时,所述控制器实施控制以在多个第二任务中执行所述多个未执行功能。
6.根据权利要求1所述的车辆,其中,当不存在能够执行所述未执行功能的所述第二任务时,所述控制器利用与执行所述执行的功能的核不同的另一个核来执行所述未执行功能。
7.根据权利要求1所述的车辆,还包括:
显示器,被配置为向用户通知不存在任何能够执行所述未执行功能的核。
8.根据权利要求6所述的车辆,其中,当不存在能够执行所述未执行功能的另一个核时,所述控制器根据预设规则终止功能的执行。
9.根据权利要求1所述的车辆,其中,所述信息获取部通过插入工具代码获取关于所述第一任务和功能的信息。
10.一种控制应用了汽车开放系统架构(AUTOSAR)平台的车辆的方法,所述方法包括:
从进程控制块获取关于第一任务的信息和关于在所述第一任务中执行的每个功能的类型和执行时间的信息;
确定未执行功能是否在所述第一任务中未被执行还是未被完全执行但与所述第一任务中执行的功能一起存在;
通过从第二任务的整个时间减去必须在所述第二任务中执行的每个功能的执行时间的总和,确定所述第二任务具有一时间,所述第二任务的所述时间比用于执行所述未执行功能所需的时间长;以及
当存在所述未执行功能时,实施控制以在所述第二任务中执行所述未执行功能。
11.根据权利要求10所述的方法,其中,所述未执行功能包括在所述第一任务中从一开始就未被执行的功能或在所述第一任务中被部分执行的功能。
12.根据权利要求10所述的方法,还包括:从多个任务中选择一个任务作为所述第二任务,
其中,在所述多个任务中,所述一个任务具有的以下比率最小:每个功能的执行时间的总和与所述整个时间的比率。
13.根据权利要求10所述的方法,还包括:从多个任务中选择一个任务作为所述第二任务,
其中,所述一个任务基于所述第一任务在所述多个任务中最接近所述第一任务。
14.根据权利要求10所述的方法,其中,当存在多个未执行功能时,实施的控制包括:实施控制以在多个第二任务中执行所述多个未执行功能。
15.根据权利要求10所述的方法,其中,当不存在能够执行所述未执行功能的所述第二任务时,实施的控制进一步包括:利用与执行所述执行的功能的核不同的另一个核来执行所述未执行功能。
16.根据权利要求10所述的方法,还包括:
向用户通知不存在任何能够执行所述未执行功能的核。
17.根据权利要求15所述的方法,还包括:当不存在能够执行所述未执行功能的另一个核时,根据预设规则终止功能的执行。
18.根据权利要求10所述的方法,其中,所述信息的获取包括:通过插入工具代码获取关于所述第一任务和功能的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2017-0034684 | 2017-03-20 | ||
KR1020170034684A KR102309429B1 (ko) | 2017-03-20 | 2017-03-20 | 차량 및 그 제어 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108621978A CN108621978A (zh) | 2018-10-09 |
CN108621978B true CN108621978B (zh) | 2022-08-12 |
Family
ID=63520968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711054339.XA Active CN108621978B (zh) | 2017-03-20 | 2017-10-31 | 车辆及其控制方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10843704B2 (zh) |
KR (1) | KR102309429B1 (zh) |
CN (1) | CN108621978B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102360725B1 (ko) * | 2020-12-15 | 2022-02-08 | 현대오토에버 주식회사 | 차량용 제어기 및 그것의 에러 관리 방법 |
US20230222846A1 (en) * | 2022-01-11 | 2023-07-13 | Ford Global Technologies, Llc | Task managing system for testing-configuring vehicles based on a task order and method thereof |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030204549A1 (en) | 1998-10-22 | 2003-10-30 | Wolfgang Eibach | Operating system for handling dynamic and static tasks |
JP2001167060A (ja) * | 1999-12-07 | 2001-06-22 | Hitachi Ltd | タスク並列化方法 |
JP2001350639A (ja) | 2000-06-06 | 2001-12-21 | Atr Adaptive Communications Res Lab | ソフトリアルタイムにおけるスケジューリング方法 |
JP2002342097A (ja) * | 2001-05-17 | 2002-11-29 | Matsushita Electric Ind Co Ltd | タスク割当可能時間決定装置及びタスク割当可能時間決定方法 |
JP4028444B2 (ja) * | 2003-06-27 | 2007-12-26 | 株式会社東芝 | スケジューリング方法およびリアルタイム処理システム |
JP3920818B2 (ja) * | 2003-07-22 | 2007-05-30 | 株式会社東芝 | スケジューリング方法および情報処理システム |
JP4016010B2 (ja) * | 2004-03-26 | 2007-12-05 | 株式会社東芝 | リアルタイムスケジューリング可能性判定方法およびリアルタイムシステム |
US7523092B2 (en) * | 2004-12-14 | 2009-04-21 | International Business Machines Corporation | Optimization of aspects of information technology structures |
US7406689B2 (en) * | 2005-03-22 | 2008-07-29 | International Business Machines Corporation | Jobstream planner considering network contention & resource availability |
JP4074296B2 (ja) * | 2005-03-25 | 2008-04-09 | 株式会社東芝 | スケジューリング可能性判定方法、リアルタイムシステム及びプログラム |
JP2006295715A (ja) * | 2005-04-13 | 2006-10-26 | Toyota Motor Corp | 車両遠隔操作装置及びシステム |
JP2008276674A (ja) | 2007-05-07 | 2008-11-13 | Denso Corp | タスクの実行時間を特定することのできる電子計算装置、および当該電子計算装置用のプログラム |
US7831813B2 (en) * | 2007-12-17 | 2010-11-09 | Globalfoundries Inc. | Uses of known good code for implementing processor architectural modifications |
US8612729B2 (en) * | 2007-12-17 | 2013-12-17 | Advanced Micro Devices, Inc. | Known good code for on-chip device management |
US8856196B2 (en) * | 2008-07-22 | 2014-10-07 | Toyota Jidosha Kabushiki Kaisha | System and method for transferring tasks in a multi-core processor based on trial execution and core node |
US8245234B2 (en) * | 2009-08-10 | 2012-08-14 | Avaya Inc. | Credit scheduler for ordering the execution of tasks |
JP2011216004A (ja) | 2010-04-01 | 2011-10-27 | Toyota Motor Corp | マイクロプロセッサ、電子制御ユニット、実行比率切り替え方法 |
US8606375B2 (en) * | 2010-06-04 | 2013-12-10 | The Mathworks, Inc. | Interactive control of multiple input multiple output control structures |
US8566633B2 (en) * | 2011-02-10 | 2013-10-22 | GM Global Technology Operations LLC | Method of dynamic allocation on a statically allocated and embedded software architecture |
JP5938165B2 (ja) * | 2011-02-25 | 2016-06-22 | 任天堂株式会社 | 情報処理装置、情報処理プログラム、情報処理方法および情報処理システム |
EP2702517A1 (en) * | 2011-04-23 | 2014-03-05 | Deubzer, Michael | Method for the design evaluation of a system |
KR101233214B1 (ko) * | 2011-06-02 | 2013-02-15 | 엘지전자 주식회사 | 이동통신 단말기 및 그 동작방법 |
US9128763B2 (en) * | 2011-08-23 | 2015-09-08 | Infosys Limited | System and method for job scheduling optimization |
WO2013094032A1 (ja) * | 2011-12-21 | 2013-06-27 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
US9600241B2 (en) * | 2012-02-15 | 2017-03-21 | The Mathworks, Inc. | Unified state transition table describing a state machine model |
WO2014016649A1 (en) * | 2012-07-27 | 2014-01-30 | Freescale Semiconductor, Inc. | Method and apparatus for implementing instrumentation code |
US8819618B2 (en) * | 2012-09-26 | 2014-08-26 | The Mathworks, Inc. | Behavior invariant optimization of maximum execution times for model simulation |
KR20140078344A (ko) | 2012-12-17 | 2014-06-25 | 콘티넨탈 오토모티브 시스템 주식회사 | 차량 소프트웨어의 성능 판단방법 |
US9959142B2 (en) * | 2014-06-17 | 2018-05-01 | Mediatek Inc. | Dynamic task scheduling method for dispatching sub-tasks to computing devices of heterogeneous computing system and related computer readable medium |
US9513967B2 (en) * | 2014-09-18 | 2016-12-06 | International Business Machines Corporation | Data-aware workload scheduling and execution in heterogeneous environments |
US9696787B2 (en) * | 2014-12-10 | 2017-07-04 | Qualcomm Innovation Center, Inc. | Dynamic control of processors to reduce thermal and power costs |
JP2016162418A (ja) * | 2015-03-05 | 2016-09-05 | 富士通株式会社 | 検索制御プログラム、検索制御方法および検索制御装置 |
KR101728326B1 (ko) * | 2015-03-19 | 2017-05-02 | 현대자동차주식회사 | 차량, 서버 및 이를 포함하는 차량 모니터링 시스템 |
US9501328B2 (en) * | 2015-03-30 | 2016-11-22 | Qualcomm Incorporated | Method for exploiting parallelism in task-based systems using an iteration space splitter |
KR101794568B1 (ko) * | 2016-03-29 | 2017-12-01 | 현대오트론 주식회사 | 오토사 운영체제의 태스크 분배 방법 및 그 장치 |
US10698692B2 (en) * | 2016-07-21 | 2020-06-30 | Advanced Micro Devices, Inc. | Controlling the operating speed of stages of an asynchronous pipeline |
US10275280B2 (en) * | 2016-08-10 | 2019-04-30 | International Business Machines Corporation | Reserving a core of a processor complex for a critical task |
US10289448B2 (en) * | 2016-09-06 | 2019-05-14 | At&T Intellectual Property I, L.P. | Background traffic management |
US10503544B2 (en) * | 2016-10-17 | 2019-12-10 | Toyota Jidosha Kabushiki Kaisha | Efficient mapping from task graphs to dynamic system platforms |
US9747139B1 (en) * | 2016-10-19 | 2017-08-29 | International Business Machines Corporation | Performance-based multi-mode task dispatching in a multi-processor core system for high temperature avoidance |
US10664413B2 (en) * | 2017-01-27 | 2020-05-26 | Lear Corporation | Hardware security for an electronic control unit |
US11237866B2 (en) * | 2017-05-04 | 2022-02-01 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing a scheduler and workload manager with scheduling redundancy and site fault isolation |
DE102018221534A1 (de) * | 2017-12-18 | 2019-06-19 | Robert Bosch Engineering And Business Solutions Private Limited | System und Verfahren zum Messen der Reaktionszeit von Ereignisketten |
US11475306B2 (en) * | 2018-03-22 | 2022-10-18 | Amazon Technologies, Inc. | Processing for multiple input data sets |
-
2017
- 2017-03-20 KR KR1020170034684A patent/KR102309429B1/ko active IP Right Grant
- 2017-10-19 US US15/788,382 patent/US10843704B2/en active Active
- 2017-10-31 CN CN201711054339.XA patent/CN108621978B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108621978A (zh) | 2018-10-09 |
KR102309429B1 (ko) | 2021-10-07 |
US20180265096A1 (en) | 2018-09-20 |
US10843704B2 (en) | 2020-11-24 |
KR20180106406A (ko) | 2018-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6602967B2 (ja) | モーション計画に基づく自律走行車の走行方法およびシステム | |
CN110058588B (zh) | 一种自动驾驶系统升级的方法、自动驾驶系统及车载设备 | |
CN105282499B (zh) | 周边监视装置及程序 | |
CN108981735B (zh) | 信息处理装置以及信息处理方法 | |
US20180151088A1 (en) | Vehicle tutorial system and method for sending vehicle tutorial to tutorial manager device | |
EP3167364B1 (en) | Operating system startup acceleration | |
CN110069064A (zh) | 一种自动驾驶系统升级的方法、自动驾驶系统及车载设备 | |
JP7238547B2 (ja) | 自動車用演算装置 | |
JP2019059464A5 (zh) | ||
CN109808706A (zh) | 学习式辅助驾驶控制方法、装置、系统及车辆 | |
CN108621978B (zh) | 车辆及其控制方法 | |
US20210016788A1 (en) | Device and Method for Interacting Between a Vehicle Capable of Being Driven in an at Least Partially Automated Manner and a Vehicle User | |
CN109649392A (zh) | 自主车辆加速度分布图 | |
EP3796159B1 (en) | Operating system startup acceleration | |
CN109177983B (zh) | 车辆运行状态监测方法、装置及设备 | |
EP3167360B1 (en) | Operating system startup acceleration | |
CN109144070A (zh) | 移动设备辅助自动驾驶方法、汽车和存储介质 | |
CN115179776A (zh) | 一种车辆控制方法、装置、设备及计算机可读存储介质 | |
CN114841514A (zh) | 模型训练和车辆舒适性评价方法、装置、设备及存储介质 | |
CN113276831A (zh) | 车辆控制装置、车辆控制方法以及车辆控制程序 | |
JP2011162090A (ja) | 車両制御システム | |
JP6168811B2 (ja) | 車両制御区間学習システム、方法およびプログラム | |
CN116534123B (zh) | 挂车横向控制方法、装置以及目标挂车 | |
JP2024024924A (ja) | 駐車支援装置 | |
US20210107460A1 (en) | Vehicle parking assist apparatus |
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 |