繼電器就是
Relay 的原理,簡單來說,就是利用電磁鐵的磁力,吸引開關的切換。Wiki 上有一個很超清楚的解說圖:(不過我完全看不懂是甚麼字 = =)
- 左側的電路開關關閉時,中央的線圈因為通電的關係,變成電磁鐵,吸引的上方的開關
- 被吸引的電路,使得右側的電路由開路變為導通,下方的燈泡就亮了起來
- 可以注意到左側使用 1.5V 作為電壓源,右側的電壓源則為 230V,這就是前面提到的小電壓 (電流) 控制大電壓(電流) 的特性
- 接著我們只要用 Arduino 控制左側電路的開關,就可以用 Arduino 控制大電壓的電器了 (Arduino 開發板本身不能承受太大的電壓&電流)
再來細看一張 relay 內部機構的示意圖:
- 紅色的線表示 relay 未通電與通電時通路,未接電時 NC 接點與共接點形成通路
- 接電時形成電磁鐵,可動電樞被吸引,使的 NO 接點與共接點形成通路
- NC 指的是 Normal Close,常關點
- NO 指的是 Normal Open,常開點
- 共接點一邊會標示為 COM 代表 common point
- 電磁鐵線圈我們會標示為 Coil
Relay 的開關種類有分幾種,可以參考英文版的 Wiki,
- SPST:Single Pole Single Throw,單刀單擲
- SPDT:Single Pole Double Throw,單刀雙擲
- DPST:Double Pole Single Throw,雙刀單擲
- DPDT:Double Pole Double Throw,雙刀雙擲
範例中的 relay 是我在 ICshop 上買的 RY5W-K,購買的時候注意上方的 RY5W-K 型號,其中的 5 代表的就是這個 relay 的操作電壓,Arduino 可提供的電源為 5V/3V,購買的時候注意不要買到 12V 的。側面的值,為開關可承受的最大電壓電流,這邊也可以知道我們可以用 5V 的電壓控制 >10V 的電路。
範例說明:
這邊借用一下 oomlout 的範例,這個網頁不錯,很推!
Step 1.準備材料:
電晶體 x1 (2N 系列的應該都可以,這個當作上方左側的開關用)
二極體 x1 (1N4004 / 1N4001,flyback diode 保護電路用)
紅色 LED x1
綠色 LED x1
220 Ohm 電阻 x1
560 Ohm 電阻 x2
RY5W-K 繼電器 x1 (DPDT)
Step 2. 接線圖:
Step 3. Sketch & 解說:
整個電路的作動原理如下:
- Arduino pin 2 送出控制電壓 5V (小電壓) 給電晶體
- 電晶體導通,使 5V 的電壓通過 relay 的 coil 使 coil 變成電磁鐵
- coil 導通後,造成開關切換,原本藍色的通路,變成綠色的通路。這裡的兩個迴路的電壓,本例子是用 5V,其實可以外接更大的電壓,就是小電壓控制大電壓。
- 基本只要不斷的切換 pin 2 的電壓,5V-0V-5V-0V,就可以讓兩個 LED 交叉亮起了。不過電感線圈做 5V-0V 切換時,殘留電流可能會傷害電晶體,加上一個 flyback diode 可以有效保護電晶體。
Sketch :
int ledPin = 2; // Relay connected to digital pin 2
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop()
{
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
}
參考資料:
oomlout
wiki 中文
wiki 英文
Cooper Maa - 繼電器簡介
請問一下 如果外接電壓太大會不會把flyback diode 燒掉?
回覆刪除