一、基本信息
作品名称:远程指令控制
作者姓名:季晨悦、朱纯艳、黄斯文
作者单位:飞鼠科技
教材名称:《掌控板和物联网编程入门》
教材类型:自编教材
教材简介:这是在谢作如老师指导下,为普及掌控板应用而设计的创客教程。课程的逻辑结构分为神奇屏幕、趣味媒体、智能物联、实战开发四个单元,共18课,综合了编程、造物、物联网等常用技术情境,轻松学习python编程。
执教年级:初中
课时长度:2课时
涉及器材:掌控板
涉及软件:mPython
文件清单:教学设计、配套代码
二、作品内容
手机和电脑等电子产品可以帮助我们实现感官和能力延长,比如出门在外可以通过手机控制职能家居。我们也可以用电脑远程控制掌控板,命令掌控板执行播放音乐、屏幕显示、开关LED灯等操作。
一、项目描述
上一项目通过MQTT协议用掌控板进行数据采集,从掌控板发送数据到PC端,这节课我们学习远程控制掌控板的多种方式:
1.通过EasyIOT订阅消息,远程指令控制开灯和关灯;
2.用掌控板发送消息并控制另一块掌控板。
二、项目指导
1.MQTT接收消息
连接MQTT(连接方式)后,重复执行“等待主题消息”指令,令掌控板持续处于等待主题消息非阻塞模式。
使用“当从主题接收到msg时执行”指令,等待easyIOT端发送消息并依据内容执行控制。
完成mPython代码后,从easyIOT工作间点击发送消息,实现对掌控板的远程控制。
2.超链接发送指令,使用SIOT服务器发送on 或off 命令
SIoT是一个开源MQTT服务器程序,可一键创建本地物联网服务器,下载地址
https://mindplus.dfrobot.com.cn/siot。
根据自己电脑的系统,对应下载SIoT软件压缩包,解压并打开,屏幕会弹出一个黑色的CMD窗口,使用过程中不要关闭。
打开浏览器,输入http://127.0.0.1:8080,输入账号密码登录,默认账号siot,密码dfrobot。
打开mPython编写程序,设置SIOT参数。
连接MQTT,设置等待主题消息为非阻塞模式,使用“发布至主题”指令发布“on”或“off”命令,以控制掌控板开灯或关灯。
通过“当从主题接收到msg时执行”指令接收远程命令并相应开灯或关灯。
三、项目实施
活动1:通过EasyIOT发送指令远程指令控制开灯和关灯
1.活动过程
1)连接WiFi
WiFi名称:___________;
WiFi密码:___________;
2)确定MQTT参数
服务器:使用默认
Client ID:自定
lot_id:___________;
lot_pwd:___________;
3)设置等待主题消息模式为非阻塞模式。
3)确认发送指令和掌控板LED灯对应变化
发送指令___________掌控板LED灯___________;
发送指令___________掌控板LED灯___________;
4)编写代码并测试效果。
2.参考程序和效果截图
参考程序:
效果截图:
活动2:用掌控板发送消息并控制另一块掌控板
1.指令讲解
1)打开SIoT软件,浏览器访问http://127.0.0.1:8080/登录SIoT,默认账号siot,密码dfrobot;
2)mPython连接WiFi
WiFi名称:___________;
WiFi密码:___________;
3)确定SIOT参数
服务器:本机Ipv4地址
Client ID:自定
lot_id:___________(默认账号siot);
lot_pwd:___________(默认密码dfrobot);
3)设置等待主题消息模式为非阻塞模式。
4)确定掌控板发送操作、指令和主题
当按下(触摸)___________键时,发送消息___________至主题___________;
当按下(触摸)___________键时,发送消息___________至主题___________;
当按下(触摸)___________键时,发送消息___________至主题___________;
……
5)确定接收主题消息和掌控板对应操作
当从主题___________接收到消息___________时,掌控板___________;
当从主题___________接收到消息___________时,掌控板___________;
当从主题___________接收到消息___________时,掌控板___________;
……
6)编写代码并将代码刷入掌控板a;
7)连接掌控板b,测试代码。
2.参考程序和效果截图
参考程序:
效果截图:
3.可能遇到的问题
如果http://127.0.0.1:8080/网址打开失败,请确认SIoT软件是否打开。
如果MQTT连接失败,请检查确认以下几方面:①掌控板和SIoT软件是否处于同一网络;②服务器地址是否为本机C类Ipv4地址;③SIoT账号密码是否正确。
如果掌控板无法接收到发送指令消息,请检查发送和接收主题是否一致。
【思考】同样是实现板间互联,本项目与第三单元第一课中使用无线广播的方法有什么异同点?
四、项目交流
本项目介绍了远程控制掌控板的方法,给同学们留下了很多自由发挥的空间,请按照这样的方式介绍你的项目:
1.基本功能:
_____________________________________________________________________
2.项目创新点:
_____________________________________________________________________
3.项目过程中遇到的问题:
_____________________________________________________________________
4.需要继续努力的方向:
_____________________________________________________________________
点赞