安全生产
首页资讯供应求购招商招聘展会社区
长期信息合作请联系:QQ66821730
PLC技术首页-->PLC基础plc应用PLC文案资料PLC手册国标规程plc资料下载技术培训人才招聘职业认证产品商情论坛
PLC搜索
我 要 找
标题 内容 作者
PLCRSS订阅PLC技术信息
电工技术资料 您的位置: 机电之家-->plc技术资料栏目首页-> PLC基础 -> PLC通信 --> PLC串行通信在测控装置中的实现
阅读plc技术相关资料
PLC串行通信在测控装置中的实现
本文作者 不详 摘自 机电之家

摘要:介绍了HG-2003型温升测控置的测控对象和结构设计。详细讨论了装置中所采用的西门子公司的S7-200型PLC和PC机之间串行通信程序的设计与实现,即S7-200梯形图通信程序设计与实现中的细节和难点。简要介绍了上位PC机通信程序的设计。该通信功能的实现确保了该装置结构简单、可靠性高、便于二次开发。 
    关键词:RS-232串行通信 可编程控制器 自由端口模式 数据缓冲区 PC/PPI电缆

    HG-2003型温升测控装置是笔者与我国北京某科学研究联联合开发的一套专门用于高压晶闸管阀温升检测试验的测控装置。考虑到PLC及其网络已被公认为现代测控装置开发的几大支柱之一,而且从近几年的统计数字来看,PLC产品在世界范围内的产量、销量高居各测控器件榜首,因此笔者决定本测控系统的核心器件采用可编程控制器(PLC),其基本功能可通过软件编程实现。PLC的三大亮点是:(1)集电控、电传、电仪三电于一体;(2)网络的性能价格比高;(3)可靠性高。这些亮点就使得整个测控设备结构简单、可靠性高,同时也为实现系统控制功能的二次开发奠定了良好的技术基础。本文主要讨论设备中所采用的西门子公司的S7-200型PLC和PC机之间的串行通信问题。

1、温升测控系统整体介绍

    1.1 HG-2003测控装置的测控对象及结构

    先来介绍一下该温升试验测控装置的基本工作流程。10kV电源进线经过进线框中的高压断路器CB和高压隔离开关柜中的隔离开关G(用于在设备检修或维护时形成一个明显的断点)后,加在10kV转换变压器T1上。该变压器将三相电转化为单相电。这主要是由于做实验时负载电流很大,如果使用三相电源,容易造成负荷电流的不平衡从而造成试验故障。在转换变压器的输出端(二次侧)连接单相温升试验变压器T2。该温升变压器的一次侧应加装用于无功功率补偿的电容柜,二次侧则通过有载分接开关直接连接试验品(即高压晶闸管阀)进行温升试验。
    从基本工作流程不难知道测控装置的测控对象,本装置的具体测控对象如表1所示。

表1 测控对象表

    测控装置的物理结构分为两部分:操作控制台和试区控制箱。其中,试区控制箱即PLC控制箱被安装在试验区的隔离开关框内。操作控制台即PC机人机办是非曲直操作台则安装在控制室内。由于二者之间相距约40m,所以采用PC/PPI电缆传输测控信号时需加装中继器。

    1.2 HG-2003测控装置的基本功能

    本测控系统的基本功能包括:开关分合控制指示功能;设备和试品的过流、过压、过热报警及保护功能;各种操作连锁功能,如电源开关柜内10kV电源断路器和隔离开关柜内的手动隔离开关、控制室门触点、试验大厅门触点间的连锁保护功能等,并设有相关的报警提示画面。这些功能可以避免操作顺序出错。

2、S7-200通信程序的设计与实现

    2.1 PC机与S7-200的通信方式

    西门子S7-200 PLC的通信功能较强,有多种通信方式可供用户选择,如:单主站方式、多主站方式以及使用调制解调器的远程通信方式等。在本测控装置中,笔者采用单主站方式。在运行Windows或Windows NT操作操作的个人计算机(PC机)上安装STEP 7-Micro/WIN32编程软件后,PC机就可作为通信中的主站。它可与一个或多个从站相连,STEP 7-Micro/WIN 32每次和一个S7-200 CPU通信,但可以访问网络上的所有CPU。该通信方式的硬件配置为PLC到PC机通信口的电缆连接器,即带RS-232口的隔离型PC/PPI电缆,用五个DIP开关设置波特率和其它配置项。它支持的波特率为9.6kbps或19,2kbps,支持的协议为PPI协议。这里并没有使用PPI协议,而是使用PC/PPI电缆和自由端口通信功能来实现S7-200 CPU与PC机间的通信。自由端口模式是计算机或其它带有串行通信接口的设备与S7-200 CPU之间通信的一种廉价和灵活的方法。它以用户定义的通信协议为基础,通过使用相关的中断指令和专用的通信指令控制S7-200 CPU通信口的操作模式,实现与多种智能设备的连接。

    具体地说,所谓自由通信端口模式是指CPU的串行通信接口可由用户程序控制的一种通信操作模式,其梯形图程序可以使用接收完成中断、字符接收中断、发送完成中断、发送指令(XMT)和接收指令(RCV)等控制通信过程。在该模式下,通信协议完全由用户程序控制。

    CPU处于STOP模式时,自由通信端口模式被禁止,CPU重新建立使用其它协议的通信,例如与编程设备的通信。只有当CPU处于RUN模式时,才能使用自由通信端口模式。通过将特殊寄存器字节SM30或SM130的协议选择域(mm)置1可以将通信端口设置为自由端口模式,处于该模式时不能与编程设备通信。

    可以用反映CPU模块上的工作方式开关当前位置的特殊存储器位SM0.7来控制自由端口模式的进入。当SM0.7为1时,工作方式开关处于RUN位置,可选择自由端口模式;当SM0.7为0时,工作方式开关处于TEM位置,应选择PC/PPI协议模式,以便用于编程设备监视或控制CPU模块的操作。

    2.2 自由端口模式下PLC串行通信程序的编程要点

    计算机与可编程控制器通信时,为了避免通信中的各方争用通信线,一般采用主从工作方式,即计算机为主机,可编程控制器为从机;只有主机才有权主动发送请求报文,从机收到后返回响应报文。下面主要谈一谈编程过程中应注意的几个问题。

    首先是电缆切换时间的处理。因为使用了PC/PPI电缆,所以在S7-200 CPU的用户程序中应考虑电缆的切换时间。S7-200 CPU接收到RS232设备的请求报文到它发送响应报文的延迟时间必须大于等于电缆的切换时间。波特率为9600bps和19200bps,电缆的切换时间分别为2ms和1ms。在梯形图程序中可用定时中断实现切换延时。

    其次就是通信可靠性的处理,校验码的采用是提高通信可靠性最常用的措施之一。用得较多的是异或校验,即将每一帧中的第一个字符(不包括起始字符)到该帧中正文的最后一个字符作异或运算,并将异或的结果(展品或校验码)作为报文的一部分发送到接收端。接收方接收到数据后计算出所接收到的数据的展品或校验码,再与发送方传过来的校验码比较,如果不同,可以判断通信有误。

    最后需注意的是防止起始字符、结束字符与数据字符的混淆。因为报文的起始字符和结束字符只有8位,接收到的报文数据区内出现与起始字符或结束字符相同的数据字符的机率很大,这可能会引起字符混淆。可以在发送前对数据作某种处理,例如选择起始字符和结束字符为某些特殊的值,而将数字字符转化为BCD码或ASCII码后再发送,这样可以避免出现上述的情况,但是会增加编程的工作量和数据传 送的时间。

    2.3 通信程序中关键指令的使用与说明

    发送指令XMT(Transmit)用于启动自由端口模式下数据缓冲区(TBL)数据的发送,指令格式如图1所示。通过指定的通信端口(PORT),将存储在数据缓冲区(TBL)中的信息发送。使ENO=0的错误条件:SM4.3(运行时间),0006(间接寻址),009(在端口0同时XMT/RCV),000B(在端口1同时XMT/RCV)。

    XMT指令可以方便地发送1~255个字符,如果有中断程序连接到发送结束事件上,在发送完缓冲区中的最后一个字符时,端口0会产生中断事件9,端口1会产生中断事件26。可以监视发送完成状态位SM4.5和SM4.6的变化,而不是用中断进行发送。数据缓冲区中的起始字符和结束字符是可选项,第一个字节的“字符数”是要发送的字节数,它本身并不发送出去。

    接收指令RCV(Receive)可以方便地接收一个或多个字符,最多可接收255个字符。通过指令的通信端口(PORT),将接收信息存储在数据缓冲区(TBL)中。数据缓冲区中的第一个字节用来累计接收到的字节数,它本身不能接收到,起始字符和结束字符是可选项。如果有中断程序连接到接收结束事件上,在接收完最后一个字符时,端口0产生中断事件23,端口1产生中断事件24。

    使ENO=0的错误条件:SM86.6和SM186.6(RCV参数错误),SM4.3(运行时间),0006(音接寻址),009(在端口0同时XMT/RCV),000B(在端口1同时XMT/RCV)。CPU不是在自由端口模式。

    可以监视SM86.6或SM186.6的变化,而不是用中断进行报文接收。SM86.6或SM186.6为非零时,RCV指令未被激活或接收已经结束。正在接收报文时,它们为0。

    当超时或校验错误时,要自动中止报文接收功能。必须为报文接收功能定义一个启动条件和一个结束条件。
    RCV指令允许通过参数设定选择报文开始条件和报文结束条件,即设定特殊存储器字节SM86~SM94(用于端口0)和SM186~SM194(用于端口1)。

    另外两个比较重要的指令是获取与设置通信口地址指令。获取通信口地址指令(GET ADDR指令)用来读取PORT指定的CPU口的站地址,并将数值放入ADDR指定的地址中。设置通信口地址指令(SET ADDR指令)用来将通信口(PORT)站地址设置为ADDR指定的数值。设置的新地址不能永久保存,断电后又上电,通信口地址将恢复为上次的地址值(用系统块下载的地址)。图2为使用RCV指令和接收完成中断接收数据的通信程序流程图。

3、计算机通信程序的设计与实现

    3.1 Windows环境下的PC机通信程序

    在Windows环境下,操作系统通过驱动程序控制各硬件资源,不允许用户像在DOS环境下那样直接对串口进行底层的操作。为此,Visual Basic提供了一个串行通信控件:MSComm控件。程序员只需设置和监视MSComm控件的属性和事件,就可以劲易而易举地实现串行通信。

    3.2 MSComm控件的属性

    MSComm控件主要属性如下:(1)Comm Port:设置并返回通信端口号。(2)Settings:以字符的形式设置并返回波特率、奇偶校验位、数据位和停止位。其中字符n、o、e分别代表无校验、奇校验、偶校验。(3)Port Open:设置并返回通信端口状态。设置为Ture时,打开端口;设置为Flase时,关闭端口。另外,还有Input、Output、Input Mode、In Buffer Count等属性,这里不再一一介绍。

    3.2 MSComm控件处理接收信息的方式

    MSComm控件提供两种处理方式:(1)事件驱动方式:RTHreshold属性非0时,收到字符或传输线发生变化时就会产生串口事件On Comm。通过查询CommEvent属性可以捕获并处理这些通信事件。(2)查询方式:通过查询Iuput Buffer Count(接收缓冲区的字节数)属性值,处理接收到的信息。本装置中采用事件驱动方式。

    用Visual Basic语言设计串行通信程序简单实用,关键是如何形成一个友好的用户界面。编程的细节这里不再详述。

    随着工业PC机的推出,个人计算机在工业现场支行的可靠性问题也得到了解决。因此在各类测控设备中实现PLC和PC机间的串行通信有着重大的意义。这样一方面有助于将个人计算机开发成简易工作站或者工作终端,实现集中显示、集中报警功能;另一方面也可把个人计算机开发成PLC编程终端,通过编程器接口接入PLC网络,进行编程、调试及监控,并最终达到PLC测控设备结构简单、运行可靠、维护容易、便于二次开发的技术特点。



有搞不定的程序,交给机电之家吧!去悬赏竞标
 PLC串行通信在测控装置中的实现相关资料
  • 用三菱的FX2N PLC实现N:N网络(令牌总线)
  • PLC程序调试步骤
  • 三菱PLC的几个常见问题解答
  • PLC内置高速计数器的简单应用介绍
  • PC与FX30DUE传输数据办法
  • 变频器逆变器件的原理
  • 三菱PLC程序编写注意事项一例
  • 三菱FX,A,QnA系列PLC特殊寄存器查询软件
  • 三菱FX2N系列PLC与Profibus的连接
  • 计数器级联PLC程序梯形图 
  • ⊕这地方投资政策最优
    ⊕上千份机电行业研究报告
    ⊕机电项目招商啦
    ⊕谁把我买了?
    ⊕机电行业展会大全
    ⊕十万企业抢登行业网址大全
    机电之家会议开通
    ⊕每日最新求购信息
    ⊕电工技术资料为了谁?
    ⊕机电设备维修与管理
    机电之家(中国)plc技术资料中心资讯版权声明:
    1、凡注明“机电之家采编”字样的所有作品均系本网原创,版权归机电之家所有,任何媒体摘编或享用本作品,需注明文章来源。违反声明者,本网将追究其相关法律责任。
    2、凡本网注明“来源:XXX网(非本网)”的作品,均转载自其他媒体,目的在于传达更多资讯,本网不承担相关法律责任。

    3、如在资讯、广告等方面想与本网合作,请致电:0571-87774297。Email:donemi@hz.cn

    ·工程项目经理培训
    ·欧姆龙PLC编程维护培训
    ·杭州西门子PLC应用培训
    ·模具加工设计培训
    ·变频器维修培训
    ·安全员认证培训
    ·电工培训


    ·招聘项目管理人员
    ·首席技术执行官
    ·自控工程师
    ·数控编程学徒
    ·总工程师

    项目竞标

    最新商业情报
    代理
    [代理] 寻求地区代理
    [代理] 电工产品诚招代理..
    采购
    [采购] 电动车控制器外壳
    [采购] 高品质缓冲器
    论坛最新话题
    ·超级搞笑的安全事故
    ·电工技术资料flash大全
    ·最新的搞笑图片
    ·工控行业应用软件下载
    首页
    首页
    合作网站:
    | 中国机电网机电之家安全生产网 | 机电论文 | 机电论坛 | 机电设备贸易 | 机电网址大全 | 浙江机电网 | 陕西机电网 | 变频器技术网 |
    中国电工网 | 电工网 |环球会展网机电产品网 | 机电人才网 | 中国工控网 | 五金工具网 | 安全生产网 | 甘肃机电网 | PLC技术网 |
    友情连接:
    | 中国机电网 | 中国工控网 | 行业培训网 | 中国工程机械网 | 机电一体化网 | 行业下载网 | 行业国标网 | 商业情报站 |
    关于我们 | 联系我们 | 广告联系 | 付款方式 | 使用帮助 | PLC技术网 | 会员助手 | 友情链接
    电话:0571-87774297(杭州) 传真:0571-87774298(杭州)点击这里给我发消息66821730(技术) 点击这里给我发消息58733127(审核)
    机电之家 PLC技术网 站所共享的PLC知识,PLC技术,PLC应用,PLC行情分析,PLC学习资料,PLC国标规程,PLC维修知识,
    PLC国家标准,PLC操作规程,PLC岗位职责,PLC管理制度,PLC工作总结,PLC实习报告,PLC考试题库,
    等都是来自会员发表或 网上收集整理。如果有任何侵犯您权益的地方,请联系我们,我们将马上进行处理。
    企业登陆可自行免费发布资料,本站代发布邮箱为88ctv@163.com
    Copyright 2007 plc.jdzj.com Inc All Rights Reserved.PLC技术网
    chinaplc.net 联合建设
    技术支持:PLC技术网 mailto:88ctv@163.com
    免费发布信息主办:浙江-杭州-PLC技术网网络运营部安全生产