概述:
數字多用表是常用的測量儀器,目前市場常見的是3.5(三位半)和4.5 手持表,用于一般測量,另外高端的則是6.5位以上的臺式表,價格較高,用于高精度測量。
隨著電子技術的進步,高性能低成本的器件層出不窮,使得制作一部低檔的6.5位數字多用表成為了可能,這里介紹這款六位版,就是在性能上、功能上和成本上綜合考慮的一種設計實現方案。
設計思想:
選用成品的通用元件:高端DMM采用以 恒溫深埋齊納基準——前端為Dual JFET的混合低噪聲運算放大器——多斜率積分高速高分辨率ADC 為主軸的測量系統,其中每個部分的制作難度都非常高,而且需要昂貴的儀器進行調試、校準,這樣的要求在業余條件下是難以滿足的,所以這里采用了相對低成本可靠通用IC 精密帶隙基準——單片低噪聲斬波穩零放大器——24Bits低噪聲ΣΔ ADC來替代,這樣的既可以減少元件采購難度,降低整體成本,最重要的是能得到可靠的性能保證,就是說可以根據DataSheet上標明的最差指標可以計算出系統的整體性能。
放棄高電壓,大電流量程:首先對這些量程進行高精度測量本身難度就非常高,而且對系統的輸入選擇、保護系統提出了很高的要求,元件質量要求高,PCB面積占用大,最重要的是要為用戶人身安全負責,為了避免出現安全問題所以沒有設置危險的測量量程。
放棄長期穩定性:要靠數字多用表本身來保證長期穩定性意味著整個系統每個部分都要有很高的長期穩定性,基準要用深埋齊納基準,分壓電阻要用精密電阻網絡等等,成本會顯著提高,相對而言購買或制作標定好的基準(LYMEX有售)要便宜的多,而且在進行對比測量時可以將整體的精度提高到接近外部基準的水平。
放棄交流測量:由于沒有設計交流測量系統的條件,所以沒有做。
采用手持設備架構:由于現代MCU的集成度非常高,開發工具越來越簡便,加之筆者最近在學習STM32,所以就做成手持設備了。
總的講設計要素的優先關系如下 低成本〉小巧〉低功耗〉高性能
聲明:
本文涉及的內容涵蓋危及生命的電學測量,特別提醒實驗者確保人身安全!
作者完全出于業余愛好撰寫該文,由于能力有限疏漏乃至錯誤在所難免,因此作者不對該文章(包括附帶的其他資料)的正確性負責,同時也不對因援引該文或使用附帶資料導致的信譽損失、商業利益損失、財產損失、人身傷亡等(包含上述內容,但不見限于上述內容)負任何連帶責任。
作者完全出于學習目的撰寫該文, 該項目被視為非商業性的,作為學習模擬技術/ STM32 的驗證平臺而被創建,因此沒有義務回答非技術問題。
出于互聯網之 free&open 精神,作者將對項目涉及的硬件,固件,上位機軟件,開發相關的心得,技術參考等會(等待完善后)開源,希望但不要求您在援引該文或使用上述開源資料時提及作者。
功能和指標:
電源:
3.0V~6V供電可用單節磷酸鐵鋰(3.2V), 單節鈷酸鋰(3.7V) , 單節錳酸鋰(3.6V),三節堿性電池(4.5V),三節鎳鎘或鎳氫電池(3.6V),功耗250mW(開啟數據保存),2.9V低電壓關機(為了保護鋰電避免過放電),軟件電源開關,待機電流《5uA.
測量:
1ppm 分辨率 1ppm 噪聲 5ppm 線性度 1ppm溫度系數。
電流測量 100mA,10mA,1mA 壓降《0.125V , 500mA 熔斷器。
電壓測量100mV , 1V 》10G高阻抗輸入, 10V ,100V 9M 低阻抗輸入(新版批量采購1.1M的電阻就是標準的10M,后文詳述)。
電阻測量 100R 1K 10K 100K 1M 采用恒流方式(對應為1mA ,1mA, 100uA,10uA,1uA)開路電壓5V,支持4線模式。
溫度測量 采用PT100傳感器,可處理到 -200攝氏度~850攝氏度,分辨率0.01度。
除溫度測量外都有25%的超量程測量(例如1V可測到1.25V)當開啟自動量程轉換時連續三個測量讀數都超量程時向上換檔,連續三個測量讀數都欠量程(《 0.11)時向下換檔。
系統和軟件:
支持SD卡數據存儲,導入校準數據,從SD卡更新固件(新版功能)。
支持實時時鐘,可設置自動關機,以及定時喚醒數據采集模式。
支持自動量程,0位補償,數字濾波。
帶有簡單的幫助。
詳細的測量數據可見 lymex 的專題文章
http://bbs.38hot.net/read.php?tid=4594#
一些測試視頻
flash: http://player.youku.com/player.php/sid/XMjEyMDM1MDI0/v.swf
flash: http://player.youku.com/player.php/sid/XMjEyMDM1NTg0/v.swf
flash: http://player.youku.com/player.php/sid/XMjEyMDM2MTI0/v.swf
flash: http://player.youku.com/player.php/sid/XMjEyMDM0Mzg4/v.swf
設計原理:
?。ǜ敿毜脑O計基礎見 DIY DMM Reference.doc ,這里只是整體大略介紹下)
電源系統:
電池供電,首先經過有Q71構成的反接保護電路,之后分為兩路,一路經HT7130穩壓到3.0V供MCU,另一受Q72的控制作為外設的電源,它連接至兩個由LT1372構成的Boost
升壓器,分別升至15V(供歐姆電流源和OLED偏壓)和5V(供模擬部分)
這里采用HT7130主要是考慮到其且具有極低的靜態功耗,特別適合為待機的MCU供電。
DCDC變換器采用LT1372是因為其低成本,且該器件具有NFB功能,可以方便的構成Cuk 拓撲結構,組成負電壓輸出的開關調節器(新版要用到+-15V),雖然由于靜態功耗較大,在小電流輸出下效率較低,但總體上還是不錯的。
MCU 系統:
MCU 采用STM32F103R6T6 (其實101系列就行,但是市面上沒有零售)靠內部的RC振蕩器工作在20MHz的頻率上(更快沒實際意義,且更費電),后備電池使用0.22F的超級電容,(為了兼容性,又做了個100uF鉭電容的焊盤)RTC晶振使用MC-306 6pF 32.768K,注意要接入200K的R66否則容易振壞。
MCU使用5線SWD端口進行Flash燒寫和調試。
PA0構成軟件電源開關,可以從待機模式喚醒MCU。
OLED使用串行模式,4X3矩陣鍵盤,SD卡采用SPI模式。
其他端口用來控制模擬板。
輸入選擇:
先看電壓-電阻部分
繼電器K1選擇將HI輸入端子直接接入模擬開關或者進行分壓。
繼電器K2選擇將歐姆電流源注入HI或者LOW。
上面的兩個繼電器都使用磁保持型的,避免長期通電發熱導致熱電勢誤差。
HS,LS,以及HI的輸入通過R01-R06以及R17-R1A D17-D16 組成的保護電路被限制在+-2.0V,然后加上從 9串:11并的1.1M分壓陣列99:1分壓后的電壓一起進入8選一模擬開關。
電流部分先經過500mA熔斷器-全橋的保護電路,經過繼電器選擇接入100R 10R 或1R的分流電阻,其上的壓降取出后也被送入模擬開關,U01A構成的跟隨器將提升二極管橋中點的電位至電流輸入端子電位,從而減小了他們的漏電流。
U01B為測量系統提供中點參考電位(也就是LOW端子的電位)。
這里需要提下的是分壓電阻采用了50ppm的晶圓電阻構成陣列,下面PCB敷銅均溫,從實際效果看還是非常不錯的。
U01由于要求不高所以采用了低成本的MCP6002。
模擬開關原計劃用MAX328的,但由于貨源原因,用ADG508代替了。
程控放大:
這里采用了AD8629作為主放大器,該器件為低噪聲斬波穩零放大器,U20A根據U27選擇的反饋信號配置成X1或X10放大器,U20B是一個驅動驅動容性負載的緩沖器,用以驅動ADC。
同樣的這里的分壓電阻采用了3串:3并構成的9:1分壓器,由于要求不高模擬開關采用了采用了高速CMOS的74HC4053
Ref and ADC:
U44是2.5V精密帶隙基準,采用ADR421B他能穩定地驅動1uF的容性負載,最大3ppm/C的溫度系數,1.5uV pp 0.1~10Hz 噪聲
U43采用24Bit低噪聲ΣΔ ADC LTC2440 可提供接近21Bits的有效位。
U41為低噪聲LDO調節器LP2985,為模擬部分提供5V電源。
歐姆電流源:
U31為低偏置電流精密運放AD706,其中U31A和Q31起到參考電壓縮放-轉移的作用,將2.5V的基準轉換成比標準電阻(RJ31~RJ34)公共端低1V輸入到U31B的正,模擬開關用于選擇4個標準電阻(開爾文接法),Q32是PJFET受U31B控制保持標準電阻兩端的電壓為1V,Q33~Q35 與 D31 組成保護電路(Q34,Q35實際為高反壓PNP管2N6520,Q33為低漏電流N-JFET PN1117A)。
DZ1與R30構成降壓電路使得U31B的輸出能足夠的正使Q32截止。
外觀介紹:
最上方的是OLED顯示屏,藍綠色128X32點陣,亮度比較高,在室外強光下也可以看清楚,整體感覺比較像VFD,
下面是3行4列的鍵盤陣列,在測量模式下他們的意義如下
?。ㄔ趲椭J较嘛@示的提示,按下對應位置的按鍵就會有更詳細的英文說明)
VLT OHM AMP TMP
UP AR NUL NEW
LOW DF ZRO STR
VLT 電壓測量。
OHM 電阻測量,如果已經是電阻測量模式了再次按下,就是在4線和2線制之間來回切換。
AMP 電流測量。
TMP 溫度測量。
UP 切換到更高的量程,同時關閉自動量程切換。
AR 切換是否開啟自動量程轉換。
NUL 捕捉當前值作為偏置補償。
NEW 備份當前的數據文件,創建新的數據文件作為當前文件。
LOW切換到更低的量程,同時關閉自動量程切換。
DF切換是否開啟數字濾波。
ZRO 將偏置補償置零。
STR 切換是否開啟數據文件保存。
再下面是
PWD 電源按鈕,待機時按下開機,工作時按下呼出系統菜單(位置對應3行4列的鍵盤陣列)
Help 1M 30M Time
Off 5M 1H Cal
Auto 10M 2H Ver
這些符號的意義如下:
Help顯示幫助菜單
Off 關機
Auto 切換是否10分鐘自動關機
Time 設置系統時間
(時間菜單的幫助)
?。?a href="http://www.1cnz.cn/tags/時鐘/" target="_blank">時鐘設置菜單)
Cal 呼出校準菜單,關于校準內容后面會詳細介紹
?。ㄐ什藛危?/p>
Ver 顯示固件版本號
1M 5M 10M 30M 1H 2H 進入 1分鐘到2小時間隔的喚醒采樣模式(該模式下按PWD鍵可以退出喚醒采樣模式)
PLED 指示電源良好(工作狀態)
SDLED 指示正在進行SD卡的IO操作
RST 為復位鍵,復位除系統時鐘外的所有狀態
再下面是SD卡座
再下面是輸入端子,水平間距是標準的19.05mm(3/4吋)垂直間距時12.7mm(1/2吋)
上排兩個從左到右為 LS端子 ,HS端子
下排三個從左到右為 AMP端子 ,LOW端子 HI端子
數據文件存儲:
當用戶安裝了SD卡后即可將采集的數據存儲其上,當前的存儲文件名位為data.csv(可以用Excel直接打開,由于是純文本格式notepad也可以直接打開,編輯)。
在按下New鍵后data. csv就會被命名為data_000. csv data_001. csv等等,并且創建一個新的data. csv用來保存后續的數據,一般情況下,建議用戶完成一組測量后按下先按下Str停止存盤,選擇新的功能或量程,按下New切換文件,并再次按下Str開啟數據保存。
校準:
DMM 的ADC采樣后轉化成滿量程為+-1.0的值,然后經過 y=kx+c;的線性校準作為輸出的讀數。在DMM內存為每個量程維護了一組kc值構成一個校準表作為當前校準系數,同時可以將這個校準表燒錄到Flash中,以便長期保存(開機默認加載Flash的內容進校準表)。
校準菜單中對應如下按鍵
Idty:將校準表歸一化(c=0,k=1.25)。
Load:從SD卡讀取cal.txt的文件,填充校準表。
Save:將校準表的數據回寫進cal.txt文件。
Write: 將校準表的數據燒寫進Flash。
Read:加載Flash的內容進校準表。
用戶的校準過程是這樣的:
準備對應量程的標準源。
準備短路線。
為將待校準的表安裝SD卡。
將待校準的表切換到恰當量程,喚出校準菜單,按下Idty,歸一化校準表。
短路輸入端子,記錄讀數。(建議開啟DF以便獲得穩定的度數)。
將源接入輸入端子,記錄讀數。(建議開啟DF以便獲得穩定的度數)。
將數據輸入makecal.exe生成kc值。
修改cal.txt對應量程的kc值。(沒有的話可以在校準菜單按下Save生成一個)
為每一個量程重復上述過程。
重啟DMM,喚出校準菜單,按下Load,按下Write。
再次重啟DMM。
(校準文件)
?。ㄐ受浖?br />
?
評論
查看更多