麦昆机器人试用(三)

2019-04-117162
AI 快速预览详细 收起
本文介绍了如何使用App Inventor和obloq模块实现手机与麦昆机器人通过IoT平台通信。首先,在麦昆端使用Mind+进行编程,设置obloq mqtt参数,并编写控制逻辑。接着,在手机端使用App Inventor设计界面和逻辑,实现对麦昆的控制。整个过程流畅稳定,适合STEM教育场景,帮助孩子掌握编程技能。


麦昆机器人试用(一):麦昆行走、避障及板载RGB、LED灯测试

麦昆机器人试用(二)手机与麦昆通过BLE连接,控制麦昆板载RGB和LED灯

麦昆机器人试用(三):手机和麦昆通过IoT平台通信,并控制麦昆行走,获取麦昆传感器数据

衷心感谢DFBJKmr6VoQ的帖子,解决了通信的大问题。本来准备硬编,一来界面会难看很多,二来编程也复杂很多。DFBJKmr6VoQ给我们介绍了App Inventor的mqtt插件,真乃神器利器!

本次测试使用了DFROBOT的obloq模块,手机和麦昆通过wifi方式连接到IoT平台,手机向IoT平台发送指令,麦昆获取指令后产生动作。下面是演示视频:


1.麦昆端使用Mind+编程

  • 初始化时,对obloq mqtt进行初始化设置:

wifi名称:所在位置wifi的名称
wifi密码:wifi的密码
IoT参数设置,需要设置Iot_id,IoT_pwd和Topic_0,进入https://iot.dfrobot.com.cn/workshop.html来查看并填写到设置中。
引脚收(绿线)接P1,发(蓝线)接P2。
麦昆机器人试用(三)图1

麦昆机器人试用(三)图2

  • 从obloq获取信息后,操控麦昆进行动作:
F:前进,B:后退,S:停止,L:左转,R:右转,T:传送温度值,A:传送环境光值

麦昆机器人试用(三)图3

2.手机端编程

  • 手机app界面:

包括控制小车行走的按钮:前进、后退、停止、左转、右转,包括连接按钮及获取温度和环境光的按钮。屏幕最上方是标签,用于显示当前操控命令、向麦昆发送的命令及返回的值。
麦昆机器人试用(三)图4

  • App Inventor组件设计窗口:

使用布局将按钮和标签进行排列,还需要一个扩展组件:MqttTCP用于与IoT平台进行通讯,还需要一个计时器组件,用于向用户提示连接信息,计时器的时间间隔是2秒。
麦昆机器人试用(三)图5


  • App Inventor逻辑设计:

点击连接按钮时,连接到IoT,标签显示提示信息,同时启用计时器,目的是为了向用户反馈连接状态,提高用户体验性
麦昆机器人试用(三)图7

2秒后,计时器启用,判断连接是否成功,并显示相应的提示信息,然后禁用计时器
麦昆机器人试用(三)图8

接下来对各个操控按钮进行编程,这些按钮所触发的动作完全一样,只是要传递的参数不同,显示的提示也不同,因此我们使用带参数的过程send,这样可以提高编程效率,易于调试程序。参数一个是command,用于传递命令,一个是notice,用于传递通知向用户显示。
麦昆机器人试用(三)图9

控制小车行走的按钮,只需要调用过程send,并传递相应的命令和提示信息即可
麦昆机器人试用(三)图6

获取温度和环境光值的代码非常类似。使用过程我们可以非常方便的对命令进行扩充,只需要添加相应的按钮再调用过程就可以了。
麦昆机器人试用(三)图10

数据发送到IoT后,麦昆通过obloq读取信息并进行操作,如果是温度和环境光的请求,会发送相应的数据到IoT平台,手机收到消息后在右上方显示返回值。
麦昆机器人试用(三)图11

3.反馈


整个数据的收发相当的流畅稳定,小车操控很方便。需要注意的是操控不要太快,以免造成数据传送的丢失。

4.扩展(待续)

可以添加更多的传感器
可以使用语音唤醒、语音识别,通过语音操控麦昆
可以添加灯光、音效等效果

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(2)
王尧坤
王尧坤
太厉害了,学习了
rzyzzxw
rzyzzxw
老师,技术高又高效。佩服啊。特棒。
szjuliet
szjuliet
作者
回复rzyzzxw
评论内容
- 没有更多了 -