本發(fā)明涉及智能家居領域,尤其涉及一種設備控制方法及裝置。
背景技術:
智能家居場景下,用戶可以通過智能終端,采用兩種方式實現(xiàn)對智能家電設備的控制,如圖1所示,其中,路徑1(小循環(huán))是智能終端在家庭域網(wǎng)絡中,通過家庭智能網(wǎng)關,直接控制智能家電設備。路徑2(大循環(huán))智能終端將控制指令通過移動互聯(lián)網(wǎng)發(fā)送給平云臺;然后,云平臺將控制指令通過移動互聯(lián)網(wǎng)轉發(fā)給與之相連的家庭智能網(wǎng)關,從而實現(xiàn)對智能家電設備的控制。
上述兩種智能家電設備的控制方式,都是基于設備對象實現(xiàn)的;而設備對象則是根據(jù)設備模型生成的。
圖2示出了目前一種主流的設備建模方案,即設備模型,在該模型中,主要包含設備的各項屬性、操作等;此外,還包含設備的類型、制造商等基本信息。
其中,設備標識(deviceid)用于表示設備的唯一標識。屬性(property)用于描述設備可供訪問的各類屬性,包括表征自身工作狀態(tài)的屬性、以及通過測量等方式獲取的客觀環(huán)境屬性等;每項屬性包含數(shù)據(jù)類型(datatype)、數(shù)值(value)、取值范圍(valuerange)、操作類型(optype)等字段。操作(operation)用于描述設備對外提供的、可供調用的各類操作;每項操作包含參數(shù)(parameter)等字段。由上述設備模型可知,設備的各項屬性之間,以及各項操作之間,都是完全并列的,不體現(xiàn)任何邏輯關系。
實際情況下,智能家電設備的多項功能之間往往存在著一定邏輯關系,例如,只有家電設備的工作狀態(tài)滿足一定條件時,才允許用戶調用服務s1;或者,家電設備處于模式a時(即“模式”屬性的值為a時),不允許用戶調用操作op1。因此,在基于設備對象進行設備控制的過程中,可能造成控制失敗的情況。
技術實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種設備控制方法及裝置,旨在解決在基于設備對象進行設備控制的過程中會造成控制失敗的問題。
根據(jù)本發(fā)明的一個方面,提供了一種設備控制方法,包括:接收設備控制指令;根據(jù)所述設備控制指令確定目標服務以及用于提供所述目標服務的設備;根據(jù)預存的與所述設備對應的服務模型控制所述設備根據(jù)所述控制指令中的控制參數(shù)提供所述目標服務,其中,所述服務模型包括:設備標識以及提供服務的前提條件。
可選的,所述根據(jù)預存的與所述設備對應的服務模型控制所述設備根據(jù)所述控制指令中的控制參數(shù)提供所述目標服務,包括:獲知所述設備當前所處的狀態(tài);判斷所述設備當前所處的狀態(tài)是否滿足提供所述目標服務的前提條件,在所述設備當前所處的狀態(tài)不滿足提供所述目標服務的前提條件的情況下,控制所述設備切換狀態(tài)至所述前提條件對應的狀態(tài);在所述設備切換狀態(tài)后,根據(jù)所述設備控制指令中的控制參數(shù)控制所述設備。
可選的,所述方法還包括:在接收設備控制指令之前,根據(jù)所述設備的模型創(chuàng)建所述設備的服務模型。
可選的,所述方法還包括:在所述設備在云平臺上注冊后,根據(jù)所述設備對應的設備模型和服務模型創(chuàng)建所述設備的設備對象以及所述設備的服務。
可選的,所述服務模型還包括:設備在指定狀態(tài)下可供訪問的屬性以及可供調用的操作,所述方法還包括:在根據(jù)所述設備控制指令中指明的控制參數(shù)控制所述設備之后,將所述設備當前所處的狀態(tài)下可供訪問的屬性以及可供調用的操作發(fā)送給發(fā)出所述設備控制指令的控制終端。
根據(jù)本發(fā)明的第二個方面,提供了一種設備控制裝置,包括:接收模塊,用于接收設備控制指令;確定模塊,用于根據(jù)所述設備控制指令確定目標服務以及用于提供所述目標服務的設備;控制模塊,用于根據(jù)預存的與所述設備對應的服務模型控制所述設備根據(jù)所述控制指令中的控制參數(shù)提供所述目標服務,其中,所述服務模型包括:設備標識以及提供服務的前提條件。
可選的,所述控制模塊,包括:獲知單元,用于獲知所述設備當前所處的狀態(tài);第一控制單元,用于判斷所述設備當前所處的狀態(tài)是否滿足提供所述目標服務的前提條件,在所述設備當前所處的狀態(tài)不滿足提供所述目標服務的前提條件的情況下,控制所述設備切換狀態(tài)至所述前提條件對應的狀態(tài);第二控制單元,用于在所述設備切換狀態(tài)后,根據(jù)所述設備控制指令中的控制參數(shù)控制所述設備。
可選的,所述裝置還包括:第一創(chuàng)建模塊,用于在接收設備控制指令之前,根據(jù)所述設備的模型創(chuàng)建所述設備的服務模型。
可選的,所述裝置還包括:第二創(chuàng)建模塊,用于在所述設備在云平臺上注冊后,根據(jù)所述設備對應的設備模型和服務模型創(chuàng)建所述設備的設備對象以及所述設備的服務。
可選的,所述服務模型還包括:設備在指定狀態(tài)下可供訪問的屬性以及可供調用的操作,所述裝置還包括:發(fā)送模塊,用于在根據(jù)所述設備控制指令中指明的控制參數(shù)控制所述設備之后,將所述設備當前所處的狀態(tài)下可供訪問的屬性以及可供調用的操作發(fā)送給發(fā)出所述設備控制指令的控制終端。
本發(fā)明實施例的方案,在設備模型的基礎上,將設備提供的服務抽象成服務模型,供用戶調用。當用戶請求調用設備的服務時,云平臺能夠直接獲取可提供該服務的設備,簡化控制流程,提高設備控制的成功率,提升用戶體驗。
附圖說明
圖1是相關技術中對智能家電設備的控制示意圖;
圖2是相關技術中設備模型的示意圖;
圖3是本發(fā)明第一實施例中提供的設備控制方法的流程圖;
圖4是本發(fā)明第一實施例中涉及的設備模型的示意圖;
圖5是本發(fā)明第一實施例中涉及的設備模型、服務模型、設備對象、服務以及智能家電設備之間的對應關系示意圖;
圖6是本發(fā)明第二實施例中空調的制冷服務模型的示意圖;
圖7是本發(fā)明第二實施例中控制空調制冷的流程圖;
圖8是本發(fā)明第三實施例中設備控制裝置的結構框圖。
具體實施方式
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明基于設備模型創(chuàng)建服務模型,結合智能家居場景,對每一類智能家電設備提供的主要服務進行抽象和建模,得到設備的服務模型,該模型的主要內容包括提供該服務的智能家電、提供該服務所需滿足的前提條件、服務狀態(tài)下支持的屬性和操作等;在智能家電設備注冊到云平臺時,云平臺根據(jù)對應的設備模型和服務模型,分別創(chuàng)建設備對象和具體服務,供用戶調用。以下結合各具體實施例來對本發(fā)明提供的方案進行詳細說明。
第一實施例
本實施例提供了一種設備控制方法,該方法可以由云平臺來實現(xiàn),圖3是該方法的流程圖,如圖3所示,該方法包括如下處理:
步驟301:接收設備控制指令;
在本實施例中,設備的控制指令可以是用戶基于移動終端,例如智能手機發(fā)送給云平臺的,在本實施例中,該控制指令中具體可以包括用戶期望設備執(zhí)行的操作,以及設備執(zhí)行該操作對應的具體參數(shù)。例如,用戶期望空調制熱,目標溫度是30攝氏度,則需要設備執(zhí)行的操作為制熱,該操作對應的具體參數(shù)為30攝氏度。
在本實施例中,云平臺接收到控制指令后,會對該控制指令進行解析,得到操作以及操作對應的具體參數(shù)。
步驟302:根據(jù)接收到的設備控制指令確定目標服務以及用于提供目標服務的設備;
在本實施例中,在確定用于提供目標服務的設備之后,可以基于預先創(chuàng)建的設備對象來調用該設備的具體服務。其中,設備對象的創(chuàng)建過程包括:當設備在云平臺上注冊后,根據(jù)設備對應的設備模型和服務模型創(chuàng)建設備的設備對象以及設備的服務。
步驟303:根據(jù)預存的與設備對應的服務模型控制設備根據(jù)控制指令中的控制參數(shù)提供目標服務。
本實施例中所涉及到的設備具體可以是智能家電設備,在智能家電設備的使用場景中,智能家電設備能夠向用戶提供各種家居服務,例如,空調可以提供制冷、制熱服務,燈具可以提供照明服務,空氣凈化器可以提供空氣凈化服務等。用戶控制智能家電設備的主要目的,即是享受上述智能家居服務。
在本實施例中可以對每一類智能家電設備提供的主要服務進行抽象,并建立圖4所示的服務模型。該模型主要內容包括:
源設備srcdevice:指向提供該服務的智能家電設備的deviceid(設備標識)。
前提條件(requiredstatus):源設備提供該服務需要具備的工作狀態(tài),例如空調提供制冷服務的前提包括“開關機狀態(tài)=開機”、“工作模式=制冷”。每項前提條件可以包括如下子字段:
相關屬性(property):表示該前提條件對應的設備屬性;空調制冷服務的前提條件的相關屬性分別是“開關機狀態(tài)”和“工作模式”。
要求值(requiredvalue):表示該前提條件要求的屬性取值;空調制冷服務的前提條件的要求值分別是“開機”和“制冷”。
支持的屬性(validproperty):源設備在該服務狀態(tài)下可供用戶訪問的屬性,指向源設備的對應屬性。
支持的操作(validoperation):源設備在該服務狀態(tài)下可供用戶調用的操作,指向源設備的對應操作。
本實施例中涉及的服務模型屏蔽了智能家電設備提供當前服務過程中不可訪問的屬性和不可調用的操作。
圖5描述了設備模型、服務模型、設備對象、服務以及具體的智能家電設備之間的對應關系。其中,設備模型和服務模型都是預先創(chuàng)建的,保存在云平臺上。設備模型是對某一類型的智能家電設備進行抽象生成的;服務模型是根據(jù)設備模型生成的。
在本實施例中,根據(jù)預存的與設備對應的服務模型控制設備根據(jù)控制指令中的控制參數(shù)提供目標服務具體可以包括:
獲知設備當前所處的狀態(tài);判斷設備當前所處的狀態(tài)是否滿足提供目標服務的前提條件,在設備當前所處的狀態(tài)不滿足提供目標服務的前提條件的情況下,控制設備切換狀態(tài)至前提條件對應的狀態(tài);在設備切換狀態(tài)后,根據(jù)設備控制指令中的控制參數(shù)控制設備。
需要說明的是,在本實施例的應用場景中,設備在云平臺上注冊后,會定期向云平臺反饋自身的狀態(tài)信息,或,在僅在設備狀態(tài)發(fā)生變化時向云平臺反饋自身狀態(tài),基于此,云平臺可以及時獲知設備的狀態(tài)。
在本實施例的應用場景中,云平臺需要預先存儲設備對應的服務模型。獲得服務模型的操作具體可以包括:在接收設備控制指令之前,根據(jù)設備的模型創(chuàng)建設備的服務模型,其中,服務模型包括:設備標識以及提供服務的前提條件。
其中,本實施例中涉及到的服務模型還可以包括設備在指定狀態(tài)下可供訪問的屬性以及可供調用的操作,基于此,本實施例提供的設備控制方法還可以包括如下處理:
在根據(jù)設備控制指令中指明的控制參數(shù)控制設備之后,將設備當前所處的工作狀態(tài)下可供訪問的屬性以及可供調用的操作發(fā)送給發(fā)出設備控制指定的控制終端。
本實施例提供的方法,在設備模型的基礎上,將智能家電設備提供的服務抽象成服務模型,供用戶調用。當用戶請求調用家電設備的某項服務時,云平臺能夠直接獲取可提供該服務的智能家電設備,簡化控制流程;另一方面,由于服務模型包含了設備能力間的邏輯關系,云平臺能夠自動調整智能家電的工作狀態(tài),為用戶提供所需服務,并屏蔽設備當前狀態(tài)下不可用的屬性及操作,提高設備控制的成功率,提升用戶體驗。
第二實施例
本實施例基于“用戶希望通過空調降低室內溫度”的具體場景,對本發(fā)明提出的服務模型的應用方式進行闡述。
在對該服務模型進行應用之前,本實施例中所涉及的空調通過家庭網(wǎng)關注冊到云平臺后,云平臺根據(jù)對應的設備模型進行實例化,生成設備對象,設備對象與空調設備是一一對應的;同時,云平臺對設備模型關聯(lián)的服務模型進行實例化,得到該設備可提供的具體服務,該具體服務與設備對象之間是一對一或多對一的關系。
空調的制冷服務模型如圖6所示(在該圖中僅列出與本場景相關的內容),在本實施例中,控制空調指令的流程如圖7所示。在該場景中,假設空調當前工作在通風模式下,即工作模式(opmode)屬性的值為4。
如圖6所示,在本實施例中,通過設備模型調用空調指令服務的具體流程如下:
步驟0:預先根據(jù)空調的設備模型,創(chuàng)建制冷、制熱等服務模型,保存在云平臺。
步驟1:空調向家庭網(wǎng)關發(fā)送上線通告,注冊到云平臺。
步驟2:云平臺收到空調的上線通告消息后,一方面基于空調設備模型創(chuàng)建空調設備對象;另一方面,根據(jù)與空調關聯(lián)的服務模型,創(chuàng)建具體服務,包括制冷服務(coolingservice)。
步驟3:云平臺收到來自用戶的指令,例如“把室溫降到22度”。
步驟4:云平臺解析用戶指令,確定用戶需要調用空調提供的制冷服務。
步驟5:云平臺查詢空調的當前狀態(tài),判斷是否滿足制冷服務的前提條件;經(jīng)判斷,發(fā)現(xiàn)空調當前的opmode=4,不符合“等于2”的前提條件要求。
步驟6:云平臺自動發(fā)送控制指令,設置空調切換到“制冷”工作模式,即opmode=2;控制指令由家庭網(wǎng)關轉發(fā)給空調設備。
步驟7:空調根據(jù)接收到的指令,切換工作模式至制冷模式,并上報給云平臺。
步驟8:云平臺接收到空調的上報的信息,判定空調制冷模式的前提條件已經(jīng)滿足,自動下發(fā)控制指令,設置空調將制冷目標溫度(targettemp)調整到22度。
步驟9:另一方面,云平臺將制冷服務狀態(tài)下支持的屬性(validproperty)和支持的操作(validoperation)推送給app,該app安裝于控制終端上。
步驟10:app收到云平臺推送的消息后,更新用戶界面,禁用當前空調不支持的屬性和操作。
步驟11:空調根據(jù)接收到的指令,調整至制冷目標溫度,向云平臺反饋結果。
步驟12:云平臺接收到空調的上報的信息,向app反饋室溫調整的執(zhí)行結果。
第三實施例
本實施例提供了一種設備控制裝置,該裝置可以設置于云平臺中,該裝置用于實現(xiàn)上述設備控制方法,圖8是該裝置的結構框圖,如圖7所示,該裝置80包括如下組成部分:
接收模塊81,用于接收設備控制指令;
確定模塊82,用于根據(jù)設備控制指令確定需調用的目標服務以及用于提供目標服務的設備;
控制模塊83,用于根據(jù)預存的與設備對應的服務模型控制設備根據(jù)控制指令中的控制參數(shù)提供目標服務,其中,服務模型包括:設備標識以及提供服務的前提條件。
在本實施例中,上述控制模塊83具體可以包括如下組成部分:
獲知單元,用于獲知設備當前所處的工作狀態(tài);第一控制單元,用于判斷設備當前所處的狀態(tài)是否滿足提供目標服務的前提條件,在設備當前所處的狀態(tài)不滿足提供目標服務的前提條件的情況下,控制設備切換狀態(tài)至前提條件對應的狀態(tài);第二控制單元,用于在設備切換狀態(tài)后,根據(jù)設備控制指令中的控制參數(shù)控制設備。
在圖8所示的裝置80的基礎上,本實施例提供的裝置80還可以包括第一創(chuàng)建模塊以及第二創(chuàng)建模塊中的至少一個,其中,第一創(chuàng)建模塊,用于在接收設備控制指令之后,根據(jù)設備的模型創(chuàng)建設備的服務模型;以及,第二創(chuàng)建模塊,用于在設備在云平臺上注冊后,根據(jù)設備對應的設備模型和服務模型創(chuàng)建設備的設備對象以及設備的服務。
需要說明的是,本實施例中涉及的服務模型還可以包括:設備在指定狀態(tài)下可供訪問的屬性以及可供調用的操作,基于此,本實施例中提供的裝置還可以包括:發(fā)送模塊,用于在根據(jù)設備控制指令中指明的控制參數(shù)控制設備之后,將設備當前所處的工作狀態(tài)下可供訪問的屬性以及可供調用的操作發(fā)送給發(fā)出設備控制指定的控制終端。
本實施例提供的裝置,在設備模型的基礎上,將智能家電設備提供的服務抽象成服務模型,供用戶調用。當用戶請求調用家電設備的某項服務時,云平臺能夠直接獲取可提供該服務的智能家電設備,簡化控制流程;另一方面,由于服務模型包含了設備能力間的邏輯關系,云平臺能夠自動調整智能家電的工作狀態(tài),為用戶提供所需服務,并屏蔽設備當前狀態(tài)下不可用的屬性及操作,提高設備控制的成功率,提升用戶體驗。
盡管為示例目的,已經(jīng)公開了本發(fā)明的優(yōu)選實施例,本領域的技術人員將意識到各種改進、增加和取代也是可能的,因此,本發(fā)明的范圍應當不限于上述實施例。