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