玩转Mind+数据可视化-空间站数字大屏系统
2023-05-30380
精华项目
AI 快速预览详细
本文介绍了如何使用Mind+数据可视化面板实现空间站数字大屏系统。所需硬件包括SCI采集模块、云雀气象仪等。通过Mind+1.8.0和SIoT V2,用户可以轻松设置界面并发布数据。这个项目非常适合中小学物联网教学,能够帮助学生直观地展示和监控数据。
步骤1 前言
之前做了一个项目【Mind+ Python】基于Pyecharts + Flask + Pinpong 智能家居数字大屏系统,所用的知识对于新手老师来说不是很友好!去年9月份蘑菇云科创教育就面发布向中小学物联网教学解决方案,推出了三款不同方面科学探究实验软硬件工具,它们分别是:SCI采集模块、云雀气象仪、Mind+物联网可视化面板。如今大半年过去了,Mind+的物联网可视化面板终于可以用上了(真香警告⚠)。
笔者之前用过Onenet view2.0平台(组件较少,开发难度对新手不太友好),

和Onenet view3.0平台(组件丰富,门口较高,数据解析太麻烦,重点需要钞能力?)

现在mind+数据可视化面包的开放,让我们做数据可视化平台如鱼得水,如虎添翼。那么这次就用它来做一个【空间站数字大屏系统】
步骤2 准备阶段
请各位老师确保自己的系统环境是否正确:
1: Mind+1.8.0版本+
2:SIoT V2版本+
【下载链接】:
注:测试版本
阿里云盘下载:
链接:https://www.aliyundrive.com/s/KbWMbbEX8Jf
提取码: n5n9百度云盘下载:
链接:
https://pan.baidu.com/s/11i3E0RxUL_tGUzys_b3U6w?pwd=mind
提取码:mind
具体的按照步骤及相关组件的学习这里我就补一一赘述,感兴趣的老师可以看一下【Mind+数据可视化面板说明文档】
步骤3 界面设置

代码
# -*- coding: UTF-8 -*-
# MindPlus
# Python
import time
import siot
import random
# 事件回调函数
def on_message_callback(client, userdata, msg):
print(msg.payload.decode())
if (msg.payload.decode() == "1"):
siot.publish_save(topic="siot/btmsg", data="1号门已打开")
if (msg.payload.decode() == "2"):
siot.publish_save(topic="siot/btmsg", data="1号门已关闭")
if (msg.payload.decode() == "3"):
siot.publish_save(topic="siot/btmsg", data="2号门已打开")
if (msg.payload.decode() == "4"):
siot.publish_save(topic="siot/btmsg", data="2号门已关闭")
if (msg.payload.decode() == "5"):
siot.publish_save(topic="siot/btmsg", data="3号门已打开")
if (msg.payload.decode() == "6"):
siot.publish_save(topic="siot/btmsg", data="3号门已关闭")
if (msg.payload.decode() == "7"):
siot.publish_save(topic="siot/btmsg", data="4号门已打开")
if (msg.payload.decode() == "8"):
siot.publish_save(topic="siot/btmsg", data="4号门已关闭")
siot.init(client_id="08743463905540527",server="192.168.83.1",port=1883,user="siot",password="dfrobot")
siot.set_callback(on_message_callback)
siot.connect()
siot.loop()
siot.getsubscribe(topic="siot/btstate")
while True:
temp = round(random.uniform(30,40),2)
humi = round(random.uniform(50,60),2)
battery = round(random.uniform(80,82),2)
light = round(random.uniform(90,100),2)
speed = round(random.uniform(500,600),2)
value = str(humi)+","+str(battery) +"," +str(temp)
siot.publish_save(topic="siot/value", data=value)
siot.publish_save(topic="siot/temp", data=temp)
siot.publish_save(topic="siot/humi", data=humi)
siot.publish_save(topic="siot/speed", data=speed)
siot.publish_save(topic="siot/battery", data=battery)
siot.publish_save(topic="siot/light", data=light)
siot.publish(topic="siot/pg", data=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))
time.sleep(1)
附件



