美文网首页
用微信公众号控制你的树莓派

用微信公众号控制你的树莓派

作者: 树莓派爱好者基地 | 来源:发表于2021-02-08 12:29 被阅读0次

    微信公众号是大家经常会遇到的东西,本期教程我们用微信公众号控制树莓派的21号gpio引脚,这里为了方便的看出控制效果我用把gpio21号口接到一个继电器的vcc,GND接到继电器的GND,这样引脚是高电平时继电器电源灯会亮,低电平时电源灯会关闭(其实这里接二极管也是可以的。。。。)

    一、准备的材料

    1.公网ip的服务器(frp要用)
    2.刷有官方系统的树莓派
    3.个人微信公众号
    个人微信公众号服务器配置需要用公网ip的80或者443端口,而树莓派接入的网络一般是局域网,没有公网ip,这时候就需要一台具有公网ip的服务器和内网穿透工具来将树莓派的80端口映射到公网ip的80端口。下面使用frp反向代理应用来配置80端口。

    二、frp配置

    1.云服务器端操作:

    登录云服务器,根据服务器的操作系统,在Release页面中找到对应的frp程序,然后分别在服务器和树莓派中下载它
    首先使用SSH连接上云服务器,使用wget指令下载frp程序。


    使用tar指令解压tar.gz文件

    tar -zxvf frp_0.16.0_linux_386.tar.gz
    
    

    然后进入解压出来的文件夹

    cd frp_0.16.0_linux_386
    
    

    然后修改服务器配置文件,即frps.ini文件,使用nano指令对目标文件进行编辑。

    sudo nano frps.ini
    
    

    打开文件之后将文件里的内容改成

    [common]
    bind_port = 7000
    
    

    [common]部分是必须有的配置,其中bind_port是自己设定的frp服务端端口。
    保存上面的配置后,使用以下指令启动frp服务端。

    sudo ./frps -c ./frps.ini
    
    

    到此服务器端的配置就告一段落。

    2.树莓派端操作:

    树莓派安装的frp程序跟云服务器端的程序是不一样的,树莓派要选择arm版的,前一部分操作跟云服务器端是相同的。


    这里版本号要相同!!!

    tar -zxvf frp_0.16.0_linux_arm.tar.gz
    
    cd frp_0.16.0_linux_arm
    
    sudo nano frpc.ini
    
    

    客户端的配置如下:


    上面的配置和服务器要一一对应起来:
    servera_ddr后面要填云服务器的IP
    server_port后面填云服务器的bindport
    [ssh]中的内容备注如下:
    local_ip后面填树莓派的内网IP,也可以直接用这个!
    local_port后面填树莓派的SSH端口,一般是22
    remote_port后面填的端口可以随意,但是不要占用特定端口
    保存配置,然后运行客户端

    sudo ./frpc -c ./frpc.ini
    
    

    此时如果树莓派命令行出现了"start proxy success"字样,就证明连接成功了!


    3.后台运行frp
    这儿使用的是nohup指令

    nohup ./frpc -c ./frpc.ini#在客户端(树莓派)
    nohup ./frps -c ./frps.ini#在服务端(VPS服务器)
    
    

    三、调用公众号接口的API

    首先安装环境,这里使用的是wechatpy和flask。
    什么是wechatpy?
    wechatpy 是一个微信 (WeChat) 的第三方 Python SDK, 实现了微信公众号、企业微信和微信支付等 API。
    什么是flask?
    Flask是一个使用Python编写的轻量级Web应用框架。基于Werkzeug WSGI工具箱和Jinja2 模板引擎。Flask使用BSD授权。

    1.安装环境

    sudo pip3 install wechtpy[cryptography]
    sudo pip3 install flask

    2.配置微信公众号

    注册一个个人微信公众号


    要注意微信公众号里面设置的token要和下面代码里的令牌token一致

    3.创建文件

    sudo nano tt.py
    
    

    写入下面代码
    公众号发送【控制代码】获得下载地址

    4.树莓派端运行代码

    sudo python tt.py
    
    

    这样就已经全部配置完毕了,现在打开公众号,输入开启关闭可以看到gpio21引脚高低变化,视频中可以看得出。


    相关文章

      网友评论

          本文标题:用微信公众号控制你的树莓派

          本文链接:https://www.haomeiwen.com/subject/qeyhzktx.html