本發(fā)明屬于無線充電
技術領域:
,特別涉及一種基于低功耗藍牙的虛連接方法及利用該方法的無線充電協(xié)議。
背景技術:
:在無線電能傳輸方案和協(xié)議實現(xiàn)中,電能發(fā)送單元(ptu)和電能接收單元(pru)一般使用低功耗藍牙(ble)技術來傳輸信息。ptu和pru組成一個標準的藍牙微網(wǎng),其中ptu是主設備,pru是從設備。在幾乎所有ble藍牙微網(wǎng)實現(xiàn)中,最多允許8個從設備同時與主設備通訊(低功耗藍牙5.0版本起,不再限定一個藍牙微網(wǎng)中從設備的數(shù)目必須低于8,但是幾乎所有的低功耗藍牙協(xié)議實現(xiàn)中,均保留了這一限制)。所以應用低功耗藍牙技術實現(xiàn)的無線充電協(xié)議也有這樣的限制,即ptu最多能同時和8個pru設備通訊并給它們充電。與此同時,如果ptu需要集成從角色并提供一個管理接口(即允許其他主設備連接此ptu),則能最多同時充電的pru數(shù)目降為7。如果使用場景是十幾個甚至幾十個ble設備需要同時充電,或者ptu還需要集成從角色用以開放管理接口,那么應用了幾乎所有的現(xiàn)有ble實現(xiàn)的標準無線充電協(xié)議并不能滿足要求。技術實現(xiàn)要素:為了克服上述現(xiàn)有技術的缺點,本發(fā)明的目的在于提供一種基于低功耗藍牙的虛連接方法及利用該方法的無線充電協(xié)議,可滿足一臺ptu同時為多臺pru充電的要求。為了實現(xiàn)上述目的,本發(fā)明采用的技術方案是:一種基于低功耗藍牙的虛連接方法,所述虛連接使用服務端/客戶端模式,在一臺ble設備上設置多個服務端和多個客戶端,一個服務端與其它ble設備的客戶端建立虛連接,一個虛連接由四元組標識:服務端藍牙地址、服務端端口、客戶端藍牙地址以及客戶端端口,在通訊流程中,所述客戶端發(fā)起連接,所述服務端等待并接受連接,所述服務端設定有監(jiān)聽端口,所述客戶端發(fā)起連接時,指定要連接的服務端的監(jiān)聽端口為目的端口,指定要連接的服務端的藍牙地址為目的藍牙地址,服務端接收到連接請求時,檢測指定的目的藍牙地址是否與自身的藍牙地址匹配,如匹配才可接受連接請求。所述服務端接受連接請求并發(fā)送確認信息以確認連接成功,客戶端接收到連接確認信息,此時服務端和客戶端能夠發(fā)送和接收應用層數(shù)據(jù)。無論服務端還是客戶端,若沒有需要傳輸?shù)膽脤訑?shù)據(jù),則會發(fā)送保持存活信號;無論服務端還是客戶端,均可發(fā)起斷開連接的請求,另一方需要確認斷開連接。所述虛連接的協(xié)議棧建立在標準低功耗藍牙協(xié)議棧之上,由四部分組成:核心協(xié)議棧、廣播管理單元、掃描管理單元和應用接口層,其中,核心協(xié)議棧用于管理和維護虛連接的連接狀態(tài),管理虛連接數(shù)據(jù)包隊列以及對應用層數(shù)據(jù)進行分片和重組;廣播管理單元用于管理各個虛連接的待發(fā)送數(shù)據(jù)包,使用分時技術將各個虛連接的待發(fā)送數(shù)據(jù)包發(fā)送出去;掃描管理單元用于連接標準低功耗藍牙協(xié)議棧的掃描接口并將接收到的虛連接數(shù)據(jù)包輸入到核心協(xié)議棧;應用接口層提供編程接口供應用層程序使用虛連接進行通訊。所述虛連接中使用了序號和確認機制以提高傳輸穩(wěn)定性并使數(shù)據(jù)包保持順序。即,在虛連接幀中含有seq及ack兩項,seq表示當前幀是幀發(fā)送方發(fā)出的第幾個幀,ack表示幀發(fā)送方已經(jīng)接收到了對方多少幀,在本方接收到幀時,保存幀中的ack,這表示對方接收了多少本方發(fā)出的幀;在本方發(fā)出的下一個幀中,seq=本方保存的對方目前已經(jīng)接收的幀數(shù)+1,從而保證雙方發(fā)出的數(shù)據(jù)包不會亂序,并且能夠應對數(shù)據(jù)包丟失的情況。所述ble設備通過分時技術發(fā)送多個不同的廣播包,每個廣播包面向一個虛連接的終端ble設備。在虛連接協(xié)議中,包括兩種消息:控制消息和數(shù)據(jù)消息,控制消息在虛連接協(xié)議棧內(nèi)部自動處理;數(shù)據(jù)消息用來傳輸應用層數(shù)據(jù),所有的消息都以虛連接幀的形式發(fā)送,幀是存放在ble廣告數(shù)據(jù)包的制造商區(qū)域并隨廣告數(shù)據(jù)包發(fā)送的,為了不影響正常的ble連接通訊,協(xié)議中使用無連接模式的廣告數(shù)據(jù)包來發(fā)送虛連接幀。本發(fā)明還提供了利用所述基于低功耗藍牙的虛連接方法的無線充電協(xié)議,在電能發(fā)送單元(ptu)上設立虛連接服務端,在電能接收單元(pru)上設立虛連接客戶端,使得多個pru能夠同時與ptu建立虛連接并交換a4wp協(xié)議數(shù)據(jù),實現(xiàn)無線充電。同時,ptu與pru仍然可以建立低功耗藍牙的標準連接,然后相互交換a4wp協(xié)議數(shù)據(jù),兩種連接模式可以同時使用。與現(xiàn)有技術相比,使用本發(fā)明虛連接后,一個ble設備可以同時和多于8個的ble設備進行雙向通訊,并且原來的ble連接通訊幾乎不受影響。同時使用虛連接與ble標準連接,與一臺ble設備上能同時進行雙向通訊的ble設備數(shù)目可以很容易的提高到十幾個甚至幾十個。引入虛連接并擴展a4wp無線充電協(xié)議后,可以同時充電的pru數(shù)目能提高到十幾個甚至幾十個。并且ptu并不必須限定是ble主設備,pru并不必須限定是ble從設備。附圖說明圖1是本發(fā)明虛連接服務端架構圖。圖2是本發(fā)明虛連接客戶端架構圖。圖3是本發(fā)明虛連接通訊流程示意圖。圖4是本發(fā)明虛連接服務端狀態(tài)機流程示意圖。圖5是本發(fā)明虛連接客戶端狀態(tài)機流程示意圖。圖6是ble連接和虛連接共存的連接過程示意圖。圖7是ble連接和虛連接共存的消息通訊過程示意圖。圖8是標準a4wp無線充電協(xié)議中的通訊流程示意圖。圖9是標準ptu與具有虛連接擴展的pru通訊流程示意圖。圖10是具有虛連接擴展的ptu與標準pru的通訊流程示意圖。圖11是具有虛連接擴展的ptu與具有虛連接擴展的pru通訊流程示意圖。具體實施方式下面結合附圖和實施例詳細說明本發(fā)明的實施方式。本發(fā)明提出了一種基于ble廣播和掃描技術,以使得兩個ble設備能夠雙向通訊的虛連接技術。如果僅僅使用廣播和掃描技術,采用無連接的模式來交換信息的話,很容易出現(xiàn)數(shù)據(jù)包丟失和亂序。為了提高傳輸穩(wěn)定性、并使數(shù)據(jù)包保持順序,協(xié)議中使用了序號和確認機制。通過此協(xié)議實現(xiàn)的通訊連接被稱為虛連接(以和標準的ble連接區(qū)分)。顯然,通過虛連接技術,并且使用分時技術的話,一個ble設備能夠同時和多個ble設備通訊。使用多個虛連接的ble設備需要通過分時技術發(fā)送多個不同的廣播包,每個廣播包面向一個虛連接的終端ble設備。實際上,如果一個ble設備只使用了一個虛連接,并且此設備是從設備的話,此設備也可能需要發(fā)送兩種廣播,一種廣播被虛連接使用;另一種廣播用來廣告此設備原來的服務。顯然,相比標準的ble連接,虛連接的帶寬會低很多,并且數(shù)據(jù)包傳輸時間也長很多。然后虛連接與標準的ble連接可以共存于同一ble設備上,而不管此ble設備是主設備或者從設備,并且?guī)缀醪挥绊憳藴蔮le連接的傳輸帶寬和速度。參照圖1和圖2,虛連接協(xié)議棧由四部分組成:核心協(xié)議棧、廣播管理單元、掃描管理單元、和應用接口層。虛連接協(xié)議棧建立在標準低功耗藍牙協(xié)議棧之上。廣播管理單元的作用是發(fā)送不同虛連接的數(shù)據(jù)包;掃描管理單元的作用是連接系統(tǒng)的掃描接口并將虛連接數(shù)據(jù)包輸入到核心協(xié)議棧;應用接口層提供了實用的編程接口供應用層程序使用虛連接進行通訊。虛連接使用服務端/客戶端模式,并且一臺ble設備上上可存在多個服務端和多個客戶端。一個虛連接由四元組標識:服務端藍牙地址,服務端端口,客戶端藍牙地址,客戶端端口。參照圖3,一個典型的虛連接通訊流程如下所示:1.啟動服務端,設定監(jiān)聽端口。2.啟動客戶端,指定本地端口。3.客戶端發(fā)起連接請求,并指定要連接的服務端的監(jiān)聽端口為目的端口。作為可選項,客戶端可以指定服務端的藍牙地址為目的藍牙地址,若指定了目的藍牙地址,服務端在接收到連接請求時需要檢測指定的目的藍牙地址是否與自身的藍牙地址匹配,若不匹配則不能接受連接請求。4.如果連接請求中的目的藍牙地址和目的端口與服務端相符,則服務端接受連接請求并發(fā)送確認信息以確認連接成功。此時服務端可以發(fā)送和接收應用層數(shù)據(jù)。5.客戶端接收到連接確認信息。此時客戶端可以發(fā)送和接收應用層數(shù)據(jù)。6.無論服務端還是客戶端,若沒有需要傳輸?shù)膽脤訑?shù)據(jù),會發(fā)送保持存活信號,7.無論服務端還是客戶端,均可以發(fā)起斷開連接的請求,另一方需要確認斷開連接。即,連接可由任一方關閉。在虛連接協(xié)議中,有兩種消息:控制消息和數(shù)據(jù)消息??刂葡⒃谔撨B接協(xié)議棧內(nèi)部自動處理;數(shù)據(jù)消息用來傳輸應用層數(shù)據(jù)。所有的消息都以虛連接幀的形式發(fā)送,較大的消息可能需要連續(xù)多個幀來發(fā)送,這些幀稱為分片。參照表1,幀是存放在ble廣告數(shù)據(jù)包的制造商區(qū)域并隨廣告數(shù)據(jù)包發(fā)送的。為了不影響正常的ble連接通訊,協(xié)議中使用無連接模式的廣告數(shù)據(jù)包來發(fā)送虛連接幀。表1幀/分片格式lenmorectrlmarksessionidseqackpayloadien:本幀/分片的長度more:是否還有更多的分片ctrl:標識本條消息是控制消息還是數(shù)據(jù)消息mark:保留sesslonid:標識已經(jīng)建立的偽連接seq:本幀/分片的序號ack:多少幀/分片已經(jīng)被確認了payload:負載數(shù)據(jù)虛連接協(xié)議中使用的控制消息如表2所示:表2虛連接協(xié)議中使用的控制消息pc_ctrl_request_conn發(fā)起偽連接請求pc_ctrl_confirm_conn接收并確認偽連接pc_ctrl_reject_conn拒絕偽連接請求pc_ctrl_keep_alive保持存活pc_ctrl_clear_queue清除未使用的數(shù)據(jù)分片pc_ctrl_request_disconn關閉偽連接pc_ctrl_confirm_disconn確認關閉偽連接虛連接協(xié)議中使用狀態(tài)機來保持服務端和客戶端的狀態(tài)。簡化的狀態(tài)機流程如圖4和圖5所示。使用虛連接后,一個ble設備可以同時和多于8個的ble設備進行雙向通訊,并且原來的ble連接通訊幾乎不受影響。同時使用虛連接與ble標準連接,與一臺ble設備上能同時進行雙向通訊的ble設備數(shù)目可以很容易的提高到十幾個甚至幾十個。理論上,能支持的最多同時雙向通訊設備數(shù)目只限定于ble帶寬。然后實際場景中,必須要考慮到環(huán)境因素(例如環(huán)境中有太多的無線信號)。同時,隨著ble設備上虛連接數(shù)目的增加,處理負載、能量消耗、及分時技術帶來的時間延誤都會增加,這些因素會影響虛連接通訊的可靠性。強烈建議在實際場景中進行實測。參照圖6,本發(fā)明相關的一個實驗中,涉及到5個設備,分別是m,s1,s2,s3,和b。其中m是主設備,并且是虛連接服務端;s1是從設備;s2和s3均是從設備,并且均是虛連接客戶端;b是另外一個藍牙微網(wǎng)的主設備,并且是虛連接客戶端。各設備啟動后,m向s1,s2,和s3發(fā)起ble連接,同時s2,s3,和b向m發(fā)起虛連接請求。m向s2,s3,和b確認虛連接。ble連接和虛連接建立后,均可雙向傳輸消息。參照圖7,ble連接內(nèi)的數(shù)據(jù)通訊使用藍牙數(shù)據(jù)通道,虛連接內(nèi)的數(shù)據(jù)通訊使用藍牙廣播通道。(請注意,虛連接的建立會比ble連接慢十幾毫秒~幾十毫秒,這與虛連接中掃描和廣播的調(diào)度周期有關)。無論ble連接還是虛連接,完成數(shù)據(jù)傳輸后,連接任一方均可發(fā)起關閉連接。其他連接內(nèi)的通訊不受影響。采用上述方法,引入虛連接并擴展a4wp無線充電協(xié)議后,可以同時充電的pru數(shù)目能提高到十幾個甚至幾十個。并且ptu并不必須限定是ble主設備,pru并不必須限定是ble從設備。然而為了與標準的a4wp協(xié)議兼容,這些限定被保留。圖8為a4wp無線充電中標準ptu與標準pru的通訊流程。ptu收到pru的ble廣告后發(fā)起連接。ble連接建立后,ptu和pru相互交換靜態(tài)和動態(tài)參數(shù),若條件允許,ptu命令pru使能充電。期間pru一直向ptu發(fā)送信息報告或者告警。所有通訊在標準ble連接中完成。圖9為標準ptu與具有虛連接擴展的pru的通訊流程。ptu收到pru的ble廣告,此廣告攜帶有額外信息表明pru試圖連接ptu上的虛連接服務端。由于標準ptu不具有虛連接擴展,所以ptu會忽略上述廣告中的連接請求并向pru發(fā)起標準ble連接。標準ble連接建立后,pru會關閉虛連接擴展,此后pru與ptu的所有通訊均在標準ble連接中完成。圖10為具有虛連接擴展的ptu與標準pru的通訊流程。ptu收到pru的ble廣告,此廣告不含有任何虛連接信息,ptu向pru發(fā)起ble連接。通訊流程與圖6中所示一樣。圖11為具有虛連接擴展的ptu與具有虛連接擴展的pru的通訊流程。ptu同時也是虛連接服務端,ptu收到pru的ble廣告,此廣告攜帶有額外信息表明pru試圖連接ptu上的虛連接服務端。ptu接收并確認此虛連接請求,隨后pru會接收到ptu的連接確認,至此虛連接完全建立,ptu與pru的所有信息通訊均在虛連接中完成。當前第1頁12