1.INCA介绍

INCA是常用的汽车ECU测试和标定的,广泛应用于动力总成等领域。INCA提供了丰富的接口,供用户自动化、定制化。本公众号通过几篇文章,介绍下一些二次开发的方法,本篇介绍MIP。

2.MIP

MIP(MATLAB Integration Package))是INCA提供的MATLAB接口。如下图所示:INCA是服务器端,MATLAB是客户端。

1)安装

需要专用安装包和license,建议安装到MATLAB路径下。安装完成后,需要“更新工具路径缓存”。

2)文档

INCA的安装目下ETAS\INCA7.2\Manuals有MIP手册《INCA_MIP_R16_EN.pdf》。

(回复“MIP文档”获取)

3)Ring Buffer(循环缓冲区)

INCA提供了一个缓冲区,可以存储30s的变量值,保证了数据的连续性和实时性。

3.常用MIP函数

接下来按照执行的先后顺序介绍

1)打开

%% Open

% Establish the connection from MATLAB to INCA

IncaOpen;

% Connects to the currently opened experiment

IncaOpenExperiment;

MATLAB先连接INCA,再连接到当前已打开的实验环境,输出结果:

2)变量操作

%% Measure element

% Add measure element in current group

IncaAddMeasureElement('WorkbaseDevice1',[],'B_GREEN');

IncaAddMeasureElement('WorkbaseDevice1',[],'B_RED');

IncaAddMeasureElement('WorkbaseDevice1',[],'B_YELLOW');

% Start measure

data=[];

time=[];

IncaShowMessages(0);

IncaSetMeasureReadMode(0)

IncaStartMeasurement;

deltaT=0;

% Measure for 20 seconds

while(deltaT<20)

pause(0.1)

[t,d]=IncaGetRecords( 'WorkbaseDevice1','TimeC',500);

data = [data; d];

time = [time; t];

if( length(time))

% Calculate time measured

deltaT = time( length(time)) - time(1);

end

end

IncaStopMeasurement;

IncaShowMessages(1);

% Plot the results

plot(time, data);

此段代码参考了MIP手册中的示例代码,首先添加3个变量,然后采集20s的数据,绘制曲线,输出结果:

3)标定量操作

%% Calibration element

% Add calibration element

IncaAddCalibrationElement('WorkbaseDevice1','DEMO_CONSTANT_1');

% Get calibration value

value=IncaGetCalibrationValue('WorkbaseDevice1','DEMO_CONSTANT_1');

% Set calibration value

DEMO_CONSTANT_1=10;

result=IncaSetCalibrationValue('WorkbaseDevice1','DEMO_CONSTANT_1',DEMO_CONSTANT_1);

首先添加标定量,其次获取值,修改值,输出结果:

4)关闭

%% Close

IncaClose;

退出INCA,输出结果:

(回复“MIP例子”获取示例代码)

4.INCA-COM vs MIP

本公众号介绍了INCA的2种二次开发方式,对比如下:

方案

优点

缺点

INCA-COM

免license,可以完全控制INCA;
不需要安装其他程序即可运行;
快速GUI界面和流程开发;

数据实时性和完整性差,无ring  buffer;

MIP

数据实时性和完整性好,有ring  buffer;
 可连接到simulink模型;

需要单独license;
需要安装MATLAB或MATLAB Compiler
Runtime(免费);

INCA二次开发-MIP的更多相关文章

  1. INCA二次开发-INCACOM

    1.INCA介绍 INCA是常用的汽车ECU测试和标定的,广泛应用于动力总成等领域.INCA提供了丰富的接口,供用户自动化.定制化.本公众号通过几篇文章,介绍下一些二次开发的方法,本篇介绍INCA-C ...

  2. Navisworks API 简单二次开发 (自定义工具条)

    在Navisworks软件运行的时候界面右侧有个工具条.比较方便.但是在二次开发的时候我不知道在Api那里调用.如果有网友知道请告诉我.谢谢. 我用就自己设置一个工具.界面比较丑!没有美工. 代码: ...

  3. [连载]《C#通讯(串口和网络)框架的设计与实现》- 12.二次开发及应用

    目       录 第十二章     二次开发及应用... 2 12.1        项目配制... 3 12.2        引用相关组件... 4 12.3        构建主程序... 5 ...

  4. OBS-Studio二次开发记录

    OBS-Studio 是一款跨平台的,开源的视频直播客户端软件. 公司需要对他进行二次开发,开发的目的是使用它的录屏功能. 开发的要求是:定制全新的界面,所见即所得,window系统兼容要好. 开发步 ...

  5. 小猪cms微信二次开发之怎样分页

    $db=D('Classify'); $zid=$db->where(array('id'=>$this->_GET('fid'),'token'=>$this->tok ...

  6. 承接 AutoCAD 二次开发 项目

    本人有多年的CAD开发经验,独立完成多个CAD二次开发项目.熟悉.net及Asp.net开发技术,和Lisp开发技术. 现在成立了工作室,独立承接CAD二次开发项目.结项后提供源码及开发文档,有需要的 ...

  7. 【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动

    SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1    服务接口的作用 围绕着设备驱动模块采集的数据,根据需求提供多种应用服务,例如:数据上传服务.数 ...

  8. 【工业串口和网络软件通讯平台(SuperIO)教程】三.二次开发流程

    1.1    二次开发流程图 1.2    引用相关组件 找到“开发包”,引用里边的相关组件.如下图: 1.3    开发设备驱动模块 1.3.1    开发发送协议驱动 继承SuperIO.Devi ...

  9. Civil 3D API二次开发学习指南

    Civil 3D构建于AutoCAD 和 Map 3D之上,在学习Civil 3D API二次开发之前,您至少需要了解AutoCAD API的二次开发,你可以参考AutoCAD .NET API二次开 ...

随机推荐

  1. 编译GDAL使用最新的HDF库配置文件

    HDF库最新版本中的动态库以及目录结构都发生了变化,导致按照之前的博客进行编译GDAL时,会出问题.使用HDF4版本为HDF4-4.2.10,HDF5的版本为HDF5-1.8.12.两个库的目录结构如 ...

  2. Android的事件处理-android学习之旅(四十四)

    androd事件处理简介 控制飞机移动的简单实例 package peng.liu.test; import android.app.ActionBar; import android.app.Act ...

  3. Android的搜索框SearchView的用法-android学习之旅(三十九)

    SearchView简介 SearchView是搜索框组件,他可以让用户搜索文字,然后显示.' 代码示例 这个示例加了衣蛾ListView用于为SearchView增加自动补全的功能. package ...

  4. A*寻路算法入门(五)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...

  5. cocos2dx 3.3 + QT5.3制作游戏编辑器

    欢迎转载,但请注明本blog地址,谢谢_(:зゝ∠)_ http://www.cnblogs.com/marisa/p/4141862.html 主要参考: http://blog.csdn.net/ ...

  6. xml解析之使用dom4j的api对xml文件进行CRUD(二)

    在使用dom4j的api对xml文件进行CRUD(一)见博客http://blog.csdn.net/qq_32059827/article/details/51524330的基础上,再对做一次练习. ...

  7. Android项目-高考作文项目架构(三)

    上一篇我们讲到了,  Http Json的功能的抽取. 如果我们请求的是一个列表的数据呢? 我们使用那个功能就不是很好. 因为一个列表, 还有很多其他功能(比如每个listView都需要setAdap ...

  8. HTML5 window/iframe跨域传递消息 API

    原文地址:HTML5′s window.postMessage API 在线示例:Using HTML5's window.postMessage(请打开控制台看日志) 原文日期: 2010年09月0 ...

  9. Leetcode_28_Implement strStr

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41452047 Implement strStr(). Re ...

  10. (NO.00001)iOS游戏SpeedBoy Lite成形记(四)

    下面我们来实现选手从起点开始移动到终点的代码. 首先在GameScene.h接口中添加matchRun方法: #import "CCNode.h" @interface GameS ...