本文目录一览

1,DS18B20测温误差原因分析比实际温度高出23度

产品手册说是0.5度的误差,2-3度是不是太高了,看看程序读取有没有错,不行的话就扣除2度减小误差了。

DS18B20测温误差原因分析比实际温度高出23度

2,dht11与ds18b20哪个测温度更精确

18B20 的测温更准 。1.DHT11是一款有已校准数字信号输出的温湿度传感器。 精度湿度+-5%RH, 温度+-2℃,量程湿度20-90%RH, 温度0~50℃。。2.18B20测温范围 -55℃~+125℃,固有测温误差1℃。

dht11与ds18b20哪个测温度更精确

3,关于DS18b20的问题

你接数码管的时候用手摸一下,看温度是不是能正常显示逐渐升高,然后在找个温度低的地方,放冰箱里也行。看温度会不会渐渐降低。如果不正常一定是你的程序不对,或者18B20坏了。正常的话,那就是你的显示程序没调好。

关于DS18b20的问题

4,单片机的温度传感器DS18B20测出来的温度可靠么它测得的温度比我的酒

不一定准确,根据我们用水银温度计的监控结果对比来看,DS18B20测出来的温度往往有正负1度的误差。还与您把DS18B20放置的位置有关。如果您怀疑DS18B20测出来的温度不准,您可以用水银温度计作为标准,再在软件上做补偿,补偿后的温度一般可以控制在正负0.3度的误差范围内。

5,DS18B20会不会因内部发热而导致温度测量不准确

实际使用中,正常情况下没有发现因为芯片工作电流发热,导致温度测量不准确,至少没有明显察觉。但是曾经遇到受干拢后温度迅速上升的情况,如果不及时切断电源,18B20片刻就完蛋了。一般做好防干拢措施,很少出现这种现象。
你好!高房价你就会议纪要今天如有疑问,请追问。

6,ds18b20 精度

根据达拉斯芯片手册介绍,可以配置为9位,的温度显示,四种配置的分辨率分别为0.5℃,,出厂默认配置为12位,即最高精度。最低精度即是9位,小数位只有一位,所以才是0.5°C的精度,那么10位,11位,12位依此类推就是0.25℃,0.125℃和0.0625℃。 希望专业的回答得到你的肯定!谢谢~~~

7,单片机的温度传感器DS18B20测出来的温度可靠么它测得的温度比

不一定准确,根据我们用水银温度计的监控结果对比来看,DS18B20测出来的温度往往有正负1度的误差。还与您把DS18B20放置的位置有关。如果您怀疑DS18B20测出来的温度不准,您可以用水银温度计作为标准,再在软件上做补偿,补偿后的温度一般可以控制在正负0.3度的误差范围内。
DS18B20是经过标定的传感器,基本误差还是很小的。可以用体温计对比一下,体温计还是比较准确的。酒精温度计和指针温度计从原理上讲,都很难做到精确和线性。相比而言还是DS18B20比较准确。再看看别人怎么说的。

8,ds18b20误差问题

你好:导线有40米左右,单片机通信电平也就0~5V,经过这么长的距离电压一部分压降到了导线上,对通信影响肯定很大。我有两个建议:1.用无线通信。我就用NRF24L01做过DS18B20的无线温度测量。2.用RS485通信,试想,假如40米的导线会压降2v电压,那么5v电压过来就成了3v,如果改用232或485通信,那么这点压降就不算什么了,通信就没问题了。希望我的回答能帮助到你。
DS18B20是数字化的输出。对于温差的影响不大。有影响的是这么多的距离,你如何保证通讯是可靠的。多读几次。去掉有最大最小的数据。求个平均。应该可以再看看别人怎么说的。

9,低电压工作会不会造成DS18b20采集误码

ds18b20正常工作的工作电压是 3.0~5.5v。 ds18b20是常用的温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。 技术性能描述:1. 独特的单线接口方式,ds18b20在与微处理器连接时仅需要一条口线即可实现微处理器与ds18b20的双向通讯。2. 测温范围 -55℃~+125℃,固有测温误差(注意,不是分辨率,这里之前是错误的)1℃。3. 支持多点组网功能,多个ds18b20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。4. 工作电源: 3.0~5.5v/dc (可以数据线寄生电源)。5. 在使用中不需要任何外围元件。6. 测量结果以9~12位数字量方式串行传送。7. 不锈钢保护管直径 φ6。8. 适用于dn15~25, dn40~dn250各种介质工业管道和狭小空间设备测温。9. 标准安装螺纹 m10x1, m12x1.5, g1/2”任选。10. pvc电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。
要看具体参数。如果电压虽低,但在其正常范围内,就不会造成采集误码。如果电压低到临界点,因为DS18B20输出为数字信号,就是在一定时序内的多个0和1的组合的方波,当电压低至采集端临界点,有时候就无法识别出正确的0和1,这样就会造成误码。造成误码的原因,还有可能是连线过长,线间电容过大等原因,但究其根本,都是采集端无法正确识别出其0/1电平造成的。可以用示波器,或逻辑分析仪等工具,测试下18B20的输出点,以及采集口位置的波形,观察电平高低幅度是否符合采集要求?以及高低电平的上升、下降沿是否够陡峭?如果幅度过低,可以在其工作电压范围内适当提高电压。如果上升下降沿不够陡峭,可以更换连线,或缩短距离。

10,DS18B20究竟准不准

廉价元件是有这个问题,但是采用一定的矫正曲线,是可以大大提高准确度的.请搜"测量方法"有关文献
首先,如果你要使用12864液晶显示温度的话,请保证你本身的液晶显示程序没有问题,这个可以通过让他随便显示一个数据或字符得到验证。假设本省液晶显示程序没有问题,那十有八九的问题就出在ds18b20温度传感器的程序上,应该是你的ds18b20温度传感器本身就没有工作,也就是说你的f_temp一直就是默认的值0,因为温度传感器没有正常工作吗,所以程序中也就无法给f_temp重新赋值,在保证液晶程序正确的情况下,你可以这样,给你要显示的变量,比如这里的这个f_temp赋上一个值,看他还显0吗,显然,如果现在显示的是你赋给他的这个值,那问题就出在我说的这个地方,温度传感器没有工作。我估计十有八九是这样的原因。对于温度传感器,你首先要明白,对于这类单总线的器件,由于其本省外部结构简单,所以他是需要较为复杂的软件程序来进行弥补的。本身它对时序的要求比较严格,所以延时一定要尽量精确,请在这一方面进行详细的检查。对于每一次的ds18b20操作,基本都是一个复位、一个rom指令、一个ram指令这样的顺序。ds18b20前段时间我用过,不过现在算起也有一些时间了,有些东西也在忘,所以暂时对你的程序我也不能帮你进行详细的检查了。你自己试试看吧。有时间的话我就在帮你瞅瞅。 刚才简单看了一下,你ds18b20程序肯定是有问题。首先就是你复位函数里最后少一个延时,这个延时是要有的,不然ds18b20是不能正常工作的。 简单说明如下,先多定义一个延时函数,以后用着方便。 void delay1(uchar count) while(count>0) count--; } void dsreset(void)//初始化函数 ds=0; delay1(103); //延时804.473,符合480-960us之间 ds=1; delay1(4); //延时36.449us,符合15-60us之间 delay1(20); //延时164.494us,符合60-240us之间(这个你少了!) } 下面是读一位的函数,感觉也是延时有点问题,修改如下:(头文件多包涵一个#include <intrins.h>,这是定义下面调用的_nop_()函数用的头文件,该函数对于51系列12时钟单片机执行一次的时间为1us) bit tempreadbit(void)//读一位函数 bit dat; ds=0; _nop_(); ds=1; _nop_(); dat=ds; delay1(7); return(dat); } 下面是写一个字节的函数(我只是改成了我用的延时函数,如果你的延时效果和我定义是一样的,其实也没有必要改,但是一定保证延时的时间,即时序!两个i++执行下来是1us吗,我没试,一般延时一毫秒我都是习惯用_nop_()函数,是的话你不该也成) void tempwritebyte(uchar dat) uchar j; bit testb; for(j=1;j<=8;j++) dat=dat>>1; if(testb)// xie 1 _nop_(); ds=1; delay1(7); } else delay1(7); ds=1; _nop_(); } } } 上面这三个函数算是基础,一定要保证时序的准确性,先给你检查了这三个,你自己看看其他的地方还有没有需要是要改的。ds18b20就这样,你只要保证了时序,一般按照数据手册来写就差不多了。网上有很多现成的资料,在不理解的话你自己下下来看看。ds18b20的源程序网上一般很好找的。一定自己多看看数据手册,把一些最基本的搞清楚。最近事比较多,就不能给你细看了,就到这,祝你成功!

文章TAG:误差ds18b20误差多少  DS18B20测温误差原因分析比实际温度高出23度  
下一篇