带触摸的手势传感器试用:桌面级手势方向游戏机

2019-09-189483
AI 快速预览详细 收起
本文介绍了一款桌面级手势方向游戏机的制作过程。项目使用了带触摸的手势传感器,每隔一段时间随机点亮一个LED,玩家需要及时作出对应方向的手势才能消除。通过5个触摸按键可以调节不同的游戏难度。硬件清单包括激光切割零件、胶棒、壁纸刀等。程序部分详细说明了如何设置传感器距离和启用所需的功能。这个项目非常适合STEM教育和儿童科学实验,能够激发孩子们对科技的兴趣。



作品演示视频:


项目介绍:这是一个桌面手势游戏机,每隔一段时间随机点亮一个LED,玩家需要及时作出对应方向的手势才可以消除。上置5个触摸按键可以调节5个不同的难度。

本次的手势传感器由DFRobot创客社区提供,拿到手有了一段时间了,最开始想做一个触摸板以及手势翻页的PC外置设备,思来想去,还是觉得功能鸡肋。最终通过手势传感器的四个方向和四个LED,完成了这个作品。

带触摸的手势传感器试用:桌面级手势方向游戏机图1

于是申请了本次社区的试用活动,收快递的时候居然还有些小惊喜。

程序功能说明




首先是设置传感器距离以及开启所需要的方向或者按键,这个手势传感器是采用串口返回数据。
DFGT.setGestureDistance(20);             // suggest default valueDFGT.disableFunction(DFGT_FUN_ALL);       // enable all functions
DFGT.enableFunction(DFGT_FUN_BACK | DFGT_FUN_FORWARD | DFGT_FUN_RIGHT | DFGT_EVT_LEFT);    // disable function test
DFGT.enableFunction(DFGT_FUN_TOUCH1);
DFGT.enableFunction(DFGT_FUN_TOUCH2);
DFGT.enableFunction(DFGT_FUN_TOUCH3);
DFGT.enableFunction(DFGT_FUN_TOUCH4);
DFGT.enableFunction(DFGT_FUN_TOUCH5);
disableFunction:关闭
enableFunction:打开

这部分的功能是记录系统时间,每隔一段时间将会随机点亮一盏LED。并且变量level可以通过5个触摸按键进行设置,可以调节游戏难度。
int flag;

int level=2000;
static unsigned long openLED=millis();       //every 1s open one LED
if (millis() - openLED >= level)
{    openLED=millis();   
     flag = random(2,6);  
     digitalWrite(flag,HIGH);}


这部分拿了两个进行举例,按键调节难度,方向进行熄灭对应方向的LED。

case DFGT_EVT_LEFT:
{  Serial.println("get event left");
digitalWrite(5,LOW);}         //对应方向的LED熄灭
break;
case DFGT_EVT_TOUCH1:
{  Serial.println("get event touch1");  
level = 200;} break;            //难度设置

注:函数介绍 random()
描述:生成伪随机数。
函数原型: random(max)   random(min,max)
参数:
min: 随机数区间下限值,且包括在内。此参数可选,省略则从0开始。
max: 随机数区间上限值,且不包括在内。
返回值:min和max-1之间的随机数。
randomSeed() 描述:初始化随机数生成器。
函数原型:randomSeed(seed)
参数:用于初始化伪随机序列的数字,随机数种子。
返回值:没有。

这里我在2345号引脚连接了LED模块,所以我这里应该用random(2,6); 来随机生成2345中的其中一个。

制作过程

材料清单:可见开头右侧心愿单

首先使用LaserMaker软件(其他绘图软件都可以)绘制了该作品的激光切割图。
带触摸的手势传感器试用:桌面级手势方向游戏机图2
并用激光切割机进行零件的加工。

带触摸的手势传感器试用:桌面级手势方向游戏机图3

准备好零件以后,准备一个壁纸刀、一个胶棒、一张白纸。

带触摸的手势传感器试用:桌面级手势方向游戏机图4


带触摸的手势传感器试用:桌面级手势方向游戏机图5

将背面用胶棒贴上一层白纸并用刀割掉以后,便会得到这样的零件。空白部分即可透光。

带触摸的手势传感器试用:桌面级手势方向游戏机图6
然后将我们的手势传感器固定上去。
带触摸的手势传感器试用:桌面级手势方向游戏机图7

带触摸的手势传感器试用:桌面级手势方向游戏机图8

并用热熔胶将LED发光对准箭头,固定好以后,将多出来的电线进行整理。

带触摸的手势传感器试用:桌面级手势方向游戏机图9

这样,一个桌面手势游戏机就完成了!!

带触摸的手势传感器试用:桌面级手势方向游戏机图10
改进方向

1、增加游戏结束条件,例如场上不能同时有三盏以上的LED点亮。
2、增加数字显示,如LCD、数码管等,及时显示玩家分数。
最后

由于最近一直在忙淘宝造物节,又遇电脑莫名死机。作品粗糙请各位见谅,做完了才发现,作为手势练习机相当不错。
我是捣鼓车间李嘉诚,我们下次再见!~


https://makelog.dfrobot.com.cn/article-1870.html
Makelog作者原创文章,未经授权禁止转载。



simpleGesture.zip

1.46 KB, 下载次数: 3512

创作许可协议

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

评论(2)
gada888
gada888
参考下
铁熊
铁熊
我只关心那个咪咪和虾条是哪个小姐姐送的
- 没有更多了 -