科學(xué)技術(shù)的進(jìn)步帶來(lái)了物流業(yè)的巨大變化,從機(jī)械化向自動(dòng)化、智能化發(fā)展。我國(guó)物流業(yè)起步較晚,目前還處于人工管理或半自動(dòng)管理狀態(tài),效率不高。隨著物流業(yè)的發(fā)展,倉(cāng)儲(chǔ)規(guī)模不斷擴(kuò)大,貨物種類(lèi)不斷增多,帶來(lái)一系列連鎖反應(yīng),導(dǎo)致傳統(tǒng)的物流業(yè)日漸吃力。
嵌入式擴(kuò)展技術(shù)的發(fā)展可為物流MA控制領(lǐng)域提供強(qiáng)大靈活的解決方案。本文研究方案將嵌入式擴(kuò)展技術(shù)系統(tǒng)應(yīng)用于物流控制領(lǐng)域,采用嵌入式處理器以及豐富的外圍擴(kuò)展接口,配以液晶觸摸屏,實(shí)現(xiàn)了人機(jī)交互。結(jié)合條碼采集器,實(shí)現(xiàn)實(shí)時(shí)采集數(shù)據(jù)信息,通過(guò)無(wú)線(xiàn)傳輸實(shí)時(shí)連接服務(wù)器數(shù)據(jù)庫(kù);實(shí)時(shí)盤(pán)點(diǎn)貨物、出入庫(kù);實(shí)時(shí)查詢(xún)信息及時(shí)調(diào)度;還具有存儲(chǔ)語(yǔ)音數(shù)據(jù)、簡(jiǎn)便快捷、避免人為錯(cuò)誤、精簡(jiǎn)人力、管理庫(kù)存、縮短繁雜程序、節(jié)省時(shí)間、提高服務(wù)質(zhì)量等特點(diǎn)。
1 系統(tǒng)硬件設(shè)計(jì)
1.1 硬件系統(tǒng)組成
目標(biāo)硬件平臺(tái)主要分3部分:處理器核心、芯片內(nèi)的外圍電路、板級(jí)外圍電路。本系統(tǒng)主要包括ARM處理器、存儲(chǔ)器、條碼掃描儀、無(wú)線(xiàn)收發(fā)芯片、LCD顯示及觸摸屏。其結(jié)構(gòu)圖如圖1所示。
1.2 主要硬件的選型及電路設(shè)計(jì)
1.2.1 嵌入式處理器
本系統(tǒng)采用Samsung公司的S3C44BOX處理器,該處理器是專(zhuān)門(mén)為手持設(shè)備和一般應(yīng)用提供的高性?xún)r(jià)比微處理器 ,使用ARM7TDMI核,工作在66 MHz。該芯片含有非常豐富的片上資源,幾乎所有常用的芯片級(jí)總線(xiàn)結(jié)構(gòu)都有對(duì)應(yīng)的硬件控制器,外圍擴(kuò)展非常方便。
1.2.2 外部存儲(chǔ)器
為了滿(mǎn)足物流PDA的應(yīng)用需要,本系統(tǒng)采用Flash、SDRAM、NAND Falsh存儲(chǔ)器。
閃速存儲(chǔ)器(Flash Memory)的主要特點(diǎn)是掉電保存信息。它既有ROM的特點(diǎn),又有高存取速度,且易于擦除和重寫(xiě),功耗小。在系統(tǒng)中通常用于存放操作系統(tǒng)和程序代碼,以及一些在系統(tǒng)掉電后需要保存的用戶(hù)數(shù)據(jù)等[2]。系統(tǒng)上電或復(fù)位后從此獲得第一條指令并開(kāi)始執(zhí)行。本系統(tǒng)選用一片16 bit AM29LV160B線(xiàn)性Flash存儲(chǔ)器,單片存儲(chǔ)容量為2 MB。Flash與S3C44BOX通過(guò)一電阻與片選端nGCS0連接,外接上拉電阻;數(shù)據(jù)線(xiàn)與地址線(xiàn)分別相連;讀出寫(xiě)入端分別接nOE、nWE。
SDRAM具有存儲(chǔ)容量大、價(jià)格便宜、掉電不保存的特點(diǎn),本系統(tǒng)中主要用于存放運(yùn)行程序及數(shù)據(jù)堆棧等。本系統(tǒng)采用現(xiàn)代公司的57V系列HY57V641620,它是4 Banks×1 M×16 bit的SDRAM芯片,單片存儲(chǔ)容量為4組×16 M bti(8 MB)。為了滿(mǎn)足復(fù)雜物流數(shù)據(jù)信息系統(tǒng)的需求,充分發(fā)揮32位CPU的數(shù)據(jù)處理能力,系統(tǒng)用2塊8 ns的HY57V641620并聯(lián)組成32 bit SDRAM存儲(chǔ)器系統(tǒng)[3]。通過(guò)nSCS選通,再由nSRAS、nSCAS來(lái)分別選通行地址和列地址尋址。
NAND Flash價(jià)格便宜、存儲(chǔ)量大、性?xún)r(jià)比高,并且十分輕便、抗震性也好,適合用于做數(shù)碼產(chǎn)品。本文采用K9F2808U0B 16 M×8位存儲(chǔ)芯片,電壓范圍2.7 V~3.6 V,當(dāng)USB控制芯片處于SLAVE模式時(shí),就可以從PC機(jī)下載文件,存儲(chǔ)在NAND Flash中。當(dāng)盤(pán)點(diǎn)人員拿著PDA盤(pán)點(diǎn)時(shí),系統(tǒng)可直接調(diào)用存儲(chǔ)的數(shù)據(jù)文件,盤(pán)點(diǎn)人員清點(diǎn)完畢時(shí),也可以在NAND Flash中保留一份數(shù)據(jù),以供隨時(shí)查詢(xún),還可以保存語(yǔ)音數(shù)據(jù)。通過(guò)GPC15來(lái)選通NAND Flash,相應(yīng)的nOE、nWE 進(jìn)行讀寫(xiě)操作。各個(gè)存儲(chǔ)器與處理器的連接電路圖如圖2所示。
1.2.3 LCD液晶顯示及觸摸屏模塊
ARM處理器S3C44BOX包括LCD控制器,可支持灰度LCD和彩色LCD。本設(shè)計(jì)通過(guò)譯碼器選通2個(gè)74HC245分別來(lái)控制LCD像素輸出和控制信號(hào)。本文選用分辨率為320×240的TFT彩色3.9寸顯示器LQ039Q2DS54及ADS7843觸摸屏驅(qū)動(dòng)芯片。S3C44BOX通過(guò)端口PG模擬串行的SIO接口與用觸摸屏控制芯片ADS7843進(jìn)行數(shù)據(jù)傳輸,完成對(duì)觸摸屏觸摸位置坐標(biāo)的讀取。ADS7843主要完成電極電壓的切換,接觸點(diǎn)處電壓值的采集以及A/D轉(zhuǎn)換[4]。接口電路圖如圖3所示。
1.2.4 接口設(shè)計(jì)
?。?)RS232接口設(shè)計(jì)
由于S3C44BOX只有2通道UART,并沒(méi)有集成RS-232C接口,因此選用MAX202作為UART到RS-232C的電平轉(zhuǎn)換芯片,以便其與PC 機(jī)等其他設(shè)備進(jìn)行串行通信,獲取數(shù)據(jù)及語(yǔ)音信息,方便更新數(shù)據(jù)。選用9針的DB9頭,用到3條線(xiàn):GND、RXD、TXD。
?。?)JTAG接口
因?yàn)镾3C44BOX中集成了JTAG信號(hào),只需將信號(hào)線(xiàn)引出便可對(duì)設(shè)備進(jìn)行調(diào)試。
(3)音頻接口設(shè)計(jì)
為了存儲(chǔ)語(yǔ)音信息,選用Philips公司的UDA1314芯片完成聲音信號(hào)的模數(shù)轉(zhuǎn)換。該芯片在單片芯片上集成立體聲模數(shù)轉(zhuǎn)換器和數(shù)模轉(zhuǎn)換器,芯片的模數(shù)轉(zhuǎn)換部分包括可編程的增益放大器和數(shù)字自動(dòng)增益控制器,采用位元流轉(zhuǎn)換技術(shù)進(jìn)行信號(hào)處理。鑒于其低功耗、低電壓的特性,UDA1341TS非常適用于PDA等便攜式設(shè)備。
(4) USB接口設(shè)計(jì)
USB接口是一種成本低、占用空間小、接口規(guī)格統(tǒng)一、快速、雙向共享、即插即用的新一代標(biāo)準(zhǔn)接口總線(xiàn),為嵌入式系統(tǒng)設(shè)備廣泛應(yīng)用。本文采用的CH372芯片是一款USB總線(xiàn)的通用設(shè)備接口器件。在本地端具有8位數(shù)據(jù)總線(xiàn)和讀、寫(xiě)、片選控制線(xiàn)以及中斷輸出,可以方便地掛接到單片機(jī)的系統(tǒng)總線(xiàn)上。在計(jì)算機(jī)系統(tǒng)中,CH372的配套軟件提供了簡(jiǎn)潔易用的操作接口,與本地端的單片機(jī)通信就如同讀寫(xiě)文件。CH372內(nèi)置了USB通信中的底層協(xié)議,具有省事的內(nèi)置固件模式和靈活的外置固件模式。在內(nèi)置固件模式下,CH372自動(dòng)處理默認(rèn)端點(diǎn)O的所有事務(wù),本地端只負(fù)責(zé)數(shù)據(jù)交換,所以程序非常簡(jiǎn)潔。在外置固件模式下,由外部單片機(jī)根據(jù)需要自行處理各種USB請(qǐng)求,從而可以實(shí)現(xiàn)符合各種USB類(lèi)規(guī)范的設(shè)備[5]。
通過(guò)USB接口與帶USB接口的微型條碼掃描儀組合,就可以輕松的連接PDA,以采集物流貨物的數(shù)據(jù)。使物流數(shù)據(jù)采集變得輕松、快捷。接口設(shè)計(jì)電路圖如圖4所示。
1.2.5 無(wú)線(xiàn)通信模塊設(shè)計(jì)
選用NORDIC公司推出的一款帶2.4 GHz無(wú)線(xiàn)收發(fā)器nRF2401和增強(qiáng)型8051內(nèi)核的無(wú)線(xiàn)收發(fā)模塊。nRF24E1體積小、功耗低,是集成無(wú)線(xiàn)收發(fā)、8051、ADC以及其他外圍設(shè)備的高度集成芯片。它包含了125個(gè)頻點(diǎn),能夠?qū)崿F(xiàn)點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多點(diǎn)的無(wú)線(xiàn)通信,同時(shí)可采用改頻和跳頻來(lái)避免干擾。nRF24E1最大傳輸速率可達(dá)1 M/s,其最大發(fā)射功率為0 dBm,在比較理想環(huán)境中,其室內(nèi)傳輸距離可達(dá)30 m~40 m,室外傳輸距離可達(dá)100 m~200 m。電路圖如5所示。
從條碼掃描儀中獲取的數(shù)據(jù)經(jīng)過(guò)處理器傳到nRF2401,之后無(wú)線(xiàn)發(fā)送到AP(無(wú)線(xiàn)接入點(diǎn)),再通過(guò)AP傳到后臺(tái)計(jì)算機(jī)數(shù)據(jù)庫(kù),使現(xiàn)場(chǎng)與后臺(tái)數(shù)據(jù)相關(guān)連,獲取正確的實(shí)時(shí)數(shù)據(jù)。高效簡(jiǎn)便地實(shí)現(xiàn)物流清點(diǎn)、進(jìn)出庫(kù)以及貨源信息的統(tǒng)計(jì)查詢(xún)。
軟件設(shè)計(jì)
下位機(jī)的操作系統(tǒng)核心是S3C44BOX操作系統(tǒng),采用Linux內(nèi)核,通過(guò)Bootloader初始化硬件,引導(dǎo)內(nèi)核和文件系統(tǒng)來(lái)啟動(dòng)Linux系統(tǒng)。軟件設(shè)計(jì)如下:
?。?)引導(dǎo)加載程序Bootloader設(shè)計(jì)與實(shí)現(xiàn)。Bootloader是處理器復(fù)位后進(jìn)入操作系統(tǒng)之前執(zhí)行的第一段代碼,加載引導(dǎo)啟動(dòng)整個(gè)系統(tǒng)。分為2個(gè)階段,階段一主要是對(duì)CPU核和存儲(chǔ)器密切相關(guān)的處理以及初始化工作,這部分主要在Flash中。階段二主要實(shí)現(xiàn)一般流程及外圍擴(kuò)展的支持,可以精簡(jiǎn)不需要的驅(qū)動(dòng)程序,減少內(nèi)核運(yùn)行空間。
?。?)Linux內(nèi)核移植。通過(guò)修改內(nèi)核的啟動(dòng)代碼、處理器體系與結(jié)構(gòu)部分,對(duì)主寄存器進(jìn)行修改。通常需要由Bootloader設(shè)置的常見(jiàn)啟動(dòng)參數(shù)有:ATAG_CORE、ATAG_MEM、ATAG_CMDLINE、ATAG_RAMDISK、ATAG_INITRD等。通過(guò)arch/arm/makefile添加開(kāi)發(fā)板的編譯支持,生成內(nèi)核影像和模塊;通過(guò)cpu/mips/start.s修改初始化代碼和入口;通過(guò) board/myboard/lowlevel_init.s初始化硬件的匯編代碼;通過(guò)include/configs/drivers實(shí)現(xiàn)設(shè)備驅(qū)動(dòng)程序的修改[6]。
?。?)文件系統(tǒng)移植。用nfs作為根文件系統(tǒng)。
(4)應(yīng)用程序設(shè)計(jì)。通過(guò)Qt/Embeded設(shè)計(jì)開(kāi)發(fā)用戶(hù)圖形界面。
嵌入式移動(dòng)無(wú)線(xiàn)PDA終端的誕生改進(jìn)了物流盤(pán)點(diǎn)的繁雜程度和數(shù)據(jù)的實(shí)時(shí)性,使調(diào)度和管理更加精確。本文將條碼掃描儀與移動(dòng)PDA巧妙結(jié)合,實(shí)現(xiàn)了集數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)顯示、數(shù)據(jù)修改等功能于一體的移動(dòng)終端。本文與其他設(shè)備相比較,具有面向物流、簡(jiǎn)便、小巧的特性,功能強(qiáng)大,可以隨時(shí)隨地采集數(shù)據(jù)、傳輸數(shù)據(jù)、查詢(xún)數(shù)據(jù),還可以存儲(chǔ)語(yǔ)音數(shù)據(jù)等,使物流數(shù)據(jù)實(shí)時(shí)、調(diào)度及時(shí)、錯(cuò)誤減少、人力物力遞減。