將電風扇改造為支持紅外遙控的思路

最近天氣好熱,到了開風扇的時候了。突然發現家中老舊的電風扇經過30多年的使用後,風速檔按鍵出現了一些小故障。雖然不影響使用,修理一下也可以回復青春。但是在我看來,這個每次調速換檔都要走過去的操作的老古董已經與這個【智能】的時代和懶惰的我顯得格格不入。於是我萌生了要將它改成遙控的想法。

故事的開始,我先是想到了萬能的淘寶。於是用【風扇】【遙控】【改裝】這些關鍵詞進行搜索。我發現出來的結果基本都是下圖這樣的需要整個“身體”換掉。對於那個鑄鐵的老古董老,這樣的塑料件恐怕是不堪重負。

另外,也有直接是一套控制板的類型(如下圖),這種大概率是可以進行改裝的。

不過强迫症轉念一想,這豈不是很不美觀,另外也沒有狀態顯示,這顯然不合我意。

通過觀察和思考,我發現風扇的調速其實原來很簡單。傳統的交流電(AC)風扇實現調速其實是電機中有多組綫圈(受限于體積和成本以及實用性基本都是3組綫),給不同的綫圈進行通電會使電機輸出不同的功率,體現在風扇中就是不同的轉速。那麽我想,如果能自己設計一個電路使用(傳説中)單片機進行控制給綫圈通電,不就可能可以實現遙控了嗎。

於是我馬上從0開始學習單片機的控制開發。由於我本來有計算機變成的基礎,所以學習起來也是相對容易的。

電路設計

單片機允許通過編程的方式改變功能引脚的輸出狀態。OK,那麽就可以用來控制電風扇的開關狀態。不過顯然單片機使用的是低壓電直流電,不能夠直接驅動帶你風扇的電機,所以我們需要神奇的半導體【開關管】來幫我們在電路中充當開關。

思路

風扇有3個檔,那麽對應三個開關。所以我們在電路設計中需要有三個半導體開關,因爲這裏控制的是交流電,不能直接用三極管或者MOS管這種單向導通的元件。爲了減輕設計的複雜都,我這裏使用【雙向可控硅】(晶閘管)來做交流電的開關,另外配合一個【光耦】(光電耦合器)來做電氣隔離。單片機通過控制【光耦】間接控制雙向可控硅。

控制控制電機的開關就是這麽簡單的思路了,至於其他的還有RC(阻容)尖峰吸收的設計(主要是用來吸收電機啓停是產生的尖峰電壓)保護開關管不被擊穿。

聽起來好像有點複雜,確實。一開始我是想直接選用繼電器來做開關,不過想起繼電器有“噠噠噠”的聲音所以又放棄了。

那麽一個風扇怎麽能沒有狀態顯示呢?我是用了兩個數碼管來做狀態顯示,另外還配合了4顆LED燈珠,以及一個蜂鳴器做聲音的反饋。數碼管主要用來顯示當前的風速檔位和定時信息。

紅外遙控

電路中還需要集成一個紅外脈衝信號接收元件。由於紅外遙控的信號屬於載波信號,爲了方便單片機處理信號,我選用了直接輸出調製后信號的紅外接收傳感器,單片機可以直接處理輸出的信號。

至於遙控器,可以直接選用一個品牌電風扇的遙控器,使用【邏輯分析儀】分析遙控器發送的信號,自己編程做對應的處理。家中沒有遙控器,當然也可以直接在網上購買一個(如下圖)

這是我是在【嘉立創】打樣製作的測試驗證板

製作這個紅外遙控板需要學習單片機編程和使用單片機資源

定時器

PWM功能

系統中斷

數碼管的控制(38譯碼器)

PWM方波驅動蜂鳴器