简介
这是一个(设计上)可以(实际上不能)转动的发光“摩天轮”玩具:
发光部件使用WS2812D-F8幻彩灯珠,每颗灯珠都能实现256级RGB亮度调节;
转动部件采用24byj-48步进电机(然而实际上转不动,只能作为装饰);
控制部件采用esp-12f模组,这是一个基于esp8266 WiFi物联网MCU的模块,价格十分美丽,支持Arduino编程,同时支持接入WiFi通过手机APP控制;
软硬件参数
电源输入 DC 12V (幻彩灯珠最高亮度下)至少有1.5A的带载能力,DC5.5*2.1接口
转动部件 四相五线步进电机
按钮 2个按钮:复位按钮(靠近铜柱)、编程/用户自定义按钮(远离铜柱)
指示灯 3个LED指示灯:电源指示灯(靠近电源输入口,红色)、用户自定义指示灯(靠近编程按钮,红色)、保留指示灯(位于WiFi模组上,蓝色,未使用)
物联网 支持IEEE 802.11 b/g/n ,仅支持2.4GHz WiFi ,可自己创建WiFi热点,亦可连接现有WiFi网络
开发环境及固件 使用Arduino IDE 开发的Arduino 应用程序
原理图介绍
1.电源部分
使用DC-DC将 DC 12V输入转换为供LED灯和(转不起来的)步进电机的DC 5V,以及供MCU的3.3V。
2.控制部件
使用ESP12F模组 ,同时控制(转不起来的)步进电机和LED,也能实现物联网功能。
3.步进电机
使用ULN2003达林顿晶体管驱动24BYJ-48 步进电机,然而实际上阻力太大并不能转起来,后续将考虑升级42/57步进电机。
4.LED
使用60颗WS2812D-F8幻彩LED灯珠组成摩天轮的轮盘。
PCB介绍
1.摩天轮 轮盘 Wheel
外轮盘 Wheel(Outer)用于发光、显示动画,它由4块相同的10*10(cm)扇形组成一个20*20(cm)的超大圆环,每个扇形有6+9共15颗LED,整个轮盘有24+36共60颗LED
内轮盘 Wheel(Inner)用于连接外部轮盘。
4个外轮盘和1个内轮盘相互拼接,共同组成整个轮盘。
2.支撑部件 Support
上支撑部件 Support(Part1) 用于固定步进电机,步进电机的转子与轮盘相连。
下支撑部件 Support(Part2) 用于连接底板与上支撑部件。
上支撑部件和下支撑部件相互拼接,共同组成整个支撑部件。
3.底板 Bottom
上底板 Bottom(Part1) 没有任何电气功能的装饰板,遮盖下底板中的元器件,同时支撑 支撑部件
下底板 Bottom(Part2) 。本项目中几乎所有的电气功能均在此,包含电源、LED/步进电机驱动器、控制部件及其调试接口。
上底板和下底板通过M3铜柱连接。
安装步骤
1.组装轮盘
将4块外轮盘PCB和1块内轮盘PCB的底层朝上,然后把连接点焊接起来,共同组成一块巨型PCB。
然后焊接WS2812D-F8灯珠,注意R18和R19两个电阻焊点,正确地组合它们将决定下一个被点亮的LED位置
2.组装支撑部件
将步进电机安装到上支撑部件上(由丝印的方向),然后上支撑部件板上三个孔分别塞一颗M3螺丝,十字或一字部分朝轮面方向,把它们焊死,最后长的那部分安装一个直径4mm 长度10mm的弹簧。
下支撑部件稍后组装。
3.组装底板
焊接下底板全部元件(推荐使用SMT),建议焊接电源部分后先测量一下5v和3.3v端输出电压,以免造成不必要的麻烦。务必接上串口调试线。
将下支撑部件的底部焊盘焊接到下底板的对应位置上,然后它的顶部穿过上底板(LOGO朝上)的孔,使用M3螺丝和铜柱固定住两块底板,最后将上支撑部件和下支撑部件焊在一起。
固件烧写&调试&玩耍步骤
1.安装开发环境
请自行安装Arduino IDE和ESP8266开发环境(具体方法请自行上网搜索)。
2.编程,写入固件
通电,串口调试线接USB转串口模块(请自备),烧写前先按住编程按钮(不要松手)再按下复位按钮,待ESP-12F模组自带的蓝色LED闪烁后方可松手,才能使模组进入烧写固件模式,使用Arduino自带的烧写方式,烧写完成后需要手动复位模组。
3.开始玩耍
幻彩LED应该会显示动画,按编程按钮(与用户自定义按钮合二为一)可切换动画。示例代码中共有4款动画,更多更好玩的效果敬请自由探索。
提示:使用Arduino 的 Adafruit Neopixel 库。