Kadence

繼電器

繼電器是一種電子控制器件,它具有控制系統和被控制系統,通常應用於自動控制電路中,是用較小的電流去控制較大電流的一種「自動開關」,在電路中起著自動調節、安全保護、轉換電路等作用。當我們開始用 Webduino 控制繼電器,就可以非常簡單的做出利用網頁控制的智慧插座或自動開關。

範例影片展示

接線與實作

開始接線前,先認識一下繼電器,繼電器的內部構造有一個電磁鐵,
– 在沒有訊號提供時,內部的簧片會在上方,這時候「常閉」與「公共端」是通路,「常開」和「公共端」是斷路。
– 當電磁鐵透過訊號通電,就會將內部的簧片往下吸附,此時「常閉」與「公共端」變成斷路,「常開」和「公共端」變成通路。

藉由這個方式,我們就可以很容易的控制電器用品的開和關。

繼電器

繼電器內部構造

因為是用小電流控制大電流,所以在這個範例會用到兩組電源,其中一組電源提供 Webduino 開發板使用,另外一組電源則是供應繼電器使用。在繼電器上頭有紅燈綠燈的一側,具有三個腳位,將 VCC 接在 Webduino 3.3V 的腳位,GND 接在 GND 的腳位,IN 接在 9 的位置,繼電器的另外一側需要用十字螺絲起子來接線 ( 因為這一側通常會接大電流的電器 ),將風扇的其中一條電線接在繼電器的「常開」,另外一條電線和電源接上,而電源的另外一條線則接在繼電器的「公共端」。

由於 Webduino 支援開發板種類只會越來越多,接線圖先使用馬克一號與 Fly 示範,對於其他開發板來說,只要 IN 接數位腳 ( 數字 ),仍會有一樣的效果

馬克一號接線示意圖:

馬克一號接線繼電器

Fly 接線示意圖:

FLY 接線繼電器

繼電器的大電流一端的接線,利用十字螺絲起子,將電線旋緊。

繼電器接線

實際接線照片:

繼電器接線

斷路時繼電器會亮紅色的燈,通路時會亮綠色的燈。

繼電器接線

基本操作

打開 Webduino Blockly  ( https://blocklypro.webduino.io ),在畫面中放入開發板積木,填入 Device ID,在開發板內放入 繼電器的積木,腳位設定 11,變數名稱設定為 relay。

開發板的積木在「開發板控制」目錄下,繼電器相關積木在「輸入輸出 > 繼電器」的目錄下。

繼電器 blockly

如果要讓繼電器打開 ( 使其通電 ),在繼電器積木的後方,放入「relay 設定狀態 on」的積木。

繼電器 blockly

由於繼電器和 LED 一樣,都是透過數位腳的 1 和 0 控制開和關,所以把繼電器的積木,換成 LED 的積木一樣是可以運作的。不過繼電器不支援「強弱」,只能純粹的開、關、閃爍。

網頁互動點擊燈泡

填入裝置 Device ID,確認開發板上線,點選右上方紅色按鈕執行,就可以看到繼電器通電,連接繼電器的電扇或電器也會啟動。

範例解答 ( 雲端平台 ):https://blocklypro.webduino.io/#XBBjwdKybm

網頁燈泡圖片控制繼電器

更進一步我們可以透過網頁操控 LED,這時可以打開 Webduino Blockly 的網頁互動測試區,下拉選單選擇「點擊燈泡」,畫面裡會打開一個內嵌的網頁燈泡圖片,在左側的積木目錄內,可以看到最下方出現了一個「點擊燈泡」的選單,點選展開可以看到操控網頁燈泡圖片的控制積木。

繼電器狀態 blockly

接著為了確保開發板上線的時候,繼電器和網頁燈泡圖片的狀態一致 ( 都是關或都是開 ),先放入 relay 狀態為 off 和燈泡狀態為 off 的積木,讓它們一開始都是熄滅的狀態。

繼電器執行 blockly

把「點擊燈泡執行」的積木放到畫面中,放入邏輯「如果、否則」的積木,邏輯積木可以點選「藍色小齒輪」,增加判斷的條件 ( 如下圖 )。

如果否則的積木在「基本功能 > 邏輯」目錄下,點擊燈泡執行的積木在「點擊燈泡」目錄下。

燈泡邏輯狀態 blockly

在第一個邏輯判斷,放入「燈泡現在狀態是 on」的積木,表示「如果燈泡圖片是亮燈的」,執行的內容就將燈泡圖片狀態設為 off,relay 也設為 off,反之「如果燈泡圖片是熄滅的」,執行的內容就將燈泡圖片狀態設為 on,relay 狀態也設為 on。

切換燈泡狀態 blockly

其實更簡單的方法是直接用 LED 的積木來控制繼電器,透過「狀態切換」可以直接切換把 off 狀態變成 on,把 on 變成 off。

切換燈泡狀態 blockly

填入裝置 Device ID,確認開發板上線,點選右上方紅色按鈕執行,並開始點按網頁互動區裡的燈泡圖片,就可以輕鬆地控制 連接繼電器的電器了。

使用 LED 操控的解答:https://blocklypro.webduino.io/?demo=demo-area-02#7g1AVlyEVG

使用繼電器操控的解答:https://blocklypro.webduino.io/?demo=demo-area-02#XLo1abKO3m

分享