9976| 6
|
[项目] 快乐智造营 | 18 幸运大转盘 |
本帖最后由 怀若谷 于 2023-8-23 19:41 编辑 【系列目录】 05.快乐智造营 | 05 台灯09.快乐智造营 | 09 桌面温度计 10.快乐智造营 | 10 多功能测量仪 11.快乐智造营 | 11 遥控电风扇 12.快乐智造营 | 12 电子像素画板 13.快乐智造营 | 13 物品存放柜 14.快乐智造营 | 14 留言机 15.快乐智造营 | 15 音乐播放器 16.快乐智造营 | 16 智能小闹钟 制作背景 幸运大转盘,是庆祝或营销等活动中常用的器具。随着数字时代的到来,实体幸运大转盘已越来越少,已被计算机应用程序和大屏幕所替代。在创客学习中,幸运大转盘常用来作为学习360°舵机使用的实践项目。今天,让我们一起来制作一个能用手势控制的实体幸运大转盘,科技感绝对满满。 功能介绍 本作品使用了一个基于PAJ7620U2芯片的手势识别传感器,该传感器能够识别多达13种不同的手势。本作品制作中选用了其中的6种手势来实现某个控制指令。当手向上或向下挥动时,可设置转盘的旋转速度;当手向左或向右挥动时,可设置转盘的旋转时长;当手向顺时针方向转动两圈以上时,可启动转盘以预设转速和时长向顺时针方向旋转;逆时针方向转动两圈以上时,可启动转盘以预设转速和时长向逆时针方向旋转。 演示视频↑ 硬件清单 一、硬件连接 将IO扩展板安装到主控板上,将手势传感器和显示屏连接到扩展板的I2C引脚,将360°舵机连接到D5引脚(也可连接到其他引脚)。 二、编写程序 本项目程序采用Mind+软件在上传模式下编写,分为四个部分:主程序、识别手势子程序、显示信息子程序、启动转盘子程序。 编写程序前,需要先加载相关的指令积木模块,它们是:【主控板】Arduino Uno、【传感器】PAJ7620U2手势识别传感器、【执行器】360°舵机模块、【显示器】OLED-12864显示屏。 为了实现预定的功能,程序中还需要使用一些变量。本项目程序使用的变量名称及作用如下表所示。 (一)主程序 主程序主要分为初始化部分和主循环部分,程序及说明如下图所示。 (二)识别手势子程序 该子程序功能是侦测预设的6种手势是否被触发,如被触发则改变对应的变量的值。因转速和时长存在有效范围,所以程序中使用了约束指令,以保证功能的正常实现。该部分的程序及说明如下图所示。 (三)显示信息子程序 该子程序的功能是将转盘转动的三个参数及运行状态显示在屏幕上,实现人机交互。程序及说明如下图所示。 (四)启动转盘子程序 该子程序的功能是根据变量“方向”的值来选择执行停止、顺时针转动、逆时针转动中的某种运转状态或方式。其中顺时针转动和逆时针转动需要读取变量“转速”和“时长”的值来控制舵机的转速和时长。程序及说明如下图所示。 三、结构设计 本作品使用激光切割木件来制作结构和造型,图纸绘制使用了LaserMaker软件,使用的板材为3毫米厚的椴木板。大致可分为三大部分:支架、主控盒和转盘,图纸如下图所示(黑色为切割,橙色为描线,红色为浅调)。 四、加工制件 图纸绘制好后,使用激光切割机进行切割加工。 五、组装成型 1. 安装OLED显示屏 2. 安装手势识别传感器 3. 组装支架件 4. 组装盒子(顶板暂不装) 5. 将盒子固定到支架顶部 6. 将主控板等电子元件装入盒中固定 7. 将舵机固定在预留卡口处 8. 装上盒子的顶板 9. 将塑料舵盘卡进木制舵盘中 10. 将舵盘装在舵机轴上,用螺丝紧固 11. 将转盘和舵盘粘合在一起,圆心重合 六、调试优化 安装完成后,接上电源线通电,对各个预设功能进行逐项测试。及时记录发现的问题,分析其原因,通过修改程序、修改图纸等方式来改进优化,以达到比较理想的效果。 总结反思 本作品在实际使用时,手势识别的精准度和效率还是比较高的。使用中,要先了解使用的手势识别传感器的有效识别距离,并且要考虑环境光线强度可能带来的影响;当然还需要多多练习,才能更好地操控它。 本作品采用了舵机直接驱动转盘的方式,因舵盘和舵机转轴间仅靠一个小小的螺丝紧固,导致转盘旋转时很难保持在同一个平面,是作品的一大槽点。建议朋友们在制作时,优化结构设计,可以考虑采用齿轮传动的方式驱动转盘旋转。 本项目的源程序及图纸文件可在附件中下载 |
376.25 KB, 下载次数: 2610
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed