wifi实现控制继电器

wifi实现控制继电器

ID:10017178

大小:3.34 MB

页数:5页

时间:2018-05-21

wifi实现控制继电器_第1页
wifi实现控制继电器_第2页
wifi实现控制继电器_第3页
wifi实现控制继电器_第4页
wifi实现控制继电器_第5页
资源描述:

《wifi实现控制继电器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、ARDUINO开发板通过WI-FI控制继电器2013年12月22日 博比发表回复这两天参加了公司里同事组织的“未来圣诞节——硬件开发”活动,有幸和几个大神一起实现了很早以前就想做的Wi-Fi继电器。整个设备是基于ArduinoUNO芯片,外扩一个Wi-FiShield以及一个DigitalI/OShield,在DigitalI/OShield上接出两根数字信号分别是控制继电器以及LED灯。Arduino在通电后将会连接上本地的一个Wi-Fi热点,然后通过写死的SSID名称、密码以及验证方式连接上Wi-Fi网络,同时开始不断监听UDP连接。在收到UDP数

2、据以后,分析每个13为结尾的数据包中第二个字节中的值,如果为1则表示通电,如果为2则表示断电。在设计完成整个设备后,我们心灵手巧的童鞋还做了个盒子,将整个设备放进去,以期更像一个插座=_=

3、

4、

5、。下图是整个设备最终成型照片!下面是Arduino部分的源码。123456789101112131415161718192021222324252627282930313233343536373839404142//Arduino开发环境可以访问http://arduino.cc//WifiShield使用的是SeeedStudio的WifiShield,Wi

6、ki:http://www.seeedstudio.com/wiki/Wifi_Shield_V1.1//SeeedStudioWifiShield库文件:https://github.com/Seeed-Studio/WiFi_Shield下载后放在Arduino安装目录下的Libraries文件夹下#include#include#include"WiFly.h" //设置Wi-Fi的SSID以及密钥#defineSSID     "123"#defineKEY      "usuj6539" //设置Wi-Fi的加密方式,加密方式有以下几种枚举:

7、//WIFLY_AUTH_OPEN/WIFLY_AUTH_WPA1/WIFLY_AUTH_WPA1_2/WIFLY_AUTH_WPA2_PSK//枚举值定义在WiFly.h文件中#defineAUTH     WIFLY_AUTH_WPA2_PSK //设置通信IP[1],本地端口以及远程端口#defineUDP_HOST_IP       "192.168.43.1"#defineUDP_REMOTE_PORT   8123#defineUDP_LOCAL_PORT    8123 //通信跳线设置//Arduino      WiFly// 2  

8、     TX// 3       RXSoftwareSerialuart(2,3);WiFlywifly(uart); //设置两个数字输出信号的接口(DigitalI/O)intledPin1=6;//定义数字6接口intledPin2=13;//定义数字6接口 //初始化UDP连接voidsetupUDP(constchar*host_ip,uint16_tremote_port,uint16_tlocal_port){    charcmd[32];    wifly.sendCommand("setwj1r","AOK");    wif

9、ly.sendCommand("setip1r","AOK");    snprintf(cmd,sizeof(cmd),"setih%sr",host_ip);    wifly.sendCommand(cmd,"AOK");    snprintf(cmd,sizeof(cmd),"setir%dr",remote_port);    wifly.sendCommand(cmd,"AOK");4344454647484950515253545556575859606162636465666768697071727374757677787980

10、818283848586    snprintf(cmd,sizeof(cmd),"setil%dr",local_port);    wifly.sendCommand(cmd,"AOK");    wifly.sendCommand("saver");    wifly.sendCommand("rebootr");} //setup函数是Arduino在启动时立刻执行,且仅会执行一次的函数,//一般用于数据、端口的初始化工作voidsetup(){    //Serial是Arduino内置的对象,用于外部设备通过串口与Arduino板的通

11、信    Serial.begin(9600);    Serial.println("sta

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。