0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Arduino構(gòu)建一個(gè)數(shù)字電容表電路?

科技觀察員 ? 來(lái)源:homemade-circuits ? 作者:homemade-circuits ? 2023-07-27 11:49 ? 次閱讀

在這篇文章中,我們將使用Arduino構(gòu)建一個(gè)數(shù)字電容表電路,該電路可以以合理的精度測(cè)量從1微法拉到4000微法拉的電容器的電容。

當(dāng)寫(xiě)入電容器主體的值難以辨認(rèn)時(shí),我們測(cè)量電容器的值,或者在我們的電路中找到老化電容器的值,這些電容器遲早需要更換,并且還有其他幾個(gè)原因需要測(cè)量電容。

為了找到電容,我們可以使用數(shù)字萬(wàn)用表輕松測(cè)量,但并非所有萬(wàn)用表都具有電容測(cè)量功能,只有昂貴的萬(wàn)用表才具有此功能。

所以這是一個(gè)可以輕松構(gòu)建和使用的電路。

我們專(zhuān)注于從1微法拉到4000微法拉的較大值的電容器,這些電容器容易因老化而失去電容,特別是由液體電解質(zhì)組成的電解電容器。

在討論電路細(xì)節(jié)之前,讓我們看看如何使用Arduino測(cè)量電容。

大多數(shù)Arduino電容計(jì)依賴于RC時(shí)間常數(shù)屬性。那么什么是RC時(shí)間常數(shù)?

RC電路的時(shí)間常數(shù)可以定義為電容器達(dá)到充滿電的63.2%所需的時(shí)間。零伏是 0% 充電,100% 是電容器的全電壓充電。

電阻值(歐姆)與電容器值(法拉)的乘積給出了時(shí)間常數(shù)。

T = R x C

T 是時(shí)間常數(shù)

通過(guò)重新排列上述等式,我們得到:

C = T/R

C是未知電容值。

T是RC電路的時(shí)間常數(shù),為滿電荷電容器的63.2%。

R 是已知的電阻。

Arduino可以通過(guò)模擬引腳檢測(cè)電壓,并且可以在程序中手動(dòng)輸入已知的電阻值。

通過(guò)在程序中應(yīng)用公式C = T / R,我們可以找到未知電容值。

到現(xiàn)在為止,您已經(jīng)知道我們?nèi)绾握业轿粗娙莸闹盗恕?/p>

在這篇文章中,我提出了兩種電容計(jì),一種帶有LCD顯示屏,另一種使用串行監(jiān)視器。

如果您是此電容計(jì)的???,最好采用LCD顯示屏設(shè)計(jì),如果您不經(jīng)常使用,最好使用串行顯示器設(shè)計(jì),因?yàn)樗梢栽贚CD顯示屏上節(jié)省一些費(fèi)用。

現(xiàn)在讓我們繼續(xù)看電路圖。

基于串行監(jiān)視器的電容計(jì):

如您所見(jiàn),電路非常簡(jiǎn)單,只需幾個(gè)電阻即可找到未知電容。1K歐姆是已知的電阻值,220歐姆電阻用于在測(cè)量過(guò)程中對(duì)電容器放電。Arduino 感測(cè)引腳
A0 上的上升和減少電壓,該引腳連接在 1K 歐姆和 220 歐姆電阻器之間。如果您使用電解電容器等極化電容器,請(qǐng)注意極性。程序:

//-----------------Program developed by R.Girish------------------//

const int analogPin = A0;

const int chargePin = 7 ;

const int dischargePin = 6;

float resistorValue = 1000 // Value of known resistor in ohm

unsigned long startTime;

unsigned long elapsedTime;

float microFarads;

void setup()

{

Serial.begin(9600);

pinMode(chargePin, OUTPUT);

digitalWrite(chargePin, LOW);

}

void loop()

{

digitalWrite(chargePin, HIGH);

startTime = millis();

while(analogRead(analogPin) 《 648){}

elapsedTime = millis() - startTime;

microFarads = ((float)elapsedTime / resistorValue) * 1000;

if (microFarads 》 1)

{

Serial.print(“Value = ”);

Serial.print((long)microFarads);

Serial.println(“ microFarads”);

Serial.print(“Elapsed Time = ”);

Serial.print(elapsedTime);

Serial.println(“mS”);

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

}

else

{

Serial.println(“Please connect Capacitor!”);

delay(1000);

}

digitalWrite(chargePin, LOW);

pinMode(dischargePin, OUTPUT);

digitalWrite(dischargePin, LOW);

while(analogRead(analogPin) 》 0) {}

pinMode(dischargePin, INPUT);

}

//-----------------Program developed by R.Girish------------------//

將上面的代碼上傳到Arduino,完成硬件設(shè)置,最初不要連接電容器。打開(kāi)串行監(jiān)視器;它說(shuō)“請(qǐng)連接電容器”。

現(xiàn)在連接一個(gè)電容器,其電容將顯示如下圖所示。

它還顯示了達(dá)到電容器完全充電電壓的63.2%所需的時(shí)間,該時(shí)間顯示為經(jīng)過(guò)的時(shí)間。

使用Arduino的數(shù)字電容計(jì)

基于LCD的電容計(jì)的電路圖:

上面的示意圖是LCD顯示器和Arduino之間的連接。提供10K電位器,用于調(diào)整顯示器的對(duì)比度。其余的連接是不言自明的。

上述電路與基于串行監(jiān)視器的設(shè)計(jì)完全相同;您只需要連接LCD顯示器。

LCD電容計(jì)程序:

//-----------------Program developed by R.Girish------------------//

#include《LiquidCrystal.h》

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

const int analogPin = A0;

const int chargePin = 7 ;

const int dischargePin = 6;

float resistorValue = 1000; // Value of known resistor in ohm

unsigned long startTime;

unsigned long elapsedTime;

float microFarads;

void setup()

{

Serial.begin(9600);

lcd.begin(16,2);

pinMode(chargePin, OUTPUT);

digitalWrite(chargePin, LOW);

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“ CAPACITANCE”);

lcd.setCursor(0,1);

lcd.print(“ METER”);

delay(1000);

}

void loop()

{

digitalWrite(chargePin, HIGH);

startTime = millis();

while(analogRead(analogPin) 《 648){}

elapsedTime = millis() - startTime;

microFarads = ((float)elapsedTime / resistorValue) * 1000;

if (microFarads 》 1)

{

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Value = ”);

lcd.print((long)microFarads);

lcd.print(“ uF”);

lcd.setCursor(0,1);

lcd.print(“Elapsed:”);

lcd.print(elapsedTime);

lcd.print(“ mS”);

delay(100);

}

else

{

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Please connect”);

lcd.setCursor(0,1);

lcd.print(“capacitor ?。?!”);

delay(500);

}

digitalWrite(chargePin, LOW);

pinMode(dischargePin, OUTPUT);

digitalWrite(dischargePin, LOW);

while(analogRead(analogPin) 》 0) {}

pinMode(dischargePin, INPUT);

}

//-----------------Program developed by R.Girish------------------//

完成硬件設(shè)置后,上傳上述代碼。最初不要連接電容器。顯示屏顯示“請(qǐng)連接電容器?。 爆F(xiàn)在您連接電容器。顯示屏將顯示電容器的值和達(dá)到充滿電電容器的
63.2% 所花費(fèi)的時(shí)間。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電容
    +關(guān)注

    關(guān)注

    99

    文章

    5960

    瀏覽量

    149819
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6458

    瀏覽量

    186504
  • 數(shù)字電容表
    +關(guān)注

    關(guān)注

    1

    文章

    9

    瀏覽量

    9516
  • 電容電路
    +關(guān)注

    關(guān)注

    1

    文章

    11

    瀏覽量

    3098
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    用IR傳感器和Arduino制作個(gè)數(shù)字轉(zhuǎn)速計(jì)(附代碼)

    本項(xiàng)目采用IR傳感器和Arduino開(kāi)發(fā)板制作了個(gè)數(shù)字轉(zhuǎn)速計(jì),以RPM為單位測(cè)量馬達(dá)的轉(zhuǎn)數(shù)。項(xiàng)目黑簡(jiǎn)單,只需將IR傳感器和Arduino板子與16*2 LCD連接即可。
    的頭像 發(fā)表于 08-25 09:55 ?3543次閱讀
    用IR傳感器和<b class='flag-5'>Arduino</b>制作<b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>轉(zhuǎn)速計(jì)(附代碼)

    使用Arduino構(gòu)建個(gè)數(shù)字羅盤(pán)

    Arduino 起使用。將學(xué)到以下幾點(diǎn):使用 Arduino 創(chuàng)建數(shù)字指南針;HMC5883L傳感器的操作;使用 Arduino 創(chuàng)建
    發(fā)表于 08-25 06:11

    怎樣設(shè)計(jì)個(gè)數(shù)字電壓電路?

      設(shè)計(jì)個(gè)數(shù)字電壓電路需要考慮以下幾個(gè)方面:  電壓輸入:需要有個(gè)電壓輸入端口,可以是模
    發(fā)表于 04-14 14:29

    怎么設(shè)計(jì)個(gè)數(shù)字電壓電路

      設(shè)計(jì)個(gè)數(shù)字電壓電路需要考慮以下幾個(gè)方面:  電壓輸入:需要有個(gè)電壓輸入端口,可以是模
    發(fā)表于 04-19 11:42

    采用AT89C52設(shè)計(jì)個(gè)數(shù)字萬(wàn)用

    本設(shè)計(jì)采用AT89C52為主控芯片配以振蕩電路設(shè)計(jì)設(shè)計(jì)了個(gè)數(shù)字萬(wàn)用,可用于測(cè)量直流電壓,直流電流,電阻和電容,并配以檔位轉(zhuǎn)換。本系統(tǒng)使用
    發(fā)表于 09-20 07:59

    labview顯示個(gè)數(shù)字信號(hào)的步驟

      用digital waveform graph 顯示個(gè)數(shù)字信號(hào)的步驟 1.采集個(gè)數(shù)字信號(hào)。 2.構(gòu)建
    發(fā)表于 08-02 12:38 ?3081次閱讀

    個(gè)數(shù)字輸出和個(gè)數(shù)字輸入來(lái)讀取溫度

    個(gè)數(shù)字輸出和個(gè)數(shù)字輸入來(lái)讀取溫度
    發(fā)表于 06-08 20:59 ?452次閱讀
    用<b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>輸出和<b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>輸入來(lái)讀取溫度

    使用LabVIEW數(shù)字波形圖顯示個(gè)數(shù)字信號(hào)的步驟詳細(xì)說(shuō)明

    用digital waveform graph 顯示個(gè)數(shù)字信號(hào)的步驟1.采集個(gè)數(shù)字信號(hào)。2.構(gòu)建
    發(fā)表于 12-05 14:59 ?40次下載
    使用LabVIEW<b class='flag-5'>數(shù)字</b>波形圖顯示<b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>信號(hào)的步驟詳細(xì)說(shuō)明

    個(gè)數(shù)字轉(zhuǎn)速電路

    這是個(gè)數(shù)字轉(zhuǎn)速電路圖,可用于帶有任意數(shù)量氣缸和接觸斷路器或電子點(diǎn)火系統(tǒng)的 2 沖程和 4 沖程汽油發(fā)動(dòng)機(jī)的汽車(chē)或摩托車(chē)??捎米魍ㄓ棉D(zhuǎn)數(shù)計(jì)數(shù)器。
    的頭像 發(fā)表于 06-23 16:31 ?2842次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>轉(zhuǎn)速<b class='flag-5'>表</b>的<b class='flag-5'>電路</b>圖

    如何構(gòu)建個(gè)數(shù)字控制器

    在本文中,我們構(gòu)建個(gè)數(shù)字控制器,允許用戶控制電機(jī)速度和運(yùn)行時(shí)間等功能。本文還包括個(gè)支持 NEC 協(xié)議的紅外接收器
    發(fā)表于 07-07 17:08 ?1154次閱讀
    如何<b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>控制器

    如何使用MPU6050和Arduino構(gòu)建個(gè)數(shù)字量角器

    MPU6050是款 集成 了 IC 3 軸加速度計(jì)和 3 軸陀螺儀的 單元。它還包含個(gè)溫度傳感器和個(gè) DCM 來(lái)執(zhí)行復(fù)雜的任務(wù)。MPU
    發(fā)表于 08-31 15:42 ?5414次閱讀
    如何使用MPU6050和<b class='flag-5'>Arduino</b><b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>量角器

    Arduino電容構(gòu)建

    電子發(fā)燒友網(wǎng)站提供《Arduino電容構(gòu)建.zip》資料免費(fèi)下載
    發(fā)表于 11-14 11:04 ?0次下載
    <b class='flag-5'>Arduino</b><b class='flag-5'>電容</b><b class='flag-5'>表</b><b class='flag-5'>構(gòu)建</b>

    如何采用ICL7107構(gòu)建個(gè)數(shù)字電壓

    在這個(gè)項(xiàng)目中,我們將在**不使用任何微控制器的情況下構(gòu)建個(gè)數(shù)字電壓。 **在這里,我們使用種非常流行的 IC進(jìn)行電壓測(cè)量,即ICL71
    的頭像 發(fā)表于 01-25 16:01 ?4012次閱讀
    如何采用ICL7107<b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>電壓<b class='flag-5'>表</b>

    如何使用Arduino和LCD顯示屏構(gòu)建個(gè)數(shù)字水流量計(jì)?

    在這篇文章中,我們將使用 Arduino 和 16 x 2 LCD顯示屏構(gòu)建個(gè)數(shù)字水流量計(jì)。我們將看看YF-S201水流量傳感器,其結(jié)構(gòu)和工作原理以及如何與
    的頭像 發(fā)表于 07-27 10:44 ?1704次閱讀
    如何使用<b class='flag-5'>Arduino</b>和LCD顯示屏<b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>水流量計(jì)?

    構(gòu)建個(gè)數(shù)字電流的方法

    在這篇文章中,我們將使用 16 x 2 LCD顯示屏和 Arduino構(gòu)建個(gè)數(shù)字電流。我們將了解使用分流電阻器測(cè)量電流的方法,并實(shí)現(xiàn)基于
    的頭像 發(fā)表于 07-27 11:39 ?1391次閱讀
    <b class='flag-5'>構(gòu)建</b><b class='flag-5'>一</b><b class='flag-5'>個(gè)數(shù)字</b>電流<b class='flag-5'>表</b>的方法