太阳能LED交通警示板概要.docx
《太阳能LED交通警示板概要.docx》由会员分享,可在线阅读,更多相关《太阳能LED交通警示板概要.docx(32页珍藏版)》请在冰点文库上搜索。
太阳能LED交通警示板概要
太阳能LED交通警示板
摘要
本系统是以太阳能为能源的交通警示装置。
系统通过太阳能光伏板将太阳能转化为电能存储在铅酸蓄电池中并给工作电路提供电源。
做为交通警示装置,系统工作时,白天对通过该路段的车辆进行计数,夜晚通过闪烁灯对通过的车辆提出危险警示。
另外系统还以显示时间日期,温度等。
由于系统以太阳光为能源,具有清洁,可再生的特点,整个系统结构简单,成本低廉,具有一定的实用性。
关键词:
太阳能,蓄电池,交通警示。
Abstract
Thissystemisasolarenergybasedontrafficwarningdevice.Thesystemconvertssolarenergytoelectricitywhichwillbestoredinlead-acidbatteriesthroughaphotovoltaicpanelandcircuitstoprovidepowertowork.Thetrafficwarningdevicecanrememberafewvehiclesthatthroughtheareaduringthedayandgiveawarningtodriversduringthenightwhenitisworking.Inaddition,thesystemcandisplaytime,data,temperatureandsoon.Thesystemhasclean,renewablefeaturesasaresultofutilizingsolarenergy.Theentiresystemissimpleandcostslow,soithasacertaindegreeofpracticality.
Keyword:
solarenergy,battery,trafficwarning.
目录
1.任务和要求------------------------------------------------3
1.1任务--------------------------------------------------3
1.2要求--------------------------------------------------3
2.方案设计选择----------------------------------------------4
3.系统设计-------------------------------------------------4
3.1系统硬件电路设计-------------------------------------5
3.1.1太阳能充电---------------------------------------5
3.1.2光控电路-----------------------------------------6
3.1.3过充保护电路-------------------------------------6
3.1.4过放保护电路-------------------------------------7
3.1.5计数及警示电路-----------------------------------8
3.1.6车辆检测电路-------------------------------------8
3.2系统软件设计------------------------------------------9
4.系统调试---------------------------------------------------11
4.1硬件调试----------------------------------------------11
4.2软件调试----------------------------------------------11
5.系统测试---------------------------------------------------12
总结----------------------------------------------------------13
参考文献-----------------------------------------------------14
附录----------------------------------------------------------15
1.任务和要求
1、1任务
设计并制作一个交通警示板。
该装置以太阳能为能源,铅酸蓄电池为蓄能部件和电路工作电源。
该警示板设置在夜间有事故隐患的路段,LED不间断地闪烁。
白天可关闭。
1.2要求
1、基本要求
(1)设计并制作太阳能光伏板对电池的充电装置。
(2)设计并制作以电池为电源的LED闪烁工作的装置。
(3)设计并制作以太阳能光伏板为传感器的光控电路,控制LED在白天关闭、夜间开启。
2、发挥部分
(1)在基本要求的基础上,利用LED作显示单元,设计制作该路段的白天通过车辆数量的传感、计数、显示装置。
最大显示数为99。
该装置在光控开关控制下,白天开启、晚上关闭。
(2)给蓄电池加上充、放电保护装置。
防止过充电和过放电。
(3)给光控电路增加避免瞬时光照(如夜间闪电、过往车辆灯光等)引起误动作的功能电路。
(4)采取各种措施降低蓄电池的工作电流,延长电池工作时间。
(5)其它自选功能。
说明
1、推荐选用6V,2AH铅酸蓄电池。
2、基于上述蓄电池,建议太阳能光伏板的参数为:
峰值电压8.5V、峰值电流310mA、峰值功率2.5W。
3、警示LED与显示LED可共用。
推荐选用1英寸LED数码管。
作警示灯光时,可显示为‘日’字。
2.方案设计选择
根据任务要求系统的工作部分包括蓄电池充电电路,车辆计数电路,交通警示电路等部分等。
其中车辆计数电路用计数、译码再通过数码显示,警示电路用数码管显示日,上述电路简单实用不另行设计。
根据蓄电池充电要求,蓄电池在充电过程中有预充电,快速充电,浮充电要求,所以充电电路设计也要讲究。
下面提出两种方案选择。
方案1:
采用专用集成芯片设计充电电路,由于集成芯片具有电压识别功能,在充电过程中能自动进行预充电,快速充电,浮充,过压保护,过放保护的功能,具有一定的智能,另外电路设计简单可靠。
方案2:
采用4DH7恒流管进行低压低电流充电,过压浮充电,在满足快速充电要求下,采用直接快速充电,用比较器进行过压,过放保护。
根据太阳能光伏板,铅酸蓄电池的参数,不必对充电过程进行复杂的控制。
所以在充电电路设计上选择方案2。
3.系统设计
系统包括电池充电,过压,过放保护,计数,警示时间日期等电路,原理框图如图3.0。
光伏板将太阳能转化为电能通过充电电路存储到蓄电池中,光控电路控制计数,警示电路的电源,不工作时将电源切断,以实现较小电流的工作,提高蓄电池工作时间。
图3.0
3.1硬件系统设计
3.1.1充电电路
充电电路将光伏板转化的电能存储到蓄电池里,系统主要考虑过压保护和过放保护。
电路图如图4.1.2。
图中4007防止蓄电池电流倒流而损失电能,J为继电器触点,常闭点表示电池板断开给蓄电池直接充电,系统在过压和蓄电池电压过低无法使继电器工作时处在常闭状态,这时蓄电池通过由4DHT组成的恒流电路充电,一方面在电压过低时可以起到预充电,另一方面在电压充满的时候又可以起到浮充电。
4DH7是浙江大学研制的高稳定度,低温度系数的恒流管。
在满足两端3和1脚的电压差在大于3V时,通过它的电流恒定为IH=1240/RmA,曲线关系如图4.1.1
图4.1.1
图中VS约为3V,而VM为50V。
系统设定为1240/10=124mA,这是蓄电池电压低时预充电的电流,此设计一方面可以起到预充电做用,另一方面又可以克服由于电压过低无法使继电器工作而无法对蓄电池充电的缺点。
当蓄电池充满,继电器触电回到常闭点,此时4DH7最大压差为8.9-7.5=1.4V(设定蓄电池满压为7.5V,而光伏板最高电压为8.9V),由图4.1.1关系可知,此时通过4DH7一个很小的电流给蓄电池充电,起到浮充的作用。
当继电器触点向上时4DH7上无压差,无电流经过,蓄电池直接充电。
图4.1.2
3.1.2光控电路
根据要求光控电路主要实现控制LED白天工作,晚上关闭,系统在电路设计上增加了避免瞬时光照引起的误动作,电路原理图如图3.2.1.1所示。
光伏板输出的电压信号通过电阻对电容进行积分,再输到比较器3脚,与2脚设定电压进行比较,这里2脚设定电压为0.7V左右,可根据具体情况设置。
白天时显然3脚电压要高于2脚,所以Port口输出高电平去控制其他电路,夜晚则相反。
此电路还具有避免瞬时光照引起的干扰,当光伏板受到瞬时光照时输出一个脉冲波形,通过电阻对电容进行缓慢充电,光照过后光伏板变为0电压,此时电容又通过电阻放电,只要设置好RC参数就可以起到抗干扰作用。
由T=-RCLnVi/Vo,Vo为充电电压即光伏板电压,Vi为电容充电达到的电压,这里为2脚的比较电压所以理论计算时间(设光伏板瞬时充电电压为5V)T=-47*1Ln0.7/5=20.4s,也就是说5V电压给电容充电时要过20秒才能达到比较电压,这样是时间已经满足要求,也可改变参数来改变时间。
图3.2.1.1
3.1.3过充保护电路
系统用比较器对蓄电池进行过压保护,原理图3.1.3.1。
光伏板在阳光强烈的情况输出最大值是9V,蓄电池过充电压为V/2*2.5=7.5V,通过稳压二极管设定比较电压为3.49V,电压比较器的正向输入电压值由R1、RP1的值决定,当蓄电池电压达到7.5V时调节RP1使其电压达到3.49V。
在充电前电压比较器LM393输出为低电平,Q1截止,Q2导通工作,电磁继电器J吸合,对蓄电池充电,当蓄电池电压超过7.5V时,电压比较器LM393输出为高电平。
此时Q1导通,Q2截止,电磁继电器断开不工作,太阳能光伏板停止对蓄电池充电,因此起到了过充保护的效果。
3.1.4过放保护电路
当电源供电电压过低时,整个系统工作不稳定,电路故障也随着增加,对电源本身也不利,因此,设计本系统时我们就考虑了电源过放保护电路。
电路原理如图3.1.4.1,基本原理同过压保护。
图3.1.3.1
图3.1.4.1
3.1.5.计数警示电路
电路由计数器,译码器和数码管组成如图3.1.5.1,工作计数器根据外部脉冲信号(图3.1..6.1的Port1口)进行计数,并送译码显示。
译码器1的LT和译码器2的BL受光控电路的Port口控制,当Port口为低电平时数码管1显示日字,数码管2关闭。
图3.1.5.1
3.1.6.车辆检测电路
电路由激光发射管,光电池,和ICL7650自稳0运放组成,原理如图3.1.6.1,当有车通过时,激光线被挡住,ICL7650输出低电平,车辆过去侯回到高电平,这样来检测车流量。
此电路的供电电源受光控电路Port口控制,晚上时关闭整个电路电源以达到省电的目的。
图3.1.6.1
3.2.系统软件设计
用单片机来控制液晶显示屏(单片机芯片选用89s52型号,液晶显示屏选用LCD1602型号),可在液晶显示屏上显示时间(24进制)、日期、和警示语,并可通过键盘对时间和日期进行调整。
时间日期与警示语分两次轮流显示,每10秒做一次变化,20秒为一个周期。
单片机所需电源由铅蓄电池提供,电压为5V。
采用液晶(LCD)显示,界面形象清晰,内容丰富,可显示复杂字符,易于和单片机接口,且耗电少。
图5.1.1和图5.1.2是系统工作流程。
流程说明:
系统工作时,会在液晶显示屏上显示固定的时间和日期,此时可根据需要对时间日期进行调整。
确定后,既可看到时间(日期)与警示语的轮流显示,同时能一直显示温度。
图5.1.1轮流显示时间(日期)和警示语程序主流程
图5.1.2流程说明:
按键可显示0~9,“/”,“:
”十一个符号,另有一个按键做为确定键(按其他键无反应)。
系统一工作时,就会进入时间调整状态,此时若需对时间和日期进行调整则调整好后按确定键退出,否则直接按确定键退出。
图5.1.2键盘调整时间日期子程序流程
4.系统调试
根据系统设计,系统由硬件和软件两部分组成,对其分别调试。
1.硬件调试
硬件调试包括充电电路,过压保护电路,过放保护电路,光控电路,计数电路和警示电路等。
调试过程中,过压保护和过放保护达到设计要求,在超过7.5V和低于5.5V时两保护继电器均工作正常。
光控电路调试时,给6V的电压,经过约5秒时间Port1口输出高电平,表明达到设计的抗夜间瞬时光照干扰。
计数,显示电路工作理想。
2.软件调试
软件调试满足设计思想,可进行时间设置,显示,可间隔显示警示语,也可测量显示温度。
系统测试
1.测试和制作工具
示波器YB43020B1台
数字万用表1个
仿真器1个
稳压电源1个
电源变压器1个
电烙铁1个
太阳能光伏板1个
铅蓄电池1个
液晶LCD显示屏1个
各种类型芯片若干
数码管若干
2.测试内容及结果
太阳能光伏板充电及过压过放保护电路达到设计要求
光控电路光伏板电压6V时,电容5S时间充电到0.7V
计数,警示电路达到设计要求,并符合降低功耗设计思想
车辆检测电路达到设计要求,并符合降低功耗设计思想
单片机控制LCD液晶显示部分达到设计要求
总结
系统的设计采用的过压,过流保护装置,使系统能工作在稳定状态,同时系统又采用了4DH7恒流管在蓄电池低压和满压时对其进行预充电和浮充电,延长了电池的寿命。
系统在满足功能要求的情况下,通过切断不工作部分电路的电源,以及数码管和警示管共用方式降低了蓄电池的工作电流,延长了电池的工作时间。
系统使用太阳能,清洁,可再生,给交通提供方便的同时系统设计也达到环保要求。
参考文献
1.谢嘉圭宣月清冯军电子线路高等教育出版社
2.李青电路与电子技术基础——数学电子技术基础浙江科学技术出版社
3.李青电路与电子技术基础——电路基础浙江科学技术出版社
4.万福军潘松峰单片微机原理系统设计与应用中国科学技术大学出版社
5.陈清山世界最新集成运算放大器湖南科学技术出版社
6.缪家鼎徐文娟牟同升光电技术浙江大学出版社
7.张延淇常用电子电路280例中国电力出版社
8.马忠梅籍顺心张凯马岩单片机的C语言应用程序设计北京航空航天大学出版社
附录
程序清单
以下是在LED液晶屏上轮流显示时间(日期)和警市示语的源程序。
它所能实现的功能如下:
1.在液晶屏上显示时间(24进制)和日期;
2.在液晶屏上显示当前温度;
3.在液晶屏上显示警示语“dangerous!
Stopplease!
”;
4.每隔十秒种实现时间日期和警示语的轮流显示;
5.若时间日期不正确,可在启用系统时用键盘进行调整;若正确则直接按确定键,系统正常工作。
#defineucharunsignedchar
#defineuintunsignedint
#include//头文件
#include
#include
xdataunsignedcharCW_at_0xf9fc;//液晶控制地址
xdataunsignedcharCR_at_0xf9fe;
xdataunsignedcharDW_at_0xf9fd;
xdataunsignedcharDR_at_0xf9ff;
unsignedchartime[8]={0x31,0x33,0x3a,0x33,0x30,0x3a,0x35,0x37};//时间数组
unsignedchardatap[8]={0x30,0x36,0x2f,0x31,0x30,0x2f,0x31,0x39};//日期数组
unsignedcharcodea[10]={0x10,0x20,0x40,0x80,0x11,0x21,0x41,0x81,0x12,0x22};//键值
unsignedcharcodeb[10]={0,1,2,3,4,5,6,7,8,9};//键值所对应的含义
unsignedchar*p,*q;//时间和日期指针
unsignedintc,ct;
unsignedintm,n;
unsignedcharsign;//显示时间或警示
unsignedcharkey;//键值变量
bitflag;
sbitDQ=P3^2;//标志位
//---------------------------------------------------------
voiddelay_18b20(unsignedintus)
{
while(us--);
}
//----------------------初始化DS18B20子程序----------------------//
bitow_reset(void)
{
bitpresence=0;
DQ=1;
DQ=0;
delay_18b20(80);//保持低电平480us以上
DQ=1;
delay_18b20(13);//等待DS18B20响应
presence=DQ;
returnpresence;
}
//-----------------------从DS18b20读出1位-------------------------//
bitread_bit(void)
{
DQ=0;
delay_18b20(0);//保持低电平1us以上
DQ=1;
if(DQ)
{
return1;
}
else
{
return0;
}
}
//---------------------------向DSB18B20写入1位--------------------//
voidwrite_bit(unsignedcharbitval)
{
DQ=0;
delay_18b20(0);//主机在大于1us小于15us之内写数据
if(bitval)
{
DQ=1;
}
delay_18b20(9);//DS18B20在15us到60us内采样数据
DQ=1;
}
//--------------------------从DS18B20读出1个字节------------------//
unsignedcharread_byte(void)
{
uchari;
ucharvalue=0;
for(i=0;i<8;i++)
{
if(read_bit())
{
value|=(0x01<
}
delay_18b20(9);//读时序至少60us
}
return(value);
}
//--------------------------------向DS18B20写入1个字节-----------//
voidwrite_byte(ucharval)
{
uchari;
uchartemp;
for(i=0;i<8;i++)//从LSB开始写入,每次写1位
{
temp=val>>i;
temp&=0x01;
write_bit(temp);
}
}
//-------------------------读取温度子程序------------------------//
uintget_temperature(void)
{
uchartempture_msb;
uchartempture_lsb;
uinttemperature=0;
ow_reset();//发送复位信号
delay_18b20(20);
write_byte(0xcc);//跳过ROM
write_byte(0x44);//发送转换温度命令
ow_reset();
delay_18b20(14);
write_byte(0xcc);
write_byte(0xBE);
tempture_lsb=read_byte();
tempture_msb=read_byte();
ow_reset();
temperature|=tempture_msb;
temperature<<=8;
temperature|=tempture_lsb;
returntemperature;
}
//---------------------------------------------------------
voiddelay(unsignedchari)//延时子程序
{
while(--i);
}
//---------------------------------------------------------
unsignedcharlc_read(void)//读液晶命令口子程序
{
unsignedchara;
delay(100);
a=CR;
return(a);
}
//---------------------------------------------------------
voidreadbf(void)//读液晶忙子程序
{
while(flag)
{
flag=(bit)(lc_read()&0x80);
}
}
//--------------------------------------------------------
voidlc_write(unsignedchara)//写液晶命令子程序
{
delay(20);
CW=a;
delay(20);
}
//--------------------------------------------------------
voidld_write(unsignedchara)//写液晶数据子程序
{
delay(20);
DW=a;
delay(20);
}
//---------------------------------------------------------
voidwriteword(unsignedcharcode*s)//写字符串子程序
{
w