在上篇文章中(CANdela/Diva系列5--CANdela Studio的Data Types功能介绍),给大家介绍了6中不同的Data Type,本篇文章给大家介绍一下Data Types在DID 编辑中的应用。
目录
2.1 Vehicle Speed对应的Data Type:
2.3 Operating voltage value对应的Data Type:
2.11 ECU Temperature对应的Data Type:
1. DID 的需求:
首先我们拿到一个ID 为0x0500,名为snapshot record的DID信息,可以发现这个DID包含了“Vehicle Speed”、“Current gear”、“Operating voltage value”、“Odometer”、“year”、“month”、“day”、“hour”、“minute”、“Sec”、“ECU Temperature” 这11中数据,我们先根据下图的表格去创建这个DID 所需要的Data Types.
图1
2. 创建对应的Data Types:
2.1 Vehicle Speed对应的Data Type:
从图1可以读取到如下信息:Vehicle Speed的数据长度是2个byte,物理值与实际值的转化关系如下:phys=hex*0.05625,单位是km/h,最小值是0,最大值是299.98125,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot VehicleSpeed;
2.将length改成2个byte;
3.在Factor下方的空格处填写0.05625;
4.在Unit下方的空格处填写km/h;
5.将Dispaly Format更改成Floating Point;
6.最后点击OK,这样就创建好了Vehicle Speed对应的Data Type。
2.2 Current gear对应的Data Type:
从图1可以读取到如下信息:Current gear的数据长度是1个byte,物理值与实际值的转化关系为枚举类型,单位是rpm,最小值是0,最大值是15,首先我们可以在Data Types中去New一个新的“Text Table” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Gear;
2.将length改成1个byte;
3.在Coding下面根据如下关系去填写:
0=invalid
1='P' drive gear
2='R' drive gear
3='N' drive gear
4='D' drive gear
5=Not used
6=Not used
7=Not used
4.最后点击OK,这样就创建好了Current gear对应的Data Type。
2.3 Operating voltage value对应的Data Type:
从图1可以读取到如下信息:Operating voltage value的数据长度是1个byte,物理值与实际值的转化关系为phys=hex/10,单位是V,最小值是0,最大值是25.5,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Operating Voltage;
2.将length改成1个byte;
3.在Divisor下方的空格处填写10;
4.在Unit下方的空格处填写V;
5.将Dispaly Format更改成Floating Point;
6.最后点击OK,这样就创建好了Operating voltage value对应的Data Type。
2.4 Odometer对应的Data Type:
从图1可以读取到如下信息:Odometer的数据长度是3个byte,物理值与实际值的转化关系为phys=hex/10,单位是km,最小值是0,最大值是999999,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Odometer;
2.将length改成3个byte;
3.在Unit下方的空格处填写km;
4.将Dispaly Format更改成Decimal;
5.将最大值改成999999;
6.最后点击OK,这样就创建好了Odometer对应的Data Type。
2.5 year对应的Data Type:
从图1可以读取到如下信息:year的数据长度是1个byte,物理值与实际值的转化关系为phys=hex+2000,最小值是2000,最大值是2255,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Year;
2.将length改成1个byte;
3.在Offset下方的空格处填写2000;
4.将Dispaly Format更改成Decimal;
5.最后点击OK,这样就创建好了year对应的Data Type。
2.6 month对应的Data Type:
从图1可以读取到如下信息:month的数据长度是1个byte,物理值与实际值的转化关系为phys=hex,最小值是1,最大值是12,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Month;
2.将length改成1个byte;
3.将最小值改成1;
4.将最大值改成12;
5.将Dispaly Format更改成Decimal;
6.最后点击OK,这样就创建好了month对应的Data Type。
2.7 day对应的Data Type:
从图1可以读取到如下信息:day的数据长度是1个byte,物理值与实际值的转化关系为phys=hex,最小值是1,最大值是31,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Day;
2.将length改成1个byte;
3.将最小值改成1;
4.将最大值改成31;
5.将Dispaly Format更改成Decimal;
6.最后点击OK,这样就创建好了day对应的Data Type。
2.8 hour对应的Data Type:
从图1可以读取到如下信息:hour的数据长度是1个byte,物理值与实际值的转化关系为phys=hex,最小值是0,最大值是23,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Hour;
2.将length改成1个byte;
3.将最小值改成0;
4.将最大值改成23;
5.将Dispaly Format更改成Decimal;
6.最后点击OK,这样就创建好了hour对应的Data Type。
2.9 minute对应的Data Type:
从图1可以读取到如下信息:minute的数据长度是1个byte,物理值与实际值的转化关系为phys=hex,最小值是0,最大值是59,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Minute;
2.将length改成1个byte;
3.将最小值改成0;
4.将最大值改成59;
5.将Dispaly Format更改成Decimal;
6.最后点击OK,这样就创建好了minute对应的Data Type。
2.10 Sec对应的Data Type:
从图1可以读取到如下信息:Sec的数据长度是1个byte,物理值与实际值的转化关系为phys=hex,最小值是0,最大值是59,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot Second;
2.将length改成1个byte;
3.将最小值改成0;
4.将最大值改成59;
5.将Dispaly Format更改成Decimal;
6.最后点击OK,这样就创建好了Sec对应的Data Type。
2.11 ECU Temperature对应的Data Type:
从图1可以读取到如下信息:ECU Temperature的数据长度是1个byte,物理值与实际值的转化关系为phys=hex-40,单位是℃,最小值是-40,最大值是100,首先我们可以在Data Types中去New一个新的“Linear” 的Data Type:
1.将新的Data Type名字更改为DTC Snapshot ECU Temperature;
2.将length改成1个byte;
3.在Offset下方的空格处填写-40;
4.在Unit下方的空格处填写℃;
5.将最大值改成100;
6.将Dispaly Format更改成Decimal;
7.最后点击OK,这样就创建好了Sec对应的Data Type。
通过创建上述的11个数据类型,可以用到DID 0x0500中啦!
3.Data Types在DID中的应用:
在DIDs中去创建一个新的DID,ID值为0x0500,然后按照顺序,将我们在步骤2中创建的Data Types一个一个的添加,可以发现,选择对应的Data Type,所定义的数据长度会在右侧显示出来:
最终添加完后的DID的overview如下所示:
后言:
本人有CANdelaStudio Admin的license,最高支持CANdela V15的版本,支持CDD文件的定制化服务!!!