顾名思义,电容仪是一种用于测量的设备电容电容器。市场上有许多电容计,但是我们在该项目中建立了一个Arduino电容仪表。
电容器是一种存储电荷的电气设备,并且这种能力的能力电容器存放电荷被称为其电容。借助电容仪表,我们可以测量电容器的充电速率,并基于此,我们可以获得电容器的电容。
简单的数字多项式(DMM)无法测量电容,为了找到电容,您要么需要使用高级,昂贵的DMM,要么找到专用的电容模块。
专用的电容仪通常具有不同参数的广泛测量,例如电容,电感,电阻,晶体管的HFE等。
在这个项目中,我们将尝试为两个不同的电容范围构建一个简单的Arduino电容仪表。一个电路将用于测量1 µF至4700 µF范围内的电容。另一个电路将用于测量较小的电容,即20 pf至1000 nf的范围。
警告:如果要测量旧电路或板的电容,请小心作为工作条件的电容器,即使卸下电源,也可能会存储充电。触摸电容器之前,请正确放电。
范围为1 µF至4700 µF的电容仪表
电路原理图
需要组件
工作原则
为了测量1 µF至4700 µF范围的电容,我们必须使用上述电路。在解释项目的工作之前,我们将首先看到这种电容测量方法背后的原理。
该电容仪表背后的原理在于电容器的基本属性之一:时间常数。时间常数(用希腊字母tau - τ表示)定义为通过电阻(r)为电容器(c)充电的时间达到最大电源电压的63.2%。
另外,电容器的时间常数(τ)也可以定义为充满电的电容器C所花费的时间以通过电阻R排放到其最大电压的36.8%。
较小的电容器将花费更少的时间来充电。同样,较大的电容器将具有较高的时间常数。
数学上,时间常数tc或τ= r x c(τ= rc)。
在这里,τ或TC是电容器在秒(s)中的时间常数,C是Farads(F)中电容器的电容,R是欧姆(ω)中电阻器的电阻。
以下电路和图将向您显示电容器C的时间常数曲线,并通过电阻R。
我们在基于Arduino的电容计中使用相同的概念。我们将使用Arduino引脚通过已知的电阻为未知电容器充电,并计算达到供应电压63.2%(约3.1 V)所需的时间。根据时间,我们可以从公式C =τ / R中计算电容。
我们将使用10kΩ电阻给电容器充电,并使用220Ω电阻将其放电。Arduino上的电荷和排放销分别为8和9。使用模拟输入引脚A0测量电容器上的电压。
最初,我们将使用引脚9(通过将其设置为输出和低)排放电容器,以确保电容器无电。然后,我们将使用电荷PIN8(通过将其设置为输出和高)来启动计时器和电荷电容器。
现在,我们必须在模拟引脚处监视电容器上的电压,一旦达到5V的63.2%(大约648个模拟引脚),我们必须停止计时器并计算电容。
该电路适用于相对较高的电容值,因为我们可以清楚地测量时间常数。对于较小的电容值,该电路可能不合适。
代码
范围20 pf至1000 nf的电容仪表
电路原理图
需要组件
- Arduino Uno
- 16 x 2 LCD显示
- 10kΩ电位器
- 测试电容器
- 连接电线
- 面包板
- 电源
工作原则
为了测量较小的电容,我们将使用不同的概念。为此,我们需要了解Atmega328p的内部结构。
ATMEGA328P微控制器中的所有I/O端口都具有内部拉动 - 向上电阻器和销钉和接地之间的内部电容器。下图显示了ATMEGA328P微控制器的I/O引脚的部分内部电路。
我们将在此电路中使用内部拉动 - 向上电阻器和流浪电容器。忽略上面电路中的二极管,可以按以下方式重新绘制我们的项目电路。
在这里,CT是正在测试的电容器,CI是内部电容器。我们不必担心内部电容器,其值可以在20 pf至30 pf之间。未知的电容器在A2和A0之间连接(如果是偏振电容器,则呈正导向A0)。在这里,A2充当充电引脚和A0充当放电引脚。
最初,我们将通过将A2设置为高并测量以下公式在A0处的电压来为未知电容器充电。
VA0 =(VA2 X CT)/(CT+CI)
但是我们已经在模拟读取功能的帮助下知道A0的电压。因此,在上述方程式中使用该值,我们可以得到未知的电容,如下所示。
CT =(CI X VA0)/(VA2-VA0)
代码
优点
- 这是一个简单的基于Arduino的电容仪表,具有较少的硬件要求。
- 该项目可用于测量20 pf至4700 µf范围内的任何电容。
缺点
- 结果可能不准确。
- 为了获得准确的结果,建议使用可以测量电容的DMM。
申请
- 电容仪可用于测量未知电容器的电容。
- 将Arduino用于电容仪表可以轻松实施该项目,并且通过轻微的修改,可以为各种电容器制作电路。
构造和产出
建议阅读:
4个回应
您好Anusha Mam……IM MONIKA,我们正在寻找您的项目,即餐厅菜单订购系统。对于我们需要您的帮助,因此我可以在需要的情况下获得联系。
我认为起初是一个错误的是,放电的针头被设置为输入。
PINMODE(放电,输入);
PINMODE(电荷,输出);
但是我认为这是为了使电动销量高并为盖子充电时不会将排放销高高或低。
然后以后的模式开关,以便输出放电针并输入电荷针状,以免影响放电。
我认为,在“ 20 pf至1000 nf范围的电容仪表”中,您不小心显示了错误的图片。
但是尽管如此,很棒的项目!
这些值不稳定,这可能是由于传感器/可变电容器传感器中的Analogread()噪声。那么,您可以为此提供解决方案吗?