一.准备工作
1.1硬件
Arduino Mega2560*1
ESP8266-01*1
ESP8266-01模块的工作模式,固件烧录等都太麻烦。我们直接使用默认的固件和配置,使用透传(透明传输)来发送数据。
ESP8266-01的CH-PD,GPIO0,VCC三个引脚连接Arduino的3.3V;GND引脚连接Arduino的GND;UTXD,URXD分别连接Arduino mega2560的RX3,TX3(也就是数字口15,14)。
1.2软件
Arduino从OneNET平台请求数据和发送数据给OneNET平台类似,都是发送特定json格式数据,所以同样需要使用上一篇中提到的三个库。接收数据与发送数据的不同点在于,接收数据需要对OneNET平台返回的数据进行解析,提取出我们需要的值。
1.3平台
我们的远程控制也就是通过WiFi控制执行类元器件,比如远程开灯关灯。如下图所示,用户通过应用发送控制指令到OneNET服务器,Arduino则是每隔一段时间询问一次服务器有没有新指令,如果有新指令,服务器会把指令发送给Arduino板,这个时候Arduino板根据指令控制执行元件执行对应操作。