4.1 功能及总体设计

本项目通过Arduino开发板连接的ESP8266模块轮询确认用户请求,通过微信小程序与服务器交互,控制空调的信息发送。

要实现上述功能需将作品分成五部分进行设计,即Arduino开发板模块、ESP8266模块、红外线通信(空调控制)模块、服务器功能实现模块和微信小程序远程控制模块。Arduino开发板负责接收控制命令,发送控制空调的红外信号;ESP8266负责实现WiFi通信功能;服务器作为中介,一方面接收Arduino开发板的轮询,另一方面接收微信小程序对空调状态的修改;微信小程序作为与人交互的界面,可以方便地远程控制空调。

1. 整体框架图

整体框架如图4-1所示。

图4-1 整体框架图

2. 系统流程图

系统流程如图4-2所示,服务器流程如图4-3所示,微信小程序流程如图4-4所示。

图4-2 系统流程图

图4-3 服务器流程图

图4-4 微信小程序流程图

系统流程如图4-2所示,串口初始化后,连接WiFi登录校园网并向服务器发送数据请求,对比原始数据是否发生改变,如果改变则启动红外线发送信息,否则等待轮询,进行下一次工作。服务器流程如图4-3所示,微信小程序通过443端口启动数据发送,通过自己的服务器将数据转发给云平台服务器,云平台服务器通过80端口将数据传送给ESP8266。微信小程序流程如图4-4所示,判断温度是否高于设定温度,然后修改微信小程序界面的数据,微信小程序将数据打包后发送给自己的服务器。

3. 总电路图

总电路如图4-5所示,引脚连接如表4-1所示。

图4-5 总电路图

表4-1 引脚连接表