20983浏览
查看: 20983|回复: 0

[入门教程] 基于行空板和SIOT的物联网项目案例 | 智慧游乐场

[复制链接]
本帖最后由 怀若谷 于 2024-9-1 20:12 编辑



演示视频 ↑




    在中小学创客教育中,物联网技术的应用是一项基本技能。在教学时,找到一个简单易用且免费的物联网平台是教学能够顺利开展的保证。在这几年的教学实践中,我使用过EasyIoTBlynk等平台,它们有各自的优点,有着不同的使用场景,但也存在着一些不足和不便之处。这两年,我用得较多的是SIOT,特别是DFRobot公司推出行空板后,里面集成了SIOT平台,使用起来非常方便。行空板加SIOT的组合方案成为了我在教学与作品创作中使用最多的方案。

    这个方案的主要优点有:(1)无需连接互联网,主控板之间通过热点组网,既方便又稳定;(2)演示时可以不依赖计算机或智能设备(手机或平板电脑),因为行空板自身就是一个带有2.8英寸屏幕的计算机;(3)可以自行设计控制面板,增加作品的交互性、美观度和完整度。

    下面以“智慧游乐场”作品为例,分享一下我的做法。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图3

1
0. 设计思路

         以行空板和掌控板为主控板,其中行空板开启热点供掌控板连接进行无线通讯,使用行空板内置的SIOT软件为物联网平台,同时行空板也将作为远程监控端设备;掌控板作为游乐场本地设备控制端,与SIOT服务器进行信息交互并根据指令控制TT马达、灯带等器件工作。

1. 准备工作

1.1 硬件材料

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图2
2
行空板                             1块
掌控板                             1块
掌控板扩展板                   1块
◆ TT马达(焊接好导线)         1个
◆ DHT11温湿度传感器       1个
◆ 数字按钮                         2个
◆ WS2812灯带                  1条
◆ 锂电池及底座(可选)    1套
◆ USB数据线(两用)        1条

1.2所需软件

1.2.1编程软件

         Mind+  V1.8.0 RC3.1  下载地址:  https://mindplus.cc/
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图1

3

         本项目有两块主控板,需要编写两个程序。在Mind+Python模式下给行空板编写程序,在上传模式下给掌控板编写程序。

1.2.2 建模软件

    本项目使用了LaserMaker软件绘制结构及造型图纸,亦可使用其他建模软件。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图4

4        
1.2.3 绘图软件

       WPS Office或者其他绘图软件。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图5

5

       本项目需要给行空板绘制一张背景图片,我采用了先制作PPT文档再将其导出为图片文件的方法,简单便捷,适合中小学使用。

1.2.4 图片处理

       光影魔术手等软件,能够实现改变图片的大小即可。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图6

6
1.3 查看行空板信息

    将行空板通过USB数据线连接电脑或者其他电源,行空板自动启动。根据提示,长按HOME键进入菜单。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图7

7

1.3.1 查看网络信息

    在菜单中选择并点击4-查看网络信息”,记录下USB网口和无线热点的IP地址待用。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图8

8

1.3.2 查看热点名称及密码

    在菜单中选择并点击5-开关无线热点模式”,然后点击“无线热点:已禁用”,则会变为“无线热点:已启用”,记录下方的“SSID”和“PASS”信息待用。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图9
9

2. SIOT配置

2.1 主题(topic)规划

    根据作品要实现的功能,拟设置4个不同的主题用于信息交互,主题名称及功能、数据格式等说明见下表。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图59
1
2.2 登入SIOT系统

1. 将行空板通过USB数据线连接到电脑。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图10

10

2. 打开网络浏览器。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图11

11

3. 在地址栏输入行空板的USB网口IP地址(1.3.1部分已记录)。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图12

12

4. 点击“应用开关”,在“SIOT”版块中选择“启动服务”(如已启动可跳过)。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图13

13

5. “打开页面”按钮,进入登录界面。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图14

14

6. 输入用户名(siot)和密码(dfrobot),即可进入系统。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图15

15
2.3 新建主题

    根据前面的规划,依次新建4个主题。主题名称必填,主题描述可不填。主题创建好后,系统会自动在前面加上“siot/”字符,使用时需要全部填写方有效。如主题“led”,在后面的使用中必须写为“siot/led”。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图16

16

3. 硬件搭建

3.1 远程监控端(行空板)

  行空板本身自带了通讯模块和显示模块,又支持触控输入,所以无需连接外设。只需要连接USB数据线用于供电和传输程序文件即可。

3.2 本地设备端(掌控板)

       将掌控板插入扩展板卡槽中。

       将其他电子元件连接到扩展板的引脚上,在本作品中连接方法如下表所示。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图60
2
    硬件连接实物图如下图所示。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图19

17



4. 程序设计

4.1 行空板端程序

4.1.1 背景图制作

1. 使用WPS OFFICE软件的演示文档模块,制作一张比例为43(纵向)的背景图,内容包括作品名称和与需要加入的功能模块有关的图文信息等。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图17
18

2. 将该文件另存为png”格式的文件,即可得到一张图片文件。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图18

19

3.将图片通过光影魔术手软件进行大小调整,调整为240*320后保存,即可得到需要的背景图。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图20
20

4.1.2 摩天轮控制按钮制作

1. 继续在一张空白演示文档中绘制两个图标,代表摩天轮的运行和停止。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图21

21

2. 分别选中图标,单击鼠标右键,在弹出的菜单中选择“另存为图片......”,将图标存为两个PNG格式的图片文件待用。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图22

22

4.1.2编程准备

1. 打开Mind+软件,切换到“Python模式”。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图23

23

2. 打开远程控制,连接行空板(10.1.2.3)。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图24

24

3. 展开“文件系统”窗口,把背景图和按钮图传到行空板中。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图25

25

4.1.3 编写程序

(一)初始化部分

   1.连接SIOT服务器,订阅相关主题。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图26

26

2.设置背景图来源及显示坐标。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图27

27

3.设置温湿度数据显示坐标及文本参数。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图28

28

4. 设置摩天轮控制按钮显示坐标及回调函数;设置状态信息显示坐标及文本参数;建立一个变量a”记录摩天轮运行状态,初始值为“2”,代表“停止”。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图29
29

5. 绘制4个圆角矩形按钮作为灯光控制按钮,设置对应的回调函数;设置灯光状态信息显示坐标及文本参数。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图30

30

(二)循环执行部分

        因程序执行主要以接收信息和按钮触发方式进行,循环执行部分为空。(此部分程序需连接到初始化部分下方)
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图31

31


(三)温湿度数据显示部分

         当接收到SIOT服务器发送来的信息后,先对主题进行判断。如果主题是所订阅的“siot/temp”,则将该信息显示到预设的温度数据位置。如果主题是所订阅的“siot/humi”,则将该信息显示到预设的湿度数据位置。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图32

32

(四)摩天轮控制部分

    当控制按钮被点击后,先读取点击前状态,然后切换到相反的状态,发出对应的指令到SIOT服务器的“siot/mtl”主题下,同时改变变量“a”的值,以保持与当前状态一致。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图33

33


    当接收到SIOT服务器发送来的信息后,如果收到的信息是“start”,则将按钮图片和状态信息文字更新为“运行”所对应的图片和文字。如果收到的信息是“stop”,则将按钮图片和状态信息文字更新为“停止”所对应的图片和文字。(此部分程序需连接到温湿度数据显示部分下方)

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图34
34

灯光控制部分

    当4个控制按钮被点击后,将分别发出对应的指令到SIOT服务器的“siot/led”主题下。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图35

35

    当接收到SIOT服务器发送来的信息后,如果收到的信息是“r”,则灯光状态信息文字更新为“红色”;如果收到的信息是“y”,则灯光状态信息文字更新为“黄色”;如果收到的信息是“b”,则灯光状态信息文字更新为“蓝色”;如果收到的信息是“off”,则灯光状态信息文字更新为“关闭”。(此部分程序需连接到摩天轮控制部分下方)
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图36

36

(五)行空板端完整程序

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图38

37
4.2 掌控板端程序

(一)初始化部分

1.连接行空板热点(见1.3.2部分的记录)。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图37

38

2.连接SIOT服务器,订阅相关主题。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图39

39

3.初始化灯带。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图40

40

4.设置两个变量“a”和“b”。变量a用于记录摩天轮运行状态,初始值设为“2”,表示停止;变量b用于记录灯光状态,初始值设为“4”,表示关闭。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图41
41

(二)循环执行部分

    该部分主要负责温湿度数据采集、显示及上传。温度数据传送到SIOT服务器的“siot/temp”主题下,即本程序中定义的Topic_0;湿度数据传送到SIOT服务器的“siot/humi”主题下,即本程序中定义的Topic_1;采集频率为5/次,可根据需要调整。(此部分程序需连接到初始化部分下方)

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图42
42

(三)摩天轮控制部分
    当连接到P2引脚的数字按钮被触发后,先读取按下前状态,然后切换到相反的状态,发出对应的指令到SIOT服务器的“siot/mtl”主题(Topic_2)下,同时改变变量“a”的值,以保持与当前状态一致。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图43


43

    当接收到SIOT服务器发送来的信息后,如果收到的信息是“start”,则使TT马达以一定的速度正转(或反转)。如果收到的信息是“stop”,则使TT马达停止。

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图44
44

灯光控制部分

    当连接到P8引脚的数字按钮被触发后,将根据按下次数来确定灯光状态,4次为一个循环,即红色、黄色、蓝色、关闭,每按一次都会发出对应的指令到SIOT服务器的“siot/led”主题(Topic_3)下。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图45

45


    当接收到SIOT服务器发送来的信息后,如果收到的信息是“r”,则使连接到P1引脚的灯带显示红色;如果收到的信息是“y”,则使灯带显示黄色;如果收到的信息是“b”,则使灯带显示蓝色;如果收到的信息是“off”,则使灯带熄灭。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图46

46

(五)掌控板端完整程序

基于行空板和SIOT的物联网项目案例 | 智慧游乐场图47


47

5. 结构设计

5.1 激光建模

1. 绘制底盒,用于支撑作品的各个部件和隐藏线路。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图48

48

2. 绘制淘气堡模型,兼做主控板放置处。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图49

49

3. 绘制摩天轮模型。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图50

50

4. 绘制名称牌(使用亚克力材料)。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图51

51
5. 绘制行空板支架。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图52
52

5.2 切割加工

      使用激光切割机进行加工,确保材料和工艺使用正确。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图53

53


6. 组装调试

1. 组装底盒(顶板不装),固定灯带和电池模组。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图55

54

2. 将其他电子件与木板件组装固定。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图54

55


3. 合上顶板,组装其他木件。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图56

56


4. 组装行空板支架。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图58

57


5. 通电测试。
基于行空板和SIOT的物联网项目案例 | 智慧游乐场图57
58





您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail