树莓派安装及配置
镜像文件下载地址
https://www.raspberrypi.org/downloads/
安装apache apollo(MQTT代理服务器)
sudo tar -zxvf apache-apollo-1.7.1-unix-distro.tar.gz apache-apollo-1.7.1
cd apache-apollo-1.7.1/bin
sudo ./apollo create /opt/broker
cd /opt/broker/bin/
sudo ./apollo-broker run
安装teamview
sudo dpkg -i teamviewer-host_12.1.83885_armhf.deb
teamviewer
安装mysql数据库
pi@raspberrypi:~ $ wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lamp
安装jdk-8u192-linux-arm32-vfp-hflt.tar.gz
sudo tar zxvf jdk-8u141-linux-arm32-vfp-hflt.tar.gz -C /usr
serviceboot.sh(开机自启动服务脚本)
#!/bin/sh
# SSH
sudo /etc/init.d/ssh start
# MQTT
cd /opt/broker/bin/
sudo ./apollo-broker run
加入开机启动
pi@raspberrypi:$ sudo gedit /etc/rc.local
添加
softboot.sh(开机自启动软件-带界面)
#!/bin/sh
cd /home/pi/
sudo java -jar mqttagent/mqttagent.jar &
cd /home/pi/restserver
sudo python app.pyc &
$ mkdir .config/autostart
$ gedit .config/autostart/softboot.desktop
文件内容如下:
[Desktop Entry]
Type=Application
Name=testboot
NoDisplay=true
Exec=/home/pi/softboot.sh
文件结构图
源码示意图
arduino_esp8266:硬件程序(功能:红外学习,控制,存储,wifi连接,mqtt通信)
homeapp:android手机app(功能:设备管理,mqtt通信)
mqttagent:mqtt代理程序(功能:心跳包,添加订阅,mqtt通信)
restserver:http post服务器(功能:数据存储,同步)
功能截图
1.添加房间
2.添加设备(设备管理界面可直接控制设备开关)
3.添加指令(添加完设备后自动生成开关指令)
功能:通信测试
功能:红外学习(工作指示灯亮)
当ESP8266处于红外学习状态时,遥控器发射端对准ESP8266红外接收,超时10秒退出
功能:红外控制(工作指示灯亮)
当ESP8266处于红外控制状态时,ESP8266红外发射对准红外设备
视频地址:
https://v.youku.com/v_show/id_XNDAwNTYwMzI4MA==.html?spm=a2h3j.8428770.3416059.1
语音控制功能
图灵机器人聊天功能
控制唤醒指令:二师兄
识别中文指令为指令管理界面的中文命令
控制结束指令:不玩了
数据同步功能:
相同账户APP登录后查询服务端各个数据表版本,低于最新版本进行数据更新;在app使用过程中,使用mqtt发布数据更新信息,达到数据一致