0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

构建一个数字电流表的方法

科技观察员 来源:homemade-circuits 作者:homemade-circuits 2023-07-27 11:39 次阅读

在这篇文章中,我们将使用 16 x 2 LCD 显示屏和 Arduino构建一个数字电流表。我们将了解使用分流电阻器测量电流的方法,并实现基于Arduino的设计。所提出的数字电流表可以以合理的精度测量0至2安培(绝对最大值)的电流。

电流表的工作原理

电流表有两种类型:模拟电流表和数字电流表,它们的工作原理彼此不同。但是,它们都有一个共同的概念:分流电阻器。

分流电阻器是在测量电流时在源极和负载之间放置电阻非常小的电阻器。

让我们看看模拟电流表的工作原理,然后更容易理解数字电流表。

模拟电流表的工作原理

电阻R非常低的分流电阻器,假设电阻器上连接某种模拟仪表,其偏转与通过模拟仪表的电压成正比。

现在让我们从左侧传递一些电流。i1是进入分流电阻R之前的电流,i2是经过分流电阻后的电流。

电流 i1 将大于 i2,因为它通过分流电阻器损失了一小部分电流。分流电阻器之间的电流差在V1和V2处产生非常小的电压。

电压量将由该模拟仪表测量。

分流电阻器两端产生的电压取决于两个因素:流过分流电阻器的电流和分流电阻器的值。

如果通过分流器的电流更大,则产生的电压会更高。如果分流器的值很高,则分流器上产生的电压更高。

分流电阻器必须非常小,并且必须具有更高的额定功率。

一个小值电阻器可确保负载获得足够的电流和电压以正常工作。

此外,分流电阻器必须具有更高的额定功率,以便在测量电流时能够承受更高的温度。通过分流器的电流越高,产生的热量就越多。

到现在为止,您已经了解了模拟仪表的工作原理。现在让我们继续数字设计。

到目前为止,我们知道如果有电流流动,电阻器将产生电压。图中V1和V2是点,我们将电压样本带到微控制器

计算电压-电流转换

现在让我们看看简单的数学,如何将产生的电压转换为电流。

欧姆定律:I = V/R

我们知道分流电阻R的值,它将输入到程序中。

分流电阻两端产生的电压为:

V = V1 – V2

V = V2 – V1(避免测量时出现负符号,负符号取决于电流方向)

所以我们可以简化等式,

I = (V1 – V2)/R 或

I = (V2 - V1)/R

上述等式之一将在代码中输入,我们可以找到电流并显示在LCD中。

现在让我们看看如何选择分流电阻值。

Arduino内置了10位模数转换器ADC)。它可以检测 0 至 5V 的 0 至 1024 步长或电压电平。

因此,该ADC的分辨率为每步5/1024 = 0.00488伏或4.88毫伏。

因此,4.88 毫伏/2 mA(电流表的最小分辨率)= 2.44 或 2.5 欧姆电阻。

我们可以并联使用四个 10 欧姆、2 瓦的电阻器来获得在原型中测试过的 2.5 欧姆。

那么,我们怎么能说建议的电流表的最大可测量范围是 2 安培。

ADC只能测量0至5 V,即。上述任何情况都会损坏微控制器中的ADC。

从测试的原型中,我们观察到,在V1点和V2点的两个模拟输入处;当电流测量值为X mA时,模拟电压读取X/2(在串行监视器中)。

例如,如果电流表读数为 500 mA,则串行监视器上的模拟值读取 250 步或电压电平。ADC可承受高达1024步或最大5
V,因此当电流表读数为2000 mA时,串行监视器的读数约为1000步,接近1024步。

任何高于 1024 电压电平的内容都会损坏 Arduino 中的 ADC。为了避免这种情况,在2000
mA之前,LCD上将提示一条警告消息,指出断开电路。

到现在为止,您已经了解了建议的电流表的工作原理。

现在让我们继续讨论构造细节。

示意图:

Arduino DC Digital Ammeter

建议的电路非常简单且对初学者友好。按照电路图构造。调整 10K 电位计以调整显示对比度。

您可以通过 USB 或带有 9 V 电池的 DC 插孔为 Arduino 供电。与使用一个 2.2 欧姆电阻器和 5-8 瓦电阻相比,四个 10
瓦电阻器将均匀散热。

当没有电流通过时,显示器可能会读取一些小的随机值,您可以忽略它,这可能是由于测量端子上的杂散电压。

注意:不要反转输入负载电源极性。

程序代码

//------------------Program Developed by R.GIRISH------------------//

#include 《LiquidCrystal.h》

#define input_1 A0

#define input_2 A1

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

int AnalogValue = 0;

int PeakVoltage = 0;

float AverageVoltage = 0;

float input_A0 = 0;

float input_A1 = 0;

float output = 0;

float Resolution = 0.00488;

unsigned long sample = 0;

int threshold = 1000;

void setup()

{

lcd.begin(16,2);

Serial.begin(9600);

}

void loop()

{

PeakVoltage = 0;

for(sample = 0; sample 《 5000; sample ++)

{

AnalogValue = analogRead(input_1);

if(PeakVoltage 《 AnalogValue)

{

PeakVoltage = AnalogValue;

}

else

{

delayMicroseconds(10);

}

}

input_A0 = PeakVoltage * Resolution;

PeakVoltage = 0;

for(sample = 0; sample 《 5000; sample ++)

{

AnalogValue = analogRead(input_2);

if(PeakVoltage 《 AnalogValue)

{

PeakVoltage = AnalogValue;

}

else

{

delayMicroseconds(10);

}

}

input_A1 = PeakVoltage * Resolution;

output = (input_A0 - input_A1) * 100;

output = output * 4;

while(analogRead(input_A0) 》= threshold)

{

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Reached Maximum”);

lcd.setCursor(0,1);

lcd.print(“Limit!!!”);

delay(1000);

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Disconnect now!!”);

delay(1000);

}

while(analogRead(input_A0) 》= threshold)

{

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Reached Maximum”);

lcd.setCursor(0,1);

lcd.print(“Limit!!!”);

delay(1000);

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Disconnect now!!”);

delay(1000);

}

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“DIGITAL AMMETER”);

lcd.setCursor(0,1);

lcd.print(output);

lcd.print(“ mA”);

Serial.print(“Volatge Level at A0 = ”);

Serial.println(analogRead(input_A0));

Serial.print(“Volatge Level at A1 = ”);

Serial.println(analogRead(input_A1));

Serial.println(“------------------------------”);

delay(1000);

}

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

    关注

    40

    文章

    6846

    浏览量

    132107
  • Arduino
    +关注

    关注

    188

    文章

    6468

    浏览量

    186951
  • LCD显示屏
    +关注

    关注

    1

    文章

    91

    浏览量

    13295
  • 数字电流表
    +关注

    关注

    0

    文章

    6

    浏览量

    7468
收藏 人收藏

    评论

    相关推荐

    请教大侠们这个数电流表怎么改成电压

    请教大侠们这个数电流表怎么改成电压
    发表于 10-06 19:53

    钳形电流表的原理及使用方法

    和变压器样。初级线圈就是穿过钳型铁芯的导线,相当于1匝的变压器的次线圈,这是升压变压器。二次线圈和测量用的电流表构成二次回路。当导线
    发表于 09-21 09:34

    【技术贴】数显电流表的使用方法

    电流表的使用方法后,仪表运行将更加稳定和可靠:1、数显电流表和液晶电流表的深度都比指针电流表大,安装单相
    发表于 01-27 16:43

    数字电流表的设计

    、计算技术、自动化技术的成果与精密电测量技术密切的结合在起,成为仪器、仪表领域中独立而完整的分支,数字电流表标志着电子仪器领域的
    发表于 08-06 06:22

    怎样去设计基于单片机的数字电流表

    串联,其显示的是电流数字电压是把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式,并加以显示的仪表。数字
    发表于 12-13 06:51

    ACS712数字电流表

    基于51单片机的数字电流表的硬件设计内附有程序,pcb电路图。
    发表于 01-05 17:06 163次下载

    电流表的使用方法_钳型电流表的使用方法及图解

     电流表是指用来测量交、直流电路中电流的仪表。在电路图中,电流表的符号为“圈A”。电流值以“安”或“A“为标准单位。本文主要介绍
    发表于 02-08 10:18 11.6w次阅读

    电流表是不是用电器_电流表是干什么用_如何选择电流表

    电流表是测定电流大小和方向的电工仪器,分直流电流表和交流电流表两种。常用的电流表是磁电式电流表
    的头像 发表于 02-08 10:52 2.5w次阅读
    <b class='flag-5'>电流表</b>是不是用电器_<b class='flag-5'>电流表</b>是干什么用_如何选择<b class='flag-5'>电流表</b>

    电流表内阻是多少_测电流表内阻的几种方法

    电流表是指用来测量交、直流电路中电流的仪表。在电路图中,电流表的符号为“圈A”。电流值以“安”或“A“为标准单位。本文主要介绍下关于
    的头像 发表于 02-08 11:34 10.1w次阅读

    电流表的好坏如何判断

    要判断电流表的好坏首先要知道电流表的工作原理:电流表是根据通电导体在磁场中受磁场力的作用而制成的。电流表内部有永磁体,在极间产生磁场,在磁
    的头像 发表于 10-07 10:11 3w次阅读
    <b class='flag-5'>电流表</b>的好坏如何判断

    钳形电流表的作用_钳形电流表读数

    本文首先阐述了钳形电流表的作用,其次介绍了钳形电流表测量电流方法,最后说明了钳形电流表的读数方法
    的头像 发表于 08-14 15:53 1.8w次阅读
    钳形<b class='flag-5'>电流表</b>的作用_钳形<b class='flag-5'>电流表</b>读数

    用JLCPCB制造数字电压/电流表

    用JLCPCB制造数字电压/电流表教程。
    发表于 04-11 14:45 0次下载

    简单的电流表

    电子发烧友网站提供《简单的电流表.zip》资料免费下载
    发表于 12-20 10:00 1次下载
    <b class='flag-5'>一</b><b class='flag-5'>个</b>简单的<b class='flag-5'>电流表</b>

    如何使用Arduino构建个数字电容电路?

    在这篇文章中,我们将使用Arduino构建个数字电容电路,该电路可以以合理的精度测量从1微法拉到4000微法拉的电容器的电容。
    的头像 发表于 07-27 11:49 1640次阅读
    如何使用Arduino<b class='flag-5'>构建</b><b class='flag-5'>一</b><b class='flag-5'>个数字</b>电容<b class='flag-5'>表</b>电路?

    电流表如何使用 电流表的使用方法及注意事项

    电流表种用来测量电路中电流强度的工具。它广泛应用于电工、电子、物理实验等领域。下面将详细介绍电流表的使用方法及注意事项。
    的头像 发表于 01-18 09:33 1.3w次阅读