樹莓派使用python+繼電器控制220V燈泡


需要的材料

1.繼電器:繼電器是一種電控制器件,它實際上是用小電流去控制大電流運作的一種“自動開關”,我們這里用它來控制電燈。控制了繼電器就等於控制了電燈。

我購買的是某寶上3塊錢的“1路 5v繼電器”,這里的“幾路”指的是可用控制多少個電燈220v線路,5v指繼電器本身需要5v電壓來驅動,樹莓派本身提供5v電壓輸出所以這里選用5v

2.杜邦線:某寶幾塊錢一組40P,這里只需要三根,用於連接 樹莓派與繼電器

 

 

 

3.電燈+燈座+銅線+電源插頭

GPIO說明

GPIO是(General Purpose Input Output)的縮寫,也就是通用輸入輸出,是一種常見的硬件接口,用以表示開關量。

物理連接

1.樹莓派陣腳對應繼電器:

 1.繼電器連接電路(220v電源線):

 

 3.總示意圖

這里注意:GPIO18是針腳12,在BCM中的編碼

 這種接線方法稱為:“常開端”接線方法,還有另一種“常閉端”接線方法,只需要將“NO”火線出口移動到“NC”位置

Python 控制腳本

 樹莓派系統中自帶python IDE可直接編譯、調試代碼,比使用java方便

  登錄樹莓派 點擊“菜單->編程->Thonny Python IDE” 啟動IDE代碼如下:

import RPi.GPIO as GPIO
import time

# BCM 編號方式
GPIO.setmode(GPIO.BCM)
# 設置[以BCM編號為18(實際在樹莓派12針腳位置)]的GPIO口為輸出模式
GPIO.setup(18, GPIO.OUT)
# 開啟
GPIO.output(18, GPIO.HIGH)
time.sleep(5) #5秒后關閉
# 關閉
GPIO.output(18, GPIO.LOW)
# 最后清理GPIO口
GPIO.cleanup()

 micropython

from machine import Pin
import time

#第一個燈
relay_in1 = Pin(3, Pin.OUT)
relay_in1.value(1)
time.sleep(1)
relay_in1.value(0)
time.sleep(1)

#第二個燈
relay_in2 = Pin(4, Pin.OUT)
relay_in2.value(1)
time.sleep(1)
relay_in2.value(0)
time.sleep(1)

 

我的繼電器帶有紅綠兩個LED指示燈,接通后紅色LED燈常亮,運行程序 當聽到 “啪” 的一聲,綠色LED 燈就會亮,同時220v燈泡點亮,按程序控制5秒后,再聽到 “啪” 的一聲,綠色LED 燈就會熄滅,同時220v燈泡熄滅。

知識擴展

1. RPi.GPIO模塊簡單介紹

函數 GPIO.setmode(mode)
  說明 設置引腳的編號系統
  輸入 mode:編號系統,GPIO.BOARD使用BOARD編號系統;GPIO.BCM使用BCM編號系統
函數 GPIO.setup(channel, dir)
  說明 設置引腳的IO模式
  參數 channel:引腳編號
     dir:IO方向,GPIO.IN輸入;GPIO.OUT輸出
函數 GPIO.output(channel, state)
  說明 設置引腳的輸出電平
  參數 channel:引腳編號
  參數 state:電平狀態,高電平:1/GPIO.HIGH/True;低電平:0/GPIO.LOW/False
函數 GPIO.input(channel)
  說明 讀取引腳的輸入電平
  參數 channel:引腳編號
  返回 電平狀態,高電平:1/GPIO.HIGH/True;低電平:0/GPIO.LOW/False
函數 GPIO.cleanup()
  說明 清理引腳

2.繼電器原理圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM