logo资料库

基于单片机的管道腐蚀度电流检测表设计.pdf

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
基于单片机的管道腐蚀度电流检测表设计 基于单片机的管道腐蚀度电流检测表设计 引言   本文介绍了这样一种腐蚀仪:目的是监测野外输油管道腐蚀度。输油管通道的腐蚀程度直接影响到石 油的生产,如果发现不及时,将会发生安全事故,从而引起经济损失和人员损失,因此,对输油管道的腐蚀度 监测是必须的。本系统中,可以通过检测管道里的微电流,然后通过输入经验参数来换算出管道当前的腐蚀 度,绘制出腐蚀度变化曲线图,以便使用者直观地实时地了解到输油管道的腐蚀变化情况。   1 总体方案设 计   1.1 设计总体构成方案   设计主要由两个部分组成:下位机和上位机。下位机以单片机为核心,通过 程序控制来采集电流的数据,并进行相应的处理,最后显示,并将有关数据存储到IC卡。上位机则是通过计算 机与Q   引言引言   本文介绍了这样一种腐蚀仪:目的是监测野外输油管道腐蚀度。输油管通道的腐蚀程度直接影响到石油的生产,如果发现 不及时,将会发生安全事故,从而引起经济损失和人员损失,因此,对输油管道的腐蚀度监测是必须的。本系统中,可以通过 检测管道里的微电流,然后通过输入经验参数来换算出管道当前的腐蚀度,绘制出腐蚀度变化曲线图,以便使用者直观地实时 地了解到输油管道的腐蚀变化情况。   1 总体方案设计 总体方案设计   1.1 设计总体构成方案 设计总体构成方案   设计主要由两个部分组成:下位机和上位机。下位机以单片机为核心,通过程序控制来采集电流的数据,并进行相应的处 理,最后显示,并将有关数据存储到IC卡。上位机则是通过计算机与Q系列接触式IC卡读写器之间进行的串口通信,将IC卡里 的数据导入计算机。   图1为其下位机系统框图。   图2为其上位机系统的系统框图。 图1 下位机系统框图   1.2 下位机电路的设计 下位机电路的设计 图2 上位机系统框图
  本系统的设计过程中,主要元件包括12位并行模/数转换芯片AD1674、扩展多功能接口芯片8155、时钟日历芯片 DS12887、AT89C52单片机。   放大芯片采用了AD524放大器。腐蚀电流的取值范围通常在0uA~100uA之间,出于这一点考虑,选取固定增益值 GAIN=1000,放大后的电流量满足AD1674的输入端要求。   模拟电流量通过AD1674后换算成对应的数字量。本系统中AD1674与AT89C52的硬件接口电路如图3,采用+12V、-12V 双电源供电,单极输入方式,模拟量从10VIN输入。其中CS接GAL16V8的18号管脚,它的启动地址为4000H,高八位地址为 4002H,低八位地址为4003H。转换结束信号STS接到INT0上,AT89C52的读写信号W/R、RD通过与非门接到AD1674的操作 使能端CE来控制AD1674的读/转换操作。可用中断方式,也可用查询方式。本系统中采用查询方式,其流程如图4所示。 图3 AD1674与AT89C52的硬件接口电路 图4 AD1674转换流程图   其对应的C51语言程序如下:   #define ADSEL XBYTE[0x4000] //AD1674相关定义   #define HIGH_READ XBYTE[0x4002]   #define LOW_READ XBYTE[0x4003]无忧   unsigned int ad1674()
  { uchar high,low,j=0;   unsigned int ad_value1;   unsigned int ad_value2,ad[20],sum=0;   for(j=0;j<10;j++)   { ADSEL="0x00"; //启动12位转换   while(STS==1) ; //等待AD转换完毕   high="HIGH"_READ; //读高八位数据   low="LOW"_READ; //读低四位数据   low》=4;   ad_value1=high*256+low; //合并12位二进制数为十进制数   ad_value2=ad_value1*0.0002442*10;   //1/0XFFF=0.0002442,这里取单位为mA级   ad[j]=ad_value2;   }   for(j=0;j<10;j++) sum+=ad[j]; //对10次采集值求平均值   sum/=10;   return (sum);   }   DS12887的MOT接GND,即选用Intel工作模式。其读写允许输入脚DS/RD、R/W分别与AT89C52的读写信号相接。 它的复用地址数据总线AD0-AD7接AT89C52的P0.0-P0.7,片选输入CS接GAL16V8的15号管脚,它的命令寄存器地址为:分- 5002H,小时-5004H,星期-5006H,日-5007H,月-5008H,年-5009H,寄存器A-500ah,B-500bh,C-500ch,D-500dH,不 掉电数据存储器为:500EH-507FH。RESET直接接VCC,保证DSI2C887在掉电时,其内部控制寄存器不受影响。   液晶显示器NS1602,它能显示16字符X2行的内容。系统运用的是间接访问方式8位数据总线接口电路。其3个控制信号 RS、R/W、E分别与AT89C52的P3.3、P3.4、P3.5口相接,8位数据信号接8155的PB端口。对液晶显示器的操作要严格遵守 LCD1602的接口时序。其操作分两类:写指令代码,写显示数据。两者的区别取决于RS,RS=0时访问命令寄存器,RS=1时 访问数据寄存器。另外,对LCD的初始化工作是非常重要的,包括清屏、数据格式设置、显示器特性设置、显示地址设置等。   键盘输入采用4×4键盘,其中键盘行线接P1.0-P1.3,输出接地信号;键盘列线接P1.4-P1.7,输入回馈信号,来检测按键是 否按下。键盘是非编码键盘,要通过软件编程来识别键盘。键盘输入信息的主要过程是:判断是否有键按下,扫描确定按下的 是哪一个键;把此键代表的信息翻译成计算机所能识别的代码。   由于IO口不够用,外加一片扩展多功能接口芯片8155。其片选端接GAL16V8的14号管脚,IO/M端接地址A8,8155的命 令口地址为2100H,A口地址为2101H,B口地址为2102H,C口地址为2103H。8155的PB口为LCD的数据口。   1.3 上位机电路的设计 上位机电路的设计   利用接触式IC卡读写器跟计算机之间进行串口通信将IC卡里的数据导入计算机。读写器提供了性能完善、可靠的接口函数 库,在用VB编程时可直接运用这些函数。   首先要调用通讯口初始化函数IC_InitComm(Port)来检测串口,再设置卡型,成功后输入页码就可读入该页的数据了。 读入的数据可通过保存控件保存到指定的路径下。程序退出之前要执行IC_ExitComm()函数关闭串口释放串口设备句柄否 则再次初始化串口将出错。   2 数据的串行存储 数据的串行存储   2.1 I2C总线通信原理 总线通信原理   I2C总线是由数据线SDA和时钟SCL构成的串行总线,SDA总线上的数据仅能在SCL为低电平时改变,每一个SCL周期表 示传送一位串行码。若SCL在高电平期间,SDA由高转低,表示“开始”状态,提示一个通信进程的激活。而SDA由低转高,表 示“停止”状态,该状态终止所有通信。所有地址和数据均以8位串行码为数据单位输入输出,总线上任何接收设备必需在接收 到8位串行码后,将SDA总线置1位低电平以确认它成功地收到一个字节数据。写操作需在“开始”状态后, 发出一个8位的控制 及器件地址码并得到确认,再发出一个8位或16位数据码地址并在被确认后随时钟不断滚动输出8位数据码,直至“停止”状态发 生。
  2.2 I2C总线的编程实现 总线的编程实现   本系统中是用P3.0和P3.1分别作为SDA和SCL信号,单片机所用晶体振荡器的频率为12MHz。当无卡插入时开关闭 合,PC0为低电平,当有卡插入时开关断开,PC0为拉为高电平。每个机器周期为1μs,设计可根据I2C总线的工作时序用软 件模拟I2C总线产生起始位、停止位以及发送字节。   3 结语结语   一些国外生产的进口机械电流测量表,价格通常在人民币一万元以上。而本文设计的以AT89C52单片机为核心处理器设 计的防腐监测仪,只需要人民币几百元的成本,经济效益极高,而且能将腐蚀度相关数据存储自动化。将它与传统的机械电流 测量表一比,也很方便简单,甚至无需专门的工作人员来记录相关数据,实现系统的全自动化。本设计还利用液晶屏显示,使 其体积更小巧。本设计将有效减少石油管道事故,并降低由此带来的经济和人员损失。 参考文献: 参考文献 [1]. AD1674 datasheet http://www.dzsc.com/datasheet/AD1674_121105.html. [2]. DS12887 datasheet http://www.dzsc.com/datasheet/DS12887_1076577.html. [3]. AT89C52 datasheet http://www.dzsc.com/datasheet/AT89C52_1064535.html. [4]. AD524 datasheet http://www.dzsc.com/datasheet/AD524_121804.html. [5]. GAL16V8 datasheet http://www.dzsc.com/datasheet/GAL16V8_345888.html.
分享到:
收藏