微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于STC单片机的智能灯控系统设计

基于STC单片机的智能灯控系统设计

时间:07-24 来源:互联网 点击:

e.jpg


2.5 可见光照度传感器模块
可见光照度传感器采用ON9658,它是一个光电集成传感器,典型入射波长为520 nm,可见光范围内高度敏感,内置双敏感元接收器、微信号CMOS放大器、高精度电压源和修正电路,输出电流随照度呈线性变化。温度稳定性好。

f.jpg


由于该传感器输出信号是峰值随照度变化的正弦波。因此采用肖特基二极管加阻容元件构成的硬件检波电路来获取传感器输出电压的峰值,最后输出幅值为正弦波峰值的直流电压信号。可见光照度传感器模块原理图如图6所示。
2.6 照明灯驱动电路
照明灯驱动电路主要由250 V双向光电耦合器MOC3021和双向晶闸管BT136构成,其中R7和R8串联构成双向晶闸管的门极电阻,当双向晶闸管灵敏度较高时,门极阻抗也很高,并上这两个电阻可提高抗干扰能力。R8和C6组成浪涌吸收电路,防止浪涌电压损坏双向晶闸管。单片机的一个I/O口输出照明控制信号,触发光电耦合器MOC3021来控制双向晶闸管BT136的通断,这样便能控制照明灯的开关和亮度。照明灯驱动电路如图7所示。

g.jpg


2.7 串口调试模块
本系统的串口调试模块采用RS-232串口通信,其最远传输距离是50英尺,最高传输速率是20 kbps。能做到双向传输,全双工通信。因为RS-232上传输的数字量采用负逻辑,只与地对称,所以与单片机连接时需要加入电平转换芯片MAX232。串口调试模块原理图如图8所示。

h.jpg



3 系统软件设计
本系统软件程序使用C语言编程,采用模块化设计思想,以主程序为核心设置了A/D转换程序、I/O口输出照明控制程序、串口发送程序及中断函数4个模块。主程序流程图、中断函数流程图如图9、图10所示。

i.jpg


3.1 主程序
系统开始工作后主程序首先对系统功能初始化,启动看门狗以防止程序以外跑飞,然后开启下降沿中断。接下来循环调用各个功能模块函数,并执行喂狗程序。
3.2 A/D转换程序
A/D转换程序主要用于人体红外热释传感器和可见光照度传感器检测信号的转换。主程序每次调用各传感器对应的A/D转换程序时,将其检测信号的模拟量转换成对应的数字量.供其它程序使用。
3.3 I/O口输出照明控制程序
此程序模块的功能主要在于接收两个传感器经A/D转换后的数字量信号,然后由此信号依据系统设定的规则计算出照明灯在一个周期内的关断时间,供中断函数使用。主程序流程图中的T即是照明灯在一个周期内的关断时间,X即是可见光照度传感器的检测信号。
3.4 串口发送程序
串口发送程序把两个传感器的检测信号发送到上位机,便于实际参数观察和软件调试。
3.5 中断函数
中断函数利用主程序中得到照明灯在一个中断周期内的关断时间T来控制照明灯的开关和亮度。

4 结论
本智能灯控系统以节能减排为背景、选用节能卤钨灯作为照明灯,主要针对众多公共场所照明用电浪费严重的现象而设计。此系统达到了良好的照明,节能和环保效果。既消除了传统声控灯的扰民问题,又解决了以控制照明灯的开关和亮度来节省能源的问题。经过实验验证该系统体积小、工作稳定、无误动作、自动化程度高,是一种具有较高实用价值的智能灯控制系统。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top