树莓派使用python+继电器控制220V灯泡

2021年11月22日 阅读数:2
这篇文章主要向大家介绍树莓派使用python+继电器控制220V灯泡,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

须要的材料

1.继电器:继电器是一种电控制器件,它其实是用小电流去控制大电流运做的一种“自动开关”,咱们这里用它来控制电灯。控制了继电器就等于控制了电灯。java

我购买的是某宝上3块钱的“1路 5v继电器”,这里的“几路”指的是可用控制多少个电灯220v线路,5v指继电器自己须要5v电压来驱动,树莓派自己提供5v电压输出因此这里选用5vpython

2.杜邦线:某宝几块钱一组40P,这里只须要三根,用于链接 树莓派与继电器编程

 

 

 

3.电灯+灯座+铜线+电源插头函数

GPIO说明

GPIO是(General Purpose Input Output)的缩写,也就是通用输入输出,是一种常见的硬件接口,用以表示开关量。编码

物理链接

1.树莓派阵脚对应继电器:spa

 1.继电器链接电路(220v电源线):调试

 

 3.总示意图code

这里注意:GPIO18是针脚12,在BCM中的编码blog

 这种接线方法称为:“常开端”接线方法,还有另外一种“常闭端”接线方法,只须要将“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.继电器原理图: