0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于S7-300和S7-200在滨州污水处理厂自动化监控系统中的应用

电子设计 来源:机电之家 作者:机电之家 2021-03-30 14:19 次阅读

1 项目简介

滨州市污水处理厂占地100万立方米。采用德国BIOLAK污水处理工艺,日处理水规模为10万立方米。项目使用四套S7-300和两套S7-200建成分布式控制系统,完成整个污水处理的控制、数据采集功能,本文仅叙述了项目的一部分——S7-300和S7-200通信内容。

S7-200PLC作为小型PLC,以其功能强、性价比高在工控领域中被广泛应用。在S7-200与S7-300或WINCC通信时,通常需要安装EM277或CP243-1模块,成本升高,使得S7-200性价比优势大打折扣。自由口通信是S7-200的突出特点之一,本文介绍了一种经济灵活的通信方法,其可行性、可靠性在实际工程中得到验证。

2 工程应用中的硬件网络结构

滨州污水处理厂自动化监控系统中,两刮泥桥上各有一台S7-200PLC,每台PLC控制8台吸泥泵及刮泥桥的正反向运动。S7-200PLC的柜子安装在刮泥桥上,处于不停地来回运动中,不适合进行有线通信,采取了无线数传电台方式。

S7-200CPU上的通信口是基于RS485的,通过一个RS485/232转换器将S7-200连接到电台;在脱水机房的S7-300上挂一串口通信模块CP340,并连接到数传电台,通过编程便可以实现S7-300与S7-200间的通信;监控室的上位机以MPI总线方式与S7-300通信,便可间接监控S7-200。系统网络结构如图2

基于S7-300和S7-200在滨州污水处理厂自动化监控系统中的应用

图2 通信结构图

3 通信功能的实现

通信程序要实现S7-300向一个S7-200站发送7个字节的数据,然后接收并存储该S7-200返回的6个字节数据。S7-300发送的7个字节中,第1个字节是地址信息,第2、3、4字节是吸泥泵及刮泥桥控制数据信息,第5、6字节是1、2字节和3、4字节异或值,作为校验判断信息,第7位字节数据信息无意义,仅仅是为了触发一次S7-200的字符接收中断程序;S7-200向S7-300发送的6个字节中,第1个字节是S7-200的站地址信息,第2、3、4字节是吸泥泵及刮泥桥状态数据信息,第5、6字节为校验信息。

3.1 S7-300端通信程序

在自由口模式下,无论S7-200还是S7-300,通信协议完全由程序控制。CP340通过调用FB2 P_RCV来接收数据,调用FB3 P_SEND来发送数据。发送功能块FB3 P_SEND的参数REQ上升沿初始化发送请求,参数DB_NO指定发送数据块编号,参数DBB_NO是发送数据在参数DB_NO指定数据块中起始字节,LEN指定传输数据的字节长度;接收功能块FB2 P_RCV参数EN_R允许读数据,参数DB_NO指定接收数据块编号,参数DBB_NO是接收数据在参数DB_NO指定数据块中起始字节。

S7-300采用轮循方式与两S7-200通信,即第一秒内向1号站发送数据,然后接收1号站返回的数据(S7-200在接收到S7-300发送的数据后会立刻向S7-300发送数据);第二秒内向2号站发送数据,然后接收2号站返回的数据,不停地循环通信。S7-300通信程序流程如图3。

图3 S7-300通信程序流程图

S7-300通信程序详细介绍

AN M 30.0

L S5T#2S

SD T 1

A M 30.0

R T 1

L T 1

T MW 40

NOP 0

A T 1

= M 30.0

//设一2秒定时器,定时时间到自动进行下一次定时,当前值存入MW40

A(

L MW 40

L 102

》I

A(

L MW40

L 200

《I

= M30.1

// 定时器第一秒钟内,即102《MW40《200,M30.1为1

A(

L MW 40

L 2

》I

A(

L MW 40

L 100

《I

= M 30.2

//定时器第二秒钟内M30.2为1

A (

A M 30.1

JNB _001

L 0

T MW 34

SET

SAVE

CLR

_001: A BR

JNB _002

L 0

T MW 36

_002: NOP 0

// M30.1为1时,即定时器第一秒内,使MW34=0、MW36=0,作为起始字节值

A (

A M 30.2

JNB _003

L 8

T MW 34

SET

SAVE

CLR

_003: A BR

JNB _004

L 8

T MW 36

_004: NOP 0

// M30.2为1时,即定时器第二秒内,使MW34=8、MW36=8,作为起始字节值

O M 30.1

O M 30.2

= M 33.0

A M 33.0

= L 20.0

BLD 103

CALL “P_SEND” , DB19

REQ :=L20.0

R :=

LADDR :=320

DB_NO :=2

DBB_NO:=MW34

LEN :=7

DONE :=M50.1

ERROR :=M50.2

STATUS:=MW52

NOP 0

// 调用发送指令,当M30.1为1时(其上升沿初始化发送请求),即定时器第一秒内发送DB2.DBB0起始的7个字节,第一个字节为1站地址;当M30.2为1时(其上升沿初始化发送请求),即定时器第2秒内发送DB2.DBB8起始的7个字节,第一个字节为2站地址

A M 33.0

= L 20.0

BLD 103

CALL “P_RCV” , DB20

EN_R :=L20.0

R :=

LADDR :=320

DB_NO :=22

DBB_NO:=MW36

NDR :=M60.1

ERROR :=M60.2

LEN :=MW62

STATUS:=MW64

NOP 0

// 调用接收指令,当M30.1为1时(允许读数据),即定时器第一秒内接收1号S7-200站回传的6字节数据,存入DB22数据块中,起始字节为DB22.DBB0;当M30.2为1时,即定时器第2秒内接收2号S7-200站回传的6字节数据,存入DB22数据块中,起始字节为DB22.DBB8

3.2 S7-200端通信程序

S7-200 PLC程序分为主程序、子程序和中断程序,主程序完成控制和子程序调用功能,子程序完成通信口初始化功能,中断程序完成数据的接收和发送功能。发送数据采用发送指令XMT,接收数据采用逐字节接收方法,通信口接收每个字节都会暂存到特殊存储器SMB2中,并且产生中断,利用中断程序控制数据的接收。由于S7-200CPU的通信是建立在RS-485半双工通信硬件的基础上,接收和发送不能同时进行。通信中断程序要做到:接收指令不结束,就不能执行发送指令。

反映S7-200CPU工作方式的模式开关当前位置的特殊存储器位为SM0.7,它控制自由端口模式的进入。当模式开关处于TERM位置时,SM0.7为0;当模式开关处于RUN位置时,SM0.7为1。SMB30是自由口模式控制字节,用来设定校验方式、通信协议、波特率等通信参数(其各个位含义参阅相关手册),中断事件号8为端口0接收字符中断,中断事件号9为端口0发送完成中断。

当SM0.7为1时,调用子程序SBR_0设置SMB30,允许进行自由口通信;SM0.7为0时,调用子程序SBR_1重新设置SMB30,停止自由口通信,恢复PPI通信,便于用Micro/WIN软件对CPU运行状态进行监视。S7-200通信程序流程如图4

图4 S7-200通信程序流程图

S7-200通信程序详细介绍(1号站)

主程序MAIN(只给出与通信有关程序)

LD SM0.1

MOVB 1, VB1

//设置站地址

LD SM0.7

EU

O SM0.1

CALL SBR_0

//首次运行或模式开关从TERM打到ON时定义通信口为自由口

LD SM0.7

ED

CALL SBR_1

//模式开关从ON拨到TERM时定义通信口为PPI从站

子程序SBR_0

LD SM0.0

MOVB 16#09, SMB30

ENI

ATCH INT_11, 8

//定义通信口0为自由口模式,9.6K波特率,无校验,8位数据位,连接接收字符中断为中断程序INT_11

子程序SBR_1

LD SM0.0

MOVB 16#C0, SMB30

DTCH 8

DTCH 9

//恢复普通PPI通信设置

中断程序INT_11

LD SM0.0

AB= SMB2, VB1

MOVW +5, VW200

MOVD &VB640, VD688

ATCH INT_12, 8

//若站地址正确,连接接收字符中断到中断程序INT_12,并使VW200=5来计数,在INT_12中连续接收五个字节;若站地址错误,则继续由INT_11接收字节数据,要在S7-300中程序中将其余六个字节的高位进行设计,避免出现为内容1或2地址信息的字节,即使传输过程中因外界干扰,其余六个字节出现为1或2的假地址情况,程序也会在接下来1~2个接收过程中,因INT_13中断程序中的校验指令作用,得到错误校验值,而恢复到正常接收状态。

中断程序INT_12

LD SM0.0

MOVB SMB2, *VD688

INCD VD688

DECW VW200

//接收5个字节

LD SM1.0

MOVB 1, VB639

MOVW VW639, VW700

XORW VW641, VW700

ATCH INT_13, 8

//通过异或指令进行数据校验,连接接收字符中断到中断程序INT_13,即由第七个字节触发中断程序INT_13

中断程序INT_13

LD SM0.0

DTCH 8

//中断分离

LDW= VW700, VW643

MOVD VD640, VD400 //校验正确,将控制信息数据存到VB400~VB402

MOVB 6, VB600

MOVB VB1, VB601

BMB VB100, VB602, 5

ATCH INT_14, 9

XMT VB600, 0

//校验正确,使能发送,发送6字节数据VB601~VB606,连接发送指令结束到中断程序INT_14

LDW《》 VW700, VW643

ATCH INT_11, 8

//校验不正确,连接接收字符中断到中断程序INT_11,进行新一次接收

中断程序INT_14

LD SM0.0

DTCH 9

ATCH INT_11, 8

//发送结束则连接接收字符中断到中断程序INT_11,进行新一次接收

4 电台选型和故障判断

数传电台选择了深圳友讯达科技发展公司的FC-201/B,该数传电台以其价格合理、运行稳定在国内得到广泛应用。通过友讯达提供的电台软件pfc5对电台进行参数设置,在S7-200两个站处将电台参数设置为:发射频率453.00,接收频率465.00,空中速率1200bps,工作模式为透明模式,串口波特率9600bps,串口校验和设为无;在S7-300站处将电台的参数中发射频率设为465.00,接收频率设为453.00,与S7-200站处电台收发频率对应,其余参数一致。

FC-201/B数传电台有一个发送和接收指示灯,当发送数据时为红灯,接收数据时为绿灯。根据此灯可以方便的判断通讯是否正常,正常情况下,S7-300轮循方式与两S7-200通信,即第一秒内向1号站发送数据,然后接收1号站返回的数据(S7-200在接收到S7-300发送的数据后会立刻向S7-300发送数据);第二秒内向2号站发送数据,然后接收2号站返回的数据,不停地循环通信。S7-300站处电台通讯指示灯红闪一下,接着绿闪一下,处在不停的红-绿-红-绿循环状态。而S7-200站在接收S7-300发送的数据时,要经过地址数据字节判断,确认地址为本站,并且对接收数据进行校验,确定接收数据无误才回传S7-300数据,但是只要S7-300发送数据,S7-200就接收数据,即使是发送给另一个S7-200站的数据。所以在无外界干扰,数据发送没有校验错误的情况下,S7-200站处的电台通讯灯是绿闪两下,红闪一下,处在不停的绿-绿-红循环状态,即接收两次数据,发送一次数据。如果通讯出现故障,根据通讯灯的闪烁状态,便可很容易查出通讯故障所在。

5 结束语

上位机WINCC通过访问S7-300的数据块DB2和DB22,就可以实现对两个S7-200PLC站的监控。自本系统投入运行以来,运行稳定可靠,收到用户好评。本通信方案经济、灵活,程序可移植性强,对于类似项目具有很高的借鉴意义。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 转换器
    +关注

    关注

    27

    文章

    8210

    浏览量

    141899
  • plc
    plc
    +关注

    关注

    4975

    文章

    12257

    浏览量

    454951
  • 监控系统
    +关注

    关注

    21

    文章

    3613

    浏览量

    169313
收藏 人收藏

    评论

    相关推荐

    污水处理监测系统

    支持RS232、RS485、USB、TTL接口,用户可任意选择其中一种。污水处理监测领域已有全国范围性的应用。互联网的大环境解决方案和产品已广泛应用于石油化工、电力、水泥、煤矿、
    发表于 06-07 16:05

    污水处理远程组态监控方案

    终端为分散各个地方的污水处理系统污水处理的控制系统可以采用PLC进行自动控制控制,要实现
    发表于 08-22 16:17

    桂阳县污水处理厂自动化监控系统设计与研究

    桂阳县污水处理厂自动化监控系统设计与研究
    发表于 02-02 08:52

    用无线模块搭建污水处理系统

    最大500mw。4.支持RS232、RS485、USB、TTL接口,用户可任意选择其中一种。污水处理监测领域已有全国范围性的应用。互联网的大环境下深圳市大为智通科技有限公司解决方案和产品已广泛应用于石油化工、电力、水泥
    发表于 09-28 09:12

    HART/MODBUS网关作为HART第二主站在污水处理厂的应用

    的利用率和造成污水系统的堵塞,中控室可以根据监控到的管道污水的瞬时流量和累积流量及时控制管道污水的流量。目前由于很多
    发表于 10-09 11:26

    HART/MODBUS网关作为HART第二主站在污水处理厂的应用

    设备造成损害及处理不彻底排出去污染河流,防止流量过小降低污水处理系统的利用率和造成污水系统的堵塞,中控室可以根据监控到的管道
    发表于 10-11 13:53

    无线模块--搭建污水处理系统

    最大500mw。4.支持RS232、RS485、USB、TTL接口,用户可任意选择其中一种。污水处理监测领域已有全国范围性的应用。互联网的大环境下解决方案和产品已广泛应用于石油化工、电力、水泥
    发表于 10-15 09:26

    中小型污水处理厂监控系统的设计

    本文结合实际的工程项目,介绍了在污水处理厂中利用Siemens 公司的PROFIBUS-DP现场总线技术、工业视频和WinCC 组态软件设计实现的一个监控系统。关键词:监控
    发表于 06-06 16:08 36次下载

    基于GPRS的污水处理监控系统设计

      首先介绍GPRS技术的原理和GPRS在污水处理监控系统中的应用,针对某市污水处理厂的实际情况,提出一种基于GPRS技术的污水处理
    发表于 02-10 16:35 81次下载

    基于PLC的DCS控制系统污水处理厂中的应用

    基于PLC的DCS控制系统污水处理厂中的应用  随着国民经济建设的快速发展,各级政府对环境保护更加关注,各地陆续新建了一大批污水处理厂。这些新建的污水处理
    发表于 12-10 16:53 1826次阅读
    基于PLC的DCS控制<b class='flag-5'>系统</b>在<b class='flag-5'>污水处理厂</b>中的应用

    S7-300S7-200自由口无线通信实现方法

    滨州污水处理厂占地100万立方米。采用德国BIOLAK污水处理工艺,日处理水规模为10万立方米。项目使用四套S7-300和两套
    发表于 03-19 17:24 44次下载

    移通创联profibus光纤模块产品在污水处理厂的应用案例

    污水处理厂自动化监控系统分两级,第一级是控制管理级(主控中心),第二级是过程控制级(现场控制层)。由于污水处理厂厂区与泵站距离比较远,通过
    发表于 11-09 08:38 1988次阅读
    移通创联profibus光纤模块产品在<b class='flag-5'>污水处理厂</b>的应用案例

    污水处理厂如何实现设备远程监控与调试?

    问题,也导致成本一直居高不下、污水处理品质不稳定、安全事故频发等现象。为此,我们需要解决污水处理设备中远程监控和调试的问题,建立一个有效高速的管理系统,实现企业的
    发表于 09-19 14:28 395次阅读
    <b class='flag-5'>污水处理厂</b>如何实现设备远程<b class='flag-5'>监控</b>与调试?

    智慧水务能效管理平台在污水处理厂的具体应用

    污水处理厂的电气节能设计对污水处理厂减少能耗与投资具有重要意义。 在污水处理厂中需要用到大量的用电设备,如在预处理系统中需要用到排污泵、闸门、除污机等,在沉淀池中需要用到搅拌机、提升泵
    的头像 发表于 10-31 14:21 520次阅读
    智慧水务能效管理平台在<b class='flag-5'>污水处理厂</b>的具体应用

    污水处理厂智能监控运维物联网平台

    污水处理厂智能监控运维物联网平台 随着城市化进程的不断加快,污水处理厂的数量也在不断增加。然而,传统的污水处理厂运维管理方式往往存在着人工管理效率低下、监测设备老化、维修难度大等问题,
    的头像 发表于 02-04 14:35 173次阅读
    <b class='flag-5'>污水处理厂</b>智能<b class='flag-5'>监控</b>运维物联网平台