本發明實施例涉及家用電器技術領域,尤其涉及一種物聯網電器波特率調節方法、裝置及空調。
背景技術:
隨著通信技術的發展,利用無線通信技術將空調與手機等移動終端智能設備進行互聯組建物聯網,進而利用移動終端實現對物聯網電器例如空調的遠程控制已成為趨勢。通常情況下,移動終端通過互聯網與家中的控制中心相連接,物聯網電器與控制中心之間通過串行方式進行相互通信,而串行通信接收方的發送速率只有在與發送方的發送速率一致的前提下,通信接收方才能正確接收通信發送方發送的全部數據。
但對于不同型號的信號發射裝置,其對應的發送速率,即波特率也不盡相同,物聯網電器在進行數據傳送時,會存在由于無線信號發射裝置與物聯網電器波特率不匹配導致無法接收到數據,產生數據丟失的風險,進而導致物聯網電器無法正確響應用戶通過移動終端進行的操作,影響用戶對物聯網電器進行遠程控制的體驗。
技術實現要素:
有鑒于此,本發明實施例提供了一種物聯網電器波特率調節方法、裝置及空調,以實現物聯網電器對不同波特率脈沖信號的自適應調整的目的。
第一方面,本發明實施例提供了一種物聯網電器波特率調節方法,包括:
采集多個脈沖信號,測量所述脈沖信號的寬度;
根據所述寬度對所述脈沖信號進行處理,得到最小寬度,并根據所述最小寬度獲得所述脈沖信號的波特率;
按照所述脈沖信號的波特率調節自身的波特率。
進一步地,所述根據所述寬度對所述脈沖信號進行處理,得到最小寬度,包括:
對所有寬度不相等的脈沖信號根據所述寬度進行升序排列;
將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據所述寬度重新進行升序排列,生成參考脈沖信號隊列;
對所述參考脈沖信號隊列循環進行寬度逐一相減與根據寬度升序排列操作,直至前一次生成的第一參考脈沖信號隊列與后一次生成的第二參考脈沖信號隊列中脈沖信號項數相同;
將所述第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度。
進一步地,所述根據所述寬度對所述脈沖信號進行處理,得到最小寬度,還包括:
判斷所述第二參考脈沖信號隊列中所有脈沖信號的寬度是否互質;
相應的,所述將所述第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度,包括:
若所述第二參考脈沖信號隊列中的所述脈沖信號的寬度互質,則將所述第二參考隊列后的首項脈沖信號的寬度作為最小寬度。
進一步地,所述方法還包括:
若所述第二參考脈沖信號隊列中的所述脈沖信號的寬度非互質,則重新采集多個脈沖信號,測量所述脈沖信號的寬度,根據所述寬度對所述脈沖信號進行處理,直至所述第二參考脈沖信號隊列中的所述脈沖信號的寬度互質。
進一步地,所述按照所述脈沖信號的波特率調節自身的波特率之前,還包括:
按照所述獲得的波特率發送確認詢問信號,并接收波特率確認應答信號。
進一步地,所述波特率確認詢問信號包括地址詢問請求和波特率確認請求。
第二方面,本發明實施例還提供了一種物聯網電器波特率調節裝置,包括:
寬度測量模塊,用于采集多個脈沖信號,測量所述脈沖信號的寬度;
波特率獲取模塊,用于根據所述寬度對所述脈沖信號進行處理,得到最小寬度,并根據所述最小寬度獲得所述脈沖信號的波特率;
波特率調節模塊,用于按照所述脈沖信號的波特率調節自身的波特率。
進一步地,所述波特率獲取模塊具體用于:
對所有寬度不相等的脈沖信號根據所述寬度進行升序排列;
將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據所述寬度重新進行升序排列,生成參考脈沖信號隊列;
對所述參考脈沖信號隊列循環進行寬度逐一相減與根據寬度升序排列操作,直至前一次生成的第一參考脈沖信號隊列與后一次生成的第二參考脈沖信號隊列中脈沖信號項數相同;
將所述第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度。
進一步地,所述波特率獲取模塊還具體用于:
判斷所述第二參考脈沖信號隊列中所有脈沖信號的寬度是否互質;
相應的,所述將所述第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度,包括:
若所述第二參考脈沖信號隊列中的所述脈沖信號的寬度互質,則將所述第二參考隊列后的首項脈沖信號的寬度作為最小寬度。
進一步地,所述波特率獲取模塊還具體用于:
若所述第二參考脈沖信號隊列中的所述脈沖信號的寬度非互質,則重新采集多個脈沖信號,測量所述脈沖信號的寬度,根據所述寬度對所述脈沖信號進行處理,直至所述第二參考脈沖信號隊列中的所述脈沖信號的寬度互質。
進一步地,所述裝置還包括:
波特率確認模塊,具體用于按照所述獲得的波特率發送確認詢問信號,并接收波特率確認應答信號。
進一步地,所述波特率確認詢問信號包括地址詢問請求和波特率確認請求。
第三方面,本發明實施例還提供了一種空調,包括上述實施例提供的物聯網電器波特率調節裝置。
本發明實施例提供了一種物聯網電器波特率調節方法、裝置及空調,通過對信號發送裝置發送的脈沖信號處理得到最小寬度,并根據通過最小寬度得到的脈沖信號的波特率調節自身的波特率。解決了由于信號發送裝置與物聯網電器波特率不匹配造成的無法接收到數據,使得傳輸數據丟失,物聯網電器無法正確響應用戶操作的問題,實現了物聯網電器對不同波特率脈沖信號的自適應,可以實現對傳輸數據的無丟失接收,使得物聯網電器能夠正確響應用戶操作,提高了物聯網電器工作的可靠性。
附圖說明
圖1是本發明實施例一提供的一種物聯網電器波特率調節方法的流程示意圖。
圖2是本發明實施例二提供的一種物聯網電器波特率調節方法的流程示意圖。
圖3本發明實施例三提供的一種物聯網電器波特率調節裝置的結構示意圖。
具體實施方式
下面結合附圖和實施例對本發明作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發明相關的部分而非全部結構。
實施例一
圖1是本發明實施例一提供的一種物聯網電器波特率調節方法的流程示意圖,本實施例的技術方案可以應用在需要對物聯網電器波特率進行調節的場景,可以由本發明實施例提供的物聯網電器波特率調節裝置來執行,該系統可以采用軟件和/或硬件的方式來實現,該裝置可以集成于具備波特率調節功能的物聯網電器中,例如空調。該方法包括:
S110,采集多個脈沖信號,測量脈沖信號的寬度。
物聯網電器采集信號發送裝置發送的多個脈沖信號,并測量脈沖信號中的寬度,脈沖信號的寬度是指脈沖信號中高電平脈沖持續的時間,即脈沖信號中上升沿與下一個相鄰下降沿之間的距離。常見的波特率包括4800波特、9600波特和19200波特,由上述可以看出4800波特為基礎,其他波特率都是4800波特的倍數。,因此本發明實施例將波特率為4800波特的脈沖信號的寬度作為寬度1的基準單位,即后面提到的脈沖信號的寬度均為4800波特脈沖信號的寬度的整數倍。此外,示例性的,信號發送裝置可以是路由器或交換機,通常為無線路由器,信號發送裝置能夠向周圍區域的電器例如物聯網電器發送脈沖形式的信號。需要說明的是,在采集多個脈沖信號時,可以連續采集多個脈沖信號,也可以采集不同時間節點內的多個連續脈沖信號,本發明實施例對此不作限定。
S120,根據寬度對脈沖信號進行處理,得到最小寬度,并根據最小寬度獲得脈沖信號的波特率。
根據寬度對脈沖信號進行處理以得到最小寬度,最小寬度即采集到的脈沖信號中傳送一位數據所需要的時間,而脈沖信號的波特率代表數據的傳輸速率,即單位時間內傳送的數據位數。
可選的,根據寬度對采集的多個的脈沖信號進行處理可以包括以下處理操作:
首先,對所有寬度不相等的脈沖信號根據寬度進行升序排列,即將所有寬度不相等的脈沖信號根據寬度從小到大的順序進行排列。示例性的,采集到的脈沖信號的寬度例如可以是{3、2、2、5、3、5、8、5},對寬度不相等的脈沖信號{3、2、5、8}進行升序排列得到的脈沖信號為{2、3、5、8}。
然后,將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據寬度重新進行升序排列,生成參考脈沖信號隊列。示例性的,相減前有n項寬度不相等的脈沖信號,根據寬度從小到大順序依次排列的相鄰脈沖信號進行寬度逐一相減,即當前脈沖信號的寬度減去前一項脈沖信號的寬度,則相減后得到n-1項脈沖信號,將相減后的n-1項脈沖信號與相減前的n項脈沖信號中寬度不相等的共m項脈沖信號根據寬度重新進行升序排列,生成一參考脈沖信號隊列。示例性的,以前一步驟得到的脈沖信號{2、3、5、8}為例,將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據寬度重新進行升序排列得到的脈沖信號為{1、2、3、5、8}。
其次,對參考脈沖信號隊列循環進行寬度逐一相減與根據寬度升序排列操作,直至前一次生成的第一參考脈沖信號隊列與后一次生成的第二參考脈沖信號隊列中脈沖信號項數相同。示例性的,對前一步驟中形成的參考脈沖隊列中的m項脈沖信號進行寬度逐一相減,并將相減前與相減后的脈沖信號中所有寬度不相等的脈沖信號進行升序排列,并生成新的參考脈沖信號隊列,依此循環,直至第p次循環后對所有寬度不相等脈沖信號根據寬度升序排列形成的第一參考脈沖信號隊列與第p+1次循環對所有寬度不相等脈沖信號根據寬度升序排列形成的第二參考脈沖信號隊列中脈沖信號項數相同,示例性的,當第一參考脈沖信號隊列與第二參考脈沖信號隊列中均有q項寬度不相等的脈沖信號時,則停止寬度逐一相減與根據寬度升序排列的循環操作。示例性的,以前一步驟得到的脈沖信號{1、2、3、5、8}為例,將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據寬度重新進行升序排列得到的脈沖信號仍然為{1、2、3、5、8},此時,前一次的第一參考脈沖信號隊列{1、2、3、5、8}與后一次的的第二參考脈沖信號隊列{1、2、3、5、8}中脈沖信號項數相同,均為5項,則停止寬度逐一相減與根據寬度升序排列的循環操作。
最后,將第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度。示例性的,上述步驟所得的有q項寬度不相等的脈沖信號的第二參考脈沖信號隊列是將q項寬度不相等的脈沖信號進行升序排列得到的,因此第二參考脈沖信號隊列中的首項脈沖信號的寬度最小,將其作為最小寬度,這樣根據寬度經過上述對脈沖信號的處理,得到了最小寬度。示例性的,以前一步驟得到的第二參考脈沖信號隊列{1、2、3、5、8}為例,將第二參考脈沖信號隊列中的首項脈沖信號的寬度1作為最小寬度。
由于經過p+1次循環后的得到的第二參考脈沖信號隊列中的q項寬度不相等的脈沖信號可能存在例如{2、4、6、8、10}的情況,這樣若將第二參考脈沖信號隊列的首項作為最小寬度,則根據首項無法獲得脈沖信號的波特率,因此,需要根據寬度對脈沖信號進行處理,得到最小寬度,示例性的,可以根據判斷第二參考脈沖信號隊列中所有脈沖信號的寬度是否互質確定最小寬度是否正確。相應的,若第二參考脈沖信號隊列中的脈沖信號的寬度互質,則第二參考隊列后的首項脈沖信號的寬度作為最小寬度。
示例性的,循環p+1次后得到的第二參考脈沖信號隊列中包括q項升序排列的寬度不相等的脈沖信號,但是并不能直接將第二參考脈沖信號隊列中的首項脈沖信號的寬度作為最小寬度,因為第二參考脈沖信號隊列中的q項脈沖信號的寬度有可能并不互質,即q項脈沖信號的寬度的最大公約數不為1,若在q項脈沖信號的寬度的最大公約數不為1的情況下將第二參考脈沖信號隊列中的首項脈沖信號的寬度作為最小寬度,可能存在最小寬度內包含的數據不只一位,這樣根據最小寬度無法獲得采集脈沖信號的波特率。因此,只有第二參考脈沖信號隊列中所有的脈沖信號的寬度互質時,才能將第二參考隊列后的首項脈沖信號的寬度作為最小寬度。
若第二參考脈沖信號隊列中的脈沖信號的寬度非互質,則重新采集多個脈沖信號,測量脈沖信號的寬度,根據對脈沖信號進行處理,直至第二參考脈沖信號隊列中的脈沖信號的寬度互質。具體的,若第二參考脈沖信號隊列中的脈沖信號的寬度非互質,即最大公約數不為1,則重新采集信號發送裝置發送的多個脈沖信號,測量脈沖信號的寬度,根據寬度對脈沖信號進行處理,直至第二參考脈沖信號隊列中的脈沖信號的寬度互質,則認定此時作為最小寬度的第二參考脈沖信號隊列的首項脈沖信號的寬度內傳輸了一位數據,將第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度。這樣根據第二參考脈沖信號隊列中所有脈沖信號的寬度是否互質來判定是否將第二參考隊列中首項脈沖信號的寬度作為最小寬度,避免由于某些情況下產生的特殊脈沖信號所產生的干擾,提高了物聯網電器波特率調節裝置根據寬度對脈沖信號處理以得到最小寬度的準確性,進而提高了根據最小寬度獲得脈沖信號波特率并調節物聯網電器波特率的準確性。
最小寬度與脈沖信號的波特率呈倒數關系,得到最小寬度,即可根據倒數關系獲得信號發送裝置發送脈沖信號的波特率。
需要說明的是,在根據倒數關系獲得信號發送裝置發送脈沖信號的過程中可能會出現對脈沖信號的寬度的測量存在誤差的情況,導致根據最小寬度按照倒數關系獲得的脈沖信號的波特率存在一定的誤差,可以將獲得的脈沖信號的波特率與4800波特、9600波特和19200波特作比較,并根據比較結果調整獲得脈沖信號的波特率以消除誤差。
S130,按照脈沖信號的波特率調節自身的波特率。
具體的,將上述步驟得到的最小寬度取倒數即得到信號發送裝置發送脈沖信號的波特率,按照脈沖信號的波特率調節自身的波特率使二者波特率匹配。當信號發送裝置發送的脈沖信號的波特率發生變化時,可以根據最小寬度獲得脈沖信號的波特率,并按照脈沖信號的波特率調節物聯網電器的波特率完成物聯網電器對波特率變化的脈沖信號的自適應。
本發明實施例通過對信號發送裝置發送的脈沖信號處理得到最小寬度,并按照通過最小寬度得到的脈沖信號的波特率調節物聯網電器的波特率。解決了由于信號發送裝置與物聯網電器波特率不匹配,導致傳輸數據丟失,物聯網電器無法正確響應用戶操作的問題,實現了物聯網電器對不同波特率脈沖信號的自適應調整,可以實現對傳輸數據的無丟失接收,使得物聯網電器能夠正確響應用戶操作,提高了物聯網電器工作的可靠性。
實施例二
圖2是本發明實施例二提供的一種物聯網電器波特率調節方法的流程示意圖,該方法以前述實施例為基礎,增加了按照獲得的波特率發送確認詢問信號,并接收波特率確認應答信號這一步驟。
相應的,本發明實施例的方法包括:
S210,采集多個脈沖信號,測量脈沖信號的寬度。
S220,根據寬度對脈沖信號進行處理,得到最小寬度,并根據最小寬度獲得脈沖信號的波特率。
S230,按照獲得的波特率發送確認詢問信號,并接收波特率確認應答信號。
可選的,波特率確認詢問信號包括地址詢問請求和波特率確認請求,物聯網電器向信號發送裝置發送確認詢問信號,確定當前獲得的波特率是否與信號發送裝置所發送的波特率相一致,并根據地址詢問請求確定信號發送裝置的IP地址,信號發送裝置反饋波特率確認應答信號,物聯網電器接收波特率確認應答信號。
S240,按照脈沖信號的波特率調節自身的波特率。
本發明實施例通過在按照脈沖信號的波特率調節物聯網電器的波特率之前,按照波特率發送確認詢問信號,并接收波特率確認應答信號,確認根據寬度處理脈沖信號得到的波特率與信號發送裝置的波特率匹配,再按照獲得的波特率調節物聯網電器的波特率,提高了物聯網電器對不同波特率脈沖信號自適應的準確性,進一步提高了物聯網電器工作的可靠性。
實施例三
圖3是本發明實施例三提供的一種物聯網電器波特率調節裝置的結構示意圖,該系統包括:
寬度測量模塊310,用于采集多個脈沖信號,測量脈沖信號的寬度;
波特率獲取模塊320,用于根據寬度對脈沖信號進行處理,得到最小寬度,并根據最小寬度獲得脈沖信號的波特率;
波特率調節模塊330,用于按照脈沖信號的波特率調節自身的波特率。
可選的,波特率獲取模塊320具體可以用于對所有寬度不相等的脈沖信號根據寬度進行升序排列;將相鄰脈沖信號的寬度逐一相減,將相減后與相減前所有寬度不相等的脈沖信號根據寬度重新進行升序排列,生成參考脈沖信號隊列;對參考脈沖信號隊列循環進行寬度逐一相減與根據寬度升序排列操作,直至前一次生成的第一參考脈沖信號隊列與后一次生成的第二參考脈沖信號隊列中脈沖信號項數相同;將第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度。
可選的,波特率獲取模塊320具體還可以用于判斷第二參考脈沖信號隊列中所有脈沖信號的寬度是否互質。相應的,將第二參考脈沖信號隊列的首項脈沖信號的寬度作為最小寬度,包括若第二參考脈沖信號隊列中的脈沖信號的寬度互質,則將第二參考隊列后的首項脈沖信號的寬度作為最小寬度。
可選的,波特率獲取模塊320具體還可以用于若第二參考脈沖信號隊列中的脈沖信號的寬度非互質,則重新采集多個脈沖信號,測量脈沖信號的寬度,根據寬度對脈沖信號進行處理,直至第二參考脈沖信號隊列中的脈沖信號的寬度互質。
可選的,在上述裝置的基礎上,還包括波特率確認模塊,具體可以用于按照獲得的波特率發送確認詢問信號,并接收波特率確認應答信號。
可選的,波特率確認詢問信號包括地址詢問請求和波特率確認請求。
本發明實施例通過對信號發送裝置發送的脈沖信號處理得到最小寬度,并按照通過最小寬度得到的脈沖信號的波特率調節物聯網電器的波特率。解決了由于信號發送裝置與物聯網電器波特率不匹配造成的傳輸數據丟失,物聯網電器無法正確響應用戶操作的問題,實現了物聯網電器對不同波特率脈沖信號的自適應,實現對傳輸數據的無丟失接收,使得物聯網電器能夠正確響應用戶操作,提高了物聯網電器工作的可靠性。
本發明實施例還提供了一種空調,可以包括上述實施例提供的物聯網電器波特率調節裝置,也可以可執行上述任意實施例所提供的物聯網電器波特率調節方法。示例性的,空調可以采集信號發送裝置發送的多個脈沖信號,測量脈沖信號的寬度,根據寬度的處理脈沖信號得到最小寬度進而獲得脈沖信號的波特率,再按照獲得的波特率調節空調的波特率,是自身波特率與信號發送裝置的波特率相匹配,實現了空調對不同波特率脈沖信號的自適應,實現了對傳輸數據的無丟失接收,使得空調能夠正確響應用戶操作,提高了空調工作的可靠性。
注意,上述僅為本發明的較佳實施例及所運用技術原理。本領域技術人員會理解,本發明不限于這里的特定實施例,對本領域技術人員來說能夠進行各種明顯的變化、重新調整和替代而不會脫離本發明的保護范圍。因此,雖然通過以上實施例對本發明進行了較為詳細的說明,但是本發明不僅僅限于以上實施例,在不脫離本發明構思的情況下,還可以包括更多其他等效實施例,而本發明的范圍由所附的權利要求范圍決定。