
1. 系统概述点击链接下载protues仿真设计资料https://download.csdn.net/download/m0_51061483/92081507基于单片机的自动路灯监控系统是一种集时间控制、光照检测、智能照明控制和状态显示于一体的智能照明管理系统。随着城市道路照明智能化水平的不断提高传统路灯采用人工控制或固定时间控制方式已经难以满足节能与智能管理需求。因此本系统利用单片机作为核心控制器通过光敏传感器实时检测环境光照强度结合时钟模块实现定时控制功能根据环境变化自动调节路灯工作状态从而达到节约能源、提高管理效率和延长设备使用寿命的目的。系统采用模块化设计结构主要由单片机控制模块、光照检测模块、时钟模块、数码管显示模块、按键设置模块、LED照明控制模块以及报警与状态指示模块组成。系统能够实时显示时间与光照百分比信息并支持用户自主设定光照上下限阈值和路灯工作时间段。当环境光照低于设定下限时系统自动开启路灯当光照高于设定上限时系统自动关闭路灯。同时为保证照明控制的合理性系统采用光照优先控制策略即光照条件优先于时间条件进行判断使路灯能够更加准确地适应实际环境变化。该系统具有自动化程度高、控制灵活、功耗低、运行稳定等优点可广泛应用于道路照明、公园照明、小区照明以及校园照明等场所。2. 系统功能设计2.1 时间显示功能系统采用时钟模块记录当前时间信息通过数码管动态显示当前分钟和秒钟数据使用户能够实时查看系统运行时间状态。显示内容包括当前分钟数当前秒钟数设置时间参数开灯时间段参数例如12:35通过动态扫描方式实现数码管显示保证显示效果清晰稳定。2.2 光照检测与显示功能系统利用光敏电阻检测环境光照变化通过ADC模块采集光照模拟电压信号并转换为数字量供单片机处理。系统将光照强度转换为百分比形式显示LIGHT:75%用户可通过按键切换显示模式实现时间显示与光照显示之间的自由切换。光照百分比计算公式如下Light_Percent ADC_Value ×100 /1023通过该方式能够直观反映当前环境亮度情况。2.3 自动开灯控制功能系统支持设置路灯自动开启时间段。例如开启时间18:00 关闭时间06:00当系统时间进入设定时间范围后自动点亮LED路灯。控制逻辑如下当前时间 ∈ 开灯时间段 ↓ 满足 ↓ 开启路灯该功能能够实现无人值守自动照明管理。2.4 光照上下限设置功能为了使路灯能够适应不同天气和季节变化系统允许用户设置光照上下限参数。例如光照下限30% 光照上限70%控制规则如下光照低于30%时开启路灯光照高于70%时关闭路灯判断逻辑Light Low_Limit → 开灯 Light High_Limit → 关灯该功能提高了系统的智能化程度。2.5 灯光控制优先级功能系统采用双重控制策略光照控制时间控制其中光照控制优先级最高。例如当前时间为白天但由于暴雨天气导致环境亮度急剧下降时间条件不开灯 光照条件开灯系统最终执行开灯优先级判断流程先判断光照 ↓ 满足开灯条件 ↓ 立即开灯 ↓ 忽略时间判断该设计更加符合实际应用需求。3. 系统总体方案设计整个系统采用单片机集中控制方案。系统主要组成如下单片机最小系统光敏检测模块时钟模块数码管显示模块LED照明模块按键输入模块电源模块系统工作流程如下系统上电 ↓ 初始化模块 ↓ 读取时间 ↓ 采集光照 ↓ 按键检测 ↓ 判断控制策略 ↓ 控制LED状态 ↓ 更新显示 ↓ 循环运行4. 系统电路设计4.1 单片机最小系统设计单片机作为整个系统核心控制器负责数据采集、逻辑运算、参数设置以及输出控制。最小系统主要包括4.1.1 时钟振荡电路采用晶体振荡器产生稳定系统时钟。主要作用提供CPU运行时钟保证定时器计时精度提高系统稳定性常用晶振频率11.0592MHz 12MHz4.1.2 复位电路用于系统启动初始化。功能上电自动复位手动复位异常恢复保证系统能够正常启动运行。4.2 时钟模块设计系统采用时钟芯片记录时间数据。主要功能秒计时分计时时间存储掉电保持单片机定期读取时间信息。读取内容Minute Second为定时开灯功能提供依据。4.3 光敏检测模块设计光敏电阻阻值随着光照变化而变化。特点光照增强阻值减小光照减弱阻值增大经分压后形成模拟电压Vout Vcc × R/(RRLDR)单片机ADC采样后计算当前光照百分比。功能光照采集环境亮度判断自动开灯依据4.4 数码管显示模块设计系统采用数码管显示数据。显示内容当前时间光照百分比设置参数显示模式如下12:35或L75采用动态扫描技术减少IO口占用。优点成本低显示清晰响应速度快4.5 LED路灯控制模块设计LED用于模拟实际路灯。驱动方式单片机IO口 ↓ 三极管驱动 ↓ LED灯功能路灯开启路灯关闭状态指示由于单片机驱动能力有限因此采用三极管放大驱动电流。4.6 按键设置模块设计系统采用独立按键实现参数设置。按键功能如下按键功能SET模式切换ADD参数增加SUB参数减少MODE显示切换可设置光照上限光照下限开灯时间关灯时间4.7 电源模块设计系统采用5V稳压电源供电。主要功能单片机供电时钟模块供电显示模块供电光敏模块供电稳压电路保证系统长期稳定运行。5. 系统程序设计5.1 主程序设计主程序负责系统整体调度。程序流程voidmain(){System_Init();while(1){Read_Time();Read_Light();Key_Scan();Lamp_Control();Display_Update();}}5.2 系统初始化程序设计完成硬件初始化。voidSystem_Init(){Timer_Init();LED_Init();ADC_Init();Display_Init();Key_Init();}初始化完成后进入主循环。5.3 光照采集程序设计ADC读取光照值。unsignedintRead_Light(){unsignedintadc;adcADC_Read();returnadc;}转换光照百分比LightPercentadc*100/1023;5.4 时间读取程序设计读取时钟数据。voidRead_Time(){MinuteRTC_Read_Min();SecondRTC_Read_Sec();}获取当前时间用于控制判断。5.5 按键扫描程序设计检测用户操作。voidKey_Scan(){if(KEY_SET0){Mode;}if(KEY_ADD0){Value;}if(KEY_SUB0){Value--;}}实现参数修改功能。5.6 路灯控制程序设计实现优先级控制策略。voidLamp_Control(){if(LightPercentLowLimit){LampON;}elseif(LightPercentHighLimit){LampOFF;}else{if(Time_Enable())LampON;elseLampOFF;}}实现光照优先控制逻辑。5.7 时间段判断程序设计判断是否处于工作时间。bitTime_Enable(){if(CurrentTimeStartTimeCurrentTimeEndTime)return1;return0;}用于辅助控制路灯状态。5.8 数码管显示程序设计动态刷新显示内容。voidDisplay_Update(){if(DisplayModeTIME_MODE){Display_Time();}else{Display_Light();}}实现显示模式切换。5.9 LED控制程序设计控制路灯输出。voidLamp_On(){LED1;}voidLamp_Off(){LED0;}完成最终执行控制。6. 系统运行过程分析系统启动后首先完成硬件初始化随后读取当前时间和环境光照数据。用户可通过按键设置光照上下限和路灯工作时间段。系统实时比较当前光照与设定阈值当光照低于下限时立即开启路灯当光照高于上限时关闭路灯。在光照处于正常范围时系统根据预设时间段决定是否开启照明。整个过程中数码管实时显示时间或光照百分比用户可随时查看当前运行状态。通过光照优先策略系统能够有效应对阴雨天气、雾霾天气以及季节变化导致的环境亮度变化实现智能节能照明控制。7. 系统总结基于单片机的自动路灯监控系统结合时间控制与光照检测技术实现了智能化路灯管理功能。系统通过光敏传感器实时监测环境光照变化通过数码管显示时间与光照信息并支持用户设置光照上下限及开灯时间段。采用光照优先于时间控制的策略使系统能够更加准确地适应实际环境需求提高照明效率并降低能源消耗。系统结构简单、成本低廉、运行稳定具有较高的推广应用价值可广泛应用于道路照明、园区照明、校园照明以及智慧城市建设等领域。