西门子S7-300 PLC与模拟屏串行通信

发布者:Yuexiang666最新更新时间:2014-09-25 来源: ofweek关键字:S7-300  PLC  模拟屏  串行通信 手机看文章 扫描二维码
随时随地手机看文章

1 引言

  模拟屏能简单、明了地反映现场的实时数据和状态信息,应用十分广泛。为了使现场信息及时、准确、动态地显示在模拟屏上,要求数据采集设备和模拟屏之间进行通信。

  现场信息量比较大,如果每个信号都独立连接到模拟屏,信号线数量多、耗线多,不经济,走线不便,故障率高,采用串行通信可克服以上缺点。

  现在通信方式多种多样、速度越来越快,但串行通信在控制范畴一直占据着极其重要的地位。它不仅没有因时代的进步而淘汰,反而在规格上越来越完善、应用越来越广,长久不衰。

  与并行通信相比,它传输速度慢(并行一次传8位,串行传1位),但并行通信数据电压传输过程中,容易因线路因素使标准电位发生变化(常见的电压衰减、信号间互相串音干扰)。传输距离越远,问题越严重、数据错误越容易发生。相比之下,串行通信处理的数据电压只有一个标准电位,数据不易漏失。

  常用的串行通信有两种,一种为rs232,另一种为rs422/485。工业环境常会有噪声干扰传输线路,在用rs232进行数据传输时,经常会受到外界电气干扰而使信号发生错误。rs232串行通信的信号标准电位是参考接地端而来的,干扰信号在原始信号和地线上均会产生影响,原始信号加上干扰信号后,依然传送到接收端,而地线部分的信号则不能传送到接收端。因此,信号便发生了扭曲。rs422/485传输的是差分信号,在发送端分成正负两部分,到达接收端通过相减,还原成原来信号,两条信号线受到的干扰的程度相同,这就防止了噪声干扰。本文以plc和模拟屏通信为例介绍通过rs485实现点对点串行通信。

2 模拟屏的通信规约及设备

  (1) 通信规约

  rs232c/485串行口:速率9600bps,1位起始位,8位数据位,1位停止位,无奇偶校验位;传输报文内容以字节为单位,在信道中的传送顺序是:低字节先送,高字节后送;字节内低位先送,高位后送;数据格式为16进制数;异步通信。

  (2) 设备

  开关量处理器;开关量指示灯;模拟量处理器;模拟量显示器;时钟;通信处理器;中央控制器。

3 信息传输途径设备和功能

  (1) 途径:数据采集通过plc完成,plc向模拟屏传输数据,控制模拟屏状态。rs485连接图如图1所示:

  (2) 主要相关设备:中央处理器cpu 314;点到点通信模块cp341-rs422/485。

  (3) 功能:—向模拟屏发送模拟量数据;—向模拟屏发送开关量信息;—控制屏状态,包括:全屏亮暗、全屏信号分合、

  变位帧闪光;—设定和改变时钟时间。

4 通信实现的方法

  4.1 初始化

  就串行通信而言,交换数据的双方利用传输在线的电压改变来达到数据交换的目的。如何从不断改变的电压状态中解析出其中的信息,双方必须有一套共同的译码方式,遵守一定的通信规则。这就是通信端口初始化。

  通信端口初始化有以下几个项目必须设置或确认:

  (1) 通信模式

  串行通信分同步和异步两种模式。同步传输在通信的两端使用同步信号作为通信的依据,异步传输则使用起始位和停止位作为通信的判断。模拟屏通信模式:异步传输;西门子plc通信模式:异步传输;二者通信模式相同。

  (2) 数据的传输速率

  异步通信双方并没有一个可参考的同步时钟作为基准。这样双方传送的高低电位代表几个位就不得而知了。要使双方的数据读取正常,就要考虑到传输速率。收发双方通过传输在线的电压改变来交换数据,但发送端发送的电压改变的速率必须和接收端的接受速率保持一致。模拟屏的通信速率:9600bps;西门子plc通信速率:600bps,1200bps,2400bps,4800bps,9600bps,19200bps,38400bps,57600bps,76800bps。初始化,将plc波特率设为:9600bps

  (3) 起始位及停止位

  当发送端准备发送数据时,会在所送出的字符前后分别加上高电位的起始位及低电位的停止位。接收端会因起始位的触发而开始接收数据,并因停止位的通知而确定数据的字符信号已经结束。起始位固定为1位,而停止位则有1,1.5,2等多种选择。模拟屏的停止位:1位;西门子plc的停止位:1位或2位。初始化,将plc数据停止位设为:1位。

  (4) 数据的发送单位

  不同的协议会用到不同的发送单位(欧美一般用8位、日本一般用7位组成一字节),使用几位合成一字节,双方必须一致。模拟屏的数据发送单位:8位为一字节;西门子plc的数据发送单位:7位或8位为一字节。初始化,将plc数据发送单位设为:8位。

  (5) 校验位的检查

  为了预防错误的产生,使用校验位作为检查的机制。校验位是用来检查所发送数据正确性的一种校对码,它分奇偶校验,也可无校验。模拟屏校验位:none;西门子plc校验位:none,odd,even;初始化,将plc校验位设为:none。

  (6) 工作模式

  交换数据是通过一定的通信线路来实现的。微机在进行数据的发送和接收时通信线路上的数据流动方式有三种:单工、半双工、全双工。rs232和rs422使用全双工模式,rs485使用半双工模式。模拟屏工作模式:rs232全双工/rs485半双工;西门子plc工作模式:rk512全双工四线制(rs422);3964r全双工四线制(rs422);ascii全双工四线制(rs422);ascii半双工两线制(rs485);初始化,将plc工作模式设为:ascii半双工两线制(rs485)。

  (7) 数据流控制—握手

  传输工作进行时,发送速度若大于接收速度,而接收端的cpu处理速度不够快时,接收缓冲区就会在一定时间后溢满,造成后来发送过来的数据无法进入缓冲区而漏失。采用数据流控制,就是为了保证传输双方能正确地发送和接收数据,而不会漏失。数据流控制一般称为握手,握手分为硬件握手和软件握手。模拟屏数据流控制:none;西门子plc数据流控制:none。要通过用户程序询问和控制。

  (8) 错误预防—校验码

  在传输的过程中,数据有可能受到干扰而使原来的数据信号发生扭曲。为了监测数据在发送过程中的错误,必须对数据作进一步的确认工作,最简单的方式就是使用校验码。模拟屏校验码:异或校验和。要在plc上编校验码程序。[page]

 

  4.2 数据发送

  (1) 将同步字及测量值db36.dbw21开始的数据送到db42.dbw12开始的数据区去,为向串口发送做准备。程序如下:

  遥测第一帧(fc36)

  l w#16#eb90

  传送两次同步字eb90,分别给db42.dbw12和db42.dbw14

  t db42.dbw12

  l w#16#eb90

  t db42.dbw14

  l b#16#61

  //将报文类型字“61”送给db42.dbb16

  t db42.dbb16

  l w#16#100

  //第一帧将起始地址“0100”送给db42.dbw17

  t db42.dbw17

  //第二帧将起始地址“0120”送给db42.dbw17

  l w#16#40

  //将正文字节数“40”(64字节)送给db42.dbw19

  t db42.dbw19

  l db36.dbw21

  //第一帧将db36.dbw21开始的32个字的模拟量

  caw 送到db42.dbw21开始的区域

  t db42.dbw21

  l db36.dbw23

  caw

  t db42.dbw23

  …………………

  l db36.dbw83

  caw

  t db42.dbw83

  opn db42 //遥信校验

  l p#17.0 //第二帧与第一帧相同

  t md100

  l dbw[md100]

  t mw10

  l 33

  t mw16

  l mw16

  next: t mw12

  l md100

  l p#2.0

  +d

  t md100

  l dbw[md100]

  l mw10

  xow

  t mw10

  l mw12

  loop next

  l md100

  l p#2.0

  +d

  t md100

  l mw10

  t mw14

  l mw14

  slw 8

  t dbw[md100]

  l mw10

  aw w#16#ff00

  t mw10

  l mw10

  l dbw[md100]

  xow

  t dbw[md100]

  l dbw16

  t mw18

  l mw18

  aw w#16#ff00

  t mw18

  l mw18

  l dbw[md100]

  xow

  t dbw[md100]

  (2) 将db42.dbw12开始,长度为95个字的数据送到串行端口,程序如下:

  //supply laddr, db_no,dbb_no,len

  l 256 // laddr

  t db40.dbw2

  l 42 // db_no

  t db40.dbw4

  t db42.dbw4

  l 12 // dbb_no

  t db40.dbw6

  t db42.dbw6

  l 95 // len

  t db40.dbw8

  t db42.dbw8

  //send with instance-db

  call fb8 , db21

  sf :=’s’

  req :=db40.dbx0.0

  r :=db40.dbx0.1

  laddr :=db40.dbw2

  db_no :=db40.dbw4

  dbb_no :=db40.dbw6

  len :=db40.dbw8

  r_cpu_no:=

  r_typ :=

  r_no :=

  r_offset :=

  r_cf_byt :=

  r_cf_bit :=

  done :=db40.dbx0.4

  error :=db40.dbx0.5

  status :=db40.dbw12

  // generate edge p_snd_rk_req

  an db40.dbx0.0 // p_snd_rk_req

  s db40.dbx0.0

  // set p_snd_rk_req

  o db40.dbx0.4 // p_snd_rk_done

  o db40.dbx0.5 // p_snd_rk_error

  r db40.dbx0.0 // p_snd_rk_req

  // check “complete without error”

  an db40.dbx0.4

  // check p_snd_rk_done if p_snd_rk_done equals 0,

  jc cher

  // jump to cher and check p_snd_rk_error

  //”complete without error”

  // p_snd_rk_done=1

  l db42.dbw0

  //“complete without error”

  +1 // increment counter

  t db42.dbw0

  nop //further user function

  nop

  nop

  be

  // check “complete with error”

  // p_snd_rk_error=1

  cher: an db40.dbx0.5

  //check p_snd_rk_error

  bec //if no error occurred, jump to end

  //“complete with error”

  l db42.dbw2

  //“complete with error”

  +1 //increment counter

  t db42.dbw2

  l db40.dbw12

  t db40.dbw14 //save status

  nop //error-handling

  nop

  nop

  be

  (3) 数据刷新,程序如下:

  an m2.4

  l s5t#100ms

  sd t0

  a t0

  jnb _007

  l w#16#1

  l md4

  rrd

  t md4

  set

  save

  clr

  _007: a br

  = l20.0

  a l20.0

  a(

  l md4

  l l#0

  ==d

  )

  jnb _008

  l 1

  t md4

  _008: nop 0

  a l20.0

  bld 102

  = m2.4

  a(

  o m5.0

  o m6.4

  )

  jnb _003

  call fc36

  _003: nop 0

  a(

  o m4.0

  o m5.4

  )

  jnb _004

  call fc38

  _004: nop 0

关键字:S7-300  PLC  模拟屏  串行通信 引用地址:西门子S7-300 PLC与模拟屏串行通信

上一篇:PCC在变电站自动化中的应用
下一篇:多通道数据实时采集系统设计

推荐阅读最新更新时间:2024-05-02 23:12

Profinet转Can协议网关和西门子PLC和直流伺服驱动器通讯案例
深圳某自动化有限公司在国内的一个运行项目中,项目要求控制中心系统通过向直流伺服驱动器,发送不同的命令报文控制驱动器的启停和运行速度,进而控制驱动器下端连接的四台伺服电机的转动速度。控制中心系统使用的是西门子 S7-1200 PLC,支持 Profinet 总线协议,直流伺服驱动器支持 CAN 协议 解决方案: 由于直流伺服驱动器正常工作时支持 CAN 协议通讯,控制中心系统西门子 S7-1200 PLC 支持 Profinet总线协议通讯,作为 Profinet 主站,两种协议不同,不能直接连接实现数据交换,需通过第三方协议转换模块才能实现不同协议间的数据交换。 北京倍讯科技自主研发生产的Profinet转Can网关能够实现
[嵌入式]
Profinet转Can协议网关和西门子<font color='red'>PLC</font>和直流伺服驱动器通讯案例
浅谈PLC控制器频率与伺服驱动器和负载转速
可以看出如果机械结构确定了,这个值也是确定的,1个脉冲对应走的位移是确定的,即系统的精度是确定的。如5mm导程的丝杠,与亿维伺服驱动直接连接的话,精度为5/10000mm。 一、PLC控制器频率与伺服驱动器和负载转速 已知伺服驱动器Pm=10000Pulse/r,PLC控制器发出的频率f (puls/s),如何计算负载轴的转速n(r/s), 当伺服电机直接连接轴,设电子齿轮比分子比分母为N。 n=(f*N)/Pm ...........此公式求出单位为r/s,1s发的脉冲数除以一圈需要的脉冲数=1s转动的圈数。 n :负载转速,单位:r/s。 f:控制器发出的频率,单位:pls/s。 N:驱动器电子齿轮比。 Pm:伺服驱动
[嵌入式]
浅谈<font color='red'>PLC</font>控制器频率与伺服驱动器和负载转速
西门子S7-300PLC的PID功能块的应用经验
1、可以在软件中进行自动整定; 2、自动整定的PID参数可能对于系统来说不是最好的,就需要手动凭经验来进行整定。P参数过小,达到动态平衡的时间就会太长;P参数过大,就容易产生超调。 PID功能块在梯形图(程序)中应当注意的问题: 1、最好采用PID向导生成PID功能块; 2、我要说一个最简单的也是最容易被人忽视的问题,那就是:PID功能块的使能控制只能采用SM0.0或任何1个存储器的常开触点并联该存储器的常闭触点这样的永不断开的触点! 笔者在以前的一个工程调试中就遇到这样的问题:PID功能块有时间动作正常,有时间动作不正常,而且不正常时发现PID功能块都没问题(PID参数正确、使能正确),就是没有输出。最后查了好久,突然意识到
[嵌入式]
D-PHY MIPI双相机/双显示应用中的模拟开关
    移动行业处理器接口联盟(MIPI)标准在移动设备行业日益流行。现在的移动设备普遍都带有双屏显示和/或双相机架构,尤其是在中高端产品中。MIPI标准最初定义为点到点架构,故第一代处理器、传感器模块和显示屏都只有单个MIPI端口。   本文描述如何利用模拟开关,让原有处理器能够在不影响现有系统架构的条件下,轻松与双相机或双显示屏连接,并且在实际应用中通过隔离加载在MIPI总线上的第二个相机(或显示屏)的传输线影响来增强系统性能。此外,模拟开关具有双向能力,还能够实现协处理器到单个相机或显示屏的多路复用,同时不影响性能。   随着新型概念手机向三屏显示发展,模拟开关多路器甚至对更先进的带2个MIPI端口的处理器也大有益处。因
[嵌入式]
智能电网通讯需求升温,三大PLC技术联盟混战升级
微电网(Micro Grid)基础设施须透过窄频电力线通讯(PLC)技术,即时监控并回报区域用电、再生能源及储能系统电量资讯,以利后端电力管理平台进行配电调度,发挥智慧能源管理效益,因而激励G3、Prime及HomePlug三大PLC标准联盟积极研拟新一代规范、晶片解决方案,圈地市场版图。三大PLC技术阵营正相互在微电网应用领域较劲。   意法半导体(ST)技术行销经理吴玉君表示,智慧电网(Smart Grid)、微电网须具备支援不同传输距离的通讯方案,才能顺利与电力公司的电力管理平台连结;其中,应用低频段的PLC技术将是各个区域性微电网,以及微电网内部太阳能、储能系统相互连接的主要方式,因而吸引晶片商争相卡位。意法半导体在
[模拟电子]
智能电网通讯需求升温,三大<font color='red'>PLC</font>技术联盟混战升级
PLC梯形图编程有哪些规范_plc梯形图编程实例
    PLC梯形图编程的四个基本概念   1.软继电器   PLC梯形图中的某些编程元件沿用了继电器这一名称,如输入继电器、输出继电器、内部辅助继电器等,但是它们不是真实的物理继电器,而是一些存储单元(软继电器),每一软继电器与PLC存储器中映像寄存器的一个存储单元相对应。该存储单元如果为“1”状态,则表示梯形图中对应软继电器的线圈“通电”,其常开触点接通,常闭触点断开,称这种状态是该软继电器的“1”或“ON”状态。如果该存储单元为“0”状态,对应软继电器的线圈和触点的状态与上述的相反,称该软继电器为“0”或“OFF”状态。使用中也常将这些“软继电器”称为编程元件。     2.能流   有一个假想的“概念电流”或“能流
[工业控制]
基于CC-Link网络的PLC器件实现石膏板生产系统的设计
1、 引言 随着通信技术和控制技术的发展,以及工业现场总线的普及。在纸面石膏板生产企业,逐渐淘汰了以往的模拟量调速,取而代之的是更为先进的现场总线控制技术。现场总线控制依靠网络技术传输数据。比传统的模拟量调速传输速度块,稳定可靠,精度高。 2、 石膏板同步系统 同步系统控制在石膏板的生产过程中是重要的控制系统, 控制设备分散,它是由1#凝固皮带、2#凝固皮带、输送机、切断机、切断后加速1、切断后加速2、和干燥机等设备组成。如图1所示。设备间一致的同步速度可以保证连续稳定的生产出合格的石膏板,否则将导致纵鼻,起包,拉断等严重的后果,尤其是在高速的生产线中,精确的同步速度能保证稳定生产。系统必须保持严格的同步速度, 即要求按照特定
[嵌入式]
基于CC-Link网络的<font color='red'>PLC</font>器件实现石膏板生产系统的设计
plc控制系统原理及分类
  PLC内部工作方式一般是采用循环扫描工作方式,在一些大、中型的PLC中增加了中断工作方式。当用户将用户程序调试完成后,通过编程器将其程序写入PLC存储器中,同时将现场的输入信号和被控制的执行元件相应的连接在输入模块的输入端和输出模块的输出端,接着将PLC工作方式选择为运行工作方式,后面的工作就由PLC根据用户程序去完成,概述图是PLC执行过程框图。PLC在工作过程中,主要完成六个模块的处理。   1.电源组件电源组件用于提供PLC运行所需的电源,可将外部电源转换为供PLC内部与案件适用的电源。2.微处理器CPU及存储器组件微处理器CPU是PLC的核心器件,CPU因生产厂商各有不同,有采用市场销售的标准芯片,也有采用可编程序
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved