如何在CC2650中计算红外温度。
TI温度:F000AA00-0451-4000-B000-000000000000
温度数据:f000aa01-0451-4000-b000-000000000000
我尝试根据温度数据特性中的数据计算物体和环境。对象数据高于TI应用中显示的IR温度。
Swift Code:
static func calculateObjectAndAmbient(objectRaw:Int16, ambientRaw:Int16) -> (Double, Double)
{
let ambient = Double(ambientRaw)/128.0;
let vObj2 = Double(objectRaw)*0.00000015625;
let tDie2 = ambient + 273.15;
let s0 = 6.4*pow(10,-14);
let a1 = 1.75*pow(10,-3);
let a2 = -1.678*pow(10,-5);
let b0 = -2.94*pow(10,-5);
let b1 = -5.7*pow(10,-7);
let b2 = 4.63*pow(10,-9);
let c2 = 13.4;
let tRef = 298.15;
let s = s0*(1+a1*(tDie2 - tRef)+a2*pow((tDie2 - tRef),2));
let vOs = b0 + b1*(tDie2 - tRef) + b2*pow((tDie2 - tRef),2);
let fObj = (vObj2 - vOs) + c2*pow((vObj2 - vOs),2);
let object = pow(pow(tDie2,4) + (fObj/s),0.25) - 273.15;
return (object, ambient)
}
我还想计算MPU9250服务数据。
服务=" F000AA80-0451-4000-B000-000000000000"
特征数据=" F000AA81-0451-4000-B000-000000000000"
特征配置=" F000AA82-0451-4000-B000-000000000000"
有手册吗?我想访问Gyro。,Accel。,Magn。,数据。
对不起我的英语。
提前谢谢。
答案 0 :(得分:0)
在CC2650中更改了对象和环境的计算。
如果有人需要,可以在这里进行新的快速计算;
static func calculateObjectAndAmbient(objectRaw:Int16, ambientRaw:Int16) -> (Double, Double)
{
let SCALE_LSB = 0.03125;
let a = objectRaw >> 2;
let Obj = Double(a) * SCALE_LSB
let b = ambientRaw >> 2;
let Amb = Double(b) * SCALE_LSB
return (Obj, Amb)
}
更多详情:sensortag2015
更多详情:TI Wiki