Matlab代码生成RTW

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Matlab代码生成(RTW)

针对换挡省油提示系统项目代码生成过程如下:双击红色TCU0模块,进入TCU0子模块:

选择Simulation/Configuration Parameters,打开配置参数界面:

配置Solver,选择Fixed-step,因为是离散变量操作;解码器Solver选择ode1(Euler),Fixed-step size选择0.004(4ms),与单片机执行周期对应;Tasking mode for periodic sample times:选择SingleTasking

配置Hardware Implementation:选择Infineon C16x

Real-time Workshop配置:系统目标文件选择ert.tlc;Language:选择C;使能生成文件Generate make command:make_rtw;Template make

Report:配置为全部使能

参数配置完成后,然后,主要对TCU模块进行定点数转换,右键TCU模块,选择Fixed-Point/Fixed-Point Advisor

选择Run/Run to failure,会自动进行定点数转换检测

定点数检测完成后,右键TCU模块,选择Real-Time Workshop/Build Subsystem 点击Build后,会自动生成代码,产生代码生成报告:

代码会保存在相应的目录下:双击打开TUC0_ert_rtw,

将代码生成的C文件,HEX文件添加到单片机Keil程序中:

最后6个文件为matlab代码生成的头文件和C文件。

然后在单片机头文件中,调用一下四个头文件:

那么Keil编译是肯定能通过的。

生成代码在程序中调用:

首先在初始化程序中,调用TCU0_initialize(0),来完成生成代码的初始化过程。

在主程序中,每次给TCU0_U.Speed(车速),TCU0_U.throttle(油门开度),TCU0_U.Nee (转速)重新赋值,车辆上这三个值可以周期性的通过CAN采集到,然后通过生成代码TCU0_step()计算,便可得出期望档位TCU0_Y.gear,如下:

相关文档
最新文档