所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
#大冒险#抵御僵尸来袭的模拟发电开花装置
Mr Guo Mr Guo 2020-09-30 16:09:08
2
2
简单

项目起源

projectImage

植物大战僵尸的游戏相信大家都熟悉,是一款策略性的游戏,可怕的僵尸即将入侵,栽种植物,阻挡僵尸,并杀死僵尸,玩家需控制植物,抵御僵尸的进攻,保护这片草坪,想要拥有超强的战斗力必须得有足够的能量,游戏中的能量获取就来源于栽种植物中的向日葵,本次作品就是为了解决能量供给的问题,旺仔爸爸制作了一个自发电的装置,通过电能帮助生产能量,能量的多少由灯带来显示,并且能量越多就可以让植物开花,花开的程度就表示能量收集的多少  

projectImage

方案尝试

模拟发电的方式大体上的思路是通过人手动转动装置模拟产生电力,手速越快电能就越多,如果将装置安放在自行车模型上就可以实现自行车模拟发电,方案实现的关键在于检测转动状态的传感器如何选型,于是构思了几种可能实现的传感器选型方案,第一种为360度的旋转编码器如下图所示,通过传感器的高低电平变化来计数

projectImage

下图为激光切割的模拟转盘

projectImage

第二种方案是利用光线传感器,在设计好的木制转盘中开孔,传感器感受到明暗不同的变化时计数,如下图所示  

projectImage

下图为设计好的转盘

projectImage

第三种方案时采用霍尔磁性传感器来检测转盘中安放的磁铁来实现计数,转盘的设计和第二种方案类似,下图为霍尔磁性传感器

projectImage

本次作品旺仔爸爸采用了第一种方案,其他两种方案感兴趣的小伙伴也可以测试哦

projectImage

接着,是花朵打开的方案尝试,为了模拟花朵打开,本次作品选定采用42步进电机(42表示长宽)加丝杆的方式驱动花瓣开合,执行器确定好后,问题集中在通过什么样的机械结构实现花瓣开合,可以采用的加工方式有3D打印和激光切割,由于时间比较紧张,本次作品还是采用的激光切割的快速加工方式,利用激光切割设计尝试了如下几种机械结构方案

方案1:激光切割柔性木板作为花朵的花瓣,利用橡皮筋作为拉紧装置,安装42步进电机,通过步进电机拉伸绳子实现花瓣开合,经过测试发现,由于行程过短,此方案用在花瓣开合装置上并不合适,在其他对行程要求不高的场合可以选用

projectImage

方案2:采用上下直径大小不同的圆盘,通过步进电机驱动圆盘上下运动实现花瓣的开合,经过测试发现,花瓣的开合程度不能满足想要的效果

projectImage

方案3:设计如下图所示的连杆结构,经过测试发现,结构设计不合理不能实现花瓣的开合,推倒重来,重新设计  

projectImage

重新设计后的版本如下图,参考了雨伞的骨架,步进电机通过联轴器与丝杆链接,丝杆上安装法兰与骨架链接,丝杆转动带动法兰上下移动实现花瓣开合,经过测试,此方案能满足要求,达到预期的效果,于是模拟花开的方式采用连杆结构

projectImage

硬件清单

本次作品采用最普通的arduino nano作为主控板,之前采购的步进电机驱动板正好可以用在此次作品中

projectImage
projectImage

1:arduino nano主控*1 

 2:4988步进电机驱动扩展版*1(带3块4988驱动) 

 3:42步进电机*2 

 4:5CM丝杆*2(直径8mm导程14) 

 5:8mm法兰*2(导程14) 

 6:4mm-8mm的弹性联轴器*2 

 7:ws2812灯带*1 

 8:360度旋转编码器*1 

 9:DC接口*1 

 10:2.5mm奥松板*1(40*60) 

 11:五金件若干

图纸设计

通过cad设计的图纸如下图所示,手动发电装置的设计修改自一个自行车的模型

projectImage

切割好的结构实物图如下图所示

projectImage

电路设计

本次作品的线路连接方式如下图所示,两颗42步进电机分别连接驱动扩展板的x、y接线柱 

360度旋转编码器CLK、DT、SW分别连接扩展板的D12、D13、A5引脚 

ws2812灯带连接扩展板的A4引脚

projectImage

组装制作

第一步安装盒子底座和电子硬件,组装图如下图所示

projectImage

接下来组装连杆,如下图所示,两个花瓣需要8个连杆

projectImage

连杆组装完成后,用螺丝将连杆与底板以及法兰固定,细节如下图所示

projectImage

完成图如下

projectImage
projectImage

接着,将底座盒子和两个花瓣安装在一起

projectImage

最后我们安装灯带,将360度旋转编码器与自行车连接,并安装在底座盒子上,安装完成后的效果如下图所示

projectImage
projectImage
projectImage

程序设计

程序设计的主要思路是,通过360旋转编码器来实现计数,当计数值达到200时灯带会在上一次的基础上增亮一颗灯,并且将计数值清零,重新计数,同时驱动步进电机转动1000步,实现开花的效果,当手动转动的速度足够快,灯带点亮的灯数就足够多,花开的幅度就足够大

计数程序如下图所示,详细的分析讲解过程本文就不在展开叙述了,如要全面学习可以参考之前的文章

projectImage

控制步进电机和灯带的程序如下图所示,此处设计了两个函数方便大家阅读学习

projectImage

完整程序如下图所示(此程序没有将花瓣的开合和灯带的控制单独设计成函数)

projectImage

视频演示

https://b23.tv/nUeyCY

总结

此次作品的设计在结构上有很多细节没有注意到,比如花瓣的设计,是按照每朵花四个花瓣进行设计的,但安装时发现两朵花距离过近花瓣打开后容易凑在一起,制作作品时还是要多考虑细节问题,关于花瓣机械结构的设计还可以尝试3d打印的方式进行设计优化,电子线路的方案本次由于时间关系,为了按时间完成任务,采用了比较熟悉的360度旋转编码器,如果时间足够充裕还是应该使用更多未尝试过的方案,拓宽自己的知识领域


造物让生活更美好,欢迎有更多想法和创意的伙伴与旺仔爸爸交流造物心得,共享造物的快乐

Makelog作者原创文章,未经授权禁止转载。
2
2
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]