微世界

树莓派一键控制gpio继电器模块脚本

树莓派2打算拿来控制继电器模块,用于控制电器,看网上大多数都是Python脚本或者java控制,本人不是太懂,用最基本的方法写了一下shell一键控制脚本,新手的话具体shell控制可以看一下下面这篇文章,了解下命令内容,在来看一下这个一键控制脚本。

树莓派shell控制GPIO

树莓派gpio端口说明

timg

根据说明图连接好继电器,应该有说明,继电器的vcc连接5v接口,gnd连接gnd就好,in1-in4连接gpio端口就好了,连接哪个端口自己记住一下就行了。稍后控制的时候会用到。

IMG_20160709_171853

IMG_20160709_171928

下面是控制脚本,大家可以了解一下

#!/bin/sh
### BEGIN INIT INFO
# Provides: gpiokz
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: gpiokz
### END INIT INFO

# 进入GPIO目录
cd /sys/class/gpio

# 使GPIO{port}从内核空间暴露到用户空间中 执行该操作之后,该目录下会增加一个gpio{port}文件
echo "$1" > export
# 进入GPIO{port}目录,该目录由上一步操作产生
cd gpio"$1"

case "$2" in
on|ON|1)
# 设置GPIO{port}为输出模式
echo out > direction
# 向value文件中输入1,GPIO输出高电平
echo 1 > value
;;
off|OFF|0)
# 设置GPIO{port}为输出模式
echo out > direction
# 向value文件中输入0,GPIO输出低电平
echo 0 > value
;;
*)
echo "Usage: /etc/init.d/gpiokz {GPIO port} {on|off}"
;;
esac

# 返回上一级目录
cd ../
# 注销GPIO{port}接口
#echo "$1" > unexport
#exit

控制脚本一般来说都是sh文件,运行的时候运行 sh  xxx.sh 但是这个控制稍麻烦一下,所以这里保存为gpiokz文件,上传到 /etc/init.d/gpiokz 里面,运行的时候 /etc/init.d/gpiokz 6 1 这样就好了,因为继电器不同,有的输入低电平有效,有的输入高电平,所以上面的on 和off不一定准确,可以根据自己的情况改一下,也可以直接用1或者0,1为高电平,0为低电平。还有一点保存文件时注意保存为linux格式,windows格式执行不了,下面提交下载地址,直接下载就好了。

下载地址:gpiokz  因为上传限制,压缩了,下载后解压一下就好了。

/etc/init.d/gpiokz 端口 状态 
/etc/init.d/gpiokz 6 1   //6为gpio6 1为高电平
/etc/init.d/gpiokz 6 on   //6为gpio6 on为开,根据自己情况修改脚本

这样控制还是长了点,所以做个链接链接到/bin/目录了,以后就可以直接运行 gpiokz 6 1 这样就可以了,也可以把这个文件上传到/bin/目录,但是这样一旦修改,两个文件都需要重新长传,做链接的话只需要修改/etc/init.d/gpiokz这个文件就好了

ln -s /etc/init.d/gpiokz /bin/gpiokz

链接好之后可以简单执行命令行就好了

gpiokz 端口 状态 
gpiokz 6 1   //6为gpio6 1为高电平
gpiokz 6 on   //6为gpio6 on为开,根据自己情况修改脚本

QQ截图20160709174853

下面就是网页控制了。这样控制还是需要输入命令,没有电脑不方便,所以网页控制还是比较简单。稍后会写的

作者:anenv,如若转载,请注明出处:https://www.anenv.com/679.html

发表评论 抢沙发

返回顶部