IoT应用最简单的构成是设备终端与服务器端,关于设备终端,本文采用了自带WiFi功能的ESP8266,这是一块极具性价比的物联网芯片,在万能的淘宝上仅需要10+便能够买到,具有良好的应用生态,乐鑫官方给出了相关的开发SDK,也支持Arduino编辑器与Alios,这里出于熟悉的缘故采用了MicroPython做为开发的基础,在服务器的选择上,由于本文是Demo开发,选择了Python的Flask这是一个轻量化的应用服务器,他可以帮助你非常方便的构建你的服务器程序,在后期的升级中可以考虑尝试采用Java的Spring MVC去构建,但是在这里作为一个简易的示范,实际上能够对Http请求做出一个解析就可以了,所以采用Flask
服务器端代码
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World'
if __name__ == '__main__':
app.run(host = "0.0.0.0")
终端代码
import esp
import machine
import time
import urequests
import ujson
def run():
adc = machine.ADC(0)
while True:
# print(adc.read())
data = ujson.dumps({"adc":adc.read()})
req = urequests.post("http://192.168.0.101:5000", data = data)
time.sleep(1)