【技术实现步骤摘要】
一种基于MATLAB/Simulink的全模型可执行程序构建方法
本专利技术属于航空系统
,涉及MATLAB/Simulink下的驱动组件开发、处理器框架设计、可执行程序生成等。具体涉及一种基于MATLAB/Simulink的全模型可执行程序构建方法。
技术介绍
目前MATLAB/Simulink下的模型驱动开发,一般都是用户在Simulink下通过现有的算法组件及自定义组件搭建控制模型,并在Simulink下进行仿真,仿真通过后,采用手工编码或利用Simulink的代码生成功能将控制模型转换为C程序,同时手工编写外设访问代码获取模型输入数据、输出模型控制命令,上述C程序必须通过交叉编译器编译、链接后方可生成可执行程序,在嵌入式目标机上运行。此种开发方式下,无论控制模型代码采用哪种方式生成,都需手工调用底层驱动接口,并且需拷贝生成的代码到编译环境下进行编译,生成可执行程序,开发效率较低,并且需要人工进行代码拷贝,增加了出现问题的可能性。同时,利用Simulink将模型转换为嵌入式代码时,一般都采用Simulink自带e ...
【技术保护点】
1.一种基于MATLAB/Simulink的全模型可执行程序构建方法,其特征在于,包括以下步骤:/n步骤1、编写二级S-Function函数文件对A组件进行描述,得到A.c文件;/n步骤2、对MATLAB自带的S-Function组件进行配置,配置S-Function组件界面的输入、输出和参数,得到A.slx组件;/n步骤3、编写与A组件同名的tlc文件,得到A.tlc文件;/n步骤4、在MATLAB下将步骤1中得到的A.c文件通过mex命令编译为A.mex64文件;/n步骤5、将步骤1得到的A.c文件与步骤2得到的A.slx文件进行关联;/n步骤6、使用MATLAB/Si ...
【技术特征摘要】
1.一种基于MATLAB/Simulink的全模型可执行程序构建方法,其特征在于,包括以下步骤:
步骤1、编写二级S-Function函数文件对A组件进行描述,得到A.c文件;
步骤2、对MATLAB自带的S-Function组件进行配置,配置S-Function组件界面的输入、输出和参数,得到A.slx组件;
步骤3、编写与A组件同名的tlc文件,得到A.tlc文件;
步骤4、在MATLAB下将步骤1中得到的A.c文件通过mex命令编译为A.mex64文件;
步骤5、将步骤1得到的A.c文件与步骤2得到的A.slx文件进行关联;
步骤6、使用MATLAB/Simulink下自带的建库功能创建自定义组件库lib.slx;
步骤7、将步骤2得到的A.slx组件添加到自定义组件库lib.slx中,并通过编写sblocks.m文件将lib.slx添加到MATLAB/Simulink组件库中;
步骤8、将步骤6中的lib.slx、步骤7中的sblock.m文件、步骤4中的A.mex64文件和步骤3中的A.tlc文件添加到MATLAB搜索路径中;
步骤9、修改单速率模型代码生成模板文件bareboard_srmain.tlc,添加模型运行周期的获取、定时器初始化、中断绑定和模型调度功能,形成xx_srmain.tlc文件;
步骤10、修改变速率模型代码生成模板文件bareboard_mrmain.tlc,添加模型运行周期的获取、定时器初始化、中断绑定和模型调度功能,形成xx_mrmain.tlc文件;
步骤11、订制代码生成模板文件xx_file_process.tlc,将xx_srmain.tlc和xx_mrmain.tlc文件的文件名添加到xx_file_process.tlc文件中;
步骤12、设计处理器框架描述文件xx.tlc,对待使用的处理器进行描述,并将xx_file_process.tlc文件的文件名添加到xx.tlc文件中;
步骤13、设计编译、配置命令文件xx_make.bat,添加需使用的编译器、编译命令和编译选项配置,创建保存模型自动生成源码的目录src及保存编译、链接结果文件的Debug目录;
步骤14、订制编译钩子文件xx_make_rtw_hook.m,将步骤9中得到的xx_srmain.tlc和步骤10中得到的xx_mrmain.tlc文件的文件名添加到xx_make_rtw_hook.m文件中;
步骤15、创建system_framework目录,将步骤11创建的代码生成模板文件xx_file_process.tlc、步骤9创建的单速率模型代码生成模板文件xx_srmain.tlc、步骤10创建的变速率模型代码生成模板文件xx_mrmain.tlc、步骤12设计的处理器框架描述文件xx.tlc、步骤13设计的编译、配置命令文件xx_make.bat以及步骤14设计的编译钩子文件xx_make_rtw_hook.m放到system_framework目录中;
步骤16、将system_framework目录加入MATLAB/Simulink搜索路径下;
步骤17、在Matlab/Simulink中搭建用户模型,所有需要使用的底层驱动组件从Matlab/Simulink中步骤7添加的组件库lib.slx中选取;
步骤18、在Matlab/Simulink中通过模型的GenerateCode产生代码并自动完成编译、链接及可执行程序的生成。
2.根据权利要求1所述的一种基于MATLAB/Simulink的全模型可执行程序...
【专利技术属性】
技术研发人员:褚哲,刘文琦,杨一岱,赵一明,
申请(专利权)人:西安微电子技术研究所,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。