TW202344078A - 自行車電子系統中的通訊方法 - Google Patents

自行車電子系統中的通訊方法 Download PDF

Info

Publication number
TW202344078A
TW202344078A TW112107698A TW112107698A TW202344078A TW 202344078 A TW202344078 A TW 202344078A TW 112107698 A TW112107698 A TW 112107698A TW 112107698 A TW112107698 A TW 112107698A TW 202344078 A TW202344078 A TW 202344078A
Authority
TW
Taiwan
Prior art keywords
payload
component
ble
basic
attributable
Prior art date
Application number
TW112107698A
Other languages
English (en)
Inventor
安德瑞亞 蒙多
費迪里可 麥格里歐蘭薩
安東尼歐 利索
Original Assignee
義大利商坎帕克諾羅公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 義大利商坎帕克諾羅公司 filed Critical 義大利商坎帕克諾羅公司
Publication of TW202344078A publication Critical patent/TW202344078A/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62MRIDER PROPULSION OF WHEELED VEHICLES OR SLEDGES; POWERED PROPULSION OF SLEDGES OR SINGLE-TRACK CYCLES; TRANSMISSIONS SPECIALLY ADAPTED FOR SUCH VEHICLES
    • B62M25/00Actuators for gearing speed-change mechanisms specially adapted for cycles
    • B62M25/08Actuators for gearing speed-change mechanisms specially adapted for cycles with electrical or fluid transmitting systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J45/00Electrical equipment arrangements specially adapted for use as accessories on cycles, not otherwise provided for
    • B62J45/20Cycle computers as cycle accessories
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J50/00Arrangements specially adapted for use on cycles not provided for in main groups B62J1/00 - B62J45/00
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62JCYCLE SADDLES OR SEATS; AUXILIARY DEVICES OR ACCESSORIES SPECIALLY ADAPTED TO CYCLES AND NOT OTHERWISE PROVIDED FOR, e.g. ARTICLE CARRIERS OR CYCLE PROTECTORS
    • B62J50/00Arrangements specially adapted for use on cycles not provided for in main groups B62J1/00 - B62J45/00
    • B62J50/20Information-providing devices
    • B62J50/21Information-providing devices intended to provide information to rider or passenger
    • B62J50/22Information-providing devices intended to provide information to rider or passenger electronic, e.g. displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • H04W80/12Application layer protocols, e.g. WAP [Wireless Application Protocol]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/16Gateway arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/02Inter-networking arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一種應用於自行車電子系統的部件中的傳輸方法,該系統包括至少一個第二接收部件,每個系統部件均具有零個或多個能夠歸屬於該部件的資訊片段並且具有用於系統內的通訊的候選位址,每個該可歸屬資訊片段包括辨識符,該辨識符在自行車電子系統中是唯一的,該方法包括以下步驟: - 形成有效載荷(250),其中該形成有效載荷的步驟包括: -- 形成複數個基本有效載荷(260),每個基本有效載荷至少包含該可歸屬資訊片段中的相應一個的唯一辨識符,以及 -- 將該複數個基本有效載荷(260)一起組合成有效載荷(250),以及 - 將有效載荷傳輸到該至少一個接收部件,作為藍芽低功耗®網路架構的GATT伺服器的服務或BLE服務的特性的值。

Description

自行車電子系統中的通訊方法
本文公開的主題整體上涉及自行車電子系統中的通訊方法。在本說明書和所附申請專利範圍中,除非另有說明,否則術語「通訊」寬泛地涵蓋傳輸、接收和收發,即涵蓋單向通訊和雙向通訊。
本文公開的主題還涉及與所述方法相關的自行車電子部件、自行車電子系統、電腦程式和電腦可讀取媒體。
特別地,本文公開的主題涉及自行車電子系統中的所述態樣,其中在系統部件中的至少一些系統部件之間形成至少一個藍芽低功耗®(Bluetooth Low Energy®,下文中簡稱為BLE)無線網路。
現代自行車有時設有專用於騎行的一件或多件裝備或電子設備。在本說明書和所附申請專利範圍中,表述「電子設備」在廣泛含義上使用,以涵蓋電子設備及/或機電設備及/或電液壓設備及/或電氣動設備。
而且,通用電子設備可配置成與騎行專用電子設備互動。在本說明書和所附申請專利範圍中,表述「自行車電子系統」意指騎行專用設備或裝備和被配置成與騎行專用設備互動的通用設備的元件,在本說明書和所附申請專利範圍中,所述專用設備或裝備和通用設備統稱為「電子設備」或「系統部件」,也僅簡稱為「部件」或「設備」。
在自行車電子系統中,資訊、命令和通常地需要在系統部件之間交換的資料可能有若干個;除大量的資料之外,通訊的準確性及/或傳送速率有時也應當非常高,特別是在可能影響騎手安全的命令的情況下,僅作為示例,諸如是速度換擋命令或與騎手的健康相關的資料。
在自行車電子系統中,至少在一些系統部件之間存在使用無線通訊的趨勢。
一些已知的自行車電子系統使用藍芽低功耗®(Bluetooth Low Energy®)技術在系統部件之間進行無線通訊。BLE是無線網路通訊的技術標準,其具有低的能量消耗,BLE特別被提供用於小型的、離散的資料傳遞,例如感測器的狀態資訊、時鐘的當前時間等等。
隨著自行車電子系統的複雜性以及因此需要在系統中傳送的資料的量的增加,BLE的一般使用可能變得不是很靈活,並且不完全足夠。
本文所揭示的主題所依據的技術問題是避免所述缺陷,規定自行車電子系統中的通訊(傳輸及/或接收)方法,以及與所述方法相關的自行車電子部件、自行車電子系統、電腦程式和電腦可讀構件。
在一態樣,本文公開的主題在獨立請求項中限定。在從屬請求項中指出了優選特徵。
自行車系統
參考圖1,根據本文公開的主題的自行車電子系統10包括複數個部件11,該複數個部件11包括至少兩個部件,優選地至少三個部件,甚至更優選地三個以上的部件。在圖1中,以完全示意性的方式圖示任意數量的部件11,並且為了清晰起見,元件符號11僅與一些部件相關聯。
自行車B的一些裝備是可標識的,諸如:換擋系統,其通常包括與後輪的輪轂相關聯的後撥鏈器組件1101和可能的與五通管主軸(bottom bracket spindle)相關聯的撥鏈器組件1102;與前輪相關聯的制動器1103;與後輪相關聯的制動器1104;前懸架或減震器1105;後懸架或減震器1106;鞍座設定調節器1107;一或多個手動控制設備1108、1109、1110、1111(後者為可穿戴式),其旨在用於控制這些設備或裝備,特別是用於控制撥鏈器組件1101、1102;道路狀況及/或騎手C狀況的一些偵測器設備,例如心率監測器1130和在鞋處、在踏板處、在輪轂處、在曲柄臂處示出的設備1112-1119,這些設備可以包括例如加速計、節奏感測器、踩踏感測器;自行車電腦1120,其可以包括例如GPS、高度計、測斜器等;可能的中心控制器(central controller)1121,該中心控制器旨在用於自動或半自動地控制上文提及的設備或裝備;智慧手機1131、平板電腦1132、電腦1133、電池充電器1134、智慧手錶1135。為簡潔起見,術語「手動」在下文中有時會被省略。自行車電子系統10的部件仍然可以包括其它設備,如僅作為示例的照明系統、防盜設備、智慧手錶等。
可以理解,系統10的一些部件11是騎行專用電子設備(例如1101-1120),而一些部件11是通用電子設備(例如1130-1135,但也包括通用衛星導航儀、高度計、測斜器、加速計等),這些通用電子設備可以被配置成與一或多個騎行專用電子設備1101-1120互動。
從另一方面看,可以理解,在系統10的部件11中,一些部件是以固定方式、以穩定方式或以可移除方式機械地連接到自行車B的電子設備;一些部件是由騎手C攜帶的電子設備(例如1110-1113、1130、1135);一些部件(例如1132-1134)是被提供用於在自行車B不動且不使用時與自行車電子系統10的其它部件互動的電子設備。
後一種設備可以例如包括:由騎手C攜帶的電子設備,但處於關機或待機狀態,或者在任何情況下騎手在騎自行車時不主動使用的電子設備;留在車庫中的電子設備,例如電池充電器1134或電腦1133或平板電腦1132,其中待下載行駛資料或者從該電子設備下載用於系統10的其它部件11的更新;機械車間、經銷商、測試員等的電子設備;在跟隨騎手的旗車(flagcar)上攜帶或由行駛同伴攜帶的電子設備等。
整體上,系統10的一或多個部件11與系統10的一或多個其它部件11互動是必要的或可取的。
為此目的,系統10的至少一些部件11至少暫時地連接在一或多個通訊網路中。在本說明書和所附申請專利範圍中,術語「通訊網路」或簡稱「網路」通常意在指示一組電子設備(也稱為「節點」),所述一組電子設備被穩定地或暫時地並且利用有線鏈路或利用無線鏈路實體地連接,使得該組之每一者節點能夠直接或間接地與該組之每一者其它節點交換資訊;意在涵蓋僅兩個設備或節點之間的鏈路;不一定意指邏輯拓撲與物理拓撲相同,並且/或者網路中的設備或節點之間的通訊協定是單個協定;也可以意指如上文限定的網路的特定子集(即,子網路)。在本說明書和所附申請專利範圍中,術語「物理拓撲」意指設備的和傳輸媒體或鏈路的物理佈置;術語「邏輯拓撲」意指網路部件加入傳輸媒體以發送資料的方式。在本說明書和所附申請專利範圍中,術語「連接」被用於指示可以在其上進行通訊的鏈路。
並非系統10的所有部件11必然總是存在、總是開啟及/或總是網路連接。每個鏈路和每個網路連接可以是永久的或臨時的。整體上,動態網路是這樣處理的。
系統10的部件11之間的網路的物理拓撲一般可以是任意一種,並且一般可以支援若干拓撲的一或多個邏輯網路。
系統10的部件11之間的通訊根據至少一個網路通訊協定進行。在本說明書和所附申請專利範圍中,「網路通訊協定」意指正式描述的一組規則,其限定兩個或更多個部件11之間的通訊方式。一般地,網路通訊協定由一或多個資料結構並且由一或多個通訊方法(特別是由一或多個傳輸方法並且由一或多個接收方法)限定。
系統10的至少兩個部件11包括相應的資料處理系統,在本文中也簡稱為處理器,一個資料處理系統適於執行下文描述的傳輸方法之一的步驟,而另一資料處理系統適於執行下文描述的接收方法之一的步驟。至少一個處理器可以適於執行下文描述的傳輸方法之一的步驟和下文描述的接收方法之一的步驟兩者。至少一個處理器可以適於執行下文描述的通訊方法之一的步驟。
此外,一或多個部件11的處理器可以適於執行與所涉及的部件11及/或一或多個其它系統部件10的具體操作相關的一或多個方法。僅作為示例,撥鏈器組件1101、1102可以被程式設計為使其鏈條導板移動,曲柄臂1118、1119可以被程式設計為計算踩踏功率等。
系統10的至少一個部件11包括電腦可讀取儲存構件,其中根據下文描述的一或多個資料結構及/或以下指令來儲存資料,該等指令在由處理器執行時導致一或多個所述通訊/傳輸/接收方法及/或與具體操作相關的一或多個所述方法被執行。
為了簡潔起見,下文中將一般地使用表達「程式」或「程式設計部件」或派生形式,並且在期望區分所提及的兩類方法時將使用表述「通訊程式」和「特定程式」。
形成在自行車電子系統10中的通訊網路的物理拓撲至少在原則上可以是任何形式,例如它可以選自:環形、網狀、星形、全連接、線性菊輪鍊、樹狀、匯流排、混合。
邏輯拓撲至少在原則上可以是任何形式,例如它可以選自:環形、網狀、星形、全連接、線性菊輪鍊、樹狀、匯流排、混合。邏輯拓撲可以獨立於物理拓撲進行選擇,只要它被物理拓撲完全支援即可。
基於系統10的部件11的特定物理拓撲及/或特定邏輯拓撲的選擇屬於本領域技藝人士的技能範圍,在本說明書中也是如此。
系統10的至少一些部件11之間的至少一個網路連接可以是根據藍芽®低功耗(Bluetooth® Low Energy)標準的連接,在下文中簡稱為「BLE連接」。在這種情況下,系統10的至少兩個部件11例如設有至少一個相應的「BLE模組」,在本說明書和所附申請專利範圍中,該術語意指提供實施BLE標準所需的必要功能的硬體和韌體(電路、可能的天線和適當程式設計的控制器的組件),無論其是被設置在專用設備或晶片中或者是被集成在另外負責其它功能的設備或晶片或作業系統中。
還可以規定系統10的部件11之間的至少一個網路連接是除了BLE之外的無線類型,簡稱為非BLE連接。在這種情況下,系統10的至少兩個部件11設有除了BLE模組之外的至少一個相應的無線模組。
無論是否存在無線BLE及/或非BLE連接,也都可以規定系統10的部件11之間的至少一個網路鏈路是有線類型,在本說明書和所附申請專利範圍中使用的該術語與術語「無線」相對,不一定意味著存在電纜,而是涵蓋所連接的部件的共軛觸點之間的直接接觸。在這種情況下,系統10的至少兩個部件11設有至少一個相應的有線介面。
一或多個可能的有線網路鏈路可以適用於串列通訊。在這種情況下,系統10的至少兩個部件11設有至少一個相應的序列介面。在本說明書和所附申請專利範圍中,表述「串列通訊」意指一種通訊,其中位元著沿通訊通道一次一個地傳輸,並且以相同順序被依次接收。僅藉由非限制性示例,提及了眾所周知的串列協定UART、SPI、I2C、Can-bus等。
應當注意,同一個部件11可以參與無線(特別是BLE)鏈路和有線(特別是串列)鏈路兩者,並且因此可以具有至少一個無線模組(特別是BLE模組)和至少一個有線介面(特別是至少一個序列介面)兩者。
如所提及的,至少一個部件11可以設有一個以上的無線模組(例如一個以上的BLE模組)及/或設有一個以上的有線介面(例如一個以上的序列介面),所述至少一個部件11用於與一或多個不同部件11的一個以上的連接。在與同一部件11相連的兩個連接的情況下,一個連接可以用於傳輸,而另一個連接可以用於接收,從而在仍使用各個鏈路用於單向通訊的情況下實現整體的雙向通訊。在與兩個(或更多個)不同部件11相連的兩個(或更多個)連接的情況下,每個連接可以用於傳輸、用於接收或用於雙向通訊,使得設有兩個或更多個連接的所述部件可以例如向第二部件傳輸並從第三部件接收,或者向第二部件傳輸並與第三部件雙向通訊,並且整體上與兩個以上的部件單向通訊及/或雙向通訊。在與兩個不同部件11相連的兩個連接的情況下,這些連接可以是或者不是同一邏輯網路的一部分。
在其中部件11是兩個(或更多個)不同邏輯網路的一部分的情況下,該部件11可以在該兩個(或更多個)邏輯網路之間發揮介面作用,無論它們是同質的還是異質的。在本說明書和所附申請專利範圍中,表述「同質網路」意指具有同一網路架構的網路,而表述「異質網路」意指其網路架構在至少一個協定層中不同的網路。
如上文所討論的,自行車系統10甚至可以非常複雜,具有甚至非常大量的部件11,具有包括相同或不同的物理拓撲和相同或不同的邏輯拓撲的若干網路(或子網路),並且支援甚至相當大量的不同通訊協定。
自行車電子系統的說明性配置
在不減損一般性的情況下,且僅為了更清晰表述的目的,下文參考圖2所示且在下文描述的自行車系統10的僅說明性配置來描述兩種通訊協定。
說明性的自行車電子系統20包括若干部件11(同樣在這種情況下,為了更加清晰,元件符號11僅與所示的一些部件相關聯):後撥鏈器組件21,前撥鏈器組件22,右手動控制設備23,左手動控制設備24,傳輸側上的測量用曲柄臂(instrumented crankarm)25、與傳輸側相反的一側上的測量用曲柄臂26、一對可穿戴控制設備27、28以及智慧手機29。
需注意,智慧手機29僅是特別地設有圖形化使用者介面的通用設備的例示,而其它設備是騎行專用電子設備。智慧手機29被配置成與騎行專用電子設備21-28互動。需強調的是,可以存在一個以上的單個通用設備。每個控制設備23、27;24、28以本身眾所周知且其細節在本文公開的主題範圍之外的方式被程式設計,以基於騎手與一或多個構件(如操縱桿、按鈕等)的互動而發出一或多個輸出,基於該輸出來改變自行車B的傳動比。
每個測量用曲柄臂25、26以本身眾所周知且其細節在本文公開的主題之外的方式被程式設計,以基於一或多個感測器而發出一或多個輸出,例如所施加的扭矩及/或踩踏節奏及/或踩踏功率的測量值。
每個撥鏈器組件21、22以本身眾所周知且其細節在本文公開的主題之外的方式被程式設計,以使傳輸鏈在分別與後輪和與五通管元件相關聯的一組齒輪中的齒輪之間移位,從而改變傳動比。程式輸入包括設備23-28(以及如果該自行車電子系統與說明性系統20不同,自行車電子系統10的任何其它部件)的一或多個輸出。此外,撥鏈器組件21、22可以彼此交換資料,特別是與相應嚙合的齒輪交換資料。
如本領域技藝人士所理解的,智慧手機29可以從系統20的其它部件11(騎行專用電子設備21-28)收集資料,以用於向使用者顯示、儲存以用於歷史收集、用於統計目的、用於與其它與健康相關的應用程式共用等。
智慧手機29也可以向系統20的其它部件21-28提供輸入,例如相應特定程式的參數的值。在本說明書和所附申請專利範圍中,術語「參數」用於表示一或多個程式指令的變數,其值在執行這種指令之前被輸入到程式(或其特定功能或操作)。僅作為示例,控制設備23、24、27、28可以根據其按鈕被按下的時間是短於閾值參數還是長於閾值參數而發出不同的命令;閾值參數的值可以被儲存在控制設備23、24、27、28的記憶體位置中,並且該值能夠藉由智慧手機29來設定。仍然僅作為示例,智慧手機29可以向任一撥鏈器組件21、22的特定程式提供介入待設定的傳動比的決定中的資料,例如由加速計或由智慧手機29內部的地理定位系統獲得的或從其它通用電子設備、網際網路等收集的速度資料。
本領域技藝人士將理解,自行車電子系統10的每個部件11(也在後者不同於說明性系統20的情況下)通常可以被程式設計為在系統10內接收輸入及/或提供輸出。
說明性自行車電子系統20的部件21-29連接在具有混合物理拓撲的網路中,該自行車電子系統的部件形成相應節點。
所有上文提及的騎行專用電子設備21-28連接在網路中,為了方便起見,該網路在本文中稱為「騎行網路」30,用於特別地對上文提及的輸入和輸出進行交換。
智慧手機29至少暫時連接在網路中,為了方便起見,該網路在本文中稱為「互動網路」31,在所示情況下,該網路與後撥鏈器組件21一起形成。
在所示的說明性情況下,騎行網路30具有星形邏輯拓撲。
在說明性的系統20的情況下,騎行網路30是無線網路,特別是下文更好地描述的BLE網路。網路30的連接用虛線示出。
在所示的說明性情況下,後撥鏈器組件21發揮星形中心設備的作用,而其它部件22-28發揮周邊設備節點的作用。
在說明性系統20的情況下,互動網路31是無線網路,特別是下文更好地描述的BLE網路。網路31的連接用虛線示出。
如上文所強調的,並非系統10的所有部件11必然總是存在、總是開啟及/或總是網路連接。為了以下說明性描述的目的,將假定部件21-28存在、開啟並且被連接,並且智慧手機29可能存在或不存在、開啟或不開啟以及被連接或不被連接。
在說明性自行車系統20中,每個撥鏈器組件21、22具有智慧電池21-2、22-2,即一種電源單元,該電源單元具有其自己的處理器或資料處理系統以負責對該電源單元的控制。眾所周知,「智慧電池」包括:由二次單體構成的電池,例如鋰聚合物類型的電池;及所述由二次單體構成的電池的集成管理系統,該集成管理系統例如實現了充電電路和高級診斷系統,其包括通常由電子板或PCB(印刷電路板)承載的處理器。
整體上,智慧電池21-2、22-2代表相應的網路節點,並且一般地落入如在本說明書和所附申請專利範圍中所使用的術語「部件」內。因此,一般地,每個智慧電池21-2、22-2是自行車電子系統10(20)的部件11。
在本說明書和所附申請專利範圍中,當廣義地提及撥鏈器組件21、22或撥鏈器時,意在涵蓋相應的智能電池21-2、22-2;當適當地提及各個網路節點時,則提及撥鏈器21-2、22-1(即,「真實的」撥鏈器)及/或智能電池21-2、22-2。
部件23-28由一或多個電池電源供電,例如由相應的紐扣電池供電。智慧手機29可以以任何傳統方式供電。
各智慧電池21-2、22-2具有與相應的撥鏈器21-1、22-1相連的有線實體鏈路,由相應的電觸點的接觸表示。撥鏈器21-1、22-1和相應的智能電池21-2;22-2分別形成兩個有線網路32、33(每個有線網路均與撥鏈器組件21、22重合)。這兩個網路32、33的連接用實線示出。
網路架構的應用層級的相對較高的子層級(上層協定)
還參考圖3,一些通訊(傳輸及/或接收)方法以及本文公開的主題的其它相關態樣基於用於自行車電子系統10的協定,該協定在本文中限定在國際標準組織(ISO)的眾所周知的開放系統互相連線模型(OSI)或ISO/OSI模型50的應用層級51(第七層級)的子層級51-2中,或者任何情況下被限定在網路架構的最上層級的子層級中,例如限定在BLE標準或BLE架構60或BLE HW/FW堆疊的應用層級61的子層級61-2中。
為了將該協定與限定在ISO/OSI模型50的應用層級51的底層級51-1中或在任何情況下限定在網路架構的最上層級的底層級子層級中(例如在BLE標準60的所述應用層級61的子層級61-1中)的協定區分開,為簡潔起見,協定50有時將在本文中被稱為「上層協定」,而為了簡潔起見,其它協定有時將在本文中被稱為「下層協定」。
需注意,還可以存在ISO/OSI模型50的應用層級51的第三子層級51-3、或BLE標準60的應用層級60的第三子層級61-3、或網路架構的最上層級的第三子層級,其仍然高於上層協定的所述子層級(51-2、61-2)。例如,如果部件11的特定程式(像上文描述的那些)完全不同於實施上層協定的程式,則該特定程式可以表示第三子層級中的應用程式的示例。然而,需注意,上層協定也可以至少部分地在部件11的所述特定程式中實施。
特別是,上層協定是應用軟體中的如下部分,該部分限定在自行車電子系統10的部件11之間共享的用於資料交換的唯一格式,其規定待傳輸的資料應如何編碼,並且規定應如何解釋所接收的資料,而無關於在OSI模型50的下層級(從第六層級到第三層級:展示層、工作階段層、輸送層、網路層,整體以元件符號52表示;第二層級53為資料連結層;第一層級54為實體層)中以及在BLE架構60的對應主機62和控制器63層中出現的情況。在本說明書和所附申請專利範圍中,「唯一格式」表示該格式僅可以以一種方式解釋,並且因此不會引起任何歧義。
需強調的是,BLE在其自身的應用層級61中提供了如下文中更好地描述的GATT服務,而沒有提供複數的子層級;換句話說,在根據BLE標準的傳統實施方式中,這僅是根據應用來配置GATT服務的問題。
此類上層協定規定了電子訊息的或在網路中傳送的資料包的資料結構(或資料格式)(下文參考圖4描述)以及有效載荷格式(下文參考圖5描述)。
可歸屬於說明性自行車電子系統20的騎行網路30的每個部件11(除可能歸屬於互動網路31的一或多個部件以外)的所有性質(property)或資訊片段以及用以在系統10中的通訊的候選位址——並且由此,可歸屬於期望在網路中「暴露」的部件11的所有資訊片段——根據這種資料結構來儲存。
在本說明書和所附申請專利範圍中,表述「可歸屬資訊片段」有時被術語「性質」或術語「特徵」或術語「InfoTag(資訊標籤)」代替。
整體上,儘管這並不總是必要的,但每個部件11在其記憶體中儲存其自己的(零個或多個)可歸屬資訊片段。
自行車系統10的部件11可以先驗地知曉自行車系統10的一或多個其它部件11或所有部件11的全部或部分(包括單個的)可歸屬資訊片段。
可替代地或附加地,自行車系統10的部件11在網路的建立期間、順序地或緊接在建立之後或者仍在更新階段中以合適方式學習哪些是自行車系統10的一或多個其它部件11或所有部件11的全部或部分(包括單個)的可歸屬資訊片段,儘管下文中提及了具體方式,但該合適方式在本文公開的主題範圍之外。
自行車電子系統10的部件11可以儲存系統10的一或多個或所有的其它部件11的可歸屬資訊片段的整體或部分副本。
因此,上層協定限定自行車電子系統10的各個部件11的可歸屬資訊片段的資料庫;該資料庫整體上以分散式形式儲存在系統10中,其中每個部件11可以儲存該資料庫的局部或整體部分。
自行車電子系統10的各個部件11的可歸屬資訊片段在系統10中根據由上層協定限定的有效載荷進行傳送。
「可歸屬資訊片段」可以包括但不限於:部件11的特定程式的參數、變數和常數;部件11的狀態變數;由部件11獲取的測量值;部件11及/或其特定程式的標識資料,如名稱、位址、軟體/韌體版本等。
此外,「可歸屬資訊片段」可以包括輔助資訊片段,其在指令的傳送期間以下文更好地指定的方式使用。
資料結構
參考圖4,現在描述資料結構200,根據該資料結構,可歸屬資訊片段或InfoTag根據上層協定來儲存。
資料結構200是記錄類型的。因此,每個可歸屬資訊片段或資訊標籤210是由上層協定限定的資料庫的記錄。
欄位221包括可歸屬資訊片段210的值Data。
欄位222包括欄位Data 221的長度Len。可替代地,其可以表示InfoTag 210的長度或InfoTag 210的在系統10中傳送的部分的長度。
欄位223完全可選地包括資料類型的辨識符Type,其標識了欄位Data 221的資料的類型。資料以標準格式或專有格式設定類型。僅藉由非限制性示例,資料可以是布林型、字串、整數(或8位元整數、16位元整數等)、浮點型、溫度、日期-時間、日期-小時-分鐘、持續時間、線性測量類型...軟體版本、字串、電壓、電流等類型。
資料類型辨識符還可以對測量值的單位進行編碼。僅藉由非限制性示例,以攝氏度為單位的溫度和以華氏度為單位的溫度可以用不同的辨識符進行編碼,並且以毫米為單位的線性測量值和以微米為單位的線性測量值可以用不同的辨識符進行編碼。可替代地,測量值的單位可以在特定欄位(未示出)中表達。
欄位224包括可歸屬資訊片段210的辨識符Tag,該辨識符在自行車電子系統10中是唯一的,並且更一般地在自行車電子系統10的每種配置的所有可能部件的集合中都是唯一的。在本說明書和所附申請專利範圍中,表述「唯一辨識符」是指該辨識符與同一類的所有其它唯一辨識符不同且可區分,在可歸屬資訊片段210的類別中的情況就是如此。
欄位225完全可選地包括對InfoTag 210或其欄位Data 221的值的存取權限的一或多個辨識符Access。僅藉由非限制性示例,欄位Data 221可以是唯讀的、可寫的、僅可寫一次的等;可歸屬資訊片段或InfoTag 210可以僅當在系統10中存在預選部件時(例如僅當存在智慧手機29時)可進行存取;可歸屬資訊片段可以請求加密或不加密,並因此是「私有的」;可歸屬資訊片段可以是可傳輸的、可接收的或可傳輸且可接收的;等等。
欄位226完全可選地包括可歸屬資訊片段210的描述Description,其優選地是人類用戶可理解的。如果存在,則欄位226可以在網路中傳輸或不傳輸。
如果所有的系統部件10都先驗地可支配地具有可歸屬資訊片段的整個資料庫,並且先驗地知曉這種資訊片段的類型,則欄位223可以從資料結構200中省略。
可替代地,欄位223可以從在自行車電子系統10中傳送的InfoTag 210的部分中省略。僅藉由非限制性示例,對於僅包含速度計且可以僅傳送與所測量的速度相關的性質的部件,如果應當接收所測量的速度的所有部件都已可支配地具有這種所測量的速度例如以km/h表示的資訊片段,則該部件不需要必然傳送該類型(數位值,以測量值的速度單位)。
藉由資料結構200以及可歸屬資訊片段的辨識符Tag 224的唯一性,自行車電子系統10被建模為一組性質,該組性質能夠以唯一方式(即,沒有歧義的可能性)標識,並且該組性質代表系統的相關元件,所述相關元件在自行車電子系統10的使用期間可以由外部事件、由操作者或通程序式指令等被偵測、配置、改變。
欄位222-225例如具有固定的長度;如已經提到的,欄位224具有固定或可變的長度,該長度例如取決於資料類型Type(欄位223),並且可以在欄位Len 222中表達。
除了上文所說的之外,圖4所示的可歸屬資訊片段210的格式還易於有其它變化,例如欄位221-226的順序可能不同,並且一些欄位可能被省略。特別需注意,對於本文公開的主題的一些態樣及/或從屬特徵(secondary features),可能僅需要欄位Tag 224,而對於本文公開的主題的一些態樣,可能僅需要欄位Data 221。
儲存在欄位224中的可歸屬資訊片段210的辨識符Tag也可以對部件辨識符進行編碼。
由Tag標識的部件可以是以Tag標識的可歸屬資訊片段210所歸屬的同一部件11,即該部件在網路中暴露由相關的Tag標識的可歸屬資訊片段210。可替代地,由Tag標識的部件可以是自行車電子系統10的與在網路中暴露由相關的Tag標識的可歸屬資訊片段210的部件不同的部件11。
從另一方面看,由Tag標識的部件可以是與由Tag標識的可歸屬資訊片段210相關的通訊的發信人部件,或者由Tag標識的部件可以是與由Tag標識的可歸屬資訊片段210相關的通訊的收信人部件。
例如,與部件11的特定程式的參數相關的可歸屬資訊片段210可以將該部件11編碼在其Tag中,當參數的值被不同的系統部件10寫入時,該部件用作收信人部件,並且當將參數的值傳送到不同的系統部件10時,該部件用作發信人部件。
在這種背景下,本領域技藝人士將理解,可以在Tag 224內標識發揮類似或相似作用的部件,而無關於其型號,或者可以在Tag 224內以不同方式標識發揮類似或相似作用但屬於不同型號的部件,並且可以存在上述的組合。僅作為非限制性示例,用於具有7個鏈輪的鏈輪組件的後撥鏈器組件可以以與用於具有11個鏈輪的鏈輪組件的後撥鏈器組件相同的方式或不同的方式標識;因操縱桿的形狀而不同的兩個左手動控制設備可以以相同的方式標識,而其中僅一個具有用於選擇操作模式的按鈕狀致動裝置(「模式」按鈕)的兩個左手動控制設備可以以不同的方式在Tag內標識。
Tag 224作為唯一辨識符應當滿足的條件在於,系統10的任何特定配置均不能包括具有相同Tag 224的兩個不同部件11的兩個可歸屬資訊片段210。
然而,出於將在下文中清楚的原因,在本文中稱為All的Tag 224中的一個也可以仍然以唯一方式標識自行車電子系統10的通用部件11,即,它可以明確地標識系統10的所有部件11。
如上文所討論的,後撥鏈器組件21和前撥鏈器組件22可以包括相應的智慧電池21-2、22-2。在這種情況下,可以存在若干種替代形式。
在第一種情況下,智慧電池21-2、22-2在其記憶體中儲存其自身的可歸屬資訊片段210,並且撥鏈器21-1、22-1在其記憶體中儲存其智慧電池21-2、22-2的可歸屬資訊片段210的副本。在第二種情況下,智慧電池21-2、22-2不在記憶體中儲存其自身的可歸屬資訊片段210,並且撥鏈器21-1、22-1在其記憶體中儲存其智慧電池21-2、22-2的可歸屬資訊片段210。在第三種情況下,僅智慧電池21-2、22-2在記憶體中儲存其自身的可歸屬資訊片段210,使得撥鏈器21-1、22-1在記憶體中僅儲存其自身的可歸屬資訊片段210。需注意,在所有三種情況下,撥鏈器組件21、22在記憶體中儲存撥鏈器21-1、22-1和智能電池21-2、22-2兩者的所有可歸屬資訊片段210。
本領域技藝人士將理解,參考後撥鏈器組件21、前撥鏈器組件22和相應的智慧電池21-2、22-2所描述的內容也可以適用於附接到系統10的部件11的其它設備,例如除撥鏈器之外的設備的智慧電池,或者仍然藉由非限制性示例,在出於某種原因期望將部件視為「從屬」的情況下,例如可穿戴控制設備27、28或桿端類型的控制設備(未示出)可能被視為控制設備23、24的「從屬」部件。
根據資料結構200儲存的參數及/或變數及/或常數之每一者可以是如上文所限定的由部件的特定程式使用的相同的參數及/或變數及/或常數的副本(不斷更新),或者其可以是該參數及/或變數及/或常數的唯一實例。
如所提及的,性質或可歸屬資訊片段210可以是各種類型的,如可以從前面和下面闡述的一些非限制性示例中推斷的: a1)與硬體或韌體相關的資料(例如,型號、韌體版本、MAC位址) a2)與網路相關的資料(例如,連接狀態、網路位址) a3)與部件的狀態相關的資料(例如,剩餘容量、充電週期的計數器、所嚙合的齒輪、當前操作模式) a4)由感測器偵測的資料(例如,溫度、相對於地面的傾斜度、速度、加速度) a5)由部件計算的資料(例如,踩踏功率、節奏、扭矩) a6)部件的特定程式的參數(例如,按鈕的最小操作時間、用於區分單次換擋請求和多次換擋請求的時間閾值、待嚙合的齒輪、在換擋期間用以幫助與齒輪嚙合的撥鏈器的額外行程) a7)發信號通知錯誤的資料(例如,撥鏈器組件的電池電壓過低而不允許換擋、感測器損壞、換擋請求超過極限齒輪、手動操縱桿卡住)。
藉由限定資料類型,性質或可歸屬資訊片段210也可以作為實際上的「多個性質」或「多個可歸屬資訊片段」,其中每個位元或位元組均指示相應的基本性質。例如,InfoTag 210「設備的狀態」可以收集與部件11相關的一些資訊片段,例如,當其值的一或多個預設位元被設定為預設布林值(例如為1)時,存在不同種類的一或多個錯誤。仍然僅藉由非限制的示例,「多個性質」可以提供與電池相關的若干個指示,諸如電池正在充電(由一個位元表示)、充電過熱(由不同的位元表示)、大約剩餘充電位凖(例如由兩個其它位元表示,其中00為完全放電、01為低電量、10為充足電量)。
有效載荷
參考圖5,現在描述在網路中傳送的資料包的有效載荷250或電子訊息的格式,該格式由用於自行車電子系統10的部件11的可歸屬資訊片段210的交換或傳送的上層協定限定。
當要在網路中傳送的特定可歸屬資訊片段210或「性質」候選位址應實際地在網路中傳送時,其欄位中的至少一些被組合在電子訊息或資料包的有效載荷250中,該有效載荷在網路中由網路架構50、60的下層52-54、62-63(或除ISO/OSI模型50和BLE架構60之外的網路架構中的對應下層級)傳輸。以本身眾所周知的方式,除了有效載荷250之外,所傳送的資料包還包含管理負擔(標頭和任何其它欄位)。管理負擔包含將有效載荷作為資料包傳輸的必要和充分的資訊。
網路架構50、60的下層或下層級52-54、62-63(或除ISO/OSI模型50和BLE架構60之外的網路架構中的對應下層級)通常是由硬體製造商或第三方提供的軟體庫來控制的硬體部件和軟體部件,換句話說,它們通常是韌體部件。
有效載荷250的格式包括欄位261,該欄位261包括指令或操作唯一辨識符Opcode,如在下文更好地描述的。欄位Opcode 261具有固定的長度。
有效載荷250的格式包括欄位262,該欄位262包括可歸屬資訊片段210或其欄位221-226中的至少一些欄位。為簡化表述並僅藉由示例,除非另有規定,否則下文將指整個可歸屬資訊片段210的傳送。
然而,應當強調的是,對於本文公開的主題的一些態樣及/或從屬特徵,可能僅需要欄位Opcode 261,而對於本文公開的主題的一些態樣,可能僅需要欄位InfoTag 262。
可選地,有效載荷250不限於欄位261-262,而是可以包括與不同的可歸屬資訊片段210相關的欄位261-262的一或多個重複。
在本說明書和所附申請專利範圍中,當需要將基本有效載荷260與整個有效載荷250區分開時,表述「基本有效載荷」260指與特定可歸屬資訊片段210相關的欄位261、262的組件。
每個有效載荷250中的基本有效載荷260的數量可以取決於每個特定基本有效載荷260的長度而變化,即,取決於所傳輸的每個性質或可歸屬資訊片段210的長度,如在其欄位222中表示的;可替代地,基本有效載荷260的數量對於所有有效載荷250可以是固定的。
每個有效載荷250中的基本有效載荷260的數量可以存在上限,其由網路架構50、60的下層52-54、62-63中的一個(或除ISO/OSI模型50和BLE架構60之外的網路架構中的對應下層級)的有效載荷的最大長度決定。
有效載荷250的格式可以包括如下的欄位,該欄位是可選的並且為了簡潔起見未示出,該欄位指定有效載荷250的其餘部分是否被加密。可替代地,每個基本有效載荷260可以包括如下的欄位,該欄位為了簡潔起見未示出,該欄位指定基本有效載荷260的其餘部分是否被加密。仍然可替代地,該資訊可以例如編碼在欄位225 Access中。
利用欄位261傳送的操作辨識符Opcode可以代表能夠由系統10的部件11執行的任何指令,並且該指令可以由系統10的不同部件11發出。
僅藉由非限制性示例,下文提及了以下類型的指令和特定指令: b1)用於獲取或記錄在欄位262中標識的所傳輸的性質或可歸屬資訊片段210的欄位Data中指示的值的指令,在本文中稱為「Notification(通知)」; b2)用於修改在欄位262中標識的可歸屬資訊片段210的指令,在本文中稱為「Write Property(寫入性質)」;在這種情況下,由Tag 224標識的性質所應當假定的值在欄位Data 221中指示; b3)用於請求讀取在欄位262(特別是欄位Tag 224)中標識的可歸屬資訊片段210、即請求將該可歸屬資訊片段210作為回復進行傳輸的指令,在本文中稱為「Read Property(讀取性質)」:在這種情況下,在欄位Len 222中指示的長度可以設定為零,欄位Data 221不存在,或者在欄位Data 221中指示的值可以是預定值,例如都為0或都為1; b4)用於修改在欄位262(特別是在欄位Tag 224)中標識的可歸屬資訊片段210的存取權限的指令;在這種情況下,欄位Data和Len 221-222的值可以像情況c3)中那樣管理; b5)用於請求將部件11的所有可歸屬資訊片段210作為回復傳輸的指令,在本文中稱為「Read All Properties(讀取所有性質)」; b6)用於對記憶體中的資料執行特定動作(例如Reset to Factory values(重設為出廠值)或Delete Whitelist(刪除白名單),其刪除網路資訊)或用於對部件的設備執行特定動作(例如打開LED)的指令; b7)與部件的特定程式相關的指令,例如功能調用或參數傳遞,或者切換操作模式的指令,等等; b8)代表由騎手C接收的輸入或手動命令的指令; b9)上述指令的組合。
需注意,在b6-b8的情況下以及在類似情況下,包含在欄位262中的可歸屬資訊片段210是輔助指令的執行的資訊片段,其例如包含僅作為重要資料的Tag 224,Tag 224對指令(並因此對有效載荷250)的部件11收信人進行編碼,或者其附加地包含在欄位Data 221中的、待傳遞到部件11的特定程式的參數等。
上文描述的標籤224 All(如果插入InfoTag 262中)允許發信人部件11發送在欄位Opcode 261中編碼的指令,該指令被指向所有其它部件11,以節省網路流量,並由此實現某種廣播。例如,此類指令可以是Reset to Factory values、Delete Whitelist、Enter setting mode(進入設定模式)、Read software version(讀取軟體版本)等指令。
需注意,包含指令Notification的基本有效載荷260(或整個有效載荷250)通常由欄位262中的Tag 224標識的可歸屬資訊片段210所涉及的部件11形成並在網路中初步傳輸,然後仍然能夠被轉發。
僅為了更好地澄清指令Notification的目的,提供了一些實際的示例:部件11可以傳輸或「通知」其軟體版本、由其感測器偵測的溫度、其按鈕的按下狀態(例如,如果部件11是控制設備23、24、27、28)、其充電位凖(例如,如果部件11是智慧電池21-2或22-2)或其電池的充電位凖(如果部件11是撥鏈器組件21、22或撥鏈器21-1、22-1)等,例如基於請求或由於在欄位Data 221中指示的相應值已經改變的事實的結果。
此外,需注意,包含不同於指令Notification的指令(在欄位Opcode 261中編碼)的基本有效載荷260(或整個有效載荷250)通常由與在欄位262中標識的性質所涉及的部件11不同的部件11(特別是由與在欄位Tag 224中標識的部件不同的部件11)形成並在網路中初步傳輸,但其也能夠被轉發。
然而,在第二部件11具有代表第一部件11的性質的情況下,第一部件11也可以替代指令Notification而使用命令Write Property以向第二部件11傳輸其性質的值。例如,第一部件11可以具有可歸屬資訊片段「模型」並利用指令Notification將其傳送到第二部件11,或者第二部件11可以具有可歸屬資訊片段「第一部件的模型」並且第一部件11可以藉由指令Write Property傳送其自身的模型。
僅藉由非限制性示例,第一部件11可以: c1)藉由命令Read Property向第二部件11請求傳輸或「通知」其軟體版本等, c2)藉由命令Read All Properties向第二部件11請求傳輸或「通知」其所有的可歸屬資訊片段210,以便學習其具有哪些性質以及相應的辨識符Tag 224, c3)藉由命令Write Property(如果第二部件11具有描述所述參數或常數或變數的性質210)或藉由特定指令(例如,指令Set RTC(設定即時時鐘)等)請求改變第二部件11的特定程式的參數或常數或變數(例如,改變按鈕的最小按下時間,以便認為騎手的輸入有效), c4)藉由命令Write Property(如果第二部件11具有描述操作模式的性質)或藉由特定指令(例如,指令Set Adjustment Mode(設定調解模式)、指令Enter DFU(進入DFU)(啟動韌體更新模式)等)來請求第二部件11進入特定模式, c5)請求第二部件11執行動作,例如藉由指令Delete Whitelist、指令重置為出廠值(Reset to Factory Settings)、用於在發光刻度盤中顯示電池的百分比電量的指令Show Battery Level(顯示電池電量)等, c6)向第二部件11請求執行先前對第一部件11已知的其特定程式280的功能調用,或執行其一部分,例如藉由指令Increment Property(增加性質),以將欄位Data 221中標識的性質增加也在欄位資料221中標識的特定值等, c7)將輸入轉發到第二部件11,例如由騎手或其它人類操作者接收的手動命令,例如藉由指令Button Pressed(按鈕按下)或指令Shift Up(升擋),或藉由代表按鈕狀態(例如,在性質按鈕狀態(Button Status)的欄位Data 221中傳輸值0或值1)或代表換擋請求(例如,藉由在性質Shift請求的欄位Data 221中傳輸預選值)的合適性質的指令Notification或Write Property等, c8)修改第二部件11的性質的存取權限225。
同樣從上文提供的示例中可以理解,可以存在兩種或更多種不同的方式來在自行車電子系統10中表達和傳送可歸屬於一或多個部件的同一事項(其適當地限定代表其的一或多個性質),可能地與其它資訊一起及/或使用一或多個指令辨識符Opcode 261用於其通訊。
需注意,整體上,有效載荷250可以包括:包括指令Notification的兩個或更多個基本有效載荷260;包括除Notification之外的指令的兩個或更多個基本有效載荷260;包括一或多個指令Notification和除Notification之外的一或多個指令的兩個或更多個基本有效載荷260。
同樣從上文提供的示例中可以理解,證明有利的是,性質辨識符Tag 224也可以對發信人部件11或收信人部件11進行編碼。該資訊可以以本領域技藝人士清楚的方式同時根據本描述來使用,以便輔助有效載荷250或基本有效載荷260的轉發(routing),並且/或者將基本有效載荷260一起組合成有效載荷250,並且/或者將有效載荷250細分為基本有效載荷260,並且可能地將它們一起重新組合成一或多個不同的有效載荷250,並且/或者管理傳輸佇列和優先順序,等等。
實際上,接收部件11基於在欄位Opcode 261中編碼的指令及/或由Tag 224標識的可歸屬資訊片段來區分有效載荷是否被定址。當指令被定址時,接收部件11執行該指令;否則它將有效載荷250/基本有效載荷260轉發到收信人部件11或收信人部件11直接或間接連接到的不同部件11,然後該不同部件提供進而轉發有效載荷250/基本有效載荷260。
如上文所提及的,有效載荷250的傳送被留給網路架構50、60的下層52-54、62-63(或除ISO/OSI模型50和BLE架構60之外的網路架構中的對應下層級)。
如上文所提及的,自行車系統10可以包括有線類型及/或無線類型的一或多個網路。
沿有線類型的網路鏈路,例如使用串列通訊協定以用於有效載荷250的傳送。可以回顧的是,在說明性系統20的情況下,在撥鏈器組件21、22內、在撥鏈器21-1、22-1與相應智能電池21-2、22-2之間設有線鏈路。
沿除BLE之外的無線類型的網路鏈路,使用合適的無線協定以用於有效載荷250的傳送。
在圖6中,示意性地圖示在這些網路之一上傳送的串列資料包或更通常的非BLE資料包290。非BLE資料包290包括有效載荷(Payload)291和管理負擔(Overhead)292。管理負擔292被示出在有效載荷291的前面,並且可選地在有效載荷291的後面,但其可以僅在有效載荷291的後面,或既在有效載荷291的前面又在有效載荷291的後面。有效載荷291包含有效載荷250,並且特別是對應於有效載荷250。
沿無線BLE類型的網路鏈路,為了有效載荷250的傳送,在BLE網路架構60的應用層級61的子層級61-1(對應於ISO/OSI模型50的子層級51-1或網路架構的上層級的下子層級)中使用特定的通訊方法或協定,上文提及的下層協定在下文中描述。
網路架構的上層級的相對下子層級(下層協定)
現在描述上文已經提及的下層協定,該下層協定被限定在OSI模型50的應用層級51的子層級51-1中,特別是在BLE網路架構60的應用層級61的層級61-1中。
在下層協定上及/或在上層協定與所描述的下層協定的組合上,本文公開的主題的一些通訊方法(傳輸方法及/或接收方法)以及其它相關態樣均基於此。
如所提及的,BLE是一種通訊的技術標準,其具有低能耗,特別是提供用於小型離散資料傳遞,例如感測器的狀態資訊、時鐘的當前時間等。儘管BLE是眾所周知的,但下文總結了與本文公開的主題的目的相關的BLE的一些原則。
BLE標準限定了硬體規格和軟體規格,第二種規格是本文特別關注的。
BLE尤其在網路架構60的下層(在控制器63的鏈路層)中限定主(master)和從(slave)的角色,並且在網路架構60中間的主機層62的通用存取設定檔(GAP)中限定了中心設備和周邊設備的角色。主中心設備建立並管理與一或多個從周邊設備的連接。設備可以發揮多個GAP的作用,並且因此承擔中心設備和周邊設備兩者的狀態,只要鏈路層對此支持即可。
BLE限定設定檔,這些設定檔描述了在特定應用中應當如何實現資料傳輸。設定檔的最主要部分基於屬性協定(ATT)並且基於通用屬性設定檔(GATT),通用屬性設定檔GATT限定在網路架構60的主機層62中的通用規範,其建立了如何將資料組織為資料包(稱為屬性)並在BLE連接上進行交換。一些屬性可以聚集在服務中,使得設定檔可以包含一或多個服務,每個服務具有一或多個屬性。
藍芽特別興趣小組(SIG)限定了特定設定檔和服務,每個特定設定檔和服務均針對特定類型的應用,例如:用於測量血壓的設定檔BPP(血壓設定檔);用於藉由附接到自行車的感測器測量節奏和速度的設定檔CSCP(騎行速度和節奏設定檔);用於藉由附接到自行車的感測器測量踏板功率的設定檔CPP(騎行功率設定檔);暴露設備的電池狀態和電池電量的服務Battery Service(電池服務)等。
可以自由限定其它設定檔和服務。
GATT限定了伺服器和用戶端的角色。還參考圖7,伺服器設備101(其通常但不一定關聯於從周邊設備的角色(the slave and peripheral roles))包含被組織為屬性的資料庫的資料、接收來自用戶端設備102的請求並且回應該請求。
就伺服器上可用的屬性的存在和性質而言,用戶端設備102(通常但不一定關聯於主中心設備的角色(the master and central roles))藉由Discovery Service(發現服務)提供詢問、向伺服器發送請求(稱為GATT Client Read 103的操作),並接收回應(Read-RESP 104)。
用戶端設備還可以在伺服器上的屬性可供寫入(GATT Client Write 105)時修改這些屬性,可能從伺服器接收發生更改的確認(ACK-Write-REQ 106)。
伺服器設備還可以藉由通知或指示(GATT Notification 107、GATT Indication 108)自發地發送資料,在指示的情況下從用戶端接收發生接收的確認(ACK-Indication 109)。
GATT限定了保持在GATT伺服器101中的屬性資料庫110的資料結構,也稱為GATT伺服器設定檔110。這是一種分層級結構,其中GATT伺服器設定檔110的屬性被組合在服務111中,每個服務包含一或多個特性112。每個特性112包括聲明(Declaration)屬性113和值(Value)屬性114,並且可以包括零個或多個描述符(Descriptor)屬性115。
聲明屬性113包含用於值屬性114的中繼資料。描述符115允許進一步擴展包含在聲明113中的中繼資料,例如其可以包括擴展性質(Extended Properties)、相應特性的用戶可讀描述(Characteristic User Description)、啟用/禁用伺服器發起的更新的開關(CCCD Client Characteristic Configuration Descriptor),即,啟用/禁用上文提及的GATT Notification 107和GATT Indication 108。
因此,服務111是用於執行特定功能的資料和相關行為的集合。
特性112是資料容器。每個特性112與由GATT伺服器101提供的基礎片段相關聯,例如電池電量或血壓的測量,參考上文提及的SIG設定檔的示例。
參考圖8,每個屬性120(無論是GATT伺服器110的服務111的聲明、特性112的聲明113、特性112的值114或特性112的描述符115)具有資料結構,其包括: - 控制碼(Handle)121,該控制碼標識該資料結構並使該資料結構可定址, - 類型(Type)122,該類型122由UUID(通用唯一辨識符)編碼,並且決定存在於屬性值123中的資料的類型, -(長度可變的)所述值(Value)123,該值123代表包含在屬性中的真實資料(能夠由用戶端102存取)或代表與屬性120相關的中繼資料, - 一組許可權(Permissions)124,該組許可權124與屬性120的值123相關(讀取,寫入,不存取;加密請求;授權請求)。
如上文所提及的,GATT服務可以是公共的(由SIG限定並由代表128位元UUID的預設部分的16位元UUID標識)或者可以是私有的(由用戶限定並由128位元UUID標識)。由SIG分配的其它UUID(也是16位元長)包括GATT特性和物件類型(GATT Characteristic and Object Type)的UUID、GATT描述符的UUID、GATT服務的UUID、GATT測量統一性的UUID等等。
僅藉由非限制性示例,圖9示意性地圖示簡單的GATT設定檔130的示例,根據傳統的BLE實施方式,該GATT設定檔代表基於加速計並具有其自身電池的喚醒設備,其例如實現在自行車曲柄臂中。GATT設定檔130包括兩個服務131、132。第一服務131是公共服務或SIG服務電池,其包括單個的特性電池電量(Characteristic Battery Level)133。第二服務132是私人服務加速/喚醒(Acceleration/Wake),其包括六個特性134-139,該六個特性代表沿三個笛卡爾軸的加速以及與沿每個軸的加速相關的喚醒閾值。
一些特性133-139具有描述符,而其它特性沒有,使得GATT設定檔具有由相應的控制碼121標識的總共20個屬性。在該示例中,控制碼121是連續的(從N至N+19的數字);然而這不是嚴格必要的,GATT伺服器中的控制碼增加就足夠了。
第一屬性140是服務131的聲明,並且實際上其類型122是SERVICE或UUID 0x2800,其由SIG分配給初級服務的聲明。在本說明書和所附申請專利範圍中,首碼0x標識十六進位系統中的數字。其許可權124與所有的聲明屬性一樣是可讀取的(R-Read),因為用戶端應當能夠讀取由GATT伺服器暴露的服務。其值為0x180F,該值由SIG分配給電池服務。
第二屬性141是服務131的單個特性133的聲明(圖7中的113)(Battery Level)。實際上,其類型122是CHAR或UUID 0x2803,其由SIG分配給特性聲明,並且其許可權124是可讀取的。其值123為「R|NOT│N+2|0x2A19」,這表明以下事實:其為可以藉由GATT Client READ 103或藉由GATT Notification 107傳送的特性(即,由伺服器傳輸的特性,而不需要用戶端詢問也不需要接收確認),相關的控制碼為N+2(即,包含該特性的有效值的第三屬性142)並且該特性為Battery Level(電池電量),SIG已將UUID 0x2A19分配給該特性。
如所提及的,第三屬性142是特性133 Battery Level的值(圖7中的114),其實際上由控制碼N+2和類型0x2A19標識,這與屬性141中的聲明一致;其許可權為唯讀®,因為如藉由第二屬性141聲明的那樣,其是可以藉由GATT Client READ 103或藉由GATT Notification 107來傳送的特性。其值是以百分比表示的數值,在圖9中表示為變數「電池電量」,例如35%。
第四屬性143是第一特性133 Battery Level的描述符(圖7中的115)。其類型122為CCCD或用戶端特性配置描述符(Client Characteristic Configuration Descriptor)或UUID 0x2902,其由SIG分配給所述開關,該開關啟用/禁用伺服器發起的更新;其許可權124為讀取/寫入(R/W),並且其值例如被設定為通知啟用(Notification Enabled)或0x0001(由SIG分配的值)。因此,在該示例中,由於描述符143中的值Notification Enabled(通知啟用),用戶端在電池電量百分比值變化時接收通知(GATT Notification 107);如果用戶端不關注於當電池電量百分比值變化時進行自動提醒,則用戶端可以修改該值,將其變為NONE或0x0000。而且,在後一種情況下,用戶端可以在任何情況下瞭解電池電量百分比值,以發送與特性133 Battery Level相關的GATT Client READ 103。
轉到私有服務加速/喚醒(Acceleration/Wake)132,其由第五屬性144以類似於藉由屬性140限定服務SIG Battery的方式來限定,不同之處在於本文表示為Sacc(服務加速計)的值123用128位元UUID表示。
第六屬性145、第七屬性146和第八屬性147分別是第一特性134、加速X(Acceleration X)或沿X軸的加速的聲明、值和描述符,並且經過必要的修正而類似於上文關於特性Battery Level描述的屬性141-143,不同之處在於由於其不是SIG特性,所以在本文中表示為CaccX(特性加速計X,Characteristic Accelerometer X)的特性類型在聲明145的欄位值123和屬性值146的欄位類型122中都用128位元UUID表示。而且,特性134 Acceleration X是可以藉由GATT Client READ 103或GATT Notification 107(聲明145的欄位值123中的「R | NOT」)進行傳送的特性。在該示例中,用戶端不關注其值(以G表示),因為描述符147的值123被設定為NONE或0x0000,其仍然是可修改的(欄位124中的讀取和寫入或R/W許可權),使得伺服器在沿X軸的加速變化時不發出任何GATT Notification 107或任何GATT Indication 108。
第九屬性148和第十屬性149分別是第二特性135 Wake Threshold X(喚醒閾值X)或沿X軸的喚醒閾值的聲明和值;第二特性135沒有描述符。而且,在這種情況下,特性的類型(在本文中表示為CwakeX(特性喚醒X,Characteristic Wake X))在聲明148的欄位值123和值屬性149的欄位類型122中都用128位元UUID表示。屬性值149的欄位值123包含變數或參數的當前值,其在本文中表示為Acc. X. Thr。特性135、Wake Threshold X是讀取/寫入特性,其是由用戶端可修改的參數:聲明148的欄位值123包含「R|W」,並且值屬性149的欄位許可權124包含R/W。因此,用戶端102可以藉由GATT Client READ 103請求伺服器哪一個是變數或參數的當前值Acc. X Thr,及/或藉由GATT Client WRITE 105改變這種值。
經過必要的修正,特性136、137和138、139分別對應於相對於笛卡爾軸y和z的特性134、135。
如圖10所示,BLE資料包150的格式包括由BLE架構60的層控制器63使用的資料包標頭,該標頭特別地包括前序信號(Preamble)151和存取位址(Access Adress)152;長度可變的名為資訊統一體PDU(協定資料單元,Protocol Data Unit)153的部分;及也由層控制器63使用的騎行冗餘檢查字串或CRC 154。
PDU 153依次包括前序信號155、156和訊息完整性檢查字串MIC(訊息完整性檢查, Message Integrity Check)157,其由BLE架構60的來自主機層62的層級使用;及操作代碼Op 158和有效載荷159,其由BLE架構60的層應用61使用。
需注意,MIC字串在廣告資料包中不存在,該廣告資料包在網路的建立期間交換並用於其管理,而在資料包的情況下存在,即,一旦網路已經建立並且伺服器與用戶端之間的BLE連接已經建立就進行交換;此外,值得一提的是,在網路架構60的主機層62中,BLE還提供安全管理協定(SMP,Security Manager Protocol),其應用安全演算法以用於對資料包進行加密和解密。
然而,在網路架構的最下層級處的BLE中傳遞的資料包的格式以及廣告資料包在本文公開的主題的背景中不是特別受關注。
有效載荷159是包含BLE屬性120的有效載荷;操作代碼Op 158尤其表明,其是否是操作GATT Client READ 103、Read-RESP 104、GATT Client Write 105、ACK-Write-REQ 106、GATT Notification 107、GATT Indication 108或ACK- Indication 109。
因為每個BLE屬性120與相應的BLE資料包150通訊,所以可以理解,傳統的BLE實施方式很適合簡單的系統,其中在BLE伺服器101和用戶端101之間待交換的資料相對較少,而其本身可能變成不適合通用的自行車電子系統10,為了描述該通用自行車電子系統,由每個BLE伺服器101暴露的(SIG或私有)服務應當包含甚至非常大量的屬性。已經從圖9所示的和上文描述的簡單示例中確實可以看出,僅對於由測量用曲柄臂可用的一些資料的通訊,需要約20個屬性;因此可以理解,例如,對於說明性自行車電子系統20,根據傳統的BLE實施方式,需要數百個甚至數千個屬性。
因為服務的初步交換(暴露)步驟(如所提及的,其在BLE網路的建立之後、在發現階段(Discovery phase)中發生)需要越來越多的時間,這歸因於必須由BLE伺服器101傳送的屬性的數量增加,每個屬性在其自身的資料包150中,所以可以理解,此類發現階段的持續時間可能過長。
而且,一旦發現階段結束,根據傳統的BLE實施方式的藉由針對特性112的每個值屬性114的資料包150進行的資料交換可能需要非常大量的資料包,並且因此,平均通訊時間很長。
本文公開的用於自行車電子系統10的下層協定利用了此類事實:BLE設定檔和服務可以被定製(私有服務),而不考慮在下層級(主機62和控制器63)處發生什麼。
僅藉由非限制性示例,但是為了更清晰地表述,特別參考說明性自行車系統20進行相關描述,該自行車系統可以在圖11中辨識。
自行車電子系統10的至少兩個部件11、說明性系統20中的所有部件21-29設有至少一個相應的「BLE模組」,在下文中,如果其發揮BLE中心設備、用戶端的作用,則被標識為40,而如果其發揮BLE周邊設備、伺服器的作用,則被標識為300。
自行車系統10的至少一個部件11(在系統20的情況下為後撥鏈器組件21的撥鏈器21-1)相對於騎行網路30發揮BLE中心設備、用戶端40的作用,並且至少一個其它部件11(在說明性系統20的情況下為所有其餘部件22-28)在該騎行網路30中發揮BLE周邊設備、伺服器300的作用。
如果提供了互動網路31,至少一個騎行專用電子設備(在系統20的情況下再次為後撥鏈器組件21的撥鏈器21-1)相對於互動網路31發揮BLE周邊設備、伺服器300的作用,並且至少一個通用電子設備(在示例性系統20的情況下為智慧手機29)發揮BLE中心設備、用戶端40的作用。可替代地,至少一個騎行專用電子設備可以相對於互動網路31發揮BLE中心設備、用戶端40的作用,並且至少一個通用電子設備可以發揮BLE周邊設備、伺服器300的作用。
在說明性系統20的情況下,後撥鏈器組件21的撥鏈器21-1因此發揮雙重作用,並且在圖11中,其被示出為設有兩個不同的BLE模組40、300以說明這一點;然而,本領域的技藝人士將理解,雙重作用可以由具有雙重功能的單個BLE模組發揮。此外,兩個網路30、31中的同一部件的作用不一定是不同的,其可以是兩者中的BLE伺服器或兩者中的BLE用戶端。
選擇後撥鏈器組件21的撥鏈器21-1來發揮騎行網路30中的BLE中心設備、用戶端和相對於互動網路31的BLE周邊設備、伺服器的雙重作用是優選的,因為後撥鏈器組件21設有最大容量電池21-2,但其它選擇也是可能的。
此外,嚴格來說,騎行網路30的BLE中心設備不一定是在互動網路31中連接的同一部件;在任何情況下,為了表述的簡單性,為了簡潔起見,下文將專門參考該配置。
參考可穿戴控制設備28(在其它設備中,為了清楚起見,省略了一些細節及/或元件符號),發揮BLE伺服器作用的每個部件21-28的GATT伺服器300包括GATT私有服務301並在網路中暴露GATT私有服務301,在本文中稱為「Serial(串列)」。GATT服務Serial 301就足夠了,但GATT伺服器300也可以暴露其它服務。在所示情況下,服務Serial 301包括兩個特性,即特性A 302和特性B 303。
為了完整性,在圖11中還示意性地圖示在說明性系統20的每個部件11中的實現上文提及的上層協定或相應部分(指令和資料庫的部分)的模組270以及實現該部件的上文提及的特定程式的模組280。而且,這些模組僅對可穿戴控制設備28進行編號,並且同樣為了更清晰起見,未示出各個模組270、280和40或300之間的邏輯鏈路。自行車電子系統10的一些部件11可能沒有特定程式280。
GATT服務Serial 301在圖12中以類似於上文描述的圖9的方式示意性地表示。
特性A 302具有描述符,而特性B沒有描述符,使得GATT服務Serial 301僅由六個屬性310-315限定,該六個屬性由相應的控制碼121標識。在圖11中,控制碼121是連續的(從M至M+5的數字);然而,這並不是嚴格必要的,只要其增加就足夠了。
第一屬性310是服務301的聲明,並且實際上其類型122為SERVICE或UUID 0x2800,如上文可見,其由SIG分配給初級服務的聲明。由於這是私有服務,所以其值123(Serial)由128位元UUID表示。如上文所討論的,其許可權124是可讀取的®,像所有的聲明屬性一樣。
第二屬性311是第一特性302或特性A(Characteristic A)302的聲明。實際上,其類型122為CHAR或UUID 0x2803(由SIG分配給特性的聲明,如上文所提及的),並且其許可權124是可讀取的。其值123是「IND | NOT│N+2| CarA」,其中CarA由128位元UUID表示,表明其是可以藉由GATT Indication 108或藉由GATT Notification 107傳送的特性,即,由GATT伺服器101傳輸而不需要GATT用戶端102詢問的特性,其分別具有或不具有接收Ack-Indication 109的確認。此外,上文指示的值123指示了特性A 302的控制碼,即,第三屬性312的控制碼M+2。
如所提及的,第三屬性312是實際上由控制碼M+2和類型CarA標識的特性A 302的值,如前述由128位元UUID表示。其許可權124是NONE,因為該特性既不能讀取也不能寫入。其值123是一串位元,如下文更好地討論的,其對應於由上層協定形成的且在圖5中示出的有效載荷250。
第四屬性313是特性A 302的描述符。其類型122為CCCD或客戶特性配置描述符(Client Characteristic Configuration Descriptor)或UUID 0x2902,如上文參考圖9的屬性144所討論的,其由SIG分配到啟用/禁用由GATT伺服器101發起的更新的開關;其許可權124是讀取/寫入(R/W),並且其值123例如被設定為指示|通知啟用(Indication | Notification Enabled)或0x0003(由SIG分配的值)。
因此,在該示例中,當GATT伺服器101期望自發地發送形成在上層協定中的有效載荷250時,用戶端在GATT伺服器的判斷力下接收GATT Notification 107或GATT Indication 108。
此外,在所示的情況下,GATT用戶端102可以修改第四屬性313的值123,因為許可權124是R/W,例如將其改為通知啟用(Notification Enabled)(0x0001)以僅接收GATT Notification 107,改為指示啟用(Indication Enabled)(0x0002)以僅接收GATT Indication 108,或者如果期望避免GATT伺服器101可以自發地傳輸有效載荷250,則為NONE或0x0000。
轉到特性303或特性B 303,第五屬性314是其聲明,其類型122為CHAR或UUID 0x2803,並且許可權124為讀取®。第五屬性314的值123為「W│M+5│CarB」,其中CarB由128位元UUID表示,表明其是可以藉由GATT Client WRITE 105傳送的特性,即,可以由GATT用戶端102在GATT伺服器101上修改的屬性。在GATT伺服器的判斷力下,用戶端可以從伺服器101接收發生了改變的確認(ACK-Write-REQ 106)。此外,上文指示的值123指示了特性B 303的控制碼,即,第六屬性315的控制碼M+5。
如所提及的,第六屬性315是實際上由控制碼M+5和類型CarB來標識的特性B 303的值,如所述由128位元UUID來表示。其許可權124是寫入(W),因為特性303經受寫入(如聲明它的屬性314的欄位值123所表示的)。其值123是一串位元,如下文更好地討論的,其對應於由上層協定形成且在圖5中示出的有效載荷250。
僅藉由示例,沒有指示第二特性303的描述符屬性,但反之,其可能存在。
因此,當GATT用戶端102期望向GATT伺服器101發送形成在上層協定中的有效載荷250時,適於使用第二特性303。
應當注意,整體上,服務Serial 301可以僅包括特性302、303中的一個。例如,發揮GATT伺服器101的作用但不需要根據上層協定形成任何有效載荷250的自行車電子系統10的部件11不需要可以藉由GATT Indication 107或GATT Notification 108傳送的特性,諸如特性A 302。這不一定意味著此類部件11不能傳輸任何事項,因為其GATT設定檔110可能包括一或多個其它服務,該一或多個其它服務包含可以藉由GATT Indication 107或GATT Notification 108傳送的一或多個特性,但其遵循傳統BLE實施方式。
反之,發揮GATT伺服器101的作用但不需要接收任何(由另一部件11根據上層協定形成的)有效載荷250的自行車電子系統10的部件11不需要可以藉由GATT Client WRITE 105傳送的特性,諸如特性B 303。這不一定意味著此類部件11不能接收任何事項,因為其GATT設定檔110可能包括一或多個其它服務,該其它服務包含可以藉由GATT Client WRITE 105傳送的一或多個特性,但其遵循傳統BLE實施方式。
甚至更一般地,服務Serial 301可以包括可以藉由GATT Indication 107或GATT Notification 108或GATT Client WRITE 105傳送的特性,並且因此適用於GATT伺服器101與GATT用戶端102之間的雙向通訊。然而,下文將僅藉由非限制性示例的方式參考圖12的特定服務Serial 301。
如上文所討論的,特性A 302和特性B 303的值屬性312、315的欄位值123對應於圖5所示的有效載荷250。從相反的角度來看,在本文描述的下層協定中,特性BLE 302、303用於通訊上文描述的上層協定的有效載荷250。
值得強調的是,欄位值123僅對應於形成在上層協定中的有效載荷,其還能夠包括如上文描述的與整個有效載荷250的加密相關的欄位,附加或替代關於單個基本有效載荷260的加密資訊;換句話說,欄位值123不包括由通訊協定形成的真實的資料包,相反其還將具有傳輸管理負擔,即,定址欄位、傳輸控制欄位等(參考BLE資料包150的欄位151-156和非BLE資料包290的欄位292)。因此,欄位值123沒有傳輸管理負擔,即,其沒有足以直接作為資料包傳輸的資訊。
如果有效載荷250必須由BLE伺服器101傳輸到BLE用戶端102,則這種有效載荷250形成特性A 302的值123,並且如果接收BLE用戶端102已經啟用對這種特性的通知/指示的接收,則其被接收。說明性和非限制性的情況是有效載荷250,其必須由說明性自行車電子系統20的騎行網路30的部件22-28之一傳輸到後撥鏈器組件21。另一說明性和非限制性的情況是有效載荷250,其必須從後撥鏈器組件21傳輸到說明性系統20的互動網路31的智慧手機29。
如果有效載荷250必須從BLE用戶端102傳輸到BLE伺服器101,則這種有效載荷250形成特性B 303的值123。說明性和非限制性的情況是有效載荷250,其必須從後撥鏈器組件21傳輸到說明性系統20的騎行網路30的部件22-28之一。另一說明性和非限制性的情況是有效載荷250,其必須從智慧手機29傳輸到說明性系統20的互動網路31的後撥鏈器組件21。
自行車電子系統10的部件11可以基於每個特定的有效載荷250的內容而例如提供給以下操作中的一或多個: d1)形成有效載荷250,其包含具有資料結構200的其可歸屬資訊片段210中的一或多個資訊片斷,這歸因於儲存在欄位Data 221中的相應的值因外部事件而改變或被部件本身的特定程式280明確改變、或因為規定定期傳輸或出於其它原因;在多個可歸屬資訊片段210的情況下,每個可歸屬資訊片段將形成相應的基本有效載荷260的欄位InfoTag 262;需注意,每個或單個基本有效載荷260的欄位261將包含指令Notification;並將其作為服務301的特性的值123來傳輸,使得有效載荷250將作為BLE資料包150的PDU 153的有效載荷159來傳輸; d2)形成具有至少一個基本有效載荷260的有效載荷250,其在欄位261中包含除Notification之外的指令並且在欄位InfoTag 262中包含另一部件11的具有資料結構200的可歸屬資訊片段210之一,其可能是上文描述的輔助資訊片段之一(例如,包含指令Write Property和待覆寫的可歸屬資訊片段X的基本有效載荷260;包含指令Reset to Factory Settings和輔助可歸屬資訊片段的基本有效載荷260,其例如僅包含在Tag 224中編碼的指令的收信人部件的辨識符;包含指令Set RTC和輔助可歸屬資訊片段的基本有效載荷260,其例如包含在Tag 224中編碼的指令的收信人部件的辨識符和欄位Data 221中的時間等);並將其作為服務301的特性的值123來傳輸,使得有效載荷250將作為BLE資料包150的PDU 153的有效載荷159來傳輸; d3)形成具有如情況d1中描述的至少一個基本有效載荷260和如情況d2中描述的至少一個基本有效載荷260的有效載荷250;並將其作為服務301的特性的值123來傳輸,使得有效載荷250將作為BLE資料包150的PDU 153的有效載荷159來傳輸; d4)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含一或多個基本有效載荷260的有效載荷250,其欄位261包括指令辨識符Notification,並且其欄位InfoTag 262包含另一部件11的可歸屬資訊片段210之一;並且記錄這種可歸屬資訊片段210的值221,由此處理基本有效載荷260; d5)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含一或多個基本有效載荷260的有效載荷250,其欄位261包括除Notification之外的指令辨識符,並且其欄位InfoTag 262包含部件本身(或所述Tag 224 All)的可歸屬資訊片段210之一;並且執行由欄位261的辨識符標識的指令,由此處理基本有效載荷260;需注意,在指令的執行中,部件11可以形成另一或其它基本有效載荷260或者另一或其它資料包250,其如上文的情況d1-d3中所闡述那樣進行傳輸;此外,需注意,指令的執行可以涉及或不涉及本文考慮的部件11的特定程式280; d6)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含一或多個基本有效載荷260的有效載荷250,其欄位261包括除Notification之外的指令辨識符,並且其欄位InfoTag 262包含自行車電子系統10的另一部件11的可歸屬資訊片段210之一;並且將所述一或多個基本有效載荷260作為服務301的特性的值123來傳輸,使得有效載荷250將作為BLE資料包150的PDU 153的有效載荷159傳輸到所述另一部件11或傳輸到第三部件11,以用於轉發到所述另一部件11; d7)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含多個基本有效載荷260的有效載荷250;將基本有效載荷260細分為兩個或更多個第二有效載荷250;並將每個第二有效載荷250作為服務301的特性的值123來傳輸,使得每個第二有效載荷250將作為相應的第二BLE資料包150的PDU 153的有效載荷159來傳輸; d8)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含多個基本有效載荷260的有效載荷250;可能地將基本有效載荷260細分為兩個或更多個第二有效載荷250;等待接收至少一個第二BLE資料包150及/或形成一或多個基本有效載荷260;將所考慮的BLE資料包150的一或多個基本有效載荷260與所述至少一個第二BLE資料包150的一或多個基本有效載荷260及/或與一或多個所形成的基本有效載荷260組合成至少一個第三有效載荷250;並且將第三有效載荷250作為服務301的特性的值123來傳輸,使得每個第三有效載荷250將作為相應的第三BLE資料包150的PDU 153的有效載荷159來傳輸; d9)接收BLE資料包150,其在有效載荷159中包含服務301的特性,其值123包括包含多個基本有效載荷260的有效載荷250;執行針對自身定址的任何基本有效載荷260的指令;並且以上文在情況d4-d8中描述的一或多個方式繼續處理其餘基本有效載荷260; d10)上述操作的組合。
可以理解,在情況d7、d8中,基本有效載荷260基於由欄位Tag 224標識的收信人部件及/或基於該收信人部件是否與所考慮的部件11直接連接而被組合或聚集在部件傳輸的有效載荷中。
需注意,用於有效載荷250的每個基本有效載荷260的可歸屬資訊片段210是從由部件11連續傳輸的有效載荷250的每個基本有效載荷260的可歸屬資訊片段210中獨立選擇的。
需注意,如果部件11既是騎行網路30的一部分,又是互動網路31的一部分,或者在任何情況下是兩個不同的BLE網路的一部分,則在d4至d10的情況下,其可以在網路中接收BLE資料包並在另一網路中傳輸BLE資料包。在這種情況下,該部件可以發揮「傳送器(router)」的作用。
值得強調的是,整體上,有效載荷或基本有效載荷可以在特性A 302上或在特性B 302上傳輸,而不依賴於其已經接收的特性;或者其可以在可以作為上文描述的GATT Client WRITE、GATT Notification或GATT Indication傳送的單個特性上接收及/或傳輸。
此外,將理解,部件可以管理傳輸佇列及/或可以管理傳輸優先順序。
本領域的技藝人士將理解,如果沒有規定有效載荷250能夠包含多個基本有效載荷260,則上述操作被簡化。
無論在無線網路中是BLE用戶端101(說明性系統20中沒有部件)、BLE伺服器101(作為說明性系統20的前撥鏈器22-1)還是BLE用戶端-伺服器(作為說明性系統20的後撥鏈器21-1),作為無線網路和有線網路的一部分的自行車系統10的部件11都可以執行類似於上文列出的功能d1-d9的功能,不同之處在於,為了傳輸有效載荷250,其僅在相應的無線連接上使用BLE架構60(並且特別是特性A 302及/或特性B 303)以及BLE資料包150(特別是PDU 153的相關有效載荷159),而在相應的有線連接(特別是分別與智慧電池21-1或智慧電池22-2)上,其根據適當的協定將有效載荷250作為資料包290的有效載荷291傳輸,該資料包具有其本身的管理負擔292。
再次強調,作為特性A 302及/或特性B 303的值傳輸的不是可以直接在有線鏈路上傳輸的整個資料包290(例如利用串列通訊協定),相反僅包含由上層協定形成的有效載荷250,作為資料包290的有效載荷291傳輸。
根據前文的描述,本領域的技藝人士將理解,為了建立具有任何物理拓撲及/或任何邏輯拓撲的網路(例如也使用允許例如建立Mesh網路的網路架構的其它角色及/或其它通訊協定)要做出哪些改變。
示例
在不減損一般性的情況下並且僅為了更清晰地表述的目的,下文參考說明性系統20簡要地描述根據上文描述的通訊上層協定和下層協定的通訊的一些簡單示例。為了簡潔起見,將使用簡化的術語,在任何情況下,根據前文的描述而認為這些術語都是清楚的。
在附圖中示意的資料流中,僅圖示說明性系統20中的涉及至少一個示例的資料通訊的部件21-24、29,另一方面省略了測量用曲柄臂25、26和可穿戴控制設備27、28。
在實施例中,假定說明性系統的所有部件20已經執行了發現階段,並且因此知曉作為BLE伺服器101(21-1、22-1、23、24)的各個部件的伺服器服務301(都彼此相等);此外,為了簡潔起見,假定說明性系統的所有部件20在記憶體中儲存每個示例所涉及的可歸屬資訊片段210。
示例1
在圖13中圖示在說明性系統20中交換的資料流,以便由智慧手機29致動前撥鏈器組件22的智慧電池22-2的電壓的顯式讀取請求,例如為了在其自身的顯示器上向使用者顯示。
智慧手機29形成具有指令辨識符(欄位261)讀取屬性(Read Property)和對應於智慧電池22-2的具有資料結構200的可歸屬資訊片段210(在本文中稱為電池電壓,Battery Voltage)的InfoTag 262的單個基本有效載荷260。特別地,Tag 224標識可歸屬資訊片段210,欄位Len 222具有空值,並且欄位Data 221不存在。
智慧手機29形成第一BLE資料包150a,其在有效載荷159中具有特性B 303,其值123對應於包含所述單個基本有效載荷260的有效載荷250a。
第一BLE資料包150a從智慧手機29(BLE用戶端)傳輸到互動網路31中的後撥鏈器組件21(BLE伺服器)的撥鏈器21-1(藉由GATT Client WRITE 105)。
在其接收之後,後撥鏈器21-1(辨識出其不是基於Tag 224的指令Read Property的收信人)形成在有效載荷159中具有特性B 303的第二BLE資料包150b,其值123再次對應於相同的有效載荷250a,並且在騎行網路30(其為BLE用戶端)上將其朝向前撥鏈器組件22(BLE伺服器)並且特別是向前撥鏈器22-1傳輸。
在其接收之後,前撥鏈器22-1藉由有線網路的架構50的下層級52-54中的合適的傳輸協定(例如序列傳輸協定)將從第二BLE資料包150b中提取的有效載荷250a在其有線鏈路(電觸點)上傳輸到其智能電池22-2,作為添加有管理負擔292的資料包290的有效載荷291。
在其接收之後,智慧電池22-2形成具有單個基本有效載荷260的第二有效載荷250b,其具有指令辨識符Notification(欄位261)和對應於相同的可歸屬資訊片段210 Battery Voltage(即,具有相同的Tag 224)的InfoTag 262,但在欄位Data 221中具有電池電壓的當前值。
智慧電池22-2在其有線鏈路(電觸點)上將第二有效載荷250b傳輸到前撥鏈器22-1,作為具有管理負擔292的資料包290的有效載荷291。
在其接收之後,前撥鏈器22-1形成在有效載荷159中具有特性A 302的第三BLE資料包150c,其值123對應於所接收的有效載荷250b、291,但不包括管理負擔292,並且作為BLE伺服器將第三BLE資料包150c傳輸到後撥鏈器組件21(BLE用戶端),特別是傳輸到其撥鏈器21-1(藉由GATT Notification 107或GATT Indication 108)。
在其接收之後,後撥鏈器21-1作為BLE伺服器形成在有效載荷159中具有特性A 302的第四BLE資料包150d(其值123對應於相同的所接收的有效載荷250b),並在互動網路31上將其傳輸到智慧手機29(BLE用戶端)。
示例2
在圖14中圖示在說明性系統20中交換的資料流,以便由智慧手機29例如基於由用戶藉由其觸控式螢幕插入的值在左控制設備24上致動延遲時間閾值的值的寫入(修改)。
智慧手機29形成具有單個基本有效載荷260的有效載荷250a,其包括指令辨識符Write Property(欄位261)和對應於左控制設備24(指令的收信人部件)的具有資料結構200的可歸屬資訊片段210的InfoTag 262,在本文中稱為Delay Threshold(延遲閾值)。特別地,Tag 224標識可歸屬資訊片段210,並且欄位Data 221包含待分配給延遲時間閾值的值。智慧手機29形成具有特性B 303的第一BLE資料包150a,其值123對應於有效載荷250a。
BLE資料包150a在互動網路31中從智慧手機29(BLE用戶端)傳輸到後撥鏈器組件21的撥鏈器21-1(BLE伺服器)。
在其接收之後,後撥鏈器21-1(辨識出其不是指令的收信人)形成具有特性B 303的第二BLE資料包150b(其值123再次對應於相同的有效載荷250a),並在騎行網路30(BLE用戶端)上將其傳輸到左控制設備24(BLE伺服器)。
在其接收之後,左控制設備24在修改了其自身的Delay Threshold且因此執行了指令之後形成第二有效載荷250b,其具有單個基本有效載荷260、具有指令辨識符Notification(欄位261)和對應於相同的可歸屬資訊片段210 Delay Threshold的InfoTag 262,即,具有相同的Tag 224,在此情況下是發信人部件的辨識符,並且在欄位Data 221中具有延遲閾值的當前值。
左控制設備24形成具有特性A 302的第三BLE資料包150c,其值123對應於有效載荷250b,並且作為BLE伺服器將第三BLE資料包150c傳輸到後撥鏈器組件21(BLE用戶端)。
在其接收之後,後撥鏈器組件21(特別地,其撥鏈器21-1)作為BLE伺服器形成具有特性A 302的第四BLE資料包150d(其值123對應於相同的所接收的有效載荷250b),並在互動網路31上將其傳輸到智慧手機29(BLE用戶端)。
可替代地,第二有效載荷250b可以包含例如欄位261中的指令Write Confirmation(寫入確認)和空InfoTag 262,或僅承載可歸屬資訊片段210 Delay Threshold的Tag 224。仍可替代地,左控制設備24可以不形成任何有效載荷250b,僅執行指令而不進行答覆。
示例3
在圖15中圖示在說明性系統20中交換的資料流,以便致動前撥鏈器組件22的智慧電池22-2的充電位凖到智能手機29的自發傳輸(通知),例如以便在其自身顯示器上將其顯示給使用者,例如因為其已經改變或為了定期更新顯示的資料等。
智慧電池22-2形成具有單個基本有效載荷260的有效載荷250a,其具有指令辨識符Notification(欄位261)和對應於其可歸屬資訊片段210 Charge Level的InfoTag 262,在欄位Data 221中具有電池充電位凖的當前值。
智慧電池22-2在其有線鏈路(電觸點)上將有效載荷250a傳輸到前撥鏈器22-1,作為具有其自身管理負擔292的資料包290的有效載荷291。
在其接收之後,前撥鏈器22-1形成具有特性A 302的BLE資料包150a,其值123不對應於整個所接收的資料包290,而是僅對應於所接收的有效載荷250a,並且作為BLE伺服器將BLE資料包150a傳輸到後撥鏈器組件21(BLE用戶端),特別地傳輸到其撥鏈器21-1。
在其接收之後,後撥鏈器21-1作為BLE伺服器形成具有特性A 302的第二BLE資料包150b(其值123對應於相同的所接收的有效載荷250a),並在互動網路31上將其傳輸到智慧手機29(BLE用戶端)。
示例4
在圖16中圖示在說明性系統20中交換的資料流,以便致動藉由左手動控制設備24輸入的前撥鏈器組件22的換擋命令。
左手動控制設備24例如在其用於升擋命令的操縱桿的位移時形成具有單個基本有效載荷260的有效載荷250a,其包括指令辨識符(欄位261)Notification和對應於具有資料結構200的其可歸屬資訊片段210 Lever Event(操縱桿事件)的InfoTag 262,其值(欄位Data 221)標識特定操縱桿。
左手動控制設備24作為BLE伺服器形成具有特性A 302的第一BLE資料包150a(其值113對應於有效載荷250a),並將其傳輸到後撥鏈器組件21(BLE用戶端),特別地傳輸到其撥鏈器21-1。
在其接收之後,後撥鏈器21-1可選地作為BLE伺服器形成具有特性A 302的第二BLE資料包150b(其值123對應於相同的所接收的有效載荷250a),並在互動網路31上將其傳輸到智慧手機29(BLE用戶端),例如為了資料收集(資料記錄器)的目的。
後撥鏈器21-1形成具有單個基本有效載荷260的第二有效載荷250b,其具有指令辨識符Shift Up(欄位261)和對應於前撥鏈器22的具有資料結構200的可歸屬資訊片段210的InfoTag 262,例如,其中Tag 224標識前撥鏈器22,並且欄位Data 221為空。
後撥鏈器21-1形成具有特性B 303的第三BLE資料包150c(其值123對應於第二有效載荷250b),並在騎行網路30上作為BLE用戶端將其傳輸到前撥鏈器組件22(BLE伺服器)。
在其接收之後,前撥鏈器組件21致動換擋,並形成第三有效載荷250c,該第三有效載荷包含三個基本有效載荷260: -一個基本有效載荷260包含指令辨識符Notification(欄位261)、對應於其可歸屬資訊片段210齒輪的索引(Index of toothed wheel)的InfoTag 262,以及標識前撥鏈器22所嚙合的特定齒輪的值(欄位Data 221), -一個基本有效載荷260包含指令辨識符Notification(欄位261)、對應於其歸屬資訊片段210 換擋計數器(Gearshift counter)的InfoTag 262,以及等於有效換擋次數的值(欄位Data 221),例如從出廠開始的, -一個基本有效載荷260包含指令辨識符Notification(欄位261)、對應於其可歸屬資訊片段210 電機位置(Motor position)的InfoTag 262,以及等於電機的實際位置的值(欄位Data 221),例如,以任意單位表示, 其中這三個InfoTag具有資料結構200。
前撥鏈器組件22作為BLE伺服器形成具有特性A 302的第四BLE資料包150d(其值123對應於有效載荷250c),並作為BLE伺服器將第四BLE資料包150d傳輸到後撥鏈器組件21(BLE用戶端),特別是傳輸到其撥鏈器21-1。
在其接收之後,後撥鏈器21-1作為BLE伺服器形成具有特性A 302的第五BLE資料包150e(其值123對應於相同的所接收的有效載荷250c),並在互動網路31上將其傳輸到智慧手機29(BLE用戶端),例如再次用於資料記錄的目的。
需注意,可替代地,左手動控制設備24可以直接產生具有指令辨識符Shift Up(欄位261)和對應於前撥鏈器22的可歸屬資訊片段210的InfoTag 262的有效載荷,後撥鏈器22-1(辨識出其不是指令的收信人)僅轉發到前撥鏈器22。因此,在這種情況下,有效載荷250a由後撥鏈器22-1始終以其BLE用戶端102的角色接收和轉發,改變所使用的特性(從特性A到特性B)。
示例5
在圖17中圖示在說明性系統20中交換的資料流,該資料流強調了基本有效載荷260可以如何由部件11(特別是後撥鏈器21-1)組合,例如為了管理傳輸優先權及/或佇列的目的。
後撥鏈器21-1作為互動網路31上的BLE伺服器接收由智慧手機29(BLE用戶端)形成和傳輸的第一BLE資料包150a。第一BLE資料包150a在其有效載荷159中包含特性B 303,其值123對應於具有第一基本有效載荷260a的第一有效載荷250a。
第一基本有效載荷260a包含前撥鏈器的指令Read(欄位261)軟體版本(InfoTag 262)。
後撥鏈器21-1認為該請求不具有優先順序,並且不立即作出反應。
然後,後撥鏈器21-1作為騎行網路30上的BLE用戶端接收由左手動控制設備24(BLE伺服器)形成和傳輸的第二BLE資料包150b。第二BLE資料包150b在其有效載荷159中包含特性A 302,其值123對應於具有第二基本有效載荷260b的第二有效載荷250b,該第二基本有效載荷包含指令Lever Event和欄位Data 221中的特定操縱桿的標識(參考示例4的BLE資料包150a)。
後撥鏈器21-1形成具有兩個基本有效載荷的第三有效載荷250c:與前撥鏈器22的指令Shift Up相關的從智慧手機29接收的基本有效載荷260a和由其自身形成的基本有效載荷260c(參考示例4的BLE資料包150c)。
後撥鏈器21-1形成具有特性B 303的第三BLE資料包150c(其值123對應於第三有效載荷250c),並作為BLE用戶端在騎行網路30上將其朝向前撥鏈器組件22(BLE伺服器)傳輸。
示例6
在圖18中圖示在說明性系統20中交換的資料流,該資料流強調了基本有效載荷260可以如何由部件11(特別是後撥鏈器21-1)進行分類。
後撥鏈器21-1作為互動網路31上的BLE伺服器接收由智慧手機29(BLE用戶端)形成和傳輸的第一BLE資料包150a。第一BLE資料包150a在其有效載荷159中包含特性B 303,其值123對應於具有兩個基本有效載荷260a、260b的第一有效載荷250a。
第一基本有效載荷260a包含與左控制設備24的Delay Threshold相關的指令Write Property(欄位261)(參考示例2的第一有效載荷250a)。
第二基本有效載荷260b類似地包含與右控制設備23的Delay Threshold相關的指令Write Property(欄位261)。
後撥鏈器21-1形成僅具有基本有效載荷260a的第二有效載荷250b;形成具有特性B 303的第二BLE資料包150b(其值123對應於第二有效載荷250b),並作為BLE用戶端在騎行網路30上將其朝向左控制設備24(BLE伺服器)傳輸。
後撥鏈器21-1形成僅具有基本有效載荷260b的第三有效載荷250c;形成具有特性B 303的第三BLE資料包150c(其值123對應於第三有效載荷250c),並作為BLE用戶端在騎行網路30上將其朝向右控制設備23(BLE伺服器)傳輸。
最終評論
自行車電子系統可以包括比所示更少的部件,並且在足以實施本文公開的至少一些通訊方法或協定的最小配置中,其可以包括兩個部件11。僅藉由示例,提及了自行車電子系統,其僅包括撥鏈器或其它可控設備和用於控制其的手動控制設備;或者包括撥鏈器和體現為配置成自動控制撥鏈器的控制器或處理器的部件,例如基於由其一或多個偵測器設備偵測的一或多個量,例如基於所偵測的速度;等。
根據前文的描述,本領域技藝人士將理解,為了建立具有任何物理拓撲及/或任何邏輯拓撲的網路(例如也使用允許例如建立Mesh網路的網路架構的其它作用)要做出哪些改變。
本領域的技藝人士將理解,上文描述的通訊方法或協定的一些態樣允許獲得顯著的優勢,正如相關聯的自行車系統和部件、電腦程式和可讀構件一樣。所述態樣(即使它們已經在更具體的上下文中被描述)也在更一般的上下文中且獨立於在其被公開的上下文中提供的任何其它細節而應當被認為本身是新的和創造性的。
也獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的示例涉及以下事實:由於作為BLE服務的特性的值而將多個基本有效載荷組合在一起的可能性,每個基本有效載荷包含可歸屬於一或多個部件的資訊片段,並且因此包含一或多個部件的可歸屬資訊片段,所以相對於根據BLE標準的傳統實施方式能夠明顯減少發現時間(Discovery time)及/或網路流量,特別是在需要傳輸的高資料量的情況下也是如此。
這可能需要減少通訊延遲時間及/或對資料交換請求的回應時間,其可能包括用於執行手動或自動命令的請求,該手動或自動命令決定自行車部件(如撥鏈器組件21、22)的功能,這從安全角度來看也是非常重要的。
這獨立於例如上文參考圖4至圖5描述的基本有效載荷260的特定格式、其每個欄位的特定格式以及在用於其傳輸的網路架構50、60的下層52-54、62-63中使用的特定協定。
為了也在量方面理解可能獲得的優勢,僅藉由非限制性示例考慮,對應於說明性系統20的自行車電子系統10的配置可以用總數為幾百甚至幾千的可歸屬資訊片段進行建模,從而達到至少在實踐中利用基於BLE架構的傳統實施方式無法達到的詳細程度。
與對應於說明性系統20的自行車電子系統10的配置相關的實驗測試(其中上層協定(基本有效載荷260)和下層協定(圖12的服務Serial 301)都被實施,具有一百個可歸屬資訊片段)允許偵測到發現階段的持續時間減少至少兩個數量級,該減少隨著可歸屬資訊片段的增加而以基本線性的方式提高,相對於基於BLE架構的傳統實施方式中的幾秒鐘,降至幾十毫秒(並因此使用具有專用於每個系統部件的每個特定資訊片段的BLE特性的BLE服務)。
而且,如果需要標識各種系統部件的全部可歸屬資訊片段的步驟,上文提及的組合能力允許獲得一定的時間節省。
也是獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及以下事實:藉由BLE網路架構的GATT伺服器的服務的特性,作為該特性的值(123)發送有效載荷,其包括:可歸屬資訊片段的唯一辨識符,其可以憑藉其單義性追溯到發信人部件或收信人部件;及指令的辨識符,其能夠由作為該指令的收信人的部件執行。
以這種方式,能夠利用BLE技術通訊甚至非常大量的指令及/或甚至非常大量的資料,但不需要限定具有非常大量特性的GATT服務。
此外,可以使指令在不直接連接的兩個系統部件之間容易地傳播。
在用於執行指令的第一種情況下以及在用於將有效載荷轉發到收信人部件或收信人部件直接或間接連接到的不同部件的第二種情況下,接收部件基於指令及/或可歸屬資訊片段的辨識符來區分有效載荷是否被定址。
此外,類似於上文所描述的,能夠減少發現階段的延遲時間。
對於在網路流量方面可能實現的優勢的定量指示,參考了上文已經強調的內容。
也是獨立於在其已公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及以下事實:如上文所強調的,在BLE資料包中傳輸的BLE特性用於僅傳輸形成在上層協定中的有效載荷250,而不是真實的資料包(真實的資料包相反還具有傳輸管理負擔,即,定址欄位、傳輸控制欄位等),從而節省BLE網路中的流量。
以這種方式,有效載荷250也可以在同一網路的多個鏈路上或在不同網路的鏈路上、在多個部件之間不變地傳播。
特別地,有效載荷250可以在作為BLE特性的值的BLE資料包與除BLE之外的通訊協定的資料包之間不變地傳遞。
這不同於其中使用兩個BLE特性(特別是GATT Notification和GATT Client WRITE)的實施方式,以便根據串列協定建立兩個通訊通道,在該通訊通道上傳輸串列協定的恰好所有流量,即,整個資料包。
特別地,在本文公開的上層協定與下層協定之間的互動模式中,不存在資訊的重複,因為沒有必要相對於BLE提供的管理負擔而增加任何管理負擔。
類似地,有效載荷250可以在同一BLE網路中或在兩個不同的BLE網路中,在作為BLE特性的值的第一BLE資料包與作為第二BLE特性的值的第二BLE資料包之間不變地傳遞。
需注意,同樣由於形成在上層協定中的所述有效載荷250包括在自行車電子系統10中是唯一的辨識符(Tag 224)這一事實,因此該有效載荷不需要被拘束到特定的發信人欄位或特定的收信人欄位。
也是獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及以下事實:自行車電子系統的特定部件(在說明性系統20中為智慧電池21-2、22-2)的可歸屬資訊片段在BLE網路中藉由不同的部件(在說明性系統20中為撥鏈器21-1、22-1)進行通訊,相反,所述特定部件與之具有非BLE連接。
在傳統BLE系統建模中,每個部件被連接在BLE網路中,並以其自身的一組特性進行建模。需注意,本文考慮了能夠通訊的部件,因此這不是在能夠通訊的部件中建模不能通訊的部件的問題。
該規定允許減少網路鏈路的數量,因為所述特定部件也可以僅連接到所述不同部件,將與系統的其餘部分的通訊委託給所述不同部件。
所述不同部件可能還在BLE網路中通訊其自身的可歸屬資訊片段。
也是獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及以下事實:作為服務301的特性的有效載荷被傳送的可歸屬資訊片段包括欄位值221,其中每個位元或位元組指示相應的基本資訊片段,可歸屬資訊片段的基本資訊片段是對自行車電子系統中聯合通訊的候選位址。
例如,資料類型「設備狀態」可以收集部件的一些基本資訊,例如各種類型的一或多個錯誤的存在、電池正在充電的狀態、正在建立網路的狀態,當其值的一或多個預設位元被設定為預設布林值(例如設定為1)時可能例如與少量模式中的活動模式有關。
藉由以這種方式在自行車電子系統的建模中提供「類似容器」的方法,尤其能夠輔助程式設計,以減少與可歸屬資訊片段相關的唯一辨識符的總數,這可能縮短相關的一串位元並由此減少網路流量。
還觀察到,當該規定與上文描述的將上層協定的多個基本有效載荷組合到下層協定中的可能性一起使用時,人們得到了可歸屬資訊片段的分層級兩級結構,這進一步減少網路流量。
也是獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及藉由對系統部件的/系統部件的複數個可歸屬資訊片段而對自行車電子系統進行建模,這些系統部件在整個系統中被唯一地標識,並且藉由BLE網路架構的GATT伺服器的GATT服務的特性來通訊包括部件的可歸屬資訊片段的辨識符的有效載荷(250)。
這不同於根據BLE的傳統實施方式,其中相反,類似特性具有相同的辨識符,例如,所有電池電壓由同一個辨識符(例如,由SIG限定的16位元UUID)標識並且僅在其在特定BLE資料包中在兩個特定部件之間傳送時被區分,其中管理負擔152存在收信人部件的位址。另一方面,藉由使用本文公開的唯一辨識符,有效載荷也可以在同一BLE網路的多個鏈路上或在不同BLE網路的鏈路上、在多個部件之間不變地傳播。
部件的可歸屬資訊片段的辨識符可以與有效載荷中的相關指令一起傳送。
有效載荷可以在ISO/OSI模型50的應用層級51或網路架構的最上層級(特別是BLE網路架構60或BLE標準的應用層級61)的下子層級51-1、61-1中傳送,並且形成在ISO/OSI模型50的應用層級51或網路架構的最上層級(特別是高於所述下子層級的BLE標準60的應用層級61)中的子層級51-2、61-2中。
ISO/OSI模型50的所述應用層級51或網路架構的最上層級(特別是BLE標準60的應用層級61)可以包括高於形成有效載荷250的子層級51-2、61-2的最上子層級51-3、61-3。
在最上子層級51-3、61-3中可以提供應用程式,其利用上文描述的上層協定和下層協定。
也是獨立於在其被公開的上下文中提供的任何其它細節而創新的態樣的另一示例涉及以下事實:在自行車電子系統中,其中每個部件具有零個或多個可歸屬資訊片段和用於系統內的通訊的候選位址(藉由BLE特性),可歸屬資訊片段在整個系統中被唯一地標識,第一部件的可歸屬資訊片段取代相對於第二部件的給定資料建模。
該資料可以選自由以下組成的組:第二部件的特定程式的參數或變數或常數;第二部件的狀態變數;由第二部件獲得的測量值;第二部件的給定辨識符;及第二部件的特定程式的給定辨識符。
因為以這種方式,可歸屬資訊片段的固有或自然歸屬可以顛倒,例如將部件X的可歸屬資訊片段限定為「部件Y的電機的位置」,所以提高了系統的通用性,因為在建模中存在較少的義務,並且還能夠對具有可分配給相應可歸屬資訊片段的少量記憶體資源的部件進行建模。
根據本說明書,本領域的技藝人士將理解在上文在一般方面描述的自行車電子系統10的任何配置中以及在相關的自行車或騎行電子部件、自行車電子系統、電腦程式、電腦可讀構件及/或通訊網路(這些應被視為本文公開的主題的其它態樣)中如何實現本文描述的通訊、傳輸及/或接收方法或協定。
本領域的技藝人士將理解,上文描述的各態樣可以彼此組合,正如相應的從屬特徵那樣。
本領域的技藝人士將理解,為了簡潔起見僅在特定態樣的上下文中描述的一些從屬特徵也適用於其它態樣。
適用於一或多個上述態樣的其它特徵包括以下特徵。
作為BLE伺服器的至少一個且優選地每個部件暴露至少一個且優選地單個GATT服務。
所述至少一個且優選地單個GATT服務包括適於藉由GATT Notification或GATT Indication傳送的至少一個且優選地單個特性,及/或適於藉由GATT Client WRITE傳送的至少一個且優選地單個特性,及/或適於藉由GATT Notification或GATT Indication或GATT Client WRITE傳送的至少一個且優選地單個特性。
自行車電子系統的至少一個部件在至少一個第一BLE網路中與至少一個第二系統部件連接且優選地為BLE用戶端,並且在至少一個第二BLE網路中與至少一個第三系統部件連接且優選地為BLE伺服器,所述第三系統部件等同於或不同於所述至少一個第二部件。
當所述至少一個第三系統部件不同於所述至少一個第二部件時,所述至少一個部件可以被配置成在有效載荷的傳輸中將所述至少一個第一BLE網路和所述至少一個第二BLE網路接通。
自行車電子系統的部件可以包括自行車專用電子設備。
自行車電子系統的部件還可以包括配置成與一或多個騎行專用電子設備互動的通用電子設備。
自行車電子系統的部件可以選自由圖1所示的若干個設備組成的組。
自行車電子系統的部件可以包括:右手動控制設備、左手動控制設備、前撥鏈器、後撥鏈器。
自行車電子系統的部件可以優選地還包括傳輸側上的曲柄臂及/或與傳輸側相反的一側上的曲柄臂及/或至少一個可穿戴控制設備。
右手動控制設備、左手動控制設備、前撥鏈器、後撥鏈器以及傳輸側上的可選曲柄臂及/或與傳輸側相反一側上的曲柄臂及/或至少一個可穿戴控制設備可以連接在具有單個中心主BLE(其優選為後撥鏈器)的第一BLE網路中。
自行車電子系統的部件還可以包括設有圖形化使用者介面的至少一個通用電子設備。
所述至少一個通用電子設備可以在第二BLE網路中與第一BLE網路的部件(其為所述單個中心主BLE)連接。
10:自行車電子系統 11:部件 20:自行車電子系統 21:後撥鏈器組件 22:前撥鏈器組件 23:右手動控制設備 24:左手動控制設備 25:測量用曲柄臂 26:測量用曲柄臂 27:可穿戴控制設備 28:可穿戴控制設備 29:智慧手機 30:騎行網路 31:互動網路 32:有線網路 33:有線網路 40:用戶端 50:ISO/OSI模型 51:應用層級 52:下層 53:第二層級 54:第一層級 60:BLE標準 61:應用層級 62:主機 63:層控制器 101:伺服器設備 102:用戶端設備 103:GATT Client READ 104:Read-RESP 105:GATT Client WRITE 106:ACK-Write-REQ 107:GATT Notification 108:GATT Indication 109:ACK-Indication 110:屬性資料庫 111:服務 112:特性 113:聲明屬性 114:值屬性 115:描述符屬性 120:屬性 121:控制碼 122:類型 123:值 124:一組許可權 130:GATT設定檔 131:第一服務 132:第二服務 133:特性電池電量 134:特性 135:特性 136:特性 137:特性 138:特性 139:特性 140:第一屬性 141:第二屬性 142:第三屬性 143:第四屬性 144:第五屬性 145:第六屬性 146:第七屬性 147:第八屬性 148:第九屬性 149:第十屬性 150:BLE資料包 151:前序信號 152:存取位址 153:PDU 154:騎行冗餘檢查字串或CRC 155:前序信號 156:前序信號 157:訊息完整性檢查字串MIC 158:操作代碼Op 159:有效載荷 200:資料結構 210:可歸屬資訊片段 221:欄位 222:欄位 223:欄位 224:欄位 225:欄位 226:欄位 250:有效載荷 260:基本有效載荷 261:欄位 262:欄位 270:模組 280:模組 290:非BLE資料包 291:有效載荷 292:管理負擔 300:GATT伺服器 301:GATT私有服務 302:特性A 303:特性B 310:屬性 311:屬性 312:屬性 313:屬性 314:屬性 315:屬性 1101:撥鏈器組件 1102:撥鏈器組件 1103:制動器 1104:制動器 1105:前懸架或減震器 1106:後懸架或減震器 1107:鞍座設定調節器 1108:手動控制設備 1109:手動控制設備 1110:手動控制設備 1111:手動控制設備 1112:設備 1113:設備 1114:設備 1115:設備 1116:設備 1117:設備 1118:設備 1119:設備 1120:自行車電腦 1121:中心控制器 1130:心率監測器 1131:智慧手機 1132:平板電腦 1133:電腦 1134:電池充電器 1135:智慧手錶 150a:第一BLE資料包 150b:第二BLE資料包 150c:第三BLE資料包 150d:第四BLE資料包 150e:第五BLE資料包 21-1:後撥鏈器 21-2:智慧電池 22-1:前撥鏈器 22-2:智慧電池 250a:第一有效載荷 250b:第二有效載荷 250c:第三有效載荷 260a:第一基本有效載荷 260b:第二基本有效載荷 260c:基本有效載荷 51-1:下子層級 51-2:子層級 51-3:最上子層級 61-1:下子層級 61-2:子層級 61-3:最上子層級
本文所揭示的主題的進一步特徵和優點將從以下參考所附附圖對其一些優選實施例的詳細描述中變得更加清楚,其中:
- 圖1圖示自行車電子系統,
- 圖2圖示說明性的自行車電子系統的方塊圖,
- 圖3示意性地圖示網路架構和相關的層級和子層級,
- 圖4示意性地圖示第一協定的資料結構,
- 圖5示意性地圖示第一協定的資料包的有效載荷格式,
- 圖6示意性地圖示通訊資料包格式,
- 圖7示意性地圖示BLE部件及其互動,
- 圖8示意性地圖示BLE特性,
- 圖9示意性地圖示傳統的、說明性的GATT伺服器,
- 圖10示意性地圖示傳統的BLE資料包,
- 圖11示意性地圖示圖2的說明性自行車電子系統的更多細節,
- 圖12示意性地圖示說明性的GATT伺服器,以及
- 圖13至圖18示意性地圖示自行車電子系統中的說明性資料流。
國內寄存資訊(請依寄存機構、日期、號碼順序註記) 無 國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記) 無
250:有效載荷
260:基本有效載荷
261:欄位
262:欄位

Claims (15)

  1. 一種應用在一自行車電子系統(10)的部件(11)中的傳輸方法,該系統(10)包括至少一個第二接收部件(11),該系統(10)的每個部件(11)具有零個或多個能夠歸屬於該部件(11)的資訊片段(210)並且具有用於該系統(10)內的通訊的候選位址,每個該可歸屬資訊片段(210)包括一辨識符(224),該辨識符(224)在該自行車電子系統(10)中是唯一的,該方法包括以下步驟: - 形成一有效載荷(250),其中該形成有效載荷(250)的步驟包括以下步驟: -- 形成複數個基本有效載荷(260),每個基本有效載荷至少包含該可歸屬資訊片段(210)中的相應一個的唯一辨識符(224),以及 -- 將該複數個基本有效載荷(260)一起組合成該有效載荷(250),以及 - 將該有效載荷(250)傳輸到該至少一個接收部件(11),作為一藍芽低功耗®網路架構的一GATT伺服器(101、300)的一服務(301)或BLE服務(301)的一特性(302、303)的值(123)。
  2. 根據請求項1之傳輸方法,其中該值(123)沒有傳輸管理負擔。
  3. 根據請求項1之傳輸方法,其中用於一有效載荷(250)的每個基本有效載荷(260)的該可歸屬資訊片段(210)是獨立於用於該部件(11)隨後傳輸的一有效載荷(250)的每個基本有效載荷(260)的該可歸屬資訊片段(210)而選擇的。
  4. 根據請求項1之傳輸方法,其中傳輸該有效載荷(250)的步驟在ISO/OSI模型(50)的應用層級(51)的或該網路架構的最上層級的一下子層級(51-1、61-1)中執行,特別是在該標準藍芽低功耗®BLE(60)的應用層級(61)的一下子層級(51-1、61-1)中執行,並且形成該有效載荷(250)的步驟在該ISO/OSI模型(50)的該應用層級(51)的或該網路架構的最上層級的一子層級(51-2、61-2)中執行,特別是在高於該下子層級的、該BLE標準(60)的應用層級(61)的一子層級中執行,其中優選地,該ISO/OSI模型(50)的該應用層級(51)或該網路架構的最上層級,特別是該BLE標準(60)的應用層級(61),包括一最上子層級(51-3、61-3),該最上子層級(51-3、61-3)高於其中執行形成該有效載荷(250)的步驟的該子層級(51-2、61-2)。
  5. 根據請求項1之傳輸方法,其中一有效載荷(250)的該基本有效載荷(260)包括該系統(10)的至少兩個不同部件(11)的可歸屬資訊片段(210)的唯一辨識符(224),不一定包括該傳輸部件(11)及/或該第二接收部件(11)。
  6. 根據請求項1之傳輸方法,其中一有效載荷(250)的基本有效載荷(260)的一數量在各個有效載荷(250)之間是可變的。
  7. 根據請求項1之傳輸方法,其中至少一個基本有效載荷(260)還包括可歸屬資訊片段(210)的一欄位值(221),該可歸屬資訊片段分別相對於該可歸屬資訊片段(210)所涉及的該部件(11)的至少兩個不同性質而包含至少兩個位元或至少兩組位元,不一定包括該傳輸器部件(11)及/或該第二接收部件(11)。
  8. 根據請求項1之傳輸方法,其中當該部件(11)是一BLE伺服器時,藉由一GATT Notification(107)或一GATT Indication(108)傳送用以傳輸該有效載荷(250)的該BLE服務的特性(301、302),並且/或者當該部件(11)是一BLE用戶端時,藉由一GATT用戶端WRITE(105)傳送用以傳輸該有效載荷(250)的該BLE服務的特性(301、302)。
  9. 根據請求項1之傳輸方法,其中每個基本有效載荷(260)還包括能夠由一收信人部件(11)執行的一指令的一辨識符(261)。
  10. 一種應用在一自行車電子系統(10)的一部件(11)中的接收方法,該系統(10)包括至少一個第二傳輸器部件(11),該系統(10)的每個部件(11)具有零個或多個能夠歸屬於該部件(11)的資訊片段(210)並且具有用於該系統(10)內的通訊的候選位址,每個該可歸屬資訊片段(210)包括一辨識符(224),該辨識符(224)在該自行車電子系統(10)中是唯一的,該方法包括以下步驟: - 從該至少一個第二傳輸器部件(11)接收一有效載荷(250),作為一藍芽低功耗®網路架構的一GATT伺服器(101、300)的一服務(301)或一BLE服務(301)的一特性(302、303)的值(123), - 從該有效載荷(250)中提取複數個基本有效載荷(260),每個基本有效載荷(260)均包含該可歸屬資訊片段(210)中的相應一個的唯一辨識符(224)。
  11. 根據請求項10之接收方法,其中每個基本有效載荷(260)還包括能夠由一收信人部件(11)執行的一指令的一辨識符(261),並且該接收部件(11)基於指令辨識符(261)及/或基於該可歸屬資訊片段(210)的該唯一辨識符(224)來區分每個基本有效載荷(260)的指令是否針對自身被定址。
  12. 根據請求項10之接收方法,包括以下步驟: - 處理作為收信人的該複數個基本有效載荷(260)中的一或多個,及/或 - 將該複數個基本有效載荷(260)中的一或多個傳輸到該系統(10)的一第三部件(11),及/或 - 將該複數個基本有效載荷(260)細分為兩個或更多個第二有效載荷(250),並且將每個第二有效載荷(250)傳輸到該系統(10)的一相應的第三部件(11),及/或 - 等待至少一個第二有效載荷(250)的接收並且/或者形成一或多個基本有效載荷(260),將該有效載荷(250)的該複數個基本有效載荷(260)中的一或多個與該至少一個第二有效載荷(250)的一或多個基本有效載荷(260)及/或與一或多個所形成的基本有效載荷(260)組合成至少一個第三有效載荷(250),並將該第三有效載荷(250)傳輸到該系統(10)的一第三部件(11),及/或 - 上述步驟的組合。
  13. 根據請求項12之接收方法,其中傳輸一有效載荷(250)之步驟包括以下步驟:將該有效載荷(250)傳輸作為一藍芽低功耗®網路架構的一GATT伺服器(101、300)的一服務(301)或BLE服務(301)的一特性(302、303)的值(123),或者將該有效載荷(250)傳輸作為根據BLE之外的一通訊協定的一資料包(290)的有效載荷(291),該資料包還具有一通訊管理負擔(292)。
  14. 一種自行車電子系統(10、20),該自行車電子系統包括至少兩個部件(11),即至少一個第一部件(11)和至少一個第二部件(11),該至少一個第一部件(11)的處理器構件被配置成執行根據請求項1之傳輸方法的步驟並且可能地執行根據請求項10之接收方法的步驟,該至少一個第二部件(11)的處理器構件被配置成執行根據請求項10之接收方法的步驟並且可能地執行根據請求項1之傳輸方法的步驟。
  15. 一種騎行電子部件(11),該騎行電子部件(11)具有被配置成執行根據請求項1之傳輸方法的步驟的處理器構件及/或用於執行根據請求項10之接收方法的步驟的構件。
TW112107698A 2022-03-24 2023-03-03 自行車電子系統中的通訊方法 TW202344078A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IT102022000005801A IT202200005801A1 (it) 2022-03-24 2022-03-24 Metodi di comunicazione in un sistema elettronico di bicicletta
IT102022000005801 2022-03-24

Publications (1)

Publication Number Publication Date
TW202344078A true TW202344078A (zh) 2023-11-01

Family

ID=82196549

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112107698A TW202344078A (zh) 2022-03-24 2023-03-03 自行車電子系統中的通訊方法

Country Status (5)

Country Link
US (1) US20230303212A1 (zh)
EP (1) EP4250783A1 (zh)
CN (1) CN116806019A (zh)
IT (1) IT202200005801A1 (zh)
TW (1) TW202344078A (zh)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITUB20152302A1 (it) * 2015-07-20 2017-01-20 Campagnolo Srl Sistema elettronico di bicicletta
JP6988124B2 (ja) * 2017-03-27 2022-01-05 カシオ計算機株式会社 通信装置、電子時計、通信方法、及びプログラム

Also Published As

Publication number Publication date
IT202200005801A1 (it) 2023-09-24
US20230303212A1 (en) 2023-09-28
CN116806019A (zh) 2023-09-26
EP4250783A1 (en) 2023-09-27

Similar Documents

Publication Publication Date Title
TWI620683B (zh) 自行車電子系統(二)
JP6858300B2 (ja) 電子装置、通信方法、およびプログラム
CN109889416B (zh) 一种基于微服务架构的智能家居系统及构建方法
JP7400127B2 (ja) デュアル独立制御系に基づく車両インテリジェント制御システムと車両
US7623931B2 (en) Multiprocessor control system for cycles, for example for competition bicycles
WO2016090539A1 (zh) 一种数据传输方法及设备
JP2017212725A (ja) ネットワークハブ、転送方法及び車載ネットワークシステム
US20070174644A1 (en) Apparatus and Method for Dynamic Tokenization of Wireless Network Datagrams
US20090022151A1 (en) Packet structure and packet transmission method of network control protocol
US20090213848A1 (en) Packet Structure and Packet Transmission Method of Network Control Protocol
Bai et al. Compact Modbus TCP/IP protocol for data acquisition systems based on limited hardware resources
TW202344078A (zh) 自行車電子系統中的通訊方法
TW202344079A (zh) 自行車電子系統中的通訊方法
TW202344024A (zh) 自行車電子系統中的通訊方法
WO2005094193A2 (en) Home network system
CN112583822B (zh) 通信设备及通信方法
CN116782277B (zh) 一种用于车载c-v2x的分布式部署系统
Dor et al. 13 Middleware for the Internet of Things
TW201927015A (zh) 維護裝置
WO2005094194A2 (en) Data processing method for application layer