系统网络图如图1所示。本系统的上位机采用PII微机,通过MODEM←→交换网←→MODEM与作为下位机的单片机系统相连接。电力传感器采集的数据信号输入单片机系统,经软件程序处理后由异步收发器8251控制MODEM自动拨号,待上位机响应后发出数据,上位机通过MODEM收到数据后即可进行数据表格或图形处理,这就完成了远程数据采集全过程。上位机可通过MODEM分时对多个下位单片机系统进行巡回控制检测。
![](http://www.21ic.com/d/file/201106/ae3c5c603bbc874efea6dd184930a7ed.jpg)
单片机系统硬件电路见图2。它主要由单片机89C51和异步/同步收发控制器芯片组成,在此,8251作为异步收发器使用。其中,COM8046为可程控专用时钟发生器,可同时为89C51提供时钟信号。8251所需的接收时钟RXC和发送时钟TXC的信号也由其提供。
![](http://www.21ic.com/d/file/201106/141961a156a43a6bbcc59612344c7e8f.jpg)
由于8251的输入输出为TTL电平,故需采用串行收发驱动器进行电平转换和驱动,本系统采用较常用的MC1488和MC1489芯片。RS-232为标准的9针接口,可与任一标准外置式MODEM接口相连。
对MODEM的性能要求为:有电话号码参数存储器;有自动拨号功能、自动应答功能;可进行速度缓冲和流量控制;采用MNP5/V.42bis数据压缩方式;采用V4.2差错控制协议/MNP 2-4纠错协议;速率大于14.4kbps;选择可与美国Hayes系列兼容的标准产品。
由于作为交换网媒介的电话线不可避免的会有线路干扰,故作为两端点的MODEM须采用相应的抗干扰及差错控制技术,同时线路传输速率不宜太高,本系统采用1200dps的波特率。
3 软件设计
单片机系统的软件设计主要由8251初始化和数据传输两部分组成。其程序流程图分别见图3和图4。
![](http://www.21ic.com/d/file/201106/031ab3a0c6d20ede1fc0c46a19e12eb8.jpg)
![](http://www.21ic.com/d/file/201106/ad28f95d6d0f8913a9b0c133a079d223.jpg)
8251初始化设定为:工作于异步工作方式;波特率为1200dps;数据长度为8位,一个停止位;采用偶校验;DTR和RTS信号有效。
对MODEM的控制由DSR确定,当DSR有效时,先复位MODEM,再发指令使MODEM自动拨号,在DSR信号保持有效的状态下与上位机进行数据传输。
数据传输程序中一组存储单元存放待发送数据(即传感器输入转换后的数据,也可以是扩展了键盘系统的手动输入数据),发送数据的同时也将校验和数据发出。发送数据后检测发送寄存器是否为零,若为零则说明数据发送出去了。每发送一个数据后延时等待上位机返回信号,若不正确,则需重发;若正确,再续发下一数据,直到数据发完为止。
4 结束语
用单片机控制MODEM进行远程数据传输,获得了良好效果,解决了局域网专线不能达到的远地点的数据交换难题,特别适于偏远地区,如企业远地点的码头、仓库、高塔的巡检巡测。
该系统可在此硬件原理基础上进行扩展,即可增加显示、键输入和单片机的输出控制、报警等功能,并可通过键功能转换,实现远程键输入数据和参数设置等功能,以满足一些特殊需求。
若改变不同的传感方式,即可广泛应用于工、农业及社会上的其它各类场合,因此,本系统有着广阔的市场前景。