智能家居系統(tǒng)中的主機(jī)、從機(jī)及其通信方法
【專利摘要】本發(fā)明公開(kāi)了一種智能家居系統(tǒng)中的主機(jī)、從機(jī)通信方法,所述主機(jī)通信方法包括:步驟S1:接收來(lái)自所述從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,其中所述應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種;步驟S2:接收并判斷來(lái)自所述從機(jī)的響應(yīng)于所述應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向所述從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,向所述從機(jī)發(fā)送包含第二操作命令的清零消息,并返回步驟S1;以及步驟S3:與所述從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。本發(fā)明的通信方法簡(jiǎn)單、復(fù)雜度低,很好地滿足了智能家居組網(wǎng)通信的低功耗要求。
【專利說(shuō)明】智能家居系統(tǒng)中的主機(jī)、從機(jī)及其通信方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及智能家居系統(tǒng)中的主機(jī)、從機(jī)及其通信方法?!颈尘凹夹g(shù)】
[0002]隨著現(xiàn)代技術(shù)的迅猛發(fā)展,“物聯(lián)網(wǎng)”(The Internet of things”)這一新興概念逐漸被人們所熟知,而智能家居(Intelligent household)就是物聯(lián)網(wǎng)應(yīng)用的一個(gè)最杰出代表。智能家居是以住宅為平臺(tái),利用綜合布線技術(shù)、網(wǎng)絡(luò)通信技術(shù)、智能家居-系統(tǒng)設(shè)計(jì)方案安全防范技術(shù)、自動(dòng)控制技術(shù)、音視頻技術(shù)將家居生活有關(guān)的設(shè)施集成,構(gòu)建高效的住宅設(shè)施與家庭日程事務(wù)的管理系統(tǒng),其能夠有效提升家居安全性、便利性、舒適性和藝術(shù)性,并且能夠?qū)崿F(xiàn)環(huán)保節(jié)能的居住環(huán)境。
[0003]無(wú)線通信技術(shù)是智能家居中一個(gè)應(yīng)用較多的技術(shù),相對(duì)于有線通信方式下布線繁雜、成本高、不易組網(wǎng)、擴(kuò)展性差等缺點(diǎn),在智能家居中使用無(wú)線通信方式可以省去繁雜的布線,并且更易于組網(wǎng)和擴(kuò)展。此外,用于智能家居的無(wú)線系統(tǒng)還應(yīng)滿足低功耗要求?;诖?,設(shè)計(jì)一個(gè)成熟、完善的通信協(xié)議顯得尤為必要。具體而言,該通信協(xié)議應(yīng)當(dāng)簡(jiǎn)單、復(fù)雜度低以降低功耗,并且應(yīng)當(dāng)能夠保障智能家居中組網(wǎng)通信的穩(wěn)定性和安全性。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種智能家居系統(tǒng)中的主機(jī)、從機(jī)及其通信方法以滿足智能家居組網(wǎng)通信復(fù)雜度低的要求。
[0005]為了實(shí)現(xiàn)上述目的,本發(fā)明一方面提供了一種智能家居系統(tǒng)中的主機(jī)通信方法,用于與該智能家居系統(tǒng)中的從機(jī)進(jìn)行通信,所述主機(jī)通信方法包括:步驟S1:接收來(lái)自所述從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,其中所述應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種;步驟S2:接收并判斷來(lái)自所述從機(jī)的響應(yīng)于所述應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向所述從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,向所述從機(jī)發(fā)送包含第二操作命令的清零消息,并返回步驟SI ;以及步驟S3:與所述從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
[0006]作為本發(fā)明的另一方面,還提供了一種智能家居系統(tǒng)中的從機(jī)通信方法,用于與該智能家居系統(tǒng)中的主機(jī)進(jìn)行通信,所述從機(jī)通信方法包括:步驟Sll:向所述主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息;步驟S21:接收來(lái)自所述主機(jī)的響應(yīng)于所述聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)所述應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息;步驟S31:接收來(lái)自所述主機(jī)的響應(yīng)于所述第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到所述第二確認(rèn)消息時(shí),執(zhí)行所述第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到所述清零消息時(shí),執(zhí)行所述清零消息中包含的第二操作命令,并返回步驟Sll ;以及步驟S41:與所述主機(jī)進(jìn)行通信,接收來(lái)自所述主機(jī)的控制消息,并執(zhí)行所述控制消息中包含的控制命令。
[0007]作為本發(fā)明的再一方面,還提供了一種智能家居系統(tǒng)中的主機(jī),包括:應(yīng)答消息發(fā)送模塊:用于接收來(lái)自從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,所述應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種;第二確認(rèn)消息發(fā)送模塊:用于接收并判斷來(lái)自所述從機(jī)的響應(yīng)于所述應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向所述從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,觸發(fā)清零消息發(fā)送模塊;清零消息發(fā)送模塊:用于向所述從機(jī)發(fā)送包含第二操作命令的清零消息;以及第一通信模塊:用于與所述從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
[0008]本發(fā)明的一方面還提供了一種智能家居系統(tǒng)中的從機(jī),包括:聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊,用于向主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息;第一確認(rèn)消息發(fā)送模塊,用于接收來(lái)自所述主機(jī)的響應(yīng)于所述聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)所述應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息;操作命令執(zhí)行模塊:接收來(lái)自所述主機(jī)的響應(yīng)于所述第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到所述第二確認(rèn)消息時(shí),執(zhí)行所述第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到所述清零消息時(shí),執(zhí)行所述清零消息中包含的第二操作命令,并觸發(fā)所述聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊;以及第二通信模塊:用于與所述主機(jī)進(jìn)行通信,接收來(lái)自所述主機(jī)的控制消息,并執(zhí)行所述控制消息中包含的控制命令。
[0009]本發(fā)明的有益效果為:通過(guò)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息、根據(jù)當(dāng)前工作模式發(fā)送應(yīng)答消息以發(fā)送第一確認(rèn)消息以及發(fā)送第二確認(rèn)消息的步驟,實(shí)現(xiàn)了主機(jī)與從機(jī)在當(dāng)前工作模式下的連接,繼而可實(shí)現(xiàn)主機(jī)和從機(jī)之間的通信,本發(fā)明的通信方法簡(jiǎn)單、復(fù)雜度低,很好地滿足了智能家居組網(wǎng)通信的低功耗要求。
【專利附圖】
【附圖說(shuō)明】
[0010]圖1是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)通信方法的流程圖。
[0011]圖2是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的從機(jī)通信方法的流程圖。
[0012]圖3是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)和從機(jī)的結(jié)構(gòu)示意圖。
[0013]圖4是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)的應(yīng)答消息發(fā)送模塊的結(jié)構(gòu)示意圖。
[0014]圖5是本發(fā)明另一實(shí)施例的智能家居系統(tǒng)中的主機(jī)通信方法中的步驟S3的流程示意圖。
[0015]圖6是本發(fā)明另一實(shí)施例的智能家居系統(tǒng)中的從機(jī)通信方法中的步驟S41的流程示意圖。
【具體實(shí)施方式】
[0016]為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明,下面參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。
[0017]圖1和圖2分別是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)通信方法和從機(jī)通信方法的流程圖。
[0018]如圖1所示,本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)通信方法(以下簡(jiǎn)稱主機(jī)通信方法)包括:步驟S1:接收來(lái)自從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,其中應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種;步驟S2:接收并判斷來(lái)自從機(jī)的響應(yīng)于應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,向從機(jī)發(fā)送包含第二操作命令的清零消息,并返回步驟SI ;以及步驟S3:與從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
[0019]如圖2所示,本發(fā)明實(shí)施例的智能家居系統(tǒng)中的從機(jī)通信方法(以下簡(jiǎn)稱從機(jī)通信方法)包括:步驟Sll:向主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息;步驟S21:接收來(lái)自主機(jī)的響應(yīng)于聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息;步驟S31:接收來(lái)自主機(jī)的響應(yīng)于第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到第二確認(rèn)消息時(shí),執(zhí)行第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到清零消息時(shí),執(zhí)行清零消息中包含的第二操作命令,并返回步驟Sll ;以及步驟S41:與主機(jī)進(jìn)行通信,接收來(lái)自主機(jī)的控制消息,并執(zhí)行控制消息中包含的控制命令。
[0020]相應(yīng)地,圖3是本發(fā)明實(shí)施例的智能家居系統(tǒng)中的主機(jī)和從機(jī)(以下分別簡(jiǎn)稱主機(jī)和從機(jī))的結(jié)構(gòu)示意圖。
[0021]如圖3所示,該主機(jī)包括:應(yīng)答消息發(fā)送模塊:用于接收來(lái)自從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種;第二確認(rèn)消息發(fā)送模塊:用于接收并判斷來(lái)自從機(jī)的響應(yīng)于應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,觸發(fā)清零消息發(fā)送模塊;清零消息發(fā)送模塊:用于向從機(jī)發(fā)送包含第二操作命令的清零消息;以及第一通信模塊:用于與從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
[0022]如圖3所示,該從機(jī)包括:聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊,用于向主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息;第一確認(rèn)消息發(fā)送模塊,用于接收來(lái)自主機(jī)的響應(yīng)于聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息;操作命令執(zhí)行模塊:接收來(lái)自主機(jī)的響應(yīng)于第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到第二確認(rèn)消息時(shí),執(zhí)行第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到清零消息時(shí),執(zhí)行清零消息中包含的第二操作命令,并觸發(fā)聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊;以及第二通信模塊:用于與主機(jī)進(jìn)行通信,接收來(lái)自主機(jī)的控制消息,并執(zhí)行控制消息中包含的控制命令。
[0023]通過(guò)上述發(fā)送聯(lián)網(wǎng)請(qǐng)求消息、根據(jù)當(dāng)前工作模式發(fā)送應(yīng)答消息以發(fā)送第一確認(rèn)消息以及發(fā)送第二確認(rèn)消息的步驟,實(shí)現(xiàn)了主機(jī)與從機(jī)在當(dāng)前工作模式下的連接,繼而實(shí)現(xiàn)了主機(jī)和從機(jī)之間的通信,本發(fā)明實(shí)施例的通信方法簡(jiǎn)單、復(fù)雜度低,很好地滿足了智能家居組網(wǎng)通信的低功耗要求。
[0024]具體而言,第二確認(rèn)消息用于向用戶確認(rèn)主機(jī)和從機(jī)已聯(lián)網(wǎng),例如,當(dāng)從機(jī)的類型為燈時(shí),可以設(shè)計(jì)第二確認(rèn)消息中包含的第一操作命令為使其連續(xù)閃爍若干次;或者當(dāng)從機(jī)的類型為某些具有發(fā)聲模塊的家用電器時(shí),可以設(shè)計(jì)第一操作命令為使其發(fā)出特定聲音;再如,當(dāng)從機(jī)的類型為某些具有顯示模塊的家用電器時(shí),可以設(shè)計(jì)第一操作命令為在顯示屏幕上顯示聯(lián)網(wǎng)信息。清零消息中包含的第二操作命令用于在第一確認(rèn)消息不正確的情況下(例如,網(wǎng)絡(luò)故障或者數(shù)據(jù)錯(cuò)誤導(dǎo)致了從機(jī)接收到的應(yīng)答消息不正確,從而使得根據(jù)應(yīng)答消息發(fā)送的第一確認(rèn)消息不正確),使從機(jī)清零所接收到的信息(如應(yīng)答消息中包含的網(wǎng)絡(luò)標(biāo)識(shí)符、小組標(biāo)識(shí)符、身份標(biāo)識(shí)符),從機(jī)可以在清零所接收到的信息后,重新發(fā)送聯(lián)網(wǎng)請(qǐng)求。對(duì)于控制消息中包含的控制命令,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際需要設(shè)計(jì)具體的第三操作命令及其相應(yīng)的功能,例如控制各種電器的啟動(dòng)、關(guān)閉等。由此,實(shí)現(xiàn)了主機(jī)對(duì)從機(jī)進(jìn)行控制。本發(fā)明實(shí)施例中,對(duì)于主機(jī)通信方法,在步驟Si中:在當(dāng)前工作模式為非小組工作模式時(shí),向從機(jī)發(fā)送包括第一網(wǎng)絡(luò)標(biāo)識(shí)符和第一身份標(biāo)識(shí)符的第一應(yīng)答消息;在當(dāng)前工作模式為小組工作模式時(shí),向從機(jī)發(fā)送包括第二網(wǎng)絡(luò)標(biāo)識(shí)符、第二身份標(biāo)識(shí)符和小組標(biāo)識(shí)符的第二應(yīng)答消息;第三應(yīng)答消息發(fā)送模塊:在當(dāng)前工作模式為中繼模式時(shí),向從機(jī)發(fā)送包括第三網(wǎng)絡(luò)標(biāo)識(shí)符和第三身份標(biāo)識(shí)符的第三應(yīng)答消息,其中,第三身份標(biāo)識(shí)符具有不同于第一身份標(biāo)識(shí)符和第二身份標(biāo)識(shí)符的第一預(yù)定值。
[0025]相應(yīng)地,參考圖4,對(duì)于本發(fā)明實(shí)施例的主機(jī),應(yīng)答消息發(fā)送模塊包括:第一應(yīng)答消息發(fā)送模塊:在當(dāng)前工作模式為非小組工作模式時(shí),向從機(jī)發(fā)送包括第一網(wǎng)絡(luò)標(biāo)識(shí)符和第一身份標(biāo)識(shí)符的第一應(yīng)答消息;第二應(yīng)答消息發(fā)送模塊:在當(dāng)前工作模式為小組工作模式時(shí),向從機(jī)發(fā)送包括第二網(wǎng)絡(luò)標(biāo)識(shí)符、第二身份標(biāo)識(shí)符和小組標(biāo)識(shí)符的第二應(yīng)答消息;第三應(yīng)答消息發(fā)送模塊:在當(dāng)前工作模式為中繼模式時(shí),向從機(jī)發(fā)送包括第三網(wǎng)絡(luò)標(biāo)識(shí)符和第三身份標(biāo)識(shí)符的第三應(yīng)答消息,其中,第三身份標(biāo)識(shí)符具有不同于第一身份標(biāo)識(shí)符和第二身份標(biāo)識(shí)符的第一預(yù)定值。
[0026]下面描述三種工作模式的具體含義。由于網(wǎng)絡(luò)標(biāo)識(shí)符表示由該主機(jī)所創(chuàng)建的網(wǎng)絡(luò)的編號(hào),因此,不論在哪種工作模式下,只要是與該主機(jī)通信,主機(jī)分配給從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符是唯一的。在非小組工作模式下,主機(jī)與從機(jī)單獨(dú)進(jìn)行通信,從機(jī)所獲得的第一身份標(biāo)識(shí)符各不相同。通信時(shí),主機(jī)通過(guò)該第一身份標(biāo)識(shí)符可以判斷所接收的消息來(lái)自哪一個(gè)從機(jī),從機(jī)也可以根據(jù)所接收的消息中的第一身份標(biāo)識(shí)符判斷該消息是否是發(fā)送給自身。在小組工作模式下,主機(jī)與多個(gè)從機(jī)組成的小組進(jìn)行通信,主機(jī)向從機(jī)分配第二網(wǎng)絡(luò)標(biāo)識(shí)符、第二身份標(biāo)識(shí)符和小組標(biāo)識(shí)符,通過(guò)主機(jī)為小組里的多個(gè)從機(jī)分配的相同的小組標(biāo)識(shí)符,主機(jī)可以和具有相同小組標(biāo)識(shí)符的這多個(gè)從機(jī)同時(shí)通信,例如當(dāng)這多個(gè)從機(jī)均為燈時(shí),主機(jī)可以同時(shí)控制多個(gè)燈的開(kāi)關(guān)。由于主機(jī)、從機(jī)硬件射頻芯片的發(fā)射功率有限,因此,在某些場(chǎng)景下,主機(jī)和從機(jī)需要通過(guò)中繼進(jìn)行通信。在中繼模式下,主機(jī)所分配的第三身份標(biāo)識(shí)符具有第一預(yù)定值,通過(guò)該第三身份標(biāo)識(shí)符,主機(jī)和從機(jī)可進(jìn)行該中繼模式下的通信。為與非小組工作模式和小組工作模式區(qū)分,這一預(yù)定值應(yīng)當(dāng)與主機(jī)在非小組工作模式和小組工作模式下分配的第一身份標(biāo)識(shí)符和第二身份標(biāo)識(shí)符均不相同??梢愿鶕?jù)實(shí)際需要來(lái)具體設(shè)定第一預(yù)定值,例如,假定在非小組工作模式和小組工作模式下,設(shè)定主機(jī)為從機(jī)分配的第一身份標(biāo)識(shí)符和第二身份標(biāo)識(shí)符的取值范圍為:0X02?0XFE,則在中繼模式下,可設(shè)定第三身份標(biāo)識(shí)符取值為=0X01。此時(shí),從機(jī)接收到身份標(biāo)識(shí)符具有該第一預(yù)定值的應(yīng)答消息,就可以判斷出自己處于中繼模式下與主機(jī)通信。
[0027]由此,實(shí)現(xiàn)了主機(jī)和從機(jī)在非小組工作模式、小組工作模式和中繼模式這三種工作模式下的通信,滿足了實(shí)際應(yīng)用的需要。
[0028]參考圖5,本發(fā)明另一實(shí)施例的主機(jī)通信方法中,步驟S3還包括:步驟S311:根據(jù)待發(fā)送數(shù)據(jù)的長(zhǎng)度,構(gòu)建至少一個(gè)第一數(shù)據(jù)消息;步驟S312:如果該第一數(shù)據(jù)消息的數(shù)量大于第二預(yù)定值,則向從機(jī)發(fā)送第二數(shù)據(jù)消息,其中第二數(shù)據(jù)消息包含該第一數(shù)據(jù)消息的數(shù)量和待發(fā)送數(shù)據(jù)的長(zhǎng)度;否則,向從機(jī)發(fā)送該第一數(shù)據(jù)消息;步驟S313:當(dāng)接收到來(lái)自從機(jī)的響應(yīng)于第二數(shù)據(jù)消息的第三確認(rèn)消息后,向從機(jī)發(fā)送該第一數(shù)據(jù)消息,并且在發(fā)送完該第一數(shù)據(jù)消息之后,向從機(jī)發(fā)送結(jié)束消息;以及步驟S314:如果接收到來(lái)自從機(jī)的包含未接收到的第一數(shù)據(jù)消息的序號(hào)的第三數(shù)據(jù)消息,則向從機(jī)再次發(fā)送對(duì)應(yīng)于該未接收到的第一數(shù)據(jù)消息的序號(hào)的第一數(shù)據(jù)消息。
[0029]相應(yīng)地,參考圖6,從機(jī)通信方法中,步驟S41還包括:步驟S421:接收來(lái)自主機(jī)的第一數(shù)據(jù)消息或第二數(shù)據(jù)消息,如果接收到第二數(shù)據(jù)消息,則向主機(jī)發(fā)送第三確認(rèn)消息;步驟S422:接收來(lái)自該主機(jī)響應(yīng)于該第三確認(rèn)消息的第一數(shù)據(jù)消息和結(jié)束消息,并在接收到該結(jié)束消息之后,根據(jù)第二數(shù)據(jù)消息檢測(cè)是否有未接收到的第一數(shù)據(jù)消息,如果是,則向主機(jī)發(fā)送第三數(shù)據(jù)消息,其中第三數(shù)據(jù)消息包含未接收到的第一數(shù)據(jù)消息的序號(hào);以及步驟S423:接收來(lái)自主機(jī)的響應(yīng)于第三數(shù)據(jù)消息的第一數(shù)據(jù)消息。
[0030]相應(yīng)地,本實(shí)施例的主機(jī)中,第一通信模塊還包括:第一數(shù)據(jù)消息構(gòu)建模塊:用于根據(jù)待發(fā)送數(shù)據(jù)的長(zhǎng)度,構(gòu)建至少一個(gè)第一數(shù)據(jù)消息;第一發(fā)送模塊:如果第一數(shù)據(jù)消息的數(shù)量大于第二預(yù)定值,則向從機(jī)發(fā)送第二數(shù)據(jù)消息,其中第二數(shù)據(jù)消息包含第一數(shù)據(jù)消息的數(shù)量和待發(fā)送數(shù)據(jù)的長(zhǎng)度;否則,向從機(jī)發(fā)送第一數(shù)據(jù)消息;第二發(fā)送模塊:當(dāng)接收到來(lái)自從機(jī)的響應(yīng)于第二數(shù)據(jù)消息的第三確認(rèn)消息后,向從機(jī)發(fā)送第一數(shù)據(jù)消息,并且在發(fā)送完第一數(shù)據(jù)消息之后,向從機(jī)發(fā)送結(jié)束消息;以及二次發(fā)送模塊:如果接收到來(lái)自從機(jī)的包含未接收到的第一數(shù)據(jù)消息的序號(hào)的第三數(shù)據(jù)消息,則向從機(jī)再次發(fā)送對(duì)應(yīng)于該未接收到的第一數(shù)據(jù)消息的序號(hào)的第一數(shù)據(jù)消息。
[0031]相應(yīng)地,本實(shí)施例的從機(jī)中,第二通信模塊還包括:第一接收模塊:接收來(lái)自主機(jī)的第一數(shù)據(jù)消息或第二數(shù)據(jù)消息,如果接收到第二數(shù)據(jù)消息,則向主機(jī)發(fā)送第三確認(rèn)消息;第二接收模塊:用于接收來(lái)自主機(jī)的響應(yīng)于該第三確認(rèn)消息的第一數(shù)據(jù)消息和結(jié)束消息,并在接收到該結(jié)束消息之后,根據(jù)第二數(shù)據(jù)消息檢測(cè)是否有未接收到的第一數(shù)據(jù)消息,如果是,則向主機(jī)發(fā)送第三數(shù)據(jù)消息,其中第三數(shù)據(jù)消息包含未接收到的第一數(shù)據(jù)消息的序號(hào);以及二次接收模塊:用于接收來(lái)自主機(jī)的響應(yīng)于第三數(shù)據(jù)消息的第一數(shù)據(jù)消息。
[0032]當(dāng)待發(fā)送的數(shù)據(jù)(待發(fā)送的數(shù)據(jù)指主機(jī)向從機(jī)發(fā)送留言、短消息、圖片等數(shù)據(jù))過(guò)大時(shí),為便于傳輸,一般需要這些數(shù)據(jù)封裝到多個(gè)數(shù)據(jù)消息中分別發(fā)送,如果網(wǎng)絡(luò)不夠穩(wěn)定,將造成數(shù)據(jù)丟失,即從機(jī)有可能收不到部分?jǐn)?shù)據(jù)消息。采用本實(shí)施例的方法,從機(jī)可以檢測(cè)到丟失的數(shù)據(jù)消息并要求主機(jī)再次發(fā)送這些數(shù)據(jù)消息,從而避免了網(wǎng)絡(luò)不穩(wěn)定導(dǎo)致的數(shù)據(jù)丟失。由于第二數(shù)據(jù)消息包含第一數(shù)據(jù)消息的數(shù)量,因此,從機(jī)能夠知道其應(yīng)當(dāng)收到多少個(gè)第一數(shù)據(jù)消息,從而可以檢測(cè)是否有未接收到的第一數(shù)據(jù)消息。從機(jī)收到代表第一數(shù)據(jù)消息發(fā)送完畢的結(jié)束消息后,會(huì)檢測(cè)是否有未接收到的第一數(shù)據(jù)消息。關(guān)于如何確定該未接收到的第一數(shù)據(jù)消息的序號(hào),應(yīng)當(dāng)屬于本領(lǐng)域的常規(guī)技術(shù)手段,例如,主機(jī)發(fā)送多個(gè)第一數(shù)據(jù)消息時(shí),對(duì)這些第一數(shù)據(jù)消息進(jìn)行了編號(hào),并將該編號(hào)寫(xiě)入該第一數(shù)據(jù)消息的特定位置。從機(jī)檢測(cè)接收到的第一數(shù)據(jù)消息中的編號(hào),再根據(jù)從第二數(shù)據(jù)消息獲知的第一數(shù)據(jù)消息的數(shù)量,就可以得知未接收到的第一數(shù)據(jù)消息的序號(hào)。此外,根據(jù)待發(fā)送數(shù)據(jù)的長(zhǎng)度和第一數(shù)據(jù)消息的數(shù)量,從機(jī)可以判斷所接收到的最后一個(gè)數(shù)據(jù)消息中的該數(shù)據(jù)準(zhǔn)確的結(jié)束位置,從而避免接收無(wú)效數(shù)據(jù)。
[0033]在一個(gè)優(yōu)選實(shí)施例中,消息均具有統(tǒng)一的消息格式,該消息格式中包括分配給下列信息的字段:消息前綴(BEGIN_CHAR)、網(wǎng)絡(luò)標(biāo)識(shí)符(ID_GR0UP)、身份標(biāo)識(shí)符(ID)、小組標(biāo)識(shí)符(ID_PART)、消息來(lái)源地(ID_FR0M)、消息目的地(ID_T0)、操作命令以及數(shù)據(jù)(DATA)。優(yōu)選地,操作命令字段可擴(kuò)展為一級(jí)操作命令(CMDO)字段和二級(jí)操作命令(CMDl)字段,以豐富主機(jī)和從機(jī)之間通信的各種需求,該操作命令可以表示主機(jī)與從機(jī)之間通信時(shí)所發(fā)送消息的類型,例如主機(jī)向從機(jī)發(fā)送應(yīng)答消息,從機(jī)根據(jù)應(yīng)答消息中的操作命令字段知道該消息是主機(jī)相應(yīng)于自身發(fā)送的聯(lián)網(wǎng)請(qǐng)求消息而發(fā)送的應(yīng)答消息;在一些情況下,還表示用于主機(jī)控制從機(jī)來(lái)執(zhí)行相應(yīng)的操作,如主機(jī)向從機(jī)發(fā)送控制消息,從機(jī)根據(jù)消息中的操作命令執(zhí)行相應(yīng)的操作。本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際應(yīng)用的需要設(shè)置具體的操作命令。下表1給出了一種不例的消息格式。
[0034]表1消息格式
【權(quán)利要求】
1.一種智能家居系統(tǒng)中的主機(jī)通信方法,用于與該智能家居系統(tǒng)中的從機(jī)進(jìn)行通信,所述主機(jī)通信方法包括: 步驟S1:接收來(lái)自所述從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,其中所述應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種; 步驟S2:接收并判斷來(lái)自所述從機(jī)的響應(yīng)于所述應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向所述從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,向所述從機(jī)發(fā)送包含第二操作命令的清零消息,并返回步驟SI ;以及 步驟S3:與所述從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
2.如權(quán)利要求1所述的方法,其特征在于,在步驟SI中: 當(dāng)所述當(dāng)前工作模式為非小組工作模式時(shí),向所述從機(jī)發(fā)送包括第一網(wǎng)絡(luò)標(biāo)識(shí)符和第一身份標(biāo)識(shí)符的所述第一應(yīng)答消息; 當(dāng)所述當(dāng)前工作模式為小組工作模式時(shí),向所述從機(jī)發(fā)送包括第二網(wǎng)絡(luò)標(biāo)識(shí)符、第二身份標(biāo)識(shí)符和小組標(biāo)識(shí)符的所述第二應(yīng)答消息; 當(dāng)所述當(dāng)前工作模式為中繼模式時(shí),向所述從機(jī)發(fā)送包括第三網(wǎng)絡(luò)標(biāo)識(shí)符和第三身份標(biāo)識(shí)符的所述第三應(yīng)答消息,其中,所述第三身份標(biāo)識(shí)符具有不同于所述第一身份標(biāo)識(shí)符和所述第二身份標(biāo)識(shí)符的第一預(yù)定值。
3.如權(quán)利要求1所述的方法,其特征在于,所述步驟S3還包括: 步驟S311:根據(jù)待發(fā)送數(shù)據(jù) 的長(zhǎng)度,構(gòu)建至少一個(gè)第一數(shù)據(jù)消息; 步驟S312:如果所述第一數(shù)據(jù)消息的數(shù)量大于第二預(yù)定值,則向所述從機(jī)發(fā)送第二數(shù)據(jù)消息,其中所述第二數(shù)據(jù)消息包含所述第一數(shù)據(jù)消息的數(shù)量和所述待發(fā)送數(shù)據(jù)的長(zhǎng)度;否則,向所述從機(jī)發(fā)送所述第一數(shù)據(jù)消息; 步驟S313:當(dāng)接收到來(lái)自所述從機(jī)的響應(yīng)于所述第二數(shù)據(jù)消息的第三確認(rèn)消息后,向所述從機(jī)發(fā)送所述第一數(shù)據(jù)消息,并且在發(fā)送完所述第一數(shù)據(jù)消息之后,向所述從機(jī)發(fā)送結(jié)束消息;以及 步驟S314:如果接收到來(lái)自所述從機(jī)的包含未接收到的所述第一數(shù)據(jù)消息的序號(hào)的第三數(shù)據(jù)消息,則向所述從機(jī)再次發(fā)送對(duì)應(yīng)于該未接收到的第一數(shù)據(jù)消息的序號(hào)的第一數(shù)據(jù)消息。
4.如權(quán)利要求1~3中任一所述的方法,其特征在于,各消息均具有統(tǒng)一的消息格式,該消息格式中包括分配給下列各信息的字段:消息前綴、網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符、小組標(biāo)識(shí)符、消息來(lái)源地、消息目的地、操作命令以及數(shù)據(jù);并且 當(dāng)所述當(dāng)前工作模式為中繼模式時(shí),從步驟S2開(kāi)始,所述主機(jī)所發(fā)送的消息中包含的身份標(biāo)識(shí)符的值是在其最近一次所發(fā)送/接收到的消息中包含的身份標(biāo)識(shí)符的值的基礎(chǔ)上加上第二預(yù)定值而得到的。
5.一種智能家居系統(tǒng)中的從機(jī)通信方法,用于與該智能家居系統(tǒng)中的主機(jī)進(jìn)行通信,所述從機(jī)通信方法包括: 步驟Sll:向所述主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息; 步驟S21:接收來(lái)自所述主機(jī)的響應(yīng)于所述聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)所述應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息;步驟S31:接收來(lái)自所述主機(jī)的響應(yīng)于所述第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到所述第二確認(rèn)消息時(shí),執(zhí)行所述第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到所述清零消息時(shí),執(zhí)行所述清零消息中包含的第二操作命令,并返回步驟Sll ;以及 步驟S41:與所述主機(jī)進(jìn)行通信,接收來(lái)自所述主機(jī)的控制消息,并執(zhí)行所述控制消息中包含的控制命令。
6.如權(quán)利要求5所述的方法,其特征在于,所述步驟S41包括: 步驟S421:接收來(lái)自所述主機(jī)的第一數(shù)據(jù)消息或第二數(shù)據(jù)消息,如果接收到所述第二數(shù)據(jù)消息,則向所述主機(jī)發(fā)送第三確認(rèn)消息; 步驟S422:接收來(lái)自所述主機(jī)的響應(yīng)于所述第三確認(rèn)消息的第一數(shù)據(jù)消息和結(jié)束消息,并在接收到所述結(jié)束消息之后,根據(jù)所述第二數(shù)據(jù)消息檢測(cè)是否有未接收到的第一數(shù)據(jù)消息,如果是,則向所述主機(jī)發(fā)送第三數(shù)據(jù)消息,其中所述第三數(shù)據(jù)消息包含所述未接收到的第一數(shù)據(jù)消息的序號(hào);以及 步驟S423:接收來(lái)自所述主機(jī)的響應(yīng)于所述第三數(shù)據(jù)消息的第一數(shù)據(jù)消息。
7.如權(quán)利要求5或6所述的方法,其特征在于,各消息均具有統(tǒng)一的消息格式,該消息格式中包括分配給下列各信息的字段:消息前綴、網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符、小組標(biāo)識(shí)符、消息來(lái)源地、消息目的地、操作命令以及數(shù)據(jù);并且 當(dāng)所述當(dāng)前工作模式為中繼模式時(shí),從步驟S21開(kāi)始,所述從機(jī)所發(fā)送的消息中包含的身份標(biāo)識(shí)符的值是在其最近一次所發(fā)送/接收到的消息中包含的身份標(biāo)識(shí)符的值的基礎(chǔ)上加上第二預(yù)定值而得到的。
8.一種智能家居系統(tǒng)中的主機(jī),包括`: 應(yīng)答消息發(fā)送模塊:用于接收來(lái)自從機(jī)的聯(lián)網(wǎng)請(qǐng)求消息,并向該從機(jī)發(fā)送與該主機(jī)的當(dāng)前工作模式對(duì)應(yīng)的應(yīng)答消息,所述應(yīng)答消息包括分配給該從機(jī)的網(wǎng)絡(luò)標(biāo)識(shí)符、身份標(biāo)識(shí)符和小組標(biāo)識(shí)符中的至少前兩種; 第二確認(rèn)消息發(fā)送模塊:用于接收并判斷來(lái)自所述從機(jī)的響應(yīng)于所述應(yīng)答消息的第一確認(rèn)消息是否正確,如是,則向所述從機(jī)發(fā)送包含第一操作命令的第二確認(rèn)消息;否則,觸發(fā)清零消息發(fā)送模塊; 清零消息發(fā)送模塊:用于向所述從機(jī)發(fā)送包含第二操作命令的清零消息;以及 第一通信模塊:用于與所述從機(jī)進(jìn)行通信,發(fā)送包含控制命令的控制消息。
9.如權(quán)利要求8所述的主機(jī),其特征在于,所述應(yīng)答消息發(fā)送模塊包括: 第一應(yīng)答消息發(fā)送模塊:當(dāng)所述當(dāng)前工作模式為非小組工作模式時(shí),向所述從機(jī)發(fā)送包括第一網(wǎng)絡(luò)標(biāo)識(shí)符和第一身份標(biāo)識(shí)符的所述第一應(yīng)答消息; 第二應(yīng)答消息發(fā)送模塊:當(dāng)所述當(dāng)前工作模式為小組工作模式時(shí),向所述從機(jī)發(fā)送包括第二網(wǎng)絡(luò)標(biāo)識(shí)符、第二身份標(biāo)識(shí)符和小組標(biāo)識(shí)符的所述第二應(yīng)答消息; 第三應(yīng)答消息發(fā)送模塊:當(dāng)所述當(dāng)前工作模式為中繼模式時(shí),向所述從機(jī)發(fā)送包括第三網(wǎng)絡(luò)標(biāo)識(shí)符和第三身份標(biāo)識(shí)符的所述第三應(yīng)答消息,其中,所述第三身份標(biāo)識(shí)符具有不同于所述第一身份標(biāo)識(shí)符和所述第二身份標(biāo)識(shí)符的第一預(yù)定值。
10.如權(quán)利要求8所述的主機(jī),其特征在于,所述第一通信模塊還包括: 第一數(shù)據(jù)消息構(gòu)建模塊:用于根據(jù)待發(fā)送數(shù)據(jù)的長(zhǎng)度,構(gòu)建至少一個(gè)第一數(shù)據(jù)消息;第一發(fā)送模塊:如果所述第一數(shù)據(jù)消息的數(shù)量大于第二預(yù)定值,則向所述從機(jī)發(fā)送第二數(shù)據(jù)消息,其中所述第二數(shù)據(jù)消息包含所述第一數(shù)據(jù)消息的數(shù)量和所述待發(fā)送數(shù)據(jù)的長(zhǎng)度;否則,向所述從機(jī)發(fā)送所述第一數(shù)據(jù)消息; 第二發(fā)送模塊:當(dāng)接收到來(lái)自所述從機(jī)的響應(yīng)于所述第二數(shù)據(jù)消息的第三確認(rèn)消息后,向所述從機(jī)發(fā)送所述第一數(shù)據(jù)消息,并且在發(fā)送完所述第一數(shù)據(jù)消息之后,向所述從機(jī)發(fā)送結(jié)束消息;以及 二次發(fā)送模塊:如果接收到來(lái)自所述從機(jī)的包含未接收到的第一數(shù)據(jù)消息的序號(hào)的第三數(shù)據(jù)消息,則向所述從機(jī)再次發(fā)送對(duì)應(yīng)于該未接收到的第一數(shù)據(jù)消息的序號(hào)的第一數(shù)據(jù)消息。
11.一種智能家居系統(tǒng)中的從機(jī),包括: 聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊,用于向主機(jī)發(fā)送聯(lián)網(wǎng)請(qǐng)求消息; 第一確認(rèn)消息發(fā)送模塊,用于接收來(lái)自所述主機(jī)的響應(yīng)于所述聯(lián)網(wǎng)請(qǐng)求消息的應(yīng)答消息,根據(jù)所述應(yīng)答消息判斷當(dāng)前工作模式并發(fā)送第一確認(rèn)消息; 操作命令執(zhí)行模塊:接收來(lái)自所述主機(jī)的響應(yīng)于所述第一確認(rèn)消息的第二確認(rèn)消息或清零消息,當(dāng)接收到所述第二確認(rèn)消息時(shí),執(zhí)行所述第二確認(rèn)消息中包含的第一操作命令;否則,當(dāng)接收到所述清零消息時(shí),執(zhí)行所述清零消息中包含的第二操作命令,并觸發(fā)所述聯(lián)網(wǎng)請(qǐng)求消息發(fā)送模塊;以及 第二通信模塊:用于與所述主機(jī)進(jìn)行通信,接收來(lái)自所述主機(jī)的控制消息,并執(zhí)行所述控制消息中包含的控制命令。
12.如權(quán)利要求11所述的從機(jī),其特征在于,所述第二通信模塊還包括: 第一接收模塊:接收來(lái)自所述主機(jī)的第一數(shù)據(jù)消息或第二數(shù)據(jù)消息;如果接收到來(lái)自所述主機(jī)的第二數(shù)據(jù)消息,則向所述主機(jī)發(fā)送第三確認(rèn)消息; 第二接收模塊:用于接收來(lái)自所述主機(jī)的響應(yīng)于所述第三確認(rèn)消息的第一數(shù)據(jù)消息和結(jié)束消息,并在接收到所述結(jié)束消息之后,根據(jù)所述第二數(shù)據(jù)消息檢測(cè)是否有未接收到的第一數(shù)據(jù)消息,如果是,則向所述主機(jī)發(fā)送第三數(shù)據(jù)消息,其中所述第三數(shù)據(jù)消息包含所述未接收到的第一數(shù)據(jù)消息的序號(hào);以及 二次接收模塊:用于接收來(lái)自 所述主機(jī)的響應(yīng)于所述第三數(shù)據(jù)消息的第一數(shù)據(jù)消息。
【文檔編號(hào)】H04L29/08GK103888504SQ201310429865
【公開(kāi)日】2014年6月25日 申請(qǐng)日期:2013年9月18日 優(yōu)先權(quán)日:2013年9月18日
【發(fā)明者】李楠, 袁穎文 申請(qǐng)人:蘇州碩穗光機(jī)電科技有限公司