尹成娟,張曉榮,郭棟梁,牛亮
(山西大眾電子信息產(chǎn)業(yè)集團(tuán)有限公司,山西太原,030024)
技術(shù)是戰(zhàn)術(shù)的基礎(chǔ),高新技術(shù)在軍事領(lǐng)域的應(yīng)用,推動(dòng)著戰(zhàn)爭形態(tài)的變化[1]。無人機(jī)以其尺寸小、重量輕、造價(jià)較低、機(jī)動(dòng)性好、適應(yīng)性好等特點(diǎn)目前在軍事和民用方面都得到了廣泛的應(yīng)用[2]。隨著高新技術(shù)的發(fā)展,無人機(jī)在軍事領(lǐng)域帶來的重大變革儼然成為軍事熱點(diǎn)技術(shù)之一。因此,無人機(jī)信息的采集對于提升空中打擊能力具有重要的軍事意義。本文設(shè)計(jì)了一種基于STM32 的多功能控制板,作為某型無人機(jī)的測試工裝核心板,用于滿足該型無人機(jī)信息采集的需求,且采集到的信息通過通信模塊打包發(fā)送至上位機(jī),供上位機(jī)后續(xù)處理。此外,該測試工裝具有左右兩個(gè)手柄,手柄信息通過多功能控制板上的FPGA 采集,使得該測試工裝兼具發(fā)控功能。
多功能控制板以STM32F103ZET6 為主控芯片,各功能模塊由電源模塊、通信模塊、AD 采集模塊、IO 輸入采集模塊、手柄開關(guān)量采集模塊以及手柄力敏信息采集模塊等幾部分組成。系統(tǒng)框圖如圖1 所示。
圖1 系統(tǒng)框圖
主控芯片是硬件設(shè)計(jì)的核心部件,也是連接各功能模塊的重要橋梁。主控芯片的選擇本著夠用為度,留有余地,相互兼容,質(zhì)量優(yōu)先的原則。本設(shè)計(jì)主控芯片的作用是采集外部電壓值以及IO 輸入,并通過通信模塊與上位機(jī)實(shí)現(xiàn)數(shù)據(jù)通信。
通過對比分析,本設(shè)計(jì)采用了單片機(jī)STM32F103ZET6為主控芯片。單片機(jī)的最小系統(tǒng)由晶振部分、電源部分以及復(fù)位部分等組成。STM32F103ZET6 微處理器是STM32 系列的增強(qiáng)型芯片,該芯片具備72MHz 時(shí)鐘頻率,能實(shí)現(xiàn)高端運(yùn)算。內(nèi)嵌128KB FLASH 程序存儲器,擁有UARST、SPI 等串行接口。更重要的是它擁有最快1μs 轉(zhuǎn)換速度的ADC,如此快速采集,高性能的ADC 非常適用于數(shù)據(jù)的快速采集和快速處理上,這也是本系統(tǒng)選擇它作為核心控制器的一個(gè)重要原因[3]。
電源模塊是為電路板上各個(gè)數(shù)字或模擬負(fù)載提供供電的設(shè)備。適當(dāng)?shù)仉娫茨K選型能夠?yàn)樵O(shè)備的正常工作提供重要的保障。多功能控制板供電輸入為12V,本設(shè)計(jì)選用美國寶威電源(Power-One)公司生產(chǎn)的YS12S16-0G 型DC-DC 轉(zhuǎn)換器作為DC12V 轉(zhuǎn)DC5V 的電源模塊。該模塊輸入電壓范圍為9.6~14V,無最小負(fù)載要求,具有自動(dòng)復(fù)位輸出過流保護(hù)、超溫自動(dòng)復(fù)位保護(hù)以及高效率,無需散熱等特點(diǎn)。此外,多功能控制板還需要DC5V 轉(zhuǎn)DC3.3V、DC5V 轉(zhuǎn)DC1.8V、DC5V 轉(zhuǎn)DC1.2V 以及DC5V 轉(zhuǎn)DC2.5V 的電源芯片。本設(shè)計(jì)分別采用LT1963AEST-3.3、LT1963AEST-1.8、LT3022IMSE-1.2 以及LT1963AEST-2.5型電源芯片,分別產(chǎn)生DC3.3V、DC1.8V、DC1.2V 以及DC2.5V,為STM32 以及其他功能模塊提供電源。該部分電源芯片屬于低壓差線性穩(wěn)壓器(LDO),其特點(diǎn)是將多余的功率轉(zhuǎn)化為熱量來達(dá)到穩(wěn)壓的效果,該類電源芯片適合低功耗、輸入輸出壓差較低的場合。
通信模塊以以太網(wǎng)控制器W5300 為主芯片,實(shí)現(xiàn)STM32 與上位機(jī)之間的通信。W5300 是韓國Wiznet 公司生產(chǎn)的以太網(wǎng)協(xié)議芯片,支持8個(gè)獨(dú)立端口同時(shí)連接,通信速率可達(dá)到50Mbps[4]。W5300 是一款0.18μm CMOS 工藝的單芯片器件,內(nèi)部集成10/100M 以太網(wǎng)控制器MAC 和TCP/IP 協(xié)議棧。W5300 穩(wěn)定可靠,廣泛應(yīng)用于高性能、低成本的Internet 嵌入式領(lǐng)域[5]。此外W5300 可以支持直接尋址和間接尋址兩種主機(jī)接口模式,用戶也可以通過高性能配置使其具有更高的性能。
AD 采集即利用單片機(jī)的ADC 功能把輸入到單片機(jī)引腳的模擬電壓值轉(zhuǎn)換成數(shù)字信號,從而采集到單片機(jī)引腳的電壓值。本文AD 采集模塊分為兩部分,一部分為大電壓信號采集,另一部分為多種電壓信號采集。
通常,單片機(jī)的ADC 引腳允許輸入的電壓值比較低,STM32 引腳的輸入電壓不能大于3.3V,否則會導(dǎo)致單片機(jī)損壞。本文的大電壓信號采集中,單片機(jī)需要采集的電壓大于3.3V,因此該部分功能在AD 采集前需設(shè)置運(yùn)放來縮小直接采集到的電壓值,以達(dá)到保護(hù)芯片的作用。本設(shè)計(jì)采用的運(yùn)放型號為圣邦微的SGM8424,其具有低功耗、高電壓的特點(diǎn)。大電壓信號采集原理圖如圖2 所示。
圖2 大電壓信號采集原理圖
多種電壓信號采集即單片機(jī)通過采集到的多種電壓值來判斷外部信號的種類。由于本設(shè)計(jì)選用的單片機(jī)STM32F103ZET6 其具有AD 功能的管腳最多有21 個(gè),而大電壓信號采集有20 路,故多種電壓信號采集功能需要用外部AD 采集來實(shí)現(xiàn),本文選用的外部AD 采集芯片為AD7993。AD7993 采用單電源工作,其電壓范圍為2.7V至5.5V,具有低功耗、4 通道、10 位高速的特點(diǎn)。此外,AD7993 提供與I2C 接口兼容的串行接口,通過I2C 總線與主芯片STM32 連接控制。多種電壓信號采集在AD 采集前同樣使用圣邦微的SGM8424 作為電壓跟隨器,起到隔離的作用,保護(hù)后端電路。并且,電壓跟隨電路可以通過提高采集信號負(fù)載能力的方式來確保穩(wěn)定采集到外部模擬信號。SGM8424 驅(qū)動(dòng)電路原理圖如圖3 所示。AD7993 采集電路原理圖如圖4 所示。
圖3 SGM8424 驅(qū)動(dòng)電路原理圖
圖4 AD7993 采集電路原理圖
IO 輸入采集模塊通過STM32 具有I/O 功能的管腳來實(shí)時(shí)采集無人機(jī)IO 信息,并將采集到的數(shù)據(jù)通過以太網(wǎng)打包發(fā)送至上位機(jī)。
測試工裝具有左右兩個(gè)手柄,當(dāng)手柄按鍵發(fā)生動(dòng)作時(shí),多功能控制板上的FPGA 檢測其狀態(tài),并將狀態(tài)上報(bào)上位機(jī)。多功能控制板的FPGA 選用EP4CE40F23I7型現(xiàn)場可編程門陣列。其具有328 個(gè)I/O 管腳,邏輯元件數(shù)量為39600,電源電壓為1.15~1.25V,工作溫度為-40℃~100℃。
手柄力敏信息采集模塊同樣采用多功能控制板上的EP4CE40F23I7 型現(xiàn)場可編程門陣列實(shí)時(shí)采集手柄力敏操作桿422 信息并將力敏信息上報(bào)上位機(jī)。FPGA 采集力敏信息前要通過隔離422 模塊,該模塊選用亞德諾半導(dǎo)體公司生產(chǎn)的ADM2587EBRWZ 型隔離數(shù)據(jù)收發(fā)器。該收發(fā)器采用3.3V/5V 單電源供電,具有±15KV ESD 靜電保護(hù)功能。其內(nèi)部包含隔離式DC-DC 電源,不需外部隔離模塊。此外,該模塊具有熱關(guān)斷和限流的特點(diǎn),能夠有效防止輸出短路和總線爭用而功耗過大的情況出現(xiàn)。ADM2587EBRWZ 型隔離數(shù)據(jù)收發(fā)器廣泛應(yīng)用于隔離式RS-485/RS-422 接口以及多點(diǎn)數(shù)據(jù)傳輸系統(tǒng)。手柄力敏信息采集模塊電路原理圖如圖5所示。
圖5 手柄力敏信息采集原理圖
PCB 設(shè)計(jì)屬于系統(tǒng)的硬件設(shè)計(jì),是整個(gè)設(shè)計(jì)的目的,也是電路原理圖設(shè)計(jì)的載體,PCB 設(shè)計(jì)為電子信息產(chǎn)業(yè)的高速發(fā)展奠定了重要的基礎(chǔ)。本設(shè)計(jì)選用Protel 軟件開發(fā)商Altium公司推出的Altium Designer作為硬件開發(fā)平臺。該平臺可以實(shí)現(xiàn)電路原理圖繪制、電路仿真、PCB 繪制等功能。
本設(shè)計(jì)采用6 層PCB 結(jié)構(gòu),第一、三、五、六層為信號層,第二層為接地層,第四層為電源層。在對系統(tǒng)PCB 進(jìn)行設(shè)計(jì)時(shí),有以下幾個(gè)事項(xiàng)需要注意:電源部分要設(shè)置足夠多的濾波電容,且每一級電源輸入端應(yīng)設(shè)置保險(xiǎn),防止電路故障串級;晶振內(nèi)含石英晶體,受到撞擊易斷裂,為防止晶振損壞,晶振不能距離板邊太近,且晶振下方不能布信號線,防止造成干擾;422 信號與以太網(wǎng)信號布線需使用差分線,差分線信號大小相等,方向相反,具有更高的抗干擾能力與傳輸速率,且信號傳輸質(zhì)量較高;布線應(yīng)避免形成環(huán)路;整塊印制板應(yīng)布線、打孔均勻,避免出現(xiàn)疏密不均的情況。除此以外,電路印制板設(shè)計(jì)還應(yīng)考慮電磁兼容性、成本等因素。本設(shè)計(jì)實(shí)物圖如圖6 所示。
圖6 實(shí)物圖
主控芯片STM32F103ZET6 應(yīng)用系統(tǒng)的開發(fā)除了得益于正確的硬件電路設(shè)計(jì)以外,還依賴于系統(tǒng)軟件的開發(fā)。一個(gè)優(yōu)秀的系統(tǒng)軟件具有流程清晰、結(jié)構(gòu)合理且易于調(diào)試與移植等特點(diǎn)。此外,軟件的抗干擾設(shè)計(jì)也能提高整個(gè)應(yīng)用系統(tǒng)的抗干擾能力。
本設(shè)計(jì)的編程語言采用C 語言,軟件開發(fā)環(huán)境為Keil μVsion4。軟件主要完成三種信號采集:20 路大電壓信號采集、多種電壓信號采集和I/O 輸入狀態(tài)采集。軟件具體工作原理如下:
STM32 處理器上電后首先初始化W5300 網(wǎng)絡(luò)傳輸芯片、AD7993 電壓采集芯片、STM32 自帶的3 個(gè)ADC 模塊以及I/O 管腳配置等。
處理器每隔5ms 讀取內(nèi)部的3 個(gè)ADC 轉(zhuǎn)換出的20 路電壓數(shù)字量,并將采集到的信息打包后通過W5300 上報(bào)上位機(jī),上位機(jī)進(jìn)行后續(xù)處理;處理器實(shí)時(shí)監(jiān)控AD7993 轉(zhuǎn)換出來的模擬電壓信號,當(dāng)信號發(fā)生改變時(shí),把最新的電壓值上報(bào)上位機(jī);處理器實(shí)時(shí)監(jiān)控I/O 管腳的電平信號,當(dāng)電平信號發(fā)生改變時(shí),把最新的狀態(tài)上報(bào)上位機(jī)。軟件流程圖如圖7 所示。
圖7 軟件流程圖
信息時(shí)代的到來,使人們的生活方式發(fā)生了巨大的改變,無人機(jī)作為新時(shí)代的產(chǎn)物,具有體積小、航程遠(yuǎn)及無人駕駛的特點(diǎn),屬于高精尖科技產(chǎn)品,目前越來越受到軍事和民用領(lǐng)域的青睞,廣泛地應(yīng)用無人機(jī)技術(shù)[6]。隨著人工智能、數(shù)據(jù)處理、新型材料等各類高新技術(shù)的不斷發(fā)展,無人機(jī)的作戰(zhàn)效能必將得到空前拓展,其必將成為影響未來戰(zhàn)場勝負(fù)的關(guān)鍵因素[7]。本文設(shè)計(jì)的多功能控制板以STM32F103ZET6 為主控芯片,實(shí)現(xiàn)無人機(jī)信息的AD 采集以及IO 輸入采集,并通過以太網(wǎng)控制器W5300 將采集到的信息上報(bào)上位機(jī)。同時(shí),該多功能控制板兼具發(fā)控功能,可以將某型無人機(jī)測試工裝的左右手柄信息采集并上報(bào)上位機(jī)。經(jīng)實(shí)驗(yàn)證明,本文設(shè)計(jì)的多功能控制板工作穩(wěn)定、性能良好,滿足某型無人機(jī)信息采集的要求。