一种汽车控制器快速原型实现方法技术

技术编号:15863700 阅读:22 留言:0更新日期:2017-07-23 07:53
本发明专利技术为一种汽车控制器快速原型实现方法,其特征是包括:在快速原型(RCP)过程中,对底层驱动进行封装,把底层驱动封装成模块的形式添加到simulink库就可以在模型中直接调用,利用MATLAB RTW工具将模型直接生成源代码,相应的单片机驱动模块也会生成源代码,从而避免手写驱动代码,而直接使用模型,使开发更方便,在不同项目中也可以实现复用,从而可以节省更多的资源,主要包括:利用MATLAB中S‑function及Mask对底层驱动进行封装;编写Block TLC文件。本发明专利技术可以避免手写驱动代码,并且使平台有更好的复用性,使控制器快速原型(RCP)更加方便快捷,从而可以节省项目成本及开发周期。

【技术实现步骤摘要】
一种汽车控制器快速原型实现方法
本专利技术涉及汽车电子领域,尤其是涉及在汽车控制器开发过程中使用S-function实现在特定平台上控制器快速原型(RCP)的方法。
技术介绍
在汽车控制器开发过程中,在MATLAB环境下对算法浮点模型定点化完成后,利用MATLAB软件中的自动代码生成工具(RealTimeWorkshop,RTW)对模型自动代码生成,然后自动生成的代码与系统软件进行集成编译后下载到目标平台上,达到产品快速实现验证的目的,即快速原型(RCP)的目的。由于在实际开发过程中,不同的项目可能使用相同的目标平台,这就需要有一种快速复用底层代码的方法,以缩短项目周期和开发成本。传统的实现快速原型的的方法及不足主要有:1.使用MATLAB自带的目标平台库。由于目标库的有限性,无疑会使目标平台的选择受到限制,而且目标库本身也需要收费购买,这样也会带来成本的增加;2.手写底层代码。这样就需要投入人力,也会带来项目周期及成本的增加。而且由于项目本身的区别,即使复用底层代码,但底层的配置可能并不一致,这样就需要重新配置和调试,这样也会带来项目周期的增加。
技术实现思路
本专利技术的目的是解决在在汽车控制器开发过程中,传统的控制器快速原型对目标平台限制较多,自动化及复用度较低的问题。为了达到上述目的,本专利技术的一种汽车控制器快速原型实现方法,其特征是包括:在快速原型(RCP)过程中,对底层驱动进行封装,把底层驱动封装成模块的形式添加到simulink库就可以在模型中直接调用,利用MATLABRTW工具将模型直接生成源代码,相应的单片机驱动模块也会生成源代码,从而避免手写驱动代码,而直接使用模型,使开发更方便,在不同项目中也可以实现复用,从而可以节省更多的资源,主要包括:(1)利用MATLAB中S-function及Mask对底层驱动进行封装;(2)编写BlockTLC文件。上述具体方法是:(1)对底层驱动进行Mask封装:①使用Simulink库中的S-function模块,双击打开后写入S-function名字,如msp430f2132_di,该文件为s-function的C文件,能够定义包括模块的输入输出端口、端口类型的参数,S-functionparameters为RTDParameters;②根据S-functionparameters的个数来进行GUI界面的封装,即Mask,S-function的Mask需要点击右键选择MaskS-Function来进行编辑,在这个模块中,共有四个输出端口,类型为checkbox,当某个checkbox处于选中状态时,输出端口才有效;③在Initialization中填写界面封转初始化脚本,使用的是m语言,(2)编写相应的S-function文件,Simulink与一个CMEXS-Function之间的相互作用是通过调用S-Function中的回调函数来实现的;每个函数完成一个预先定义的任务,这些任务是S-Function定义的仿真块功能必需的;(3)BlockTLC文件编写:驱动模块的s-function及mask之后,编写模块的TLC文件来进行代码生成;至此,驱动模块的编写、mask封装、TLC文件编写就完成了,就能将生成的代码下载到硬件平台上进行快速原型测试了。采用本专利技术后,在MATLAB环境下对平台的底层驱动进行封装,并编写相应的BlockTLC文件,从而封装的模块直接用于建模开发,并可以自动生成底层驱动代码,这样就可以避免手写驱动代码,并且使平台有更好的复用性,使控制器快速原型(RCP)更加方便快捷,从而可以节省项目成本及开发周期。附图说明图1是汽车控制器快速原型实现方法的路径框图。具体实施方式下面结合附图并通过实施例对本专利技术作进一步的描述。图1为汽车控制器快速原型实现方法的路径框图。在快速原型(RCP)过程中,对底层驱动进行封装,如单片机的输入输出、AD、串口等,把此类驱动封装成模块的形式添加到simulink库就可以在模型中直接调用,利用MATLABRTW工具将模型直接生成源代码,相应的单片机驱动模块也会生成源代码,这样就可以避免手写驱动代码,而直接使用模型,使开发更方便,在不同项目中也可以实现复用,从而可以节省更多的资源,主要包括:1.利用MATLAB中S-function及Mask对底层驱动进行封装;2.编写BlockTLC文件。下面是利用上述汽车控制器快速原型实现方法,对驱动模块的编写、mask封装、TLC文件编写为例加以说明,其依次是:1.对底层驱动进行Mask封装,如单片机MSP430F2132DI模块的封装:①使用Simulink库中的S-function模块,双击打开后写入S-function名字,如msp430f2132_di,该文件为s-function的C文件,能够定义模块的输入输出端口、端口类型等参数,S-functionparameters为RTDParameters;②根据S-functionparameters的个数来进行GUI界面的封装,即Mask。S-function的Mask需要点击右键选择MaskS-Function来进行编辑,在这个模块中,共有四个输出端口,类型为checkbox,当某个checkbox处于选中状态时,输出端口才有效;③在Initialization中填写界面封转初始化脚本,使用的是m语言(2)编写相应的S-function文件,Simulink与一个CMEXS-Function之间的相互作用是通过调用S-Function中的回调函数来实现的;每个函数完成一个预先定义的任务,这些任务是S-Function定义的仿真块功能必需的;一个CMEXS-function的一般格式如下:#defineS_FUNCTION_NAMEyour_sfunction_name_here#defineS_FUNCTION_LEVEL2#include"simstruc.h"staticvoidmdlInitializeSizes(SimStruct*S){}<附加的S-function程序/代码>staticvoidmdlTerminate(SimStruct*S){}#ifdefMATLAB_MEX_FILE/*ThisisfilebeingcompiledasaMEX-file*/#include"simulink.c"/*MEX-fileinterfacemechanism*/#else#include"cg_sfun.h"/*Codegenerationregistrationfunction*/#endif当Simulink与S-function相互作用时,Simulink所调用的第一个程序是mdlInitializeSizes,随后调用的是其它S-function函数(所有的函数名均以mdl开头);在仿真结束时,Simulink调用mdlTerminate函数;3.BlockTLC文件编写:驱动模块的s-function及mask之后,就可以编写模块的tlc文件来进行代码生成了,如下:至此,驱动模块的编写、mask封装、TLC文件编写就完成了,就能将生成的代码下载到硬件平台上进行快速原型测试了。本文档来自技高网...
一种汽车控制器快速原型实现方法

【技术保护点】
一种汽车控制器快速原型实现方法,其特征是包括:在快速原型(RCP)过程中,对底层驱动进行封装,把底层驱动封装成模块的形式添加到simulink库就可以在模型中直接调用,利用MATLAB RTW工具将模型直接生成源代码,相应的单片机驱动模块也会生成源代码,从而避免手写驱动代码,而直接使用模型,使开发更方便,在不同项目中也可以实现复用,从而可以节省更多的资源,主要包括:(1)利用MATLAB中S‑function及Mask对底层驱动进行封装;(2)编写Block TLC文件。

【技术特征摘要】
1.一种汽车控制器快速原型实现方法,其特征是包括:在快速原型(RCP)过程中,对底层驱动进行封装,把底层驱动封装成模块的形式添加到simulink库就可以在模型中直接调用,利用MATLABRTW工具将模型直接生成源代码,相应的单片机驱动模块也会生成源代码,从而避免手写驱动代码,而直接使用模型,使开发更方便,在不同项目中也可以实现复用,从而可以节省更多的资源,主要包括:(1)利用MATLAB中S-function及Mask对底层驱动进行封装;(2)编写BlockTLC文件。2.根据权利要求1所述的一种汽车控制器快速原型实现方法,其特征是所述的利用MATLAB中S-function及Mask对底层驱动进行封装和BlockTLC文件的编写,其具体方法依次是:(1)对底层驱动进行Mask封装:①使用Simulink库中的S-function模块,双击打开后写入S-function名字,该文件为s-function的C文件,能够定义包括模块的输入输出端口、端口类型的参数,S-func...

【专利技术属性】
技术研发人员:夏洪涛焦玉
申请(专利权)人:浙江仕善汽车科技股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1