首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
光传感器ISL29004在智能照明控制系统中的应用
来源:本站整理  作者:佚名  2009-04-29 08:50:50



2.2 调光控制电路
    调光控制电路如图2所示,用光电耦合器MOC3041作为晶闸管的驱动器,同时能实现强、弱电的隔离。MOC3041内部有过零检测电路,当P0.O为低电平时,输出端6引脚、4引脚之间的电压稍过零时,MOC304.1内部双向晶闸管导通,触发外部晶闸管T1导通。当PO.0为高电平时,MOC304l内部双向晶闸管关断,从而外部晶闸管T1也关断。

    通过P87LPC768的PWM输出控制MOC3041的导通与关断时间比值来调节照明设备的功率,从而实现照明设备的打开、关闭以及亮度调节。
2.3 工作原理
    在程序中通过定时中断读取4路ISL29004的ADC输出,并转换为照度值;ISL29004内部的ADC工作在模式2,分辨率为16,照度检测范围一般设为O~1 000 Lux即可满足一般的照明场所的照度检测要求。假设读取ISL29004的ADC的输出为DATA,则可以通过以下的公式转换为照度值:

   
    然后根据计算所得到的照度值进行调光控制;由于P87LPC768的PWM输出的占空比是根据计数映像寄存器CNSW的值和比较映像寄存器CPSWn的值确定,PWM输出保持高电平期间的MCU时钟脉冲数为(CNSW—CPSWn+1)。由此可见,CPSWn越大,则高电平维持的时间越短,则调光控制电路的T1导通时间也就越长,照明设备的亮度就越高;反之照明设备的亮度就越低。
    在程序中通过比较得到的照度值E和标准照度值ES来调整CPSW的值,实现自动调光控制。CPSW的初值设为0,并在O~CNSW之间分为若干档,比如10档,得到每次CPSW的调整值△P=(CNSW-1)/10,以实现较为平滑的调整。计算出照度值后和标准照度值ES比较,如果小于标准照度值ES,则在当前CPSW的基础之上增加△P,直到达到CPSW的最大值(CNSW-1);如果大于标准照度值ES,则在当前CPSW值的基础上减少△P,直到CPSW的值为0,照明设备关闭。同时为了避免较小的照度变化导致自动调光,可以根据标准照度值确定一个调光允许的照度差值△ES,如果当前得到的照度值和上次所得到的照度值差的绝对值△E不小于△ES,才进行调光控制。


3 软件设计
    主要包括主程序、定时器0中断服务子程序以及I2C总线数据传输程序模块。主程序完成P87LPC768以及ISL29004的初始化,照度采集以及调光控制在定时器0中断服务子程中完成。I2C总线数据传输程序模块详见参考文献,这里给出定时器0中断服务子程序的流程图,如图3所示。

    图3中只给出一组ISL29004的照度采集以及调光控制电路的控制程序,由于系统中有4组,因此在定时器0中断服务子程序中,应该是按顺序依次通过I2C总线读取4组ISL29004的采集值并通过4个PWM通道进行相应的自动调光控制。


4 结 语
    对智能照明控制系统中照度检测的问题,提出一种基于ISL29004多路照度采集方案,并给出硬件结构、工作原理以及软件流程图。由于ISL29004内部集成了ADC,直接输出数字量,具有抗干扰能力强和低功耗的特点;并且可以编程灵活配置,又具备比较灵活的I2C总线接口,从而简化了照明控制设备的设计;使用准双向I2C总线缓冲器P82896对I2C总线进行驱动扩展以后,拓展了I2C总线的传输距离,实现了照明场所内的多路照度检测,从而可以对多个照明设备实行分区域控制,并且通过P87LPC768的PWM输出实现了自动调光控制,在节能的同时营造更舒适的照明环境。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:241,945.30000 毫秒