Hockel 发表于 2021-10-21 09:53:01

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

本帖最后由 Hockel 于 2021-10-21 10:06 编辑

## 创意背景

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

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

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/095533lotpwvttv8o8uzo8.jpg)

## 功能设计

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

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

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

## 硬件清单
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/095710k1qoksq7qqv7q1fa.jpg)


## 制作步骤

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

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/095954t020x06r00e4mwr0.jpg)

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

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100034rduhduc9wppukzd9.jpg)

3、 开始进行项目组装。
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100100q7znvcfsnncrrbju.jpg)


## 工作原理

这里我们用5个灯珠来进行文字的显示,因为我这里用的灯带使用的15灯珠的灯带,为了居中显示效果更好,值让第6,7,8,9,10的灯珠来点亮。(ps:其中这里的灯珠与灯珠之间的距离太大,如果做那种pov球体显示,这需要灯珠间隙更小的灯带!)
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100132cvw6vk9mkznmvp2m.jpg)


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

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

第二列:【7,9】

第三列:【7,9】

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

那如果我们需要显示Z字符呢?
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100200zx6bsxgbz0h3vgl8.jpg)


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

## 小程序界面

打开微信小程序:“**掌控板物联网**”
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100234rx8r8pabrrjjb10s.jpg)

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

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

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

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

## 程序编写

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

**step1:**

主程序:

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

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

3、小程序接收数据是进行相应的操作:(开灯、关灯、切换文字、设置灯带亮度及字符之间的显示时间)
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100313cl7756m77rdrorsm.jpg)


**step2:**

字母显示的实现:
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100419fhhmaz9i020ff2ii.jpg)

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

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

第二列:【6,7,9】

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

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

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

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

**step3:**

对小程序输入的字符,然后进行逐个显示
![](https://imagemc.dfrobot.com.cn/data/attachment/album/202110/21/100446adnnfz4u9hy9hjjh.jpg)

项目演示



https://qiniu.makeymonkey.com/bed34cef-a9ac-4539-9c05-d56160bdd714.mp4



##总结

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

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

需要mPython源码的:

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

回复:pov

rzyzzxw 发表于 2021-10-29 21:59:52

棒棒的

赤星三春牛! 发表于 2022-2-8 10:36:09

哇!好棒哦!

赤星三春牛! 发表于 2022-2-8 10:37:28

做的很不错

赤星三春牛! 发表于 2022-2-8 10:38:35

厉害。。。

赤星三春牛! 发表于 2022-2-8 10:39:40

6666666666
页: [1]
查看完整版本: 【一起DIY】掌控板POV创意灯