智能设备相关Arduino+esp8266 +阿里云eds + 百度云推动 流程 简约 配置指南
来源:互联网 发布:软件开发面试项目 编辑:程序博客网 时间:2024/05/16 09:14
主要是为了 记录 物联网的基础通讯流程
1 arduino 相关
硬件准备Arduino UNO一块
ESP12E Shield一块
将 8266 开发板 插入 arduino uno
void setup(){ Serial.begin(9600); randomSeed(analogRead(0));}void loop(){ delay(1000); Serial.print("cmd=upload&device_name=arduino&data="); Serial.print(random(1000));//send a random number Serial.println("&uid=doit_demo&key=a4b4c7cbc8685cc5309d60647cae546b");}注意烧写的时候 两个开关全部OFF ,不然烧写不上去
运行的时候 全部 ON
这一段代码 是子弹 ,那么目标呢 ?
目标就是 serial
2 esp8266 开发板
不要问我为什么要用 esp8266 因为穷 !!!
开发板获取serial里面的内容 然后向外发送
模块上电,在配置模式下模块WiFi信号:“DoitWiFi_Config”。密码为:“12345678”。
用手机在浏览器输入WiFi扩展板地址:192.168.4.1打开配置页面。
选择sta client tcp 这三项 ,不上图了, 自己看 ,有个下拉框框 ,会自动选一个 你当时环境下的ap路由,记得改成你要用的ap路由
配置 平台基于TCP通讯,服务器IP: www.mengfeifei.com 端口:9390
问题出现了 :我php用的是 url,你这ip+端口 如何整
3 apache 服务器配置
我的做法是 开启apache 的一个新端口, 对应上php的目录
还记得把php名字改成 index.php ,我就是这么做的
我用的是 ubuntu 14.04
修改/etc/apache2# cat ports.conf
NameVirtualHost *:80Listen 80NameVirtualHost *:9390Listen 9390
以及 /etc/apache2/sites-enabled/000-default
<VirtualHost *:9390> ServerAdmin webmaster@localhost DocumentRoot /var/www/baiduyun/Baidu-Push-Server-SDK-Php-3.0.1/demo <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/baiduyun/Baidu-Push-Server-SDK-Php-3.0.1/demo/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory></VirtualHost>
记得 端口号 要一致 我就错了一次
然后
/etc/init.d/apache2 restart
4 开始调试
插上了 电
怎么看啊 , 我用的是 笨方法
cat /var/log/apache2/access.log
哈哈 看 log记录
112.26.198.112 - - [31/Dec/2015:16:44:45 +0800] "cmd=upload&device_name=arduino&data=606&uid=doit_demo&key=a4b4c7cbc8685cc5309d60647cae546b" 200 93 "-" "-"112.26.198.112 - - [31/Dec/2015:16:44:50 +0800] "cmd=upload&device_name=arduino&data=167&uid=doit_demo&key=a4b4c7cbc8685cc5309d60647cae546b" 200 93 "-" "-"过一会 之后 我的手机就不停的收到 百度云的推动了 (百度云要自己配置好,包括php服务器端和 手机客户端)
附上服务器端 php代码
<?php/** * ************************************************************************* * * Copyright (c) 2014 Baidu.com, Inc. All Rights Reserved * * ************************************************************************ *//** * * @file hello.php * @encoding UTF-8 * * * @date 2015骞?鏈?0鏃? * */// header('Access-Control-Allow-Origin: *')require_once '../sdk.php';header('Access-Control-Allow-Origin: *');// 鍒涘缓SDK瀵硅薄.$sdk = new PushSDK();$channelId = '4577444210869810647';echo $_GET['a'], "<BR>";echo $_GET['b'], "<BR>";echo $_GET['cmd'], "<BR>";//echo $_GET['device_name'], "<BR>";//echo $_GET['data], "<BR>";//echo $_GET['uid'], "<BR>";//echo $_GET['key'], "<BR>";o $_GET['b'], "<BR>";//$str = file_get_contents("php://input");//$arr=array();//parse_str($str,$arr);//echo 'name:'.$arr['a']."<br/>".'age:'.$arr['b'];// message content.$message = array ( // 娑堟伅鐨勬爣棰? 'title' => 'Hi!Doctor ' . $_GET['a'], // 娑堟伅鍐呭 'description' => $_GET['b'] . "hello, this message from LCFC push service." );// 璁剧疆娑堟伅绫诲瀷涓?閫氱煡绫诲瀷.$opts = array ( 'msg_type' => 1 );// 鍚戠洰鏍囪澶囧彂閫佷竴鏉℃秷鎭?$rs = $sdk -> pushMsgToSingleDevice($channelId, $message, $opts);// 鍒ゆ柇杩斿洖鍊?褰撳彂閫佸け璐ユ椂, $rs鐨勭粨鏋滀负false, 鍙互閫氳繃getError鏉ヨ幏寰楅敊璇俊鎭?if($rs === false){ print_r($sdk->getLastErrorCode()); print_r($sdk->getLastErrorMsg()); }else{ // 灏嗘墦鍗板嚭娑堟伅鐨刬d,鍙戦€佹椂闂寸瓑鐩稿叧淇℃伅. print_r($rs);}echo "done!";
至此为止 ,arduino 只要一上电 我的手机就收到百度云推送了
_______________________________________________________________
一定要注意端口哦 公司的端口有可能上不去
0 0
- 智能设备相关Arduino+esp8266 +阿里云eds + 百度云推动 流程 简约 配置指南
- 阿里云相关配置
- ESP8266+Arduino UNO新手调试指南
- ESP8266与阿里云传数据
- ESP8266 ESP01 Arduino IDE 烧录配置
- 阿里云linux web服务器 相关配置
- arduino安装ESP8266 Arduino core
- Python--阿里云服务器CentOS 配置流程(一)
- Python--阿里云服务器CentOS 配置流程(二)
- Python--阿里云服务器CentOS 配置流程(三)
- 阿里云服务器相关
- 阿里云, mysql相关
- 【esp8266】史上最详细的Arduino uno R3接入机智云教程
- Arduino IDE for ESP8266
- 阿里云centos+ngnix+mysql配置相关事项
- 阿里云服务器相关配置以及javaweb项目部署
- iOS应用支持IPV6及阿里云相关配置
- centos版本阿里云服务器安装naginx以及相关配置
- RHEL6.3 yum源更新
- angularjs 当transclude:true or elemet时如何在link函数中取得要替代模板中ng-transclude的那部分内容
- Week7-2POS tagging
- solr hightlight高亮显示
- Maven常用命令
- 智能设备相关Arduino+esp8266 +阿里云eds + 百度云推动 流程 简约 配置指南
- JAVA图形界面(GUI)之常用组件
- Android 图表开源库 GraphView
- 缓存文件可以放在哪里?它们各自的特点是什么?
- js常用数组方法
- Html5添加phonegap--Contacts插件教程
- FPGA笔记 Cyclone IV 供电电源
- 151231_工具遐想
- (搬运)如何正确获得Android内置SD卡跟外置可插拔SD卡