何鈞鋒,郭吉如
(河南科技學院新科學院 電氣工程系,河南 新鄉 453003)
無線開關的問世,解決了家居裝修的很多問題,實現了按照用戶需求安裝開關,并可根據生活需要靈活移動位置。基于射頻技術的無線開關擁有控制距離遠、抗干擾能力強以及對傳播方向要求不高等特點,在采用PT2262芯片的基礎上,利用單片機實現編碼。本設計采用超再生接收電路,設計成本低、功耗小且靈敏度高,同時采用軟件實現PT2262的解碼。該設計相較于其他設計,靈活性和性價比較高。
無線射頻遙控由發射部分和接收部分組成。發射部分由編碼電路和射頻發射電路組成;接收部分由電源電路、射頻接收電路、解碼電路、繼電器電路以及負載電路組成。發射器框圖如圖1所示,接收器框圖如圖2所示。

圖1 發射器框圖

圖2 接收器框圖
1.2.1 編碼電路
編解碼電路的實現有兩種。一種是硬件編解碼,利用芯片PT2262/PT2272實現編解碼[1]。但是,PT2272解碼時,發射端和接收端必須采用相同的地址編碼,這樣接收端才能在有效的通信距離內接收到發射端的信號,因此限制了無線收發設備的應用。另一種是通過按鍵由單片機進行編解碼。兩種方案各有優缺點:單片機解碼速度快、使用方便、可解碼多種編碼、配置靈活且發射端地址對其沒有影響,但速度較慢;編解碼芯片具有可靠性高、集成度高以及功耗低等優點,但靈活性小、可控性差且耗時長。本設計采用單片機通過軟件編程實現編解碼,既保留了編解碼芯片的優點,又實現了單片機編解碼的優點[2]。
1.2.2 射頻發射電路
射頻發射電路一般選擇通信頻率為315 MHz或433 MHz的公開頻道,其中多采用433 MHz的通信頻道。因此,本設計采用315 MHz的接收天線作為信號接收電路[3]。利用射頻發射電路放大芯片PT2262上DOUT引腳的編碼數據,經調制后發射出去[4-5],射頻發射電路如圖3所示。其中:Q2、Y1、R7、L1、C5、C2以及C3構成315振蕩電路;Q3和R8控制電路的起振與停振,實現不同寬度的高頻脈沖發射;不同寬度的脈沖組合被定義為數據同步碼、0碼以及1碼。

圖3 射頻發射電路
1.2.3 存儲電路
因為要實現一個遙控器控制多個用電設備或多個遙控器控制一個用電設備,所以為了方便接收器可以識別每個遙控器,需要每個遙控器有唯一的ID。此外,接收器還需記憶所有能遙控它的遙控器ID,因此本設計采用AT24C02存儲芯片,其儲存電路如圖4所示。

圖4 存儲電路
1.3.1 電源電路
單片機的工作電壓為5 V,但接收器中安裝電池不太方便,因此將接收器直接接在控制前端。需要將家用220 V的交流電經變壓器、橋式整流、濾波以及穩壓器LM7805轉換為5 V的直流電,其中電容C12起濾波作用。電源電路如圖5所示。

圖5 電源電路
1.3.2 射頻接收電路
315 MHz的無線數據接收模塊包括超再生式接收模塊和超外差式接收模塊兩種。其中,超再生電路成本低、功耗小且靈敏度可調,但其穩定性、選擇性以及抗干擾能力均較差。超外差式接收模塊頻率穩定且抗干擾能力強,但存在靈敏度低、價格遠高以及出現“信號阻塞”等缺點。針對成本問題,設計選擇超再生電路。射頻接收電路如圖6所示。

圖6 射頻接收電路
1.3.3 解碼電路
解碼電路如圖7所示,其中P1.0~P1.5為輸出端,P1.7為接收輸入端[3]。
1.3.4 繼電器電路和負載電路
負載驅動電路采用電磁式繼電器驅動。由于控制負載電路的電壓是5 V,而負載所需電壓是220 V,所以本設計采用繼電器控制。當繼電器線圈中有一定電流時,繼電器閉合,負載電路導通。當繼電器線圈中電流消失時,負載電路隨之斷開。繼電器電路和負載電路如圖8所示。
2.1.1 編碼格式
利用單片機實現編解碼時,必須了解PT2262每一幀的編碼格式[5-7],如圖9所示。

圖7 解碼電路

圖8 繼電器電路和負載電路

圖9 PT2262編碼格式
圖9中,a是時鐘振蕩的周期,有:

可求出振蕩頻率,其中Rosc是振蕩電阻。PT2262和PT2272的振蕩電阻必須匹配,要求譯碼器的振蕩頻率是編碼器振蕩頻率的2.5~8倍。市場上大部分的振蕩電阻使用的是2 262/1.2 M=2 272/200 k組合,少量使用的是2 262/4.7 M=2 272/820 k。本設計采用2 262/1.2 M=2 272/200 k組合,因此Rosc=1.2 M。根據式(1)求得振蕩頻率f約為26.7 kHz,振蕩周期約為 37.5 μs。
由圖9可知,一個完整的信號幀由32個振蕩周期構成。其中,“0”碼用2個窄脈沖表示;“1”碼用2個寬脈沖表示;“f”碼用一個窄脈沖和一個寬脈沖表示;“同步碼”的長度是4個AD位的長度,包含1個1/8 AD位寬度的脈沖;一個窄脈沖是4個振蕩周期;1個寬脈沖是12個振蕩周期。詳細信息如表1所示。
2.1.2 編碼主要程序


表1 脈沖時間

將射頻接收電路的輸出信號發送到單片機的外部中斷0,將單片機的外部中斷設置為下降沿觸發,把T0設置為16位定時器模式,初始化設置為0,晶振的工作頻率設置在11.059 2 MHz,這時計滿最大值的計數值時間為71 111 μs。同步碼周期和地址碼數據碼周期都遠小于定時器0的定時時間,所以定時器0正常工作時不會溢出。T1用作延時,設置其定時為1 ms。在EX0=1(外部中斷0啟動)且EA=1(使能所有中斷)時,下降沿到來時進入到中斷處理函數,T0在TR0的控制下啟動并停止計時。接收到下降沿后,先判斷當前的電平狀態,檢測到是低電平時,把T0計時器歸零開始計數,電平狀態發生變化時停止計數。取TH0和TL0之和,可根據該低電平的時間寬度值識別是否為同步碼。只有先識別出來同步碼,才開始接收后續脈沖數據進行24位解碼操作。A0~A11中,每比特用2 bit表示,如“0”碼用“00”表示,“1”碼用“11”表示[6-7]。程序如下:


本設計主要由發射部分和接收部分組成,采用315 MHz的射頻電路,利用軟件設施完成編解碼,具有編解碼靈活的特點。設計采用射頻技術完成無線收發,具有抗干擾力強和遙控角度不受限制等優點。此外,接收器利用AT2402存儲芯片記憶所能遙控它的遙控器ID,實現了一控多和多控一功能。