污染源监测系统监测子站通信网络转让专利

申请号 : CN200710032559.2

文献号 : CN101262398B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张齐朱宁西田立彬林奎张英彬胡佳

申请人 : 华南理工大学

摘要 :

本发明公开了一种污染源监测系统监测子站通信网络。该网络中各监控单元分别由RS-485收发器、监控器和总线监听检测电路组成,RS-485收发器负责与RS-485总线连接,监控器由MCU芯片为核心组成,第一和第二输入与非门接线组成的基本RS触发器构成总线监听检测电路,由第三与非门组成的反相器和RS-485收发器实现TTL电平和RS-485电平之间的相互转换;在本发明的通信网络中,无论是监测子站数据服务器,还是每个监控单元都可以作为主机主动向监测子站通信网络发送数据。该通信网络信号清晰,对数据碰撞不敏感,通信效率比较高。

权利要求 :

1.一种污染源监测系统监测子站通信网络,包括监测子站数据服务器和多个监控单元,监测子站数据服务器具有上行通信接口和下行通信接口,上行通信接口通过公共通信网络与管理方远程监控软件交换信息,下行通信接口通过RS-485总线与多个监控单元连接;其特征在于,各监控单元分别由RS-485收发器、监控器和总线监听检测电路组成,RS-485收发器负责与RS-485总线连接,监控器以ADuc812MCU芯片为核心组成,第一和第二输入与非门接线组成的基本RS触发器构成总线监听检测电路,由第三与非门组成的反相器和RS-485收发器实现TTL电平和RS-485电平之间的相互转换;监控器的TXD引脚连接反相器的输入端,反相器的输出端连接RS-485收发器的DE、RE端;RS-485收发器的RO输入端连接监控器的RXD引脚,同时连接第二与非门的一个输入端;监控器的P2.1引脚连接第一与非门的一个输入端;监控器的P2.0引脚分别连接第一与非门的输出端和第二与非门的另一输入端;第一与非门的另一个输入端与第二与非门的输出端连接。

2.根据权利要求1所述的一种污染源监测系统监测子站通信网络,其特征在于所述的第一、第二和第三与非门为一片通用高速CMOS门电路74HC00芯片。

3.根据权利要求1所述的一种污染源监测系统监测子站通信网络,其特征在于所述的RS-485收发器为MAX485E型RS-485收发器。

4.根据权利要求1所述的一种污染源监测系统监测子站通信网络,其特征在于:所述通信网络还包括连接在RS-485总线上的上拉电阻和下拉电阻。

说明书 :

污染源监测系统监测子站通信网络

技术领域

[0001] 本发明涉及污染源在线监测系统,特别涉及污染源监测系统监测子站通信网络数据采集控制。

背景技术

[0002] 污染源在线监测系统,通常自上而下由决策层、企业层和监测子站层三个层次组成,各层次具有分布式、集散型、广域化等复杂系统特征,之间通过公共通信网络(Internet、PSTN、GSM/GPRS等)交换数据。但在监测子站层,作为监控单元的大多数水质和污染源在线监测仪,只提供RS-232/RS-485通信接口,故层内通信网络一般并不使用公共通信网络,而采用RS485总线通信网络,由于RS-485总线仅需要一对双绞线即可实现多站联网构成分布式系统,且监控单元简单、价格低廉,对线路要求也不是很高,监测数据服务器和在线监测仪器之间通常使用RS485总线通信网络连接,监测数据服务器作为主机,监控单元作为从机,采集数据和控制命令均由主机分别对各从机发出请求,相应从机响应请求。此种方式实际上是主从架构的计算机系统,整个总线系统上只有一个主机,通信方式也只能以主机轮询的方式进行,从机间交换信息必须由主机代为转发,该方式的优点是信号比较清晰,无数据碰撞,缺点是通信效率比较低,系统的实时性、可靠性较差。
[0003] 监测子站层层内通信网络另一种方式是采用现场总线网络或工业以太网,每个监控单元都要增加一个负责协议解释的专用协议解释芯片,由专用协议解释芯片负责与监控单元本身的MCU接口和控制外部总线接口,并对总线通信协议进行解释,实现多主通信,如LonWorks和CAN总线网络等,申请号为200610134428.0的中国发明专利公开了“一种多主机多从机总线网络”,采用CAN总线驱动器PCA82C250实现的多主机系统。采用现场总线和以太网的优点是显而易见的,由专用协议解释芯片负责总线的接口控制和差错处理,其通信链路稳定可靠,速率较高,系统实时性较高,并且由于每个监控单元本身的MCU只需按专用协议解释芯片的要求与其单独进行数据交换即可实现与外部总线的数据交换,并且实现多主通信,监控单元MCU的软件负担也较小。这种通信网络,虽然简化了监控单元MCU的负担和用户的设计复杂性,但也存在着如下不利之处:(1)专用协议解释芯片价格较高(往往超过很多监控单元本身MCU的价格),对于很多成本控制严格的产品来说,不可能考虑该种通信方式,只能选择其它通信方式;(2)专用协议解释芯片与监控单元MCU的接口一般来说都为并行总线接口方式,而现在的很多监控单元里采用的都是单片运行方式(即监控单元里的MCU本身具备一定的外设功能,不需进行总线扩展),因此采用该种通信方式将导致监控单元内部硬件电路的复杂化,同时将导致监控单元的体积增大(因为要增加MCU的总线扩展电路和该专用协议解释芯片)。(3)各种现场总线具有各自不同的网络协议和软、硬件要求,而且彼此互不兼容,专用协议解释芯片厂商均为国外厂商,部分厂商甚至要求用户与其签定某种协议后才能供给用户协议解释芯片,因此当用户在投入大量的精力和金钱开发完这些总线产品后容易受制于协议芯片厂商,几乎不可能再有其它选择余地;(4)由于总线通信协议已经固定(选定总线类型后,总线通信协议就已固定),并不一定适合于用户的应用需要。发明内客
[0004] 本发明所要解决的技术问题是克服上述现有技术的缺陷,在低成本的RS-485总线通信网络中,通过在每个通信节点增加一个总线监听检测电路,在线检测总线空闲,在RS485总线上实现多主机网络系统,提高通信效率。
[0005] 本发明的目的通过如下技术方案实现:
[0006] 一种污染源监测系统监测子站通信网络,包括监测子站数据服务器和多个监控单元,监测子站数据服务器具有上行通信接口和下行通信接口,上行通信接口通过公共通信网络与管理方远程监控软件交换信息,下行通信接口通过RS-485总线与多个监控单元连接;各监控单元分别由RS-485收发器、监控器和总线监听检测电路组成,RS-485收发器负责与RS-485总线连接,监控器以ADuc812型MCU芯片为核心组成,第一和第二输入与非门接线组成的基本RS触发器构成总线监听检测电路,由第三与非门组成的反相器和RS-485收发器实现TTL电平和RS-485电平之间的相互转换;监控器的TXD引脚连接反相器的输入端,反相器的输出端连接RS-485收发器的DE、RE端;RS-485收发器的RO输入端连接监控器的RXD引脚,同时连接第二与非门的一个输入端;监控器的P2.1引脚连接第一与非门的一个输入端;监控器的P2.0引脚分别连接第一与非门的输出端和第二与非门的另一输入端;第一与非门的另一个输入端与第二与非门的输出端连接。
[0007] 所述监控器为ADuc812型MCU芯片型号。
[0008] 所述的第一、第二和第三与非门为一片通用高速CMOS门电路74HC00芯片。
[0009] 所述的RS-485收发器为MAX485E型RS-485收发器。
[0010] 所述通信网络还包括连接在RS-485总线上的上拉电阻和下拉电阻。
[0011] 本发明提出了一种改进的污染源监测系统监测子站通信网络,监测子站计算机系统架构仍然由监测子站数据服务器和通过RS-485总线连接的若干个监控单元组成,但每个监控单元除监控器、RS-485收发器外,还增加一个总线监听检测电路,用于检测RS-485是否处于空闲状态。监控器通过总线监听检测电路测得RS-485总线处于空闲状态达到一定时间长度,说明可以发送数据,该监控单元向通信总线发送数据包报文,即可获得总线使用权,成为总线上的主机。连接到RS-485总线上的任何一个监控单元都可以通过这种方式主动获得总线使用权,对RS-485总线上的监测子站数据服务器或者其它的监控单元发起通信请求。
[0012] 所述的监测子站数据服务器可以是台式计算机,也可以是32位嵌入式计算机,但需要配置RS-485通信接口。配置RS-485通信接口的方法有:(1)在计算机的ISA或PCI总线扩展槽插入相应RS-485通信网卡;(2)使用RS232转485转换器;(3)采用与监考单元类似的RS-485总线收发器实现。
[0013] 所述的监控单元包括监控器、RS-485收发器和总线监听检测电路。监控器是以8位单片机为核心扩展的嵌入式系统,也可以是16位或者32位的嵌入式系统,监控器的MCU芯片带有串行通信接口-通用异步收发器UART。RS-485收发器的功能是将MCU的串行TTL电平和RS-485差分信号进行双向转换,即在发送端,驱动器将TTL电平信号转换成差分信号输出;在接收端,接收器将差分信号转换成TTL电平。所述的总线监听检测电路,是由2个与非门构成的基本RS触发器组成,使用一片零售价不足1元RMB标准高速CMOS集成电路74HC00即可实现。
[0014] 所述的监控单元中的监控器含有控制软件。监控单元可以接收监测子站数据服务器发来的命令,将测得的污染物排放数据发送到监测子站数据服务器,也可以主动将此数据发送到监测子站数据服务器,后者即为多主机方式。所述的多主机方式的点对点发送数据包的控制软件按照以下步骤进行:
[0015] a)按规定格式组织欲发送的数据包报文,发送次数计数器清0;
[0016] b)从监控器的输出口发一低电平脉冲至总线监听检测电路置“1”输入端,将总线监听检测电路输出置“1”;
[0017] c)在监控器的输入口检测总线监听检测电路的输出是否为“1”,如为“0”,转到b);
[0018] d)启动定时器,定时器的时间长度设为20个Td(传递一位所需时间),等待定时时间到;
[0019] e)定时时间到,在监控器的输入口检测总线监听检测电路的输出是否为“1”,如为“0”,转到b);
[0020] f)发送数据包报文,发送时要求2个字符之间的空闲间隔不得超过2个Td;
[0021] g)定时器的时间长度设为10个Td,等待接收方应答;
[0022] h)收到接收方应答,转向j);
[0023] i)定时时间到,未收到接收方应答,发送次数计数器加1,如发送次数计数器小于3,转向f),否则设置发送错误标志,转向j);
[0024] j)关闭定时器,退出控制程序,结束。
[0025] 上述过程中,可以用固定次数的若干个循环查询替代定时时间,则软件控制更为简单。
[0026] 所述的数据包报文内容至少包括发送方地址码、接收方地址码、控制码、长度码、变长数据体、CRC校验码。
[0027] 所述的监控单元对外发送数据前,需在线检测总线空闲状态,如总线空闲状态超过20个Td(传递一位所需时间)时,表示可以发送,监控单元将按照传输规定发送数据包的相应的全部数据位;发送结束后,在点对点发送时,规定在10个Td内,接收方必须返回相应的应答字节,在10个Td内如无应答,发送方将立即重发,最大重发次数不超过三次;但针对广播命令,如监测子站数据服务器发给各监控单元的参数设置命令,各接收方不需要应答,但广播命令将自动重发三次。
[0028] 本发明的技术方案通过新增的由基本RS触发器组成的总线监听检测电路可检测RS-485总线网络上是否有数据流,RS-485总线网络上任意一个监控单元均可以在任意时刻主动地向网络上其它节点发送信息,而不分主从。如果总线监听检测电路输出为“0”,说明总线正“忙”,不能发送数据;否则说明总线“空闲”,可以开始发送数据。每个监控单元自动监测各种污染物排放总量,当污染物排放总量变化率超过规定值时,才主动将测到的污染物排放数据发送到监测子站数据服务器,有效的压缩了网络总数据流量。该通信网络的优点是信号比较清晰,解决了总线方式下多主机的数据碰撞问题,通信效率比较高。所述的总线监听检测电路,是由2个与非门构成的基本RS触发器组成,使用一片零售价不足1元RMB标准集成电路74HC00即可实现,使得网络构建成本极低。
[0029] 相对于现有技术,本发明具有如下优点和有益效果:
[0030] 在现有的RS-485总线网络上即可实现联网多主机分布式系统,且监控单元硬件简单、价格低廉,使用一片零售价不足1元RMB标准集成电路74HC00即可实现,对线路要求也不是很高。监测数据服务器和在线监测仪器之间使用常用的RS485总线通信网络连接,监测数据服务器作为主机,监控单元也可作为主机,通信过程中各单元互不干扰,可实现网上任意两点间的信息交换,既保障了效率,也使整个系统的线上信号变得较为清楚,信号间的碰撞问题也不会像无主从系统那样复杂。原通信协议无需改变,数据包长度可任意。软件几乎不要做大的改动。

附图说明

[0031] 图1是污染源监测系统结构框图;
[0032] 图2是本发明实例监控器MCU、基本RS触发器和RS-485收发器的电路原理图;
[0033] 图3为异步通信字符传输帧格式。

具体实施方式

[0034] 下面结合附图和实例对本发明作进一步说明。
[0035] 图1是污染源监测系统结构框图,该污染源监测系统监测子站通信网络包括通过监测子站数据服务器和多个监控单元,监测子站数据服务器具有上行通信接口和下行通信接口,上行通信接口通过公共通信网络与管理方远程监控软件交换信息,下行通信接口通过RS485总线与多个监控单元连接;各监控单元分别由RS485收发器、监控器和总线监听检测电路组成,RS485收发器负责与RS485总线连接,各监控单元的具体电路见图2。
[0036] 图2是本发明实例监控器MCU、基本RS触发器和RS-485收发器的电路原理图,图中包括,监控器MCU芯片1,二第一和第二输入与非门2、3,反相器4,RS-485收发器5,上拉电阻6、下拉电阻7、通信数据流8。上拉电阻6和下拉电阻7连接在RS-485总线上。触发器置“1”脉冲9。其中第一和第二输入与非门2、3,反相器4为一片标准高速CMOS集成电路74HC00。RS-485收发器负责与RS-485总线连接,监控器1由MCU芯片为核心组成,第一和第二输入与非门2、3接线组成的基本RS触发器构成总线监听检测电路,由第三与非门4组成的反相器和RS-485收发器5实现TTL电平和RS-485电平之间的相互转换。监控器1的TXD引脚连接由第三与非门4组成的反相器的输入端,由第三与非门4组成的反相器的输出端连接RS-485收发器5的DE、RE端;RS-485收发器5的RO输入端连接监控器1的RXD引脚;RS-485收发器5的RO输入端同时连接与非门3的一个输入端;监控器1的P2.1引脚连接与非门2的一个输入端;监控器1的P2.1引脚连接第一与非门2的一个输入端;监控器1的P2.0引脚连接与第二非门3的输出端。由RS-485收发器5的RO端收到的字符传输帧8,监控器MCU芯片1的P2.1脚输出的将触发器Q端置“1”信号9。MCU芯片1的引脚5和引脚20所连接电容是滤波电容,过滤掉电源的毛刺干扰。
[0037] 实例中MCU的型号为ADuC812,片内扩展资源有8KB的Flash程序存储器、640B Flash数据存储器、256B的RAM数据存储器、8通道的12位A/D转换器、2通道的12位D/A转换器和通用异步收发器UART,由于芯片内部包含程序存储器和数据存储器,P0、P2接口可全部作为通用I/O接口使用。MCU芯片内部有控制程序,负责数据采集、处理和传输。
[0038] 第一和第二输入与非门2、3按图2接线组成的基本RS触发器构成总线监听检测电路,与非门2的输出Q(引脚3)接到MCU的P2.0(引脚28),Q=0,表示RS-485总线“忙”;Q=1,表示RS-485总线“空闲”。MCU中的控制程序通过读取引脚P2.0输入读取Q判别总线状态;在检测总线“空闲”之前,MCU中的控制程序通过引脚P2.0输出低电平脉冲9将触发器置位:Q=1。
[0039] RS-485收发器5使用的芯片型号为MAX485E,RS-485收发器的功能是将MCU串行通信接口TTL电平和RS-485差分信号进行双向转换,即在发送端,驱动器将DI(引脚4)输入TTL电平信号转换成差分信号输出到RS-485总线,在接收端,接收器将RS-485总线上接收到的差分信号转换成TTL电平信号送到MCU的RxD。需要注意的是,本发明中,RS-485收发器5的DI接地,即直接输入“0”信号,而MCU芯片1的TxD经反相器4反相后接RS-485收发器5收发控制端DE/RE,这种连接方法使得在向RS-485总线发送数据时分为两种状态:显性0和隐性1,当TxD为0时经反相器4反相,DE/RE=1,RS-485收发器5处于发送模式,将收发器5的DI的输入“0”转换成差分信号输出到RS-485总线,称为显性0;当TxD为
1时经反相器4反相,DE/RE=0,RS-485收发器5处于接收模式,这时RS-485发送器的输出端呈现高阻态,RS-485总线的高电平是通过R1上拉和R2下拉得到的信号“1”,称为隐形
1;显性0和隐性1的优点在于当总线上“0”和“1”信号同时出现时,不至于形成低阻回路损坏收发器,此时“0”有效。
[0040] 图3为异步通信字符传输帧格式,通信双方以一个字符(包括特定附加位)作为数据传输单位且发送方传送字符的间隔时间是不定的。传输以起始位开始,停止位结束。由1变为0并持续1位时间表明发送方开始传输,同时接受方收到0开始与发送方同步,并接受随后来的数据。本实例利用了异步通信字符传输帧中起始位为“0”的特点,只要通信总线上有数据流,总线监听检测电路在首字符的起始位,即翻转为“0”,指示总线处于“忙”状态。
[0041] 本实例中,上电后MCU芯片1将基本RS触发器构成总线监听检测电路输出Q置1,MCU芯片1不数据发送时,TxD保持为“1”,经反相器4反相,DE/RE=0,RS-485收发器5处于接收模式;如果总线为“1”,RS触发器输出继续保持“1”,指示总线处于“空闲”状态。如果总线上有字符数据流,在字符的起始位将RS触发器清“0”,指示总线处于“忙”状态,并保持此状态。
[0042] MCU芯片1在发送数据之前,首先通过引脚P2.0输出低电平脉冲9将二第一和第二输入与非门2、3组成的基本触发器置位,使得Q=1。然后MCU芯片1通过引脚P2.0读取Q的状态,如果Q=1,等待20个Td后再次读取Q的状态,如果Q=1,说明无其它监控单元在发送数据,总线空闲,本监控单元可以发送数据;如果Q=0,说明其它监控单元在发送数据,总线忙。本监控单元需等待总线空闲。多主机方式的点对点发送数据包的控制软件按照以下步骤进行:
[0043] a)按规定格式组织欲发送的数据包报文,发送次数计数器清0;
[0044] b)从监控器的输出口发一低电平脉冲至总线监听检测电路置“1”输入端,将总线监听检测电路输出置“1”;
[0045] c)在监控器的输入口检测总线监听检测电路的输出是否为“1”,如为“0”,转到b);
[0046] d)启动定时器,定时器的时间长度设为20个Td(传递一位所需时间),等待定时时间到;
[0047] e)定时时间到,在监控器的输入口检测总线监听检测电路的输出是否为“1”,如为“0”,转到b);
[0048] f)发送数据包报文,发送时要求2个字符之间的空闲间隔不得超过2个Td;
[0049] g)定时器的时间长度设为10个Td,等待接收方应答;
[0050] h)收到接收方应答,转向j);
[0051] i)定时时间到,未收到接收方应答,发送次数计数器加1,如发送次数计数器小于3,转向f),否则设置发送错误标志,转向j);
[0052] j)关闭定时器,退出控制程序,结束。
[0053] 所述的数据包报文内容至少包括发送方地址码、接收方地址码、控制码、长度码、变长数据体、CRC校验码。
[0054] 上述过程中,可以用固定次数的若干个循环查询替代定时时间,则软件控制更为简单。
[0055] 在本发明的通信网络中,无论是监测子站数据服务器,还是每个监控单元都可以作为主机主动向监测子站通信网络发送数据。通常监测子站数据服务器下载控制参数到各个监控单元,监控单元将所测量的污染物排放数据上传到监测子站数据服务器。每个监控单元除每天定时采集污染物排放数据外,还要在线24小时不间断连续监测各种污染物排放情况,当污染物排放总量变化量未超出规定变化值时,不发送数据到网络。当污染物排放总量变化率超过规定变化值时,便主动将测到的污染物排放数据通过网络发送到监测子站数据服务器。设在Tn时刻污染物排放数据为Pn,如果设置控制参数规定当污染物排放数据每变化1%时记录并传输,则在Tn+1时刻,如果|Pn+1-Pn|>| Pn*1%|,则上传测量数据。否则不发送任何信息到网络。与主从分布式网络比较,该通信网络的优点是信号比较清晰,对数据碰撞不敏感,通信效率显著提高。另外也可有效的减少子站现场的数据存储量,降低子站监控系统的建设成本。