爱板网论坛

查看: 223|回复: 0

[大赛作品提交] 【进阶三】基于微信itchat与ROS的树莓派物联网服务器实现

[复制链接]

6

主题

1

好友

201

积分

秀才

Rank: 3Rank: 3

  • TA的每日心情
    开心
    5 天前
  • 签到天数: 22 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2017-12-16 22:05:23 |显示全部楼层
    本帖最后由 ky123 于 2018-1-15 13:29 编辑

    感谢e络盟官方提供的比赛赞助基金。本次实验将使用itchat与ros机器人操作系统实现简单的室内监控服务器,微信手机APP作为客户端.

    硬件:树莓派3B
    软件:微信APP,itchat,ros-kinetic
    -1-
    什么是itchat?
    itchat官网地址:http://itchat.readthedocs.io/zh/latest/
    itchat 是一个开源的微信个人公众号接口,支持 py2 和 py3。itchat 在用户本机运行,除了调用微信接口外,不会向外界发送其他信息,并且源代码都是公开的。所以在使用过程中不必担心会有隐私泄露。
    本次实验,将使用itchat的远程通信功能实现室内监控.

    -2-
    itchat使用
    1) 安装 itchat
    1. pip install itchat
    复制代码
    因为itchat是基于python,所以编程很简单,如果你想要给文件传输助手发一条信息,只需要这样:
    1. import itchat
    2. itchat.auto_login()
    3. itchat.send('Hello, filehelper', toUserName='filehelper')
    复制代码
    2) itchat的API接口
    微信 python 接口 -- itchat 文档
    http://www.cnblogs.com/yanjingnan/p/6831464.html

    -3-
    ubuntu mate 16.04 ROS使用
    1) ROS版本选择
    因为习惯了ubuntu,所以感觉树莓派原生系统RASPBIAN不怎么好用,安装opencv,ros软件包等都有限制,影响开发.所以选择了ubuntu mate系统,因为是树莓派3B,所以只能安装ubuntu mate 16.04版本的,这就导致不能安装ros indigo,只能安装ros kenitic以上版本.
    本次安装的是ROS-Comm(官方推荐),里面仅包含了基本必备内容,没有GUI等工具;
    安装教程参考了:http://www.ncnynl.com/archives/201612/1147.html

    2) 安装cv_bridge
    因为需要将ros格式的image消息转换成opencv所用的mat格式,故需要安装cv_bridge
    1. sudo apt-get install cv-kinetic-cv-bridge
    复制代码
    由于cv_bridge内部集成了opencv3.3版本,所以需要安装还需要在树莓派上安装opencv3.3
    安装教程参考了:http://blog.csdn.net/u010925447/article/details/72190185

    -4-
    搭建物联网平台
    以上步骤全部完成后,即可实现基于ros和itchat的物联网平台
    1) 使用VNC远程到树莓派,运行以下指令,talker.py为使用ros编写的一个节点,负责监听手机微信发来的指令以及向手机微信发送消息.
    1. rosrun beginner_tutorials talker.py
    复制代码
    初始化,然后扫描二维码登录即可
    2017-12-16 20:12:35屏幕截图.png


    通过设置
    1. itchat.auto_login(hotReload=True)
    复制代码
    即使程序关闭,一定时间内重新开启也可以不用重新扫码.

    2) 远程通信测试
    itchat登录成功,将会向微信发送"初始化完成!"
    561403551.jpg


    使用微信向服务器发送消息,服务器收到后在终端打印
    2017-12-16 20:16:04屏幕截图.png


    3) 远程监控实现
    微信向服务器发送"look"指令,服务器将会调用树莓派上的摄像头拍一张照片返回给微信,如图所示:
    1810279174.jpg


    4) 使用rqt_graph查看各节点消息订阅关系如下
    2017-12-17 00_08_49____________.png


    <本次更新完>


    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /1 下一条

    手机版|爱板网 |网站地图  

    GMT+8, 2018-1-24 15:32 , Processed in 0.296226 second(s), 13 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部