車載信息系統(tǒng)及其控制方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于電子通訊技術(shù)領(lǐng)域,涉及一種車載信息系統(tǒng),尤其涉及一種雙向通信的車載信息系統(tǒng);此外,本發(fā)明還涉及上述車載信息系統(tǒng)的控制方法。
【背景技術(shù)】
[0002]如今,隨著車聯(lián)網(wǎng)概念深入人心,與車聯(lián)網(wǎng)相關(guān)聯(lián)的技術(shù)或解決方案如雨后春筍般涌出。其中,實(shí)現(xiàn)移動終端和車載設(shè)備互聯(lián)的技術(shù)或產(chǎn)品有:基于MirrorLink協(xié)議的產(chǎn)品、MHL(Mobile High-Definit1n Link)、CarPlay 車載系統(tǒng)等。
[0003]目前基于MirrorLink協(xié)議的產(chǎn)品只有通過WiFi實(shí)現(xiàn)移動終端和車載設(shè)備的連接,但是市場上支持WiFi的車載系統(tǒng)不多,且與MirrorLink相關(guān)的產(chǎn)品也很少。
[0004]MHL是移動終端高清影音標(biāo)準(zhǔn)接口,是一種連接便攜式消費(fèi)電子裝置的影音標(biāo)準(zhǔn)接口,目前支持設(shè)備較少。以上兩種技術(shù)或產(chǎn)品是將移動終端的屏幕信息直接投影到車載設(shè)備屏幕上,是對手機(jī)屏幕的簡單復(fù)制,會帶來如下3個(gè)問題:(1)當(dāng)移動終端處于豎屏?xí)r,車載設(shè)備上將無法完整顯示移動終端上顯示的內(nèi)容;(2)傳輸?shù)臄?shù)據(jù)不可控制;(3)使用還需要硬件支持。
[0005]CarPlay是蘋果公司發(fā)布的車載系統(tǒng),它能將用戶的1S設(shè)備與儀表盤系統(tǒng)無縫結(jié)合。用戶可以在車載系統(tǒng)上使用、操控1S設(shè)備并發(fā)揮其功能。然而,CarPlay支持的車型有限。CarPlay僅僅支持擁有Lightning接口的iPhone手機(jī),另外雖然iPad已經(jīng)支持這一接口,但是蘋果并未將iPad列為CarPlay支持的硬件設(shè)備。以上技術(shù)對于使用者帶來了很大的使用成本,且對于車聯(lián)網(wǎng)技術(shù)普及推廣帶來阻礙。
[0006]有鑒于此,如今迫切需要設(shè)計(jì)一種新的車載信息系統(tǒng),以便克服現(xiàn)有系統(tǒng)的上述缺陷。
【發(fā)明內(nèi)容】
[0007]本發(fā)明所要解決的技術(shù)問題是:提供一種車載信息系統(tǒng),使用USB解決了移動設(shè)備和車載系統(tǒng)間的連接和數(shù)據(jù)通信的問題,充分利用資源,無使用成本。
[0008]此外,本發(fā)明還提供上述車載信息系統(tǒng)的控制方法,使用USB解決了移動設(shè)備和車載系統(tǒng)間的連接和數(shù)據(jù)通信的問題,充分利用資源,無使用成本。
[0009]為解決上述技術(shù)問題,本發(fā)明采用如下技術(shù)方案:
[0010]一種車載信息系統(tǒng),所述系統(tǒng)包括移動終端、車載設(shè)備,移動終端與車載設(shè)備之間通過USB連接線連接;
[0011]所述移動終端包括第一數(shù)據(jù)傳輸模塊、移動SDK模塊、第一數(shù)據(jù)編碼模塊、第一數(shù)據(jù)解析模塊、第一無線通訊模塊、第一程序控制模塊;
[0012]所述車載設(shè)備包括第二數(shù)據(jù)傳輸模塊、數(shù)據(jù)轉(zhuǎn)發(fā)模塊、車載SDK模塊、第二數(shù)據(jù)編碼模塊、第二數(shù)據(jù)解析模塊、信息呈現(xiàn)模塊、驗(yàn)證模塊;
[0013]移動終端和車載設(shè)備通過一根USB連接線建立硬件連接,而后再建立軟件連接;第二數(shù)據(jù)傳輸模塊和第一數(shù)據(jù)傳輸模塊中包含USB驅(qū)動;當(dāng)兩者在硬件上通過USB連接線連接后,將自動建立連接;連接建立后,數(shù)據(jù)轉(zhuǎn)發(fā)模塊和車載SDK模塊使用建立好的連接與移動終端進(jìn)行數(shù)據(jù)通信;
[0014]第二數(shù)據(jù)傳輸模塊用于加載車載設(shè)備USB驅(qū)動,并檢測USB設(shè)備的插拔,當(dāng)USB設(shè)備插入后,USB驅(qū)動檢測到設(shè)備并與設(shè)備建立連接,而后第二數(shù)據(jù)傳輸模塊創(chuàng)建命令通道、數(shù)據(jù)通道和文件傳輸通道,并通知數(shù)據(jù)轉(zhuǎn)發(fā)模塊連接狀態(tài),車載SDK模塊定義并實(shí)現(xiàn)了上層應(yīng)用所需要的關(guān)于通信相關(guān)的接口;
[0015]第一數(shù)據(jù)傳輸模塊用于加載移動終端USB驅(qū)動,并檢測USB設(shè)備的插拔,USB設(shè)備插入后,USB驅(qū)動檢測到設(shè)備并與設(shè)備建立連接,然后創(chuàng)建跟車載設(shè)備相對應(yīng)的數(shù)據(jù)通道,移動SDK模塊定義并實(shí)現(xiàn)了上層應(yīng)用所需要的關(guān)于通信相關(guān)的接口 ;
[0016]第二數(shù)據(jù)傳輸模塊建立連接后,同時(shí)創(chuàng)建命令通道、數(shù)據(jù)通道和文件通道;命令通道用來專門傳輸控制指令以及基礎(chǔ)數(shù)據(jù),包括心跳、時(shí)間;數(shù)據(jù)通道用來專門傳輸基本數(shù)據(jù),包括協(xié)議數(shù)據(jù);文件通道用來專門傳輸文件,為不影響其他數(shù)據(jù)的傳輸,開辟專門的通道傳輸大文件;
[0017]所述第一數(shù)據(jù)解析模塊用以根據(jù)設(shè)定協(xié)議解析車載設(shè)備發(fā)送的數(shù)據(jù);第一數(shù)據(jù)解析模塊用以根據(jù)設(shè)定協(xié)議解析車載設(shè)備發(fā)送的數(shù)據(jù);第一無線通訊模塊用以進(jìn)行和服務(wù)器無線通訊;第一程序控制模塊用以控制應(yīng)用程序的運(yùn)行;
[0018]第二數(shù)據(jù)編碼模塊用以根據(jù)設(shè)定協(xié)議編碼,生成待發(fā)送數(shù)據(jù);第二數(shù)據(jù)解析模塊,用以根據(jù)設(shè)定協(xié)議解析移動終端發(fā)送的數(shù)據(jù);
[0019]信息呈現(xiàn)模塊用以根據(jù)解析到的數(shù)據(jù)在車載設(shè)備上運(yùn)行對應(yīng)的應(yīng)用;所述信息呈現(xiàn)模塊中包含若干應(yīng)用程序的呈現(xiàn)單元,第一應(yīng)用程序在移動終端上呈現(xiàn)出第一界面,所述車載設(shè)備在同一時(shí)刻運(yùn)行該第一應(yīng)用程序時(shí),所述呈現(xiàn)單元根據(jù)移動終端發(fā)送的數(shù)據(jù)在車載設(shè)備上呈現(xiàn)不同與所述第一界面、便于車載設(shè)備上使用的第二界面;
[0020]驗(yàn)證模塊用以根據(jù)從移動終端獲取的標(biāo)識對移動終端進(jìn)行驗(yàn)證,驗(yàn)證成功后建立連接;
[0021]所述系統(tǒng)還包括服務(wù)器,包括第三通訊模塊、第三驗(yàn)證模塊、第三信息記錄模塊:第三通訊模塊用以與移動終端建立連接;第三驗(yàn)證模塊用以根據(jù)從移動終端獲取的移動終端標(biāo)識及車載設(shè)備標(biāo)識,對移動終端及車載設(shè)備進(jìn)行驗(yàn)證,驗(yàn)證成功后建立連接;第三信息記錄模塊用以記錄車載設(shè)備與移動終端配合使用的行為數(shù)據(jù);
[0022]指令執(zhí)行采用了優(yōu)先級動態(tài)調(diào)整方法,包括:
[0023]步驟1、在命令通道中,命令隊(duì)列里存儲著準(zhǔn)備發(fā)送的命令;
[0024]步驟2、當(dāng)命令隊(duì)列中包含多個(gè)命令時(shí),命令的執(zhí)行將根據(jù)優(yōu)先級的高低來執(zhí)行;將隊(duì)列根據(jù)優(yōu)先級高低進(jìn)行排序采用冒泡排序方法;
[0025]步驟3、排序完成后,取出優(yōu)先級最高的命令執(zhí)行;
[0026]步驟4、剩余的命令優(yōu)先級都加1,如果再有命令添加到該隊(duì)列中,那么原來的命令將優(yōu)先執(zhí)行;
[0027]步驟5、判斷命令隊(duì)列是否為空,不為空,就進(jìn)入步驟2 ;為空就等待命令。
[0028]上述冒泡排序方法包括:重復(fù)地走訪過要排序的數(shù)列,一次比較兩個(gè)元素,如果兩者順序錯(cuò)誤就將其交換過來;走訪數(shù)列的工作是重復(fù)地進(jìn)行直到?jīng)]有再需要交換,即該數(shù)列已經(jīng)排序完成;
[0029]冒泡排序方法具體包括:
[0030]比較相鄰的元素,如果第一個(gè)比第二個(gè)大,就將兩者交換;
[0031]對每一對相鄰元素作同樣的工作,從開始第一對到結(jié)尾的最后一對;在這一點(diǎn),最后的元素應(yīng)該會是最大的數(shù);
[0032]針對所有的元素重復(fù)以上的步驟,除了最后一個(gè);
[0033]持續(xù)每次對越來越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對數(shù)字需要比較。
[0034]所述系統(tǒng)還包括搜索模塊,用以搜索所有可搜集的移動設(shè)備信息和車載設(shè)備信息,并建立了設(shè)備之間的對應(yīng)關(guān)系,以樹的方式存儲在程序中;當(dāng)檢測到移動設(shè)備后,將根據(jù)移動設(shè)備的信息,從樹中搜索對應(yīng)的配置數(shù)據(jù);
[0035]所述搜索模塊沿著樹的深度遍歷樹的節(jié)點(diǎn),盡可能深的搜索樹的分支;當(dāng)節(jié)點(diǎn)V的所有邊都己被探尋過,搜索將回溯到發(fā)現(xiàn)節(jié)點(diǎn)V的那條邊的起始節(jié)點(diǎn);這一過程一直進(jìn)行到已發(fā)現(xiàn)從源節(jié)點(diǎn)可達(dá)的所有節(jié)點(diǎn)為止;如果還存在未被發(fā)現(xiàn)的節(jié)點(diǎn),則選擇其中一個(gè)作為源節(jié)點(diǎn)并重復(fù)以上過程,整個(gè)進(jìn)程反復(fù)進(jìn)行直到所有節(jié)點(diǎn)都被訪問為止。
[0036]一種車載信息系統(tǒng),所述系統(tǒng)包括移動終端、車載設(shè)備,移動終端與車載設(shè)備之間通過USB連接線連接;
[0037]移動終端包括第一數(shù)據(jù)傳輸模塊、移動SDK模塊;
[0038]車載設(shè)備包括第二數(shù)據(jù)傳輸模塊、數(shù)據(jù)轉(zhuǎn)發(fā)模塊、車載SDK模塊;
[0039]移動終端和車載設(shè)備通過一根USB連接線建立硬件連接,而后再建立軟件連接;第二數(shù)據(jù)傳輸模塊和第一數(shù)據(jù)傳輸模塊中包含USB驅(qū)動;當(dāng)兩者在硬件上通過USB連接線連接后,將自動建立連接;連接建立后,數(shù)據(jù)轉(zhuǎn)發(fā)模塊和車載SDK模塊使用建立好的連接與移動終端進(jìn)行數(shù)據(jù)通信;
[0040]第二數(shù)據(jù)傳輸模塊用于加載USB驅(qū)動,并檢測USB設(shè)備的插拔,當(dāng)USB設(shè)備插入后,USB驅(qū)動檢測到設(shè)備并與設(shè)備建立連接,而后第二數(shù)據(jù)傳輸模塊創(chuàng)建命令通道、數(shù)據(jù)通道和文件傳輸通道,并通知數(shù)據(jù)轉(zhuǎn)發(fā)模塊連接狀態(tài),車載SDK模塊定義并實(shí)現(xiàn)了上層應(yīng)用所需要的關(guān)于通信相關(guān)的接口;
[0041]第一數(shù)據(jù)傳輸模塊用于加載移動終端USB驅(qū)動,并檢測USB設(shè)備的插拔,USB設(shè)備插入后,USB驅(qū)動檢測到設(shè)備并與設(shè)備建立連接,然后創(chuàng)建跟車載設(shè)備相對應(yīng)的數(shù)據(jù)通道,移動SDK模塊定義并實(shí)現(xiàn)了上層應(yīng)用所需要的關(guān)于通信相關(guān)的接口。
[0042]作為本發(fā)明的一種優(yōu)選方案,所述第二數(shù)據(jù)傳輸模塊建立連接后,同時(shí)創(chuàng)建命令通道、數(shù)據(jù)通道和文件通道;命令通道用來專門傳輸控制指令以及基礎(chǔ)數(shù)據(jù),包括心跳、時(shí)間;數(shù)據(jù)通道用來專門傳輸基本數(shù)據(jù),包括協(xié)議數(shù)據(jù);文件通道用來專門傳輸文件,為不影響其他數(shù)據(jù)的傳輸,開辟專門的通道傳輸大文件。
[0043]作為本發(fā)明的一種優(yōu)選方案,移動終端還包括第一數(shù)據(jù)編碼模塊、第一數(shù)據(jù)解析模塊、第一無線通訊模塊、第一程序控制模塊;
[0044]車載設(shè)備還包括二數(shù)據(jù)編碼模塊、第二數(shù)據(jù)解析模塊、信息呈現(xiàn)模塊、驗(yàn)證模塊;
[0045]所述第一數(shù)據(jù)解析模塊用以根據(jù)設(shè)定協(xié)議解析車載設(shè)備發(fā)送的數(shù)據(jù);第一數(shù)據(jù)解析模塊用以根據(jù)設(shè)定協(xié)議解析車載設(shè)備發(fā)送的數(shù)據(jù);第一無線通訊模塊用以進(jìn)行和服務(wù)器無線通訊;第一程序控制模塊用以控制應(yīng)用程序的運(yùn)行;
[0046]車載設(shè)備包括第二數(shù)據(jù)傳輸模塊、數(shù)據(jù)轉(zhuǎn)發(fā)模塊、車載SDK模塊、第二數(shù)據(jù)編碼模塊、第二數(shù)據(jù)解析模塊、信息呈現(xiàn)模塊、驗(yàn)證模塊;
[0047]第二數(shù)據(jù)編碼模塊用以根據(jù)設(shè)定協(xié)議編碼,生成待發(fā)送數(shù)據(jù);第二數(shù)據(jù)解析模塊,用以根據(jù)設(shè)定協(xié)議解析移動終端發(fā)送的數(shù)據(jù);
[0048]信息呈現(xiàn)模塊用以根據(jù)解析到的數(shù)據(jù)在車載設(shè)備上運(yùn)行對應(yīng)的應(yīng)用;所述信息呈現(xiàn)模塊中包含若干應(yīng)用程序的呈現(xiàn)單元,第一應(yīng)用程序在移動終端上呈現(xiàn)出第一界面,所述車載設(shè)備在同一時(shí)刻運(yùn)行該第一應(yīng)用程序時(shí),所述呈現(xiàn)單元根據(jù)移動終端發(fā)送的數(shù)據(jù)在車載設(shè)備上呈現(xiàn)不同與所述第一界面、便于車載設(shè)備上使用的第二界面;
[0049]驗(yàn)證模塊用以根據(jù)從移動終端獲取的標(biāo)識對移動終端進(jìn)行驗(yàn)證,驗(yàn)證成功后建立連接。
[0050]作為本發(fā)明的一種優(yōu)選方案,所述系統(tǒng)還包括服務(wù)器,包括第三通訊模塊、第三驗(yàn)證模塊、第三信息記錄模塊:第三通訊模塊用以與移動終端建立連接;第三驗(yàn)證模塊用以根據(jù)從移動終端獲取的移動終端標(biāo)識及車載設(shè)備標(biāo)識,對移動終端及車載設(shè)備進(jìn)行驗(yàn)證,驗(yàn)證成功后建立連接;第三信息記錄模塊用以記錄車載設(shè)備與移動終端配合使用的行為數(shù)據(jù)。
[0051]作為本發(fā)明的一種優(yōu)選方案,