痞酷網_PIGOO

 找回密碼
 立即註冊
!!! [系統偵測到廣告阻擋軟體] !!!

如果您覺得痞酷網對您有些許幫助,或者您認同痞酷網的理想,

那麼希望您將痞酷網設定為白名單.

並請在上論壇的時候,動動您的手指,用行動支持我們.

謝謝!
查看: 9273|回復: 18

LT1021-5+LTC2400 6位半電表DIY與量測

[複製鏈接]
發表於 2015-1-20 17:25:49 | 顯示全部樓層 |閱讀模式
大家好~
首先 say sorry for 最近非常懶的動手做東西~拖到昨天才把這個改了一下~
這裏先感謝 ciko 老師提供的 LT1021 與 LTC2400。
LT1021-5是一顆高精度的參考電壓 IC (5v)
LTC2400就是傳說的 24 bits 高精度的ADC~最低工作參考電壓為 01.V~此為 SPI 介面
~我這就不作規格說明了~ ciko老師挑選的,一定很優~

先列一下參考網頁上的資料~
http://interface.khm.de/index.ph ... -digital-converter/

我們使用的電路為上述的連結的設定:

ltc2400_5v_sch.png

老師有提供洞洞版,但是學生偷懶沒直接上,先插小塊麵包版先:
此為精密參考電壓與24 bits ADC 實際版子~
相片 2015-1-20 上午2 15 19.jpg

底下就是上述 link所實作出來的,利用 arduino UNO 板子讀取 ADC 得知量測電壓
相片 2015-1-20 上午2 15 27.jpg

目前程式參考電壓值為內建,暫時設定 LT1201為固定 5.0V (浮點數儲存),以我的設備是無法效正這顆的~
此圖為LT1201-5 直接輸出量測,電表有量的值為 4.99 or 5.00 V
相片 2015-1-20 上午2 17 00.jpg

測試電源為 LT1201-5 輸出,經過 2顆 10k 精密電阻分壓出 2.5V,當作待測電壓接入 LTC2400 第3隻腳~
由 Fluke 15B+量得電壓為 2.497v
相片 2015-1-20 上午2 16 30.jpg

此為原程式利用 arduino 的 serial monitor 來顯示輸出:
最後一筆讀取為 2.500857V,對比這台 Fluke 15B+ 讀出為 2.497v
2015-01-20_021442.png

使用 arduino 常用的 LCD1602 KeyBad Shield 來修改原設計:
或者可用一般的 LCD 1602 來接,圖上右上方 pin 4,5,6,7,8,9 (arduino UNO 板上標示) 為連接到  LCD1602 DB4,DB5,DB6,DB7,RS 與 E 腳~
相片 2015-1-20 上午10 06 39.jpg

此為修改後,將參考電壓值與量測電壓值直接顯示於 LCD 1602 上~並降低更新速度為 約1sec 讀取一次。
相片 2015-1-20 上午3 53 32.jpg


此為初步修改版~只是利用上述網頁直接修改~程式很亂~要研究的不要看~想測試的可以抓~
後續會更新新版。將 SPI 改為標準 arduino 提供的 SPIClass 使用並模組化~
digitalConverter_mod1.zip (2.18 KB, 下載次數: 35)

謝謝收看~ {:9_584:}


reference information:

LCD1602 KeyPad Shield
http://www.dfrobot.com/index.php ... t&product_id=51
http://www.dfrobot.com/wiki/inde ... rduino_SKU:_DFR0009

評分

17

查看全部評分

發表於 2015-1-20 18:10:01 | 顯示全部樓層
圖片要把經2顆10k分壓畫一下。
發表於 2015-1-20 20:03:05 | 顯示全部樓層
本文章最後由 ciko.ciko 於 2015-1-20 08:05 PM 編輯

1.在實務上2個相同數值的10k組成的分壓,在接入數位電表時(10M內阻),也會造成輕微負載效應,這會顯示在後面位數讀值的下降.
2.此電路的應用可用於精密直流電壓量測,或作為數位電表的比對校正用途.

評分

1

查看全部評分

發表於 2015-1-20 20:27:54 | 顯示全部樓層
最後圖哪顆變壓器是12V 2A的 最近剛買一顆
發表於 2015-1-20 23:05:03 | 顯示全部樓層
CIKO老師厲害{:14_1485:},舅舅也厲害{:14_1486:}
會讀書的玩高檔
三太子不會讀書只能修理電風扇

評分

1

查看全部評分

 樓主| 發表於 2015-1-20 23:10:44 | 顯示全部樓層
popcorn 發表於 2015-1-20 11:05 PM
CIKO老師厲害,舅舅也厲害
會讀書的玩高檔
三太子不會讀書只能修理電風扇; ...

其實我只是偷抄上面人家做好低~
山寨而以~
 樓主| 發表於 2015-1-20 23:50:23 | 顯示全部樓層
SUGO-ZIP 發表於 2015-1-20 08:27 PM
最後圖哪顆變壓器是12V 2A的 最近剛買一顆

我們都用學姐牌變壓器
發表於 2015-1-21 00:35:14 | 顯示全部樓層
待測電壓Vin最好用另外電源來測試,您Vin與Vref都來自LT1021-5,這樣測不出準確度......因為待測電壓與參考電壓同一來源,誤差會互相補償掉。

評分

1

查看全部評分

發表於 2015-1-21 01:28:20 | 顯示全部樓層
n_089|感謝分享!
 樓主| 發表於 2015-1-21 22:24:20 | 顯示全部樓層

依照老師的建議,改用 2 顆 1k普通精密電阻分壓來量測~
可以發現電表與 ADC 量測之間的值趨近接近中~
負載效應還真的影響到了小數點第3位,可想而知愈後面的位數是影響愈重

{:14_1489:}

相片 2015-1-20 下午11 59 07 (1).jpg

評分

4

查看全部評分

 樓主| 發表於 2015-1-21 22:32:45 | 顯示全部樓層
ysc 發表於 2015-1-21 12:35 AM
待測電壓Vin最好用另外電源來測試,您Vin與Vref都來自LT1021-5,這樣測不出準確度......因為待測電壓與參考 ...

報告~

這些精密電壓我其實是個大外行,等 ciko老師東西準備好,應該會有機會看到他的8位半量測的分析~
 樓主| 發表於 2015-1-22 11:41:56 | 顯示全部樓層
本文章最後由 jojoling 於 2015-1-22 11:43 AM 編輯

附上修改好的~
digitalconverter_mod3.zip (1.68 KB, 下載次數: 15)

使用資訊:
1.安裝 ARDUINO 1.5.8 beta
http://arduino.cc/en/Main/Software
2.unzip 這個 zip 檔,直接點 digitalConvter.ino 即可打開~
3.目前此 zip 新,包含3隻檔案,分別為:
    1) digitalConvter.ino
        主功能檔,也稱為 sketch
    2) ltc2400.c
        ltc2400.h
    與 ltc2400 相關的功能,目前都從主程式移到此處,並比 libraries 的方式呈現。
    所以主程式在使用 lt2400 不再需要直接控制硬體層,只需2-3個設定動作,及可利用 read() 來讀取:
    init stage:
  1.     ltc2400.SetRefVoltage(v_ref);
  2.     ltc2400.begin();
複製代碼

    read voltage from ADC:
  1.     volt = ltc2400.read();
複製代碼

    目前先放同一個路徑,使用者不需額外從選單 Sketch-> Import Library -> Add library 去加入 才能使用。


實際使用上,參數可依不同硬體調整,底下為 digitalConverter.ino 裏可調整的4個選項:

  1. #define V_REF 5.0 // Reference Voltage, 5.0 Volt for LT1021 or 3.0 for LP2950-3
複製代碼

V_REF 為參考電壓值的修改,預設為 5V

  1. #define DELAY_AFTER_DISPLAY 900
複製代碼

DELAY_AFTER_DISPLAY 為顯示後,delay 的時間,讓使用者可比較清楚的辯識顯示電壓。900 表示 900ms

  1. #define SERIAL_OUTPUT
複製代碼

此為致能 arduino serial monitor 輸出,前面加上 // 可將此功能關閉

  1. #define LCD1602_SUPPORT
複製代碼

此為致能 LCD1602 KeyPad Shield 的輸出顯示(輸入按鍵目前都還沒使用),前面加上 // 可將此功能關閉

評分

2

查看全部評分

發表於 2015-1-22 23:29:51 | 顯示全部樓層
ADC 輸入有個10uF  反應會變慢吧n_064|
 樓主| 發表於 2015-1-23 02:31:06 | 顯示全部樓層
專炸元件 發表於 2015-1-22 11:29 PM
ADC 輸入有個10uF  反應會變慢吧

是的~
但這個 ADC 每轉換一次需時 133 ms(60Hz) or 160ms (50Hz)
SPS (sampling per second) 約為 7.5  (7.5Hz for 60Hz notch frequency).
它本來就不是高速的取樣IC
 樓主| 發表於 2015-1-26 02:42:40 | 顯示全部樓層
本文章最後由 jojoling 於 2015-1-26 03:10 AM 編輯

程式更新到第4版:
digitalconverter_mod4.zip (3.43 KB, 下載次數: 10)
主要的更新:
* KeyPad support
* 增加多次取樣平均功能。
* LTC 2400 CS 腳從 10 更改為 3
* 初步增加一個選單設定,可調整取樣平均的次數,建議設為 8 的倍數 ( 每次需時 133ms or 166ms,並使二進制好計算)
   次數小於4時 ,有增加額外的 delay使其數值可讀取。
* 暫時顯示至小數點第8位 (可調)



目前此版,更改了 LTC2400 /CS  腳的連接,原來是接到 Arduino UNO 上的 編號 10(SS)~但因為此腳早就被那個  LCD1602 KeyPad Shield 當用調背光來用,所以就直接換腳使用即可。
新的設定為腳編號 3。

同時,因為讀取產生的跳動的不確定因素,所以將電路焊至洞洞版上,並在參考電壓源的 Vin 與Vout加上電容,同時在 LT2400 ADC 的 Vcc / Vref /Vin(檢測端) 都補上完整的電容,將電源的變動因素,盡可能先排除掉。
另外,檢測電壓源為 AD584,上次團購的那個電表效正電源,設定至 2.5V 輸出。
http://bbs.pigoo.com/thread-51756-1-1.html
相片 2015-1-25 下午11 04 26.jpg

此為 UNO 與 LCD1602 KeyPad Shield 板合體,Arduino 本身設計就像積木一樣,很多標準的板子可以直接結合,然後再接合其它的板子,只要硬體沒有衝突,都能使用, UNO 設計上就是給大家插拔組合用的,本身是用 DIP 包裝加IC腳座,如果 Fuse 值燒錯,出事直接拔下來用萬用燒錄器及可,方便,如有同學要買,記得不要貪便宜買那個 TQFP 的包裝喔,不然不小心就要吹下來才有用喔。
相片 2015-1-26 上午12 47 53.jpg

此為洞洞版的全貌~
相片 2015-1-26 上午12 46 26.jpg


新的程式設定:
如果設定取樣次數,方法為:
1. 按住 Select 等到進入選單,再放開。
2. 按 Up / Down 可增減取樣計算次數。
3. 約4-5 sec 沒按鍵時,即會自動儲存至內建 EEPROM並離開,斷電會保留。
2015-01-26_014300.png



此為 Video~
由此 Video 得知,目前這樣,應該已經進入了一個穩定收斂的測試環境了。
只要再修正它的偏差值,應可精確至小數點第6位數了。
(一切只來自我的假設喔~錯了就.....換 ciko老師出馬)





最後,底下只是過程中,我將這個版子,換插到其它 Arduino 版去看看動作,其實都可以用~
Arduino 真是玩具~硬體規格定了下來,反而在一般人上使用,是很簡單的。


Leonardo (ATMeag 32U4) 此為 32k flash 與內建USB controller 版的 mcu
相片 2015-1-25 上午6 13 03.jpg

MEGA 2560 (ATMega2560) 此為 100 pin腳 , 256k flash
相片 2015-1-25 上午7 13 40.jpg

Mini Pro(左) & nano (右)此兩塊我就不接了,因為 mcu 與 UNO 相同,pin 腳直上及可。
Mini Pro 是給 Pro 級的,它不是版子功能多,而是很多接口都沒上,為最精簡的系統板,且只有單電源規格,需另外接 USB-RS232 才能連線。並需要用另外的外接板才能燒 bootloader (6 pin JTAG)~
nano 應該算是全功能精簡版,有 USB RS232 可連接至電腦,也同時具有 3.3V與 5V 輸出~並有 JTAG(6 pin 接頭)~ mcu 吃 5V~
相片 2015-1-25 上午7 16 31.jpg


謝謝觀賞~
{:14_1475:}

評分

2

查看全部評分

發表於 2015-1-26 12:44:01 | 顯示全部樓層
jojoling 發表於 2015-1-26 02:42 AM
程式更新到第4版:

主要的更新:

JOJOLING大:
   看樣子可以出套件分享網友了!! 進一步還可以反攻大陸(回銷)!! 哈哈哈!! 讚!!!

評分

1

查看全部評分

 樓主| 發表於 2015-1-26 14:34:17 | 顯示全部樓層
antlu 發表於 2015-1-26 12:44 PM
JOJOLING大:
   看樣子可以出套件分享網友了!! 進一步還可以反攻大陸(回銷)!! 哈哈哈!! 讚!!! ...

阿乾也要玩這個小數點第6位的玩具嗎?
{:14_1483:}
發表於 2015-1-26 20:06:25 | 顯示全部樓層
jojoling 發表於 2015-1-26 02:34 PM
阿乾也要玩這個小數點第6位的玩具嗎?

JOJOLING大:
   只要是數位的我都有興趣,只是 貪多咬不爛!! 有板子我就有興趣,反正,程式你已經搞定了 LCM我滿地都是 1602~ 2402 都有!! 尤其是2402 好幾十個呢!! (最近忙 焊接洞洞板已經沒時間了!)
發表於 2015-1-30 20:16:35 | 顯示全部樓層
antlu 發表於 2015-1-26 12:44 PM
JOJOLING大:
   看樣子可以出套件分享網友了!! 進一步還可以反攻大陸(回銷)!! 哈哈哈!! 讚!!! ...

其實對岸早有DIY手持6位半成品,只有卡片大小而且還外加OLED顯示幕呢

ourdev_685281RQ2CS9.jpg

佩服樓主的研究精神,但是高位電表沒那麼簡單,不然Agilent 34401就滿街仿冒品了。

評分

2

查看全部評分

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

關閉

站長小叮嚀上一條 /1 下一條

禁閉室|手機版|連繫我們|痞酷網電子技術論壇

GMT+8, 2024-12-23 12:05 AM , Processed in 0.100270 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.