精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用Arduino構建一個數字電容表電路?

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

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

當寫入電容器主體的值難以辨認時,我們測量電容器的值,或者在我們的電路中找到老化電容器的值,這些電容器遲早需要更換,并且還有其他幾個原因需要測量電容。

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

所以這是一個可以輕松構建和使用的電路。

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

在討論電路細節之前,讓我們看看如何使用Arduino測量電容。

大多數Arduino電容計依賴于RC時間常數屬性。那么什么是RC時間常數?

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

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

T = R x C

T 是時間常數

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

C = T/R

C是未知電容值。

T是RC電路的時間常數,為滿電荷電容器的63.2%。

R 是已知的電阻。

Arduino可以通過模擬引腳檢測電壓,并且可以在程序中手動輸入已知的電阻值。

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

到現在為止,您已經知道我們如何找到未知電容的值了。

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

如果您是此電容計的常客,最好采用LCD顯示屏設計,如果您不經常使用,最好使用串行顯示器設計,因為它可以在LCD顯示屏上節省一些費用。

現在讓我們繼續看電路圖。

基于串行監視器的電容計:

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

//-----------------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,完成硬件設置,最初不要連接電容器。打開串行監視器;它說“請連接電容器”。

現在連接一個電容器,其電容將顯示如下圖所示。

它還顯示了達到電容器完全充電電壓的63.2%所需的時間,該時間顯示為經過的時間。

使用Arduino的數字電容計

基于LCD的電容計的電路圖:

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

上述電路與基于串行監視器的設計完全相同;您只需要連接LCD顯示器。

LCD電容計程序:

//-----------------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------------------//

完成硬件設置后,上傳上述代碼。最初不要連接電容器。顯示屏顯示“請連接電容器!!”現在您連接電容器。顯示屏將顯示電容器的值和達到充滿電電容器的
63.2% 所花費的時間。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電容
    +關注

    關注

    99

    文章

    5874

    瀏覽量

    149056
  • Arduino
    +關注

    關注

    187

    文章

    6453

    瀏覽量

    185948
  • 數字電容表
    +關注

    關注

    1

    文章

    9

    瀏覽量

    9508
  • 電容電路
    +關注

    關注

    1

    文章

    11

    瀏覽量

    3094
收藏 人收藏

    評論

    相關推薦

    用IR傳感器和Arduino制作個數字轉速計(附代碼)

    本項目采用IR傳感器和Arduino開發板制作了個數字轉速計,以RPM為單位測量馬達的轉數。項目黑簡單,只需將IR傳感器和Arduino板子與16*2 LCD連接即可。
    的頭像 發表于 08-25 09:55 ?3449次閱讀
    用IR傳感器和<b class='flag-5'>Arduino</b>制作<b class='flag-5'>一</b><b class='flag-5'>個數字</b>轉速計(附代碼)

    使用Arduino構建個數字羅盤

    Arduino 起使用。將學到以下幾點:使用 Arduino 創建數字指南針;HMC5883L傳感器的操作;使用 Arduino 創建
    發表于 08-25 06:11

    怎樣設計個數字電壓電路

      設計個數字電壓電路需要考慮以下幾個方面:  電壓輸入:需要有電壓輸入端口,可以是模
    發表于 04-14 14:29

    怎么設計個數字電壓電路

      設計個數字電壓電路需要考慮以下幾個方面:  電壓輸入:需要有電壓輸入端口,可以是模
    發表于 04-19 11:42

    采用AT89C52設計個數字萬用

    本設計采用AT89C52為主控芯片配以振蕩電路設計設計了個數字萬用,可用于測量直流電壓,直流電流,電阻和電容,并配以檔位轉換。本系統使用
    發表于 09-20 07:59

    labview顯示個數字信號的步驟

      用digital waveform graph 顯示個數字信號的步驟 1.采集個數字信號。 2.構建
    發表于 08-02 12:38 ?3062次閱讀

    個數字輸出和個數字輸入來讀取溫度

    個數字輸出和個數字輸入來讀取溫度
    發表于 06-08 20:59 ?428次閱讀
    用<b class='flag-5'>一</b><b class='flag-5'>個數字</b>輸出和<b class='flag-5'>一</b><b class='flag-5'>個數字</b>輸入來讀取溫度

    使用LabVIEW數字波形圖顯示個數字信號的步驟詳細說明

    用digital waveform graph 顯示個數字信號的步驟1.采集個數字信號。2.構建
    發表于 12-05 14:59 ?40次下載
    使用LabVIEW<b class='flag-5'>數字</b>波形圖顯示<b class='flag-5'>一</b><b class='flag-5'>個數字</b>信號的步驟詳細說明

    個數字轉速電路

    這是個數字轉速電路圖,可用于帶有任意數量氣缸和接觸斷路器或電子點火系統的 2 沖程和 4 沖程汽油發動機的汽車或摩托車。可用作通用轉數計數器。
    的頭像 發表于 06-23 16:31 ?2675次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個數字</b>轉速<b class='flag-5'>表</b>的<b class='flag-5'>電路</b>圖

    如何構建個數字控制器

    在本文中,我們構建個數字控制器,允許用戶控制電機速度和運行時間等功能。本文還包括支持 NEC 協議的紅外接收器
    發表于 07-07 17:08 ?1101次閱讀
    如何<b class='flag-5'>構建</b><b class='flag-5'>一</b><b class='flag-5'>個數字</b>控制器

    如何使用MPU6050和Arduino構建個數字量角器

    MPU6050是款 集成 了 IC 3 軸加速度計和 3 軸陀螺儀的 單元。它還包含溫度傳感器和 DCM 來執行復雜的任務。MPU
    發表于 08-31 15:42 ?5248次閱讀
    如何使用MPU6050和<b class='flag-5'>Arduino</b><b class='flag-5'>構建</b><b class='flag-5'>一</b><b class='flag-5'>個數字</b>量角器

    Arduino電容構建

    電子發燒友網站提供《Arduino電容構建.zip》資料免費下載
    發表于 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'>構建</b>

    如何采用ICL7107構建個數字電壓

    在這個項目中,我們將在**不使用任何微控制器的情況下構建個數字電壓。 **在這里,我們使用種非常流行的 IC進行電壓測量,即ICL71
    的頭像 發表于 01-25 16:01 ?3694次閱讀
    如何采用ICL7107<b class='flag-5'>構建</b><b class='flag-5'>一</b><b class='flag-5'>個數字</b>電壓<b class='flag-5'>表</b>

    如何使用Arduino和LCD顯示屏構建個數字水流量計?

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

    構建個數字電流的方法

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