基于Arduino的智能照明设计

2015-05-12 08:48刘熙昌孔祥营孙景明单丽媛陈剑雪
科教导刊 2015年4期

刘熙昌 孔祥营 孙景明 单丽媛 陈剑雪

摘 要 Arduino是一款电子互动产品开发的软硬件平台。以Arduino单片机为基础配置超声波传感器和温度传感器搭建智能照明系统,实现家用LED灯可以根据人体距离灯的远近而自动调节灯光的亮度,并可根据环境的温度调节光的色彩。在日常家居生活中,此类智能照明系统既能使人们的生活更加舒适也可以有效地实现照明节能。

关键词 Arduino单片机 智能照明 照明节能

中图分类号:TU113.6 文献标识码:A DOI:10.16400/j.cnki.kjdks.2015.02.065

Design of the Intelligent Illumination System based on Arduino

LIU Xichang, KONG Xiangying, SUN Jingming, SHAN Liyuan, CHEN Jianxue

(College of Electronic and Electrical Engineering, Shanghai University of Engineering Science, Shanghai 201620)

Abstract Arduino is a popular electronic interactive platform at present. Intelligent Illumination System is designed based on Arduino single chip, ultrasonic sensor and temperature sensor. Brightness of the LED lamp can be adjusted automatically according to the human body distance to the lamp, and also the environment temperature can tune the color of light accordingly. In the daily life, such intelligent illumination system can make people's life more comfortable and achieve the ilumination energy saving.

Key words Arduino single chip; intelligent illumination; illumination energy saving

0 引言

在电子设备和智能手机越来越普及的时代,智能家居的各种开发创意越来越受到重视。智能照明就是其中一个应用价值比较大的切入点。而目前如飞利浦等智能照明成本过高,其高昂的成本和售价阻碍了产品的大规模推广。同时,现代生活节奏快,压力大,所以家居照明的调节情绪缓解压力的作用也可以作为打开市场的试金石。

而Arduino是目前较为流行的一款电子互动产品开发平台,此平台由硬件和软件两部分组成,软硬件都是开源的,任何人都可以在Arduino官方网站上获取最新的PCB设计。在软件方面,Arduino有自己的IDE软件开发环境,采用类C++的高级开发语言,且有大量的库函数支持,大大简化了程序开发工作。鉴于 Arduino开发平台的诸多优点,本文基于Arduino单片机,以极低成本方式实现类似或者部分Hue系统的智能照明功能。甚至在某些特别功能设计的创新上,期望能够不同于目前的Hue系统。

1 方案设计

本智能照明系统中arduino功能拟设计为2层,模版配色功能及智能感知功能。

第一层次为简单实现Hue系统的主要功能,即提供几种固定的智能灯光配置,设想以2个LED灯泡为例,arduino以预设的调色方案去控制2个LED灯泡,比如家庭阅读方案(亮黄、亮白组合)或者夜灯方案(弱白色为主)。

第二层次,在arduino上加装超声波传感器,初定为US-100带温度补偿的超声波模块,可以同时测距测温。这样可以实现arduino对人体的自动感知功能,该功能设计为夜间探测到人体后自动亮灯,并且随着人体的走近逐步自动加亮LED灯,待夜间行动人体逐渐远离LED灯时,arduino又会自动逐步减弱LED发光强度直至灭灯。

图1 LED灯和超声波传感器连接示意图

图2 智能照明系统接线图

在实现中,利用到了Arduino PWM来调节LED亮度。脉冲宽度调制(Pulse Width Modulation,PWM)是一种对模拟信号电平进行数字编码的方法,由于计算机不能输出模拟电压,只能输出0V或5V的数字电压值,可以通过使用高分辨率计数器,利用方波的占空比被调制的方法来对一个(下转第152页)(上接第132页)具体的模拟信号的电平进行编码。只要带宽足够,任何模拟值都可以使用PWM进行编码。输出的电压值是通过通和断的时间进行计算的。

在智能照明系统的实现过程中,涉及到arduino开发、LED灯光配置、超声波探测开发,Arduino PWM 等知识和技能,在功能上初步实现了Hue系统的设想,并且在智能感知调光功能上有所创新(智能化、节能化),比目前的家庭灯光系统功能大为拓展,且成本极为低廉。

2 实验过程

以C语言为基础,通过查阅文献进一步学习Ardunio 语言,在老师的帮助和小组成员的不懈努力下,项目成员对Arduino语言进行不断的练习,并逐渐掌握了Arduino程序的编写。

(1)调试一个简单的程序使得LED灯正常发光。(2)在单片机上加一个超声波测距模块,将预调试成功的程序烧入单片机后,进行测试。起初灯光只可以根据人体的靠近而进行亮灭并不能渐变色彩,在大家细心地观察分析下,发现其原因,进行重新实验,从而实现了预设想,LED灯可以根据人体的靠近而变亮,且灯光逐渐增强,并随人体的远离而熄灭。(3)在超声波调控的基础上,又在arduino上加装红外传感器,初定为D-SUN的人体热释电红外传感器,通过红外感测运动人体的存在。当感知到运动物体的存在时,相应的指示灯就会变亮。可以在不同的位置安装多个红外传感器,通过观察相应指示灯,就可以知道运动物体的位置。红外传感器是我们整个实验中基本来说最难的一部分,很多地方都是经过大量的调试,查阅许多的资料后才弄清楚到底是怎么一回事。在不断的编程调试运行、检验后,最终将智能照明系统制作出来。

在经过4个月的学习研究后,创新项目取得了一些成果,初步完成基于Arduino单片机的智能照明系统。作为进入大学首次接触电子创新项目的大学生来说,这既是一次学习生活的经历,又是我们在创新科研道路上的一次飞跃。

在起初的材料搜集整理中,由于大家对这方面的知识不是特别熟悉,不免出现精力不集中甚至烦躁的情绪,但是大家彼此鼓励一步步克服困难走了下来。在这次创新项目中,项目成员有着明确的分工,硬件安装、查阅资料、软件的开发与调试。大家各司其职,不断地去探索去克服自己所面对的困难,由此也深刻体会到了做实际产品不容易的道理,并且也发现团队合作是那么的重要,团队精神是创新的强大保障。

3 结语

基于Arduino单片机的智能照明系统可以根据人体距离设备的远近进行灯的开启、熄灭和调节光的强度,而且根据周围环境温度的变化灯光变换不同的颜色。不仅如此,成本较为低廉的Arduino主板可以代替Hue系统的功能,更加适宜走进千家万户,具有很大的潜在商业价值。同时,所有参与者在整个创新项目实施过程中,积极参与,在查阅文献、进行调研后,不断和指导教师沟通,进行系统的接线和编程调试。在经过创新项目的锻炼后,我们自身的综合素质得到了很大的提高,实验动手能力、解决问题的能力都有了很大的提高,团队协作能力明显提高。同时,创新项目能够尊重我们个性发展和兴趣取向,因材施教,调动我们自身学习的主动性、积极性和创造性,切实提高参与者的实践创新能力,符合全社会对教育部门人才培养的迫切要求,创新项目有助于提高高校毕业生的竞争力,为企业输送更多优秀的人才。

参考文献

[1] (德)MaikSchmidt.玩转Arduino快速入门指南[M].北京:科学出版社,2013.

[2] 陈吕洲.Arduino程序设计基础[M].北京航空航天大学出版社,2014.

[3] 荣学娟,牛萍娟,徐秀知,李晓霞.室内照明的智能控制系统[J].仪器仪表用户,2009(4).