)
前瞻组合,契合课标
云雀虽小,五脏俱全
操作简便,效果惊艳
-
离线工作方式简介
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
-
在线工作方式详解
-
1. 线路连接
-
2. 升级行空板SIoT服务器
-
3. 程序设计
# -*- coding: UTF-8 -*-# MindPlus# Pythonfrom DFRobot_Atmospherlum import *from pinpong.board import Boardfrom unihiker import GUIimport datetimeimport timeimport siot# 自定义函数def XiaoShiFengLiZuiDaZhi():global FengLiJiShiglobal FengLiMAXif (FengLiJiShi == (int(float(datetime.datetime.now().hour)))):if (FengLiMAX < (int(float((yunque_i2c.get_value("speed")))))):FengLiMAX = (int(float((yunque_i2c.get_value("speed")))))else:FengLiMAX = (int(float((yunque_i2c.get_value("speed")))))FengLiJiShi = (int(float(datetime.datetime.now().hour)))siot.init(client_id="",server="10.1.2.3",port=1883,user="siot",password="dfrobot")Board().begin()u_gui=GUI()siot.connect()siot.loop()yunque_i2c = DFRobot_Atmospherlum_I2C(0x42)while (yunque_i2c.begin() != 0):print("yunque_i2c initialize failed!!")time.sleep(1)print("Sensor initialize success!!")yunque_i2c.set_local_time()time.sleep(1)FengXiang = {"E":"东","S":"南","W":"西","N":"北","NE":"东北","SE":"东南","SW":"西南","NW":"西北"}FengLiJiShi = (int(float(datetime.datetime.now().hour)))FengLiMAX = (int(float((yunque_i2c.get_value("speed")))))UI=u_gui.draw_image(image="UI1.png",x=0,y=0)u_gui.draw_text(text="温度:",x=28,y=20,font_size=20, color="#000000")u_gui.draw_text(text="湿度:",x=28,y=60,font_size=20, color="#000000")u_gui.draw_text(text="风向:",x=28,y=100,font_size=20, color="#000000")u_gui.draw_text(text="风力:",x=28,y=140,font_size=20, color="#000000")u_gui.draw_text(text="气压:",x=28,y=180,font_size=20, color="#000000")TEMP=u_gui.draw_digit(text=(yunque_i2c.get_value("Temp")),x=110,y=30,font_size=20, color="#000000")Humi=u_gui.draw_digit(text=(yunque_i2c.get_value("Humi")),x=110,y=70,font_size=20, color="#000000")Direction=u_gui.draw_text(text=(yunque_i2c.get_value("dir")),x=110,y=100,font_size=20, color="#000000")Speed=u_gui.draw_digit(text=(yunque_i2c.get_value("speed")),x=110,y=150,font_size=20, color="#000000")Pressure=u_gui.draw_digit(text=(yunque_i2c.get_value("Pressure")),x=110,y=190,font_size=20, color="#000000")while True:XiaoShiFengLiZuiDaZhi()TEMP.config(text=(yunque_i2c.get_value("Temp")))siot.publish_save(topic="siot/温度", data=(yunque_i2c.get_value("Temp")))Humi.config(text=(yunque_i2c.get_value("Humi")))siot.publish_save(topic="siot/湿度", data=(yunque_i2c.get_value("Humi")))Direction.config(text=(FengXiang[(yunque_i2c.get_value("dir"))]))siot.publish_save(topic="siot/风向", data=(FengXiang[(yunque_i2c.get_value("dir"))]))Speed.config(text=FengLiMAX)siot.publish_save(topic="siot/风力", data=(yunque_i2c.get_value("speed")))siot.publish_save(topic="siot/小时风力最大值", data=FengLiMAX)Pressure.config(text=(yunque_i2c.get_value("Pressure")))siot.publish_save(topic="siot/气压", data=(yunque_i2c.get_value("Pressure")))time.sleep(10)
-
4. 定制数据面板
-
5. 测试与部署
项目小结
往期推荐

