查看: 8489|回复: 7
打印 上一主题 下一主题

只要20行代码,轻松实现物联网应用!

[复制链接]
  • TA的每日心情
    奋斗
    2017-1-11 10:44
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    跳转到指定楼层
    楼主
    发表于 2017-2-24 15:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    导读:通过“Arduino代码自动生成工具”自动生成的库文件,短短20行代码,Arduino uno wifi 就可以迅速联网,实现使用手机APP进行广域网的远程控制。

    一直以来Arduino 致力于让物联网开发变得更简单,在简化局域网无线控制实现方案后,也一直在为开发者寻找一个能够解决广域网远程控制的可行方案。用Arduino实现物联网的很多,今天给大家介绍一款非常轻松简单的物联网连接方案。开发者仅需关注逻辑程序即可非常方便地设计出自己的物联网产品。

    本实验使用Arduino Uno Wifi 、机智云Arduino代码自动生成工具。


    Arduino Uno Wi-Fi是一款带有集成式Wi-Fi模块的新型Arduino Uno板!该板基于ATmega328P,具有集成式ESP8266 Wi-Fi模块。它拥有14个数字输入/输出引脚(其中6个可用作PWM输出)、6个模拟输入、1个16 MHz陶瓷谐振器、1个USB连接、1个电源插座、1个ICSP头和1个复位按钮。它包含支持微控制所需的一切;只需通过USB电缆将其与计算机相连,或者利用AC-DC适配器或电池为其供电即可着手设计。

    ESP8266 Wi-Fi模块是一款独立的SoC,具有集成式TCP/IP协议栈,让您能够访问Wi-Fi网络。Uno Wi-Fi的一个有用特性是支持OTA(空中)编程,适于传输Arduino sketch或Wi-Fi固件。


    本文以Blink程序为例,只要把控制LED闪烁改成其他程序,就可以轻松控制或实现其他项目啦。下面我们来看一下具体的步骤吧!

    工程创建
    • 使用浏览器登录工程创建页面,若未注册机智云账号请先进行注册
    • 点击 [创建新产品] , 然后选择分类并填写项目名称 ArduinoWiFiBlink,选择WiFi通讯方案



    • 点击保存后,进入 [开发向导]




    • 点击 [去添加数据点],并添加数据点blink



    • 点击[MCU开发],选择硬件平台ArduinoUNOWiFi,并点击[生成代码包]




    • 点击[下载]下载库文件,并重命名为Gizwits.zip




    镜像更新


    • 按照Arduino官方教程更改Arduino Uno WiFi的ESP8266镜像



    KKETCH编写
    • Gizwits库文件导入





    • 重新打开Arduino IDE并检验库是否成功导入





    打开示例sketch – simpleTry并修改
    1. #include ? ?? ?? ?? ?? ? //库文件包含
    2. #include ? ?? ?? ?? ?? ? //库文件包含
    3. Gizwits myGizwits;? ?? ?? ?? ?? ? //对象**
    4. bool varBlink = false;? ?? ?? ?? ?? ? //命令存储变量
    5. unsigned long time=0;? ?? ???//时间存储变量
    6. bool ledStatus=0;? ?? ?? ?? ?? ? //L13状态变量
    7. void setup() {
    8. ? ?? ???myGizwits.begin();? ?? ???//机智云相关程序初始化
    9. ? ?? ???pinMode(7, INPUT_PULLUP);//绑定模式触发,低电平触发
    10. ? ?? ???pinMode(13, OUTPUT);//受控LED
    11. }
    12. void loop() {
    13. ? ?? ???if(LOW == digitalRead(7))
    14. ? ?? ?? ?? ?? ? myGizwits.setBindMode(0x02);//低电平触发Airlink绑定模式,用于手机APP与控制板绑定
    15. if(myGizwits.hasBeenSet(EVENT_BLINK))
    16. ? ?? ?? ?? ?? ? myGizwits.read(EVENT_BLINK, &varBlink);//如果有新命令下达,则读取命令值
    17. ? ?? ???if(varBlink)? ?? ???
    18. ? ?? ?? ?? ?? ? if(millis() - time > 1000) {
    19. ? ?? ?? ?? ?? ?? ?? ?? ?ledStatus = !ledStatus;
    20. ? ?? ?? ?? ?? ?? ?? ?? ?digitalWrite(13, ledStatus);//如果varBlink为true,则每隔1秒改变L13状态
    21. ? ?? ?? ?? ?? ?? ?? ?? ?time = millis();
    22. ? ?? ?? ?? ?? ? }
    23. ? ?? ???myGizwits.process();? ?? ???//机智云云通讯处理
    24. }
    复制代码
    • 保存代码并写入Arduino Uno WiFi开发板





    手机控制
    • 在上述共享地址或者机智云官网下载机智云手机APP并打开,可点击[跳过]





    • 将Arduino Uno WiFi重新上电,管脚D7接地1秒后断开以进入Airlink模式




    • 点击APP右上角按键,然后[添加设备],全部选择[下一步]




    点击发现的新设备,就可以实现手机APP操作了







    关于Arduino

    Arduino Srl来自意大利,是全球领先的开源电路板提供商,旨在帮助众多专业及非专业开发者设计和制作不同种类的电子项目原型,通过Arduino可扩展的开放硬件及开源软件平台,为全世界数以百万计的开发者提供帮助,简单、快速的实现开发项目。


  • TA的每日心情
    擦汗
    2017-8-16 16:44
  • 签到天数: 229 天

    [LV.7]常住居民III

    沙发
    发表于 2017-2-24 17:33 | 只看该作者
    厉害厉害? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?
  • TA的每日心情
    开心
    2019-9-27 09:05
  • 签到天数: 749 天

    [LV.9]以坛为家II

    板凳
    发表于 2017-2-24 19:58 | 只看该作者
    厉害厉害哈哈哈哈
    打赏作者鼓励一下!
  • TA的每日心情
    奋斗
    2017-1-11 10:44
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    地板
    ?楼主| 发表于 2017-2-27 18:24 | 只看该作者

    过奖过奖
  • TA的每日心情
    开心
    2016-12-12 14:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
    发表于 2017-3-8 20:11 | 只看该作者
    用uno直接连esp8266可以吗?不买那个WiFi arduino 板子?
  • TA的每日心情
    奋斗
    2017-1-11 10:44
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    6#
    ?楼主| 发表于 2017-3-10 11:57 | 只看该作者
    曦yyh 发表于 2017-3-8 20:11
    用uno直接连esp8266可以吗?不买那个WiFi arduino 板子?

    可以,不过需要修改部分代码
  • TA的每日心情

    2017-4-27 13:59
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    7#
    发表于 2017-3-30 14:26 | 只看该作者
    D1板可以用吗?

    该用户从未签到

    8#
    发表于 2019-9-27 18:26 | 只看该作者

    D1板少ATmega328P
    您需要登录后才可以回帖 登录 | 立即注册 ?

    本版积分规则

    热门推荐

    关于温湿度传感器在LCD显示上的问题
    关于温湿度传感器在LCD显
    我建立了一个程序,想要将dht11传感器得到的数据显示在LCD1602上,但是LCD显的都是乱
    【原创】全球最小口袋3D打印机mini one直播教程贴
    【原创】全球最小口袋3D打
    最近闲得蛋疼,没事搞个掌上3D打印机,先放效果图吧。 搞了半天,终于能正常打印,
    【Arduino】108种传感器模块系列实验(74)--- 4位LED数码管模块
    【Arduino】108种传感器模
    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
    (开源)ESP8266改装小风扇,app远程控制+天猫精灵控制
    (开源)ESP8266改装小风
    材料准备 [*]USB风扇一个 [*]ESP8266一块 [*]3.3继电器一块 拆解风扇 第一次,没有
    基于机器视觉的智能分拣机械臂
    基于机器视觉的智能分拣机
    本作品是一个基于机器视觉的智能机械臂操作平台,其采用atmega32单片机作为主控制系统
    Copyright ???2015-2016??Arduino中文社区??Powered by?Discuz! ??( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表