矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 6171|回复: 47

求一个万用表输入检测方案, 谢谢各路大神指点~~

[复制链接]
     
发表于 2019-9-19 14:41:04 | 显示全部楼层 |阅读模式
最近在尝试DIY万用表,基本的测量,档位切换都没有问题了。但如何进行输入检测的问题比较困扰我。
电阻档好办,输入悬空,电阻最大,直接切换到高阻档,接入了测量电阻后,就可以根据当前的电阻值自动切换到适合的档位。
电压档就比较麻烦,低压档阻抗非常高(G欧级别),输入悬空时,读数乱跳,根本没法判断是否悬空。高压档输入悬空/短接时也有几十uV级别的跳动,分不出来是没有输入还是输入短接了。本想实现高低压自动切换,输入悬空时跳到最高档位的。但现在只能做到量程自动切换,无法实现输入悬空自动切换到最高档位。
不知道一般的高位万用表怎么实现自动量程切换的?
如果增加额外的电路来检测,怎么做到尽量不影响原来的输入阻抗?

另外,昨天加了个测温电路,发现人体辐射对设备还是有很大影响的。人不在设备边时,温度读数27.2度,只要人靠近(30cm的距离)设备几秒,温度很快就开始上升,时间长了最高可以达到29度以上。设备本身的温飘大概在0.5ppm/度左右,这点影响足以产生1uV左右的读数变化了。一般的高位万用表是怎么解决这种问题的?软件上做温度补偿嘛?

评分

1

查看全部评分

     
发表于 2019-9-19 15:03:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-19 15:07:13 | 显示全部楼层
人艰不拆 发表于 2019-9-19 15:03
这么痛苦啊,把表给我,我替你承受这个痛苦

自己瞎整的,怕是您瞧不上眼啊
现在搞的只是个原型,如果以后真能做到可以见人的地步,我会把资料发出来让大家参考的
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 15:08:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-19 15:12:14 | 显示全部楼层
人艰不拆 发表于 2019-9-19 15:08
才注意是diy的啊,几位的表呢,估计大于4位

电压低压档分辨率可以达到6位以上,其它档位最多5位水平。精度我也不知道,没有基准只能瞎整,目测比我的4位半万用表强点吧。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 15:26:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-19 15:37:32 | 显示全部楼层
人艰不拆 发表于 2019-9-19 15:26
ad+单片机吗,什么基准呢?能不能发个图看看啊

ADC用的是ads1252,买的6块钱的拆机件,基准是AD586BR二手的,1块多一片,MCU是stm32f103cb,用的现成核心板9块钱。破烂便宜货大合集。

这是之前测试ADC部分的时候照的,后来又做了一些外围控制板和底板。以前没玩过这些东西,所以只好一部分一部分分开来搞。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 15:39:04 | 显示全部楼层
测温表灵敏度太好了。是好事啊。套个壳子做成恒温箱结构。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 15:47:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-19 15:59:34 | 显示全部楼层
lzm3339 发表于 2019-9-19 15:39
测温表灵敏度太好了。是好事啊。套个壳子做成恒温箱结构。

因为我打算做个便携式的表,恒温怕是不太好搞吧?但加个外壳,的确可以减少外部温度变化的影响。这个我之前测试过。

我现在测温度是用的MF52 100K NTC电阻。通过MCU的12位ADC用比例法,两个ADC通道并行测量,没想到灵敏度怪高的,温度恒定时,可以做到2位小数不跳动,但稍微有点风吹草动就能看到读数变化,反应时间小于0.5秒。走路带起的风都能引起温度波动。温度的变化也超出了我平常的认知。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-19 16:09:49 | 显示全部楼层
人艰不拆 发表于 2019-9-19 15:47
好像看过这个帖子,不错嘛

边学边折腾,比之前有些小的改动,对稳定性有较大的影响。现在的0点跳动可以保持在0.2uV左右,加屏蔽效果还要好些。速度再放慢点跳动可以减少到0.05uV以内。电压档的分辨率应该是足够了。可是加了外围电路以后就不太理想了。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 16:28:28 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 17:07:17 | 显示全部楼层
本帖最后由 Edward 于 2019-9-19 17:21 编辑
电压档就比较麻烦,低压档阻抗非常高(G欧级别),输入悬空时,读数乱跳,根本没法判断是否悬空。高压档输入悬空/短接时也有几十uV级别的跳动,分不出来是没有输入还是输入短接了。本想实现高低压自动切换,输入悬空时跳到最高档位的。但现在只能做到量程自动切换,无法实现输入悬空自动切换到最高档位。
不知道一般的高位万用表怎么实现自动量程切换的?
如果增加额外的电路来检测,怎么做到尽量不影响原来的输入阻抗?


1.一般的DMM就是自动量程切换,读数超量程了就跳到更高一个量程,低于一定数值(比如低于10%)就降低一个档位。

2.输入悬空,数值乱跳是高位DMM的正常表现。实际的时候,会跳到低输入阻抗的量程,比如20V档(10M阻抗),输入阻抗低了,读数归零,再跳回2V档(10G阻抗),如此反复,这是正常的。实际使用中,理论上不应该让DMM输入悬空,因为DMM就是要接到电路中测量的,你悬空是做什么呢?当然,悬空了也无所谓。

3.不知道你为什么要实现“输入悬空自动切换到最高档位”这个功能,这个功能是无意义的。如果你是担心输入高电压的的话,那说明电路设计上不成熟,成熟的DMM,在电压档,假如DCV最高300V量程,450Vpp最大输入电压,那么DCV的所有档位,都是可以承受450Vpp长期输入的,哪怕是超量程,也不会造成损坏。这个是硬件设计上考虑并保证的,而不是通过软件或者使用习惯实现的。

4.所以并不需要这样一个电路实现这个功能。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 17:11:37 | 显示全部楼层
万用表输入阻抗不宜太高,常见阻抗为1M欧,太大时感应严重没法用且没实际意义。
回复 支持 反对

使用道具 举报

     
发表于 2019-9-19 17:19:03 | 显示全部楼层
另外,昨天加了个测温电路,发现人体辐射对设备还是有很大影响的。人不在设备边时,温度读数27.2度,只要人靠近(30cm的距离)设备几秒,温度很快就开始上升,时间长了最高可以达到29度以上。设备本身的温飘大概在0.5ppm/度左右,这点影响足以产生1uV左右的读数变化了。一般的高位万用表是怎么解决这种问题的?软件上做温度补偿嘛?


1.首先不知道你测温测的是哪里的温度,传感器放在哪里。姑且认为是放在你DMM的PCB上。

2.如果DMM因为人靠近,就升高2度,这个其实也不比过于担心,因为你这个没有外壳,有了外壳会好很多,而且由于你这个东西体积小,受人体影响大也是正常的。

3.至于说温度引起的测量误差,这个只能通过硬件去保证,软件修正也是可以的,但是要考虑很多因素,比如温度均匀性的问题等等。另外,如果数据真实,你这个设备的温漂已经超越一般商品六位半DMM的水平了。商品六位半DMM的温漂也就在1ppm/℃左右,而且他们还是使用了0.5ppm/℃温漂的恒温基准。看你的硬件,AD586B的最大温漂是5ppm/℃,ADC也存在温漂,不知道你的电阻使用的什么电阻,看起来是贴片的应该温漂也不会太低,还有运放也是误差源,如果使用这样的硬件实现了0.5ppm/℃的整体温漂,我觉得结论还有待商榷。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2024-3-29 16:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表