【一起DIY】掌控板POV创意灯

创意背景

视觉暂留(POV)现象是光对视网膜所产生的视觉在光停止作用后,仍保留一段时间的现象,其具体应用是电影的拍摄和放映。原因是由视神经的反应速度造成的。是动画、电影等视觉媒体形成和传播的根据。视觉实际上是靠眼睛的晶状体成像,感光细胞感光,并且将光信号转换为神经电流,传回大脑引起人体视觉。感光细胞的感光是靠一些感光色素,感光色素的形成是需要一定时间的,这就形成了视觉暂停的机理.

法国人保罗·罗盖在1828年发明了留影盘(类似上图)。当圆盘旋转时,鸟在笼子里出现了,这证明了当眼睛看到一系列图像时,它一次保留一个图像。物体在快速运动时, 当人眼所看到的影像消失后,人眼仍能继续保留其影像0.1-0.4秒左右的图像,这种现象被称为视觉暂留现象。

img

功能设计

1、该项目使用的主控是掌控板,来控制WS18B12灯带的灯珠点亮顺序,通过电机的快速转动来达到视觉暂留的效果。

2、微信小程序端可以输入我们想要的文本文字,控制灯珠的刷新频率,灯带的亮度及开关灯。

3、使用3Done来设计该项目的外形。

硬件清单

img

制作步骤

1、 用3Done设计POV显示外壳

img

2、 将设计好的模型进行切片后3D打印。

img

3、 开始进行项目组装。

img

工作原理

这里我们用5个灯珠来进行文字的显示,因为我这里用的灯带使用的15灯珠的灯带,为了居中显示效果更好,值让第6,7,8,9,10的灯珠来点亮。(ps:其中这里的灯珠与灯珠之间的距离太大,如果做那种pov球体显示,这需要灯珠间隙更小的灯带!)

img

如果我们要显示A这个字符,我们需要先将第一列的5-8的灯珠进行进行点亮,然后依次类推:

第一列:【5,6,7,8】

第二列:【7,9】

第三列:【7,9】

第四列:【5,6,7,8】

那如果我们需要显示Z字符呢?

img

以此类推:剩下字符就交个屏幕前的读者了!

小程序界面

打开微信小程序:“掌控板物联网

img

data0:开关组件:控制灯带的亮灭

data1:输入框组件:控制灯带的显示文字效果

data2:滑块组件:控制灯带的亮度

date3:步进器组件:控制字符与字符显示的位置

程序编写

使用mpython 对该项目进行程序的编写:

step1:

主程序:

1、对灯带进行初始化(设置灯带的数量,亮度)

2、设置wifi,小程序等参数

3、小程序接收数据是进行相应的操作:(开灯、关灯、切换文字、设置灯带亮度及字符之间的显示时间)

img

step2:

字母显示的实现:

img

根据前面的工作原理,我们知道R只需要显示:三列

第一列:【5,6,7,8,9】

第二列:【6,7,9】

第三列:【5,7,8,9】

里定义了五个列表的函数,对应每一列。

我们需要对显示字母字母将列所对应的灯珠号写在相应的列表中。然后对列表进行遍历,设置灯带生效即可完成对这个字母的显示。

其他字符的显示效果与上述类似。

step3:

对小程序输入的字符,然后进行逐个显示

img

项目演示

总结

通过本项目的学习,同学们认识并了解了什么是视觉暂留现象!对列表的知识点也有了更近一步的掌握。如果灯带灯珠之间的间隙更短的话,可以进行球体形状显示(文字,图片等)。

更多教程欢迎关注个人博客:www.hockel.club

需要mPython源码的:

关注微信公众号:跟着hockel玩科创,

回复:pov