项目背景与要求:

根据安装在室外的光照传感器所采集的光照度的不同, 分级控制室内隧道灯亮度值的变化。 由此可达到室内灯的智能控制,应用在其他行业可以达到节省

功耗和防止安全事故的目的,比如在隧道照明。可以根据人眼对亮度值舒适度的区间,智能的控制隧道灯的亮度,使司机在进入隧道和驶离隧道时视觉差降

到最低,以防止安全事故的发生。室内调节与隧道调节刚好相反。室内调节的目的是根据室外光照度值反比式的调节室内亮度,当室外越暗时,室内的亮度

值越高; 隧道照明的目的是为了缩小司机的视觉差,所以在进入隧道和出隧道时隧道灯亮度值应该与隧道外的亮度值正比,比例最好接近1:1.

此项目模拟室内照明,隧道照明同理;

项目耗材:

(1):电力载波模块

(2):光照度传感器、stm32f103zet6开发板两块、隧道灯一个、杜邦线若干、供电模块不计。

项目所用知识点:

modbus通讯协议、串口收发、串口中断、PWM波、定时器。

项目思路整理:

(1)用一块stm32f103zet6开发板采集光照度传感器的数据,采集过程采用modbus通讯协议、485接口。

(2)将采集回来的数据经过485转TTL模块后,通过开发板串口4【PC10 PC11】传送到单片机内。

(3)配置串口4接收中断,等到接收到传感器传回来的数据时,进入串口4接收中断。

(4)中断函数为通过modbus的协议规则,读取正确的传感器数据,并将正确的数据存储在数组里,通过编写的数据读取函数再解析出来。

(5)对解析出来的数据与设定值进行比较,其中设置四个比较值,用于调节灯的不同亮度。

(6)当在不同区间的时候,通过串口2发送不同的数值,比如0x11 0x22 之类的。

(7)剩下的就是通过串口2硬件连接载波的调制模块将数据发送出去。

(8)在接收端,通过载波的解调模块将发送端串口2发送的数据解调出来后,送入接收端开发板。

(9)接收端开发板中是进行PWM波调光功能的,具体配置的是TIM3,PWM模式1,向上计数, PB5引脚输出波。

(10)接收端配置串口接收,当收到从发送端发送过来的数据时,通过接收到的不同值,然后设置不同的CRRX的值,以达到调节占空比的作用,以此调节

灯亮度。

项目硬件设计:

光照度传感器

485转TTL模块

发送端、接收端和隧道灯(由灯控器控制)

项目软件设计:

void UART4_IRQHandler(void)
{u8 rec_data;       if(USART_GetITStatus(UART4, USART_IT_RXNE) == SET){       switch(read_state){case 101:  rec_data =(u8)USART_ReceiveData(UART4);         if(rec_data==0x01){buffer_i_result[0]=rec_data;byte_count_485=1;  read_state=102;}else{byte_count_485=0;  //½ÓÊÕ×Ö·û´íÎó£¬Çå³ýÊý¾ÝÁ¿                   read_state=0;}break;/----------------------------------------case 102:  rec_data =(u8)USART_ReceiveData(UART4);      if(rec_data==0x03){buffer_i_result[1]=rec_data;byte_count_485++;   read_state=103;}else{byte_count_485=0;                 read_state=0;}             break;

发送端中断接收程序节选

void ReadTemperatureHumidityIllumination(int* il_n)
{
u8 BUFFER_I_COMMOND[8]={0x01,0x03,0x00,0x06,0x00,0x01,0x64,0x0b};u8 COMMOND_I_LEN=8;read_state=101;     //准备接收数据uart4_send_buff(BUFFER_I_COMMOND,COMMOND_I_LEN);  if(read_state==110) {read_state=0;*il_n=100*((buffer_i_result[3]<<8)|buffer_i_result[4]) + ((buffer_i_result[5]<<8)|buffer_i_result[6]);  //解析数据值}

光照值接收函数

void TIM3_PWM_Init(u16 arr,u16 psc){GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOB, &GPIO_InitStructure);
}

PWM波配置函数(节选)-选用TIM3-CH2-PB5

if(USART_RX_STA&0x8000){                    len=USART_RX_STA&0x3fff;for(t=0;t<len;t++){USART3->DR=USART_RX_BUF[t];while((USART3->SR&0X40)==0);}USART_RX_STA=0;}if(USART_RX_BUF[0]==0x0A)//通过电力载波模块发送完,数据是以0a 3f开头{if(USART_RX_BUF[1]==0x3F){if(USART_RX_BUF[2]==0x00){if(USART_RX_BUF[3]==0x01) {LED1 = 1;TIM_SetCompare2(TIM3,0); //节选程序

接收端PWM 输出程序

项目总结:

此项目最终完美收官,但是它对我的启发还是比较多的,正如我文章前面所说的部分,此项目的应用场景不但可以用来打造室内智慧灯的调节,还

能用来隧道灯的调节,不到节约能耗,而且特定场景下,还能保障生命财产安全。

遇到的困难和解决的办法:

PB.5引脚;输出PWM波后,直接连得灯控器,发现灯的亮度太暗,且以低频不停的闪烁。

解决办法:

分析: 可能是因为PB5输出的PWM波的高电平电压过于低,并且输出的电平不太稳定,或者会有杂波输出。

通过示波器,验证猜想;

通过波形可以看出,输出的波形高电平在合理范围之内,但是波形的高电平不稳定,并且占空比也不是很稳定。由此验证猜想,有杂波输出,影响到了占空

比稳定。基于此,构造一个放大和滤波电路,让输出信号达到稳定状态。

        

左图中绿色板子为焊接实物图

基于电力载波的隧道照明灯的分级控制系统相关推荐

  1. 基于电力载波的工地配电柜故障检测系统(一)

    此项目是本人作为一个跨行菜鸟第一次接触并运用单片机进行项目实例训练. 只要功夫深!铁杵磨成针!山高路远!我们顶峰相见! 项目比较简单,可能对于有玩单片机经验的同志来说,这只是个菜鸟级别的实战.话不多说 ...

  2. 太原住宅小区型分户计费节能管理系统TKD-CAS 电力载波技术 节电效率高-节能环保

    住宅小区型分户计费节能管理系统TKD-CAS 电力载波技术 节电效率高-节能环保 (当量表 时间型计费系统 能量型计费系统) 公司是一家从事智能电网用户端的智能电力监控与电气安全系统的研发,生产和销售 ...

  3. HPLC电力载波灯控的节能照明 智慧照明方案

    目前我国照明消耗的电能约占电力生产总量的10%-20%,而城市公共照明则在照明耗电中占30%,同时还存在诸多高能耗.低功效.观感差和管控效率低等问题.随着物联网技术的普及应用,通过对照明系统进行智慧化 ...

  4. 【2015年第4期】基于电力运营大数据分析实现节能减排

    基于电力运营大数据分析实现节能减排 方世清 中国神华神皖能源有限责任公司 合肥 230041 摘要:研究解决全国火电机组出力系数普遍较低,旋转备用率偏大的问题.通过对近年来安徽电网发电.用电负荷特性数 ...

  5. 【CV/Matlab系列】基于图像处理的苹果质量检测和分级系统【含Matlab源码】

    DATE: 2020.10.18 文章目录 前言 1.代码获取方式 2.效果展示 2.1.示例1 2.2.示例2 前言 在之前大学毕设时,设计了一种基于图像处理的苹果质量检测和分级系统.采用matla ...

  6. 宽带电力载波灯控方案有哪些优势

    宽带电力载波技术,有的也称作宽带载波技术,近年来在灯控组网行业得到越来越多的应用.宽带电力载波通信技术,可以通过供电线缆直接进行数据采集.集中控制等,线路要求低,适用场景广泛,极大方便了灯控组网的施工 ...

  7. RS485/电力载波/NB/LoRa/ZigBee等智能灯控制器对比分析

    智能照明是智慧灯杆的重要组成部份.智能照明系统由佰马智慧杆软件平台.无线或有线数据通信系统.分布在全市各路段的单灯/双灯控制器组成. 要实现智能照明控制,就需要单灯或双灯控制器.灯控器采用先进的物联网 ...

  8. e1载波的数据速率是_电力公司常用抄表方案 电力载波抄表系统

    电力载波抄表方案运行稳定,是电力公司常用的电力抄表方案,电力载波优点很多,通过电力线传输数据,不用像RS485抄表需要连接线路,直接通过载波模块传输. 电力载波抄表原理 系统通过主站将要采集的用户信息 ...

  9. 电力载波通信技术介绍

    电力线通信技术(Power Line Communication)出现于 20 世纪 20 年代初期.它是利用 已有的低压配电网作为传输媒介,实现数据传递和信息交换的一种手段.应用电力线通信方式发送数 ...

最新文章

  1. 有关于Matlab的regionprops函数的PixelIdxList和PixelList的一点解释
  2. 公开课报名 | 深入浅出理解A3C强化学习
  3. IDC: New H3C集团正式启动——中国企业IT新星时代已然来临
  4. 联发科射频工程师题目_联发科技笔试题
  5. 这场论文复现的华山论剑,谁能拔得头筹
  6. python pytest setupclass_简单了解pytest测试框架setup和tearDown
  7. ORACLE expdp/impdp详解
  8. jdk 8 时区 转换_使用JDK 8将收藏转换为地图
  9. C++11 修复了双重检查锁定问题(转)
  10. 决策单调性Ⅱ:斜率优化(1597: [Usaco2008 Mar]土地购买)
  11. 计算机组成原理完整学习笔记(一):计算机系统概论
  12. ios自建服务器降级,苹果系统怎样降级?iOS11降级至iOS10的方法
  13. 近而立之年了,老程序员如何建立自己的护城河
  14. 【linux学习笔记】began,每次玩这个都特别着迷
  15. 《Dreamweaver CS6 完全自学教程》笔记 第十四章:使用 CSS 设计网页
  16. 基于python实现resnet_【Tensorflow系列】使用Inception_resnet_v2训练自己的数据集并用Tensorboard监控...
  17. 山寨起源——河神的全斧头
  18. 知道焊缝长度如何确定节点板尺寸_钢结构焊缝中焊脚尺寸怎么确定?有没有标准规定或计算公式?...
  19. 如何配置NAT Server?
  20. Bowtie2错误:Could not locate a Bowtie index corresponding to basename /home/s45/mouse

热门文章

  1. SaaS大型医院云LIS系统源码 集齐前处理、检验、报告、质控、统计分析、两癌等模块
  2. 架构抽象之通用流程管理抽象
  3. 基于java+Socket+sqlserver的油液远程监控系统软件设计
  4. 服务的添加和使用过程
  5. 计算机专业可以进水利高级职称,怎样评高级水利工程师?需要满足哪些条件?
  6. 小程序实战篇(一)——车辆使用登记
  7. 三相电压不平衡下光伏并网逆变器控制策略Matlab仿真,实现 三相不平衡条件下逆变电流三相均衡。
  8. 2022年G3锅炉水处理操作证考试题库模拟考试平台操作
  9. 蚂蚁金服开发岗求职攻略.pdf
  10. 补充第二篇:Windows 环境下,配置Nginx