个人电子类作品集2020~2023
挑选本科毕业后的十件电子作品,以时间先后排序整理。与2020年之前的工作相比,这段时间的作品不再受到课设、竞赛的约束,更注重实用性,外观、硬件成本、电池续航都有明显改进。电路设计时能够针对信号完整性、电源完整性和电磁兼容性做出调整。每件作品都从背景、任务、行动、结果四个维度作简要说明。
目录
太阳能感应灯 为家门口的停车坪和入户台阶提供夜间照明,无需定期充电
太阳能门禁系统v2 免钥匙开门,无需定期充电
DC定时开关 每月定时重启光猫和路由器
展示柜灯控系统 根据环境光强弱自动调节展柜LED灯亮度
衣柜感应灯+抽湿机工作定时器 衣柜开门照明,夜间关闭抽湿机
86型感应灯面板 使用2.4GHz微波雷达的楼道感应灯,支持无线组网
24GHz感应灯面板+“随意贴”移动侦测器 使用毫米波雷达的楼道感应灯,支持无线组网
多功能电池充电器 支持5、7、9号镍氢电池、锂电池、干电池、纽扣电池充电
电动车充电宝v1 为电动自行车设计的充电宝,解决学校不给学生提供室外插座问题
电动车充电宝v2 增程式充电宝,一体化抗震设计,可以放在后座包里边骑边充
正文
1. 太阳能感应灯
背景:家住郊区别墅,一楼门口台阶和停车位晚上比较暗,需要感应灯提供照明。
任务:设计一款太阳能供电的感应灯,安装在一楼门厅顶上,要求室外防水、感应距离5~7m、全年无人值守。
行动:首先去淘宝购买了透明盖板的公版防水盒作为产品外壳:

然后根据防水壳内部尺寸确定PCB外型,将太阳能防反灌电路、ME3116AM6G降压电路、海凌科LD012 5.8GHz微波雷达、5730LED照明电路、单片机最小系统等所需功能集成到PCB上。
感应灯满足以下几点要求时开启延时照明:
①标称6V的太阳能电池板输出电压低于2V(环境光较弱);
②锂电池剩余电量高于20%;
③雷达检测到物体移动;
LED亮度随电池剩余电量改变,电量50%以上全亮度,30%~50%七成亮度,20%~30%三成亮度,亮度控制方式为1kHz的PWM方波。
感应灯没有使用太阳能充电管理IC,太阳能板输出电压经过防倒灌二极管直接为4.35V高压锂电池充电,充满后多余的电量使用电阻阵列转化为热量消耗掉。
为了延长续航,感应灯加入了省电设计:使能单片机掉电唤醒定时器,白天每隔1秒唤醒一次检测电池电压,判断是否需要开启电阻阵列防止电池过充。夜间每隔1分钟唤醒一次,检测太阳能板输出,判断是否需要转为日间模式,同时使能外部中断,即时响应来自微波雷达的触发信号。
结果:防水盒质量不太行,作品密封好放到室外不到两个月就出现漏水问题,泡坏了一个微波雷达模块。更换损坏的部件、确定感应灯功能没问题后,用防水胶封死整个外壳,重新安装到室外,截至2023年5月已持续工作27个月。太阳能感应灯工作状态如图所示:

2. 太阳能门禁系统v2
背景:回家进门需要带钥匙,不方便,希望能用手机代替钥匙。上班上学遇到雨雪天可以配合监控摄像头,远程遥控开门让快递员将包裹放到玄关内防止淋湿。太阳能感应灯(作品序号1)只能照亮停车坪到入户台阶,玄关到屋内这段路夜间也是漆黑一片,需要照明。玄关没有电源插座,需要想办法解决供电问题。玄关位置可以接收到地下室路由器Wi-Fi信号,联网比较容易。
任务:设计制作太阳能门禁系统,要求实现①感应灯②Wi-Fi联网遥控开门③太阳能供电
行动:首先解决供电问题。玄关没有电源插座,因此它的全部能量来源都要依靠太阳能板。在综合考虑太阳能板安装位置的日光照射时长、系统功耗、本地天气等因素后,设计了冗余量较大的供电方案。太阳能板选用两片共享单车拆车件,单片规格6V6W,串联输出12V12W,如图所示:

主控板实现的功能包括电源管理、人体感应、LED照明、Wi-Fi联网、直流电机驱动、屏幕/按键交互。

太阳能电池板充电管理使用CN3791MPPT电路实现,它的最大功率点追踪算法为固定电压法,预设电压12V,支持最高4.2V 2A输出,光照充足时可以为主电池快速补能。
为了解决直线电机启动产生较大压降、影响单片机运行稳定性的问题,这套系统加入了双电源设计。主控板右下角OLED屏幕底部有一块动力电池,平常通过继电器常闭端与主电池并联充电,需要电机工作时,继电器吸合,动力电池与主电池断开,单独为电机供电。动力电池输出端连接到Boost电路,将电压升至6V交给RZ7886电机驱动电路,带动电机工作。
人体感应和LED照明的工作逻辑与太阳能感应灯(作品序号1)类似,不再赘述。
Wi-Fi模块采用易微联VS602蓝牙Wi-Fi双模模块(v1版采用易微联PSF-B04),支持APP、微信小程序、语音助手控制。除了开门信号以外,还能为系统提供网络校时服务。
用户可以通过按键调整系统时间,屏幕能够显示当前时间、电池电量、开门次数(支持EEPROM掉电保存)、太阳能板输出电压等信息。
RTC实时时钟功能通过单片机定时器实现,但由于单片机内置RC振荡电路温漂较大,每天误差可以达到分钟级别。为了解决RTC温漂问题,程序中加入了定时器自校正算法,根据Wi-Fi模块提供每天一次的校时信号修正定时器重载值,使得RTC最大误差降低至20s以内。
电池续航是太阳能门禁系统设计时考虑的重点之一,优化项包括:
①加入屏幕保护程序,玄关无人时关闭屏幕显示。OLED还支持像素抖动算法防烧屏。
②Wi-Fi模块的耗电量占整个系统耗电量的九成,晚上10点至早上6点关闭Wi-Fi功能。如有特殊需要,可以通过主控板跳线帽或手机APP临时取消夜间省电模式。
③极端天气(例如连续半个月没有阳光直射)会导致电量不足,此时系统会降低夜间LED照明亮度,白天有人经过时闪烁LED,以提醒用户通过USB-C接口连接外部电源充电。
踩坑:
①v1版本的太阳能门禁系统电机驱动使用的仿L298N模块(下图所示)持续工作电流仅1.5A、峰值2.5A,而直线电机工作峰值电流超过3A,导致v1版本电机驱动IC在超负荷工作2年后烧毁。v2版本改用RZ7886驱动IC,持续电流7A、峰值13A,解决了驱动能力不足的问题。

②v1版本5730LED照明电路使用锂电池+三极管直驱电路,LED工作电压3.3V~3.6V,锂电池输出最高4.2V,经过三极管Vce 0.6V压降刚好满足要求。但使用过程中LED灯出现了烧毁情况,万用表测量LED两端电压高达3.8V,查阅资料后得知三极管深度饱和状态压降仅为0.2V~0.3V,输出电压超出LED承受范围。v2版本LED电源改用SEPIC电路输出的3.3V固定电压+NMOS驱动。
③使用CN3791MPPT锂电池管理电路给电池充电时经常出现充不满就停止充电的问题,查阅手册得知由于太阳能门禁系统使用的锂电池导线较长、输入电阻高,CN3791检测到输出电流小于某个阈值就认为电池充满(下图所示),更换阻值更大的采样电阻、降低充电电流后锂电池能够正常充满。

结果:太阳能门禁系统v1版本于2020年9月投入使用,v2版于2022年底代替v1,截至2023年5月,该系统总计工作时间超过两年半,免钥匙开门次数超过2000次。v1版视频演示:BV19f4y1S7Cm

3. DC定时开关
背景:光猫需要定期重启以保证运行稳定,但它的固件不支持定时重启。手动断电上电会改变家中的公网IP地址,影响外部访问。因此需要设计一个定时断电开关,让光猫在夜间不影响正常用网的时段自动重启。
任务:设计制作定时开关,要求输入输出使用DC5.5接口,电压12V。每月1日、16日凌晨2:59至3:00断电,其余时间通电。
行动:首先估测PCB大小,根据PCB尺寸选购合适的公版防水盒作为外壳(下图所示),在外壳上输出输出口的位置开孔。

根据任务要求,使用爱普生RX8025T实时时钟芯片作为RTC时钟源,该芯片支持自动温度补偿,年误差30s以内。输出端预留3个开孔,可以根据需要选择受控输出(定时断电)或常闭输出(从不断电),光猫、路由器等需要断电的设备接在受控输出端,交换机、电视盒子、NAS等不需要断电的设备接在常闭输出端。考虑到这些电器周围可能存在5V供电的设备,设计时还加入了LM2596S Buck电路提供一路5V USB输出。DC定时开关内部如下图所示:

结果:DC定时开关能够按需切断受控输出,实现光猫定时重启。同时它也可以作为集线器,解决了弱电箱设备太多、插座不够用的问题。弱电箱内工作效果如下图所示:

4. 展示柜灯控系统
背景:卧室书桌展示柜内的LED照明灯需要手动开关,如果睡觉前忘了关灯,会影响睡眠。此外,这些LED灯亮度不可调,阴雨天室内较暗时开灯会显得展示柜太亮。
任务:设计制作一款展示柜灯控系统,要求该系统能够根据室内环境光强弱自动改变展柜LED灯亮度。
行动:感光电路采用光敏电阻+单片机ADC实现,LED控制电路使用NMOS+单片机PWM,PWM调光频率500Hz,亮度等级256级。RTC功能用于选择光控策略,白天、夜晚睡前、半夜三个时间段分别对应三种最大亮度和亮度曲线策略,白天光控策略较为激进,晚上相对保守。
卧室投影仪投射出的画面会影响光感,有些视频亮度变化比较快,此时LED灯会跟随屏幕画面闪烁,影响观影体验。因此展柜光控程序里加入了软件滤波器,让调光过程较为缓和。

结果:经过ADC标定和曲线调整,灯控系统能够适应各种环境,晴天拉开窗帘或打开室内吸顶灯,LED较亮;白天拉上窗帘睡午觉时,LED输出关闭。使用效果如图所示:

5. 衣柜感应灯+抽湿机工作定时器
背景:本科阶段用半导体制冷片、风扇、水箱做了一台简易抽湿机,放在卧室衣柜里,但没有加入夜间关闭风扇防止影响睡眠的功能,因此需要解决定时关机的问题。另外衣柜内也需要照明,可以顺带实现。
任务:设计制作一个All in One系统,要求包含感应灯+定时开关两个功能。
行动:感应灯的感知器件采用干簧管,贴在衣柜门上的磁铁靠近/远离干簧管会改变它的通断状态,单片机接收到干簧管触发的外部中断后打开LED照明。
RTC工作原理与DC定时开关(作品序号3)类似,不再赘述。晚上11点到次日8点关闭抽湿机风扇,半导体制冷片工作不受定时控制。

结果:实现了感应灯和风扇定时器的功能。干簧管的特性可以让它应用于极低功耗的设备中,实现较长的电池续航时间。
6. 86型感应灯面板
背景:家中楼道的灯需要手动开关,从1楼上3楼需要多次使用开关,有时候端着衣服盆上楼腾不开手去开关灯,不仅3楼一片漆黑看不清楼梯,放下盆子还得再回去把楼下的灯关掉,很不方便。2楼和3楼的楼道内都有开发商预留的接闭路电话用的86型暗盒,内有15V直流供电,可以改造成感应灯面板。
任务:为3楼楼道设计感应灯面板,要求能够与其他楼层的感应灯和移动侦测器无线组网,实现全楼道智能光控。
行动:作为“86型”感应灯面板,成品应当能够嵌入标准的86型暗盒内,因此除了LED灯以外的零部件都放置在PCB背面约5cm×5cm的范围内,包括15V转3.3V的LM2596S DC-DC降压电路、2.4G微波雷达、433M收发模块、单片机最小系统等。
PCB正面顶部有3枚0.5w功率的白光LED,包在灯罩内部防止光线刺眼。
光敏电阻用于检测环境亮度,白天或走廊灯打开时,LED灯不会点亮。
433M收发功能使用蜂鸟智能“灵”系列模块实现,让各个楼层的感应灯实现无线组网,还能接收“随意贴”移动侦测器发射的信号。

结果:86型感应灯面板能够接收其他楼层感应灯发来的指令,根据环境亮度判断是否需要打开LED照明;内置微波雷达检测到物体移动时也能向其他楼层的感应灯发出指令,实现楼梯间的灯光联动。感应灯工作状态如下图所示:

7. 24GHz感应灯面板+“随意贴”移动侦测器
背景:与上一个作品的背景类似。2楼楼梯间的感应灯不仅需要感应灯提供照明,还需要承担Wi-Fi中继功能,为客房提供网络接入。
任务:①在无线路由器的壳体内进行改装,增加感应灯功能,路由器从墙上的15V电话线取电。
②设计制作“随意贴”移动侦测器,放在没有固定电源、无法安装感应灯的一楼楼梯口,让使用者走上楼梯时点亮其他所有楼层的感应灯。
行动:为了防止同频干扰,路由器内的人体感应模块不能使用2.4GHz、5.2~5.8GHz频段的微波雷达,因此选用海凌科LD2410b 24GHz毫米波雷达作为传感器,毫米波雷达的感知能力很强,人静止不动时的呼吸、心跳都能被雷达检测到。
主控板集成了毫米波雷达、RTC、光敏、433M接收、LED驱动功能。感应灯工作原理与上一个作品相同,不再赘述。考虑到首次使用毫米波雷达,不敢保证它的工作稳定性,主控板预留了热释电传感器接口作为备选方案。
RTC功能为路由器设计,如果路由器电源连接到主控板右下角的12V out引脚,则晚上8点到次日凌晨2点期间主控板会向路由器供电,启用Wi-Fi中继功能为客房提供网络接入。如果客房需要24小时Wi-Fi或者客房无人使用,也可以选择不受RTC控制全天供电或全天断电。
主控板3D渲染图如下:

主控贴在路由器背部,路由器电源要求为12V,由于路由器+感应灯同时工作负载较高,墙内电话线的输出电压会在9~15V之间变化,因此使用MT3608 SEPIC升降压电路将输出电压固定为12V,向路由器和主控板供电。主控板和电源板的安装位置如图所示:

“随意贴”移动侦测器是一个放置在一楼楼梯口的、锂电池供电的人体感应+433M信号发射装置。人体感应功能使用SR602热释电传感器实现,该传感器工作电流20uA,433M发射模块静态功耗小于0.1uA,理论上一块200mAh的锂电池可以供“随意贴”持续工作超过400天。
“随意贴”支持USB-C充电,板载HX70A电量指示电路,有人经过触发移动侦测时亮起电量指示灯,提示用户是否需要充电,同时向各个楼层的感应灯发送亮灯指令。“随意贴”裸板实物如图所示:

结果:感应灯和“随意贴”都能正常工作,且不受路由器信号干扰。433M无线组网、“随意贴”、感应灯面板工作状态如图所示:

8. 多功能电池充电器
背景:家里攒了一些体重秤、遥控器换下来的旧干电池,还有温度传感器、车钥匙换下来的纽扣电池,看到有up主做了干电池充电的实验BV1xR4y1V7dG,打算自己动手做个能给干电池和纽扣电池充电的多功能充电器。
任务:设计制作多功能充电器,基本要求:能够给5、7、9号镍氢电池、锂电池充电,附加要求:支持干电池、纽扣电池充电。
行动:
①镍氢电池
镍氢电池是最常见的可充电5、7、9号电池,充电倍率0.2C,截止电压1.4V。使用Buck电路,将USB-C口输入的5V直流电压降至1.6V,经过4.5Ω(7、9号电池)、2Ω(5号电池)限流电阻接到电池正极为电池充电。每节电池都有独立的充电MOS管,电池充满后可以关闭对应槽位的电压输出。每节电池的正极分别连接到单片机ADC管脚,检测电池电压。
当电池电压<0.3V,则认为该槽位没有放置电池,对应位置的LED指示灯熄灭;当电池电压介于0.3V和1.4V之间,对应位置的LED灯闪烁,打开对应位置的充电MOS为电池充电;当电池电压大于1.4V时停止充电。充电完成后设置缓冲区,防止充电MOS的状态在1.4V附近反复跳变,电池电压低于1.35V时再次开始充电。
②锂电池
锂电池充电电路采用ME4054M5G集成方案,充电电流通过电阻设置为50mA,专为小电池设计。
③干电池
干电池与镍氢电池共用电池槽,Buck电路的Feedback引脚有一条受MOS控制的电阻分压支路,用户可以通过长按按键让充电器切换到干电池模式,MOS管导通,Buck电路输出从1.6V变更为1.8V,为干电池充电。输出电压切换电路原理图如下:

当充电器工作在干电池模式时,为了防止电池过热,限流电阻设置为60Ω,充电倍率小于0.02C,截止电压1.6V,其余充电电路工作方式与镍氢电池相同。
④纽扣电池
纽扣电池的充电截止电压为3.3V,充电电路直接从USB输入获取5V直流电,经过CD4148二极管防反灌、1kΩ限流电阻和充电MOS接到电池槽正极。纽扣电池正极连接到单片机ADC管脚实时测量电池电压,旁边的LED指示灯告知用户充电状态,LED和MOS管工作方式与镍氢电池类似。
结果:镍氢电池和锂电池充电功能正常。碱性干电池首次充电能恢复约80%电量,但自放电速度较快。碳性电池充电效果不佳,可能与电池生产时间太早有关。纽扣电池充电后能达到3V左右的空载电压,但一旦加上负载就失去输出能力。充电器使用效果如图所示:

9. 电动车充电宝v1
背景:学校不给学生提供室外插座,电动车只能去校外充电,比较麻烦。需要想办法在没有固定插座的情况下为电动车充电。
任务:设计制作一款可以为电动车充电的“充电宝”,要求恒压恒流输出,能够给电动车13串锂电池(截止电压54.6V)充电。
行动:v1版本的充电宝采用分体设计,电芯使用淘宝购入的成品12V锂电池组(下图所示),电池组自带专用充电器,只需要自己设计制作升压板实现恒压恒流输出即可。

升压板需要实现的功能包括升压、散热、过热/欠压保护。其中升压电路采用TL494方案的成品Boost模块,支持最高60V10A恒压恒流输出,实际使用时输出设置为54.6V 0.72A(约40w),模块如图所示:

散热功能使用NTC电阻测温+PWM风扇主动散热实现闭环控制,NTC电阻(10kΩ@25℃)和10kΩ贴片电阻构成分压电路,电压输出至单片机ADC管脚计算出NTC阻值后通过查表法换算成摄氏度,然后建立温度-风扇转速曲线,使风扇转速按需调节。
TL494升压电路前使用MOS管作为开关,实现保护断电功能。保护策略为:
①欠压保护:电池组电压小于10V(TL494 Boost模块要求输入电压大于10V)
②过热保护:NTC检测到工作温度超过65℃
其中过热保护允许自恢复,NTC温度降至55℃以下重新打开MOS输出;欠压保护不可自恢复,必须手动断开电池组连接,为电池充电至保护电压以上,再连接到升压板才能恢复工作。
主控板边缘放置了一枚彩色LED灯用于指示系统工作状态,蓝灯闪烁表示电池组接近满电,系统正常工作;绿灯闪烁表示电池电压充足;黄灯闪烁表示剩余电量较少;红灯快速闪烁表示工作温度过高,输出MOS关断;红灯慢速闪烁表示电池欠压,输出MOS关断。
升压板使用双层“汉堡”式设计,上层为TL494升压板,下层为主控板,元器件夹在两块板之间,上下层板使用螺柱连接,主控板上的输入输出接口均采用DC5.5×2.5插座。感谢研究生室友帮忙设计了3D打印外壳,升压板实物如图所示:

结果:v1版本的电动车充电宝能够在停车期间为电助力自行车充电,单次放电可提供约20km的助力骑行里程,满足校内使用以及周末骑车回家的电量需求。充电宝实际使用效果如图所示(电池组和升压板可以放在后座包里,不用担心过热):

10. 电动车充电宝v2
背景:v1版本的充电宝解决了电动车校内充电问题,但由于DC口抗震能力较弱,只能在停车时为电动车充电。此外,电动车冬天续航里程缩短,后半程电池电压低、车速慢,因此计划制作带有较强抗震能力的v2版“增程式”充电宝,在骑行过程中也能为电动车充电。
任务:使用电芯、充放电管理电路一体化方案,设计抗震能力较强的v2版充电宝。
行动:v1版充电宝的薄弱点在12V电池组与升压板连接使用的DC插座,电池组大电流放电时,如果遇到颠簸震动,DC插座触点会形成虚接触,造成接触电阻上升、插座过热熔毁,因此v2版充电宝首先需要做的就是让电芯与升压电路之间形成稳固的连接。此外,电芯到升压模块的走线距离越短,线损也就越小,效率随之升高。综合考虑各方需求之后,充电宝的电芯方案选择了3片软包动力锂电池,如图所示:

裸电芯组成3串电池组需要使用保护板,根据充放电电流以及电池均衡的需要选择了某品牌成品保护板(下图所示),保护板集成了过充、过放、过流保护以及被动式电池均衡功能。均衡电阻在为电池组充电时可以通过热量发散的形式消耗掉电压较高的单体电芯内的能量,这样既保证了其它电芯能够充满,也能防止该电芯过充。

锂电池充电电路使用USB-C接口PD 20V输入+CN3763 3串锂电池充电管理方案,最大充电功率50w,充电MOS通过导热垫与均热板、散热片连接,底部大面积铺铜辅助散热,MOS管旁边设置了NTC电阻与风扇联动,保证大功率充电时的稳定性。除了PD快充电路以外,它保留了保护板直接引出的DC插座,能够兼容传统充电器。充电电路如下图Battery management部分所示:

v2版充电宝使用4枚蓝色LED灯作为电池电量指示灯。打开开关后,ME3116AM6G Buck电路将电池组电压降至5V为单片机供电,单片机通过ADC和电阻分压电路检测电池组电压,LED灯按照0~25%、25%~50%、50%~75%、75%~100%几个电量挡位选择常亮、熄灭或闪烁,闪烁速度与NTC检测到的温度关联。
升压电路与v1版相同,采用TL494方案,过热、欠压保护机制也类似,不再赘述。
v2版充电宝使用亚克力板作为外壳,关键位置填充泡棉增加抗震能力。与v1版相同,外型使用“汉堡”设计,改进了风道,加强散热效率,输出功率提高至80w。v2版充电宝外观如图所示:

结果:电动车充电宝v2能够放置于电助力车后座包内,在骑行过程中为车辆增程补电,增程里程约20km,均速提高4~5km/h。得益于改进的散热设计和性能更强的滚珠轴承风扇,v2版充电宝工作温度比v1平均降低约15℃,除了调试过程以外从未出现过热保护。充电宝工作状态如图所示:

结语
研究生期间的电子类作品更注重实用性,硬件设计更为成熟,能够针对SI/PI、EMC做出调整。软件方面的提升较少,实物作品没有涉及LVGL、RTOS、Linux等求职比较吃香的技术栈。秋招之前还有一段时间,打算趁此机会再做点能拿出来应付面试的作品。