姜涵
摘要:該文介紹了I2C總線技術(shù)在負(fù)載的電流功率采集測量中的應(yīng)用,并針對I2C的技術(shù)特點(diǎn)和電氣特征進(jìn)行了分析。同時介紹了I2C總線接口的芯片,電流/功率監(jiān)控芯片 INA220,并給出了測量模塊的系統(tǒng)結(jié)構(gòu)設(shè)計原理。
關(guān)鍵詞:I2C總線;電流/功率監(jiān)控;INA220;ZLG7290
中圖分類號:TP336 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)23-0139-02
1 I2C總線
I2C總線是雙向、兩線(SCL、SDA)、串行、多主控(multi-master)接口標(biāo)準(zhǔn)。在它的協(xié)議體系中,傳輸數(shù)據(jù)時都會帶上目的設(shè)備的設(shè)備地址,其地址由軟件給定,稱為主控制器的從地址。一般具有I2C總線的器件的SCL和SDA引腳都是集電極開路的輸出結(jié)構(gòu),因此在實際應(yīng)用中,SCL和SDA信號線都必須加上3~10K左右的上拉電阻。多個具有I2C總線接口的器件可以連接在同一條I2C總線上,彼此之間通過不同的從地址區(qū)分,總線上不需要額外的地址譯碼器,主設(shè)備一般為微處理器,首先根據(jù)從設(shè)備的地址字節(jié)為其指定地址,一般包括7個地址位和1個操作位(R/~W),操作位用于表示后續(xù)的操作是讀還是寫。
2 INA220概述
INA220芯片是由美國TI(德州儀器)公司生產(chǎn)的一款電流及功率監(jiān)控器,帶有雙線接口,可以同時監(jiān)控電流路徑和總線電壓,總線電壓范圍在0~26V,器件供電電壓為3.3V~5V,內(nèi)置乘法寄存器,可以將測得的功率和電流以瓦特和安培為單位輸出。對主從總線兼容,雙線協(xié)議和主從協(xié)議互相之間也可以兼容,能夠提供數(shù)字電路的功率、電流及電壓的采集測量,并可設(shè)定校準(zhǔn)值以滿足一定的精度要求。
2.1 INA220芯片特性
INA220帶有I2C總線接口,通過兩條漏極是開路形式的雙向線路SCL和SDA連接到總線,并由主設(shè)備(一般為CPU)對其進(jìn)行初始化。INA220有兩個用于標(biāo)識地址的管腳,A0和A1,通過兩個管腳分別連接的是SCL、SDA、 GND 或Vs來決定INA220的從地址,其地址范圍1000000~1001111,寄存器地址范圍為00H~05H,分別是配置寄存器、分路電壓寄存器、總線電壓寄存器、功率寄存器、電流寄存器和校準(zhǔn)寄存器。校準(zhǔn)寄存器用來設(shè)定電流和功率寄存器的精度,以滿足實際需要,校準(zhǔn)寄存器還可以設(shè)定使電流和功率寄存器輸出與測量值等價的十進(jìn)制值。INA220接口電路如圖1所示,管腳Vin+和Vin-兩端接采樣電阻,根據(jù)實際精度需要,一般取20mΩ~1Ω。Vin-的電壓值等于共模電壓減去采樣電阻兩端的電壓差,INA220總線電壓通過VBus管腳測量,VBus直接連接Vin-管腳用來測量負(fù)載兩端的電壓值。
2.2 INA220精度設(shè)定及測量原理
校驗寄存器用來向INA220提供電流的采樣電阻的相關(guān)信息,INA220根據(jù)采樣電阻兩端的電壓降,就能計算出流經(jīng)負(fù)載的電流值大小,電流寄存器中的值即是通過公式:校驗寄存器值×分路電壓值÷4095計算得來。計算校準(zhǔn)值的第一步是確定電流的最低有效位,校驗寄存器的值是通過計算而得的,采樣電阻的阻值和電流最低有效位決定了計算精度。校驗寄存器值的計算步驟如下:首先確定已知量VBus_Max(最大總線電壓)、Vshunt_Max(分路電壓)和Rshunt(采樣電阻值),求出最大可能電流值MaxPossible_I= Vshunt_Max÷Rshunt,確定希望得到的最大電流值Max_Expected_I=MaxPossible_I。然后計算電流最低有效位LSB:首先計算出滿足設(shè)計要求的最低有效位的取值范圍,然后在該范圍內(nèi)選取合理的最低有效位值,值越小精度越大,通常LSB的典型值為接近范圍下限的整數(shù),其計算公式為Minimum_LSB=Max_Expected_I÷32767、Maximum_LSB=Max_Expected_I÷4096。最后計算出校驗寄存器值Calibration=0.04096÷(Current_LSB×Rshunt)。功率的最低有效位LSB為電流最低有效位的20倍,最終用戶需將INA220電流和功率寄存器中的值乘以各自的LSB才是實際值。
3 系統(tǒng)結(jié)構(gòu)設(shè)計
為了滿足不同負(fù)載對供電電壓的不同需求,系統(tǒng)的負(fù)載供電模塊采用LM2576芯片對輸入電壓進(jìn)行降壓變換。LM2576是一種常用的降壓開關(guān)穩(wěn)壓器芯片,本設(shè)計中使用了5組LM2576,通過調(diào)節(jié)外接電阻的阻值,可以將24v的輸入電壓分別轉(zhuǎn)換成12v、7.2v、5v、3.6v和3.3v的輸出電壓,同時對5路負(fù)載和系統(tǒng)其它器件進(jìn)行供電。負(fù)載的電流、功率、電壓等參數(shù)由INA220采集并計算,采樣電阻為1Ω,精度可達(dá)到μA、mW和mV級別。通過編寫I2C總線初始化、讀寫寄存器等函數(shù),將5路負(fù)載參數(shù)傳輸至CPU寄存器中,再通過七段數(shù)碼管顯示。
4 總結(jié)
文中介紹了基于I2C總線的多路負(fù)載電流/功率測量模塊的系統(tǒng)設(shè)計過程。該系統(tǒng)經(jīng)過實際運(yùn)用驗證,可滿足多路負(fù)載同時工作,具有精度高,可擴(kuò)展性強(qiáng),穩(wěn)定性好等特點(diǎn),并且負(fù)載參數(shù)通過數(shù)碼管顯示,直觀易懂,通過按鍵開關(guān)控制,方便操作。由于I2C傳輸速率高并且穩(wěn)定,整個通信過程良好,而且通過程序控制了負(fù)載供電電源的通斷,使整個系統(tǒng)功耗和成本降低。
參考文獻(xiàn):
[1] 季宏鋒, 吳軍輝, 徐立鴻. I2C總線技術(shù)及應(yīng)用實例[J]. 自動化與儀表, 2002, 21(12).
[2] 張琴琴, 蘭金虎, 孫勇. 基于I2C總線的ZLG7290與AVR單片機(jī)接口技術(shù)及應(yīng)用[J]. 儀表技術(shù)與傳感器, 2005(9):41-43.
[3] 廣州周立功單片機(jī)發(fā)展有限公司. ZLG7290 I2C 接口鍵盤及LED驅(qū)動器[EB/OL]. http/ / www. xafb. com/ download/ ZLG7290. pdf .