继电器通道和 Pi 引脚的对应关系:
通道标号 | RPi引脚号 | wiringPi | BCM | 描述 |
通道标号 | 37 | P25 | 26 | 通道1 |
通道标号 | 38 | P28 | 20 | 通道2 |
通道标号 | 40 | P29 | 21 | 通道3 |
【注意】PCB 上的丝印标示对应 wiringPi 编码。
Relay_JMP 是继电器控制管脚选择跳线。当连接跳线帽时,即可使用树莓派控制继电器。
本扩展板带有三个接线端子,每个接线端子上分别有三个脚,用来连接外部电路。
三个端子都是低电平使能。当树莓派 IO 口输出低电平时,则对应通道的 LED 灯点亮。同时继电器常开触点闭合,常闭触点断开,使得外部电路通断状态发生改变。
- wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz
- tar zxvf bcm2835-1.60.tar.gz
- cd bcm2835-1.60/
- sudo ./configure && sudo make && sudo make check && sudo make install
- # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
- sudo apt-get install wiringpi
- #对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
- wget https://project-downloads.drogon.net/wiringpi-latest.deb
- sudo dpkg -i wiringpi-latest.deb
- gpio -v
- # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错
- sudo apt-get update
- sudo apt-get install python-pip
- sudo apt-get install python-dev
- sudo pip install RPi.GPIO
终端执行如下命令,下载示例程序,解压到指定目录
- sudo apt-get install p7zip
- wget http://www.waveshare.net/w/upload/f/fc/RPi_Relay_Board.7z
- 7zr x RPi_Relay_Board.7z -r -o./RPi_Relay_Board
- sudo chmod 777 -R RPi_Relay_Board
- cd RPi_Relay_Board
进入 Linux 终端,在终端执行以下命令:
- cd shell
- sudo ./Relay.sh CH1 ON
- sudo ./Relay.sh CH2 ON
- sudo ./Relay.sh CH3 OFF
预期结果:继电器通道 1 的 LED 被点亮,同时听到继电器接合的声音。命令中后面两个参数可改变,例如运行如下命令分别为继电器 2 接合,继电器 3 断开。
进入 Linux 终端,在终端执行以下命令:
- cd bcm2835
- make
- sudo ./Relay_Module
预期结果:可以看到 3 个 LED 依次点亮,继电器依次在常开触点和常闭触点之间来回切换。同时终端会显示目前继电器在哪个触点。
进入 Linux 终端,在终端执行以下命令:
- cd wiringPi
- make
- sudo ./Relay_Module
预期结果:可以看到 3 个 LED 依次点亮,继电器依次在常开触点和常闭触点之间来回切换。同时终端会显示目前继电器在哪个触点。
进入 Linux 终端,在终端执行以下命令:
- cd python
- sudo python Relay_Module.py
预期结果:可以看到 3 个 LED 依次点亮,继电器依次在常开触点和常闭触点之间来回切换。同时终端会显示目前继电器在哪个触点。
本例程的网页控制是基于 python Web 框架来控制继电器的。
进入 Linux 终端,在终端执行以下命令:
- sudo apt-get install python-bottle
- cd python-bottle
- sudo python main.py
在谷歌浏览器(其他浏览器可能不兼容)地址栏内输入树莓派 ip 地址,端口号 8080