一盏应急感应灯的诞生

Author Avatar
xmoiduts 7月 20, 2016
  • 用其他设备扫码打开本文

古人学问无遗力,
少壮工夫老始成。
纸上得来终觉浅,
绝知此事要躬行。
          –陆游

起:灵感由来

  最近学校总是意外停电,平时熄灯偶尔不准时也就算了,考试前一晚居然也会停电。无规律的电力中断使我越来越重视生活环境的应急照明。按照个人习惯,晚上手机会关机充电,在起夜的时候就只能摸黑出去。
  这一切使我萌生了一个想法:制作一盏应急感应灯,他能:

  • 在环境突然变黑(Blackout)时自动点亮,延短时间照明;
  • 在起夜时自动点亮,临时提供低度照明;
  • 在不需要的时候自动熄灭,增加续航时间。

承:其他准备

  去年到北京办事,顺路逛了两圈宜家,看这个盒子蛮有质感的,就留了下来。
001.jpg
  即便作为计算机专业的学生学渣,我还是粗通一点C语言加class的写法的。毫不犹豫地选择了有一点玩耍经验的Arduino平台,来完成这个项目。

转:制作过程

  制作过程,也就是那样吧,相信对于本站(V2)的各位大牛而言,我这点工作很微小,但对我而言,它不下于一次完整的课程设计。
  首先确定需求,接着用自然语言/伪代码描述流程,然后根据模块资料编()写()程()序(),进而编写业务逻辑代码,再调用上一步的例程。
IMG_20160715_212847.jpg
  接着就是开发板搭建,以及无休无止的调参。如果说完成代码用了一整天,那么调参就耗费了我足足两个下午加晚上。
  测试基本没了问题,就开始 翔 一样的焊接。
山有小孔,仿佛若有光
这是屎一样的焊接!
  三天的折腾后,作品终于成型啦。
IMG_20160718_005603.jpg

合:感想体会

  这是我闲暇时完成的一件小作品,虽然还没有足以应对工作的道行,但从它的开发过程中,我不难体会到v友们面对的工作压力之大。我面对的只有这几个组件,拥有充裕的时间并且可以随时放弃这作品,然而更多各领域的大牛要面对复杂得多的环境:KPI,老板的催促,项目的deadline等……
  总之,纸上得来终觉浅,觉知此事要躬行。


可编程LED灯带
Arduino节能配置(需要开飞机)
流程图手稿:
流程图手稿
成品代码:275行,含一个类定义和所有控制代码

本文也发表在V2EX

代码在此处查看