久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5739|回復(fù): 26
打印 上一主題 下一主題
收起左側(cè)

Steinhart-hart方程ntc熱敏電阻測溫電阻計算公式

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:333877 發(fā)表于 2022-6-8 18:05 來自觸屏版 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
50黑幣
這是一段使用Steinhart-hart方程做ntc測溫的代碼。這個函數(shù)只需要ntc100度和ntc0度的固定值和一個現(xiàn)場測得的ad值就可以測出溫度,其中是怎么利用ad值計算出當(dāng)前溫度的電阻值的,有沒有大佬可以解答一下呢?
/*************************************************
函數(shù)名稱:  NTC30K_function
函數(shù)功能:  NTC30K計算函數(shù)
函數(shù)形參:  
            advalue:adc值
            advalue_NT0:校正的0度ADC
            advalue_NT100:校正的100度ADC
            advalue_NTShort:校正的偏移ADC,NTC短路值
函數(shù)返回值:溫度值
*************************************************/
FP32 NTC30K_function(FP32 advalue,FP32 advalue_NT0,FP32 advalue_NT100,FP32 advalue_NTShort)
{
  FP32 REF,VREF,Rt,LNR;
  REF=94980*2069*(advalue_NT0-advalue_NT100);
  REF=REF/(94980*(advalue_NT100-advalue_NTShort)-2069*(advalue_NT0-advalue_NTShort));
  VREF=(advalue_NT100-advalue_NTShort)*((2069+REF)/2069);
  advalue=advalue-advalue_NTShort;
  Rt=(advalue*REF)/(VREF-advalue);
  LNR=log(Rt);
  Rt=(1/(0.00093494+(0.0002211*LNR)+(0.0000001275*LNR*LNR*LNR)))-273.15;
  return(Rt);
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:333877 發(fā)表于 2022-6-8 18:07 來自觸屏版 | 只看該作者
/*************************************************
函數(shù)名稱:  NTC30K_function
函數(shù)功能:  NTC30K計算函數(shù)
函數(shù)形參:  
            advalue:adc值
            advalue_NT0:校正的0度ADC
            advalue_NT100:校正的100度ADC
            advalue_NTShort:校正的偏移ADC
函數(shù)返回值:溫度值
*************************************************/
FP32 NTC30K_function(FP32 advalue,FP32 advalue_NT0,FP32 advalue_NT100,FP32 advalue_NTShort)
{
  FP32 REF,VREF,Rt,LNR;
  REF=94980*2069*(advalue_NT0-advalue_NT100);
  REF=REF/(94980*(advalue_NT100-advalue_NTShort)-2069*(advalue_NT0-advalue_NTShort));
  VREF=(advalue_NT100-advalue_NTShort)*((2069+REF)/2069);
  advalue=advalue-advalue_NTShort;
  Rt=(advalue*REF)/(VREF-advalue);
  LNR=log(Rt);
  Rt=(1/(0.00093494+(0.0002211*LNR)+(0.0000001275*LNR*LNR*LNR)))-273.15;
  return(Rt);
}
回復(fù)

使用道具 舉報

板凳
ID:329625 發(fā)表于 2022-6-8 18:45 | 只看該作者
中間那一段代碼就是對采集到的數(shù)據(jù)的轉(zhuǎn)換,那就是計算的啊,你寫成公式的形式就比較清晰了
回復(fù)

使用道具 舉報

地板
ID:333877 發(fā)表于 2022-6-8 18:53 來自觸屏版 | 只看該作者
17337161031 發(fā)表于 2022-6-8 18:45
中間那一段代碼就是對采集到的數(shù)據(jù)的轉(zhuǎn)換,那就是計算的啊,你寫成公式的形式就比較清晰了

電阻值具體是怎么從3個ad量算出來的呢?
回復(fù)

使用道具 舉報

5#
ID:333877 發(fā)表于 2022-6-8 18:56 來自觸屏版 | 只看該作者
17337161031 發(fā)表于 2022-6-8 18:45
中間那一段代碼就是對采集到的數(shù)據(jù)的轉(zhuǎn)換,那就是計算的啊,你寫成公式的形式就比較清晰了

94980和2069是0度和100度對應(yīng)的阻值
回復(fù)

使用道具 舉報

6#
ID:883242 發(fā)表于 2022-6-8 18:57 | 只看該作者
你的問題跟硬件相關(guān),沒有電路圖我們也不會算命。
回復(fù)

使用道具 舉報

7#
ID:333877 發(fā)表于 2022-6-8 19:02 來自觸屏版 | 只看該作者
Hephaestus 發(fā)表于 2022-6-8 18:57
你的問題跟硬件相關(guān),沒有電路圖我們也不會算命。

這是電路

1_070158.png (49.48 KB, 下載次數(shù): 129)

1_070158.png

2_070200.png (32.67 KB, 下載次數(shù): 143)

2_070200.png
回復(fù)

使用道具 舉報

8#
ID:883242 發(fā)表于 2022-6-8 19:07 | 只看該作者

這電路圖畫的只能說一個字:服!連NTC在哪里都可以看不到。
回復(fù)

使用道具 舉報

9#
ID:333877 發(fā)表于 2022-6-8 19:09 來自觸屏版 | 只看該作者
Hephaestus 發(fā)表于 2022-6-8 19:07
這電路圖畫的只能說一個字:服!連NTC在哪里都可以看不到。

TP+是ntc
回復(fù)

使用道具 舉報

10#
ID:333877 發(fā)表于 2022-6-8 19:10 來自觸屏版 | 只看該作者
Hephaestus 發(fā)表于 2022-6-8 19:07
這電路圖畫的只能說一個字:服!連NTC在哪里都可以看不到。

tp+是ntc
回復(fù)

使用道具 舉報

11#
ID:213173 發(fā)表于 2022-6-8 20:40 | 只看該作者
樓主所述NTC熱敏電阻可能是PT100、PT1000等鉑電阻。普通NTC熱敏電阻幾乎不可能通過公式計算獲得較準(zhǔn)確溫度值。NTC熱敏電阻不同廠家產(chǎn)品溫阻曲線差異較大,同一廠家相同規(guī)格的產(chǎn)品電參數(shù)也有較大離散性。不適合用公式計算溫度值。除非對精度要求很低。
回復(fù)

使用道具 舉報

12#
ID:333877 發(fā)表于 2022-6-8 21:08 來自觸屏版 | 只看該作者
wulin 發(fā)表于 2022-6-8 20:40
樓主所述NTC熱敏電阻可能是PT100、PT1000等鉑電阻。普通NTC熱敏電阻幾乎不可能通過公式計算獲得較準(zhǔn)確溫度 ...

實際情況是ntc測溫的確用的公式計算的而且測溫精度還很高,具體參考Steinhart-hart方程
回復(fù)

使用道具 舉報

13#
ID:883242 發(fā)表于 2022-6-8 21:10 | 只看該作者
wulin 發(fā)表于 2022-6-8 20:40
樓主所述NTC熱敏電阻可能是PT100、PT1000等鉑電阻。普通NTC熱敏電阻幾乎不可能通過公式計算獲得較準(zhǔn)確溫度 ...

你看了代碼再來發(fā)言好不好?什么都不懂就上來胡說很沒有禮貌的。樓主明顯是個30k的NTC,B值未知。而且標(biāo)定了三個點,1)短路NTC測試放大以及ADC環(huán)節(jié)的誤差;2)0度時NTC的值;3)100度時NTC的值。
回復(fù)

使用道具 舉報

14#
ID:401564 發(fā)表于 2022-6-8 21:46 | 只看該作者
如果不是內(nèi)存實在不夠用,NTC用查表是常用也是最實在的
至于這個方程的原理,它是兩個老外一個叫Steinhart,一個叫Hart,合起來就是Steinhart-Hart,根據(jù)熱敏電阻的特性研究出來的
個人感覺原理什么的并不重要,你上網(wǎng)也不一定能查得到,會用就行
電子編程這一塊,那么多恐怖的公式,哪能個個都知道原理呀
回復(fù)

使用道具 舉報

15#
ID:333877 發(fā)表于 2022-6-8 22:19 來自觸屏版 | 只看該作者
Y_G_G 發(fā)表于 2022-6-8 21:46
如果不是內(nèi)存實在不夠用,NTC用查表是常用也是最實在的
至于這個方程的原理,它是兩個老外一個叫Steinhart, ...

知道原理才能改進(jìn)提高啊,這個利用三個點校準(zhǔn)也是為了提高測溫的精度,而且這樣測溫精度高反應(yīng)速度也快
回復(fù)

使用道具 舉報

16#
ID:883242 發(fā)表于 2022-6-8 22:21 | 只看該作者
Y_G_G 發(fā)表于 2022-6-8 21:46
如果不是內(nèi)存實在不夠用,NTC用查表是常用也是最實在的
至于這個方程的原理,它是兩個老外一個叫Steinhart, ...

你錯了,Steinhart-hart方程用這兩句就解決完了,完全沒有任何難度,不存在看不懂的地方。
  LNR=log(Rt);
  Rt=(1/(0.00093494+(0.0002211*LNR)+(0.0000001275*LNR*LNR*LNR)))-273.15;

樓主的問題是第一句的Rt是怎么來的,這個前面的代碼也太復(fù)雜了,要動手算算。
回復(fù)

使用道具 舉報

17#
ID:213173 發(fā)表于 2022-6-9 07:29 | 只看該作者
Hephaestus 發(fā)表于 2022-6-8 21:10
你看了代碼再來發(fā)言好不好?什么都不懂就上來胡說很沒有禮貌的。樓主明顯是個30k的NTC,B值未知。而且標(biāo) ...

樓主所列代碼確實沒看懂。只知道NTC是在25度條件下的標(biāo)稱精度,25~50度的標(biāo)稱B值。偏離標(biāo)準(zhǔn)溫度越多,精度和B值誤差越大。用固定公式計算,除非對NTC元件預(yù)選,否則很難批量生產(chǎn)。大佬如有自動糾偏的方法,還望分享。 中國NTC溫度傳感器150K B3950 ±1%.rar (28.31 KB, 下載次數(shù): 19)

回復(fù)

使用道具 舉報

18#
ID:372579 發(fā)表于 2022-6-9 08:39 | 只看該作者
溫度計算,Steinhart-Hart方程和B值法

使用Steinhart-Hart方程或者B值計算方法將熱敏電阻的電阻值轉(zhuǎn)換為溫度讀數(shù)。

  Steinhart-Hart方程計算法:

1/T = A + B*ln(R) + C*[ln(R)]

這里: T 為絕對溫度K(開爾文溫度),R 單位是歐姆

. 溫度系數(shù)B值計算法:

Rt = R(25℃)*exp[B*(1/T - 1/298.15)]

這里:T 為絕對溫度K(開爾文溫度 = 273.15),R(25℃) 是熱敏電阻在 25℃時的阻值 (單位為Ω),exp是e的n次方;

3. C語言實現(xiàn)的溫度計算公式

Tsteinhart = 1/(A+B*log(Rth)+C*pow(log(Rth),3))-273.15;

Tbeta = 1/(1/(273.15+25)+1/Beta*log(Rth/R25))-273.15;


  ln、log、lg在數(shù)學(xué)公式中和c語言中的區(qū)別:

參考:cplusplus的"<cmath> (math.h) - C++ Reference"這篇文章

數(shù)學(xué)中l(wèi)og是對數(shù)符號,右邊寫真數(shù)和底數(shù)(上面是真數(shù),下面是底數(shù))lg是以10為底數(shù)(例lg100=2)(lg為常用對數(shù))ln是以e為底數(shù)(lne2=2)(ln為自然對數(shù) e=2.718281828459045...)

  c語言里面只有兩個函數(shù)log和log10,其中函數(shù) log(x) 表示是以e為底的自然對數(shù),即 ln(x)函數(shù)。 log10(x) 以10為底的對數(shù),即 lg(x)。以其它數(shù)為底的對數(shù)用換底公式來表示:loga(b)=ln(b)/ln(a),C語言表示成log(b)/log(a)。
回復(fù)

使用道具 舉報

19#
ID:401564 發(fā)表于 2022-6-9 13:31 | 只看該作者
路明非. 發(fā)表于 2022-6-8 22:19
知道原理才能改進(jìn)提高啊,這個利用三個點校準(zhǔn)也是為了提高測溫的精度,而且這樣測溫精度高反應(yīng)速度也快

想要精度高就查表
回復(fù)

使用道具 舉報

20#
ID:276685 發(fā)表于 2022-6-10 12:39 | 只看該作者
Y_G_G 發(fā)表于 2022-6-9 13:31
想要精度高就查表

我認(rèn)為這個方程好像貝塞爾曲線通過控制點擬合的結(jié)果
回復(fù)

使用道具 舉報

21#
ID:333877 發(fā)表于 2022-7-13 21:48 來自觸屏版 | 只看該作者
公式的推導(dǎo)過程

ntc.jpg (403.62 KB, 下載次數(shù): 131)

ntc.jpg
回復(fù)

使用道具 舉報

22#
ID:509605 發(fā)表于 2022-7-15 23:17 | 只看該作者
剛好也在研究一個儀器的NTC測溫電路,界面顯示是一個電壓值多少mv,旁邊一個溫度值。能查到系統(tǒng)的a b c值,正在研究中,有什么進(jìn)展大家共同分享
回復(fù)

使用道具 舉報

23#
ID:170800 發(fā)表于 2024-1-20 16:17 | 只看該作者
本帖最后由 hui7279 于 2024-1-20 17:03 編輯

REF=94980*2069*(advalue_NT0-advalue_NT100);
//將ADC值轉(zhuǎn)換為校準(zhǔn)的ADC值
REF=REF/(94980*(advalue_NT100-advalue_NTShort)-2069*(advalue_NT0-advalue_NTShort));
//將ADC值轉(zhuǎn)換為硬件的實際電壓值
VREF=(advalue_NT100-advalue_NTShort)*((2069+REF)/2069);
//將ADC值電壓轉(zhuǎn)換基準(zhǔn)點,與硬件接高低位有關(guān)
advalue=advalue-advalue_NTShort;
//將電壓值轉(zhuǎn)換為電阻值
  Rt=(advalue*REF)/(VREF-advalue);
//據(jù)Steinhart-hart方程計算中間值ln(Rt)
  LNR=log(Rt);
//據(jù)Steinhart-hart方程計算溫度值,RT最后轉(zhuǎn)化為Tr,用同一個變量節(jié)約內(nèi)存
  Rt=(1/(0.00093494+(0.0002211*LNR)+(0.0000001275*LNR*LNR*LNR)))-273.15;
/******************************************
Steinhart-Hart方程計算法:
1/T = A + B*ln(R) + C*[ln(R)]^3
由于:T值在公式中是用熱力學(xué)溫度單位K,攝氏度就要減273.15;
此公式中:A=0.0009349, B=0.0002211, C =0.0000001275
ABC值與硬件NTC有關(guān),不同廠家的NTC表值需要用不同參數(shù);
---------------------------------------------------
ABC值的計算方法:
具體可以將要用到的三個關(guān)鍵溫度點值:T0、T1、T2、R0、R1、R2;
利用計算ln(R0)、ln(R1)、ln(R2);代入Steinhart-Hart方程(溫度值要+273.15)
得到三元一次方程組,可以用矩陣法解方程法,具體查常用C算法函數(shù);
也可用EXCEL的方法解三元一次方程組,具體可以百度
************************************************/
回復(fù)

使用道具 舉報

24#
ID:170800 發(fā)表于 2024-1-20 17:02 | 只看該作者
hui7279 發(fā)表于 2024-1-20 16:17
REF=94980*2069*(advalue_NT0-advalue_NT100);
//將ADC值轉(zhuǎn)換為校準(zhǔn)的ADC值
REF=REF/(94980*(advalue_N ...

//據(jù)Steinhart-hart方程計算溫度值,RT可能用Tr表達(dá)會更準(zhǔn)確:
//據(jù)Steinhart-hart方程計算溫度值,是最后Rt值已轉(zhuǎn)化為溫度值Tr,用同一個變量減少內(nèi)存消耗
回復(fù)

使用道具 舉報

25#
ID:420836 發(fā)表于 2024-1-21 08:55 | 只看該作者
這個問題的討論對于我理解NTC的計算很有幫助。 謝謝你!
回復(fù)

使用道具 舉報

26#
ID:384109 發(fā)表于 2024-1-22 11:02 | 只看該作者
其實既然使用了能計算對數(shù)的單片機,那么是不是直接查表就好了,畢竟廠家提供的數(shù)據(jù)表也只是整數(shù)溫度,那么計算出來的小數(shù)溫度又是否能代表精度呢
回復(fù)

使用道具 舉報

27#
ID:1129414 發(fā)表于 2024-8-12 16:19 | 只看該作者
直接查表就好了
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日本久久久一区二区三区 | 91精品国产91久久久久游泳池 | 国产中文字幕网 | 毛片国产 | 精品国产乱码久久久 | 一区二区三区欧美 | 欧美一级欧美一级在线播放 | 免费观看av网站 | 日韩视频在线一区 | 欧美一区永久视频免费观看 | www.4hu影院| 国产视频1区2区 | 欧美精品一区二区三区在线播放 | 性色av一区二区三区 | 欧美综合久久 | 日本精品久久 | 一区二区精品 | 国产精品久久久久久福利一牛影视 | 久久久久久国产 | 欧美综合一区二区 | 激情小说综合网 | 国产精品成人在线播放 | 91国内在线观看 | 亚洲欧美日韩成人在线 | 91视频在线| 国产中文字幕亚洲 | 精品国产一区二区三区免费 | 欧美激情综合 | 男人的天堂一级片 | 欧美综合一区 | 蜜臀91视频| 国产精品无码永久免费888 | 黄视频免费 | 中文字幕欧美一区二区 | 欧美在线a | 欧美11一13sex性hd | 毛色毛片免费看 | 欧美精品一区二区三区蜜臀 | 欧美久久精品 | 亚洲一二三区在线观看 | 日本中文字幕一区 |