qwerttt 发表于 2012-6-7 22:00:27

热电阻PT10 PT100 Cu50 Cu100电阻转温度程序

本帖最后由 qwerttt 于 2012-6-7 22:01 编辑

几年前做过程信号校验仪,其中一个功能的51程序,热电阻值转为温度,欢迎大家测试
温度换算为电阻,90温标已有公式,就不多说了
下一步再贴出8种热电偶温度转毫伏,毫伏转温度的程序,敬请期待/*******************************************************************************
*函数描述:PT10&PT100 Cu50&Cu100 热阻转温度
*输入变量:R 热阻阻值
          type热电阻类型 0 PT10
                                 1 PT100
                                 2 Cu50
                                 3 Cu100
*返回变量:float T 温度
*******************************************************************************/
float RtoT(float R, uchar type)
{
        uchar R0;// 热电阻0度时阻值
        float T, tmp, min, mid, max;
        float x, y, z;
        float d = 3.9083/1e3, b = -5.775/1e7, c = -4.183/1e12;
       
        if(type <= 1)
        {
                if(type == 0)
                {
                        R0 = 10; min = 1.852; mid = 10; max = 39.049;// Pt10
                }
                else
      {
                        R0 = 100; min = 18.52; mid = 100; max = 390.49; // Pt100
          }
                if(R>=mid && R<=max)
                {
                        y = sqrt(d*d - 4*b*(1-R/R0));
                        T = (y-d) / (2*b);// 得出温度
                }
                else if(R<mid && R>=min)
                {
                        x = 0; y = -100; z = -201;
                        tmp = R0*(1 + d*y + b*y*y + c*(y-100)*y*y*y);
                        while(fabs(tmp-R)>=0.007)
                        {
                                if(R > tmp)
                                {
                                        x = x; z = y;
                                        y = (x+y)/2;
                                }
                                else
                                {
                                        x = y; z = z;
                                        y = (y+z)/2;
                                }
                                tmp = R0*(1 + d*y + b*y*y + c*(y-100)*y*y*y);
                        }
                        T = y;// 得出温度
                }
        }
        else
        {
                if(type == 2)// Cu50
                        R0 = 50;
                else         // Cu100
                        R0 = 100;
                       
                x = 150; y = 50; z = -50;
                tmp = R0*(1 + 4.289/1e3*y - 2.133/1e7*y*y + 1.233/1e9*y*y*y);
                while(fabs(tmp-R)>=0.007)
                {
                        if(R > tmp)
                        {
                                x = x; z = y;
                                y = (x+y)/2;
                        }
                        else
                        {
                                x = y; z = z;
                                y = (y+z)/2;
                        }
                        tmp = R0*(1 + 4.28899/1e3*y - 2.133/1e7*y*y + 1.233/1e9*y*y*y);
                }
                T = y;
        }
       
        return T;
}

GZLJZ 发表于 2012-6-7 22:04:31

顶起来,LZ贴出点51汇编就最好了

zhuangchao12 发表于 2012-6-9 00:51:17

楼主顶起来,下一贴何时出啊???等学习

holyfire 发表于 2012-6-9 10:30:04

顶起,学习

atl0402 发表于 2012-6-9 11:06:17

期待lz出K型的mV与温度的拟合公式

qwerttt 发表于 2012-6-9 12:14:38

将在下周末开新贴出8种热电偶温度转mV,mV转温度间的换算
关于冷端补偿,冷端温度换算成对应热偶mV值,然后与测出热偶mV相加,最后算出温度
手头没有90温标小册子,记得当时是根据90温标上的公式计算的

xuboluan 发表于 2012-6-9 12:18:30

记得当时做PT100 温度检测的时候是对照数据表格,用MATLAB 拟合的温度曲线 ,一条插值的,一条线性的。但是计算完送到数码管就不行了都乱码。然后偷懒又弄的查表法

zfzdhz_2012 发表于 2012-7-5 17:07:25

qwerttt 发表于 2012-6-9 12:14 static/image/common/back.gif
将在下周末开新贴出8种热电偶温度转mV,mV转温度间的换算
关于冷端补偿,冷端温度换算成对应热偶mV值,然后 ...

90温标的册子是什么?

qwerttt 发表于 2012-7-5 20:10:37

就是一本手册而已,网上应该有卖的

liuhongyu 发表于 2012-9-28 14:12:53

CU50那一段不行......
会死循环。

qwerttt 发表于 2012-9-28 21:05:20

liuhongyu 发表于 2012-9-28 14:12 static/image/common/back.gif
CU50那一段不行......
会死循环。

Cu50哪个温度点,会死循环

liuhongyu 发表于 2012-10-8 18:11:56

qwerttt 发表于 2012-9-28 21:05 static/image/common/back.gif
Cu50哪个温度点,会死循环

所有的阻值进去都出不来了,PT100的程序相当好。你随便拿个值进去看看。

liuhongyu 发表于 2012-10-8 18:14:23

qwerttt 发表于 2012-9-28 21:05 static/image/common/back.gif
Cu50哪个温度点,会死循环

if(R > tmp)

                        {

                              x = x; z = y;

                              y = (x+y)/2;

                        }

                        else

                        {

                              x = y; z = z;

                              y = (y+z)/2;

                        }

这里的“x = x;”“z = z;”是什么作用?浮点的运算不是很懂。

xukai871105 发表于 2012-10-14 15:14:21

用你一段PT100的代码,多谢你的分享!

qwerttt 发表于 2012-10-14 16:03:11

本帖最后由 qwerttt 于 2012-10-14 16:06 编辑

想 x = x; 这种代码是多余的
Cu50转换没有问题呀

相关链接:8种热电偶温度转换
http://www.amobbs.com/thread-5482347-1-1.html

liuhongyu 发表于 2012-10-15 18:46:36

你写的关于热电偶的代码,我对着http://srdata.nist.gov/its90/main/
这个网站能看的懂,就是热电阻为什么这么写,公式的出处是哪里不是很明白。

wenfengcom 发表于 2012-10-15 19:29:52

楼主能贴出信号校验仪的完整程序学习一下吗,

hisun 发表于 2012-10-15 20:38:26

嗯,这个要好好学习

dkdachong 发表于 2012-12-18 18:11:02

应用试下

hongyancl 发表于 2013-1-19 15:59:52

定楼主,热电阻值转为温度

天下无伤 发表于 2013-3-4 19:09:56

用到pt100部分效果非常好

ITOP 发表于 2013-12-4 21:20:15

标记,不错的说

wsm80828 发表于 2013-12-4 21:26:10

谢谢分享

1125526801 发表于 2013-12-5 22:05:15

学习。~~~~~~

am_shui9jing 发表于 2014-8-12 23:42:30

mark,多类热电阻计算程序

TNTHUAHUA 发表于 2014-8-15 12:45:49

一直用查表发,换这个试试

黑夜之狼 发表于 2014-9-30 14:54:24

感谢分享,刚准备做温控器,参考参考

jww 发表于 2014-12-22 09:58:10

总感觉 就PT100可行其他都不行啊

jww 发表于 2014-12-22 10:19:21

你好 你的 线性拟合公式 出了问题 就PT100 可以用请问你 是 如何拟合公式的呢C:\Users\wensnj\Desktop\A.png

jww 发表于 2014-12-22 10:20:06

再发一次 图片 楼主 你看下

jww 发表于 2015-1-26 09:59:01

liuhongyu 发表于 2012-9-28 14:12
CU50那一段不行......
会死循环。

请问 CU50 热电偶转化公示   你有吗   

zhangfuhg 发表于 2015-1-26 11:22:46

{:smile:}标记,学习了!

novelcrab 发表于 2015-3-11 14:13:43

热电偶,MARK

gxay2000 发表于 2016-4-3 16:40:48

学习学习{:smile:}{:smile:}

Ideal-007 发表于 2016-4-4 10:52:04

学习一吧,谢谢

chengying 发表于 2018-5-24 10:16:05

不错,谢谢                        

xjtyOnly51 发表于 2018-7-9 12:08:00

正好在用pt100, mark

lijianxing 发表于 2020-5-4 08:52:01

正需要的资料,谢谢楼主提供分享

Billion 发表于 2020-5-7 14:13:56

谢谢分享,收藏了!

Feco 发表于 2020-5-7 23:04:19

谢谢分享!                     

limaotaizi 发表于 2020-8-31 13:11:05

谢谢分享!PT100转换

ycwjl728 发表于 2022-9-11 15:08:40

谢谢分享!PT100转换
页: [1]
查看完整版本: 热电阻PT10 PT100 Cu50 Cu100电阻转温度程序