Robofun 機器人論壇

標題: 顯示在lcd上通過的電壓.電流 [打印本頁]

作者: jw840424    時間: 2012-5-12 23:31
標題: 顯示在lcd上通過的電壓.電流
如提~不知道有沒有大大能幫個忙~幫忙寫1下程式~我需要用Arduino控制讓lcd能夠顯示我線路上流過的電壓.電流
作者: mzw2008    時間: 2012-5-13 12:58
那得先有電流計和電壓計在電路上才行哩
作者: jw840424    時間: 2012-5-13 16:46
是嗎@@!我們老師說可以用程式控制欸@@!
作者: jw840424    時間: 2012-5-13 16:48
那要如何能讓電路上有電流計.電壓計呢?
作者: nichal    時間: 2012-5-14 15:48
提供一個最簡單的方法
電壓計基本上就是ADC
ADC量到的刻度對應一下電壓
就可以當簡單的電壓計

再來  V=IR  (電壓=電流x電阻)
所以要量電流
先有一個固定阻值的電阻(不受電流大小, 溫度大小, 或其它特性影響而變化的阻值)
接在你要量測的裝置回到GND的回路上
接法就是  VCC---裝置---電阻---GND
再來裝置到電阻的這條線拉進ADC pin
量到的就是電流

不過這種接法有但書
第一要知道ADC pin的阻抗匹配
拉進去可能要加100歐姆, 也有可能要加100K歐姆
所以在不曉得阻抗匹配的條件下
建議要再加一個OP(放大器)
以緩衝器的接法(gain=1)接就可以了
這樣就不用理會阻抗匹配的問題
作者: pizg    時間: 2012-5-15 23:17
本帖最後由 pizg 於 2012-5-15 23:27 編輯

利用分壓原理就可以求得電壓和電流.
Vin------|
            R1
            +-------Vout
            R2
Gnd-----|

Vout接Arduino Analog pin0
如果要量測電池的電壓,
Vin接電池的+, Gnd接電池的負.
R1, R2可以用4.7k,
如果要量測某一電路,
Vin接正電壓, Gnd接負電壓.
R1, R2就得要稍微計算一下,
請注意:請適當地調整R1,R2, 不能讓Vout超過5V, 否則有可能會損壞MCU.

偵測電壓電流的程式片段如下:
Value = AnalogRead(0);
Vout = Value * 5 / 1024;
Vin = vout / (R2/(R1+R2));

有了Vout和R2, 就可以計算流過R2的電流是多少.
至於如何把數值顯示在LCD上,
Cooper Maa的網誌裏有很詳細的說明.
>> http://coopermaa2nd.blogspot.com/
作者: pizg    時間: 2012-5-15 23:19
利用分壓原理就可以求得電壓和電流.
Vin------|
            R1
            +-------Vout
            R2
Gnd-----|

如果要量測電池的電壓,
Vin接電池的+, Gnd接電池的負.
R1, R2可以用4.7k,
如果要量測某一電路,
Vin接正電壓, Gnd接負電壓.
R1, R2就得要稍微計算一下,
Vout接Arduino Analog pin0

偵測電壓電流的程式片段如下:
Value = AnalogRead(0);
Vout = Value * 5 / 1024;
Vin = vout / (R2/(R1+R2));

有了Vout和R2, 就可以計算流過R2的電流是多少.
至於如何把數值顯示在LCD上,
Cooper Maa的網站裏有很詳細的說明.




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2