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