设为首页收藏labplus社区产品资料库
10
积分值+2
5
掌控币+1
0  关注
0  粉丝
1  帖子
2021年09月30日

#第二届掌控板教学应用设计大赛#垃圾分类训练机

【视 频】


【制作背景】

       作为人类唯一的家园,地球承载着我们的一切,我们在生产、生活中产生的大量垃圾,正在严重侵蚀我们的生存环境,为了不让地球超负荷工作,我们的维护任务刻不容缓,通过垃圾分类来提高垃圾的资源价值和经济价值,力争物尽其用,减少垃圾处理量和处理设备的使用,降低处理成本,减少土地资源的消耗,具有社会、经济、生态等几方面的效益。

       目前有许多创客朋友们都制作过与垃圾分类相关的一些作品,基本上都是围绕下面三种功能的:

       第一种是自动感应打开垃圾桶;

       第二种是说出垃圾的名称,通过语音识别技术判断垃圾并打开相应的垃圾桶;

       第三种是通过图像识别技术判断垃圾并打开相应的垃圾桶。

       我也曾经做过一个基于视觉的智能垃圾分类垃圾桶,感兴趣的可以观看下面的视频。


       在垃圾分类的过程中,最重要的还是要使人们认识到垃圾分类的重要性,并且能够进行准确的分类,这样垃圾分类才能在不同的环境中有效的开展。为了使人们能够记住各种垃圾的分类,于是我制作了垃圾分类训练机这个作品。

【功能描述】

       1、掌控板显示屏上会显示相关提示信息,比如出的题目、做对的题数和做错的题数等。

       2、从垃圾列表中随机抽取一种垃圾,并用语音合成模块播报题目,比如“干燥剂”是什么垃圾?题目在显示屏上显示,如果没听清楚问题可以看屏幕了解。

       3、回答问题通过按相应的触摸开关进行,如果回答正确,相应垃圾桶上LED灯和掌控板上的LED灯亮绿色,并随机播报一句反馈的话;如果回答错误,相应垃圾桶上LED灯和掌控板上的LED灯亮红色,接着随机播报一句反馈的话和播报正确答案,并且正确的垃圾桶上的LED灯亮绿色。

       4、会自动统计回答问题后正确的题数和错误的题数,并在结束时语间播报出来。

【硬件清单】

         掌控板*1

         百灵鸽扩展板 *1

         语音合成模块 *1

         触摸开关 *4

         RGB LED *4

         杜邦线等

         激光切割结构件

【结构设计与搭建】

       1、激光切割件设计

       我们先利用LaserMaker软件在设计出其外壳,并用激光切割机切割椴木板及亚克力外壳。


       2、把4个触摸开关传感器和4个RGB LED用热熔胶分别固定在垃圾桶上下的相应位置。如下图所示:



       3、把杜邦线焊接在各个模块的相应位置,这里我们把VCC和GND都连在一起,这样可以减少与扩展板连接线的数量,把4个RGB LED连接在一起,DO接口与DI接口相连,这样就组成了一个4位的RGB灯带,4个触摸开关的输出接口各焊接一根杜邦线。如下图:  

  


      

4、把语音合成模块安装在相应的位置,如下图所示:



       5、把百灵鸽扩展板和掌控板安装在右上角的相应位置。如下图:


       6、把各个传感器模块上的杜邦线连接在百灵鸽扩展板相应的针脚上。如下图:



       7、把四个侧面板与上面板组装在一起。如下图:



       8、组装上底板。


       9、最后再把亚克力面板安装在面板的最上面,防止长时间的使用造成触摸按键旁边面板脏了。


【程序编写】

1、程序的编写软件是Mind+,打开Mind+软件,切换到上传模式,接着点击拓展打开拓展.


2、在主控板选项卡中选择掌控板。


3、在执行器选项卡中选择语音合成模块。


4、在显示器选项卡中选择WS2812 RGB后,单击返回到编程界面。


5、接下来开始正式编写程序。我们先建4个函数,分别是添加可回收垃圾、添加易腐垃圾、添加有害垃圾和添加其它垃圾,然后建立4个列表变量,分别添加一些常见的垃圾名称到相应的列表变量中,程序如下:


6、接下来写初始化的相应程序,这一部分程序主要是对各模块的初始化设置及屏幕的显示信息等,还定义了开始、对、错3个变量,开始变量主要控制出题的开始与结束,对和错变量分别存放做对的题数和做错的题数。程序如下:


7、在主程序的重复执行中判断开始变量的值,开始变量的值由按键A和按键B来控制,如果变量开始值为1时,先播报“请听题”语音,再执行出题、答题函数中的程序。详细程序如下:


8、在出题函数中,其中类别变量对应四种垃圾类别,项目变量对应每种垃圾列表中的相应项,这样所有列表中的垃圾就可以通过一类别和项目两个变量来表示,最后用题目变量来存放随机抽取的垃圾名称,也就是需要回答的题目。由于掌控板显示屏显示的文字不能直接调用列表变量中的文字,所以又用了垃圾名称这个函数来转化一下。最后用到重复执行直到指令,主要是实现出完题后一直等待答题,只有按了相应的按键后,才能继续执行下面的指令。如下图:


10、垃圾名称函数中的部分程序如下图所示:


11、答题的时候,我们是通过触摸相应垃圾桶下的触摸开关来进行的,所以在答题函数中,如果……否则如果……来判断按了哪个按键,再判断对错。如果是对的,变量对就增加1,相应的LED灯亮绿色,并进行执行正确回答反馈函数中的程序;如果回答错误,相应的LED灯亮红色,接着执行错误回答反馈中的程序,再让正确答案垃圾桶上的LED灯亮绿色,并进行相应的语音播报。如下图所示:


12、正确回答函数中程序如下图所示,目的是为了使用反馈语言多样化。


13、错误回答函数中的程序如下图所示:


14、按键A和B中的程序如下图,主要是通过它们来控制是否出题,做对的和做错的题数除了屏幕上随时显示外,当按下结束键时(B键),还会通过语音播报出来。


15、完整程序如下图所示:


【拓展】

这个垃圾分类训练机目前的功能就是机器自动出题,我们来回答并进行相应的信息反馈,就是机器出题,我们来判断。其实还可以倒过来,由我们出题,机器来判断,实现这样的功能我们只要再加上语音识别模块,这样我们说垃圾名称,通过语音识别模块进行识别,机器再加以判断,这样可玩性就更高了。

2

点赞

1241 次阅读5 条评论2 人赞2 人订阅
5条评论