gckulo 发表于 2019-2-26 13:21:28

自制多量程欧姆表

本帖最后由 gckulo 于 2019-2-26 13:23 编辑


欧姆表或万用表(欧姆档)是测量电阻的常用工具。而我们也只是把它作为一种消费的工具而已。进一步探究其原理,将其中的电学知识与ARDUINO编程结合,制作一个可以精确测量的多量程欧姆表。这是一次将科学、技术、工程与数学融合的过程,也是一个从消费者转变为生产者的有趣体验。
Step 1: 材料与软件

材料
纸盒   1个
arduino uno板   1个
舵机   1个
1000欧姆电阻    2个
杜邦线   若干
红色led灯    1个
绿色led灯    1个
直尺三角板    1套
圆规   1个
中性笔   1只

软件
mixly图形化编程软件

Step 2: 欧姆表原理

v为总电压,R1为已知电阻,Rx为电压表测得的阻值。根据欧姆定律,可求得待测电阻的阻值。自制的多量程欧姆表根据串联电路的欧姆定律制成。ARDUINO将电路中电压分配规律,转化为数字信号。通过数字的变化,反推出未知电阻的阻值。

Step 3: arduino电路连接示意图


可见,求得待测电阻的阻值,需要已知两个变量。一个是定值电阻,一个是电路的总电压。理论测量范围为0到无穷大。ARDUINO UNO可提供5V的电压。选择1KΩ定值电阻作为电路的已知电阻。ARDUINO UNO可以将电路中的0-5V电压转换成数字信号0-1023,且两者呈线性关系。如输入模拟信号管脚的电压为0V,转换之后的数字为0;模拟信号管脚电压为5V,转换之后的电压为1023。利用mixly图形化编程软件,可以实现两者转换以及结果显示。以上是实际电路示意图。红色导线一端接入ARDUINO UNO板5V管脚。另一端作为测量电阻的引脚;1KΩ电阻一端接地,另外一端连接黑色导线作为测量电阻的引脚,同时连接蓝色导线接入A0管脚。

Step 4: 编写程序
打开mixly软件,编辑程序,编译上传。打开串口监视器。R点和G连在一起,串口监视器显示0.00。R点和G点断开,电阻过大,串口监视器显示inf。R点与G点连接1000Ω电阻时,串口监视器显示1.00。

Step 5: 欧姆表加入刻度盘与指针
上述欧姆表测量的电阻值只能在电脑上显示。进一步改进,可利用舵机角度的变化表示阻值的大小,制成指针式多量程欧姆表。要解决的首要问题,是将测量到的电阻值转换成为舵机的角度。选择欧姆表的量程为0-10KΩ。舵机的旋转范围是0-180度,为了简化计算过程,舵机转动10度代表1 KΩ,转动5度代表最小刻度0.5 KΩ。现设置欧姆表量程为0-10 KΩ,因此舵机转动的最大角度为100度。使用直尺、半圆与圆规画出多量程欧姆表的刻度盘,在中央位置安装舵机与指针。舵机三根引脚分别接ARDUINO UNO电源管脚、接地端与A1管脚。

Step 6: 编写程序

Step 7: 测试与改进

经过测试,发现1 KΩ以上的电阻测量准确,但1 KΩ以下的电阻测量误差较大。并且舵机指针不具备复位功能。进一步改进多量程欧姆表,重新编写程序,设置多量程欧姆表的量程为0-1 KΩ与0-10 KΩ。当多量程欧姆表检测到电阻小于1 KΩ时,r值放大一百倍,显示到刻度盘上,同时绿灯亮,表示电阻小于1 KΩ;当检测到电阻大于1 KΩ时,r值放大10倍,显示到刻度盘上,同时红灯亮,表示电阻大于1 KΩ。没有检测到电阻值,舵机回复到初始位。

Step 8: 编写程序
Step 9: 最终作品自制多量程欧姆表的量程分别为0-1 KΩ与0-10KΩ。测量误差分别为±100Ω与±1000Ω。当待测电阻小于1KΩ时,红灯亮,指针转到相应位置;当待测电阻大于1KΩ时,绿灯亮,指针转到相应位置。
Step 10: 优化空间
如果想要进一步提高欧姆表的精度。可扩大舵机的最大旋转角度,同时缩小最小刻度对应的角度。如果想要扩大欧姆表的量程。可适当增加电路中定值电阻的阻值。

20060606 发表于 2020-8-9 05:42:46

为什么不用一个显示屏来显示电阻值

发表于 2022-4-18 13:54:21

为撒子拿电阻当指针?

发表于 2022-4-18 13:59:16

拿绣花针不香吗
页: [1]
查看完整版本: 自制多量程欧姆表