铂电阻温度对应阻值的计算方法其实可以看三个标准,GB/T30121-2013、IEC60751:2008和国际温标:ITS-90。前两个标准其实基本是一样的,就是GB抄的IEC的标准。所以这里计算公式就不列出来了,直接上代码。
private void Button1_Click(object sender, EventArgs e)
{
try
{
string str1 = tbTemp.Text;
double Temp = Convert.ToDouble(str1);//取到温度值
double A = 0.0039083;//系数A
double B = -0.0000005775;//系数B
double C = -0.000000000004183;//系数C
double Ro = 100;//0度时电阻值
string str2 = tbRox.Text;
double Rox = Convert.ToDouble(str2);
double Rout = 0;//计算出的电阻值
if ((Temp > -200) && (Temp < 850))//温度在范围内
{
if (Temp > 0)
{
Rout = Ro * (1 + (A * Temp) + (B * (Math.Pow(Temp, 2))));
}
else if (Temp == 0)
{
Rout = Ro;
}
else
{
Rout = Ro * (1 + (A * Temp) + (B * (Math.Pow(Temp, 2))) + (C * (Temp - 100) * (Math.Pow(Temp, 3))));
}
if (Rox != 100)
{
Rout = Rout * (Rox / 100);
}
tbROUT.Text = Convert.ToString(Rout);
}
else
{
MessageBox.Show("温度超过范围!", "错误");
}
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message, "Error");
return;
}
}
其实只是一个简单的按钮的代码。代码对应的小工具在我的共享里可以找到。