前面:赶在五一之前给乌龟做个自动喂食器 说用 Arduino Cloud IoT 做了远程控制,我搜了一下,中文的使用说明很少。
我简单介绍一下基本流程吧,主要是截图。

注册登录

网站国内都正常访问,注册:https://login.arduino.cc/
登录,都不用多说了,很简单。免费版支持两个设备联网,如果更多的设备就得花钱了,真的设备多的话我觉得也不算很贵吧。
plans

添加 Device

  1. 点击 Devices ,添加器件(我认为这里翻译为器件更合适):
    devices

  2. +device 后会选择单板,因为我用的是 ESP8266,所以选了 third party device,我想应该很少人买 Arduino 出的板吧:
    setupdevice

  3. 选择板,虽然是自己画的板,也选了 NodeMCU,我感觉都差不多吧,毕竟模块都一样:
    selectdevice

  4. 给单板命名:
    devicename

  5. 把 key 和 ID 文件都下载下来保存:
    secretkey

  6. 器件这部分就设置完了:
    allset

  7. 可以点进去看下,因为我们还没下载代码,处于离线状态:
    device

autofeed

添加 Thing

  1. 返回主页,添加 Things,点击左边状态栏后添加设备:
    things

  2. 添加 Cloud Variables 变量,有很多种类型,基本上常见的传感器参数都支持:
    variabletype
    ① 名称很重要,程序里面变量名就是这个:
    addvariable
    ② 可以同步其他设备的设置;
    ③ 变量类型,比如轻触开关,选择 boolean,值为 true 或 false;
    ④ 读写权限;
    ⑤ 开关更新还是定期更新;

  3. 完成后可以继续添加其他变量:
    cloudvariables

    变量添加里面的同步选项,如果之前已经有相同功能的变量添加了,只需在这里点下同步就可以了:
    syncthing

  4. 变量和 device 关联起来:
    seldevice

  5. 选择前面添加的板:
    associatedevice

  6. 添加板后再设置网络:
    configdone

  7. 联网设置,把 WiFi 名称密码和前面生成的 device secret key 复制进去:
    confignet

  8. 可以修改一下 Thing 设备的名称,以便识别:
    rename

renamething

代码编辑和下载

  1. Thing 设置完先不要退出。点击 sketch,在这里可以编辑代码了:
    sketch

  2. 代码编辑完成后需要下载到板上,这里有两种方法。

  • 一种是直接通过 web 页面:
    board

可以看到目前还没安装驱动,点击下方 learn more 按钮,按提示下载安装软件。
Arduinocreateagent

安装后可以设置单板参数并直接连接到设备,我截图的这个电脑没有安装该软件:
flavours

  • 另一种方法是通过桌面客户端:
    登录云端账号,拉取云端的代码:
    cloudpull

这样就可以直接本地编辑,下载到单板了:
Code

和云端比,多了一个 arduino_secrets.h,主要是网络安全设置。本地写好的代码建议还是推到云端保存一下:
secret

我是使用本地客户端,云端是相对方便一些,但有时候会出一些莫名其妙的错误,本地更可靠一点。

添加 Dashboard

  1. 添加 Dashboard:
    dashboard

  2. 修改名称:
    dashboardrename

  3. 添加一个按钮:
    add
    addpush

  4. 链接按钮的变量:
    link

  5. 选择前面 things 添加的变量:
    linkvariable

  6. 完成:
    linkvariabledone

  7. 可以挪动图标位置:
    adddone

  8. 点击旁边的手机图标,显示的就是手机上的图标预览,可以拖动位置摆放:
    phonemove

  9. 完成后返回,可以看到新的 dashboard:
    dashboarddone

  10. 打开手机 app 可以看到:
    appdashboard

  11. 点击后可以看到按钮:
    appthing

结束

Arduino cloud IoT 的基本使用流程就是这样,从添加器件到在仪表盘控制设备。
如果需要其他功能还得自行研究,比如 Things 关联到 Smart Home integration,支持 Amazon Alexa or Google Home。Cloud Variables 也有很多,我看一般的需求都能满足,官方的帮助也很全面 https://docs.arduino.cc/arduino-cloud/guides/overview/