电流表用于测量流经任何负载或设备的电流。在此Arduino电流表中,我们将说明有关使用欧姆定律进行电流测量的方法。我们在上学的时候学习的基础科学将得到很好的应用。
我们所有人都是欧姆定律众所周知的,它指出“ 导体的两个极或端子之间的电势差与流经同一导体的电流量 成正比”,为了成比例的常数,我们使用电阻,因此这里使用电阻出现了欧姆定律方程。
V =红外
- V =导体两端的电压,单位为伏特(v)。
- I =电流通过安培(A)中的导体。
- R =电阻比例常数,单位为欧姆(Ω)。
为了找到通过设备的电流,我们只需要重新排列以下等式,或者我们可以使用欧姆定律计算器进行计算。
我= V / R
因此,为了找出当前数据,我们需要一些数据:
- 电压
- 抵抗性
我们将与器件一起建立一个串联电阻。由于我们需要找到器件两端的电压降,因此我们需要在电压降之前和之后读取电压,这可能是因为无极性而导致的电阻值。
就像上图一样,我们必须找到流经电阻的两个电压。电阻两端的电压(V1-V2)之差为我们提供了跨电阻(R)的压降,我们将压降除以电阻值得到流过器件的电流(I)。这就是我们如何计算通过它的当前值的方法,让我们对其进行实际实现。
所需组件:
- Arduino Uno。
- 电阻22Ω。
- LCD 16x2。
- LED。
- 10K锅。
- 面包板。
- 万用表。
- 跨接电缆。
电路图和连接:
Arduino Ammeter项目的示意图 如下
示意图显示了Arduino Uno与LCD,电阻器和LED的连接。Arduino Uno是所有其他组件的电源。
Arduino具有模拟和数字引脚。传感器电路连接到模拟输入,从中我们可以得到电压值。LCD与数字引脚(7,8,9,10,11,12)连接。
LCD有16个引脚,前两个引脚(VSS,VDD)和后两个引脚(阳极,阴极)分别连接到gnd和5v。重置(RS)和启用(E)引脚连接到Arduino数字引脚7和8。数据引脚D4-D7连接到Arduino(9,10,11,12)的数字引脚。V0引脚连接到电位计的中间引脚。红色和黑色电线分别是5v和gnd。
电流感应电路:
该电流表电路由电阻和LED组成。电阻与LED串联,电流流过负载,由电阻确定压降。端子V1,V2将与Arduino的模拟输入连接。
在Arduino的ADC中,将电压转换为0到1023之间的10位分辨率数字。因此,我们需要使用编程将其隐藏在电压值中。在此之前,我们需要知道Arduino ADC可以检测到的最小电压,该值为4.88mV。我们将ADC的值乘以4.88mV,然后将实际电压输入ADC。在此处了解有关Arduino ADC的更多信息。
计算:
来自Arduino ADC的电压值范围是0-1023,参考电压范围是0-5v。
例如:
V1 = 710,V2 = 474,R =22Ω,两个电压之间的差为236。乘以0.00488,将其转换为电压,得到1.15v。因此,电压差为1.15v,通过将其除以22得到的电流值为0.005A。这里我们使用了低阻值的22ohm电阻作为电流传感器。这就是我们可以使用Arduino测量电流的方式。
Arduino代码:
本文结尾给出了基于arduino的电流表测量电流的完整代码。
Arduino编程与c编程几乎一样,首先我们声明头文件。头文件调用存储中的文件,就像进行计算一样,我通过使用 Analogread 函数获得电压值。
int voltage_value0 = AnalogRead(A0); int voltage_value1 = AnalogRead(A1);
声明了一个临时浮点变量以保持电压值,例如 浮点temp_val。 将该值乘以0.00488即可得出实际电压差,然后将其除以电阻器值即可得出电流。0.00488v是Arduino ADC可以检测到的最小电压。
int subraction_value =(电压值0-电压值1); 浮动temp_val =(subraction_value * 0.00488); float current_value =(temp_val / 22);
查看下面的完整演示视频,并检查Arduino数字电压表。