專利名稱:一種基于fsm的短距離家居通訊協(xié)議的控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本實用新型涉及有限狀態(tài)機技術(shù)領(lǐng)域,特別涉及一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng)。
背景技術(shù):
隨著人們生活水平的迅速提高,家居內(nèi)用電器節(jié)點數(shù)量迅速增加,而人們對家居內(nèi)用電器的智能化控制程度要求也越來越高。然而,由于家居內(nèi)用電器各控制模塊間的通訊沒有統(tǒng)一的標準,從而造成家居內(nèi)用電器各控制模塊間的通訊協(xié)議多樣化、通訊接口程序繁雜等問題。
實用新型內(nèi)容本實用新型所要解決的技術(shù)問題是提供一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),本實用新型結(jié)合現(xiàn)代家居內(nèi)各電器間通訊距離短及一主多從的特點,利用有限狀態(tài)機的基本思想,從而實現(xiàn)管理各監(jiān)控模塊與主控模塊間的通訊的目的。為解決上述技術(shù)問題,本實用新型采用的技術(shù)方案為一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),包括主機和與主機連接的若干從機;所述主機包括依次連接的發(fā)送緩存模塊、插入模塊、發(fā)送寄存器模塊與循環(huán)冗余校驗碼產(chǎn)生器模塊;所述從機包括依次連接的接收寄存器模塊、檢測模塊、接收緩存模塊與循環(huán)冗余校驗碼檢測器模塊;所述循環(huán)冗余校驗碼產(chǎn)生器模塊的信號輸出端同時與接收寄存器模塊的信號輸入端相連接。優(yōu)選地,所述主機通過同一數(shù)據(jù)總線與若干從機連接。優(yōu)選地,所述主機還包括FIFO并/串轉(zhuǎn)換模塊;所述FIFO并/串轉(zhuǎn)換模塊的信號輸入端同時與發(fā)送寄存器模塊的信號輸出端相連接;所述FIFO并/串轉(zhuǎn)換模塊的信號輸出端同時與接收寄存器模塊的信號輸入端相連接。優(yōu)選地,所述從機還包括接收FIFO串/并轉(zhuǎn)換模塊,所述接收FIFO串/并轉(zhuǎn)換模塊的信號輸入端同時與接收緩存模塊的信號輸出端相連接。本實用新型相對于現(xiàn)有技術(shù),具有以下有益效果本實用新型基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),該通訊協(xié)議可以實現(xiàn)家用電器控制模塊間的通訊標準的統(tǒng)一,從而安全地實現(xiàn)各家用電器的自動化控制。
圖I是本實用新型基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng)的系統(tǒng)框圖;圖2是本實用新型基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng)的工作流程圖;圖3是本實用新型基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng)的工作原理圖。
具體實施方式
下面結(jié)合實施例及附圖對本實用新型作進一步詳細的描述,但本實用新型的實施方式不限于此。如圖I所示,一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),包括主機和與主機連接的若干從機。該主機通過同一數(shù)據(jù)總線I與若干從機連接。該主機包括依次連接的發(fā)送緩存模塊17、插入模塊16、發(fā)送寄存器模塊14。該主機還包括FIFO并/串轉(zhuǎn)換模塊11、循環(huán)冗余校驗碼產(chǎn)生器模塊13 ;而FIFO并/串轉(zhuǎn)換模塊11、循環(huán)冗余校驗碼產(chǎn)生器模塊13的信號輸入端同時與發(fā)送寄存器模塊14的信號輸出端相連接。在圖中,該FIFO并/串轉(zhuǎn)換模塊11通過TXD數(shù)據(jù)包10發(fā)送數(shù)據(jù),循環(huán)冗余校驗碼產(chǎn)生器模塊13通過TXC數(shù)據(jù)包12發(fā)送數(shù)據(jù)。插入模塊16用于插入數(shù)據(jù)起始標志和 目標從機地址及本機地址。該從機包括依次連接的接收寄存器模塊3、檢測模塊5、接收緩存模塊6。從機還包括循環(huán)冗余校驗碼檢測器模塊7、接收FIFO串/并轉(zhuǎn)換模塊8 ;該循環(huán)冗余校驗碼檢測器模塊7、接收FIFO串/并轉(zhuǎn)換模塊8的信號輸入端同時與接收緩存模塊6的信號輸出端相連接。而接收寄存器模塊3分別通過RXD數(shù)據(jù)包、RXC數(shù)據(jù)包接收相應(yīng)的數(shù)據(jù);且FIFO并/串轉(zhuǎn)換模塊11、循環(huán)冗余校驗碼產(chǎn)生器模塊13的信號輸出端同時與接收寄存器模塊14的信號輸入端相連接。檢測模塊5檢測數(shù)據(jù)起始位檢測及從機地址。優(yōu)選地,該主機通過單主單從模式與若干從機進行通訊。單主單從模式在此模式下,主機通過使用從機的地址編碼與從機進行通訊。數(shù)據(jù)總線空閑時,每臺從機都處在接收狀態(tài)。當主機發(fā)起通訊時,每臺從機都將接收到的地址編碼與自身地址進行比較,匹配成功的從機發(fā)出應(yīng)答信號,其它從機繼續(xù)進入接收狀態(tài)。優(yōu)選地,所述主機通過廣播模式與若干從機進行通訊。廣播模式在此模式下,主機使用約定的公共地址進行數(shù)據(jù)的發(fā)送,所有的從機在接收到這個特殊的地址后都將隨后接收到的數(shù)據(jù)進行處理,但不能進行應(yīng)答。此模式適合用于某些特殊情況進行無返回數(shù)據(jù)的命令傳輸。該控制系統(tǒng)的工作原理如下在一個短距離的家居通訊系統(tǒng)中,主機與各從機的結(jié)點并接在同一條數(shù)據(jù)總線上,為了避免數(shù)據(jù)總線發(fā)生沖突,約定通訊只能由主機發(fā)起,從機任何時刻都處在接收狀態(tài);且只在當從機接收到與自身地址匹配的地址編碼后,才會作出響應(yīng);同時從機之間不能進行通訊。具體地,主機通過異步通訊方式向從機發(fā)起數(shù)據(jù)幀;從機在未接收到與自身地址匹配的地址編碼前處在接收狀態(tài);若從機接收到與自身地址匹配的地址編碼,則其開始接收數(shù)據(jù)幀且傳輸所述數(shù)據(jù)幀,待接收完成后,對該數(shù)據(jù)幀進行循環(huán)冗余校驗碼檢驗;若數(shù)據(jù)出錯,則該從機要求主機重發(fā)數(shù)據(jù),數(shù)據(jù)正確則對數(shù)據(jù)進行相應(yīng)處理。其中,數(shù)據(jù)幀包括標志位01111110B、以00000000H為公共地址的公共地址、功能代碼、檢驗位。主機首先發(fā)送數(shù)據(jù)起始標志;接著發(fā)送從機地址和主機的地址;然后發(fā)送雙機在協(xié)議中約定的功能代碼;緊接著就是數(shù)據(jù)部分;最后發(fā)送循環(huán)冗余校驗碼檢驗值。從機初始狀態(tài)處于IDLE24狀態(tài),該從機不斷地對數(shù)據(jù)總線上的數(shù)據(jù)進行檢測,當該從機處于R_Addr034狀態(tài)時,該從機接收數(shù)據(jù)。循環(huán)冗余校驗碼檢驗采用16位循環(huán)冗余校驗碼進行差錯檢驗,其生成多項式為xl6+xl2+x5+l。而差錯校驗指對整個數(shù)據(jù)幀的內(nèi)容作循環(huán)冗余校驗碼循環(huán)冗余校驗;即對在糾錯范圍內(nèi)的錯碼進行糾正;對在校錯范圍內(nèi)的錯碼進行校驗,但不能進行糾正。如圖2所示,為本實用新型基于FSM的短距離家居通訊協(xié)議的控制方法的流程圖。在數(shù)據(jù)的收發(fā)過程中,首先主機發(fā)送數(shù)據(jù)起始標志01111110B,接著發(fā)送從機地址、公共地址(00000000H)和主機的地址,然后發(fā)送雙機在協(xié)議中約定的功能代碼,接著就是真正的數(shù)據(jù)部分,然后是循環(huán)冗余校驗碼檢驗值,最后等待從機回應(yīng)。[0021]如圖3所示,為本實用新型基于FSM的短距離家居通訊協(xié)議的控制方法的數(shù)據(jù)接收的原理圖。一般情況下,從機處于IDLE狀態(tài)(24),不斷地對數(shù)據(jù)總線上的數(shù)據(jù)進行檢測;一旦串口接收到的數(shù)據(jù)Recive_Byte==Start_Byte25 (起始字節(jié)01111110B),便認為一中貞數(shù)據(jù)傳輸開始,從機進入Receive_Frame_Start_byte狀態(tài)26 ;否則,匹配出錯,仍處于IDLE 狀態(tài) 24。當從機處于Receive_Frame_Start_byte狀態(tài)(26),如果串口接收到的數(shù)據(jù)Recive_Byte==ADDR[31:24] 27 (從機本身地址的第三字節(jié)),則從機進入R_Addr3狀態(tài)28 ;否則,匹配出錯,進入IDLE狀態(tài)24。當從機處于R_Addr3狀態(tài)28,如果串口接收到的數(shù)據(jù)Recive_Byte==ADDR[23:16]29 (接收機本身地址的第二字節(jié)),則從機進入R_Addr2狀態(tài)30 ;否則,匹配出錯,進入IDLE 狀態(tài) 24。當從機處于R_Addr2狀態(tài)30,如果串口接收到的數(shù)據(jù)Recive_Byte==ADDR[14:8]31 (接收機本身地址的第一字節(jié)),則從機進入R_Addrl狀態(tài)32 ;否則,匹配出錯,進入IDLE 狀態(tài) 24。當從機處于R_Addrl狀態(tài)32,如果串口接收到的數(shù)據(jù)Recive_Byte==ADDR[7:0]33 (接收機本身地址的第零字節(jié)),則狀態(tài)機進入R_AddrO狀態(tài)34 ;否則,匹配出錯,進入IDLE 狀態(tài) 24。當從機處于R_AddrO狀態(tài)34,表明從機現(xiàn)在已經(jīng)接收到發(fā)送數(shù)據(jù)包的起始字節(jié)和接收機32位地址,數(shù)據(jù)包的接收地址與從機的地址匹配,表明此數(shù)據(jù)包是發(fā)送給此從機的。因此,接下來的12個字節(jié)的數(shù)據(jù)接收機會連續(xù)接收,存到緩存中,接收完12個字節(jié)后,狀態(tài)機進入IDLE狀態(tài)24,繼續(xù)偵測數(shù)據(jù)。當一幀的數(shù)據(jù)接收完成后,從機首先對數(shù)據(jù)進行循環(huán)冗余校驗碼檢驗,如果發(fā)現(xiàn)數(shù)據(jù)出錯,則按照主機剛剛發(fā)送過來的主機地址進行聯(lián)絡(luò),要求主機重發(fā)數(shù)據(jù)。當數(shù)據(jù)檢驗正確時,從機便會按照協(xié)議中約定的數(shù)據(jù)代碼判斷主機發(fā)送過來的數(shù)據(jù),并進行相應(yīng)的數(shù)據(jù)處理;如果需要送回數(shù)據(jù),則從機必須在約定的時間內(nèi)完成。上述實施例僅為本實用新型的較佳實施例,并非用來限定本實用新型的實施范圍。即凡依本實用新型內(nèi)容所作的均等變化與修飾,都為本實用新型權(quán)利要求所要求保護的范圍所涵蓋。
權(quán)利要求1.一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),包括主機和與主機連接的若干從機;其特征在于所述主機包括依次連接的發(fā)送緩存模塊(17)、插入模塊(16)、發(fā)送寄存器模塊(14)與循環(huán)冗余校驗碼產(chǎn)生器模塊(13);所述從機包括依次連接的接收寄存器模塊(3)、檢測模塊(5)、接收緩存模塊(6)與循環(huán)冗余校驗碼檢測器模塊(7);所述循環(huán)冗余校驗碼產(chǎn)生器模塊(13)的信號輸出端同時與接收寄存器模塊(14)的信號輸入端相連接。
2.根據(jù)權(quán)利要求I所述的基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),其特征在于所述主機通過同一數(shù)據(jù)總線(I)與若干從機連接。
3.根據(jù)權(quán)利要求I所述的基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),其特征在于所述主機還包括FIFO并/串轉(zhuǎn)換模塊(11);所述FIFO并/串轉(zhuǎn)換模塊(11)的信號輸入端同時與發(fā)送寄存器模塊(14)的信號輸出端相連接;所述FIFO并/串轉(zhuǎn)換模塊(11)的信號輸出端同時與接收寄存器模塊(14)的信號輸入端相連接。
4.根據(jù)權(quán)利要求I所述的基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),其特征在于所述從機還包括接收FIFO串/并轉(zhuǎn)換模塊(8),所述接收FIFO串/并轉(zhuǎn)換模塊(8)的信號輸入端同時與接收緩存模塊(6)的信號輸出端相連接。
專利摘要本實用新型公開了一種基于FSM的短距離家居通訊協(xié)議的控制系統(tǒng),包括主機和與主機連接的若干從機;所述主機包括依次連接的發(fā)送緩存模塊、插入模塊、發(fā)送寄存器模塊與循環(huán)冗余校驗碼產(chǎn)生器模塊;所述從機包括依次連接的接收寄存器模塊、檢測模塊、接收緩存模塊與循環(huán)冗余校驗碼檢測器模塊;所述循環(huán)冗余校驗碼產(chǎn)生器模塊的信號輸出端同時與接收寄存器模塊的信號輸入端相連接。
文檔編號H04L1/00GK202385121SQ201120481179
公開日2012年8月15日 申請日期2011年11月28日 優(yōu)先權(quán)日2011年11月28日
發(fā)明者葉政熙, 周泰毅, 莊偉林, 李文杰, 蘇成悅, 陳旭峰 申請人:廣東工業(yè)大學(xué)