羅書濤+郭小定+陳曉可+趙潔
摘 要:文章采用低功耗單片機為核心設計了礦用自卸車的油門控制的手持調(diào)試器系統(tǒng),手持調(diào)試器通過自定義通信協(xié)議與油門控制器之間互相通信。通過手持調(diào)試器可以監(jiān)測油門控制器的相關(guān)參數(shù),并且通過手持調(diào)試器可以修改部分參數(shù),極大地方便了產(chǎn)品出廠前的調(diào)試和售后維修。
關(guān)鍵詞:低功耗;監(jiān)控;通信;自定義協(xié)議;仿真
中圖分類號:TD82 文獻標志碼:A 文章編號:2095-2945(2017)30-0127-03
隨著經(jīng)濟社會的快速發(fā)展,世界各國對礦石的需求量飛速增長,促使各國礦山開采規(guī)模的也在不斷擴大,其中露天礦的開采規(guī)模顯得尤為突出。在年開采量達千萬噸級別的大型露天開采礦用設備中,礦用電動輪自卸車已達到接近70%的市場份額,承擔著世界上40%的煤、90%的鐵礦的開采運輸量。據(jù)統(tǒng)計,2010年國內(nèi)大型礦用電動輪自卸車新增使用量約1200臺。國家有關(guān)部門統(tǒng)計及預測表明,到2020年,需求量將達到2500臺。就目前的分析來看,市場前景非常好,因此,礦用電動輪自卸車被國家和政府視為一個重要產(chǎn)業(yè),近年來已列入國家重大科技計劃項目和重大技術(shù)裝備自主創(chuàng)新指導目錄。礦用自卸車由于其運行工況復雜和工作環(huán)境的惡劣,在出廠之前要進行大量的調(diào)試并且在維修的時候由于其體積龐大不便于返廠。針對其特殊情況,本文設計了油門控制器的手持調(diào)試器系統(tǒng),由手持調(diào)試器系統(tǒng)與與油門控制器系統(tǒng)通訊,獲取油門控制器實時數(shù)據(jù)(目標位置、反饋位置、踏板、位置、實時轉(zhuǎn)速、低怠保存值、高怠保存值、最高保存值、故障代碼等)并進行液晶顯示,通過手持控制器可修改油門控制器參數(shù)(低怠、高怠、最高設置值)。此手持調(diào)試器體積小巧,便于攜帶,功耗低,成本小,極大地方便了礦用自卸車調(diào)試工作。
1 系統(tǒng)結(jié)構(gòu)
系統(tǒng)以C8051F930單片機為核心進行數(shù)據(jù)處理,利用RS232與油門控制器進行通信,液晶和鍵盤來實現(xiàn)人機的交互,通過USB接口來保存歷史數(shù)據(jù),實現(xiàn)數(shù)據(jù)庫的建立。其系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
1.1 系統(tǒng)核心電路
C8051F930是Silicon Labs公司開發(fā)的完全集成的低功耗混合信號片上系統(tǒng)MCU。它具有片內(nèi)上電復位、VDD監(jiān)視器、看門狗定時器和時鐘振蕩器,是真正能夠獨立工作的片上系統(tǒng);4KB的RAM和64KB的FLASH,F(xiàn)LASH存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新8051固件。用戶軟件對全部外部設備具有極強的控制,可以關(guān)斷任何一個或所有外設以節(jié)省功耗;器件內(nèi)部包含一個DC-DC轉(zhuǎn)換器,允許由一節(jié)電池供電,供電電壓可低至0.9V。DC-DC轉(zhuǎn)換器是一個開關(guān)升壓型轉(zhuǎn)換器,其輸入電壓范圍為0.9V~1.8V,輸出電壓可編程,范圍為1.8V~3.3V。缺省狀態(tài)下的輸出電壓為1.9V。輸入電壓必須至少低于輸出電壓0.2V。DC-DC轉(zhuǎn)換器可以為系統(tǒng)提供最高65mW的穩(wěn)壓電源,該穩(wěn)壓電源可以為系統(tǒng)中的其他器件供電。一般來說,傳感器或其他模擬信號需要一個比單節(jié)電池所能提供的電壓更高的電源電壓,因此這一功能為與這類模擬信號接口提供了很大的方便;同時它還支持5種電源模式:正常、空閑、停機、掛起和休眠。電源管理單元(PMU0)允許進入可用的電源方式和某種方式喚醒;器件有一個可編程精準內(nèi)部振蕩器、一個外部振蕩器驅(qū)動電路、一個低功耗內(nèi)部振蕩器和smaRTClock實時時鐘振蕩器。可以通過OSCICN和OSCICL寄存器來使能/禁止內(nèi)部振蕩器和調(diào)節(jié)其輸出頻率。外部振蕩器可以通過OSCXCN寄存器配置。低功耗內(nèi)部振蕩器在被選擇為時鐘源和解除選擇時自動使能和禁止。系統(tǒng)主芯片接口電路如圖2所示。
1.2 通信電路
主控芯片與油門控制器采用RS232串口進行通信,RS-232-C接口(又稱EIARS-232-C)是目前最常用的一種串行通訊接口。通常RS-232接口以9個引腳,這里我們采用全雙工通信,一個發(fā)送,一個接收總共只需用到2,3兩個引腳。由于單片機是TTL電平與RS232電平不一樣,所以在此我們采用MAX3232芯片來進行電平轉(zhuǎn)換。MAX232工作電壓3V-5.5V,它具有ESD保護功能、支持流控制、沒有延時且可以自動收發(fā)轉(zhuǎn)換和BAUD率自適應特點,即插即用穩(wěn)定可靠。通信電路如圖3所示。
1.3 液晶顯示電路
顯示模塊采用育松電子的QC12864B液晶顯示屏來實現(xiàn)數(shù)字信號的直觀顯示。此液晶可顯示漢字及圖形,內(nèi)置字庫(16X16點陣)、128個字符(8X16點陣)及64X256點陣顯示RAM(GDRAM)。DB0-DB7可以傳輸數(shù)據(jù)和接收單片機發(fā)送的指令。單片機P0端口接到液晶的使能端口使及一些控制信號,其中E為使能信號(高電平有效)當顯示器使能時,其他引腳的信號才能正常工作。RW為讀寫控制信號端(引腳為高電平時,讀控制信號,只讀數(shù)據(jù);引腳為低電平時,寫控制信號,既可以寫數(shù)據(jù)也可以寫指令)。RS為數(shù)據(jù)命令選擇端(引腳為高電平時,寫入數(shù)據(jù);引腳為低電平時,寫入指令)。電源輸入端接滑動變阻器到亮度調(diào)節(jié)端口,可以調(diào)節(jié)屏幕的背光亮度。液晶接口電路如圖4所示。
1.4 鍵盤電路
采用鍵盤設置參數(shù),這里我們采用矩陣鍵盤,由于IO口不夠用,利用74H165芯片來進行擴展,它是典型并入串出芯片,用它來讀取外界鍵盤信息再好不過了。鍵盤電路如圖5所示。
1.5 USB接口電路
關(guān)于USB接口,一般有如下兩種方案,一種是利用集成在微控制器里面的USB控制器如:Intel的8X930AX、CYPRESS的Ez-USB、SIEMENS的C541U以及MOT-OLORA、NationalSemieonduetosr等公司的產(chǎn)品;另一種就是完全的USB接口芯片,只是處理USB通信,如:PHILIPS的PDIUSBD11(IZC接口)、PDIUSBD11 APDIUSBD129(并行口),National Semieonduetoser的USBN9602、USBN9603、USBN9604等。因為使用帶有USB控制器的芯片,必須要開發(fā)一套新的系統(tǒng),成本提高了很多,所以采用USB接口芯片-PDIUSBD11與C805lF930單片機的SMBUS配合來完成。PDIUSBD11兼容USB,SMBUS,自動處理USB協(xié)議,高速I,C接口(達1Mbit/S),采用單電源供電,電壓為3.3V,IO/引腳能夠承受電壓為5V,具有總線供電能力,EMI性能很好,時鐘頻率輸出可編程,符合ACPI、OnNOW和USB電源管理要求,片內(nèi)8kV靜電保護。USB電路如圖6所示。endprint
2 軟件設計
軟件編程采用模塊化的思想,系統(tǒng)中各主要功能模塊均編成獨立的函數(shù)由主程序調(diào)用。功能模塊包括:初始化程序(包括初始化主控芯片,液晶),自定義通信協(xié)議(發(fā)送和接收程序),鍵盤輸入程序,USB接口程序。
2.1 主程序設計
單片機在進入主程序后初始化單片機級液晶,然后判斷是否接收到油門控制器發(fā)送的數(shù)據(jù),接收到數(shù)據(jù)后按照自定義通信協(xié)議解析數(shù)據(jù)包,然后將解析完的數(shù)據(jù)送到液晶保存顯示。如果沒有接收到發(fā)送的數(shù)據(jù),主程序?qū)⒗^續(xù)檢測。在主程序運行的過程中如有其他中斷請求觸發(fā),主程序轉(zhuǎn)去執(zhí)行,按照按鍵觸發(fā)的去執(zhí)行按鍵中斷程序,執(zhí)行完畢后回到主程序。主程序框圖如圖7所示。
2.2 初始化程序
系統(tǒng)上電后, C8051F930恢復默認狀態(tài),根據(jù)系統(tǒng)功能需求重新進行初始化配置。C8051F930的數(shù)字交叉開關(guān)允許將內(nèi)部數(shù)字系統(tǒng)資源映射到端口I/O引腳,可利用設置交叉開關(guān)控制寄存器,把片內(nèi)資源配置到具體的端口I/O引腳上。通過這一特性用戶可以根據(jù)自己的特定應用選擇通用端口I/O和所需數(shù)字資源的組合,增強了應用的機動性。本系統(tǒng)中,主要配置了液晶LCD的數(shù)據(jù)線接口、控制線接口和RS232串口數(shù)據(jù)輸入/輸出,鍵盤輸入,下載線接口等。
2.3 自定義通信協(xié)議
此協(xié)議為油門馬達位置設置時上位機和速度控制器(以下簡稱控制器)傳送字節(jié)定義。通訊接口采用RS232,波特率設置為9600bit/s。發(fā)送與接收的數(shù)據(jù)格式如表1、表2所示。
通信中我們通常把數(shù)據(jù)進行打包傳送,把這樣的一個數(shù)據(jù)包稱作為一幀數(shù)據(jù)。和網(wǎng)絡通信中的TCPIP協(xié)議一樣,通常情況下,相對可靠的通信協(xié)議往往由以下幾個組成部分組成:幀頭、地址信息、數(shù)據(jù)類型、數(shù)據(jù)長度、數(shù)據(jù)塊、校驗碼、幀尾。數(shù)據(jù)包往往按字節(jié)來發(fā)送,即把數(shù)據(jù)包中的左右字節(jié)按照順序逐個的發(fā)送數(shù)據(jù)而已。當然發(fā)送的方法也有不同。在單片機通信系統(tǒng)中,通常先定義一個串口發(fā)送單個字節(jié)數(shù)據(jù)函數(shù),然后發(fā)送數(shù)據(jù)時直接調(diào)用該函數(shù)。這種方法的不足之處是在發(fā)送數(shù)據(jù)過程中,處理器需要一直參與,好處是所要發(fā)送的數(shù)據(jù)可以立刻的出現(xiàn)在通信線路上,可以很快被接收端接收到。還有一種方法是通過中斷處理的方式發(fā)送的,首先將所有需要發(fā)送的數(shù)據(jù)被送入一個緩沖區(qū),然后通過發(fā)送中斷將緩沖區(qū)中的數(shù)據(jù)發(fā)送出去。這種方法的好處是占用很小的處理器資源,但是可能出現(xiàn)發(fā)送數(shù)據(jù)的延時,即需要發(fā)送的數(shù)據(jù)不可以及時被發(fā)送的情況,不過這種時延相當?shù)男 τ?1系列單片機,比較傾向于采用直接發(fā)送的方式,采用中斷發(fā)送的方式占用較多的RAM資源,而且對比直接發(fā)送來說也沒有太多的優(yōu)點。下位機接收數(shù)據(jù)通常也有兩種方式,一種是等待接收,處理器始終處于查詢串口狀態(tài),來判斷是否接收到數(shù)據(jù)。另一種是中斷接收。這里我們采用中斷接收。
2.4 鍵盤輸入程序
鍵盤輸入采用中斷,鍵盤按下后觸發(fā)單片機中斷,中斷響應進入中斷服務子程序。通過中斷程序確定是哪個按鍵按下,然后執(zhí)行響應的命令。按鍵主要包括字符的輸入以及相應的數(shù)據(jù)設置發(fā)送。程序流程圖如圖8所示。
3 仿真結(jié)果
實驗采用單片機開發(fā)板,將keil預先生成的hex文件下載到單片機,單片機接收并顯示電腦模擬發(fā)送的數(shù)據(jù),并可以通過鍵盤修改發(fā)送參數(shù),仿真效果如圖9,圖10所示。
4 結(jié)束語
以C8051F930低功耗單片機為核心,給出了油門控制器手持調(diào)試器控制系統(tǒng)的軟硬件設計方法,實際系統(tǒng)調(diào)試運行的結(jié)果表明,手持調(diào)試器能準確接收油門傳送的數(shù)據(jù),并且操作人員可以根據(jù)收到的數(shù)據(jù)作出反饋修改油門控制器參數(shù),達到系統(tǒng)設計的要求。在后續(xù)工作中,實現(xiàn)無線通信芯片或者借助藍牙設備來進行通信。
參考文獻:
[1]Silicon Laboratories.C8051F93x-C8051F92x DataSheet.2008.
[2]張剛毅.新編MCS-51單片機應用設計[M].哈爾濱:哈爾濱工業(yè)大學出版社.
[3]保棟梁.基于單片機的溫控裝置的研究[J].高科技產(chǎn)品研發(fā),2014(23):9-18.
[4]郭亮.基于si4432的無線射頻收發(fā)系統(tǒng)設計[J].單片機與嵌入式系統(tǒng)應用,2009(11):38-41.
[5]張霞.基于MCS-51單片機的液晶顯示設計[J].現(xiàn)代機械,2014(3):71-74.
[6]胡磊.基于AVR單片機的列車臨時限速手持巡檢設備[J].電子技術(shù)設計與應用,2014(2):15-18.
[7]鄭君彬,魏德仙,楊華東,等.基于GSM網(wǎng)絡的新型智能家電控制器[J].科技創(chuàng)新與應用,2013(25):17-18.
[8]黃超澤,郭其一,毛中亞.基于MSP430及TC35i的短信收發(fā)系統(tǒng)的設計[J].電器自動化,2013(1):98-100.
[9]張亞南,劉潤華,游永智.基于C8051F930的管道溫度壓力遠程監(jiān)測系統(tǒng)[J].2010(10):83-85.
[10]潘方.RS232串口通信在PC機與單片機通信中的應用[J].2012(13):69-71.endprint