基于二进制编码尺的水位测量仪设计*
2014-09-05周武雷
陈 云,周武雷
(黔南民族师范学院物理与电子科学系,贵州 都匀 558000)
基于二进制编码尺的水位测量仪设计*
陈 云,周武雷
(黔南民族师范学院物理与电子科学系,贵州 都匀 558000)
鉴于传统水位测量仪在对数据进行模数转化时产生较大误差,提出了基于二进制编码尺的新型水位测量方法,该测量方法保证了水位检测中水位信息的测量精度.同时采用CAN总线进行数据传输,准确地传输多路数据,保证了水位信息的数字化传输和实时性.
CAN总线;水位传感器;数字传输
中国水资源总量位居世界榜首,然而人均占有的水资源量却仅为世界人均占有量的四分之一,这一形势要求合理地利用水资源.除了要在兴修水利工程、提高全民节水意识等方面做出努力,更重要的是要应用新技术实时准确地掌握各种水情信息,据此做好水资源调度,防患于未然,尽量减少水资源的浪费[1].另外,在汛情指挥、洪水预报、以及保障船舶的安全航行等方面,同样需要实时的掌握水情信息.进行水位测量是人们了解水情信息的关键手段,利用测量的水情来指导工农业的生产,所以设计一个安全可靠的水位监测系统对人们的生活有着很大的影响.
图1 总体设计
传统的水位测量仪在数据通信部分大多数是采用的RS422、RS232和RS485总线来传输.然而RS-232-C接口标准存在很多欠缺之处:RS-232-C的电气接口电路采取单端通讯,其发送与接收电平差只有2~3V,共模抑制能力较差,抗噪性能弱,再加上信号线之间存在分布电容,其传送距离最大为约15 m,最高数据传输速率为20kb/s.RS422、RS485总线的数据传输率理论上最高可达10 Mbps,传输距离可达1 200 m左右,它们所采取的差分接收形式的抗噪性也不错,但是RS422、RS232、RS485总线它们都存在主设备与从设备之分:即存在一个Master,其余的设备为Salve,而且Salve之间是不能够互相通信的,这样就使总线工作效率大大降低且增加系统的复杂性.控制器局域网(CAN)属于现场总线,是目前现场总线中应用比较广泛的一种,CAN控制器可以以多种方式进行工作,没有主/从设备之分[2];且CAN协议定义的是对所要通信的数据进行编码,这样可使不同的节点设备同时接收到相同的编码数据,这样就使得CAN总线的各节点设备之间可以进行实时有效的数据通信,这样方便构成一种冗余结构方式,使整个系统更加灵活可靠.
笔者设计一种二进制编码尺的水位传感器,并采用CAN总线进行数据的数字化传输.水位信息由水位传感器测得,然后经下位机进行处理,最后通过CAN总线进行传输,直接用电脑接收水位信息并通过界面显示水位信息.系统设计方案如图1所示.
1 硬件系统设计
1.1水位传感器
水位传感器的核心结构是一个光电传感器RPR220和一个垂直放置于水中的黑白刻度尺.根据RPR220的工作特性可以确定编码刻度尺在不同时刻液面处所对应的颜色,然后在根据编码规则来确定液面高度[3].文中所使用的光电传感器RPR220的主要构成如图2所示,该结构包括1个Q(光电三极管)和1个D1(砷化镓红外发光二极管).当RPR220中的D1(砷化镓红外发光二极管)发射的红外光遇到黑色物质时,红外光被吸收,被反射回来的光线很弱,导致此时光电三极管截止,此时输出高电平;若遇到白色物体,则能够反射回强光,此时光电三极管由于受到光照射导通而输出低电平.
图2 RPR220的结构
图3 水位传感器整体结构示意图
二进制编码尺设计结构如图3所示,此处以5位二进制编码尺为例来描述编码尺的工作原理.用5位二进制来反映水位信息,则刻度尺需要从左到右平均分成5列.规定左边为第1列,把第1列尺子从垂直方向平均分为2个部分,将下面部分涂黑,上面部分涂白;第2列从垂直方向均分为4个等份,依照前面的规则,每部分刻度尺轮流涂黑或者涂白;第3列从垂直方向把刻度尺均分为8个部分,从下往上,每部分依次轮流涂黑或涂白;依次类推,到第5列时.尺子从垂直被均分为32个等分,从下往上,每等分轮流涂黑或者涂白.通过安装在图3中所示浮子上的5个RPR220即可反映出液面高度处所对应的每列编码尺的颜色,若在液面处某一列刻度尺的颜色为白色,则RPR220输出低电平,反之输出高电平.5个RPR220就可以同时读出5列二进制编码尺的读数,组成1个5位二进制数,其中最左边RPR220反映的数据信息对应水位数据的最高有效位,最右边则反映的结果则对应水位数据的最低有效位.依次从左到右,由每个RPR220所读出的一个二进制数就是所要测的水位信息.如果最左边传感器的读数为0,则说明此时的水位超过编码尺高度的1/2,接下来可以由第2列尺子进一步精确液面高度,若第2个RPR220的示数也为0,则说明此时水位超过编码尺的3/4,依次往右可以一步步精确水位数据,如果设计一个5列的编码尺可使测量的水位数据精度达到此二进制编码尺子高度的1/32,那么1个16列的编码尺,则可使测量精度达到尺子高度的1/65536.
1.2下位机电路
下位机负责水位信息的采集及其传输,其核心电路如图4所示,CAN收发电路如图5所示.CPU选择LPC11C14,它自带一路CAN,外围电路只需添加1个CAN收发器TJA1050即可.
图4 下位机核心芯片
图5 CAN收发电路
2 软件系统设计
2.1下位机软件设计
其数据采集和发送的流程如图6所示.
图6 数据采集和发送流程
2.2上位机软件设计
为了便于观察结果,文中采用PC机作为上位机来接收水位信息,这样可以直观地显示水位数据信息,PC机上的数据接收与显示界面采用Microsoft Visual C++来编程设计,数据的接收过程如图7所示.
水位显示如图8所示,其中复位按钮可随时将显示的水位信息复位,如果想查看当前的水位信息则只需点击图8中的刷新按钮即可.
图7 数据接收
图8 水位信息显示框图
3 结论
文中采用CAN传输数据,克服了传统水位检测系统采用模拟数据传输的不足,提高了系统的抗干扰能力.并提出了一种新型的水位测量方法,此种水位测量方法中的水位传感器采用光电传感器设计制作的,保证了水位信息在测量中的精度以及传输过程中的数字化的传输要求.
[1] 龚壁建,何国荣,王伟民.三峡多级船阐水力学试验检测与控制[J].长江科学院院报,1999,16(6):35-38.
[2] 饶运涛,邹继军,郑勇云.现场总线CAN原理与应用技术[M].北京:北京航空航天大学出版社,2003.
[3] 陈 云.基于嵌入式平台的船舶水位自动监测系统研究[D].武汉:华中师范大学,2011.
(责任编辑 陈炳权)
WaterMeterBasedonBinaryEncodingDesign
CHEN Yun,ZHOU Wulei
(Physics Department,National Normal College of Qiannan,Duyun 55800,Guizhou China)
In view of the traditional water level measurement in the module of data transformation having larger error,the author designs a new type of water level measurement method based on binary encoding rule which ensures the accuracy and digital transmission in the water level automatic detection.Meanwhile CAN bus is used for data transmission which can achieve accurate transmission of multiplex data,ensuring the digital and linear transimission of water level information.
CAN bus;water-level sensor;digital transmission
1007-2985(2014)01-0042-04
2013-08-26
贵州省教育厅科研创新团队(201329)资助项目;贵州省2013年省级实验教学示范中心(201310)
陈 云(1985-),女,湖北咸宁人,黔南民族师范学院物理与电子科学系讲师,硕士(华中师范大学),主要从事嵌入式系统设计研究;周武雷(1977-) 男,黔南民族师范学院物理与电子科学系副教授,硕士,主要从事材料物理、实验测量研究.
TP391
A
10.3969/j.issn.1007-2985.2014.01.010