8186| 15
|
[项目] 用脑电波点亮16个LED灯环!!! |
hi~大家好,我又来了! 今天想跟大家分享的是一个小作品是用脑电波来点亮16盏LED灯 具体是需要用你的专注力来控制,专注力越高点亮的灯越多,如果专注力下降,那么灯也会相应的灭掉。 如果专注力达到95以上就会点亮全部灯,然后就会出现彩虹灯的效果奖励。 先上一张图看看 视频看看 怎么做到的呢? 首先材料准备很简单 主要有:Arduino主板、4.0的蓝牙模块、面包板、RGB灯环 那么具体我是怎么编程的呢? 慢慢来,对于不熟悉编程的同学,这里会讲的仔细点,当然高手跳过。 首先需要把脑电波数据的函数程序打开。这个如果希望做脑电波控制作品的同学可以找我要。 现在第一步先做一个让灯环一个个点亮,然后又一个个灭掉的程序。 那么这个第一个想法当然是用for循环语句了。 因为有16盏灯,所以是从1到16,每次增加1 然后需要逐渐灭掉,所以还要一个递减的for循环 现在,需要把灯环的积木模块拉出来 然后灯数是变量,所以把 i 变量放在灯数的框中 另外,引脚和灯数自己根据自己的实际操作定义。 千万不要忘记这个RGB灯生效的指令,很多人就是忘了加这个,导致灯老是不亮。 好了那么现在就是这个程序的写法如下: 现在通过这个程序,我们基本实现了初步的效果 但是如何实现根据专注力的高低与灯亮的数量成正比的关系呢? 这里就需要把专注力的数据和灯的数量进行对应。 那么,因为专注力的数值是0到100,而灯的数量是1到16,所以你想到一个指令了吗? 没错,就是数学上常用到的映射指令 不要忘记,专注力的变量是:ZZ 因为是字符串的类型,所以需要转成整数类型。 好了,那么现在思路就非常明朗了。 最后把脑电波数据的函数结合进去就OK了。 那么这步就基本实现了专注力的数值和灯环亮的个数进行了对应, 但是如果想要在达到专注力大于95以上时,会有彩虹灯的效果出现,然后又回到初始状态的话应该如何编程呢? 哈哈,我先留个作业给各位同学,如果有答案的同学,可以在底下留言哦! 好了,今天就分享到这里。 如果对脑电波头环感兴趣的,或者想有商务合作的都可以找我哦! |
cappuccino 发表于 2021-1-24 13:07 第三方库目前只有 IDE 以及米思其的,还没有上传到库里,如果你有意念机的话可以留个邮箱发你哦 |
liuwenhang 发表于 2021-1-25 09:23 57007092@qq.com,这个是我的邮箱,谢谢 |
liuwenhang 发表于 2021-1-25 09:23 有arduino库移植一个Mind+库是很快捷的,没有Mind+库很难用起来 https://mindplus.dfrobot.com.cn/ext-api |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed