家庭智造:便携式照明报警一体机
刘佳
“创客”(Maker)一词来自西方20世纪60年代的DIY文化,泛指敢于创新,并通过动手实践将自己的创意变成现实产品的人。本文谈及的创客作品的設计灵感来源于笔者日常生活。夜晚独自走路存在一定的安全隐患,部分区域灯光照明不足,遇到危险时手机报警不及时,因此笔者设计了一款集照明和报警功能于一体、兼具便携性和实用性的产品。作品基于童心制物(Makeblock)自主研发的主控板童芯派,通过慧编程中的积木块图形化编程可以实现快速编程,将程序上传到设备,外接移动电源即可实现便携移动。
● 设计思路
显示功能:屏幕显示环境光强度和摇晃强度。
照明功能:当环境光强度低于5并且开启照明开关,则LED灯全部开启;当环境光强度高于5或关闭照明开关则LED灯全部关闭。此控制可以保证光照强度强时,即使误触开关也不浪费电量;光照强度较低时,可以手动控制LED灯开闭,增强人性化,并节约能源。
报警功能:当面对危险时,出于本能可以快速奔跑,当产品摇晃强度高于30时会发出“警告”音,若无法迅速奔跑逃生,则可以两次或多次按摇杆中间,产品会发出“警告”音。当环境安全后,可以切断电源关闭警报。采用两种形式触发报警功能,安全系数更高。
● 硬件准备
本产品所需硬件主要包括童芯派主控板、移动电源及USB(type-C)连接线。
1.童芯派主控板
童芯派(CyberPi)主控板采用ESP32-WROVER-B芯片(如图1),物理接口包括USB(type-C)、扩展板接口及mBuild电子模块接口,产品尺寸为84mm×35mm×13mm,仅重36g。配备全彩显示屏,可实现人机交互;1个Micro USB接口,用于供电和与计算机设备进行通信;多个板载传感器,如光线传感器和陀螺仪,能够输出多种数据;5个LED灯,能够呈现丰富的灯光效果;支持图形化编程,适合零基础编程。
其中:①全彩显示屏提供显示功能;②RGB灯带提供照明功能;③扬声器提供报警功能;④光线传感器用于环境光强度测量;⑤陀螺仪用于摇晃强度测量;⑥按钮A、B及摇杆提供控制功能;⑦USB接口(Type-C)可连接计算机设备实现编程下载,可连接移动电源获取电源。
2.移动电源
移动电源为主控板提供电源,实现产品的便携性,选取输出电压5V、输出电流2.1A的移动电源即可。
3.USB(type-C)连接线
连接主控板和移动电源,实现移动供电(如图2)。
● 情景呈现
当使用者携带该作品夜间出行时,可以将移动电源放在包里或口袋中,手持主控板,也可以将移动电源与主控板封装在一个亚克力盒子内。电源连接后,屏幕显示当前环境光强度和摇晃强度。行至光线较暗处时,若环境光强度低于5,可以按动按钮A,此时LED灯光全部亮起。当走到照明条件好的区域时,LED灯光会自动关闭,若想提前手动关闭灯光,按动按钮B即可。若发现有人尾随存在危险时,可以边跑边摇晃手中的主控板或连续多次按下摇杆中间,作品会发出警报,直到切断电源。
● 程序原理
本项目采用图形化编程界面,通过类似积木的编程环境构建互动多媒体环境,实现产品的编程控制,编程语言如图3所示。
1.变量
系统可以侦测“环境光强度”和“摇晃强度”,在测试情况下,重复执行显示这两个变量并换行,每测完一次清空显示屏。结合真实使用情境,“环境光强度”低于5认为光照条件不好,需要开启照明,而且跑步逃生或摇晃手臂时“摇晃强度”高于30。
创建变量“照明开关”实现环境光强度低于5的情况下,仍能手动控制灯光的开闭。当主控板启动时,“照明开关”的初始量为0,按下按钮A将“照明开关”设为1,再按下按钮B则将“照明开关”设为0,实现对该变量的控制。
2.逻辑关系
所有逻辑量共有与、或、非三种逻辑关系,本产品编程涉及到与、或两种逻辑关系。只有环境较暗并且照明开关开启的情况下,LED灯才会变量,所以采用“与”逻辑控制产品照明功能。摇晃报警装置或者连续多次按动摇杆中间都能实现报警,所以采用“或”逻辑控制产品报警功能。
3.条件判断
条件判断包括:重复执行、重复执行直到…、如果…那么…、如果…那么…否则…。该作品编程使用重复执行实现实时测量环境光强度及摇晃强度,使用“如果…那么…否则…”实现照明功能的开闭,使用“如果…那么…”实现报警功能的开闭(如上表)。
熟练使用条件判断使其达到预想的效果是创客作品开发的一个重点,也是实际教学中的一个难点,在调试程序的过程中,应注意不要一次性地把程序所有的功能编完再查看执行效果,而应先实现基础功能,再慢慢添加新的功能,添加新功能时,应注意测试该功能是否和已有功能冲突。让学生经历困难,加以适当的点拨,适时引入新的算法来实现某些特定效果,这样才能在教学中取得比较好的效果。
创客不仅仅是学习课本上的知识,而是学生用自己的发明创造去解决现实生活中的问题。软硬件结合的创作方式,支持物联网及局域网应用,可以为学生创作简易智能家居设备提供无限可能。在联网模式下,配合更多的传感器,这个报警器可以更加实用和智能。此外,在今后的教学中,教师可以将计算思维融到创客教育中,将日常生活情境融入教学实践,以取得更好的效果。