CN116305877A - 一种基于仿真的雾天场景下车身控制***开发方法及*** - Google Patents
一种基于仿真的雾天场景下车身控制***开发方法及*** Download PDFInfo
- Publication number
- CN116305877A CN116305877A CN202310180984.5A CN202310180984A CN116305877A CN 116305877 A CN116305877 A CN 116305877A CN 202310180984 A CN202310180984 A CN 202310180984A CN 116305877 A CN116305877 A CN 116305877A
- Authority
- CN
- China
- Prior art keywords
- vehicle body
- fog
- body control
- lamp
- modeling
- 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.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000033772 system development Effects 0.000 title claims abstract description 24
- 238000012360 testing method Methods 0.000 claims abstract description 55
- 238000010276 construction Methods 0.000 claims abstract description 17
- 238000003860 storage Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 4
- 238000012790 confirmation Methods 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 19
- 230000018109 developmental process Effects 0.000 abstract description 19
- 230000008569 process Effects 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 35
- 230000009471 action Effects 0.000 description 21
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 239000013256 coordination polymer Substances 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 239000013255 MILs Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B20/00—Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
- Y02B20/40—Control techniques providing energy savings, e.g. smart controller or presence detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Lighting Device Outwards From Vehicle And Optical Signal (AREA)
Abstract
本发明提供一种基于仿真的雾天场景下车身控制***开发方法及***,方法包括:S1,对车身控制模型进行全局脚本定义;S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。本发明首先构建雾天场景下的车身控制仿真模型,测试合格后将模型直接输出为车身控制***代码,可缩短车身控制***整体开发周期,且在测试过程中可灵活调试,可降低***开发的错误率,节省了开发成本。
Description
技术领域
本发明涉及***仿真技术领域,更具体地,涉及一种基于仿真的雾天场景下车身控制***开发方法及***。
背景技术
使用传统的手写C代码的形式进行车身控制应用软件开发时,编码效率比较低,同时代码错误率也比较高,导致Bug从编码阶段流出到后续的测试阶段,带来了大量的返工。返工引起了工期延长,开发成本成倍增长的问题。
因此,有必要研究能够缩短车身控制应用软件的开发周期,且可降低错误率的方法。
发明内容
本发明针对现有技术中存在的技术问题,提供一种基于仿真的雾天场景下车身控制***开发方法及***,首先构建雾天场景下的车身控制仿真模型,测试合格后将模型输出为车身控制***代码,可缩短车身控制***整体开发周期,且在测试过程中可灵活调试,可降低***开发的错误率,节省了开发成本。
根据本发明的第一方面,提供了一种基于仿真的雾天场景下车身控制***开发方法,包括:
S1,对车身控制模型进行全局脚本定义;
S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
在上述技术方案的基础上,本发明还可以作出如下改进。
可选的,步骤S1中,对车身控制模型进行全局脚本定义,至少包括定义以下内容:
近光灯状态类型、近光灯原子服务操作结果类型;
雾灯ID类型、雾灯打开状态类型、雾灯状态类型、雾灯原子服务操作结果类型;
位置灯类型、位置灯原子服务操作结果类型。
可选的,步骤S2中,进行打开雾天模式建模,至少包括:
打开近光灯建模模块、打开雾灯建模模块和打开位置灯建模模块;
分别进行打开雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
可选的,打开雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯关闭状态下,才需要打开近光灯;
确认前雾灯关闭、后雾灯关闭状态下,才需要打开前雾灯和/或后雾灯;
确认位置灯关闭,才需要打开位置灯。
可选的,步骤S2中,进行关闭雾天模式建模,至少包括:
关闭近光灯建模模块、关闭雾灯建模模块和关闭位置灯建模模块;
分别进行关闭雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
可选的,关闭雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯打开状态下,才关闭近光灯;
确认前雾灯打开和/或后雾灯打开状态下,才关闭前雾灯和/或后雾灯;
确认位置灯打开状态,才关闭位置灯。
可选的,步骤S3中,构建测试模块,至少包括:
车身近光灯状态输入、车身雾灯状态输入、车身位置灯状态输入、用户打开雾天模式或者关闭雾天模式的输入和/或原子服务的API建模。
根据本发明的第二方面,提供一种基于仿真的雾天场景下车身控制***开发***,包括:
定义模块,用于对车身控制模型进行全局脚本定义;
构建模块,用于基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
验证模块,用于构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
根据本发明的第三方面,提供了一种电子设备,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现上述基于仿真的雾天场景下车身控制***开发方法的步骤。
根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现上述基于仿真的雾天场景下车身控制***开发方法的步骤。
本发明提供的一种基于仿真的雾天场景下车身控制***开发方法及***,使用仿真软件环境,例如Matlab,对车载软件中的车身控制应用层软件进行逻辑建模,同时进行模型在环仿真测试环境建模,以对构建完成的车身控制***模型进行MIL测试。MIL测试通过之后,再使用仿真软件Matlab的自动生成代码功能,直接生成目标代码,例如C代码。本发明可以有效地提高代码的质量、降低代码错误率,以及提升开发效率,达到压缩工期和降低开发成本的目的。
附图说明
图1为本发明提供的一种基于仿真的雾天场景下车身控制***开发方法流程图;
图2为本发明提供的一种基于仿真的雾天场景下车身控制***开发***的组成框图;
图3为本发明提供的一种可能的电子设备的硬件结构示意图;
图4为本发明提供的一种可能的计算机可读存储介质的硬件结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1为本发明提供的一种基于仿真的雾天场景下车身控制***开发方法流程图,如图1所示,该方法包括:
S1,对车身控制模型进行全局脚本定义;
具体的,其至少包括定义以下内容:
近光灯状态类型、近光灯原子服务操作结果类型;
雾灯ID类型、雾灯打开状态类型、雾灯状态类型、雾灯原子服务操作结果类型;
位置灯类型、位置灯原子服务操作结果类型。
S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
其中,进行打开雾天模式建模,至少包括:
打开近光灯建模模块、打开雾灯建模模块和打开位置灯建模模块;
分别进行打开雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
更具体的,打开雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯关闭状态下,才需要打开近光灯;
确认前雾灯关闭、后雾灯关闭状态下,才需要打开前雾灯和/或后雾灯;
确认位置灯关闭,才需要打开位置灯。
其中,进行关闭雾天模式建模,至少包括:
关闭近光灯建模模块、关闭雾灯建模模块和关闭位置灯建模模块;
分别进行关闭雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
更具体的,关闭雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯打开状态下,才关闭近光灯;
确认前雾灯打开和/或后雾灯打开状态下,才关闭前雾灯和/或后雾灯;
确认位置灯打开状态,才关闭位置灯。
S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
在其中一种实施例方式中,步骤S3中,构建测试模块,至少包括:
车身近光灯状态输入、车身雾灯状态输入、车身位置灯状态输入、用户打开雾天模式或者关闭雾天模式的输入和/或原子服务的API建模。
构建完成车身控制模型,即可通过测试模块对其进行MIL测试,若是测试不合格,可通过对车身控制模型灵活调整,以提升车身控制模型的准确性。
可以理解的是,基于背景技术中的缺陷,本发明实施例提出了一种基于Matlab仿真的雾天场景下车身控制***开发方法,通过Matlab建模,实现对近光灯、雾灯和位置灯的一键控制。同时采用AutoSar CP架构,实现应用层控制模型对原子服务层模型的解耦,提高模型的可复用性。在此基础上,还实现了模型在环仿真测试的逻辑建模,便于对应用层建模结果进行模型在环仿真测试(MIL测试),提高模型的质量,减少Bug流出。本发明的核心,一个是基于Matlab的MBD(Model Based Definition,基于模型的定义)建模技术,另一个是AutoSar CP架构的车身控制技术。MBD基于模型的开发,用于通过模型构建的方式,代替手工编码,通过模型直接转为代码的方式,提升了车身控制***的开发效率。通过SOA(面向服务的架构)化的AutoSar CP车身控制技术,采用应用层的雾天场景模型与原子服务层的模型进行SOA服务化建模,实现服务的解耦。
相比于使用传统的手写C代码的形式进行车身控制应用软件开发时,带来的编码效率比较低,同时代码错误率也比较高的问题,本发明提出的基于仿真模型的开发方法,通过图形化的模型构建代替手工编码,模型构建完成后,进行模型仿真测试。若测试未通过,则可灵活对模型进行调整;测试通过之后,再从模型直接生成代码。这样可以大大的提高代码的开发效率,同时将Bug聚焦在模型构建阶段,减少Bug的流出,从而达到提高代码质量,压缩工期,降低开发成本的目的。
同时,本发明的方案在模型构建过程中,采用面向服务的架构(SOA),使得应用场景与原子服务解耦,提高模型的可复用性。
在进行雾天模型的场景建模时,考虑各灯的当前状态,在不同状态下,分开控制车身部件,减少冗余代码,提高模型质量。
现采用某一具体的实施例场景对本发明作更详细的举例说明。本实施例包括下述各步骤:
1.创建一个MDB工程,存储为BCM.slx
2.创建一个m脚本,用于定义模型中需要使用到的枚举类型。
定义一个enumDefine.m,在enumDefine.m中定义模型中需要使用到的雾灯ID类型,雾灯状态类型,灯的状态类型,雾天服务的操作返回值类型,近光灯状态类型,近光灯服务的操作返回值,位置灯状态类型,位置灯服务的操作返回值。
3.进行雾天模式的应用场景控制的子***构建。
3.1在BCM中***一个Initialize Function,
打开Initialize Function,删除输入输出。
3.2在BCM中,***一个Function-Call Subsystem。
将Function-Call Subsystem重命名为Period10msSubSystem。
3.3在BCM中,***一个Input,用于生成10ms周期信号。
将Input重命名为Period10msSignal,
将Configuration的配置属性Type修改为Fixed-step,
将Configuration的配置属性Solver修改为discrete,
将Period10msSignal连接到Period10msSubSystem的function()输入端口。
3.4在BCM中,***4个输入Input,用于接收车身灯的状态以及用户输入。
将Input1重命名为BCM_LowBeam_notifyStatus,
将Input2重命名为BCM_FogLight_notifyStatus,
将Input3重命名为BCM_OutlineLight_notifyStatus,
将Input4重命名为UserInput。
4.Period10msSubSystem中添加近光灯控制逻辑框架建模。
4.1在Period10msSubSystem中,***4个Input,
将Input1重命名为BCM_LowBeam_notifyStatus,
将Input2重命名为BCM_FogLight_notifyStatus,
将Input3重命名为BCM_OutlineLight_notifyStatus,
将Input4重命名为UserInput。
4.2在Period10msSubSystem中,***3个Goto,
将Goto1的tag标签,设置为LowBeamStatus,
将Goto2的tag标签,设置为FogLightStatus,
将Goto3的tag标签,设置为OutlineLightStatus,
将input与Goto连接起来,用于将input的值保存到Goto的标签里。
4.3在Period10msSubSystem中,***1个Switch Case,3个Switch Case ActionSubSystem。
将Switch Case重命名为FogModeSwitchCase,
将Switch Case的Case Conditions设置为1和2,
将Switch Case Action SubSystem1重命名为OpenFogModeAction,
将Switch Case Action SubSystem2重命名为CloseFogModeAction,
将Switch Case Action SubSystem3重命名为defaultAction,
将OpenFogModeAction,CloseFogModeAction,defaultAction与FogModeSwitchCase的case端口连接上。
5.进行打开雾天模式OpenFogModeAction的逻辑建模。
5.1在OpenFogModeAction中,进行近光灯控制的逻辑建模,
***一个Input,重命名为BCM_LowBeam_notifyStatus,
***一个Switch Case,重命名为LowBeamSwitchCase,
***一个Switch Case Action SubSystem,重命名为LowBeamOpenAction,
***一个Switch Case Action SubSystem,重命名为defaultAction,
将LowBeamOpenAction的Case Condition设置为近光灯关状态类型LIGHT_OFF,用于判定如果当前是近光灯光转态,则打开近光灯。
在LowBeamOpenAction中,***一个Function Caller。
在Function Caller中调用打开近光灯原子服务的turnOn接口。
***一个Output,重命名为LowBeam_ReturnCode。
将Function Caller的输入,与LowBeam_ReturnCode连接。
将defaultAction中,输入输出删除。
5.2在OpenFogModeAction中,进行雾灯控制的逻辑建模。
***一个Input,重命名为BCM_FogLight_notifyStatus。
***一个Switch Case,重命名为FogLightSwitchCase,
***一个Switch Case Action SubSystem,重命名为FogLightRearOpenAction,用于打开后雾灯。
***一个Switch Case Action SubSystem,重命名为FogLightFrontOpenAction,用于打开前雾灯。
***一个Switch Case Action SubSystem,重命名为FogLightRearAndFrontOpenAction,用于打开后雾灯和前雾灯。
***一个Switch Case Action SubSystem,重命名为defaultAction,用于执行其他输入处理。
将FogLightSwitchCase的Case Condition属性设置为前雾灯开、后雾灯开、前后雾灯关三个条件。
在FogLightRearOpenAction中,***一个Function Caller。
在Function Caller中调用打开后雾灯原子服务的turnOn接口。
在FogLightRearOpenAction中,***一个Const,值设置为后雾灯ID。
将Const连接到FunctionCaller的输入参数。
在FogLightRearOpenAction中,***一个Output,重命名为FogLight_ReturnCode
将FogLight_ReturnCode连接到FunctionCaller的输出参数。
在FogLightFrontOpenAction中,***一个Function Caller。
在Function Caller中调用打开后雾灯原子服务的turnOn接口。
在FogLightFrontOpenAction中,***一个Const,值设置为前雾灯ID。
将Const连接到FunctionCaller的输入参数。
在FogLightFrontOpenAction中,***一个Output,重命名为FogLight_ReturnCode。
将FogLight_ReturnCode连接到FunctionCaller的输出参数。
将FogLightFrontOpenAction以及FogLightRearOpenAction的模型,复制后,黏贴到FogLightRearAndFrontOpenAction模型中。
5.3在OpenFogModeAction中,进行位置灯控制的逻辑建模。
***一个Input,重命名为BCM_OutlineLight_notifyStatus,
***一个Switch Case,重命名为OutlineLight SwitchCase,
***一个Switch Case Action SubSystem,重命名为OutlineLight OpenAction,
***一个Switch Case Action SubSystem,重命名为defaultAction,
将OutlineLightOpenAction的Case Condition设置为位置灯状态类型LIGHT_OFF,用于判定如果当前是位置灯关状态,则打开位置灯。
在OutlineLightOpenAction中,***一个Function Caller。
在Function Caller中调用打开位置灯原子服务的turnOn接口。
***一个Output,重命名为OutlineLight_ReturnCode。
将Function Caller的输入,与OutlineLight_ReturnCode连接。
将defaultAction中,输入输出删除。
5.4进入Period10msSubSystem,将Period10msSubSystem的3个输入参数,与OpenFogModeAction的三个输入端口连接。
***一个From,tag设置为LowBeamStatus,
***一个From,tag设置为FogLightStatus,
***一个From,tag设置为OutlineStatus,
将撒个From分别与OpenFogModeAction的三个输入端口连接。
6.进行关闭雾天模式CloseFogModeAction的逻辑建模。
6.1在CloseFogModeAction中,进行近光灯控制的逻辑建模。
***一个Input,重命名为BCM_LowBeam_notifyStatus,
***一个Switch Case,重命名为LowBeamSwitchCase,
***一个Switch Case Action SubSystem,重命名为LowBeamCloseAction,
***一个Switch Case Action SubSystem,重命名为defaultAction,
将LowBeamCloseAction的Case Condition设置为近光灯状态类型LIGHT_ON,,用于判定如果当前是近光灯光开转态,则关闭近光灯。
在LowBeamOpenAction中,***一个Function Caller。
在Function Caller中调用打开近光灯原子服务的turnOff接口。
***一个Output,重命名为LowBeam_ReturnCode。
将Function Caller的输入,与LowBeam_ReturnCode连接。
将defaultAction中,输入输出删除。
6.2在CloseFogModeAction中,进行雾灯控制的逻辑建模。
***一个Input,重命名为BCM_FogLight_notifyStatus。
***一个Switch Case,重命名为FogLightSwitchCase,
***一个Switch Case Action SubSystem,重命名为FogLightFrontCloseAction,用于关闭前雾灯。
***一个Switch Case Action SubSystem,重命名为FogLightRearCloseAction,用于关闭后雾灯。
***一个Switch Case Action SubSystem,重命名为FogLightRearAndFrontCloseAction,用于关闭后雾灯和前雾灯。
***一个Switch Case Action SubSystem,重命名为defaultAction,用于执行其他输入处理。
将FogLightSwitchCase的Case Condition属性设置为前雾灯开、后雾灯开、前后雾灯开三个条件。
在FogLightFrontCloseAction中,***一个Function Caller。
在Function Caller中调用关闭前雾灯原子服务的turnOff接口。
在FogLightFrontCloseAction中,***一个Const,值设置为前雾灯ID。
将Const连接到FunctionCaller的输入参数。
在FogLightFrontCloseAction中,***一个Output,重命名为FogLight_ReturnCode,
将FogLight_ReturnCode连接到FunctionCaller的输出参数。
在FogLightRearCloseAction中,***一个Function Caller。
在Function Caller中调用打关闭后雾灯原子服务的turnOff接口。
在FogLightRearCloseAction中,***一个Const,值设置为后雾灯ID。
将Const连接到FunctionCaller的输入参数。
在FogLightRearCloseAction中,***一个Output,重命名为FogLight_ReturnCode,
将FogLight_ReturnCode连接到FunctionCaller的输出参数。
将FogLightRearCloseAction以及FogLightFrontCloseAction的模型,复制后,黏贴到FogLightRearAndFrontCloseAction模型中。
6.3在CloseFogModeAction中,进行位置灯控制的逻辑建模。
***一个Input,重命名为BCM_OutlineLight_notifyStatus,
***一个Switch Case,重命名为OutlineLight SwitchCase,
***一个Switch Case Action SubSystem,重命名为OutlineLightCloseAction,
***一个Switch Case Action SubSystem,重命名为defaultAction,
将OutlineLightCloseAction的Case Condition设置为位置灯状态类型LIGHT_ON,用于判定如果当前是位置灯开状态,则关闭位置灯。
在OutlineLightCloseAction中,***一个Function Caller。
在Function Caller中调用关闭位置灯原子服务的turnOff接口。
***一个Output,重命名为OutlineLight_ReturnCode。
将Function Caller的输入,与OutlineLight_ReturnCode连接。
将defaultAction中,输入输出删除。
6.4进入Period10msSubSystem,将Period10msSubSystem的3个输入参数,与CloseFogModeAction的三个输入端口连接。
***一个From,tag设置为LowBeamStatus,
***一个From,tag设置为FogLightStatus,
***一个From,tag设置为OutlineStatus,
将撒个From分别与CloseFogModeAction的三个输入端口连接。
7.进行默认输入的defaultAction的逻辑建模。
进入defaultAction,删除输入输出。
8.在BCM中,将4个输入,与Period10msSubSystem的输入端口连接。
通过以上步骤1-8,已经完成了车身控制模型的建模,但是为了验证模型的有效性,接下来的步骤,添加MIL测试用的逻辑建模。
9.添加MIL测试逻辑建模
9.1将以上1-8步生成的建模结果全部选中,然后从选中的结果创建子***Subsystem。
9.2在BCM中,***4个输入Input,用于接收车身灯的状态以及用户输入。
将Input1重命名为Period10msSignal,
将Input2重命名为BCM_LowBeam_notifyStatus,
将Input3重命名为BCM_FogLight_notifyStatus,
将Input4重命名为BCM_OutlineLight_notifyStatus,
9.3在BCM中***Multiport Switch,端口设置为1,2,3这三个选项。开关切换到1代表输入打开雾天模式,开关切换到2代表输入关闭雾天模式。
9.4在BCM中***原子服务的API接口定义。
***Simulink Function,接口名设置为LowBeam_turnOn,
***Simulink Function,接口名设置为LowBeam_turnOff,
***Simulink Function,接口名设置为FogLight_turnOn,
***Simulink Function,接口名设置为FogLight_turnOff,
***Simulink Function,接口名设置为OutlineLight_turnOn,
***Simulink Function,接口名设置为OutlineLight_turnOff。
图2为本发明实施例提供的一种基于仿真的雾天场景下车身控制***开发***结构图,如图2所示,一种基于仿真的雾天场景下车身控制***开发***,包括定义模块、构建模块和验证模块,其中:
定义模块,用于对车身控制模型进行全局脚本定义;
构建模块,用于基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
验证模块,用于构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
可以理解的是,本发明提供的一种基于仿真的雾天场景下车身控制***开发***与前述各实施例提供的基于仿真的雾天场景下车身控制***开发方法相对应,基于仿真的雾天场景下车身控制***开发***的相关技术特征可参考基于仿真的雾天场景下车身控制***开发方法的相关技术特征,在此不再赘述。
请参阅图3,图3为本发明实施例提供的电子设备的实施例示意图。如图3所示,本发明实施例提了一种电子设备300,包括存储器310、处理器320及存储在存储器310上并可在处理器320上运行的计算机程序311,处理器320执行计算机程序311时实现以下步骤:
S1,对车身控制模型进行全局脚本定义;
S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
请参阅图4,图4为本发明提供的一种计算机可读存储介质的实施例示意图。如图4所示,本实施例提供了一种计算机可读存储介质400,其上存储有计算机程序411,该计算机程序411被处理器执行时实现如下步骤:
S1,对车身控制模型进行全局脚本定义;
S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
本发明实施例提供的一种基于仿真的雾天场景下车身控制***开发方法、***及存储介质,使用仿真软件环境,例如Matlab,对车载软件中的车身控制应用层软件进行逻辑建模,同时进行模型在环仿真测试环境建模,以对构建完成的车身控制***模型进行MIL测试。MIL测试通过之后,再使用仿真软件Matlab的自动生成代码功能,直接生成目标代码,例如C代码。本发明可以有效地提高代码的质量、降低代码错误率,以及提升开发效率,达到压缩工期和降低开发成本的目的。
需要说明的是,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式计算机或者其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (10)
1.一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,包括:
S1,对车身控制模型进行全局脚本定义;
S2,基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
S3,构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
2.根据权利要求1所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,步骤S1中,对车身控制模型进行全局脚本定义,至少包括定义以下内容:
近光灯状态类型、近光灯原子服务操作结果类型;
雾灯ID类型、雾灯打开状态类型、雾灯状态类型、雾灯原子服务操作结果类型;
位置灯类型、位置灯原子服务操作结果类型。
3.根据权利要求1所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,步骤S2中,进行打开雾天模式建模,至少包括:
打开近光灯建模模块、打开雾灯建模模块和打开位置灯建模模块;
分别进行打开雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
4.根据权利要求3所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,打开雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯关闭状态下,才需要打开近光灯;
确认前雾灯关闭、后雾灯关闭状态下,才需要打开前雾灯和/或后雾灯;
确认位置灯关闭,才需要打开位置灯。
5.根据权利要求1所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,步骤S2中,进行关闭雾天模式建模,至少包括:
关闭近光灯建模模块、关闭雾灯建模模块和关闭位置灯建模模块;
分别进行关闭雾天模式下近光灯、雾灯和位置灯控制的逻辑建模。
6.根据权利要求5所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,关闭雾天模式下,近光灯、雾灯和位置灯的控制逻辑包括:
确认近光灯打开状态下,才关闭近光灯;
确认前雾灯打开和/或后雾灯打开状态下,才关闭前雾灯和/或后雾灯;
确认位置灯打开状态,才关闭位置灯。
7.根据权利要求1所述的一种基于仿真的雾天场景下车身控制***开发方法,其特征在于,步骤S3中,构建测试模块,至少包括:
车身近光灯状态输入、车身雾灯状态输入、车身位置灯状态输入、用户打开雾天模式或者关闭雾天模式的输入和/或原子服务的API建模。
8.一种基于***仿真的雾天场景下的车身控制***,其特征在于,包括:
定义模块,用于对车身控制模型进行全局脚本定义;
构建模块,用于基于全局脚本定义分别进行打开雾天模式建模、关闭雾天模式建模,确定两种模式下近光灯、雾灯和位置灯的控制逻辑,得到车身控制模型;
验证模块,用于构建测试模块对车身控制模型的打开雾天模式和关闭雾天模式分别测试,模型测试合格后输出为车身控制***代码。
9.一种电子设备,其特征在于,包括存储器、处理器,所述处理器用于执行存储器中存储的计算机管理类程序时实现如权利要求1-7任一项所述的一种基于仿真的雾天场景下车身控制***开发方法的步骤。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现如权利要求1-7任一项所述的一种基于仿真的雾天场景下车身控制***开发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180984.5A CN116305877A (zh) | 2023-02-24 | 2023-02-24 | 一种基于仿真的雾天场景下车身控制***开发方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180984.5A CN116305877A (zh) | 2023-02-24 | 2023-02-24 | 一种基于仿真的雾天场景下车身控制***开发方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116305877A true CN116305877A (zh) | 2023-06-23 |
Family
ID=86791780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310180984.5A Pending CN116305877A (zh) | 2023-02-24 | 2023-02-24 | 一种基于仿真的雾天场景下车身控制***开发方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116305877A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117555553A (zh) * | 2023-12-18 | 2024-02-13 | 上海烜翊科技有限公司 | 一种基于autosar建模的通用软件协议接口生成方法及*** |
-
2023
- 2023-02-24 CN CN202310180984.5A patent/CN116305877A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117555553A (zh) * | 2023-12-18 | 2024-02-13 | 上海烜翊科技有限公司 | 一种基于autosar建模的通用软件协议接口生成方法及*** |
CN117555553B (zh) * | 2023-12-18 | 2024-05-28 | 上海烜翊科技有限公司 | 一种基于autosar建模的通用软件协议接口生成方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8996349B2 (en) | Synchronizing an abstract model and source code | |
CN116305877A (zh) | 一种基于仿真的雾天场景下车身控制***开发方法及*** | |
WO2016026328A1 (zh) | 一种信息处理方法、装置及计算机存储介质 | |
CN110989997A (zh) | 基于定理证明的形式化验证方法 | |
CN116737117A (zh) | 基于Autosar架构的模型开发方法 | |
Barros et al. | Behavioural models for hierarchical components | |
CN110908730A (zh) | 一种云平台配置文件管理方法及管理*** | |
Di Natale et al. | An MDA approach for the generation of communication adapters integrating SW and FW components from Simulink | |
CN110688269B (zh) | 采用axi总线接口的rtl代码自动化验证装置及方法 | |
CN111782207A (zh) | 任务流代码生成方法、装置、设备及存储介质 | |
US20090112554A1 (en) | Test Bench, Method, and Computer Program Product for Performing a Test Case on an Integrated Circuit | |
CN113535141A (zh) | 数据库操作代码的生成方法及装置 | |
CN113254054B (zh) | 一种智能合约一站式开发***及方法 | |
CN112312629B (zh) | 一种数据处理的方法和装置 | |
Brucker et al. | hol-TestGen 1.5. 0 user guide | |
US20200019481A1 (en) | Test program data key generation | |
CN109445872A (zh) | 一种应用于多网口Linux服务器确定各网口物理位置的方法 | |
Roychoudhury et al. | Symbolic message sequence charts | |
CN115034165A (zh) | 一种芯片仿真验证方法、***、设备以及存储介质 | |
CN113590179A (zh) | 插件检测方法、装置、电子设备及存储介质 | |
Bartels et al. | Formal modeling and verification of low-level software programs | |
Beuche et al. | Managing flexibility: Modeling binding-times in simulink | |
CN107563025B (zh) | 一种验证平台管理方法及装置 | |
CN112540920A (zh) | 测试方法、装置、设备和存储介质 | |
CN110955423B (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 |