閏江寶 張長勝 趙振剛 李川 譚向宇
摘要:應用4G無線網(wǎng)絡通信及嵌入式技術(shù)設計了一款無線數(shù)采控制器,該數(shù)采控制器采用S3C2440作為主控制器。闡述了系統(tǒng)的硬件和軟件結(jié)構(gòu),硬件設計介紹了硬件的構(gòu)成及功能;軟件設計包括Linux嵌入式系統(tǒng)驅(qū)動程序開發(fā)、調(diào)試,應用程序軟件的開發(fā)、調(diào)試等。
關(guān)鍵詞:4G無線網(wǎng)絡通信;嵌入式系統(tǒng);數(shù)采控制器;S3C2440;Linux
中圖分類號:TP929.5 文獻標識碼:A DOI:10.3969/j.issn.l003-6970.2017.08.020
引言
數(shù)據(jù)采集系統(tǒng)應用范圍越來越廣,功能越來越全,更需要一種高效、簡潔、高性價比的無線傳輸方式。隨著無線通訊網(wǎng)絡技術(shù)的迅速發(fā)展,無線通訊網(wǎng)絡的通信帶寬逐漸增大、通信速率增大、通信質(zhì)量也有較大提高,使得數(shù)據(jù)通過無線網(wǎng)絡傳輸變得高效、實時性強、錯誤率低。目前,在生活中我們使用的無線網(wǎng)絡通訊種類中,使用最寬、最廣的就是4G通信,本文設計了一套由嵌入式與4G無線通信模塊構(gòu)成的無線數(shù)據(jù)采集傳輸系統(tǒng),可以滿足多數(shù)環(huán)境的需要。
1 系統(tǒng)的總體方案
應用4G無線網(wǎng)絡通信及嵌入式技術(shù)設計了一款無線數(shù)采控制器。無線數(shù)采控制器采用ARM9架構(gòu)的S3C2440芯片作為CPU,USR-G401t型4G無線移動通信網(wǎng)絡模塊實現(xiàn)4G無線通信,SP485芯片實現(xiàn)RS485通信,開關(guān)量輸入輸出信號通過光耦芯片進行隔離,SD卡作為數(shù)據(jù)臨時存儲,操作系統(tǒng)選擇嵌入式Linux,同時對該設備硬件、軟件實現(xiàn)作詳細的研究分析。下圖是4G無線數(shù)采控制器的結(jié)構(gòu)。
如圖1所示的4G無線數(shù)采控制器,圖中可以看出,該設備包括:16路繼電器輸出模塊,16路開關(guān)量信號輸入模塊,1路4G無線通信模塊,2路RS-485通信模塊(通過應用程序軟件可以實現(xiàn)各種協(xié)議的485通信,可實現(xiàn)和各種儀表及PLC進行通信),1路SD卡模塊(用于少量數(shù)據(jù)的存儲)。
2 硬件設計
2.1 核心板電路設計
核心板上包括了S3C2440芯片、Flash存儲芯片(K9F1216UOA) 、ROM存儲芯片
(HY57V561620FTP-H)、時鐘電路元件及電源電路電子元件等。核心板設計成獨立的板卡,將所有功能引腳引出后給主板使用,采用6層電路PCB板。Flash存儲電路分為Nor Flash和Nand Flash兩種存儲電路,Nor Flash的存儲容量為16MB(用來存儲引導程序),Nand Flash的存儲容量為1GB(系統(tǒng)設計時,根據(jù)現(xiàn)場的應用情況使用該容量完全滿足系統(tǒng)運行要求),SDRAM的存儲容量為512MB核心板的設計主要是為實現(xiàn)版塊的公用性,可以使用于不同的主板。內(nèi)存及Flash存儲要能夠滿足系統(tǒng)穩(wěn)定運行的最小需求,同時要求具有較好散熱性能。
2.2 主板電路設計
2.2.1 主板繼電器輸出部分
在現(xiàn)場中設備所有外部電源及開關(guān)量信號都是直流24V,考慮到繼電器的輸出能力及穩(wěn)定性等,在設計繼電器輸出時也設計為24V電源驅(qū)動,干接點輸出。
輸出信號電路的設計時采用TLP521光耦合器進行隔離,以避免外部的高壓或反向電壓的注入燒毀核心元器件。根據(jù)手冊可以選擇光耦合器輸入信號端的電阻大小即為15011左右的電阻作為限流使用,如圖2所示。
2.2.2 主板SD卡部分
由于系統(tǒng)采用4G網(wǎng)絡進行數(shù)據(jù)傳輸,由于4G網(wǎng)絡存在不穩(wěn)定性,故有些數(shù)據(jù)不能夠?qū)崟r的傳輸?shù)街锌刂行?,在設計時考慮了SD卡,用來存儲一些重要的數(shù)據(jù)。SD卡的設計如圖3所示。
DATO、DAT1、DAT3、CMD信號線都采用10KΩ電阻上拉至3.3V,目的是增強電路的驅(qū)動能力,nCD信號用于檢測SD卡是否插入,當卡沒有插入卡座時,該引腳為高電平,當卡完全插入卡座的時候,nCD被拉為低電平。WP信號腳是用來檢測SD卡是否有寫保護,原理和卡的插入檢測是一樣的,故采用R49下拉電阻接地。
2.2-3 串口通訊電路
現(xiàn)場需要采集數(shù)據(jù),這些數(shù)據(jù)如果采用4?20mA的模擬信號采集,采集器得設計很多的模擬信號的采集通道。故我們在設計時就考慮采用通信的方式進行數(shù)據(jù)的采集,可以減少現(xiàn)場的布線及后期的維護工作,且可以保證數(shù)據(jù)的可靠性。設計通信時,我們采用兩線制RS485串行通信,MODBUSRTU通信協(xié)議進行通信,其實現(xiàn)電路原理圖如圖4所示。
2.3 4G無線模塊電路設計
無線網(wǎng)卡采用現(xiàn)有模塊化電路,電源由主板供應,主板可以提供給該子版塊穩(wěn)定的3.8V電源。4G無線網(wǎng)卡選用USR-G40U,采用USB接口模式進行通信。4G無線模塊USIM卡電路如圖5。
USIM卡的接口速率為3.25MHz左右,因此USIM卡座的布局應該取最近于USR-G401T位置,避免走線過長,最好對各信號線作地線包絡。CLK、IO、RESET這三個信號需要增加47pF的電容用于濾除天線信號的干擾,CLK、IO、RESET及VCC這四個信號都需要進行防靜電保護措施。USIM卡接口ESD(Electro-Static Dischang即靜電釋放)防護,如上圖所示,電路中采用了瞬態(tài)電壓抑制二極管(TVS)來作為板卡的靜電防護,PCB板布線的時候TVS要盡量的靠近SIM卡放置。
3 軟件設計
該控制器采用嵌入式設計,在選擇嵌入式操作系統(tǒng)時,我們選擇開源Linux操作系統(tǒng),內(nèi)核版本為Linux-2.6.30.4。
3.1 驅(qū)動程序的編寫
嵌入式設備基本都是根據(jù)需求完全定制化開發(fā)的,故不能夠找到完整的驅(qū)動程序支持系統(tǒng),這就需要我們進行驅(qū)動程序的開發(fā),驅(qū)動程序的開發(fā)軟件我們可以在網(wǎng)絡上找到很多軟件來建立開發(fā)環(huán)境,本次我們使用的是Eclipse軟件來開發(fā)我們的驅(qū)動程序。開發(fā)完成后我們需要在內(nèi)核系統(tǒng)中添加對驅(qū)動程序的支持,然后配置內(nèi)核,完成后編譯成功后燒寫到設備才能能夠運行。
進行設備驅(qū)動程序的開發(fā),其開發(fā)流程如圖6所示。
3.2 應用程序的設計
應用程序的實現(xiàn)是建立在操作系統(tǒng)及驅(qū)動程序的基礎之上,通過操作系統(tǒng)接口及設備驅(qū)動程序的接口應用Eclipse開發(fā)環(huán)境開發(fā)需要的應用程序。操作系統(tǒng)提供了需要的大部分功能接口函數(shù),而要獲取外部設備的數(shù)據(jù)則需要通過驅(qū)動程序接口來應用外設備進行數(shù)據(jù)交換。
設備設計的是無人值守的,故在設計時無論出現(xiàn)任何誘因?qū)е略O備故障或者死機時,都要盡量能夠保證應用程序的復位、數(shù)據(jù)的恢復,最壞的情況下要能夠保證設備能夠自動重啟。復位、初始化所有的外設、驅(qū)動程序、應用程序,并啟動繼續(xù)進行工作,必要時要能夠?qū)⒐收锨暗倪\行狀態(tài)再次導入驅(qū)動及應用程序,繼續(xù)運行故障前的作業(yè)。設計軟件時應該充分應用看門狗,以實現(xiàn)設備的自復位功能,實現(xiàn)設備的“自修復”、“無故障”工作狀態(tài)。
系統(tǒng)在實現(xiàn)各個子功能及業(yè)務流程后,設備還不能夠按照項目需求運行,設備還在不能夠運行起來,只實現(xiàn)了各部分的功能,還需要一個管理應用程序,將之前設計的各種功能、各種業(yè)務進行統(tǒng)一的管理,將各個子功能的業(yè)務綜合的統(tǒng)一起來、結(jié)合起來實現(xiàn)項目需求,這就是所要開發(fā)的設備數(shù)采應用程序。其實以上所有的應用程序都是該數(shù)采應用程序的子程序,數(shù)采應用程序協(xié)調(diào)著各個外設的工作,處理著各個外設的數(shù)據(jù),其數(shù)據(jù)采集系統(tǒng)應用程序的業(yè)務流程圖如圖7所示。
4 控制器的性能評估、測試
4.1 硬件性能測試
設備在現(xiàn)場運行時和在實驗階段完全不一樣的,實驗階段使用的電源、信號等都是相當?shù)钠椒€(wěn)的,沒有較大波動,也不存在雷擊、過壓、欠壓、過流、欠流、靜電、摔撞、電磁干擾、溫度、濕度、冷露、結(jié)冰、鼠蟲等影響,故設備都能夠正常的運行,但是在現(xiàn)場引用的過程中往往出現(xiàn)的考究設備性能的遠遠不只以上情況。故在測試硬件性能上要對設備的供電、信號輸入/輸出、通訊接口等進行相應的測試,以保證設備在一定的外部干擾環(huán)境下能夠穩(wěn)定、可靠的運行。
4.2 軟件性能測試
軟件會受到硬件的新增、刪除、更改、故障的影響,會受到使用者的操作的影響,還會受到軟件自身運行的影響,同時還會受到數(shù)據(jù)拷貝過程中數(shù)據(jù)丟失、數(shù)據(jù)溢出、數(shù)據(jù)損壞的影響,在實際使用時往往還會遇到很多其他因素的影響導致軟件的崩潰。故在測試軟件性能上我們要對各種情況下軟件運行的狀態(tài)進行測試評估,進行多種復雜情況下的軟件測試評估,在一定的范圍內(nèi)要保證設備的軟件能夠穩(wěn)定、可靠的運行。
5 結(jié)束語
本文設計了一種基于4G無線網(wǎng)絡通信的數(shù)采控制器,該數(shù)采控制器可以在不同的應用場合有效的采集數(shù)據(jù),可以應用到農(nóng)業(yè)、工業(yè)、醫(yī)療等生產(chǎn)生活的各個領(lǐng)域。本系統(tǒng)有較好的應用性和可移植性,有一定的理論和應用價值。