《无线传感器网络-结题.ppt》由会员分享,可在线阅读,更多相关《无线传感器网络-结题.ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、无线传感无线传感器网络器网络节点的能源节点的能源模块和低功耗管理模块和低功耗管理结题报告一、无线传感器网络节点的电源供应及解决思路二、该项目的思路及具体方案三、实施结果无线传感器无线传感器网络网络节点的能源模块节点的能源模块和低功耗管理和低功耗管理无线传感器网络节点的电源供应及无线传感器网络节点的电源供应及解决思路解决思路首先,无线传感器节点多是布置在人能难轻易到达的地方。其次,无线传感器节点放置点一般的环境都很恶劣。再次,无线传感器节点一般都是长期不定时的监测。综上,无线传感器节点要长期处于恶劣环境的监测环境下,所以就必须解决其能源的连续供应。监测应用对传感器节点能源提供技术的要求体积小易于
2、安放适应性强电压稳定节点所需电源需求根据指导老师提出的需求:2000mAh容量锂电池3.3V5V输出功率400mA*3.7V工作时间每天0.42.4小时在野外为环境监测节点供电解决办法解决办法我们的方案我们的方案:用太阳能作为初始能源,在光强足够的情况下对可充电电池进行充电,当光照较弱或无阳光状态下利用电池提供能源需求。太阳能电板5V稳压充电管理1充电管理2电池组1电池组3电池组23V继电器3V继电器3V继电器3.3V和5V输出单片机液晶和按键比较器为什么选择锂电池锂离子电池能量密度大,平均输出电压高。自放电小,好的电池,每月在2%以下(可恢复)。没有记忆效应。工作温度范围宽为-2060。循环
3、性能优越、可快速充放电、充电效率高达100%,而且输出功率大。使用寿命长。不含有毒有害物质,被称为绿色电池。缺点:价格贵、充放电要求高锂离子电池标称电压容量-1300mAh标称电压-3.7V最高电压-4.2V3组每组2片采用并联共6片太阳能电板的选择单晶硅太阳能电池多晶硅太阳能电池非晶硅太阳能电池多元化合物电池太阳能电池板尺寸-34*28cm峰值电压-20V峰值功率-10W太阳能对锂电池充电的特点一、锂离子电池不可过充,要保证终止电压精度在1%内二、充电电流限制在0.25C-1C之间(C为电池容量)三、充电过程中电池温度不可过高四、光照的朝向以及强度不断变化,输出电流会变化充电曲线充电管理充电
4、管理CN-3063是一款太阳能给锂电池充电的专用芯片,最大功率跟踪太阳能电池板等效输出电阻=充电电路输入阻抗=输出功率最大(最大功率转移定理)1、横电压法2、爬山法3、导纳微分法采取办法结合结合CN3063最大充电电流可调的特点在光照较强最大充电电流可调的特点在光照较强时,调整其充电限制电流,测量输出电流和电压,时,调整其充电限制电流,测量输出电流和电压,当其乘积最大时,即默认为最大功率点当其乘积最大时,即默认为最大功率点 典型测试数据:典型测试数据:(温度温度30摄氏度,天气晴朗无云,下午摄氏度,天气晴朗无云,下午13:0015:00)限制电流限制电流 电压输出电压输出 电流输出电流输出 充
5、电功率充电功率 400mA 4.36v 400mA 1.744w 500mA 4.45v 500mA 2.225w 600mA 4.45v 530mA 2.359w 800mA 4.43v 510mA 2.259w放电管理放电管理主要由单片机配合外围电路完成完成主要功能:主要功能:-电压检测,通过单片机自带电压检测,通过单片机自带AD完成(阈值为完成(阈值为3.5V)-电池切换,通过电池切换,通过3V继电器完成继电器完成-定时功能,通过单片机定时器控制放电时间定时功能,通过单片机定时器控制放电时间-人机交互,放电时间可设置,通过液晶按键及人机交互,放电时间可设置,通过液晶按键及EEROM完成完
6、成单片机软件#includeinclude#defineuintunsignedint#defineucharunsignedchar#defineulongunsignedlongsbiten=P45;sbitrd=P44;sbitrw=P27;sbitkey1=P33;sbitkey2=P34;sbitkey3=P35;sbitkey4=P36;sbitrelay1=P20;sbitrelay2=P21;sbitrelay3=P22;bitsym,sign;ucharopen_time=0,shut_time=0,timer0_open,timer0_shut,timer0_num,tim
7、er0_sec;uinttime1,time2;floatbatter2,batter3;uchartotal=0;uintcount;/*延时程序*/voiddelay(ucharz)ucharx,y;for(x=z;x0;x-)for(y=110;y0;y-);/*向1602中写命令*/voidwrite_com(ucharadd)rw=0;en=0;rd=0;P0=add;delay(5);en=1;delay(5);en=0;/*初始化1602*/voidinit_1602()write_com(0 x38);write_com(0 x0c);write_com(0 x06);writ
8、e_com(0 x01);/*向1602中写单个数据*/voidwrite_dat(uchardat)rw=0;en=0;rd=1;P0=dat;delay(5);en=1;delay(5);en=0;/*向1602中写字符串数据*/voidwrite_string(uchar*p)while(*p!=0)write_dat(*p);p+;/*打开IAP*/voidopen_iap()IAP_CONTR=0 x82;/*关闭IAP*/voidclose_iap()IAP_CONTR=0 x00;IAP_ADDRH=0 xff;IAP_ADDRL=0 xff;/*读EEPROM*/ucharre
9、ad_eeprom(uintadd)IAP_CMD=0 x01;IAP_ADDRH=(add&0 xff00)8;IAP_ADDRL=add&0 x00ff;IAP_TRIG=0 x5A;IAP_TRIG=0 xA5;returnIAP_DATA;/*写EEPROM*/voidwrite_eeprom(uintadd,ucharwrite_data)IAP_CMD=0 x02;IAP_ADDRH=(add&0 xff00)8;IAP_ADDRL=add&0 x00ff;IAP_DATA=write_data;IAP_TRIG=0 x5A;IAP_TRIG=0 xA5;/*擦除EEPROM整个扇
10、区*/voidclean_all_eeprom(uintadd)IAP_CMD=0 x03;IAP_ADDRH=(add&0 xff00)8;IAP_ADDRL=add&0 x00ff;IAP_TRIG=0 x5A;IAP_TRIG=0 xA5;/*擦除EEPROMR任意单元*/voidclean_chose_eeprom(uintadd)ucharxdataeeprom512=0;uinttemp,num,i;temp=(uint)(add/512)*512);num=add%512;for(i=0;i512;i+)eepromi=read_eeprom(temp+i);clean_all_
11、eeprom(temp);eepromnum=0 xff;for(i=0;i512;i+)write_eeprom(temp+i,eepromi);/*开启AD转换电源*/voidADC_Power_On()ADC_CONTR|=0 x80;delay(5);/必要的延时/*取AD结果函数,它是十位AD转换,每十次平均,最后取低八位作为AD采样数据*/uintget_ad_result()uintq=0,result,high,low,real_result;ucharmark,i,ad_high,ad_low;for(i=0;i10;i+)mark=0;ADC_RES=0;/高八位数据清零,
12、STC12C5A60S2AD数据寄存名与STC12C54系列不同ADC_RESL=0;/低两位清零ADC_CONTR|=0 x08;/启动AD转换while(!mark)/判断AD转换是否完成mark=0 x10;mark&=ADC_CONTR;ADC_CONTR&=0 xe7;ad_high=ADC_RES;ad_low=ADC_RESL;high=(uint)ad_high;low=(uint)ad_low;real_result=(high=99)open_time=0;display_charging_time(0 x80+0 x05,total,open_time);open_iap
13、();clean_chose_eeprom(0 x0002);write_eeprom(0 x0002,open_time);close_iap();if(total=2)shut_time+;if(shut_time=99)shut_time=0;display_charging_time(0 x80+0 x45,total,shut_time);open_iap();clean_chose_eeprom(0 x0001);write_eeprom(0 x0001,shut_time);close_iap();while(!key2);if(key3=0)delay(10);if(key3=
14、0)if(total=1)open_time-;if(open_time=0)open_time=99;display_charging_time(0 x80+0 x05,total,open_time);open_iap();clean_chose_eeprom(0 x0002);write_eeprom(0 x0002,open_time);close_iap();if(total=2)shut_time-;if(shut_time=0)shut_time=99;display_charging_time(0 x80+0 x45,total,shut_time);open_iap();cl
15、ean_chose_eeprom(0 x0001);write_eeprom(0 x0001,shut_time);close_iap();while(!key3);voidINT0()interrupt0_nop_();_nop_();_nop_();_nop_();voidtimer0()interrupt3TH0=(65536-45872)/256;TL0=(65536-45872)%256;timer0_num+;if(timer0_num=20)timer0_num=0;timer0_sec+;open_iap();timer0_shut=read_eeprom(0 x0001);t
16、imer0_open=read_eeprom(0 x0002);close_iap();time1=timer0_open*60;time2=(timer0_open+timer0_shut)*60;batter2=AD_sampling(0 x02,0 xe1);_nop_();_nop_();_nop_();_nop_();batter3=AD_sampling(0 x20,0 xe5);if(timer0_secbatter3&batter21.7)relay2=0;relay3=1;relay1=0;if(batter3batter2&batter31.7)relay2=1;relay
17、3=0;relay1=1;if(batter21.7&batter3time2)timer0_sec=0;功耗一览以上以上为所有器件及模所有器件及模拟用用电器的功耗,由于不是所有元件同器的功耗,由于不是所有元件同时工作工作且放且放电时间可可调;再者,功耗分;再者,功耗分为充充电损耗与放耗与放电损耗两部分,关耗两部分,关注的主要是放注的主要是放电损耗列出几耗列出几组典型功耗(典型功耗(负载:led灯灯&万年万年历)放放电时 关关闭时 76mA*3.7V 5mA*3.7v系统持持续能力每天工作总时间为0.42.4小时,取中间值1.4小时,自持能力计算以晴天与阴雨天气的比例衡量其大小。电池由3.5V充电至4.1V4-5小时(天气为晴天,可偶尔多云,)由4.1V放电至3.5V10小时32分(用电器为led和万年历,功耗约400mA)综上最大持续能力为综上最大持续能力为1/6.5主要的不足一、电池切换原件继电器功耗较大,影响了持续能力,应更换为其他原件二、对太阳能电池充电过程研究不透彻,充电效率有提升空间三、电源设计应更加整体化关于节点的低功耗管理电路原理图