999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

I2C總線技術在艦船能量管理系統I/O端口擴展中的應用

2019-02-13 02:33:10許智豪李維波華逸飛徐聰范磊
中國艦船研究 2019年1期
關鍵詞:信號設備

許智豪,李維波,華逸飛,徐聰,范磊

武漢理工大學自動化學院,湖北武漢430070

0 引 言

艦船能量管理系統適用于發電自動化、系統監測報警、輸配電監控保護以及用電設備的監控管理,是綜合電力艦船的核心控制部分之一。在能量管理系統中,底層控制器的數量很多,并且需要采集、發送大量的I/O指令信號和狀態信號。如果將底層控制器的各個部件、外圍設備、I/O端口都分別采用獨立的線路與微處理器直接連接,那么連線將會錯綜復雜,甚至難以實現。所以,有必要采用總線技術并借助I/O端口擴展處理芯片,從而最大限度地集成化處理數量龐大的數字量信號。

目前,I2C(Inter Integrated Circuit,I2C)總線主要應用于各類傳感器、模數轉換器、存儲芯片、實時時鐘芯片等數據處理芯片中。相較于其他總線接口,其結構簡單、擴展性強,故可廣泛應用于各種數據采集系統,例如云服務器中的智能家居控制系統[1],以及在移動智能終端領域中利用I2C總線集中處理智能終端的多種傳感器[2]。

I2C總線具備良好的可移植性,可以利用軟件模擬I2C時序,并擺脫了處理器中I2C控制器的引腳范圍限制。但同時,I2C也增加了軟件處理的過程,降低了處理器效率,存在可靠性不高的缺點,可能會在數據傳輸過程中丟失或改變數據。為了提高I2C信號傳輸的可靠性,本文將增加I2C驅動芯片和專用隔離芯片,以保證其波形的穩定性。將介紹通過I2C總線采集控制大容量數據的方法,即CPU僅依靠串行數據線(Serial Data,SDA)和串行時鐘線(Serial Clock,SCL)來實現與多個外圍器件之間的全雙工數據傳輸。I2C總線系統為串行接口,傳輸速率快且結構簡單,一條I2C總線上可以連接多個具有I2C接口的設備。通過硬件外圍電路即可確定各個器件的地址,再利用軟件尋址即可方便地擴展多型設備。本文將基于單片機的普通I/O端口和軟件編程來模擬I2C總線,從而實現高級精簡指令集機器(Advanced RISC Machine,ARM)與 I2C接口器件之間的可靠通信[3-4]。

1 能量管理系統的硬件架構

為了保證艦船能量管理系統的正常運行,需要采集多路數字量來獲取當前電站的運行狀態,并根據讀入的數字量和集控臺下達的指令來輸出相應的數字量信號,用以控制各底層設備。圖1所示為基于ARM控制器的能量管理系統的硬件架構,其主要由頂層集控臺、數字量信號處理模塊及底層各個電站的開關量信號組成。首先,由具備光耦隔離功能的數字量采集模塊獲取各個艦船電站的出口斷路器狀態信號、反饋量信號和配電板輸入指令信號等;然后,通過I2C總線將所有的數字量輸入電平信號傳輸至信號處理控制器,隨即進行信號處理;最后,通過CAN總線和以太網與集控臺進行數據交互。同時,當集控臺發出指令操作數字量控制器時,信號處理控制器可以根據所采集的信號來控制參考電壓,從而選擇接觸器、電源出口斷路器分合閘、配電板指示燈等被控對象并完成相應的邏輯互鎖等判斷工作,用以避免底層器件的誤操作情況。

圖1 基于ARM控制器的能量管理系統的硬件架構Fig.1 Hardware architecture of the energy manage system based on ARM controller

2 數字量信號處理硬件的拓撲結構

信號處理的硬件部分主要由CPU最小系統、I2C專用隔離芯片、I2C驅動芯片、基于I2C總線的I/O端口擴展芯片及光耦隔離芯片組成,基本結構如圖2所示。首先,ARM輸出的信號通過I2C專用隔離芯片構成第1級隔離,以保證ARM讀取數據的抗干擾能力;然后,通過I2C驅動芯片使隔離后的I2C信號能夠對多路I/O端口擴展芯片進行操作;最后,經由光耦隔離芯片構成的第2級隔離,I/O端口擴展芯片接收或控制外部數字量信號,用以防止外部干擾影響系統內部的處理電路。

其中,I/O端口擴展芯片可以配置為輸入模式或輸出模式。當CPU將其配置為輸入模式時,芯片將讀取外擴的8路輸入信號的電平狀態并將其轉換為I2C信號,在時鐘信號的配合下,可將數據信號經由驅動芯片和隔離芯片傳輸至CPU;當CPU將其配置為輸出模式時,芯片將讀取經由隔離芯片和驅動芯片放大的I2C數據,并在時鐘信號的配合下由擴展芯片轉換為電平信號,用以驅動光耦隔離芯片輸出數字量[5-6]。

圖2 數字量信號處理硬件的拓撲結構Fig.2 Topology of the digital signal processing hardware

2.1 I/O端口擴展芯片

本文將選用TI公司的PCA9554/54A系列芯片,該芯片可以提供8位通用并行輸入/輸出端口(General Purpose Input Output,GPIO)的擴展功能,其內部結構如圖3所示,主要由I2C總線控制器、移位寄存器、中斷控制器等模塊組成。通過I2C總線控制器與移位寄存器的配合,PCA9554/54A可將其讀取的I2C數據轉換為8路輸出信號,或在讀取8路輸入狀態后通過I2C總線將數據傳輸至控制器處理。其中,上電復位模塊可將所有寄存器設置為默認值并將器件狀態初始化。

圖3 PCA9554芯片的內部結構示意圖Fig.3 Schematic diagram of internal structure of PCA9554 chip

PCA9554/54A設置了 3個管腳(A0,A1,A2)來確定芯片的地址,最多可允許8個器件共用一條I2C總線。PCA9554與PCA9554A的唯一區別在于固定I2C的地址不同,理論上最多可以允許16個器件(9554和9554A各8個)連接到同一條I2C總線上。

2.2 I2C專用隔離芯片

本文將選用ADI公司的ADM3260產品作為I2C隔離芯片,其內部結構如圖4所示。該芯片集成了數據信號隔離模塊和電源隔離模塊,可以有效減小外部的共模干擾信號。芯片可以在高達1 MHz的通信頻率下處理雙向I2C通道信號,從而滿足本文對數字信號控制的響應速度要求。

圖4 隔離芯片的內部結構示意圖Fig.4 Schematic diagram of internal structure of isolated chip

2.3 I2C驅動芯片

本文將選用TI公司的PCA9517芯片作為I2C信號的驅動芯片,其內部結構如圖5所示。由圖5可知,該驅動芯片采用了開漏機制,故器件本身只能輸出低電平而無法主動輸出高電平,除非通過外部上拉電阻將信號拉至高電平,因此必須在I2C總線上設置上拉電阻。由于PCA9517芯片引腳的最大灌電流為6 mA,故對于5 V的上拉電平而言,上拉電阻不宜低于1 kΩ,以免損壞芯片端口或導致輸出低電平的幅值增加。

圖5 I2C驅動芯片的內部結構示意圖Fig.5 Schematic diagram of internal structure of I2C drive chip

3 I2C總線擴展I/O端口的實現方法

3.1 I2C總線的原理

I2C總線由一條SDA和一條SCL組成,從設備將在SCL時鐘信號的控制下讀取主設備傳輸的數據信號。當時鐘信號為高時,讀取數據線的電平信號;時鐘信號為低時,允許改變數據線的電平信號。根據選用的從設備通信協議,可以對從設備進行尋址和數據傳輸。

啟動I2C總線后,主機即可對從設備進行尋址操作。I2C從設備的地址為1個字節,即需要8個時間周期來完成尋址操作,若某個從設備的地址對應主機發送的地址,該從設備便在下一個時鐘周期反饋一個應答信號,之后即可讀取從設備的數據信息或對該從設備進行寫操作。分析了I2C的讀取時序之后,即可利用普通I/O端口模擬I2C時序[7-9]。

當SCL為高時,SDA由高到低的跳變定義為啟動信號;當SCL為低時,SDA由低到高的跳變定義為停止信號。

發送設備每發送1個字節,就在下一個時鐘周期內開始讀取應答信號狀態,由此來判斷接收設備是否正確收到了該字節。當應答信號為低電平時,表示接收設備已成功接收該字節,即為有效應答信號(Acknowledgment,ACK);當應答信號為高電平時,一般表示接收設備未成功接收該字節,即為非應答信號(Negative Acknowledgment,NACK)。

由于需要在時鐘信號為高時讀取數據,所以當從設備為發送設備、主設備為接收設備時,ACK波形應在時鐘信號為高時保持為低。如果主設備為發送設備,則當其收到1個字節后即發送1個NACK信號,用以通知被控發送器結束數據發送,并產生一個停止信號,由此結束I2C總線的本輪操作。

在I2C總線上傳送的每一位數據都有一個時鐘脈沖與之對應(或同步控制),即在SCL串行時鐘的配合下,在SDA上逐位串行傳送每一位數據。

3.2 I/O端口擴展的方法

圖6所示為I2C總線啟、停信號的軟件模擬方法。首先,根據I2C總線的啟動信號和停止信號波形將時鐘信號保持為高電平,延時4 μs后,將數據信號電平由高設置為低;然后,發出啟動信號,再將時鐘信號設置為低電平,準備發送或接收數據;最后,在發送停止時將時鐘信號保持為高電平,延時4 μs后,將數據信號電平由低設置為高。

圖6 I2C總線啟、停信號的軟件實現方法Fig.6 Software implementation method of I2C bus start and stop signal

發送啟動信號后,將由控制器發送芯片的地址。芯片地址實際上由硬件電路決定,地址長度為1個字節,其中前7位為地址,第8位為數據方向位,這個方向位也決定了下一個操作是接收還是發送。當主機收到該數據的應答后,將寫入1個字節的控制指令,0x00表示PCA9554之后的輸入端口寄存器,0x01表示輸出端口寄存器,0x03則表示輸入/輸出模式配置。若0x03設置為輸入模式,則依次讀取擴展的8路輸入信號;若0x03設置為輸出模式,則發送1個字節以控制擴展的8路輸出信號。I/O端口擴展芯片PCA9554的寫數據和讀數據的時序如圖7所示,其中n為端口數據量。

圖7 I/O端口擴展芯片PCA9554的寫數據和讀數據時序圖Fig.7 Timing diagram of writing data and reading data for I/O port extension chip PCA9554

4 工程應用示例

本數字量處理模塊的主要應用目標為控制艦船能量管理系統的各個電站開關量,為了驗證工程應用效果,本文設計了一塊含有64路撥碼開關(數字量輸入)與64路LED發光二極管(數字量輸出)的工裝板。當撥通某一路輸入開關時,相應的LED燈便會發光,以驗證數字量采集、處理、輸出整個環節的可靠性。通過I2C總線向PCA9554寫入字節的波形如圖8所示。

在CPU發出啟動信號后的8個周期內,SDA將發出1個字節的地址信號0x4A,對應于輸出板的第5塊芯片。收到應答信號后,即可認為CPU與該芯片通信正常。

在本輪操作之后的8個周期內,SDA將發出1個字節的控制命令0x01,即將該芯片配置為輸出模式。收到應答信號后,CPU將控制該芯片輸出設定的數據字節0xAA,而工裝板上的輸出狀態也為0xAA。

圖8 通過I2C總線向PCA9554寫入字節的波形圖Fig.8 The waveform of bytes is written to PCA9554 via the I2C bus

由圖8可知,模擬I2C總線時序可以有效控制I/O端口擴展芯片,從而實現I/O端口的擴展工作。

目前,本文提出的艦船能量管理系統的數字量處理模塊已完成電磁干擾試驗和環境試驗,并已進行實船安裝且運行狀態良好。

若從設備存在問題,則將會出現如圖9所示的情況[5]。即接受1個字節數據后,從設備向CPU發出1幀非應答信號,隨后CPU將直接發送停止信號,并不再對該芯片進行操作。

圖9 非應答信號的處理波形Fig.9 The processing waveform of negative acknowledgment

5 結 語

本文采用軟件編程模擬I2C總線的方法,利用2個GPIO端口實現了對I2C總線接口器件的訪問,擴大了串行擴展總線I2C器件的應用范圍。通過采用PCA9554/54A芯片,可以最多擴展128個I/O端口,有效節約了芯片的引腳資源,簡化了系統結構,并使得多個數字量的采集與控制工作不再受單片機自身I/O端口不足的限制。通過專用芯片ADM3260,可以將I2C信號進行隔離,并適當增加I2C信號的電平延時時間,從而大為提高系統的可靠性。該系統易于移植到其他單片機系統上,在工業控制領域具備一定的推廣與參考價值。

然而,采用軟件模擬I2C波形時,雖然精簡了硬件資源,但也占用了較多的CPU資源,故其數據處理時間比直接引腳訪問增加了100倍以上。因此,在設計系統時需要統籌考慮,應在滿足時序需求的情況下盡量減少硬件資源的占用。

猜你喜歡
信號設備
諧響應分析在設備減振中的應用
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
孩子停止長個的信號
基于VB6.0+Access2010開發的設備管理信息系統
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
如何在設備采購中節省成本
主站蜘蛛池模板: 国产另类视频| 国产成人精品优优av| 久久精品这里只有精99品| 青草视频在线观看国产| 亚洲精品不卡午夜精品| 久久黄色免费电影| 日韩欧美国产中文| 亚洲成a人在线观看| 国产成人亚洲欧美激情| 久久一本日韩精品中文字幕屁孩| 一区二区三区四区日韩| 色噜噜在线观看| 天堂成人av| 99精品影院| 国产一在线| 亚洲国产精品久久久久秋霞影院| 国产日韩久久久久无码精品| 亚洲高清在线播放| 国产一区在线观看无码| 亚洲三级片在线看| 亚洲国产中文精品va在线播放| 五月婷婷综合网| 波多野结衣亚洲一区| 国产乱子伦手机在线| 国产精品视频导航| 99久久精品国产精品亚洲| 国产在线自揄拍揄视频网站| 欧美成人国产| 国产老女人精品免费视频| 欧美三级视频网站| 欧美日韩亚洲综合在线观看| 国产精品成人一区二区| 免费jjzz在在线播放国产| 国产丝袜无码精品| 日韩国产一区二区三区无码| 色丁丁毛片在线观看| 九九九精品成人免费视频7| 国产毛片久久国产| 暴力调教一区二区三区| 欧美国产日韩在线| 国产乱子伦视频在线播放| 欧美精品v| 日本不卡在线播放| 国产高清在线丝袜精品一区| 国产成人精品2021欧美日韩| 免费看的一级毛片| 国产欧美在线| 国产主播喷水| 九色综合视频网| 国产午夜看片| 在线视频亚洲欧美| 国产亚洲精品无码专| 色欲不卡无码一区二区| 麻豆国产精品视频| 91人妻在线视频| 久久精品电影| 青草视频久久| 狠狠五月天中文字幕| 永久免费无码成人网站| 国产在线精彩视频二区| 国产日本一区二区三区| 97视频免费在线观看| 国产午夜福利在线小视频| 日韩美毛片| 亚洲第一成人在线| 欧美在线伊人| 国产亚洲欧美在线专区| 免费一级毛片| 中文字幕1区2区| 国产高颜值露脸在线观看| 国产chinese男男gay视频网| 在线欧美日韩| 欧美国产精品不卡在线观看 | 国产一区二区三区在线精品专区 | 久久国产精品嫖妓| 午夜视频在线观看区二区| 欧美一级专区免费大片| 波多野结衣在线一区二区| 色窝窝免费一区二区三区| 色吊丝av中文字幕| 久久公开视频| 动漫精品中文字幕无码|