IOT(物联网)使用¶
KOI除了能实现人工智能功能,还自带WIFI芯片,可实现物联网功能。本节我们学习IOT如何使用。我们先从本地IOT进行入门,再学习喵家的云端IOT服务器。
Makecode程序与Kittenblock程序交互原理¶
图解原理:
kittenblock接收-KOI发送¶
Kittenblock中程序——话题接收¶
首先利用Kittenblock建立本地服务器,且把Kittenblock作为设备(设备名为robot01)加入本地服务器中,如图所示。
当点击连接MQTT服务后,回到IOT本地服务器页面,可以看见,robot01的设备已上线
在Kittenblock中编写完整的IOT程序,程序分为三部分:
连接服务器和订阅话题
检测订阅话题的内容,并做判断动作
话题内容推送(用于自发自收进行测试)
话题广播发与收测试:
当鼠标按下右侧的话题广播,向话题/hello 分别发送内容1或者0。同时当检测到话题/hello有更新,舞台小猫对应做出反应。
如果你这个测试流程已经通过后。现在我们只需要把鼠标点击话题广播这部分,交给KOI进行实现,就能实现物联网的最小实验。
KOI对应的Makecode程序——话题推送¶
KOI中有关IOT的积木块:
编写如下程序
注意
加入局域网的两个内容,分别为你的wifi名称和密码,wifi名称 不能为中文、不能带空格
注意
连接服务器需要保证你的地址与在Kittenblock建立是一致的(此服务器地址即在Kittenblock本地建立的服务器地址),节点ID可自定为任意名称
注意
推送话题内容需要注意,话题需要与服务器建立的一致,否则向错误的话题推送,导致话题检测无反应。
程序运行流程¶
把程序下载到Microbit上,Microbit点阵会显示”笑脸“,且有蜂鸣器短曲发出。等待一会,KOI屏幕会出现一行IP地址,此时表明已经加入到路由器网络中。
1、当按下Microbit的按键A,让KOI连接Kittenblock建立的本地IOT服务器。
2、当按下Microbit的按键B,对话题/hello,进行推送内容为1,当再按下B后,推送内容为0。
3、此时Kittenblock接收到话题/hello,内容有变化时,舞台小猫会说出不同的内容。
kittenblock发送-KOI接收¶
Kittenblock中程序——话题推送¶
同样需要建立本地服务器,再编写以下的程序。
KOI对应的Makecode程序——话题接收¶
这里用了OLED进行显示接收到的话题内容
程序运行流程¶
把程序下载到Microbit上,Microbit点阵会显示”对号“,且有蜂鸣器短曲发出。等待一会,KOI屏幕会出现一行IP地址,此时表明已经加入到路由器网络中。
分别按下电脑键盘的上下左右几个方向键,可见OLED上显示的数值发生变化(注意由于WIFI响应会需要一点时间,所以别按得那么快)
常用问题和解答¶
1、为什么我打开电源,下载程序没有反应?
答:KOI鲤鱼魔块初始化启动是需要时间,明显比Microbit慢。Microbit的初始化程序已经跑完了,KOI还没初始化。因此按按键A没有反应
解决办法:打开电源后,等待KOI屏幕启动完毕后。再重新按下Microbit背后的Reset按键,让Microbit重新开始运行(秘诀即让KOI魔块先运行起来,再让Microbit进行运行)