本站小編為你精心準備了PB通訊在航空物流中的運用參考范文,愿這些范文能點燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
作者:白景斐單位:山西電力職業(yè)技術(shù)學院山西太原
1引言
隨著社會的發(fā)展,航空日益成為大眾所依賴的出行方式。而目前國內(nèi)航空物流仍采用附帶紙質(zhì)物流清單等人工記錄方式,降低了航空物流的工作效率以及準確性,滿足不了日益增長的應用需求,采用信息化管理顯得尤為重要。RFID技術(shù)的迅速發(fā)展對于改善航空物流管理有著積極的意義[1-2]。只要解決了RFID讀卡器與PowerBuilder之間的通信問題,在航空物流系統(tǒng)中,工作人員就可以隨時通過RFID手持讀卡器上傳數(shù)據(jù),從而加快物流速度,提高機場工作人員的工作效率,同時提高了航空物流的安全性。
2系統(tǒng)總設(shè)計
本文設(shè)計的航空物流數(shù)據(jù)采集處理系統(tǒng)(以下簡稱RFID—pb系統(tǒng))主要由電子鉛封、RFID讀卡器和數(shù)據(jù)庫管理系統(tǒng)等組成,可分為硬件部分和軟件部分。系統(tǒng)結(jié)構(gòu)如圖1所示。2.1RFID—PB系統(tǒng)硬件部分系統(tǒng)硬件部分嵌入式系統(tǒng)的CPU選用Samsung公司的一款ARM1176JZF-SS3C6410芯片,該芯片擁有嵌入式ARM11內(nèi)核,采用五級流水線和哈佛結(jié)構(gòu),其穩(wěn)定主頻533MHz,最高主頻可達667Mhz;S3C6410集成了UART、串行外圍接口電路(SPI)、SD卡接口、IIS、IIC總線接口等許多外設(shè)接口,還有多達64個中斷源的中斷控制器以及包含SROM、SRAM、NAND控制器的存儲控制器等;具有高性能、低功耗的特點,具有較大的存儲空間和較強的計算能力。
系統(tǒng)的顯示屏采用3.5寸24位的真彩觸摸TFT-LCD。存儲外設(shè)為SD卡、24C64和Nandflash。24C64用于保存觸摸屏校正參數(shù),系統(tǒng)啟動時S3C6410自動從24C64中讀取校正參數(shù),避免每次開機需校正屏幕;LINUX的內(nèi)核、Uboot、文件系統(tǒng)和開機圖片都燒寫到nandflash中;SD卡用于儲存從電子鉛封中讀取的數(shù)據(jù),漢字庫與圖標等文件也存放在SD卡中。射頻芯片采用NXP公司的CLRC632,SPI通信接口,6410通過設(shè)置RC632的寄存器實現(xiàn)射頻操作。系統(tǒng)采用直接匹配的方式將RC632與天線連接,天線匹配電路與天線進行阻抗匹配,以增大讀卡距離、獲得最大的功率傳輸,同時避免了阻抗失配可能對電路造成的損害[3],天線的可操作距離為5~10cm。設(shè)計過程中系統(tǒng)硬件部分通過串口1與上位機PB數(shù)據(jù)庫進行數(shù)據(jù)通信2.2RFID—PB系統(tǒng)軟件部分系統(tǒng)的上位機數(shù)據(jù)庫部分選用微軟SQLServer2008為后臺數(shù)據(jù)庫管理平臺,PowerBuilder11.5為數(shù)據(jù)庫前端開發(fā)工具。
SQLServer2008是微軟公司推出的高性能的關(guān)系數(shù)據(jù)庫管理系統(tǒng),是迄今為止的最全面、最強大的SQLSERVER版本。它滿足了數(shù)據(jù)爆炸和下一代數(shù)據(jù)驅(qū)動應用程序的需求,并支持數(shù)據(jù)平臺愿景。
PowerBuilder11是美國SYBASE公司2007年推出的第四代高級編程語言(4GL)的快速應用開發(fā)工具(RAD),包含一個直觀的圖形界面和可擴展的面向?qū)ο笳Z言PowerScript,它為用戶提供了一個更加完善的可視化開發(fā)環(huán)境,支持多種關(guān)系數(shù)據(jù)庫管理系統(tǒng)和多種平臺的開發(fā)環(huán)境。不但能夠幫助開發(fā)人員靈活地部署應用程序,還可以實現(xiàn)更簡化的編碼和更短的開發(fā)周期,提供更高效的開發(fā)效率。PowerBuilder11.5開發(fā)應用程序可分為:系統(tǒng)分析和系統(tǒng)設(shè)計;系統(tǒng)開發(fā);調(diào)試與測試;生成可執(zhí)行文件。
系統(tǒng)軟件部分的主要目標是構(gòu)建一個基于RFID技術(shù)和數(shù)據(jù)庫的新型航空物流數(shù)據(jù)采集處理平臺,結(jié)合航空物流業(yè)務的數(shù)據(jù)特征,秉承現(xiàn)代物流及供應鏈的管理思想和思路,借鑒物流工作的特性,從倉儲、收發(fā)貨物、地勤運輸、航班運輸、鉛封追蹤等諸多環(huán)節(jié)進行分析、調(diào)研和整合,應用C/S與B/S結(jié)構(gòu)結(jié)合的設(shè)計理念進行系統(tǒng)構(gòu)架。
3串行通信
3.1串行通信協(xié)議
串行通信協(xié)議分為異步協(xié)議和同步協(xié)議兩種。同步協(xié)議又分為面向字符的同步協(xié)議和面向比特的同步協(xié)議。系統(tǒng)的串口采用面向比特的同步協(xié)議與RFID讀卡器進行通信[4]。面向比特的同步協(xié)議指所傳輸?shù)囊粠瑪?shù)據(jù)可以是任意位的,并且這些幀根據(jù)約定的位組合模式,而不是根據(jù)特定字符來標志幀的開始和幀的結(jié)束,因此被稱作面向比特的協(xié)議。該協(xié)議的一般幀格式如圖2所示:
3.2相關(guān)代碼
RFID中存儲的數(shù)據(jù)信息需要通過串口與讀寫器進行數(shù)據(jù)通信,因此解決好串口的通信問題很關(guān)鍵,這樣才可以通過串口從RFID讀卡器讀取數(shù)據(jù)并與后端數(shù)據(jù)庫進行通信,從而進行數(shù)據(jù)信息處理。由于PowerBuilder不直接支持串口通信編程,需要用到PowerBuilder中的MSComm控件來實現(xiàn)串口的通信[5-6]。
MSComm控件,即MicrosoftCommunicationControl,是微軟為簡化Windows下串行通信編程而提供的ActiveX控件。它提供了一系列標準通信命令的使用接口,利用它可以建立與串口的連接。MSComm控件是針對Modem的開發(fā),事件觸發(fā)僅包含字符長度觸發(fā)和錯誤事件觸發(fā)。用戶可以通過pb下面列出本系統(tǒng)PowerBuilder中與Comm控件有關(guān)的代碼:
(1)CommPort:用于設(shè)置或者得到通信端口號,假設(shè)Comm控件名為ole_1,則相關(guān)代碼如下:mPort=1//設(shè)置串口1通信Port=mPort//獲得通信口
(2)PortOpen:用于設(shè)置或者獲得串口狀態(tài):Ole_1.PortOpen=true//打開串口
(3)Settings:用于設(shè)置或者獲得通信參數(shù)(波特率、奇偶校驗等),相關(guān)代碼示例如下:Ole_1.Setting=“9600,N,8,1”//設(shè)置波特率為9600,無奇偶校驗,8個數(shù)據(jù)位,1個停止位
(4)Input:用于從串口獲得數(shù)據(jù),代碼示例如下:AnyLa_input//定義輸入變量La_input=Ole_1.Input//從串口輸入到La_input中(必須是Any數(shù)據(jù)類型)
(5)Output:用于從串口輸出數(shù)據(jù),代碼如下:AnyLa_output//定義輸出變量Ole_1.Output=La_output//從La_output中的數(shù)據(jù)通過串口輸出(必須是Any數(shù)據(jù)類型)
(6)InputMode:表示數(shù)據(jù)模式;0代表文本模式,1代表二進制模式。Ole_1.InputMode=1
(7)InputLen:用于設(shè)置從串口讀取字符的個數(shù),若值為0則說明全部輸入緩沖區(qū)的內(nèi)容。Ole_1.InputLen=0
(8)Rthreshold:用于設(shè)置當收到多少個字符時觸發(fā)MSComm事件。m.Rthreshold=8//允許接收事件,每接收8個字符觸發(fā)OnComm事件
(9)InbufferSize:用于設(shè)置輸入緩沖區(qū)的大小。Ole_1.InbufferSize=1024//設(shè)置接收緩沖區(qū)大小
此外,Comm控件相關(guān)的屬性還有:
(1)Sthreshold:用于設(shè)置當發(fā)送緩沖區(qū)發(fā)送多少字符時觸發(fā)MSComm事件。
(2)OutbufferSize:用于設(shè)置輸出緩沖區(qū)大小。
4結(jié)果
下面給出RFID讀卡器對貨物的電子鉛封進行數(shù)據(jù)寫入與讀出的實例。先寫入內(nèi)容11220003,然后再把寫入的內(nèi)容讀出。由硬件部分通過串口將內(nèi)容讀出到數(shù)據(jù)庫中,同時與11220003相對應的其他信息在PowerBuilder建立的界面中顯示如下:
5結(jié)束語
通過引入Active控件MCSComm,將上位機與下位機相結(jié)合,完成對航空物流管理系統(tǒng)的開發(fā)。通過改變MSComm控件的屬性設(shè)置和編寫相應的初始化程序,就能在Windows環(huán)境下實現(xiàn)用戶的串行通信要求,從而達到與RFID讀卡器進行數(shù)據(jù)通信的目的。該系統(tǒng)為RFID技術(shù)提供航空物流業(yè)的成功解決方案,以信息化手段為航空物流工作有組織、有次序、高效率的進行提供技術(shù)保證[8]。對于航空物流的發(fā)展具有一定的參考價值和應用前景,為擁有類似需求的行業(yè)和領(lǐng)域提供了相當不錯的借鑒范例。