模拟路灯控制系统的设计Word文档格式.docx
- 文档编号:16749488
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:39
- 大小:300.21KB
模拟路灯控制系统的设计Word文档格式.docx
《模拟路灯控制系统的设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《模拟路灯控制系统的设计Word文档格式.docx(39页珍藏版)》请在冰豆网上搜索。
(3)其它(性价比等)。
二、方案论证与比较
方案一:
题目要求设计一个模拟路灯控制系统,实现支路控制器对单元控制器的有效控制。
本系统采用ATMEGA16L单片机为主控芯片,采用对射式收发一体的光电传感器采集由于物体运动所产生的信号,再由支路控制器系统对信号进行处理实现对路灯的合理控制,以达到题目要求。
支路控制器的时钟采用精确的时钟芯片并由字符型液晶作为显示,利用按键设定、修改开关灯时间。
系统采用光敏电阻分压的方式感应周围环境明暗的变化,支路控制系统采集分压值经单片机处理后来控制路灯的变化。
当路灯出现故障后路灯电路中采样点的电压值会发生变化,单片机根据变化量进行相应的处理。
基于设计思路在设计过程中选择合适的元器件,使用合适的单元电路模块,更有效的达到设计要求。
方案二:
与方案一不同的是方案二选用AT89S52芯片,采用红外对管对物体的移动进行检测,时钟由单片机定时器实现。
方案比较:
与AT89S52相比,ATMEGA16L在性能上具有明显的优势,若采用红外对管则给元件的安装带来不便,且不易调试;
由单片机定时器实现的时钟不准确,故采用方案一。
三、总体设计方案
本系统以ATMEGA16L为控制核心。
整个系统硬件框图如图1所示:
图3系统框图
1.支路控制系统设计
图4最小系统
支路控制系统是模拟路灯控制系统的核心,该系统采用ATMEL公司的ATMEGA16L单片机作为主控制芯片来实现对受控对象的控制。
与AT89S52相比,ATMEGA16L是一款高性能、低功耗的8位AVR微处理器,具有速度快、输出电流大、工作电压范围宽、成本低等优点,是一款性价比很高的单片机。
(1)时钟模块
图5时钟电路
为实现精确的时钟功能并节省单片机IO口资源,该设计使用专用的接口方式为串行的时钟芯片DS1302,该芯片线路简单、体积小,易于操作,且价格低廉。
DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×
8的用于临时性存放数据的RAM寄存器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。
另外该芯片有备份电源引脚,可以在断电后仍能工作,以保证时钟的准确性。
DS1302与单片机之间能简单的采用同步串行方式进行通信,仅需用到三个口线:
(1)RES(复位),
(2)I/O(数据线),(3)SCLK(串行时钟)。
X1和X2是振荡源,外接32.768kHz晶振。
RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。
RST输入有两种功能:
首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;
其次,RST提供终止单字节或多字节数据的传送手段。
当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。
如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
上电运行时,在Vcc>
2.0V之前,RST必须保持低电平。
只有在SCLK为低电平时,才能将RST置为高电平。
DS1302存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。
DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。
这种记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。
传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;
若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。
但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题。
DS1302工作时功耗很低,保持数据和时钟信息时功率小于1mW。
(2)信号采集模块的设计
图6采样电路
信号采集模块包括物体检测模块和环境明暗检测模块,两者功能如下:
物体检测模块:
该模块需要检测小车的移动,并根据小车的移动进行路灯开关的自动控制。
基于此目的采用探测距离远、灵敏度高的反射式光电传感器进行检测,当传感器检测到小车时,传感器给单片机一个信号,然后单片机对路灯进行合理控制,达到题目要求。
环境明暗检测模块:
该模块需要检测环境光的变化,根据环境光的明暗进行路灯开关的自动控制。
基于此要求采用由光敏电阻组成的分压电路进行检测。
光敏电阻器又称光导管,特性是在特定光的照射下,其阻值迅速减小,可用于检测可见光。
在不同的光强下,光敏电阻的电阻值会发生明显变化,光敏电阻器是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;
入射光强,电阻减小,入射光通过检测不同光强下电阻值的变化量来控制路灯的开和关。
(3)显示、按键模块
图71602显示及按键电路
通过按键可以调节和设定路灯的开关时间,控制整条支路按时开灯和关灯,并在字符液晶上显示出来。
字符型液晶因具有体积小、功耗低、寿命长、价格低、接口控制方便及显示操作简单等优点而被广泛应用。
我们这里用到的是1602液晶,1602液晶为5V电压驱动,带背光,可显示2行,每行16个字符,不能显示汉字,内置128个字符的ASCII字符集库,只有并口接口,无串口接口。
(4)路灯控制模块
图8路灯控制电路
该模块采用节能的1WLED灯,当电路出现故障时,单片机通过内部AD采集电路采样点的电压变化量后对数据进行处理。
(5)声光报警模块
图9声光报警电路
当系统出现故障时,蜂鸣器会发出警报声,同时报警指示灯也会点亮。
(6)电源模块
图105V稳压电路
电源是系统中最重要的模块之一,输入电源经稳压块后输出稳定的+5V电源,用以驱动整个系统。
(7)恒流源模块
1.原理介绍:
恒流源是输出电流保持不变的电流源,而理想的恒流源为:
a)不因负载(输出电压)变化而改变。
b)不因环境温度变化而改变。
c)内阻为无限大。
(3-1)
恒流源之电路符号:
理想的恒流源
实际的流源
图11恒流源
理想的恒流源,其内阻为无限大,使其电流可以全部流出外面。
实际的恒流源皆有内阻R。
2.三极管的恒流特性:
图12三极管恒流特性
从三极管特性曲线可见,工作区内的IC受IB影响,而VCE对IC的影响很微。
因此,只要IB值固定,IC亦都可以固定。
输出电流IO即是流经负载的IC。
(3-2)
电流镜电路Current
Mirror:
电流镜是一个输入电流IS与输出电流IO相等的电路:
图13电流镜电路
Q1和Q2的特性相同,即VBE1
=
VBE2,β1
β2。
(3-3)
三极管之β受温度的影响,但利用电流镜像恒流源,不受β影响,主要依靠外接电阻R经
Q2去决定输出电流IO(IC2
IO)。
方案1:
图14恒流源电路
从左边看起:
基极偏压
(3-4)
所以VE=VB
-
0.6=1.0V(3-5)
又因为射极电阻是1K,流经射极电阻的电流是
(3-6)
所以流经负载的电流就就是稳定的1mA
方案2.
图15恒流源电路
这是个利用稳压二极管提供基极偏压5.6V,VE=VB
0.6=0.5V,流经负载的电流
(3-7)
方案3.
图16恒流源电路
这个有一点不同:
利用PNP三极管供应电流给负载电路.首先,利用二极管0.6
V的压降,提供8.2
V基极偏压(10
–
3
x
0.6
8.2).
4.7
K电阻只是用来形成通路,而且不希望(也不会)有很多电流流经这个电阻。
VE=VB
+
0.6=8.8V,PNP晶体的560欧姆电阻两端电位差是1.2V,
所以电流是2mA。
如果只用一个三极管不能满足需求,可以用两个三极管架成:
图17恒流源
或是
图18恒流源
方案4.
电路图如下所示:
图19恒流源电路
图中的第一组运放电路是跟随器,对输入的电压取样电路进行阻抗变换。
最前面的双向开关负责将正负12V电压接入,这个电压是运放的供电电压,并提供给其他线路作为电源输入,C24和C25电容是运放正负电源端的滤波电容,紧靠运放电源引脚。
R11和电位器RW4组成了一个电压取样电路,通过改变电位器RW4滑动端的位置取出不同的电压值,同时这个取出的电压值也是输出电流的正比例控制值,电位器滑动头的电压就按照串联分压的方式计算得出,后端的R15和电容C20作为取出电压信号的阻容滤波电路,因为后端接的是运放的正端,电位器的滑动头不输出电流。
运放的1脚输出的电压等于3脚的电压,既是电位器滑动端的电压值。
运放上面的R12和D9是供电电源12V的指示电路,12V通过开关供给后D9发光指示电压正常。
后面的一组运放是实现电压到恒流的转换,电路中有正反馈也有负反馈,但线路是稳定的状态,计算的时候运放也是按照虚短和虚断的分析方式,C21是电压信号的滤波电容,假设第一组运放1脚输出的电压是V,第二组运放5脚正端的电压是V1,那么电阻RS1左端的电压值为2V1,因为电阻R16和R18是相同的数值。
电阻RS1右端的电压按照R13和R14分压电路计算的话数值是V1-(V-V1)=2V1-V,这样我们就可以计算出RS1两端的电压是V,所以流过RS1电阻的电流是恒定的,另外考虑到RX1和R13相对RS1和负载的阻值不在同一个数量级,比他们大好多倍,因此流过RS1的电流基本都流向负载,很少量的电流流向R13和RX1,所以输出的电流基本是恒定的。
在以上的计算中V1的数值是不确定的,他是根据负载的大小变化的,但是不论V1的数值怎么变化,通过计算可以知道流过电阻RS1的电流是不变的,以为它两端的电压是V,而V这个电压值是第一组运放的输出,在电位器不调节的时候V的数值是固定的,流过RS1的电流不变,所以输出电流也不变,实现恒流控制。
后面一组运放电路中Q4三极管的作用时增大运放的电流输出能力,因为负载比较小,运放驱动能力可能不够,R19基本没有作用在电路中,RX1可能是负载或者假负载,比如输出不接任何负载,电流基本都流过RX1,如果不接RX1,在没有负载的情况下输出就是电压最大值接近12V,在这种电压输出下,运放的正负端会有较大的压差,有可能会损坏运放358。
同时在线路的设计上也要保证负载流过恒定电流产生的电压值不能超过12V,如果超过电源供电电压,不能实现恒流工作性能。
RX1不取吧,估计也没事,取小了对负载不好,要比负载大10倍以上啊,要忽略流过他的电流
本系统采用方案四的恒流源电路,以实现系统的功能。
2.软件设计
系统流程图如下:
图10流程图
C语言表达能力和运算能力比较强,且具有很好的可移植性和硬件控制能力。
采用ICCAVR编译器。
ICCAVR是众多AVR单片机应用开发软件中的优秀软件之一,界面友好,易学易用。
四、结果分析
该系统能完成基本功能部分,传感器检测物体运动的最大误差为正负1cm,光敏电阻在正常光照情况下电阻值为2K,在强光下电阻值为200欧姆,在黑暗情况下2M.。
路灯电路正常时采样点电压为3V左右,在开路故障时电压为0V。
五、结论
硬件设计和软件设计是电子设计中不可缺少的内容,为了满足设计的功能和指标的要求,我们必须在开始设计时就考虑到硬件与软件的协调;
不然会增加软件实现时困难和复杂程度,有时即使硬件和软件单独能用,却不能使他们组成的系统工作,故在设计的过程中必须考虑软硬件的处理能力以及它们的接口是否兼容,实现软硬件的信号过渡。
六、参考文献
【1】高吉祥.全国大学生电子设计竞赛系列教程【M】.北京:
电子工业出版社.2007
【2】张志良.模拟电子技术【M】.北京:
机械工业出版社.2006
【3】何小艇.电子系统设计【M】.杭州:
浙江大学出版社.2004
【4】胡斌.元器件及实用电路解说【M】.北京:
【5】刁鸣.常用电路模块分析与设计指导【M】.北京:
清华大学出版社.2008
【6】唐竞新.数字电路基础【M】.北京:
清华大学出版社.2003
附录1系统原理图
附录2程序清单
/******************************************/
#include<
iom16v.h>
//包含型号头文件
macros.h>
//包含"
位"
操作头文件
#include"
b.c"
#defineucharunsignedchar
#defineuintunsignedint
/***************1602控制位的宏定义**************************/
#defineLCD_OUTDDRC=0XFF//数据端设为输出
#defineLCD_C_DDRDDRD|=0XE0//控制端设为输出
#defineLCD_DATAPORTC//发送数据端
#defineLCD_RS_HPORTD|=BIT(PD5);
//操作的是命令
#defineLCD_RS_LPORTD&
=~BIT(PD5);
//操作的是数据
#defineLCD_RW_HPORTD|=BIT(PD6);
//从1602读
#defineLCD_RW_LPORTD&
=~BIT(PD6);
//向1602写
#defineLCD_OE_HPORTD|=BIT(PD7);
//1602使能
#defineLCD_OE_LPORTD&
=~BIT(PD7);
//1602不使能
#defineLCDa_CURON0x0E//显示光标
#defineLCDa_CURFLA0x0F//打开光标闪烁
/******************RTC常量******************/
#defineRTC_CLKPB7
#defineRTC_DATAPB5
#defineRTC_CSPC7
#defineRD0x01
#defineWR0x00
#defineC_SEC0x80//秒
#defineC_MIN0x82//分
#defineC_HR0x84//时
#defineC_WP0x8E//控制(写保护)
#defineC_BURST0xBE//时钟多字节
#defineCLK_HALT0x80//停止时钟控制位
#defineCLK_START0x00//启动时钟
#definePROTECT0x80//写保护控制位
#defineUPROTECT0x00//写保护控制位
/***************按键常量控制位的宏定义**************************/
#defineKEY_OUTDDRA|=0XF8//按键方向定义输出
#defineKEY_INDDRA&
=0X07//按键方向定义输入
#defineKEY_DATAPINA//读按键端口
#defineKEY_OUT_HPORTA|=0XF8//按键端口输出高电平
#pragmadata:
code
constuchartable[]={0x30,0x31,0x32,0x33,0x34,
0x35,0x36,0x37,0x38,
0x39};
/************************全局变量宏定义**********/
ucharhour,hourshi,hourge,minute,minuteshi,minutege,
second,secondshi,secondge,haomiao,haomiaoshi,haomiaoge;
ucharchucun[];
//存储设置时间时的当前值
voiddelayns(uintUS)
{
uinti;
US=US*5/4;
//5/4是在8MHz晶振下,通过软件仿真反复实验得到的数值
for(i=0;
i<
US;
i++);
}
voiddelay(uintMS)
uinti,j;
MS;
i++)
for(j=0;
j<
1141;
j++);
//1141是在8MHz晶振下,通过软件仿真反复实验得到的数值
/*******************************************
函数名称:
LCD1602_write_com(ucharcom)
功能:
向1602液晶写入一个字节指令
参数:
com是指令
返回值:
无
/********************************************/
voidLCD1602_write_com(ucharcom)
LCD_RS_L;
LCD_RW_L;
LCD_DATA=com;
delay(5);
LCD_OE_H;
LCD_OE_L;
LCD1602_write_dat(uchardat)
向1602液晶写入一个字节数据
dat是数据
/**********************************************/
voidLCD1602_write_dat(uchardat)
{
LCD_RS_H;
LCD_DATA=dat;
LCD1602_init()
初始化1602液晶
voidLCD1602_init()
LCD_OUT;
LCD_C_DDR;
LCD1602_write_com(0X38);
//设置16*2显示,5*7点阵,8位数据接口
LCD1602_write_com(0X0C);
//设置开显示,不显示光标
LCD1602_write_com(0X01);
//显示清0,数据指针清0
LCD1602_write_com(0X06);
//写一个字符后地址指针加1
//LCD1602_write_com(0X80+0x0f);
//将数据指针定位到第一行第一个字处:
LCD1602_write_com(0X80)
///delay(5);
//写第二行时要重新定位数据指针
//write_com(0X80+0x40)
DS1302_init
初始化DS1302的数据接口
voidDS1302_portinit(void)
DDRB|=BIT(RTC_CLK)|BIT(RTC_DATA)|BIT(RTC_CS);
//将时钟端(RTC_CLK)数据端(RTC_DATA)片选端(RTC_CS)设置为输出
DS1302_writeD(C_WP|WR,UPROTECT);
//写入写允许命令
DS1302_writeD(C_SEC|WR,CLK_START);
//启动振荡器,DS1302开始工作
DS1302_writeD(C_WP|WR,PROTECT);
//控制命令,WP位为1,不允许写操作
}
DS1302_writeB
向DS1302写入一个字节数据(没有RST操作)
byte--要写入的数据
/****************************************
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 路灯 控制系统 设计