搜档网
当前位置:搜档网 › FX3U-485-BD实现PLC和PC的485通信

FX3U-485-BD实现PLC和PC的485通信

FX3U-485-BD实现PLC和PC的485通信
FX3U-485-BD实现PLC和PC的485通信

FX3U-485-BD实现PLC和PC的485通信

在PLC和主站PC间进行通信,且PLC和主站PC间距离较长,考虑到RS232最远通信距离为15m不能达到我们的要求,在本项目中使用RS485进行通信。

一.硬件:主站PC端使用MOXA的4通道PCI-RS485多串口卡,PLC为FX3U-128MT,由于本身不含485通信,故安装FX3U-485-BD。

1、引脚定义:

二.PLC中需要用到的指令和寄存器

1.指令:RS

功能:通过安装在基本单元上的RS-232C或RS-485串行通信口(仅通道1)进行无协议通信,从而执行数据的发送和接收的指令。

其格式为:[RS S* m D* n]

其中S* m D* n的含义分别为:

数据寄存器:

通信格式寄存器D8120的各位含义即设置方法:

设定D8120=0081H,即9600bps,8位数据位,1为停止位,无奇偶校验,无帧头帧尾,RS485通信,

特殊辅助继电器:

三.实验步骤:

(1)硬件连接

i)安装FX3U-485-BD和MOXA多串口卡

ii)焊接通信电缆。

根据MOXA和FX3U-485-BD的引脚定义,RS485通信电缆为:

(2)编写PLC端实验程序

(3)在PC端打开串口调试助手,设置相同的传输协议,PC端发送数据,PLC端不能接收,PLC发送数据,PC端不能接收。查找资料,并分析原因。由于RS485的差分信号在MOXA 端使用+/-表示,而FX3U-485-BD端使用A/B表示,在两线制RS485通信中,一般使用A 表示Data+,B表示Data-,故怀疑是否MOXA多串口卡中的引脚定义表示错误(即括号中

重新实验,PLC发送,PC能正常接收,PC发送,PLC无法接收。

(4)查找资料,分析原因,在另外一本《三菱可编程控制器手册》中明确指出使用D8120的设置中,如果使用FX3U-485-BD或FX3U-232-BD,b11、b10必须设定为(1,1),故将D8120设定为C81H,修改PLC程序,PC和PLC都能够正常发送和接收。

宇电AI501 RS485通讯协议说明

AIBUS通讯协议说明(V7.0) AIBUS是厦门宇电自动化科技有限公司为AI系列显示控制仪表开发的通讯协议,能用简单的指令实现强大的功能,并提供比其它常用协议(如MODBUS)更快的速率(相同波特率下快3-10倍),适合组建较大规模系统。AIBUS采用了16位的求和校正码,通讯可靠,支持4800、9600、19200等多种波特率,在19200波特率下,上位机访问一台AI-7/8系列高性能仪表的平均时间仅20mS,访问AI-5系列仪表的平均时间为50mS。仪表允许在一个RS485通讯接口上连接多达80台仪表(为保证通讯可靠,仪表数量大于60台时需要加一个RS485中继器)。AI系列仪表可以用PC、触摸屏及PLC作为上位机,其软件资源丰富,发展速度极快。基与PC的上位机软件广泛采用WINDOWS作为操作环境,不仅操作直观方便,而且功能强大。最新的工业平板触摸屏式PC的应用,更为工业自动化带来新的界面。这使得AIDCS系统价格大大低于传统DCS系统,而性能及可靠性也具备比传统DCS系统更优越的潜力,V7.X版本AI-7/8系列仪表允许连续写参数,写给定值或输出值,可利用上位机将仪表组成复杂调节系统。 一、接口规格 AI系列仪表使用异步串行通讯接口,接口电平符合RS232C或RS485标准中的规定。数据格式为1个起始位,8位数据,无校验位,1个或2个停止位。通讯传输数据的波特率可调为4800~19200 bit/S,通常用9600 bit/S,单一通讯口所连接仪表数量大于40台或需要更快刷新率时,推荐用19200bit/S,当通讯距离很长或通讯不可靠常中断时,可选4800bit/S。AI仪表采用多机通讯协议,采用RS485通讯接口,则可将1~80台的仪表同时连接在一个通讯接口上。 RS485通讯接口通讯距离长达1KM以上(部分实际应用已达3-4KM),只需两根线就能使多台AI仪表与计算机进行通讯,优于RS232通讯接口。为使用普通个人计算机PC能作上位机,可使用RS232/RS485或USB/RS485型通讯接口转换器,将计算机上的RS232通讯口或USB口转为RS485通讯口。宇电为此专门开发了新型RS232/RS485及USB/RS485转换器,具备体积小、无需初始化而可适应任何软件、无需外接电源、有一定抗雷击能力等优点。 按RS485接口的规定,RS485通讯接口可在一条通讯线路上连接最多32台仪表或计算机。需要联接更多的仪表时,需要中继器,也可选择采用75LBC184或MAX487等芯片的通讯接口。目前生产的AI仪表通讯接口模块通常采用75LBC184,这种芯片具备一定的防雷击和防静电功能,且无需中继器即可连接约60台仪表。 AI仪表的RS232及RS485通讯接口采用光电隔离技术将通讯接口与仪表的其他部分线路隔离,当通讯线路上的某台仪表损坏或故障时,并不会对其它仪表产生影响。同样当仪表的通讯部分损坏或主机发生故障时,仪表仍能正常进行测量及控制,并可通过仪表键盘对仪表进行操作,工作可靠性很高。16位校验码的正确性是简单奇偶校验的30000倍,基本能保证数据可靠性。并且同一网络上有其他公司也采用主从方式通讯的产品时,如PLC、变频器等,多数情况下AI系列仪表都不会受其它公司产品通讯干扰,不会产生采集数据混乱或无法通讯的问题。但是AI仪表协议并不能保证其它公司产品能否正常工作,所以除非万不得已,不应将AI仪表与其它产品混在一个RS485通讯总线上,而应分别使用不同的总线。 二、通讯指令 AI仪表采用16进制数据格式来表示各种指令代码及数据。AI仪表软件通讯指令经过优化设计,标准的通讯指令只有两条,一条为读指令,一条为写指令,两条指令使得上位机软件编写容易,不过却能100%完整地对仪表进行操作;标准读和写指令分别如下: 读:地址代号+52H(82)+要读的参数代号+0+0+校验码 写:地址代号+43H(67)+要写的参数代号+写入数低字节+写入数高字节+校验码 地址代号:为了在一个通讯接口上连接多台AI仪表,需要给每台AI仪表编一个互不相同的通讯地址。有效的地址为0~80(部分型号为0~100),所以一条通讯线路上最多可连接81台AI仪表,仪表的通讯地址由参数Addr决定。仪表内部采用两个重复的128~208(16进制为80H~D0H)之间数值来表示地址代号,由于大于128的数较少用到(如ASC方式的协议通常只用0-127之间的数),因此可降低因数据与地址重复造成冲突的可能性。

PLC与PC通信

4、以太网编程 采用以太网编程访问plc,其实又可以分为两种: 一种是socket接口,需要在plc里面编程进行收/发,大概是fc5/fc6吧,印象不深了,当然plc里面要定义一个connection,填好地址、端口号之类的信息,这个对于熟悉西门子工业通讯的人是很easy的事情。Pc侧采用socket接口编程,最简单的就是vb里面的wisock控件,当然这掩盖了很多细节。Socket编程本来就是一门艺术。这个方法的优点应该是pc侧编程稍微简单点(相对于后一种),而且可以不局限于windows平台,因为socket接口被诸如unix支持的更好。 第二种是采用西门子的sapi接口函数,这样plc里面不需要过多的编程了,当然pc侧的编程难度就比较高了,ms只能用c来写。 为了允许PC机和工作站上的应用程序与西门子S7系列产品进行S7通讯西门子公司提供了一个SAPI-S7应用程序接口通过它可以灵活而方便地跟西门子S7系列产品进行通信。安装SIMATIC Net软件后会在系统system32目录下生成一个s732.dll文件该动态链接库提供了大量基于WindowsNT、Window95/98、Windows3.11和MS-DOS的函数这样就使得用户解决PLC 和PC机的数据交换和数据处理问题变为可能。 通信编程包括两个部分: (1)CP连接组态 (2)PLC与上位机通信编程。 4.1 CP连接组态 可采用step7软件或step7软件中用于工业以太网的NCMS7软件对CP进行网络组态。通讯处理器CP可连接PCPC/PG上一般装网卡CP1613。在Windows控制面板下的“set PC/PG”下安装所用网卡驱动程序并设协议、站号、波特率、是否为主站完成对VFDs(Virtual Field Device)和S7 connections的配置。 4.2 PLC和上位机的通讯编程 S7-300/400PLC有以下各类资源: (1)输入点I:接收外部开关量信号 (2)输出点Q:输出给外部的开关量信号 (3)内部辅助点M:存放所需中间结果 (4)时间继电器T (5)计数器 (6)数据块DB:存放程序数据的存储区域 (7)外设输入DI:主要接收模拟量输入信号经A/D转换 (8)外设输出DQ:给出模拟两输出值。 要读/写这些资源首先要建立PLC和PC机的连接。 4.2.1 初始化与PLC的连接 SAPI-S7应用程序接口提供的管理服务模块(Administrative Services)提供了一些可供读出配置信息和登录/退出通讯系统的函数,下面作一些简要介绍: s7_get_device() :通过此函数用户程序可以查询所有已安装的CP的CP名。 s7_get_vfd():通过此函数用户程序可以查询任一指定CP的所有已配置的VFD。 s7_init():通过此函数用户程序可登录通讯系统。 s7_get_cref() :此函数提供了一个指向所选S7 connection名的指针。 s7_get_conn():此函数返回已登录VFD的所有S7 connection名和指向他们的指针。 s7_shut():通过此函数用户程序可退出通讯系统。 一个应用程序可以登录一个或多个CP的若干个VFD只有当应用程序登录CP及其所选的VFD

RS485仪表通讯协议

目录 1.引言 (1) 1.1仪表通讯及命令 (1) 1.2仪表基本构成与通讯命令的关系 (2) 2.接线 (3) 2.1RS232接口的仪表与计算机的接线 (3) 2.2RS485接口的仪表与计算机的接线 (4) 2.3关于JR485转换器 (4) 3.通讯接口要素 (5) 4.仪表的版本号 (6) 5.校验核 (7) 6.一般仪表命令集详解 (8) 6.0关于命令集 (8) 6.1读版本号命令 (10) 6.2读主测量值命令 (10) 6.3读其它测量值命令 (11) 6.4读模拟量输出值及开关量输入输出状态命令 (12) 6.5输出模拟量命令 (13) 6.6输出开关量命令 (14)

6.7读仪表参数符号命令 (15) 6.8读仪表参数命令 (16) 6.9设置仪表参数命令 (16) 7.巡检仪通讯命令集 (18) 7.0关于命令集 (18) 7.1读测量值命令 (19) 7.2读报警状态命令 (20) 7.3读参数命令 (21) 7.4设置参数命令 (22) 7.5参数地址表 (23) 8.测试软件 (25) 8.0关于测试软件 (25) 8.1DOS环境测试 (25) 8.2W INDOWS 环境下测试 (26) 9.故障诊断及应用笔记 (29) 9.1故障诊断流程图 (29) 9.2应用笔记 (30) 附录1 通讯中使用的ASCⅡ码表 (31) 附录2 XS系列仪表通讯协议的解释与补充 (32)

1.引言 1.1 仪表通讯及命令 仪表能连接到所有的计算机并与之通讯,采用RS232或RS485传输标准。仪表与计算机之间的往来通讯都以ASCⅡ码实现,意味着计算机能以任何高级语言编程。 仪表的命令集由数条指令组成,完成计算机从仪表读取测量值、报警状态、控制值、参数值,向仪表输出模拟量、数字量,以及对仪表的参数设置。与通过仪表面板设置参数一样,通过计算机对仪表的参数设置被存入EEPROM存贮器,在掉电情况下也能保存这些参数。 为避免通讯冲突,所有的操作均受计算机控制。当仪表不进行发送时,都处于侦听方式。计算机按规定地址向某一仪表发出一个命令,然后等待一段时间,等候仪表回答。如果没收到回答,则超时中止,将控制转回计算机。 由于仪表的特性不同,我们将仪表的通讯命令集分为3类: 第1类:一般仪表 包括除巡检仪和无纸记录仪外的全部仪表。 命令详解见第6章 第2类:巡检仪表 命令详解见第7章 第3类:无纸记录仪 通讯规程见《无纸记录仪用户手册》

rs485总线通讯协议

竭诚为您提供优质文档/双击可除 rs485总线通讯协议 篇一:Rs485通讯协议说明 摘要:阐述了Rs-485总线规范,描述了影响Rs-485总线通信速率和通信可靠性的三个因素,同时提出了相应的解决方法并讨论了总线负载能力和传输距离之间的具体关系。 关键词:Rs-485现场总线信号衰减信号反射 当前自动控制系统中常用的网络,如现场总线can、profibus、inteRbus-s以及aRcnet的物理层都是基于 Rs-485的总线进行总结和研究。 一、eiaRs-485标准 在自动化领域,随着分布式控制系统的发展,迫切需要一种总线能适合远距离的数字通信。在Rs-422标准的基础上,eia研究出了一种支持多节点、远距离和接收高灵敏度的Rs-485总线标准。 Rs-485标准采有用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求: 接收器的输入电阻Rin≥12kΩ 驱动器能输出±7V的共模电压

输入端的电容≤50pF 在节点数为32个,配置了120Ω的终端电阻的情况下,驱动器至少还能输出电压1.5V(终端电阻的大小与所用双绞线的参数有关) 接收器的输入灵敏度为200mV(即(V+)-(V-)≥0.2V,表示信号“0”;(V+)-(V-)≤-0.2V,表示信号“1”)因为Rs-485的远距离、多节点(32个)以及传输线成本低的特性,使得eiaRs-485成为工业应用中数据传输的首选标准。 二、影响Rs-485总线通讯速度和通信可靠性的三个因素 1、在通信电缆中的信号反射 在通信过程中,有两种信号因导致信号反射:阻抗不连续和阻抗不匹配。 阻抗不连续,信号在传输线末端突然遇到电缆阻抗很小甚至没有,信号在这个地方就会引起反射,如图1所示。这种信号反射的原理,与光从一种媒质进入另一种媒质要引起反射是相似的。消除这种反射的方法,就必须在电缆的末端跨接一个与电缆的特性阻抗同样大小的终端电阻,使电缆的阻抗连续。由于信号在电缆上的传输是双向的,因此,在通讯电缆的另一端可跨接一个同样大小的终端电阻,如图2所示。

PLC与PC(个人计算机)通讯概述

PLC与PC(个人计算机)通讯概述 个人计算机(以下简称PC)具有较强的数据处理功能,配备着多种高级语言,若选择适当的操作系统,则可提供优良的软件平台,开发各种应用系统,特别是动态画面显示等。随着工业PC的推出,PC在工业现场运行的可靠性问题也得到了解决,用户普遍感到,把PC连入PLC应用系统可以带来一系列的好处。 1. PC与PLC实现通信的意义 把PC连入PLC应用系统具有以下四个方面作用: 1)构成以PC为上位机,单台或多台PLC为下位机的小型集散系统,可用PC实现操作站功能。 2)在PLC应用系统中,把PC开发成简易工作站或者工业终端,可实现集中显示、集中报警功能。 3)把PC开发成PLC编程终端,可通过编程器接口接入PLC,进行编程、调试及监控。 4)把PC开发成网间连接器,进行协议转换,可实现PLC与其它计算机网络的互联。 2. PC与PLC实现通信的方法 把PC连入PLC应用系统是为了向用户提供诸如工艺流程图显示、动态数据画面显示、报表编制、趋势图生成、窗口技术以及生产管理等多种功能,为PLC应用系统提供良好、物美价廉的人机界面。但这对用户的要求较高,用户必须做较多的开发工作,才能实现PC 与PLC的通信。 为了实现PC与PLC的通信,用户应当做如下工作: 1)判别PC上配置的通信口是否与要连入的PLC匹配,若不匹配,则增加通信模板。 2)要清楚PLC的通信协议,按照协议的规定及帧格式编写PC的通信程序。PLC中配有通信机制,一般不需用户编程。若PLC厂家有PLC与PC的专用通信软件出售,则此项任务较容易完成。 3)选择适当的操作系统提供的软件平台,利用与PLC交换的数据编制用户要求的画面。4)若要远程传送,可通过Modem接入电话网。若要PC具有编程功能,应配置编程软件。 3. PC与PLC实现通信的条件 从原则上讲,PC连入PLC网络并没有什么困难。只要为PC配备该种PLC网专用的通信卡以及通信软件,按要求对通信卡进行初始化,并编制用户程序即可。用这种方法把PC连入PLC 网络存在的唯一问题是价格问题。在PC上配上PLC制造厂生产的专用通信卡及专用通信软

RS485主从式多机通讯协议

RS485主从式多机通讯协议 一、数据传输协议 此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。 此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息按本协议发出。 1、数据在网络上转输 控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。 主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则从设备不作任何回应。协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。 从设备回应消息也由协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误(无相应的功能码),或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。 2、在对等类型网络上转输 在对等网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。 在消息位,本协议仍提供了主—从原则,尽管网络通信方法是“对等”。如果一控制器发送一消息,它只是作为主设备,并期望从设备得到回应。同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的控制器。 3、查询—回应周期 (1)查询 查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。错误检测域为从设备提供了一种验证消息内容是否正确的方法。 (2)回应 如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收集的数据。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。 二、传输方式 控制器能设置传输模式为RS485串行传输,通信参数为9600,n,8,1。在配置每个控制器的时候,在一个网络上的所有设备都必须选择相同的串口参数。 地址功能代码数据数量数据1 ...….数据n CRC字节 每个字节的位 · 1个起始位 · 8个数据位,最小的有效位先发送 · 1个停止位 错误检测域 · CRC(循环冗余码校验) 三、消息帧

带你深入解读:基于多线程技术的PLC与PC的通讯方式

带你深入解读:基于多线程技术的PLC与PC的通讯方式 0.引言在现代工业控制系统中,PLC以其高可靠性、适应工业过程现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据采集分析、计算机上位管理,是实现机电一体化的重要手段和发展方向。但PLC无法单独构成完整的控制系统,无法进行复杂的运算和显示各种实时控制图表和曲线,无良好的用户界面,不便于监控。将个人计算机(PC)与PLC结合起来使用,可以使二者优势互补,充分利用个人计算机强大的人机接口功能、丰富的应用软件和低廉的价格优势,组成高性能价格比的控制系统。 1.系统构成推进系统中,PC机选用工控计算机。它是整个控制系统的核心,是上位机。其主要利用良好的图形用户界面,显示从PLC接收的开关量和控制手柄的位置,进行一些较复杂的数据运算,并且向PLC发出控制指令。 PLC是该系统的下位机,负责现场高速数据采集(控制手柄的位置),实现逻辑、定时、计数、PID调节等功能,通过串行通讯口向PC机传送PLC工作状态及有关数据,同时从PC机接受指令,向蜂鸣器、指示灯、滑油泵、控制手柄的位置等发出命令,实现PC机对控制系统的管理,提高了PLC的控制能力和控制范围,使整个系统成为集散控制系统。 2.通讯协议计算机与PLC之间的通信是建立在以RS232标准为基础的异步双向通信上的,FX系列PLC有其特定的通信格式,整个通信系统采用上位机主动的通信方式,PLC内部不需要编写专门的通信程序,只要把数据存放在相应的数据寄存器中即可,每个数据寄存器都有相应的物理通信地址,通信时计算机直接对物理通信地址进行操作。通信过程中,传输字符和命令字以ASCⅡ码为准,常用的字符及其ASCⅡ码对应关系。 计算机与PLC进行通讯时,计算机与PLC之间是以帧为单位进行信息交换的,其中控制字符ENQ、ACK、NAK,可以构成单字符帧发送和接受,其余的信息帧发送和接受时都是由字符STX、命令字、数据、字符ETX以及和校验5部分组成。

RS485通讯协议

RS485 通讯协议 RS-232与RS-422之间转换原理和接法 通常我们对于视频服务器、录像机、切换台等直接播出、切换控制主要使用串口进行,主要使用到RS-232、RS-422与RS-485三种接口控制。下面就串口的接口标准以及使用和外部插件和电缆进行探讨。 RS-232、RS-422与RS-485标准只对接口的电气特性做出规定,而不涉及接插件、电缆或协议,在此基础上用户可以建立自己的高层通信协议。例如:视频服务器都带有多个RS422串行通讯接口,每个接口均可通过RS422通讯线由外部计算机控制实现记录与播放。视频服务器除提供各种控制硬件接口外,还提供协议接口,如RS422接口除支持RS422的Profile 协议外,还支持Louth、Odetics、BVW等通过RS422控制的协议。 RS-232、RS-422与RS-485都是串行数据接口标准,都是由电子工业协会(EIA)制订并发布的,RS-232在1962年发布。RS-422由RS-232发展而来,为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mbps,传输距离延长到4000英尺(速率低于100Kbps时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和突保护特性,扩展了总线共模范围,后命名为TIA/EIA485-A标准。 1. RS-232串行接口标准 目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。RS-232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS-232采取不平衡传输方式,即所谓单端通讯。收、发端的数据信号是相对于信号地。典型的RS-232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5~+15V,负电平在5~-15V电平。当无数据传输时,线上为TTL,从开始传送数据到结束,线上电平从TTL电平到RS-232电平再返回 TTL电平。接收器典型的工作电平在+3~+12V与-3~-12V。由于发送电平与接收电平的差仅为2V至3V左右,所以其共模抑制能力差,再加上双绞线上的分布电容,其传送距离最大为约15米,最高速率为20Kbps。RS-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3kΩ~7kΩ。所以RS-232适合本地设备之间的通信。 2. RS-422与RS-485串行接口标准 (1)平衡传输 RS-422、RS-485与RS-232不一样,数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B。通常情况下,发送驱动器A、B之间的正电平在+2~+6V,是一个逻辑状态,负电平在-2V~6V,是另一个逻辑状态。另有一个信号地C,在RS-485中还有一“使能”端,而在RS-422中这是可用可不用的。“使能”端是用于控制发送驱动器与传输线的切断与连接。当“使能”端起作用时,发送驱动器处于高阻状态,称作“第三态”,即它是有别于逻辑“1”与“0”的第三态。 (2)RS-422电气规定 由于接收器采用高输入阻抗和发送驱动器比RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。即一个主设备(Master),其余为从设备(Salve),从设备之间不能通信,所以RS-422支持点对多的双向通信。RS-422四线接口由于采用单独的发送和接收通道,因此不必控制数据方向,各装置之间任何必须的信号交换均可以按软件方式(XON/XOFF握手)或硬件方式(一对单独的双绞线)实现。RS-422的最大传输距离为

S7_200PLC与PC自由口通讯的多种实现方法

S7-200PLC与PC自由口通讯的多种实现方法 1 引言 西门子S7-200PLC是德国西门子公司生产小型PLC。S7-200以其高可靠性、指令丰富、内置功能丰富、强劲通讯能力、较高性价比等特点,工业控制领域中被广泛应用。S7-200PLC突出特点之一是自由口通讯功能。如何实现 S7-200PLC与个人计算机互联通信,是S7-200PLC应用技术关键。 可编程控制器与计算机之间通讯一般是RS-422口或RS-232C口进行,信息交换方式为字符串方式,运用RS-232C或RS-422通道,容易配置一个与计算机进行通信系统,将所有软元件数据和状态用可编程控制器送入计算机,由计算机采集这些数据,进行分析及运行状态监测。用计算机改变可编程控制器设备初始值和设定值,实现计算机与可编程控制器直接控制,一旦确定了可编程控制器控制指令,就能很方便与计算机连接。 2 S7-200自由口通讯模式 S7-200支持多种通讯模式,如点点接口(PPI)、多点接口(MPI)、Rrofibus DP等。PPI等通讯协议主要用于西门子系列产品之间通讯以及对PLC编程。自由口模式下,可由用户控制串行通讯接口,实现用户自定义通讯协议。用户可以用梯形图程序调用接收中断、发送中断、发送指令(XMT)、接受指令(RCV)来控制通信操作。自由口模式下,通信协议完全由梯形图程序控制。

S7-200CPU上通信口是与RS-485兼容9针D型连接器,PLC还提供了实现RS-485与PC机上RS-232C相连接PC/PPI电缆,利用它可以方便实现S7-200系列PLC与PC之间硬件连接。 S7-200编程软件为STEP7-Micro/WIN32,该软件有STL、FBD和Ladder三种编程模式,有SIMATIC指令和IEC131-3指令两种指令。本文所给出范例是使用SIMATIC指令STL编程。 3 S7-200 PLC端通讯程序实现 PLC程序分为主程序和中断程序。主程序完成初始化通信口、开中断、判断、发送数据等功能,中断程序完成接收和发送数据功能。接收指令(RCV)启动或终止接收信息功能,必须为接收操作指定开始和结束条件。发送指令(XMT)自由口模式下依靠通讯口发送数据。 3.1 控制字选取 反映CPU工作方式模式开关当前位置特殊存储器位为SM0.7,它控制自由端口模式进入。当SM0.7为0时,模式开关处于TREM位置;当SM0.7为1时模式开关处于RUN位置。而当模式开关位于RUN位置时,才允许进行自由口通讯。SMB30是自由口模式控制字节,用来设定校验方式、通讯协议、波特率等通讯参数(其它控制字设定参阅有关书籍)。 3.2 程序一些简单介绍 NETWORK1

ZNJC2 RS485通讯 modbus 协议

_ MODBUS 通讯协议说明 1. 通讯相关的参数 2.通讯说明 2.1 数据格式说明 控制器采用RS-485总线,协议符合ModBus 规约,数据格式有标准MODBUS-RTU 、 非标准MODBUS-RTU(16进制)和ASC(ASC Ⅱ码)3种格式。 数据传输均采用8位数据位、1位停止位、无奇偶校验位。波特率可设为2400、4800、9600和19200 bit/s 。 通讯传送分为独立的信息头,和发送的编码数据。以下的通讯传送方式定义与RTU 通讯规约相兼容: 2.2 非标准MODBUS-RTU(16进制)数据格式详细说明 下面以RTU(16进制)数据格式进行详细说明,ASC Ⅱ码数据格式只是把16进制代码 转换成ASC Ⅱ码字符。 地址码:这个字节表明由用户设定地址码的从机将接收由主机发送来的信息。并且每个从机都有具有唯一的地址码,并且响应回送均以各自的地址码开始。主机发送的地址码表明将发送到的从机地址,而从机发送的地址码表明回送的从机地址。 功能码:通讯传送的第二个字节。ModBus 通讯规约定义功能号为01H 到7FH 。本控制器利用其中的一部分功能码。作为主机请求发送,通过功能码告诉从机执行什么动作。作为从机响应,从机发送的功能码与从主机发送来的功能码一样,并表明从机已响应主机进行操作。如果从机发送的功能码的

最高位 (比如功能码大于7FH),则表明从机没有响应操作或发送出错。 数据区:数据区是根据不同的功能码而不同。 CRC码:二字节的错误检测码。 当通讯命令发送至仪器时,符合相应地址码的设备接通讯命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务;然后把执行结果返送给发送者。返送的信息中包括地址码、执行动作的功能码、执行动作后结果的数据以及错误校验码。如果出错就不发送任何信息。 2.2.2 信息帧格式: (1)地址码: 地址码是信息帧的第一字节(8位),从1到255。这个字节表明由用户设置地址的从机将接收由主机发送来的信息。每个从机都必须有唯一的地址码,并且只有符合地址码的 从机才能响应回送。当从机回送信息时,相当的地址码表明该信息来自于何处。 (2)功能码: 主机发送的功能码告诉从机执行什么任务。表2列出的功能码都有具体的含义及操作。 (3 数据区包含需要从机执行什么动作或由从机采集的返送信息。这些信息可以是数值、参考地址等等。例如,功能码告诉从机读取寄存器的值,则数据区必需包含要读取寄存器 的起始地址及读取长度。对于不同的从机,地址和数据信息都不相同。 (4)错误校验码: 主机或从机可用校验码进行判别接收信息是否出错。有时,由于电子噪声或其它一些干扰,信息在传输过程中会发生细微的变化,错误校验码保证了主机或从机对在传送过程 中出错的信息不起作用。这样增加了系统的安全和效率。错误校验采用CRC-16校验方法。 注: 信息帧的格式都基本相同:地址码、功能码、数据区和错误校验码。 2.2.3 错误校验 参与冗余循环码(CRC)计算的包括:地址码、功能码、数据区的字节。 冗余循环码包含2个字节,即16位二进制。CRC码由发送设备计算,放置于发送信息的尾部。接收信息的设备再重新计算接收到信息的 CRC码,比较计算得到的CRC码是否与接收到的相符,如果两者不相符,则表明出错。 CRC码的计算方法是,先预置16位寄存器全为1。再逐步把每8位数据信息进行处理。在进行CRC码计算时只用8位数据位,起始位及停止位,如有奇偶校验位的话也包括奇偶校验位,都不参与CRC码计算。 在计算CRC码时,8位数据与寄存器的数据相异或,得到的结果向低位移一字节,用0填补最高位。再检查最低位,如果最低位为1,把寄存器的内容与预置数相异或,如果最低位为0,不进行异或运算。 这个过程一直重复8次。第8次移位后,下一个8位再与现在寄存器的内容相异或,这个过程与以上一样重复8次。当所有的数据信息处理完后,最后寄存器的内容即为CRC码值。 计算CRC码的步骤为: (1).预置16位寄存器为十六进制FFFF(即全为1)。称此寄存器为CRC寄存器; (2).把第一个8位数据与16位CRC寄存器的低位相异或,把结果放于CRC寄存器; (3).把寄存器的内容右移一位(朝低位),用0填补最高位,检查最低位(注意:这时的最低位指移位前 的最低位,不是移位后的最低位); (4).如果最低位为0:重复第3步(再次移位)

RS485通信协议

串行数据通信的协议从RS-232到千兆位以太网,虽然每种协议都有特定的应用领域,但任何情况下我们都必须考虑成本和物理层(PHY)性能。 本文主要介绍RS-485协议及该协议所适合的应用。同时给出了根据电缆长度、系统设计以及元件选择来优化数据速率的方法。 传输协议 什么是RS-485?Profibus又是什么?与其它串行协议相比,它们的性能如何?适用于哪些应用?为了回答这些问题,我们对RS-485 物理层(PHY)、RS-232和RS-422的特性、功能进行了总体比较[1](本文中的RS表示ANSIEIA/TIA标准)。 RS-232是一个最初用于调制解调器、打印机及其它PC外设的通讯标准,提供单端20kbps的波特率,后来速率提高至1Mbps。RS-232的其它技术指标包括:标称±5V发送电平、±3V接收电平(间隔/符号)、2V共模抑制、2200pF最大电缆负载电容、300最大驱动器输出电阻、3k最小接收器(负载)阻抗、100英尺(典型值)最大电缆长度。RS-232只用于点对点通信系统,不能用于多点通信系统,所有RS-232系统都必须遵从这些限制。 RS-422是单向、全双工通信协议,适合嘈杂的工业环境。RS-422规范允许单个驱动器与多个接收器通信,数据信号采用差分传输方式,速率最高可达50Mbps。接收器共模范围为±7V,驱动器输出电阻最大值为100,接收器输入阻抗可低至4k。 RS-485标准 RS-485是双向、半双工通信协议,允许多个驱动器和接收器挂接在总线上,其中每个驱动器都能够脱离总线。该规范满足所有RS-422的要求,而且比RS-422稳定性更强。具有更高的接收器输入阻抗和更宽的共模范围(-7V至+12V)。 接收器输入灵敏度为±200mV,这就意味着若要识别符号或间隔状态,接收端电压必须高于+200mV或低于-200mV。最小接收器输入阻抗为12k,驱动器输出电压为±1.5V(最小值)、±5V(最大值)。 驱动器能够驱动32个单位负载,即允许总线上并联32个12k的接收器。对于输入阻抗更高的接收器,一条总线上允许连接的单位负载数也较高。RS-485接收器可随意组合,连接至同一总线,但要保证这些电路的实际并联阻抗不高于32个单位负载(375)。 采用典型的24AWG双绞线时,驱动器负载阻抗的最大值为54,即32个单位负载并联2个120终端匹配电阻。RS-485已经成为POS、工业以及电信应用中的最佳选择。较宽的共模范围可实现长电缆、嘈杂环境(如工厂车间)下的数据传输。更高的接收器输入阻抗还允许总线上挂接更多器件。

PLC与PC机之间的串行通信

P LC与PC机之间的串行通信 陈 岚 颜锦茹 江西工业贸易职业技术学院 江西南昌 330100 【摘 要】P LC与PC机之间主要采用串行通信方式,在满足通信条件的前提下,分析串行通信的硬件设计和软件构思,提出串行通信的接口设计方案和串行通信实施的工程要点。 【关键词】P LC与PC机 串行通信 随着P LC技术的快速发展,P LC与PC机之间的通信已经在工业自动化控制领域得到广泛应用,并给用户带来了各种控制功能,例如:工艺流程图显示、动态数据画面显示、报表显示、信号传送与控制等功能,使得P LC控制具备了良好的人机界面以及先进的控制技术。由于P LC与PC间的串行通讯方式具有使用线路少、成本低、简单易用,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。 一、串行通信简介 计算机通信是指不同设备通过线路互相交换编码数据,其主要目的在于将数据从某端传送到另一端,实现信息的交换。通信方式有并行和串行两种方式,由于并行传输方式在数据电压传送的过程中容易衰减互扰,并且线路工程费用较高,而串行通信方式则能很好的解决这些问题,因此,在工业应用中绝大多数使用串行通信方式。 二、P LC与PC机进行串行通信的条件 带异步通信适配器的PC与P LC只有满足以下条件才能互联通信:①异步通信接口的P LC才能与带有异步通信适配器的PC机互联,并要求双方采用的总线标准一致,否则要通过“总线标准变换单元”变换之后才能互联。②双方的初始化,使波特率、数据位数、停止位数、奇偶校验都相同。③要对P LC的通信协议分析清楚,严格按照协议规定及帧格式编写PC机的通信程序,P LC中配有通信机制,一般不需要用户编写。 三、P LC与PC机之间串行通信的实现 1.硬件连接。PC与P LC之间不能直接连接,P LC必须通过PC/ PP I电缆与单片机进行串行通信。其通信方式有RS232、RS485、RS422等多种方式,如果设备是采用RS232方式通讯,那么在一个串口下面只能挂接一个设备,如果采用RS485或者RS422的方式通讯,那么可以使用多个设备构成一个网络,为了识别各个不同设备,给每一个设备加一个标志,一般把这个标志称作设备地址,此时,总线上的设备分为主设备和从设备两类,在工作时,主设备在工作时会根据需要向从设备发送请求帧,请求一些数据或者是发送一条命令,在发完请求帧后主设备需等待,否则它会认为本次通讯失败,然后按照一定的逻辑判断是应该重发请求还是放弃,从设备一直在监听通讯线路上的数据,并对这些数据进行分析,当收到对自己的请求时,会发送一个相应的应答帧。图1表示了PC与P LC的通信过程,其中MAX232为电平转换芯片,实现TT L与RS-232之间的转换。 2.P LC通信协议。在PC机中必须根据互联的P LC的通信协议来编写通信程序,在此,我们介绍P LC的通信协议。 1.数据格式,P LC采用异步格式,由1位起始位、7位数据位、1位偶校验位和1位停止位组成,波特率为9600bp s,字符为AS C II码。 2.P LC有4个通信命令,它们是读命令、写命令、强制通命令、强制断命令。 3.通信控制字符,P LC一般采用面向字符的传输规程,用到5个通信控制字符,如下表所示。 控制字符AS C II代码功能 E NQ05H计算机发出请求 ACK06H P LC对E NQ的确认回答 NAK15H P LC对E NQ的否认回答 ST X02H信息帧开始标记 ET X03H信息帧结束标记 4.传输过程,PC与P LC之间采用应答方式通信,传输出错,则组织重发。而P LC则根据PC机的命令,在每个循环扫描结束处的E ND 语句后组织自动应答,无需用户在P LC一方编写程序。 四、P LC与PC机之间串行通信接口设计 1.通常来说,一个厂家的同系列的P LC产品,通讯协议一般是一样的。区别只是在于其中一些寄存器的大小不同。 2.而对不同厂家的P LC设备,可以将通讯过程和协议方式进行抽象,提取它们的共同点和变化点,封装和隐藏数据交换过程中的细节,达到通用的目的。通过封装格式,规范代码,统一接口,提高驱动开发效率,降低驱动开发的难度。提高代码的重用性,增强驱动的稳定性,减少设计中容易出现的错误。 3.封装的数据和操作包括:隐藏一次数据采集中的底层通讯过程(某些设备完成一次采集需要一次以上的收发过程,如西门子S7200);封装针对采集点分散的动态采集算法;对驱动的开发人员来说,需要关注的接口仅有以下部分:定义设备本身的属性;如地址、实时采集的时间要求等;定义设备的读写操作属性;如通道数量等;通用设计仅提供跟设备协议相关的组包和解包接口,实现过程将由开发人员完成。 五、P LC与PC机串行通信工程实施要点 1.保证通信协议一致,所有联机的子机接口设备波特率及通信格式需与主机相同,合理分配各从机地址,避免地址冲突。 2.合理布线,减少外界干扰对通信的影响,提高通信可靠性。可遵循以下两条原则:远离电源线、变频器等干扰源;当网线不能与电源线等干扰源避开时,应与电源线垂直,不能平行,并采用质量高的双绞线走线。 3.一般来说,提高通信波特率能够提高通信效率,但并非一味提高就肯定好,传送速率的提高同时也加大了传送代码出错的概率,使传送质量下降,特别是在工业控制场合,外界干扰比较大的情况下,有时应适当降低传送速率,反而可以得到更好的传送效率。 4.正确编译通信程序。P LC通信程序的编译在实现串行通信中是非常关键的一步,一个合理的通信程序能够提高通信效率,而不完善的通信程序则会导致通信效率下降,甚至通信失败,使P LC出现运行错误。 六、结语 随着P LC与PC机在自动控制领域的不断发展,它们之间的串行通信在工业控制工程中有重要意义,通过完美的人机界面、完善的数据通信合作,大大提高了各设备之间的协调运行、控制效率以及控制规模,P LC与PC机之间串行通信技术的发展与完善将在工业控制领域发挥越来越大的作用 。 参考文献: [1]杨长能、张兴毅.可编程序控制器基础及应用.重庆:重庆大学出版社,1993 [2]田瑞庭.可编程序控制器应用技术.北京:机械工业出版社, 1994 [3]邱公伟主编.可编程控制器网络通信及应用,北京:清华大学出版社,2000 [4]范逸之,Del phi与RS232串行通讯控制,北京:清华大学出版社,2002 503 百科论坛

三菱FX系列PLC和PC的通信连接

三菱FX系列PLC和PC的通信连接 由于 P LC 的高性能和高可靠性,目前已广泛应用于工业控制领域,并从单纯的逻辑控制发展为集逻辑控制、过程控制、伺服控制、数据处理和网络通信功能于一体的多功能控制器。由于PLC本身并不配置显示功能,因而实现其内部数据显示就变得很重要了,而且成为PLC控制系统设计的一个难点。 在 PL C控制系统中,需要显示的内容主要有计时器值、计数器值和数据寄存器值,数据显示方法可归纳为两种基本类型:一类为基于PLC数据通信接口,如RS- 2 32,RS - 4 85/422,显示装置也具有此类接口,通过数据通信方式实现数据显示 1 基于通信的数据显示技术 利用数据通信接口进行数据传送和显示,是实现PLC数据显示的有效途径。目前主流PLC均提供标准的RS - 232或RS一485/422接口,或者通过模块扩展增加此类接口。 三菱FX2N的通信模块 232ADP,232BD,485BD和485ADP均可作为数据接口。显示装置可选用专用智能显示屏和通用计算机(PC).直接选 用和PLC配套的显示屏或触摸屏,可实现PLC内部多个数据的集中显示,并可利用编辑软件编辑屏幕图形,提高显示界面的可视性。F X系列可配套的显示屏有F93000T一BWD, F940GOT一LWD和F940GO T- SWD。智能显示屏通过通信接口读取PL的寄存器,数据显示效率高,同时可简化控制系统的设计。但由于显示器的高成本,限制了大尺寸显示屏的

应用,因此该方法适合于紧凑型的PLC控制系统。随着计算机性能和可靠性进一步提高,"PC +PLC”模式的控制系统在工业控制领域得到广泛应用,PC机凭借丰富的软硬件资源,可实现PLC的在线监测,集中显示大量的PLC内部数据,能以图形化的方式显示控制设备的动态工艺流程和数据趋势曲线,使系统的人机界面直观友好。 PLC与组太王的通信连接 1:1 一个站,距离〈15米,用编程口驱动 通过编程口通信(plc不需要进行编程) 1:N 多个站(最多16个站),50米>距离>15米,用FX485驱动

变频器与上位机RS485通讯协议介绍讲解

变频器与上位机的通讯:浅述RS485通讯协议 引言:当上位机与变频器构成控制系统时,上位机和变频器可以通过特定的通讯协议实现数据交换,这样上位机就可以随时控制每一台变频器的工作状况,并及时做出响应。本文介绍一下一种常用的上位机和变频器通讯协议RS485通讯协议 1、概述 本文专门介绍一种变频器的RS485通讯接口,用户可通过PC/PLC实现集中监控(设定变频器参数和读取、控制变频器的工作状态),以适应特定的使用要求。 1.1协议内容 该串行通讯协议定义了串行通讯中传输的信息内容及使用格式。其中包括:主机轮询(或广播)格式:主机的编码方法,内容包括:要求动作的功能代码,传输数据和错误校验等。从机的响应也是采用相同的结构,内容包括:动作确认,返回数据和错误校验等。如果从机在接收信息时发生错误,或不能完成主机要求的动作,它将组织一个故障信息作为响应反馈给主机。 1.2应用方式: (1)变频器接入具备RS485总线的“单主多从”PC/PLC控制网。(2)变频器接入具备RS485/RS232(转换接口)的“点对点”方式的PC/PLC监控后台。 2、总线结构及协议说明 2.1总线结构

(1)接口方式 RS485(RS232可选,但需自备电平转换附件) (2) 传输方式 异步串行、半双工传输方式。在同一时刻主机和从机只能有一个发送数据,而另一个只能接收数据。数据在串行异步通讯过程中,是以报文的形式,一帧一帧发送。 (3)拓扑方式 单主站系统,最多32个站,其中一个站为主机、31个站为从机。从机地址设定范围为0~30,31(1FH)为广播通讯地址。网络中的从机地址必须是唯一的。点对点方式实际是作为单主多从拓扑方式的一个应用特例,即只有一个从机的情况。 2.2协议说明 此种变频器的通讯协议是一种串行的主从通讯协议,网络中只有一台设备(主机)能够建立协议(称为“查询/命令”)。其它设备(从机)只能通过提供数据响应主机的查询/命令,或根据主机的命令/查询做出响应的动作。主机在此处指个人计算机(PC)、工控机和可编程控制器(PLC)等,从机指的是变频器。主机既能对某个从机单独访问,又能对所有的从机发布广播消息。对于单独访问的主机查询/命令,从机都要返回一个信息(响应);对于单独访问的主机查询/命令,从机都要返回一个信息(称为响应);对于主机发出的广播信息,从机无需反馈响应给主机。 注意:和RS485通讯有关的参数的设定。

相关主题