×

毫欧表理论与项目开源

消耗积分:0 | 格式:zip | 大小:0.01 MB | 2023-02-01

李娓仑

分享资料个

描述

之前,我制作了一些关于使用分流电阻测量电流的教程。基本上,分流器是与负载串联的小已知电阻。通过测量电阻两端的电压降,我们可以找到电路中流动的电流值。所有的功劳都归功于欧姆定律:V=IR,通过了解其中的两个,我们可以找到第三个值。但精度和品质因数也取决于电阻。

 

我们无法使用简单的万用表测量 1 欧姆以下的电阻。这就是为什么需要精密毫欧表的原因。它可以测量从 0.001ohms 到 10ohms 的值。最后我们还会做一个PCB屏蔽罩,用于更好的项目原型。在这个项目中,我们使用了一个 0.96 英寸的小型 OLED 显示器。本文由JLCPCB为您带来——来自中国的领先 PCB 制造商。立即注册 JLCPCB 并获得 $54 新用户优惠券

基本理念:

我们将使用相同的欧姆定律来计算以毫欧为单位的电阻器。我们必须测量电阻,通过保持电流恒定并测量电压降最终给出未知电阻的值。

download_Q68xQZ4CgJ.png?auto=compress%2Cformat&w=740&h=555&fit=max
 

为了在这里提供恒流电源,我使用了 LM317 稳压器 ic,其参考电压为 1.25。您可以在数据表中看到该 IC 的恒流配置

所需组件:

mini_img_0105_g5zxKfG0EW.JPG?auto=compress%2Cformat&w=740&h=555&fit=max
 

1)Arduino 纳米

2) LM317

3)10欧姆电阻

4) JLCPCB的定制 PCB

5)电源

6) OLED显示屏

电路图:

屏幕使用 Arduino 的 4 线 I2C 接口,2 根线用于电源,2 根用于数据。Arduino Nano 需要驱动显示面板并进行欧姆定律计算。我们在LM317的调节和输出引脚之间使用了一个 10ohms 的电阻,它给出了 0.125 安培的电流限制。需要一个9v的电池为电路供电。

ice_screenshot_20220925-062644_EO3i3tdF6a.png?auto=compress%2Cformat&w=740&h=555&fit=max
 

通过将电流保持在 0.125 安培并测量未知电阻两端的压降。该值进入 Arduino 的 ADC,然后转换为电压并除以电流。通过这种方法我们可以测量小电阻值。

例子:

 

如果恒定电流 = 0.125 安培

电阻两端的电压降 = 1 伏特

那么 R= V/I = 1/0.125 = 8 欧姆,换算也适用于非常小的值也

PCB设计:

untitled_LSuA8SWz1x.png?auto=compress%2Cformat&w=740&h=555&fit=max
 

将原理图制作成 EasyEDA 后,我将电路转换为 PCB 并导出Gerber 文件。我制作了一个 Arduino 扩展板,以便在编程后可以插入组件并测量小电阻。

ice_screenshot_20220309-205311_B58vbZ4Sb9.png?auto=compress%2Cformat&w=740&h=555&fit=max
 

我正在使用JLCPCB 的 pcb 服务——中国领先的 PCB 制造商JLCPCB 从事该行业 15 年,5 块 2 层板的价格仅为 2 美元。您可以从 JLCPCB 网站探索更多服务,例如 3d 打印、Stencil、PCB 原型、PCBA 和 SMT 组装。立即注册 JLCPCB并免费获得价值 54 美元的新用户优惠券。

代码:

该程序使用一些通用库,这些库可在 Arduino IDE 工具菜单下的管理库部分获得。

#include 
#include 
#include 

#define OLED_RESET 1
Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);

void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  display.clearDisplay();
}
 
// the loop routine runs over and over again forever:
void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  
  // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
  float voltage = sensorValue * (5.0 / 1024.0);
 
  float Rx = voltage / 0.125;
 
  if (Rx > 36) {

display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(10,10);
display.print( " Out of Range ");
display.display();

  delay(1000);
}
  if (Rx < 35) {
    
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(10,10);
display.print(Rx);
display.setCursor(10,20);
display.print(" Ohm      ");
display.display();

  delay(1000);
}
}

示范:

 

完成所有连接后,我在面包板上进行了测试,电路运行良好。现在可以非常容易地更精确地测量分流器等小型电阻器。并且它也可以用于使用电阻测量来测量线长。我们很快就会推出类似的项目。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !