一种基于单片机技术的楼宇智能照明控制系统
2022-10-18苏健
苏 健
(广东省电子职业技术学校,广东 广州 510000)
0 引 言
可持续发展背景下,节能成为人们关注的重点,楼宇建筑中应用的长明灯虽然满足了日常照明需求,但也因此产生了较多不必要的能源损耗。为了实现对建筑照明耗电量的有效控制,相关专业人员应积极研究并应用智能控制系统实现对楼宇照明的精准控制,结合现场情况对楼宇照明系统亮度进行智能化调节,满足日常照明与节能需求。
1 系统框架结构
智能照明控制系统主要包括上位机、调光控制电路、ZigBee网络以及ZigBee节点模块。信息采集电路将红外线、光照亮度等信号传输给单片机,经ZigBee节点模块、ZigBee收发协调器传输给上位机,上位机根据接收的信息将控制指令传输给ZigBee收发协调器、ZigBee节点、单片机以及执行电路,最终实现对灯体的智能控制[1]。系统整体框架如图1所示。
图1 智能照明控制系统的总体结构
2 硬件系统设计
本设计所应用的单片机为AT89S52,该单片机具有执行操作、信息处理以及数据采集等相关功能。硬件系统主要包括继电器控制电路、红外传感器、光照传感器、键盘与液晶显示以及灯管驱动电路等部分,具体框架如图2所示[2]。
图2 硬件系统结构
光照传感器能够将所采集的楼宇内光照状态以数字量的形式传输至单片机控制器,由单片机将光照数字量转化为脉冲宽度调制(Pulse Width Modulation,PWM)信号。系统利用PWM占空比对灯具亮度进行动态控制,依靠集成电路(Integrated Circuit,IC)实现对灯具开关时间比例的控制[3]。
2.1 单片机控制器
AT89S52单片机内含8位互补金属氧化物半导体(Complementary Metal-Oxide-Semiconductor,CMOS)微控制器,能够进行Flash编程控制,具有晶振及时钟电路、看门狗定时器、32位输入输出口线、6向量2级中断结构、16位计数器/定时器、数据指针以及全双工串口通信等功能。AT89S52单片机能够通过静态逻辑操作将频率降低至0 Hz,在芯片空闲时间可以停止运行片内处理器,但串口、计数器、中断器以及存储器等能够持续运行。在芯片掉电时,振荡器锁死,保存随机存取存储内容,单片机各工作停止,在硬件复位或中断请求的情况下重新开展工作[4]。
2.2 光照传感器与驱动电路
光照传感器的关键部件为光敏元件,对370~830 nm的可见光展现出较高的灵敏度。光敏元件芯体为进口硅兰光伏探测器,能够在各类环境中使用,光灵敏度不受光照强弱的影响。在实际应用过程中,需要结合楼宇内部情况对输出方式、量程等传感器参数进行合理设置[5]。为了满足光照传感器的运行需求,利用BH1750FVI传感器进行光照信号采集。该传感器内部主要包括16位模数转换模块、运算放大器、光敏二极管、时钟振荡器以及串行总线接口,具有较高的分辨率和两线总线型串口,能够将采集的光照信号以数字量的形式输出,其探测的环境范围也相对较大。BH1750FVI的基本框架如图3所示。
图3 BH1750FVI的基本框架
BH1750FVI传感器借助集成电路总线(Inter-Integrated Circuit,IIC)进行通信,能够实现多组芯片的有效联系,各芯片均能控制数据传输,有效实现了对传输总线的简化处理。IIC总线具有串行时钟线(Serial Clock,SCL)和串行通信数据线(Serial Data,SDA)两路信号线,各设备基于分配的特定地址与总线连接。总线通信器件主要包括主机与从机两类设备,具有总线停止与启动两种通信过程。针对ZigBee网络中CC2530芯片无IIC总线接口的情况,为了满足光照传感器控制需求,可以合理利用CC2530内部的输入/输出(Input/Output,I/O)口模拟IIC总线功能,实现与光照传感器的可靠联系与控制。在实际应用过程中,将连接光照传感器SCL时钟线的I/O口设定为输出,通过软件控制的方式实现时钟信号的生成。此外,将连接光照传感器SDA数据线的I/O口设为输入,结合IIC时序要求进行动态调整。
针对IIC总线功能的实现,主要应用了以下几种数据传输函数,包括停止总线传输的void iic_stop(void)函数、启动总线传输的void iic_start(void)函数、接收确认的char iic_get_ack(void)函数、向总线写入数据的void iic_write_byte(unsigned char data)函数、读取总线数据的unsigned char iic_read_byte(void)函数以及向总线发出确认指令的void iic_send_ack(char ack)函数。
2.3 红外传感器与驱动电路
为了满足红外传感控制需求,选择SS-101热释电红外传感器,其具有成本低、红外感知灵敏以及可靠性高等优势,工作电压范围为4.5~20 V。在驱动控制过程中,红外线传感器在感知到人体移动的情况下能够从晶体管-晶体管逻辑电路(Transistor-Transistor Logic,TTL)引进将高电平输出,并在CC2530引脚发出中断指令,此时控制器利用继电器电路将相应灯具开关打开。在传感器无法检测到人体的情况下,控制器将输出“0”这一开关量,使得相应灯具开关关闭。为了避免出现灯具短时间内频繁开关的情况,驱动电路需要对低电平控制进行延时处理。
2.4 灯管驱动电路
为了满足发光二极管(Light-Emitting Diode,LED)灯光的驱动控制需求,常用的电路主要包括电气隔离或非电气隔离两种。选择隔离式驱动电路,融合应用MOSFET与隔离变压器,虽然成本高且结构复杂,但是具有较高的控制灵敏度和安全可靠性,能够满足LED照明的可靠控制需求。由于隔离变压器将输入与输出端分离,因此能够有效规避触电风险。
2.5 继电器控制电路
继电器控制电缆主要应用各类继电器对灯具控制电路的通断情况进行控制,通过给定输入量,达到一定条件时,继电器相应触点将被控制开断,实现相应电路的开断控制。继电器能够针对压力、速度、功率、电压以及温度等各类信号进行感应控制,本文所应用的继电器控制电路主要针对光照传感器、红外传感器所采集的数据信号作出反应,实现对灯具开断的有效控制。
3 软件系统设计
3.1 单灯控制器
3.1.1 节点控制
单灯控制器主要有终端与路由两种节点形式,路由节点能够实现对网络路径的选择,满足个人局域网(Personal Area Network,PAN)末端节点的协调控制需求。单灯控制器软件程序对节点的选择需要结合所开展的任务来确定。控制器接收到相应信息后,需要判断该信息是否需要向自身节点发送。如果是发送给自身节点的数据信息,则需要对数据信息解析和执行;如果不是发送给自身节点的指令,则需要借助路由表实现数据转发。控制器借助目的地址和命令段来判断是否需要解析数据信息,具体工作流程如图4所示。
图4 单灯控制器工作流程
根据图4,单灯控制器需要对数据是否为本网络、本节点指令进行判断。当确认是需要接收的本节点指令时,检查数据格式。如果格式错误,则停止后续解析操作;如果格式正确,则需要进行解析处理。解析过程中,控制器需要对数据中的命令信息进行判断,结合程序设定的要求完成灯体开关控制相关操作流程,操作完成后需要继续对数据指令进行监听,等待后续操作指令的下达。
3.1.2 控制任务主流程
控制任务主流程主要包括楼宇灯具控制、电量检测、通信任务执行。其中,灯具控制主要涉及变压调节、过流过压保护等,电量检测即通过串行外设接口(Serial Peripheral Interface,SPI)与电量采集芯片进行通信,通信任务流程即与射频(Radio Frequency,RF)无线传输芯片串行通信等。在程序运行过程中,需要扫描无线射频网络串口,在串口内存在需接收数据的情况下,对数据进行解包和协议转化处理,并将封装的数据利用无线通信网络传输给上位机。此外,程序对无线通信模块串口扫描,从中提取PPP帧信息。如果该帧来自于上位机发送给区域末端的指令,则由本区域解决;如果该指令需要由节点控制器转发,则该指令经数据转换后利用ZigBee网络模块转发。
3.2 集中控制器
集中控制器能够满足灯具的集中控制与单独控制需求。在集中控制过程中,控制器能够对上位机发送的指令信息进行解析处理,并利用ZigBee网络向单灯控制器发出相应控制指令,实现对楼宇内照明系统的智能化集中控制。无线网络监听模块能够实时接收上位机发送的指令信息,利用相应网络协议对接收的信息进行处理,并利用串口将指令信息传输到控制器中存储。利用控制器对数据指令的有效性进行判断,在判断指令有效的情况下执行相应操作,否则终止操作。控制器对灯具的控制时间可以结合用户需求进行自由调整,以此来满足用户的多样化控制需求。集中控制器的协调器在应用过程中,需要先初始化各设备,通过建立与单灯控制器的网络连接,从而实现对各单灯控制器的集中控制。网络连接后,对数据是否属于本网络的情况进行判断。如果不属于,则重新返回至网络链接建立流程;如果属于,则将数据传输至网络。
4 结 论
基于单片机控制、ZigBee无线通信技术建立的照明控制系统能够有效满足楼宇内照明智能化控制的需求,有效降低照明能耗。其硬件系统主要由单片机控制器、光照传感器、红外传感器以及相应驱动控制电路组成,软件系统则从单灯节点控制、集中控制两方面提出了程序设计流程。为了实现对照明的最优控制,相关研究人员也可以融合应用模糊控制、BP神经网络等方法,进一步提高系统的智能化水平。