MSP430在大量程浮子式液位计中的应用
扫描二维码
随时随地手机看文章
摘要:在对传统浮子式液位计优缺点进行分析的基础上,介绍了采用TI公司MSP430F133单片机改进传统浮子式液位计液位测量的方法,给出了具体电路的设计方法和软件设计注意事项。
关键词:浮子;液位计;单片机;超低功耗
水文测量中最常用的测量终端莫过于液位计,按测量方式大致可分为机械浮子式、光电浮子式、超声波式、激光式、振弦式等多种形式,它们各有优缺点。机械浮子式和光电浮子式都是来用机械齿轮减速产生进位和退位的办法来形成编码,为了产生可靠编码,一般都用格雷码输出,这种液位计的优点是价格相对较低,缺点是机械加工复杂、运行阻力大、使用寿命短;超声波液位计和激光液位计测量精度较高且没有机械部件,故可靠性较高,但使用中发现它对反射目标有一定的要求,受环境因素影响较大,最关键的一点是因为复杂的信号处理电路导致其成本居高不下,目前还难以推广;振弦式液位计主要用于小量程液位的测量。为了用较低的成本完成大量程液位的长期可靠测量,笔者利用MSP430单片机的低功耗特性结合光电液位的绝对位置测量功能设计了一种新型液位计—磁光液位计,现简要介绍如下。
1 机械工作原理
本液位计同普通光电液位计一样有一个光电码盘(如图1所示),码盘白色部分反射光线,而黑色部分吸收光线,图2所示的光耦和图1所示的码盘间距约2mm,并采用圆心安装。光耦随电路板固定在液位计外壳上,液位变化时浮子牵引水位轮转动,安装在同一轴上的码盘也随水位轮作圆周运动,当码盘旋转时,码盘就会吸收或反射来自光耦的光线,从而使8位光耦根据码盘和光耦的相对位置输出8位格雷码编码,传统的光电液位计用一个减速齿轮带动另一个码盘转动从而获得高位编码,而本液位计摒弃了所有的齿轮减速机构,用安装角度为120°的三只干簧管来计算码盘旋转的圈数,当码盘旋转时安装于其上的磁铁依次吸合三只干簧管,根据这一次序就可以判断液位是以液位上升的方向增加圈数还是以液位下降的方向减少圈数。这样一来单圈的绝对位置可以通过码盘的编码得到,而旋转的圈数可以由干簧管的吸合次序得到,综合起来就可以得到液位高程,从而完成液位的测量。
2 MSP430单片机简介
MSP430系列是TI公司的超低功耗单片机,它有多种低功耗模式,在LPM4模式时的典型工作电流仅为0.1μA,并能在6μs内响应外部中断;另外它还有特别宽的工作电压范围:1.8~3.6V,实际使用中发现:常温下即便电源电压为1.2V,该器件仍能全速正常工作。MSP430F133的性能特征见表1。
表1 MSP430F133的性能特征
工作电压 | Icc(全速) | Icc(LPM0) | Icc(LPM2) |
1.8~3.6V | 340μA | 70μA | 17μA |
Icc(LPM3) | Icc(LPM4) | 指令执行时间 | |
1.9μA | 0.1μA | 125ns |
设计时选用一只1F的电容来储存电能,假设加上12V电源后电路充电电流为100mA,充电时间为2s,则按0.5μA(实际放电电流不大于此数据值)放电可持续110小时。因此只要液位测量间隔不大于110小时就能保证单片机在掉电期间正常工作。在本电路中MSP430平时以内部RC振荡器作为主时钟,以钟表晶体振荡器(32768Hz)作为通信时钟,最高通信速率可达9600bps,低功耗LPM4时关闭所有时钟源。
3 电路工作原理
图3所示是本液位计电路的工作原理图,当测量当前液位时,首先由上位控制器给电路加12V电源,此时继电器JD1吸合,一方面由R28、U3组成的稳压电路给电容C46进行恒流限压充电,以补充断电后单片机工作所需电能,另一方面将Wake信号由“0”切换到“1”,唤醒单片机进入全速正常工作状态,通过测量8只光电耦合器电平可得到码盘在一个圆周内的具体位置编码(8bit格雷码),再加上正(反)向旋转的圈数就可以计算出实际液位,也可换算成格雷码输出以兼容其它浮子式液位计,同时还通过485总线按要求的协议输出液位以满足自动测量的要求。6位液晶显示器用于在本地显示液位值,其电源由单片机的口线来提供,目的也是便于在掉电时关闭液晶显示器的电源。
一旦外部+12V电源撤去,Wake信号将消失,单片机立即将口线切换到合适的电平,并进入低功耗状态LPM4,此时CPU的功耗只有0.1μA,码盘上的磁铁随码盘转动,当磁铁转动到三只干簧管附近时,干簧管吸合并立即引起单片机引脚电平的变化,MSP430单片机能在6μs的时间内在低功耗状态响应这一变化,记录下变化过程后又立即回到低功耗状态以最大限度地节省电能。研究中发现,干簧管从吸合状态回到断开状态有一个迟滞过程,正好可以防止液位在某一点轻微波动时使干簧管频繁动作,从而避免单片机退出掉电状态而消耗额外的电能。在电路板上三只干簧管以120°的间隔均匀地分布在同一圆周上,允许液位计以尽可能大的角速度旋转。假定MSP430F133响应并处理一个外围中断的时间(与中断程序复杂程度和时钟速度有关)为200μs,则CPU能够响应的最大角速度为120°/200μs。在笔者的一个制作实例中电路(含干簧管部分)经过了120圈/秒的测试。外围电路除干簧管在吸合状态要吸收3.0V/20M=0.15μA电流外,其余电路均不消耗电流,这样整机待机电流最小0.1μA,最大0.25μA,若电容充满电可保证单片机在掉电后仍能正常工作一个月以上。
由于舍弃了机械减速装置,液位计转动时只需克服两只固定轴承的阻力,因此,大大加强了机械灵活性和可靠性。当传动轮周长为256mm时,液位计的分辨率为1mm,能满足大部分测量要求。图3中采用16位格雷码输出,量程可达65.535m,若用软件将液位分辨率设置为1cm,则输出量程可达655.35m,实际上只要引出线足够多,量程并没有限制,可根据要求做成任意量程的液位计。图3的电路图只是原理示意图,实际应用中还要考虑抗干扰、野外使用的防雷处理等。
液位计的软件设计也非常简单,限于篇幅不多赘述,只需注意的是:在进入LPM4前将口线置成合适的电平,如格雷码输出置成低电平、485接口芯片U10置成低功耗状态、液晶口线和电源置成低电平,以便使口线不消耗电流,从而使整机的低功耗得到保证。
4 结束语
在野外水位自动测量中,为了降低功耗,传感器采用间歇上电方式,由于传感器输出应为绝对量编码,因此在设计时采用很多齿轮变换和凸轮进位,这样做带来了设计的复杂性,并降低了传感器的稳定可靠性。
利用本文所述原理和方法研制出的WZY-Ⅲ型浮子式磁光液位计具有相对量轴角编码器的优点,如精度高、稳定性好、量程大、价格低廉、使用方便等,利用MSP430F133单片机的低功耗特点,使WZY-Ⅲ型浮子式磁光液位计能满足绝对量编码输出的要求。
图3
激光水位计和超声波水位计的分辨率为毫米,但其误差为相对误差,量程稍大时,水位测量的绝对误差甚至可能会超过规范所规定的误差标准(±2cm)。浮子水位计原理简单、误差来源少,为水利部门常用水位测量仪器,但当前只有厘米级分辨率的浮子水位计,用于集水面积较大的水库水位观测时,使水库流量计算过程产生锯齿状变化。因此,研制出毫米级浮子式液位计是水文工作者多年的愿望。
WZY-Ⅲ型浮子式磁光液位计为国内第一只分辨率为毫米的浮子式水位编码器。水位信息自动采集系统中通常使用两个字节表示水位信息,最大可表示65535mm。而对浮子式磁光液位计而言,其量程很大,可满足所有液位测量要求。
经过两年实践证明,WZY-Ⅲ型浮子式磁光液位计不仅降低了浮子式液位计的成本,还大大提高了水位观测精度和仪器可靠性,不失为一个改造绝对量光电编码液位计和替换机械编码液位计的好产品。