柯建興,薛曼玉,田召寶
(1.上能電氣股份有限公司深圳分公司,廣東 深圳 518052;2.華中科技大學(xué) 電氣與電子工程學(xué)院,湖北 武漢 430074)
隨著通信技術(shù)的快速發(fā)展,第四代移動(dòng)通信技術(shù)4G在前三代移動(dòng)通信技術(shù)的基礎(chǔ)上發(fā)展而來(lái)。它建立在無(wú)線通信網(wǎng)絡(luò)上,能夠?qū)崿F(xiàn)數(shù)據(jù)的高速傳輸,有著抗干擾性高和兼容速率強(qiáng)的優(yōu)點(diǎn),能夠?qū)崿F(xiàn)圖像的快速傳輸,保證圖像傳輸?shù)那逦群蛨D像質(zhì)量,并能夠連接來(lái)自不同終端、不同頻帶和不同無(wú)線平臺(tái)的網(wǎng)絡(luò),實(shí)現(xiàn)快速接入移動(dòng)互聯(lián)網(wǎng)的功能,還具有移動(dòng)通信的安全性和保密性[1-4]。
目前,大多數(shù)電氣設(shè)備具有在線監(jiān)控功能,用戶開始有了遠(yuǎn)程無(wú)線實(shí)時(shí)監(jiān)控的需求[5-6]。在4G技術(shù)基礎(chǔ)上,本文開發(fā)了一套基于MKL16Z128VFM4和EC20的4G通信系統(tǒng)。該通信系統(tǒng)能夠?qū)崿F(xiàn)移動(dòng)互聯(lián)網(wǎng)與電氣設(shè)備的無(wú)線連接,這樣工作人員能夠遠(yuǎn)程獲取設(shè)備或環(huán)境的實(shí)時(shí)數(shù)據(jù)并做出適當(dāng)處理,還可控制其工作狀態(tài)。該系統(tǒng)所用的主芯片MKL16Z128VFM4是Freescale公司開發(fā)的一款基于ARM的Cortex M0內(nèi)核的32位單片機(jī),具有超低功耗和低成本特點(diǎn)。它的內(nèi)核主頻為48 MHz,最大配置128 kB閃存和16 kB SRAM,且采用5 mm×5 mm的32腳小型封裝,可以降低成本,節(jié)約電路板空間[7]。本系統(tǒng)控制器選擇上海移遠(yuǎn)通信技術(shù)有限公司開發(fā)的EC20。該可編程控制器選擇合適的通信方式和協(xié)議可實(shí)現(xiàn)本地或遠(yuǎn)程監(jiān)控,能夠適應(yīng)現(xiàn)代工廠自動(dòng)化對(duì)系統(tǒng)開放性和互聯(lián)性的需要,且操作性強(qiáng),編程快捷簡(jiǎn)單[8-9]。
本文制定了系統(tǒng)設(shè)計(jì)方案,并從硬件設(shè)計(jì)和軟件設(shè)計(jì)兩個(gè)方面詳細(xì)介紹通信系統(tǒng)的設(shè)計(jì)。
該通信系統(tǒng)設(shè)計(jì)使用的是MKL16Z128VFM4芯片和EC20控制器。本系統(tǒng)設(shè)計(jì)使用基于ARM的單片機(jī),設(shè)計(jì)單片機(jī)接口電路和MCU模塊,編寫SCI通信程序,實(shí)現(xiàn)電氣設(shè)備與移動(dòng)互聯(lián)網(wǎng)的數(shù)據(jù)收發(fā)通信。整個(gè)系統(tǒng)包括硬件系統(tǒng)設(shè)計(jì)和接口通信軟件的設(shè)計(jì),并最終實(shí)現(xiàn)4G通信。圖1為系統(tǒng)的總體設(shè)計(jì)框圖。

圖1 系統(tǒng)總體設(shè)計(jì)框圖
圖1 展示了基于MKL16Z128VFM4和EC20的4G通信系統(tǒng)設(shè)計(jì)的總體設(shè)計(jì)架構(gòu)。系統(tǒng)設(shè)計(jì)分為硬件和軟件兩個(gè)模塊。硬件電路設(shè)計(jì)包括電源設(shè)計(jì)、MCU最小系統(tǒng)設(shè)計(jì)、4G模塊接口設(shè)計(jì)以及RS485接口設(shè)計(jì);軟件程序設(shè)計(jì)為SCI通信程序。
硬件是系統(tǒng)的支撐,極為重要。整個(gè)系統(tǒng)的硬件設(shè)計(jì)包括系統(tǒng)的電源設(shè)計(jì)、MCU最小系統(tǒng)設(shè)計(jì)、4G模塊接口設(shè)計(jì)以及RS485接口設(shè)計(jì)。電源為整個(gè)系統(tǒng)提供能量職稱,主要為4G模塊和MCU模塊供電;MCU最小系統(tǒng)設(shè)計(jì)包括電源電路、復(fù)位電路、時(shí)鐘電路以及程序下載調(diào)試接口電路;4G通信模塊完成數(shù)據(jù)的接收與發(fā)送,核心電路為SIM卡接口電路;RS485接口電路能實(shí)現(xiàn)“TX信號(hào)→RS485通信網(wǎng)絡(luò)的差分信號(hào)”和“RS485通信網(wǎng)絡(luò)的差分信號(hào)→RX信號(hào)”的轉(zhuǎn)換。
電源采用開關(guān)電源結(jié)構(gòu),支持5~15 V輸入,而4G模塊和MCU模塊需要的電源為3.8 V,故需要電壓轉(zhuǎn)換完成降壓。本文選用TI的TPS54327芯片作為控制完成電壓轉(zhuǎn)換。TPS54327為單路3 A輸出帶同步整流的Buck芯片,輸入范圍為+4.5~18 V,輸出為+0.76~7 V,且效率高,能夠滿足4G模塊和MCU模塊。本文使用2個(gè)TPS54327芯片,達(dá)到2路輸出:一路+3.3 V給MCU使用,另一路+3.8 V給4G模塊使用。+3.3 V電源的產(chǎn)生電路如圖2所示。

圖2 +3.3 V電源電路
MKL16Z128VFM4是一款基于ARM的Cortex M0內(nèi)核的32位單片機(jī)。它的通信資源包括2個(gè)16位SPI接口、1個(gè)I2S(SAI)接口、1個(gè)低功耗UART接口、2個(gè)普通UART接口和2個(gè)I2C接口,滿足使用要求。本文采用具有性價(jià)比高的QFN32封裝型號(hào),節(jié)省體積和成本。其中,基于MKL16Z128VFM4芯片的對(duì)外接口電路如圖3所示。

圖3 MKL16Z128VFM4對(duì)外接口配置
其中,PW_KEY、RST_4G、4G_Status為4G模塊信號(hào)接口;UART2_TX和UART2_RX為4G芯片通信接口;EXTAL0和XTAL0為晶體接口;nRST為MCU復(fù)位信號(hào),此處與掉電檢測(cè)電路相接。485_Ctrl1、UART1_TX和UART1_RX為RS485通信芯片接口,LED1~LED3為指示燈接口,SPI1接口供Flash保存設(shè)置信號(hào)。該系統(tǒng)結(jié)構(gòu)配置方便,成本低廉,適用于大多數(shù)要求簡(jiǎn)單的場(chǎng)合。
EC20是一款專為M2M和IoT應(yīng)用而設(shè)計(jì)的LTE Cat 4無(wú)線模塊,其采用LTE 3GPP Rel.11技術(shù)能夠?qū)崿F(xiàn)3G網(wǎng)絡(luò)與4G網(wǎng)絡(luò)之間的無(wú)縫切換。圖4為EC20的核心電路。

圖4 EC20核心電路
EC20核心電路接口由SIM卡接口、各狀態(tài)信號(hào)接口以及通信接口等組成。通信接口支持USB和UART兩種,這里采用簡(jiǎn)單的UART接口,方便軟件處理。圖5為SIM卡接口電路。

圖5 SIM卡接口電路
2.4.1 +1.8 V和+3.3 V電平之間的轉(zhuǎn)換
+1.8 V和+3.3 V電平之間的轉(zhuǎn)換電路,如圖6、圖7所示。

圖6 +1.8 V電平轉(zhuǎn)換電路

圖7 +3.3 V電平轉(zhuǎn)換電路
其中,UART2_TX和UART2_RX是3.3 V電平,4G_RXD和4G_TXD是1.8 V電平。這個(gè)電路簡(jiǎn)單,成本低廉,省掉了電平轉(zhuǎn)換的邏輯芯片,方便設(shè)計(jì)。
2.4.2 RS485通信電路
RS485通信電路選用半雙工結(jié)構(gòu)。這種通信電路分為2種——收發(fā)控制端由CPU控制的方案和收發(fā)控制端由發(fā)送信號(hào)TXD產(chǎn)生的方案。前者適用于CPU有多余的控制引腳,軟件內(nèi)部不需要做收發(fā)各幀數(shù)據(jù)之間的延遲,適用于比較高速的通信場(chǎng)合,不足是若需隔離,則多用一個(gè)隔離通道;后者適用于被動(dòng)場(chǎng)合,且信號(hào)在收發(fā)之間切換時(shí)需有一定的時(shí)間間隔,不適用于非常高速的場(chǎng)合。
根據(jù)實(shí)際情況與資源配置,本文選用收發(fā)端由CPU控制的RS485方案。圖8為RS485接口電路。
此RS485接口電路采用+3.3 V電源供電,其中JP4用于端口120 Ω電阻匹配。

圖8 RS485接口電路
軟件設(shè)計(jì)包括概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)與編碼等過(guò)程。概要設(shè)計(jì)完成MCU軟件每個(gè)功能模塊的劃分和軟件流程制作;定義MCU外部硬件接口;分配內(nèi)部ROM、RAM存儲(chǔ)空間、定時(shí)器、中斷等資源;狀態(tài)量和故障量的處理辦法;制定通信協(xié)議和數(shù)據(jù)結(jié)構(gòu)。詳細(xì)設(shè)計(jì)定義每個(gè)功能模塊名稱、功能描述、全局變量、局部變量以及輸入與輸出參數(shù);說(shuō)明調(diào)用關(guān)系、堆棧深度,詳細(xì)實(shí)現(xiàn)方法等。編碼把詳細(xì)設(shè)計(jì)的內(nèi)容轉(zhuǎn)換為可執(zhí)行的源代碼。把軟件設(shè)計(jì)分成這幾個(gè)步驟的目的是減少開發(fā)過(guò)程產(chǎn)生的錯(cuò)誤,同時(shí)方便查找測(cè)試問(wèn)題,為后續(xù)產(chǎn)品維護(hù)提供文件支持,從而保證產(chǎn)品的穩(wěn)定可靠。軟件是系統(tǒng)的核心,尤為重要。本文將選取部分重點(diǎn)內(nèi)容進(jìn)行介紹。
主程序是軟件運(yùn)行的主體。系統(tǒng)正常工作后,始終處于循環(huán)狀態(tài),根據(jù)通信協(xié)議不斷地接收和發(fā)送各種信息,同時(shí)保存各種設(shè)置量。主程序流程如圖9所示。
其中,模塊Id檢查是為了兼容不同產(chǎn)品的配置;系統(tǒng)初始化是配置MCU硬件的外設(shè),使其與實(shí)際系統(tǒng)相符;內(nèi)存檢查是確保MCU內(nèi)部存儲(chǔ)正常;變量初始化是給各變量賦初始值。

圖9 主程序流程圖
RS485通過(guò)SCI通信口進(jìn)入MCU,故MCU處理的是SCI信號(hào)。SCI通信處理流程如圖10所示。

圖10 SCI通信處理流程圖
搭建硬件電路,寫入相應(yīng)程序,經(jīng)過(guò)驗(yàn)證,表明設(shè)計(jì)的系統(tǒng)能夠正常實(shí)現(xiàn)通信,且數(shù)據(jù)具有安全性與完整性,如圖11所示。

圖11 通信實(shí)驗(yàn)結(jié)果
本文從硬件設(shè)計(jì)和軟件設(shè)計(jì)兩個(gè)方面著手,利用MKL16Z128VFM4和EC20芯片,配以簡(jiǎn)單的器件,設(shè)計(jì)了一套穩(wěn)定可靠的4G連接單元,實(shí)現(xiàn)了電氣設(shè)備與移動(dòng)互聯(lián)網(wǎng)的連接。經(jīng)試驗(yàn)驗(yàn)證,該系統(tǒng)能夠?qū)崿F(xiàn)良好的通信,且具有可靠性。