嵌入式藍(lán)牙文件傳送方案的實(shí)現(xiàn)
當(dāng)所有發(fā)送任務(wù)建立完畢后,文件發(fā)送父進(jìn)程首先判斷所有文件發(fā)送子進(jìn)程是否都已經(jīng)退出,若是則進(jìn)入下一輪發(fā)送,否則將執(zhí)行阻塞操作,等待其他子進(jìn)程退出。
每個(gè)文件發(fā)送子進(jìn)程又將創(chuàng)建對(duì)象推送子進(jìn)程,該子進(jìn)程調(diào)用對(duì)象推送功能,完成文件向某一設(shè)備的發(fā)送。在等待推送過(guò)程中,同時(shí)啟用重發(fā)機(jī)制,判斷子進(jìn)程退出原因,若由于文件發(fā)送完畢或用戶(hù)拒絕接收而退出,則發(fā)送下一文件,若由于發(fā)生藍(lán)牙通道競(jìng)爭(zhēng)致使建立連接失敗而退出,則向設(shè)備重新發(fā)起連接,重新發(fā)起連接次數(shù)不超過(guò)5次。
5 網(wǎng)絡(luò)文件傳送實(shí)現(xiàn)
方案應(yīng)用個(gè)人區(qū)域網(wǎng)絡(luò)(PAN)技術(shù)成功建立了嵌入式系統(tǒng)與PC機(jī)之間基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信。PAN協(xié)議主要描述了藍(lán)牙網(wǎng)絡(luò)封裝協(xié)議(BNEP)的使用,并且提供了網(wǎng)絡(luò)訪(fǎng)問(wèn)點(diǎn)(NAP)服務(wù)和組網(wǎng)絡(luò)服務(wù)(GN)。BNEP 用于通過(guò)藍(lán)牙介質(zhì),傳輸通用聯(lián)網(wǎng)協(xié)議。BNEP將在藍(lán)牙協(xié)議與Ethernet間建立訪(fǎng)問(wèn)點(diǎn)作為網(wǎng)橋[5],使用 BNEP 包頭取代Ethernet包頭,BNEP 包頭和Ethernet凈荷最終被 L2CAP 封裝,并通過(guò)藍(lán)牙介質(zhì)發(fā)送。
在本方案中,采用網(wǎng)絡(luò)訪(fǎng)問(wèn)點(diǎn)的方式進(jìn)行組網(wǎng),網(wǎng)絡(luò)中PC機(jī)的角色為客戶(hù)端(PANU),而嵌入式系統(tǒng)為NAP,充當(dāng)服務(wù)器。首先使系統(tǒng)處于監(jiān)聽(tīng)狀態(tài),此時(shí),利用PC機(jī)的藍(lán)牙軟件,查詢(xún)嵌入式系統(tǒng)的NAP服務(wù),并向其發(fā)起組網(wǎng)連接請(qǐng)求,系統(tǒng)在監(jiān)聽(tīng)到連接請(qǐng)求后做出回應(yīng)。當(dāng)組網(wǎng)成功后,嵌入式系統(tǒng)將自動(dòng)分配給PC機(jī)IP地址,同時(shí)設(shè)置自身IP,此時(shí),只需將PC機(jī)的IP改為與嵌入式系統(tǒng)同一網(wǎng)段,PC機(jī)即可與系統(tǒng)在TCP/IP協(xié)議上通信,并通過(guò)FTP協(xié)議對(duì)嵌入式系統(tǒng)中的文件進(jìn)行訪(fǎng)問(wèn)和更新。
6 測(cè)試與分析
6.1 文件單點(diǎn)傳送測(cè)試
以嵌入式系統(tǒng)作為發(fā)送端,將帶有對(duì)象推送協(xié)議的手機(jī)作為接收端,對(duì)某1臺(tái)手機(jī)進(jìn)行5次文件發(fā)送,測(cè)試每次文件的傳送時(shí)間,并計(jì)算平均傳送速度,測(cè)試結(jié)果如表1。接收到的圖片均可在手機(jī)中正常顯示。結(jié)果表明,在傳送不同大小、不同格式圖片的情況下,系統(tǒng)單點(diǎn)傳送性能穩(wěn)定,最高速度可達(dá)19.7 kb/s,可滿(mǎn)足一般藍(lán)牙通信需求。
6.2 文件多點(diǎn)傳送測(cè)試
此部分主要測(cè)試文件多點(diǎn)傳送情況下建立連接可靠性和文件傳送時(shí)間。首先通過(guò)對(duì)比加入重發(fā)機(jī)制前后的建立連接成功率,說(shuō)明重發(fā)機(jī)制對(duì)提升多點(diǎn)傳送可靠性的重要作用。建立連接成功率計(jì)算方法如下:
建立連接成功率=(成功連接次數(shù)/(每組發(fā)送文件數(shù)×設(shè)備總數(shù)))×100%
測(cè)試未加入重發(fā)機(jī)制時(shí),測(cè)試系統(tǒng)與遠(yuǎn)程設(shè)備建立連接成功率。以手機(jī)作為接收終端,測(cè)試結(jié)果如圖5所示。
測(cè)試結(jié)果顯示,建立連接成功率隨設(shè)備數(shù)目增多而遞減。當(dāng)設(shè)備數(shù)為5時(shí),建立連接成功率僅為53.33%,不能滿(mǎn)足實(shí)際需要。但加入重發(fā)機(jī)制后,所有情況下建立連接成功率均達(dá)到100%,建立連接的可靠性得到明顯改善,可以滿(mǎn)足實(shí)際應(yīng)用的需要。
嵌入式系統(tǒng)向手機(jī)終端統(tǒng)一發(fā)送大小為200 KB的JPEG格式圖片,手機(jī)臺(tái)數(shù)由1臺(tái)逐步增加至5臺(tái)。測(cè)試結(jié)果如圖6所示。接收到圖片在5臺(tái)手機(jī)上均能正常顯示,說(shuō)明多點(diǎn)傳送穩(wěn)定可靠,未丟失數(shù)據(jù)。隨著手機(jī)臺(tái)數(shù)的增多,發(fā)送時(shí)間增長(zhǎng),說(shuō)明TDD技術(shù)對(duì)數(shù)據(jù)進(jìn)行了合理分組,并以時(shí)分復(fù)用方式進(jìn)行發(fā)送,傳輸穩(wěn)定可靠。在設(shè)備數(shù)增至5臺(tái)時(shí),其平均傳送速度約為58.8 kb/s,較單播平均傳送速度有較大提高。
6.3 網(wǎng)絡(luò)文件傳送測(cè)試
首先將嵌入式系統(tǒng)在piconet中設(shè)置為server,之后利用PC藍(lán)牙軟件向嵌入式系統(tǒng)發(fā)起連接,Windows任務(wù)欄中會(huì)出現(xiàn)正在連接的圖標(biāo)提示,連接成功后,嵌入式系統(tǒng)為PC分配的IP地址是169.254.204.174;將此IP改為和系統(tǒng)預(yù)設(shè)IP(169.254.0.3)同一網(wǎng)段,改后IP是169.254.0.4。之后用普通FTP軟件登錄系統(tǒng),即可訪(fǎng)問(wèn)系統(tǒng)文件。更新了大小為6.36 MB的JPEG格式圖片文件,共用時(shí)92 s,平均傳送速度達(dá)71.5 kb/s,圖片可在系統(tǒng)中正常顯示,證明系統(tǒng)與PC機(jī)網(wǎng)絡(luò)連接穩(wěn)定,傳輸準(zhǔn)確可靠。
本方案成本低、可靠性高、實(shí)時(shí)性好、功能擴(kuò)展靈活、可結(jié)合各種多媒體技術(shù),應(yīng)用于各種市政及公共場(chǎng)所的宣傳系統(tǒng),也可以用于商業(yè)廣告的發(fā)布,具有良好的應(yīng)用前景。
評(píng)論