示意性實施例總體上涉及用于處理對于車輛的軟件、硬件模塊和組件的遠程數(shù)據(jù)和訪問請求以及來自車輛軟件、硬件模塊和組件的遠程數(shù)據(jù)和訪問請求的方法和設備。
背景技術:
車輛的信息娛樂模塊和遠程信息處理模塊(諸如,軟件模塊和硬件組件)通常可通過從云端或遠程源(諸如,互聯(lián)網)中提取的數(shù)據(jù)而獲益。這種實時數(shù)據(jù)可啟用高級駕駛員輔助,可提升駕駛體驗,并且通??捎兄谲囕v中的高級計算功能。目前,這可能會出現(xiàn)一些困難,因為雖然嵌入式車輛調制解調器可提供連接能力,但是可被遠程發(fā)送和接收的命令和數(shù)據(jù)結構可能需要預先在該調制解調器和接收遠程數(shù)據(jù)的模塊兩者中非常準確地被限定。因此,如果新的功能被添加到可從遠程數(shù)據(jù)獲益的車輛軟件或車輛硬件,則可能需要調制解調器軟件更新,以便處理新的請求,這可能會對車輛駕駛員造成令人沮喪的情形。
在一個示例中,描述了一種通信服務網絡,所述通信服務網絡使客戶端通信裝置能夠通過網關按照以下三種模式中的一個模式同步或異步地彼此進行通信或與傳統(tǒng)通信裝置進行通信,所述三種模式為(i)實時模式、(ii)時移模式以及(iii)在實時模式和時移模式兩者之間無縫轉換。當通過存儲器創(chuàng)建或檢索消息媒體時,發(fā)送客戶端裝置通過該網絡不斷地發(fā)送該媒體。當該媒體被發(fā)送到接收客戶端裝置或網關時,該網絡不斷地路由該媒體,當該媒體被接收時,接收客戶端裝置或網關不斷地存儲該媒體。隨著持續(xù)不斷的存儲,接收端可進行選擇:當在實時模式下接收到該媒體時呈現(xiàn)該媒體、在時移模式下從存儲器中呈現(xiàn)該媒體或者在兩種模式之間進行無縫地轉換。此外,與常規(guī)的全雙工電話呼叫類似,當消息針對彼此被實時地、同步地發(fā)送和呈現(xiàn)時,用戶可“實時地”彼此進行通信??蛇x地,用戶可通過在離散時間來回發(fā)送消息或者通過對接收的消息進行時移回顧來異步地彼此進行通信。
在另一當前實施方式中,提供了一種用于監(jiān)測和控制網絡上的多個啟用互聯(lián)網協(xié)議(IP)的裝置的計算機實現(xiàn)的方法。多個啟用IP的裝置中的每個裝置在網絡上具有內部IP地址,但不具有用于在互聯(lián)網上使用的外部IP地址。該方法包括執(zhí)行端口掃描的步驟,以獲取網絡上的多個啟用IP的裝置的內部IP地址。使用內部IP地址從網絡上的多個啟用IP的裝置中的每個裝置檢索HTML頁面。數(shù)據(jù)文件名從檢索到的HTML頁面中的每一個頁面中被提取,且在一些實施例中被轉換成新的數(shù)據(jù)文件名。該方法還包括根據(jù)提取的數(shù)據(jù)文件名或者使用新的數(shù)據(jù)文件名從網絡上的多個啟用IP的裝置的中的每個裝置檢索數(shù)據(jù)。還公開了計算機可讀存儲介質和網關計算裝置(例如,以插座式計算機的形式存在的網關計算裝置)。
技術實現(xiàn)要素:
在第一示意性實施例中,一種系統(tǒng)包括處理器,所述處理器被配置為接收來自車輛模塊的請求。所述處理器還被配置為解碼所述請求。所述處理器還被配置為識別所述請求的接收實體。所述處理器被配置為將所述請求發(fā)送到識別的實體。此外,所述處理器被配置為:接收來自識別的實體的響應,從所述響應中剝離任何HTTP報頭,并將接收到的響應轉發(fā)到所述車輛模塊。
在第二示意性實施例中,提供一種計算機實現(xiàn)的方法,所述方法包括接收來自車輛模塊的請求。所述方法還包括解碼所述請求。所述方法還包括識別所述請求的接收實體。此外,所述方法包括將所述請求發(fā)送到識別的實體。所述方法還包括:接收來自識別的實體的響應,從所述響應中剝離任何HTTP報頭,并將接收到的響應轉發(fā)到所述車輛模塊。
在第三示意性實施例中,一種非暫時性計算機可讀存儲介質存儲指令,其中,當所述指令被處理器執(zhí)行時,使得所述處理器執(zhí)行一種方法,所述方法包括接收來自車輛模塊的請求。所述方法還包括解碼所述請求。所述方法還包括識別所述請求的接收實體。此外,所述方法包括將所述請求發(fā)送到識別的實體。所述方法還包括:接收來自識別的實體的響應,從所述響應中剝離任何HTTP報頭,并將接收到的響應轉發(fā)到所述車輛模塊。
根據(jù)本發(fā)明,提供一種存儲指令的非暫時性計算機可讀存儲介質,其中,當所述指令被處理器執(zhí)行時,使得所述處理器執(zhí)行一種方法,所述方法包括:在車輛調制解調器接收來自車輛模塊的請求;經由所述車輛調制解調器解碼 接收到的請求;經由所述車輛調制解調器識別所述請求的接收實體;經由所述車輛調制解調器將所述請求發(fā)送到識別的實體;經由所述車輛調制解調器接收來自識別的實體的響應;經由所述車輛調制解調器從所述響應中剝離HTTP報頭;將接收到的響應從所述車輛調制解調器轉發(fā)到所述車輛模塊。
根據(jù)本發(fā)明的一個實施例,所述請求包括HTTP請求。
根據(jù)本發(fā)明的一個實施例,所述請求包括壓縮的有效載荷,所述方法還包括:在將包括所述有效載荷的請求發(fā)送到識別的實體之前,解壓縮所述有效載荷。
根據(jù)本發(fā)明的一個實施例,所述響應是JSON響應。
根據(jù)本發(fā)明的一個實施例,所述響應是XML響應。
根據(jù)本發(fā)明的一個實施例,所述方法還包括:在將接收到的響應轉發(fā)到所述車輛模塊之前,壓縮所述響應。
附圖說明
圖1示出了示意性的車輛計算系統(tǒng);
圖2示出了通信網絡的示意性示例;
圖3示出了數(shù)據(jù)請求處理的示意性示例;
圖4示出了用于數(shù)據(jù)請求處理的示意性處理。
具體實施方式
根據(jù)需要,在此公開了本發(fā)明的詳細實施例;然而,將理解的是,所公開的實施例僅是本發(fā)明的示例,其中,本發(fā)明可以以各種替代形式來實現(xiàn)。附圖無需按比例繪制;一些特征可被夸大或最小化以示出特定組件的細節(jié)。因此,在此公開的特定結構和功能細節(jié)不應被解釋為具有限制性,而僅作為用于教導本領域技術人員以多種形式利用本發(fā)明的代表性基礎。
圖1示出用于車輛31的基于車輛的計算系統(tǒng)(VCS)1的示例方框拓撲圖。這種基于車輛的計算系統(tǒng)1的示例為由福特汽車公司制造的SYNC系統(tǒng)。設置有基于車輛的計算系統(tǒng)的車輛可包含位于車輛中的可視前端界面4。如果所述界面設置有例如觸摸敏感屏幕,則用戶可還能夠與所述界面進行交互。在另一示意性實施例中,通過按鈕按壓、具有自動語音識別和語音合成的口語對話系統(tǒng)來進行交互。
在圖1所示的示意性實施例1中,處理器3控制基于車輛的計算系統(tǒng)的至少一部分操作。設置在車輛內的處理器允許對命令和例程進行車載處理。另外,處理器被連接到非持久性存儲器5和持久性存儲器7兩者。在此示意性實施例中,非持久性存儲器是隨機存取存儲器(RAM),持久性存儲器是硬盤驅動器(HDD)或閃存。一般說來,持久性(非暫時性)存儲器可包括當計算機或其它裝置掉電時保持數(shù)據(jù)的所有形式的存儲器。這些存儲器包括但不限于:HDD、CD、DVD、磁帶、固態(tài)驅動器、便攜式USB驅動器和任何其它適當形式的持久性存儲器。
處理器還設置有允許用戶與處理器進行交互的若干不同的輸入。在此示意性實施例中,麥克風29、輔助輸入25(用于輸入33)、USB輸入23、GPS輸入24、屏幕4(其可以是觸摸屏顯示器)和藍牙輸入15全部被提供。還設置有輸入選擇器51,以允許用戶在各種輸入之間進行切換。對麥克風和輔助連接器兩者的輸入在被傳送到處理器之前,由轉換器27對所述輸入進行模數(shù)轉換。盡管未示出,但是與VCS進行通信的眾多車輛組件和輔助組件可使用車輛網絡(諸如但不限于CAN總線)向VCS(或其組件)傳送數(shù)據(jù)并傳送來自VCS(或其組件)的數(shù)據(jù)。
系統(tǒng)的輸出可包括但不限于視覺顯示器4以及揚聲器13或立體聲系統(tǒng)輸出。揚聲器被連接到放大器11并通過數(shù)模轉換器9從處理器3接收其信號。還可分別沿19和21所示的雙向數(shù)據(jù)流產生到遠程藍牙裝置(諸如PND 54)或USB裝置(諸如車輛導航裝置60)的輸出。
在一示意性實施例中,系統(tǒng)1使用藍牙收發(fā)器15與用戶的移動裝置53(例如,蜂窩電話、智能電話、PDA或具有無線遠程網絡連接能力的任何其它裝置)進行通信(17)。移動裝置隨后可被用于通過例如與蜂窩塔57的通信(55)來與車輛31外部的網絡61進行通信(59)。在一些實施例中,蜂窩塔57可以是WiFi接入點。
移動裝置與藍牙收發(fā)器之間的示例性通信由信號14表示。
可通過按鈕52或類似的輸入來指示移動裝置53與藍牙收發(fā)器15進行配對。相應地,CPU被指示車載藍牙收發(fā)器將與移動裝置中的藍牙收發(fā)器進行配對。
可利用例如與移動裝置53關聯(lián)的數(shù)據(jù)計劃、話上數(shù)據(jù)或DTMF音在CPU3與網絡61之間傳送數(shù)據(jù)??蛇x地,可期望包括具有天線18的車載調制解 調器63,以便在CPU 3與網絡61之間通過語音頻帶傳送數(shù)據(jù)(16)。移動裝置53隨后可用于通過例如與蜂窩塔57的通信(55)來與車輛31外部的網絡61進行通信(59)。在一些實施例中,調制解調器63可與蜂窩塔57建立通信(20),以與網絡61進行通信。作為非限制性示例,調制解調器63可以是USB蜂窩調制解調器,并且通信20可以是蜂窩通信。
在一示意性實施例中,處理器設置有包括用于與調制解調器應用軟件進行通信的API的操作系統(tǒng)。調制解調器應用軟件可訪問藍牙收發(fā)器上的嵌入式模塊或固件,以完成與(諸如在移動裝置中發(fā)現(xiàn)的)遠程藍牙收發(fā)器的無線通信。藍牙是IEEE 802PAN(個域網)協(xié)議的子集。IEEE 802LAN(局域網)協(xié)議包括WiFi并與IEEE 802PAN具有相當多的交叉功能。兩者都適合于車輛內的無線通信??稍诒绢I域使用的另一通信方式是自由空間光通信(諸如IrDA)和非標準化消費者紅外協(xié)議。
在另一實施例中,移動裝置53包括用于語音頻帶或寬帶數(shù)據(jù)通信的調制解調器。在話上數(shù)據(jù)的實施例中,當移動裝置的所有者可在數(shù)據(jù)被傳送的同時通過裝置說話時,可實施已知為頻分復用的技術。在其它時間,當所有者沒有在使用裝置時,數(shù)據(jù)傳送可使用整個帶寬(在一示例中是300Hz至3.4kHz)。盡管頻分復用對于車輛與互聯(lián)網之間的模擬蜂窩通信而言會是常見的并仍在被使用,但其已經很大程度上被用于數(shù)字蜂窩通信的碼域多址(CDMA)、時域多址(TDMA)、空域多址(SDMA)的混合體所替代。這些都是ITU IMT-2000(3G)兼容的標準,為靜止或行走的用戶提供高達2mbs的數(shù)據(jù)速率,并為在移動的車輛中的用戶提供高達385kbs的數(shù)據(jù)速率。3G標準現(xiàn)在正被IMT-Advanced(4G)所替代,其中,所述IMT-Advanced(4G)為在車輛中的用戶提供100mbs的數(shù)據(jù)速率,并為靜止的用戶提供1gbs的數(shù)據(jù)速率。如果用戶具有與移動裝置關聯(lián)的數(shù)據(jù)計劃,則所述數(shù)據(jù)計劃可允許寬帶傳輸且所述系統(tǒng)可使用寬得多的帶寬(加速數(shù)據(jù)傳送)。在另一實施例中,移動裝置53被安裝至車輛31的蜂窩通信裝置(未示出)所替代。在又一實施例中,移動裝置(ND)53可以是能夠通過例如(而不限于)802.11g網絡(即,WiFi)或WiMax網絡進行通信的無線局域網(LAN)裝置。
在一實施例中,傳入數(shù)據(jù)可經由話上數(shù)據(jù)或數(shù)據(jù)計劃穿過移動裝置、穿過車載藍牙收發(fā)器,并進入車輛的內部處理器3。例如,在某些臨時數(shù)據(jù)的情況下,數(shù)據(jù)可被存儲在HDD或其它存儲介質7上,直至不再需要所述數(shù)據(jù) 時為止。
其它可與車輛進行接口連接的源包括:具有例如USB連接56和/或天線58的個人導航裝置54、具有USB 62或其它連接的車輛導航裝置60、車載GPS裝置24、或具有網絡61連接能力的遠程導航系統(tǒng)(未示出)。USB是一類串行聯(lián)網協(xié)議中的一種。IEEE 1394(火線TM(蘋果)、i.LINKTM(索尼)和LynxTM(德州儀器))、EIA(電子工業(yè)協(xié)會)串行協(xié)議、IEEE 1284(Centronics端口)、S/PDIF(索尼/飛利浦數(shù)字互連格式)和USB-IF(USB開發(fā)者論壇)形成了裝置-裝置串行標準的骨干。多數(shù)協(xié)議可針對電通信或光通信來實施。
此外,CPU可與各種其它的輔助裝置65進行通信。這些裝置可通過無線連接67或有線連接69來連接。輔助裝置65可包括但不限于個人媒體播放器、無線保健裝置、便攜式計算機等。CPU還可與任何車載模塊(諸如但不限于動力傳動系統(tǒng)控制器、電池控制器、氣候控制器或者任何其他與車輛有關的控制/功能)進行通信。
此外或可選地,可使用例如WiFi(IEEE 803.11)收發(fā)器71將CPU連接到基于車輛的無線路由器73。這可允許CPU在局域路由器73的范圍中連接到遠程網絡。
除了由位于車輛中的車輛計算系統(tǒng)執(zhí)行示例性處理之外,在某些實施例中,還可由與車輛計算系統(tǒng)通信的計算系統(tǒng)來執(zhí)行示例性處理。這樣的系統(tǒng)可包括但不限于:無線裝置(例如但不限于移動電話)或通過無線裝置連接的遠程計算系統(tǒng)(例如但不限于服務器)??傮w上,這樣的系統(tǒng)可被稱為與車輛關聯(lián)的計算系統(tǒng)(VACS)。在某些實施例中,VACS的特定組件可根據(jù)系統(tǒng)的特定實施來執(zhí)行處理的特定部分。通過示例而并非限制的方式,如果處理具有與配對的無線裝置進行發(fā)送或者接收信息的步驟,則很可能無線裝置不執(zhí)行處理的該部分,這是因為無線裝置不會與自身進行信息的“發(fā)送和接收”。本領域的普通技術人員將理解何時不適合對給定解決方案應用特定的計算系統(tǒng)。
在在此討論的每個示意性實施例中,示出了可由計算系統(tǒng)執(zhí)行的處理的示例性的非限制性的示例。針對每個處理,執(zhí)行該處理的計算系統(tǒng)為了執(zhí)行該處理的有限的目的而變?yōu)楸慌渲脼橛糜趫?zhí)行處理的專用處理器是可行的。所有處理不需要被全部執(zhí)行,而應被理解為是可被執(zhí)行以實現(xiàn)本發(fā)明的要素的多種類型的處理的示例。可根據(jù)需要從示例性處理中添加或去除額外步驟。
在示意性實施例中,車輛調制解調器可包括軟件,所述軟件被修改為通過車輛上的控制器局域網(CAN)總線從遠程信息處理模塊接收HTTP請求。嵌入式調制解調器隨后作為用于web服務的車載模塊的網關運行,因此,各個模塊無需實現(xiàn)整個以太網協(xié)議棧。web服務可返回簡單的XML數(shù)據(jù)或JSON數(shù)據(jù)。嵌入式調制解調器可對通過CAN接收到的全部請求進行解碼,并將其轉發(fā)到遠程服務(例如,但不限于,互聯(lián)網、遠程服務器等)上。通過允許嵌入式調制解調器作為網關運行,并且使每個模塊負責請求處理,可在無需改變調制解調器軟件的情況下對模塊進行軟件更新和改變。
響應可使其HTTP報頭被剝離,使其HTTP報頭通過CAN被壓縮和傳回到請求的模塊,例如,使用ISO-TP協(xié)議被壓縮和傳回到請求的模塊,其中,例如但不限于使用GZIP或其他適合的處理來壓縮HTTP報頭。HTTP報頭還可被保留以用于調試目的。請求的模塊/組件隨后可根據(jù)需要解壓和解析該響應。這樣的處理可被用于任何適合的車載硬件或軟件模塊中。
在該示意性方式中,可從web服務或遠程服務或web數(shù)據(jù)或遠程數(shù)據(jù)中獲益的任何車輛模塊可在無需更新調制解調器軟件的情況下使用該網關。調制解調器可保存面向云端的鏈接,并直接地將請求轉發(fā)回請求的模塊。這也確保對模塊的請求通過該網關(其通過先進的流量管理來提高安全性),從而限制非期望訪問或惡意訪問。該解決方案甚至可支持除了HTTP之外的應用層協(xié)議或者更為復雜的請求(諸如,全部的web頁面)。
圖2示出了通信網絡的示意性示例。在該示意性示例中,車輛計算系統(tǒng)(在該示例中是福特SYNC車輛計算系統(tǒng))包括附件協(xié)議接口模塊(APIM)201以及多個可選發(fā)動機控制單元(ECU)模塊205、207。其他適合的軟件模塊也可被設置在車輛計算系統(tǒng)中或者安裝在車輛中。
所有的模塊使用車輛CAN或其他適合的車輛網絡來與嵌入式調制解調器203進行通信,在該示例中,嵌入式調制解調器203作為對云端209的遠程服務訪問的網關而運行。云端可包括但不限于可由車輛模塊請求的網站、公共服務器和專用服務器以及任何其他的遠程數(shù)據(jù)或功能的來源。
圖3示出了數(shù)據(jù)請求處理的示意性示例。當請求由車輛模塊201(諸如,APIM)產生時,該請求作為攜帶有壓縮的有效載荷(payload)的HTTP請求301被發(fā)送。不是僅僅將該請求發(fā)送到遠程服務器,嵌入式調制解調器203可解析該請求并解包壓縮的有效載荷(303)。該請求隨后由嵌入式調制解調 器傳送,且有效載荷和該請求被發(fā)送到遠程服務器209(305)。
假設該請求將產生某種形式的響應。在該示例中,遠程服務器用JSON或XML響應進行響應(307),意在處理來自由作為網關運行的調制解調器操控的APIM(或其他模塊)的請求。所述調制解調器接收該響應并執(zhí)行任何必要的安全檢查。該響應隨后被壓縮(309),并且被壓縮的響應數(shù)據(jù)被發(fā)送到APIM或其他請求的模塊(311)。
圖4示出了用于數(shù)據(jù)請求處理的示意性處理。針對在該圖中描述的示意性實施例,應注意到的是,為了執(zhí)行在此示出的示例性方法中的一些或全部的目的,通用處理器可被臨時用作專用處理器。當執(zhí)行提供用于執(zhí)行所述方法的一些或全部步驟的指令的代碼時,所述處理器可被臨時改為用作專用處理器,直到所述方法完成時為止。在另一示例中,在適當程度上,根據(jù)預先配置的處理器運行的固件可使得所述處理器充當為了執(zhí)行所述方法或所述方法的一些其合理變型的目的而被提供的專用處理器。
在該示意性示例中,嵌入式調制解調器將從車輛模塊、ECU等接收請求(401)。請求/響應配置和處理由模塊自身進行,且調制解調器從請求的模塊接收請求和壓縮的有效載荷。
在轉發(fā)請求之前,調制解調器(作為網關運行)將解析請求(403),并解包任何包含的壓縮的有效載荷(405)。請求(諸如,HTTP請求)隨后被發(fā)送到該請求指向的實體(407)。一旦遠程實體完成該請求的處理,則調制解調器接收響應(409)。如果需要的話,對針對車輛模塊做出的響應或通信的來源進行驗證(411),這可以提供針對未經授權的訪問的安全性。該響應隨后可被打包(413),并被發(fā)送到請求的模塊(415)。
通過允許調制解調器作為通用網關運行,并且通過允許各個模塊處理請求,對模塊軟件的更新避免了對調制解調器軟件的額外更新,從而降低了更新負擔并改善了用戶體驗。
雖然以上描述了示例性實施例,但這些實施例并不意在描述本發(fā)明的所有可能形式。更確切地說,說明書中所使用的詞語是描述性詞語而非限制性詞語,并且應理解的是,可在不脫離本發(fā)明的精神和范圍的情況下做出各種改變。此外,可將各種實現(xiàn)的實施例的特征進行組合以形成本發(fā)明的進一步的實施例。