基于MSP430低功耗故障指示器的研究
2017-05-30杜凯马倩张瑾李玉龙李玉斌
杜凯 马倩 张瑾 李玉龙 李玉斌
DOI:10.19392/j.cnki.16717341.201714185
摘要:本文针对电力行业标准规定的采用电池供电的故障指示器功耗低、使用寿命长的要求,进行了低功耗技术的研究。首先介绍了低功耗的重要性以及功耗产生的来源和特点,然后从故障指示器的硬件和软件设计两方面阐述了降低功耗的方法和注意点,最后展望了低功耗故障指示器的未来发展前景。
关键词:MSP430;低功耗;故障指示器
电力线路故障指示器起源于二十世纪八十年代的德国,发明它的目的是为了指示电力线路短路电流流过的途径,帮助人们查找到故障点。我国从九十年代开始引进和学习国外短路指示器的研制技术,随着配电自动化建设不断发展,故障指示器以其快速确定线路故障位置被广泛应用。通过故障指示器技术能够大大减少寻找故障点的时间,有利于快速排除故障,恢复正常供电,提高供电可靠性。因此为了最大化利用故障指示器的优势,延长其使用寿命变成了问题的关键。
供电是故障指示器运行的基础,针对电池供电型的故障指示器其寿命是有限的。鉴于锂电池技术的缓慢发展步伐,当务之急是通过限制功耗来实现最佳电池使用寿命,于是低功耗便成了设计的关键。低功耗设计的重要性不仅仅是省电,同时降低了电源模块和散热模块的成本,使产品小型化;减少了电磁辐射和热噪声,降低了系统的实现难度;随着设备温度的降低,设备的寿命得以延长。
1 功耗理论分析
系统的低功耗设计,离不开低功耗的集成电路。CMOS集成电路以低功耗、速度快、抗干扰能力强、集成度高等众多优点,已成为当前大规模集成电路的主流工艺技术。以反相器为例,如图1所示反相器的等效电路图,COMS电路中的功耗是由三部分构成的,如公式(1)所示。
PTotal=PDynamic+PShort+PLeakage(1)
其中PDynamic是电路翻转时产生的动态功耗;PShort是P管和N管同时导通时产生的短路功耗;PLeakage是由扩散区和衬底之间的反向偏置漏电流引起的静态电流。
静态功耗:COMS在静态时,P、N管只有一个导通,由于没有VDD到GND的直流通路,所以CMOS静态功耗应当等于零。但在实际中,由于扩散区和衬底形成的PN结上村存在反向漏電流,产生电路的静态功耗,如公式(2)所示。
PLeakage=∑n(反向电流Il)×(电压Vdd)(2)
其中:n为器件个数。
动态功耗:CMOS电路在“0”和“1”跳变过程中,会形成一条从Vdd通过P管网络和负载电容到地的电流Id对负载电容进行充电,产生动态功耗,如公式(3)所示。
PDynamic=KCLV2ddf(3)
其中:K为单位时间内平均跳跃个数;f为工作时钟频率;
短路功耗:CMOS电路在“0”和“1”的转换过程中,若输入波形为非理想波形时,反相器处于输入波形的上升沿和下降沿的瞬间,P、N管会同时导通,产生一个由Vdd到Vss窄脉冲电流,从而引起功耗。
通常情况下静态功耗占总功耗的1%以下,可以忽略不计,但如果整个系统长时间处于休眠状态,这部分功耗需要进行考虑。短路功耗对于转换时间非常短的电路,所占的比例可以很小,但对于一些转换速度较慢的电路可以占到30%左右,平均大约在10%左右。动态功耗占整个功耗的比例大约为70%~90%。
由上述分析可知功耗是有规律可循,从功耗的表达式(1)(2)(3)可看出,在不影响电路性能的前提下,功耗主要取决于3个因素:工作电压、工作频率、负载电容。因此功耗优化主要从减小Vdd、f和CL三方面着手。
2 故障指示器低功耗设计
2.1 微控制器的选择
一种产品的设计从微控制器选择入手,衡量微控制器的指标从CPU的性能和功耗、供电电压和工作频率、总线宽度,低功耗选择原则:够用即可,尽量选择总线宽度小,供电电压低,工作时钟慢的。TI公司的MSP430系列是一个特别强超低功耗的单片机品种,其宽范围的供电电压、高度灵活的时钟系统、多种低功耗模式、即时唤醒以及智能的全自动外设不仅可以实现真正的超低耗优化,同时还能显著延长电池寿命。
基于故障指示器的设计选取了MSP430F5326单片机,其供电电压1.8V~3.6V,CPU采用了16位精简指令系统,集成有16位寄存器和常数发生器,发挥了最高的代码效率。拥有一种活动模式和六种低功耗模式,采用数字控制振荡器(DCO),使得从低功耗模式到唤醒模式的典型转换时间3.5us,使得软件处理上更加灵活,缩短程序运行时间,达到降低功耗的目的。
2.2 系统框架设计
故障指示器作为配电线路故障定位的有效工作,通过实时采样线路负载电流对线路故障进行检测,一旦有故障发生,立即通过无线射频的方式将故障信息发送给上级系统,同时本地翻牌并控制的LED闪烁。加上MSP430集成片内RAM、Flash、ADC等,需要的外围设备很少,选择静态功耗很小的外围设备更有效的降低系统的整体功耗,故障指示器的系统框图如图2所示。
2.3 功耗优化措施
2.3.1 时钟频率优化
MSP430F5326单片机有三个时钟模块: ACLK、MCLK、SMCLK,有五个时钟源:XT1CLK、XT2CLK、VLOCLK、REFCLK、DCOCLK,其中XT1CLK是外部低頻时钟,XT2CLK高频时钟,VLOCLK是片内低频时钟,REFCLK是片内低频时钟,DCOCLK是片内数字控制振荡器。三个时钟模块的工作频率由以上五种时钟源通过软件进行配置。如前所述,系统时钟对于功耗大小有非常明显的影响。除了着重于满足性能的需求外,还必须考虑如何动态地设置时钟来达到功率的最大程度节约。结合故障指示器的工作模式和功耗考虑,对时钟源的选择进行了试验研究,最终采取以XT1CLK32.768KHz经过分频或者倍频的方式提供给系统的各个模块,比如经过分频提供给采样回路的工作频率是400Hz,经过倍频提供给CPU的工作频率为1MHz等,此种配置下达到模块时钟独立化,在满足各自性能的同时又能降低功耗。
除了灵活的时钟系统,MSP430还具备7种不同的工作模式,活动模式(AM)、低功耗模式LPM0、低功耗模式LPM1 、 低 功 耗 模式 LPM2、待機模式LPM3、休眠模式LPM4、关机模式LPM4.5。选用哪种工作模式,由 CPU 的状态寄存器 SR 中的 SCG0、 SCG1、 OscOff和 CPUOFF 位控制[5]。根據MSP430的用户手册分析出各个工作模式的功耗消耗情况如图3所示,通过图中可以看出微控制器在低功耗模式下工作明显要比活动模式的功耗低,所以在软件设计上尽量保持CPU处于低功耗模式,当需要激活CPU时,通过中断的方式触发CPU进入活动模式,当CPU处理完事务再次恢复到低功耗模式工作。软件控制流程如图3所示。
2.3.2 供电电压优化
根据功耗理论分析可知系统的工作电压是影响功耗的最大因素,在不降低性能的前提下,可尽可能的降低工作电压。MSP430的工作电压本身就要求很低,而且范围比较宽,但为了满足其它外设的工作要求,采取了两节3.6V的ER17335高容量锂亚硫酰氯电池并联的方式供电,并通过DCDC模块实现3.6V转3.3V供单片机使用。
2.3.3 A/D采样优化
故障指示器在实际线路中要实时采集线路的电流值,因此A/D采样和转换需要消耗不少的电量。MSP430内部集成了ADC且功耗本身就低,只需要外围增加A/D采样回路便能完成线路电流的采集。在硬件设计上并没有采用芯片内部提供的基准电压, 而是采用TI的REF3325将3.6V转换为2.5V,REF3325功耗低且受环境的影响小,转换出来的基准电压比较稳定,同时经过测试此种方式的功耗更低。软件设计中使用400Hz作为采样频率,为了减少运行量,每周波采样8点,连续6次DFT作为采样的结果,采样结束后通过中断激活CPU进行数据处理,CPU处理结束后再进入休眠模式。
2.3.4 I/O端口控制优化
MSP430F5326芯片拥有65个引脚,由于故障指示器的特殊功能要求,基本有一半的引脚都用不上,不用的I/O引脚悬空会使外界干扰形成反复振荡的输入信号,造成电量的浪费。所以将不用的I/O引脚要设置成输出。
2.3.5 无线模块优化
故障指示器会根据上级系统的定时总召唤上传数据,或者发生故障后主动将故障信息上报给上级系统,而两者之间是通过无线射频的方式通信,降低通信的动态功耗以及无线模块的静态功耗是研究方向。相对于传统的CC1101芯片,选取了更低功耗的SX1212射频芯片,其采用高效的循环交织纠检错编码,使抗干扰和灵敏度都大大提高,模块电压范围为2.1~36V,由电池电压3.6V经过DCDC模块转换3.3V供电,在接收状态仅仅消耗5.5mA,有四种工作模式:正常模式、唤醒模式、省电模式、休眠模式,在1SEC周期轮询唤醒省电模式下,接收仅仅消耗不到20uA。在软件处理上保持模块大部分时间处于省电模式,具体优化过程如下:射频模块初始化完成后,通过设置SX1212的SET_A置1和SET_B置0将模块处于省电模式,当主模块(上级系统中的SX1212射频模块)发送数据,从模块(故障指示器的射频模块)唤醒后接收数据,完成后使能AUX脚将MSP430的MCU唤醒,再将数据输出,MCU接收到数据后,可将从模块切换至正常模式,应答主模块,应答结束后,若后续无数据交换将从模块再次切换至省电模式下,等待下一次的唤醒。
2.3.6 软件运算量优化
程序运算量越大,单位时间内消耗的能量就越多,功耗就越大。复杂的函数运算通过简单函数和数据表格相结合的方式实现,比如开根号函数。当一个大数据需要开根号运算,需要先查找根号对应表中是否存在,若存在,则直接取出开根号后的值;若不存在则进入开根号函数进行运算,运算的结果保存在根号对应表中,以便减轻后期的运算量,让CPU有更多的休眠时间,进而降低功耗。
2.4 实验数据
为了形象直观的监测故障指示器从初始化开始到休眠模式再到活动模式整个过程的功耗情况,同时保证测试的准确性,并没有将万用表调至电流档位直接串联入供电线路,而是使用进口示波器测量串联入供电线路精密电阻两端电压的方法,这样可以测出装置在各个工作模式下电阻两端的电压值,再处于电阻值即可得到各个阶段的工作电流。具体工作电流测试数据如下表所示。
2.5 低功耗设计
为满足指示单元体积设计轻巧、易于安装、降低成本,采用一次性2Ah电池供给。为更好的节约电池,选取MSP430低功耗芯片作为指示单元的控制器,通过软硬件低功耗设计,达到降低功耗的作用。指示单元的CPU绝大部分时间处于休眠状态,最低电流可达到15μA,只有线路发生故障进入故障检测中断才能将其唤醒,此情况下的静态电流小于40μA,中断程序结束后,CPU进入休眠状态保持低功耗模式。按照指示单元最大工作电流40μA算起,指示单元最少在线运行2*1000*1000/(40*24*365)=5.7年,按照平均工作电流25μA,其在线运行时间5.7*40/25=9.12年,这种设计方案指示单元的使用寿命基本可以保证,同时性价比更高。
3 结论
本文设计了一种架空线路故障在线监测系统,阐述了其设计的目的、系统的主要内容和工作原理以及关键技术,通过理论分析和实践证实了该系统适应于架空线路的在线监测和故障定位,有效的解决了故障定位难的问题,同时通过系统主站的可视化界面进一步简化了工作人员的巡检工作,为配电网的日常运行维护和故障抢修提供了重要的数据支持,降低了人为因素造成的损失,缩短了巡线时间,提高了工作效率及供电可靠率。该系统作为一种架空线路配电自动化工程建设,应加以推广市场,促进智能电网建设进一步发展。