你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

写了个python小程序,用来生成PT1000的温度表(RTD)

[复制链接]
watershade 发布时间:2019-1-15 20:55
本帖最后由 watershade 于 2019-1-15 21:24 编辑
) \& C7 s- Y8 D( [3 w4 i" F% ?) Y9 P% `7 j4 n, w1 x6 U2 Y: v
在用TE的一个高精度的温度传感器PT1000。RTD传感器又自己的查找表。但是pdf不方便用,如果直接在程序里面计算有点慢。另外可以用这张表做反向查表的运算。注意一个关键词: DIN EN 60751 / {7 p" k" t: T4 B+ Q
附件中分别是我写的python的程序用来生成一个包含数组的txt文件。你将数组复制到你的程序中就可以。
8 p1 l8 d2 `+ e2 j
. }: O3 y% @9 w% b8 i* L; ^. E尽管程序是PT1000的,但是如果需要PT100.你只用更改一下公式中的1000.0到100.0.在核对一下参数就可以了。
+ Q4 N3 ~2 r/ n顺便上传两张表格。
* M) y! w7 j3 t: j* Z# D PT1000.zip (1.08 KB, 下载次数: 100)
收藏 4 评论20 发布时间:2019-1-15 20:55

举报

20个回答
watershade 回答时间:2019-1-19 11:52:20
radio2radio 发表于 2019-1-18 18:14- U. P* K0 o# i6 q' P5 L! |
你的python程序,如果好用的话,就应该做到:
: k5 W7 Z: G3 c
' l: ~5 p' D! E! B0 p输入参数:

  c$ @0 ~  `7 l. V4 }! Q* |/ i* j兄弟。我当然知道怎么去写一个生成uint16_t或者uint8_t的表格。这不是很困难的事情。添加两行代码就可以。7 Q2 p& R5 q+ @' @2 f/ S( j
" ]) D; @9 Y- R: u) `
但是请自行了解一下RTD精密测量温度再说。 Vref实际上也是个变化的值,和你了解的多数应用不一致。所以是非线性的。尽管如此也仍然可以转化为部分线性化。是的,如果你真的需要uint16_t就是添加几行代码的问题。但这部分的代码我没有亮出来,因为这对大多数人是没用的。9 m0 u2 B9 T& K* b' f" e

) R8 s4 Q# I$ j$ ]/ e我这个小的python程序只是帮助你生成一个符合要求的表格。你不用去ppt上把所有数据取下来,手动填充这样一张表格。所以和表格数据是一致的。
6 B/ L$ Q$ D; D& A" i3 P' `& }+ N2 O9 A9 ?3 U* g% G
Anyway,谢谢你的建议
radio2radio 回答时间:2019-1-18 18:14:43
watershade 发表于 2019-1-18 17:20. z: J" x% b& p4 {! M
是这样的。这里的数值和ADC是不直接对应的。如果你稍微言就一下RTD。就知道完整范围并不是V_REF.所以我没 ...

. @1 W$ x* c0 l  A$ B你的python程序,如果好用的话,就应该做到:( ?3 o& c* q# Y% ?; ~  T
, Q4 N, Y1 t& F
输入参数:
0 ^/ n0 h4 Y5 t5 }1. PT1000,or PT100
- x1 S6 Y% O9 `3 j8 r, l, r2. 串联电阻的数值: N% ~+ S1 G# {7 p  G
4. ADC的位数,10,12 or 16
2 i# H+ D& n! q3. 测量的温度范围
6 M! s' }9 M2 K2 J6 M4. 精度要求,+/-0.05,+/-0.1,+/0.2) j5 e! R. [! i2 }* V
5. 分段要求,例如0.5度$ o7 _( u* U% D" F
$ \$ Y9 w) O) ]0 l) W: T1 [
输出的结果: 一组ADC的分段参数(整数)
2 g! d! v) T3 {8 ]; d                和 一组温度参数。(整数,例如,20000表示+100.00度,0表示-100.00度,偏移量10000)
7 S4 X, h. [) R$ m6 e$ s! U0 I# ^5 Y, I; s. D& R7 L
没有必要使用浮点数。4 J# q, B$ ?) b5 {) L
watershade 回答时间:2019-1-18 17:20:26
radio2radio 发表于 2019-1-18 09:49% A+ n/ W6 V. R) H. L) N
楼主,您的这个程序与附件中的pdf标准的表差不多,建议改成计算12位/16位ADC的数值对应温度数据表,这样用 ...
3 @; v* B; T4 k4 Q) Q" H" @% Q9 E
是这样的。这里的数值和ADC是不直接对应的。如果你稍微言就一下RTD。就知道完整范围并不是V_REF.所以我没有这样做。而是i做一个float的表格。(占用空间大,但比较准确。我上面提到高精度的RTD用来测量准确度到接近0.1摄氏度的误差。注意不是分辨率是精度。)
andey 回答时间:2019-1-15 22:00:09
提示: 作者被禁止或删除 内容自动屏蔽
orima 回答时间:2019-1-16 12:10:26
谢谢分享!!值得看看...
zccdyfw 回答时间:2019-1-16 13:38:30
Kevin_G 回答时间:2019-1-17 17:48:04
了解下
3111272 回答时间:2019-1-18 09:10:21
学习一下。
xiaoganggang 回答时间:2019-1-18 09:24:52
好看看
radio2radio 回答时间:2019-1-18 09:49:25
本帖最后由 radio2radio 于 2019-1-18 14:25 编辑 , ]1 l$ K/ a9 f+ I# E% a1 ]

9 q" j& f4 l, l, J1 b$ }楼主,您的这个程序与附件中的pdf标准的表差不多,建议改成计算12位/16位ADC的数值对应温度数据表,这样用起来更加直接。
! a# V" C7 k1 o; {; P再结合我之前的“通用线性插值程序”就完美了:% I6 \$ S$ E1 F5 s0 z) C  `
https://www.stmcu.org.cn/module/forum/thread-618342-1-1.html
0 ^) s7 r; a1 ]% V* y
0 o5 Q# p! H# S8 ?' D# G6 ^$ a
djk0125 回答时间:2019-1-24 17:16:37
那就研究一下!看能不能NTC用上,可以折腾一下吧!!!!
jingwang 回答时间:2019-1-25 08:36:52
高,非常好
thw-1130572 回答时间:2019-1-25 08:58:17
学习下
watershade 回答时间:2019-1-25 09:49:33
djk0125 发表于 2019-1-24 17:16" x3 @, ~5 ?" ^  I" R! a) T( k& W6 d
那就研究一下!看能不能NTC用上,可以折腾一下吧!!!!

: Y- }; P* K6 p3 g( N" ?# m没问题。但是RTD和NTC曲线不一样
( u, ?% z, Y6 s$ o
12下一页

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版