引言:
在工业生产和各种科学技术研究过程中,常常要对各种数据进行采集和处理,通常用的采集方式是在PC机或者工控机内安装数据采集卡,例如 A/D卡及RS-422卡、RS-485卡。采集卡易受机箱内环境的影响,以及计算机插槽数量和地址、中断资源的限制,不能挂接很多设备。尤其是在进行油井压裂作业时,因为压裂工作现场比较危险,而又同时需要对压裂时的各种数据进行采集和处理,以便进行远程实时监控,因此利用工控机进行远程数据采集处理,就难以满足远程数据传输和便携的要求。本文探讨一种基于单片机和手提电脑的远程数据采集系统,既可以进行远程数据采集,而且灵活轻便利于携带,同时也减低了设备成本。
1 主要芯片介绍
AT89C52是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes的可反复擦写1000次的Flash只读程序存储器。器件采用ATMEL公司的高密度、非易失性存储技术制造。AT89C52有128 bytes的On-Chip随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,1个6向量两级中断结构,3个16位可编程定时计数器,1个全双工串行通信口,片内时钟振荡器。此外,AT89C52还设计和配置了振荡频率可为0Hz并可通过软件设置的省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器、串行口、外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
AD574是美国模拟数字公司(Analog)推出的单片高速12位逐次比较型A/D转换器,内置双极性电路构成的混合集成转换芯片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容件即可构成一个完整的A/D转换器,其模拟电压输人范围有四种:0- 10V和0-20V,0±5V和0-±10V,数据输出格式为12位和8位可选,本文采用12位数据格式,这样可以提高数据的精度。
MAX485接口芯片是MAXIM公司的一种RS-485芯片,它完成将TTL电平转换为RS-485电平的功能。采用单一电源+5V工作,额定电流为300μA,采用半双工通讯方式,数据传输率高达2.5Mbps。在一条RS-485总线上可以挂接最多32个MAX485收发器。这样可以通过编程利用一台手提电脑通过RS-485总线同时对多套该系统进行数据采集。
2 系统硬件设计
整个采集系统分为数据采集发送端和数据接收端。数据采集发送端主要由AT89C52单片机、AD574A A/D采样芯片、MAX354故障保护模拟开关和MAX485芯片构成,完成多路信号的采集和串行数据的发送功能。数据接收端由一个RS-485电平转 RS-232C电平的电路,以及一台便携式手提电脑构成。数据采集端和发送端通过一条屏蔽的双绞线电缆连接。