15814| 13
|
[高级教程] 物联网铲屎官神器 |
作者:来自晋江市的忽然老师 相信生活中有很多兢兢业业的铲屎官,在家伺候主子习惯了,一旦外出心里不免觉得比较担心,特别是处女座的铲屎官。虽然有网络摄像头,但不能时刻关心下主子的情况,吸吸猫也是个大大的遗憾。没关系,有了DF Robot 的OBLOQ-IOT模块,再结合micro:bit的硬件,就可以做出让主子们疯狂点赞的物联网铲屎官神器(以下简称物器)。 备注:如果对OBLOQ-IOT物联网模块比较陌生,强烈推荐参考下方基础教程 帖子,介绍非常棒: OBLOQ-IoT模块+Micro:bit玩物联网浇花 一、设计思路 首先,我们可以结合网络摄像头,看看猫在家的情况,再基于物联网模块控制物器去和猫互动,可以加入控制猫粮的机关、吸引猫兴趣的创意、会移动的逗猫模块等。实现效果可以看下面的小视频。 二、材料准备 1.Micro:bit(至少2个)和Micro:Mate多功能I/O扩展板 2.BitRobot小车(其实能用Micro:bit驱动的小车都可以,DF也有这样的小车,只是我身边暂时没有,这里特别感谢龙岩的李小华老师提供器材) 3.Gravity: UART OBLOQ - IoT物联网模块 4.TowerPro SG90舵机、DFRobot彩色LED灯带 5.纸盒等各种基础材料 三、撸起袖子,动手造物 这里我把物器分成2大部分,移动底座和上层功能部分,其实原设想要至少有3大部分,还有一个即时控制小车的Micro:bit模块,由于手边Micro:bit板只有2个,遂舍弃了这个部分,这里强烈建议土豪玩家至少用3块板,可玩性更高。 首先,我们来聊聊上层功能部分的设计,这里要实现的功能有:猫粮控制、环绕式LED灯、物联网功能模块、对移动底座的控制、环境监测。 这里我们先连接Micro:bit和Micro:Mate,放入纸盒中。 将物联网模块、舵机、LED灯带依次连接到Micro:Mate相应的接口上,将物联网模块与Micro:mate的串口连接,p2 tx连rx,p1 rx连tx(如下图),简单说,就是绿线连接P1,蓝线连接P2,红线黑线对应颜色连接即可。舵机连接到P8,LED灯带连接到P16。 用充电宝供电,Micro:mate供电开关切换到5v。 对纸盒做必要的改造,钻孔、固定、美化等,个人审美方面能力有限,接受大家吐槽。 有了基础外观,接下来就是编写程序了,首先登陆DFRobot EASY-IoT物联网平台 https://iot.dfrobot.com.cn/,进行必要的基础设置(注册与登陆步骤略,见上方教程链接),然后进入Micro:bit编程平台https://makecode.microbit.org,也可以使用离线版编辑器(https://pan.baidu.com/s/1oNf1lxmW281hlwWnBgdXTw),点击高级---添加软件包---输入网址https://github.com/DFRobot/pxt-Obloq,添加OBLOQ软件包,完成后就可以进行基础设置了。将刚才记录下来的信息,和家里Wi-Fi信息输入积木块,把无线设置组设为固定数值,并记住,等下还会用到。在初始化程序最后要发送一个信息,说明物联网功能正常启用,这里我发送了字符“OK”。 当物联网模块接收到消息,我们就可以对字符串进行判断,如果是特定的内容,就对应执行各种功能。当我们通过网络摄像头,发现猫主子饿了,我们就可以通过手机或电脑,登陆https://iot.dfrobot.com.cn发送命令kai,让舵机将盖子打开一定角度,露出里面的猫粮。同样的,怕猫主子吃太多,就可以发送guan,将舵机角度设置为0,关闭盖子。 同样的,如果要控制逗猫用的LED灯带,也可以通过物联网平台发送liang、mie等命令。 针对等下要用到的移动底座,我们也可以先设计等下要用到的指令,当接收到特定的信息时,发送信息给移动底座上的Micro:bit,这里我用q表示前进,接收到q就无线发送数字1给移动底座,底座接收到1,就向前移动。其他的功能是一样的,就看我们如何定义这些功能,比如像物器转几圈,就像跳个舞,就可以设置zq命令,用于执行特定动作。 Micro:bit本身就有不少好用的传感器,可不能浪费了,天气冷了热了猫主子都会不高兴,怪罪下来怎么办?所以必须严格检测家里温度情况,冷了热了赶紧发信息给物联网平台,否则报个平安。这里原本要设置小车跌落等情况的警报,后来想想,不是有网络摄像头嘛,应该不需要。 接下来就是小车部分的程序编写。 为了便于支撑纸盒,我将向学生借来的3D打印外壳放在底座BitRobot小车上,再用特殊的双面胶(感谢某陈老师)将纸盒固定到小车上。 由于使用的是BitRobot小车,这里得进入http://www.makeredu.net进行编程,首先是初始化,要注意无线设置组要和刚才的数值保持一致。 小车在暗无天日的纸盒下,比较迷茫,需要我们去发送指定信息。当小车接收刚才设定的指令时,就会执行对应的功能。比如,接收到1,马达就同时前进,接收到2,就执行左转功能。这里我为了省事设置为发送数字,如果要更清楚,完成可以发送字符,更便于程序编写。 至此,物联网铲屎官神器全部完成,但应该说这个作品是个基础版,还可以扩展出各种强大的功能,比如高级灯光系统、避障系统、音效系统等完全可以加入到里面,不得不感叹,物联网模块这个神器好用得太离谱了。作品分享就到这里,期待大家接住这块“砖”,做出更多脑洞大开的作品,将分享延续下去。 |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed