6CRUISE_MatLab接口程序
- 格式:ppt
- 大小:689.50 KB
- 文档页数:22
Cruise_基于MATLAB电机效率MAP合成电机工况点在Cruise中电动汽车做完某一工况(如NEDC)经济性仿真后结果管理器中,没有电机工作点拟合效率MAP的分析图,增加后处理模板应该属于AVL的增值服务这里介绍一个简单的基于MATLAB实现电机工作点拟合效率MAP1、制作电机MAP文件,仿真数据将电机外特性数据和效率数据按Excel表格式分别输入中load和eff中计算模型工况(NEDC)后,结果管理器中打开电机分析图,在数据表中复制出扭矩和转速数据至Excel表中workpoint至此数据处理完成,如下:2、制作M文件%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 使用时修改数据源路径,数据格式按照Excel要求录入,并设置最大转矩和转速% 可按需要修改m文件,不熟悉m函数的可生成图形后在图形编辑器修改图形属性% 编制- Ty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%-------------------------------数据源-------------------------------%clear;clc;DataFile = 'E:\AVL CRUISE\EffMap_Polt\CruiseEV - .xlsx';MaxTrq = 360;%最大扭矩MaxSpd = 12000;%最高转速R = 120;%坐标比例%------------------------------读取数据------------------------------% Dspeed_load= xlsread(DataFile,'load','A3:A100');%驱动外特性转速数据Dtorque_load= xlsread(DataFile,'load','B3:B100');%驱动外特性扭矩数据Gspeed_load= xlsread(DataFile,'load','C3:C100');%馈电外特性转速数据Gtorque_load= xlsread(DataFile,'load','D3:D100');%馈电外特性扭矩数据Dspeed_eff= xlsread(DataFile,'eff','A3:A1000');%效率试验驱动转速数据Dtorque_eff= xlsread(DataFile,'eff','B3:B1000');%效率试验驱动扭矩数据Defficiency_eff= xlsread(DataFile,'eff','C3:C1000');%效率试验驱动效率数据Gspeed_eff= xlsread(DataFile,'eff','D3:D1000');%效率试验馈电转速数据Gtorque_eff= xlsread(DataFile,'eff','E3:E1000');%效率试验馈电扭矩数据Gefficiency_eff= xlsread(DataFile,'eff','F3:F1000');%效率试验馈电效率数据speed_workpoint= xlsread(DataFile,'workpoint','A2:A10000');%Cruise仿真电机转速工作点torque_workpoint= xlsread(DataFile,'workpoint','B2:B10000');%Cruise仿真电机扭矩工作点%------------------------------数据处理------------------------------% value_eff= [ 70 74 78 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97];%设置效率MAP曲线的标定数值[D_SPEED,D_TORQUE]=meshgrid(0:MaxSpd/R:MaxSpd,0:MaxTrq/R:MaxTrq);[G_SPEED,G_TORQUE]=meshgrid(0:MaxSpd/R:MaxSpd,-MaxTrq:MaxTrq/R:0);%设置横纵坐标轴范围D_EFFICIENCY= griddata(Dspeed_eff,Dtorque_eff,Defficiency_eff,D_SPEED,D_TORQUE); G_EFFICIENCY= griddata(Gspeed_eff,Gtorque_eff,Gefficiency_eff,G_SPEED,G_TORQUE); %散乱点插值SPEED = [D_SPEED G_SPEED];TORQUE = [D_TORQUE G_TORQUE];EFFICIENCY = [D_EFFICIENCY G_EFFICIENCY];%合成驱动和制动数据%------------------------------生成图形------------------------------% figure('Name','SNC-Ty','Color','white');%[c,h]=contour(SPEED,TORQUE,EFFICIENCY,value_eff);%生成二维等值图(无填充)[c,h]=contourf(SPEED,TORQUE,EFFICIENCY,value_eff);%生成二维等值图(有填充)clabel(c,h,value_eff);%添加线标值%------------------------------图形属性------------------------------% ax = gca;ax.FontName = '等线';ax.FontWeight = 'bold';ax.XLabel.String = '转速- rpm';ax.YLabel.String = '扭矩- Nm';%ax.XMinorTick = "on";%增加X轴坐标点%ax.YMinorTick = "on";%增加Y轴坐标点%ax.XGrid = "on";%增加X轴辅助线%ax.YGrid = "on";%增加Y轴辅助线%ax.Title.String = 'C-WTVC工况分布';%标题%------------------------------新增数据------------------------------% hold onplot(Dspeed_load,Dtorque_load,'r','linewidth',2);%驱动外特性plot(Gspeed_load,Gtorque_load,'r','linewidth',2);%馈电外特性plot(torque_workpoint,speed_workpoint,...'o',...'LineWidth',1,...'MarkerEdgeColor',[0.00,0.45,0.74])%添加电机工作点数据3、生成图形及修改图形样式点击红色框图标,调出图形属性编辑器,可以根据需要修改图形样式CruiseEV.xlsxExcel模板打开后,另存使用。
在m a t l a b中调用c 程序(32位与64位m a t l a b)1.Maltab 编译Mex文件(不可调试)(1)hello word在matlab命令行中输入:mex -setup选择合适编译器,完成设置。
新建一个文件,输入:#include <mex.h>void mexFunction(int nlhs ,mxArray *plhs[] ,int nrhs, const mxArray *prhs[]){mexPrintf("Hello word!");}把上面程序保存为一个C文件,如hello.c在command window下运行>> mex hello.c>>结束之后在current folder 窗口里会有一个hello.mexw32文件。
在command window下运行>> hello()Hello word!(2)如果是多维数组并不能用Arr[i][j]的格式寻址,在参数在C里只是一维数组,一维数组按列排列,C语言是按行排列的,如[a b c d;e f g h]C语言在内存中是按a b c d e f g h排列,而matlab 是按 a e b f c g d h排列的。
如果要变成C语言可Arr[i][j]索引的格式,可用for循环转化打印函数:mexPrintf()相当于matlab的disp函数,mexPrintf函数里需要打印的部分必须用""而不能用''子函数的问题:子函数有两种方式,一种采用return值得方式返回值另一种方式为利用参数返回值,把需要return的值直接赋给形参。
多个.c文件的编译:多个.c文件中只能存在一个mexFunction函数可用mex ('a.c','b.c','d.c')的格式编译2.在VS中调试mex(1)在vs中建立dll工程,建立project.cpp文件,输入#include "project.h"#include <mex.h>void mexFunction(int nlhs ,mxArray *plhs[] ,int nrhs, const mxArray*prhs[]){mexPrintf("Hello word!");}建立.h文件,输入#include "matrix.h"#include "mex.h"#define TESTMATLAB_EXPORTS#ifdef TESTMATLAB_EXPORTS#define MEX_FUNCTION_API __declspec(dllexport)#else#define MEX_FUNCTION_API __declspec(dllimport)#endifMEX_FUNCTION_API void mexFunction(int nlhs, mxArray* plhs[], int nrhs, mxArray* prhs[]);建立project.def文件,输入LIBRARYEXPORTSmexFunction(2)添加include和lib路径若matlab为32位,liblujing为:D:\Program Files\MATLAB\R2014a\extern\lib\win3264位则为:D:\Program Files\MATLAB\R2014a\extern\lib\win64\microsoftinclude路径为:D:\Program Files\MATLAB\R2014a\extern\include(3)添加链接器附加依赖项libmx.lib libeng.lib libmat.liblibmex.lib,将连接器输出的文件名称后缀,project.dll改为project.mexw32,64位改为project.mexw64(4)设置C/C++-代码生成-运行库为多线程调试(/Mtd)(5)若为64位matlab,还需将vs的编译平台设置为x64(6)生成解决方案,会在debug目录生成project.mexw64.(7)打开matlab,将工作目录改到如上debug目录,包含project.mexw64文件(8)开始调试,在vs中cpp文件设置端点,选择工具-附件到进程-matlab-添加,再在matlab中运行该文件,即可跳入端点处.(9)调试完成后,将project.mexw64放入matlab的目录中,可以直接调用3.调用C语言普通dll(1)按照一般方法建立dllMatlabDllTest.cpp:#include "MatlabDllTest.h"double add(double x, double y){return (x+y);}MatlabDllTest.h:#ifndef MATLABDLLTEST_H#define MATLABDLLTEST_H__declspec(dllexport) double add(double x,double y);#endifMatlabDllTest.def:LIBRARYEXPORTSadd(2)生成解决方案。
基于Cruise的纯电动汽车建模及仿真研究Modeling and simulation of pure electric vehicles based on Cruise朱红军1 李智豪21.江苏金彭集团有限公司,江苏 徐州 2110112.安徽工程大学智能汽车线控底盘系统安徽省重点实验室,安徽 芜湖 241000摘要:为了缩短纯电动汽车设计开发周期,采用基于Cruise与MATLAB/SIMULINK联合仿真的方法,依据仿真试验结果对所选电机及所设计控制策略运行状态进行分析。
首先,运用Cruise软件搭建纯电动汽车仿真模型;其次,在MATLAB/SIMULINK中建立纯电动汽车控制策略;最后,通过两者的联合仿真,在多个工况下分析车速跟随情况、电机转速及扭矩、电池荷电状态(state of charge,SOC)值变化情况,进而分析控制策略与所选电机运行状况是否匹配,缩短整车电机选型、控制策略设计及开发的周期。
关键词:纯电动汽车;Cruise;联合仿真;控制策略中图分类号:U469.72 文献标识码:A0 引言随着国内外新能源汽车产业的蓬勃发展,市场对新能源汽车的产品设计提出新要求,因此汽车更新迭代速度极快[1]。
在新能源汽车开发过程中,缩短设计、试制和试验周期,提高产品设计准确性与快速审计对抢占汽车市场先机具有重要意义[2]。
本文基于某款纯电动汽车车型,搭建仿真模型,通过分析计算结果来评估整车所选电机及控制策略是否满足设计需求。
首先,利用Cruise软件完成纯电动汽车建模设计。
其次,利用MATLAB/ SIMULINK软件进行控制策略设计。
基于两个软件的联合仿真功能,建立多工况下的模拟仿真任务。
通过分析仿真试验结果,判断所选电机及控制策略是否合理。
最后,依托试验结果来验证电机选型和控制策略是否需要调整,避免在开发过程中盲目进行电机选型和控制策略设计,从而缩短开发周期[3]。
1 纯电动汽车结构及参数该纯电动汽车动力系统主要由电机、动力电池、单挡变速箱、电耗元件、驱动桥和车轮组成(图1)。
基于CRUISE的纯电动轿车动力总成参数优化匹配及性能仿真分析王燕1,杨兴旺1,郑益红1,赵子亮1(1 中国第一汽车集团公司技术中心,长春市创业大街1063 号)[摘要] 在电动汽车开发过程中,动力总成的选型对整车动力性、经济性以及整车成本至关重要。
本文针对一汽某款纯电动轿车,提出了其电机、电池以及减速器等动力总成的匹配方法,并结合整车性能指标要求,应用AVL CRUISE软件对这些参数进行了匹配计算,得到了较为满意的结果,为下一步的整车开发奠定了基础。
实践表明,利用专业软件进行建模和仿真,可以大大提高动力总成参数匹配效率。
AVL CRUISE软件非常适用于整车前期开发的参数匹配和性能预测。
关键词:A VL CRUISE;参数匹配;减速器速比;经济性优化主要软件:A VL CRUISEPowertrain Parameters Design And Vehicle PerformanceSimulation of Battery Electric Vehicles Based On CRUISE Wang Yan1, Y ang Xingwang1 ,Zheng Yihong1,Zhao Ziliang11. CHINA F AW Co.,Ltd.R&D CENTER NO.1063 Chuangye Street,Changchun,jilin,China;[Abstract] It is very important for the powertrain selection which can affect the vehicle performance, consumption, cost and so on during the development process of electric vehicles. A method of parameters design of the motor, power batteries and transmission is put forward for a certain Electric Vehicle of FAW. According to the vehicle performance requirements, the software of A VL CRUISE was taken to design and calculate the vehicle parameters, and a satisfactory result was obtained from the calculation process, which established a foundation for the next vehicle development. The practice shows that the use of specialized software for modeling and simulation can greatly improve the efficiency of the powertrain parameters design, and A VL CRUISE is very suitable for parameters design and vehicle performance prediction in the prior phase of the vehicle development.Keywords: AVL CRUISE; parameters design; reducer ratio; economic optimization Software: AVL CRUISE1.前言随着电动汽车的发展,各大企业把越来越多的精力投入到混合动力和纯电动轿车研发上。
CRUISE软件及其在电动汽车仿真中的应用对一些特性复杂的模块(如电动机),可以在参数设置窗口通过编辑图表曲线建立曲线图(如速度一转矩特性曲线)来实现参数设置。
图2CRUISE中实现的电动汽车为了在CRUISE中实现能量管理控制策略,充分发挥电池加超级电容能量存储结构的优势,可以通过CRUISE提供的MatlabDLL、MatlabAPI模块将在Matlab/Simulink中建立的控制策略加入至UCRUISE中。
也可以利用CRUISE中的BlackBox模块将用户编写的C、FORTRAN语言的控制策略嵌入在CRUISE中。
这里采用MatlabAPI模块的形式实现控制策略的仿真。
控制逻辑如下H。
:1)汽车平稳行驶时,由电池给电动机供电,并根据超级电容的SOC值决定是否向超级电容充电;2)汽车启动或爬坡时,由电池和超级电容同时提供驱动能量;3)刹车或下坡时,电动机向电池和超级电容回馈能量;在Matlab/simulink中建立的控制模型如图3所示。
模型的输入来自CRUISE的电机负载信号、车速、超级电容容量、刹车压力信号等,主要通过模糊逻辑控制器将包括电机负载信号,刹车压力、DC/DC控制信号作为输出信号返回至UCRUISE中。
图3控制策略模型图349CRUISE软件及其在电动汽车仿真中的应用作者:吴剑, 张承慧, 崔纳新, 李珂作者单位:山东大学,控制科学和工程学院,济南,2500611.学位论文石庆升纯电动汽车能量管理关键技术问题的研究2009面对日趋严重的能源短缺与环境恶化问题,新型车辆的开发利用愈来愈受到各国政府和工业界的高度重视。
在这种背景下,清洁无污染、零排放的纯电动汽车成为当今最有发展前途的交通工具之一。
纯电动汽车作为一种有限能量电源供电系统,其能量优化和控制,即能量管理问题的研究意义十分显著,正成为电动汽车领域研究的热点问题。
随着电力电子技术和计算机技术在汽车领域中的推广和应用,纯电动汽车的能量管理系统不断完善。