全国服务热线 15221406036

西门子6ES7211-0AA23-0XB0千万库存

更新时间:2024-05-08 07:10:00
价格:请来电询价
联系电话:
联系手机: 15221406036
联系人:聂航
让卖家联系我
详细介绍

西门子6ES7211-0AA23-0XB0千万库存

 本文介绍的 PC 与三菱 FX 系列 PLC 通信,是通过 PLC 的编程口与 PC 机的串口进行的,采用 SC-09 编程电缆作为计算机与 PLC 通信的连线。电缆的 9 芯 D 形插头连接在计算机串口上,另一端连接 PLC 的 RS-422 编程口。
编写 PC 的通信程序可采用汇编语言、各种语言,也可以采用工控组态软件或直接采用 PLC 厂家的通信软件。本文采用 VB6 . 0 软件,它必须依据所连接 PLC 的通信规程来编写通信协议,所以先简单介绍 FX 系列 PLC 的通信协议。
一、 FX 系列 PLC 的通讯协议
1 .数据传输格式
FX 系列 PLC 采用异步格式,由 1 位起始位、 7 位数据位、 l 位偶校验位及 l 位停止位组成,波特率为 9600bps ,字符为 ASCi Ⅱ码。
2 .通信命令
FX 系列 PLC 有 4 条通信命令,即读命令、写命令、强制通命令、强制断命令。表 1 中, X 为输入继电器; Y 为输出继电器; M 为辅助继电器; S 为状态元件; T 为定时器; C 为计数器; D 为数据寄存器。
 
3 .通信控制字符
FZ 系列 PLC 采用面向字符的传输规程,用到 5 个通信控制字符,如表 2 所示。
 
4 .报文格式
PC 机向 PLC 发送的报文格式如表 3 所示。其中, STX 为开始标志; ETS 为结束标志; CMD 为命令的 ASC Ⅱ码: SUMH 、 SUML 为从 CMD 到 ETX 按字节求累加和,溢出不计。由于每字节十六进制数变为两字节 ASC Ⅱ代码,故校验和为 SUMH 与 SUMI 。
 
PLC 向 PC 机发送的应答报文格式如表 4 所示。
 
二、 PC 通信程序的编写
1 .通信口初始化
, MSComm 控件简介: VB 带有专门管理串行通讯的 MSComm 控件。只需设置几个主要参数就可以实现 PLC 与 PC 间的串行通讯。要完成通信必须设置 MSComm 的相关属性值,即通信口初始化,其步骤如下:
(1)CoinmPort :设置或传回通信连接端口代号。
(2)Settings :设置初始化参数。以字 - 符串的形式设置或传回连接速度、奇偶校验、数据位、停止位等 4 个参数。
(3)PortOpen :设置或传回通信连接端口的状态。
(4)bbbbb :从输入寄存器传回并移除字符。
(5)Output :将一个字符串写入输出寄存器。
(6)bbbbbLen :指定由串行端口读入的字符串长度。
(7)InBufferCount :传回在接收寄存器中的字符数。
 
2 .通讯程序举例
首先,在窗体开始设计之前,添加 MSComm 控件和按钮、文本框、标签等。
(1)PC 从 PLC 中读取数据
假设 PC 要从 PLC 中读入从 D123 开始的 4 个字节的数据 ( 占用两个数据寄存器: D123 、 D124) ,其报文如表 5 所示。
 
根据三菱 FX 系列 PLC 编程口通信协议,地址算法为
address=address×2+1000h
将地址 123 转换成十六进制为 7Bh ,因此首地址为:
address=addressx2+1000h=7Bhx2+1000h= 10F 6h .
再转换成 ASCII 码为 31h,30h,46h,36h
校验和 SUM=30H+31H+30H+46H+36H+30H+34H+03H=174H ,溢出部分不计,故 SUMH 为 "7" , SUML 为 "4" ,相应的 ASC Ⅱ码为“ 37H ”和“ 34H ”。
PLC 的应答报文格式如表 6 所示。
 
(2) 把数据写入 PLC
例如,向 PLC 的 D123 数据寄存器写入数据“ 1234ABCD ”的报文格式如表 7 所示
 

 PLC是以微处理器为核心的工业控制装置。他将传统的继电器控制系统与计算机技术结合 在 一起,具有高可靠性、适应工业过程现场以及强大的联网功能等特点,被广泛应用。VB提供 MSComm控件,通过串行端口传输和接收数据,为应用程序提供程序通讯功能。
  在微机与PLC之间构成的集散控制系统中,多数是由一台PC机与数台PLC之间形成1∶N的通 信模式。该模式系统中PLC负责现场高速数据采集、实现逻辑、定时、计数、PID调节等控制 任务,并通过串行通讯口向微机传送PLC工作状态及有关数据,从而实现计算机对控制系统 的管理,提高了PLC的控制能力。该集散控制系统中,PLC与微型计算机之间的通讯显得尤为 重要。因此如何提高保证他们之间的通讯准确程度、可靠性及效率是通讯成功与否的关键技 术之一。
2串行通讯控件[1]
2.1MSComm控件的引用
  MSComm控件与其他控件的引用类似,在工程开始设计之前,到【工程】菜单下选择【部件 】选项,出现部件选项对话框,在对话框中选中Microsoft Comm Control 6.0,然后单击 确定,则MSComm控件出现在工具框中,用户可以像使用内部控件那样把他添加到窗体。
2.2MSComm控件的属性
  MSComm控件的属性众多,比较重要的有:
  CommPort属性用于设置或返回通讯连接端口的号码。
  Settings属性用于设置初始化参数。
  PortOpen属性用于设置或返回通信连接端口的状态。
  bbbbb属性用于从输入缓存区返回并删除字符。
  Output属性用于将一个字符串写入输出缓存区。
  HandShaking属性用于指定通信两方的交握协议。
  CommEvent 属性CommEvent 属性在通信错误或事件发生时都会产生OnC omm事件(这也是此控件惟一的事件),CommEvent 属性存有该错误或事件的数值码。
2.3MSComm控件的事件
  OnComm事件是MSComm控件的惟一事件,此事件可用来处理所有与通信相关的事件,不管是 何种事件发生,MSComm控件只用一个CommEvent的属性予以代表。使用事件程序的好处是不 需要一直让程序处于检查的状态,只要事先将程序代码写好,一有事件发生,就会直接执行 相应的程序代码。
3上位计算机与PLC之间的链接方式
  上位机与多台PLC组成的多链系统,常用的链接方式有2种:
  方式一:使用链接适配器较少、不用信号转换,但若中间一台PLC出故障,其后续的PLC 无法与上位机通讯。
  方式二:使用了信号转换模块,可以避免前级故障对后级的影响。
 
4编程口操作命令类型
  串行通讯是计算机与其他机器之间进行通讯的一种常用方法。通过SC08编程电缆 或FX232A W模块,可将微型计算机的串行通讯口RS 232和PLC 的编程口连接起来,这样微型计算机就 可对PLC的RAM区数据进行读、写操作。由PLC本身具有的特性,可对PLC进行以下4种类型 的操作[2]:
  (1)位元件或字元件状态读操作(CMD0)。
  (2)位元件或字元件状态写操作(CMD1)。
  (3)位元件强制ON操作(CMD7)。
  (4)位元件强制OFF操作(CMD8)。
  另外,在进行上述4类操作前,首先要对端口进行初始化操作,即设定通讯协议( 包括设置通讯波特率、数据位数、数据停止位及奇偶校验)。
5bbbbbbs系统下VB通讯程序设计
  上位机通讯软件是用VB开发的。因VB具有强大的图形显示功能,可以开发出界面良好的 bbbbbbs标准风格的图形用户界面。同时VB还提供了串行端口控件MSComm,程序员在 利用该控件 时,只需设置、监视其属性和事件,即可完成对串行口的初始化和数据的传输工作。程序示 例如下:
   
6PLC方的通讯设置
  计算机与PLC通讯的目的是实现计算机对PLC运行状态、数据区的监控、PLC的管理并可用 计 算机编程。一般来说,在通讯过程中PLC是被动的,每一次通讯都由计算机发起与终止,但 也可以由PLC发起。通讯前需用外部输入设备在系统数据寄存器D8120中进行通讯条件设定。
7结语
  编程电缆将PLC的编程口和微型计算机的RS 232口连接起来,将PLC用户程序由微型计算机 编程环境传到PLC用户程序区,其编程口大多没有被再利用。其实,这是一种浪费。也就 是说,可利用此编程口实现微型计算机和PLC的数据通讯,将PLC的工作状态纳入微型计算 机管理之下。本文旨在探讨用可视化编程语言实现PC机与PLC网络之间数据通讯的技术及 软硬件实现方案,合理充分利用系统的资源及特点,提高通讯效率。希望能对同类系统的设 计与实现有一定的启发和帮助。

  PLC是以微处理器为核心的工业控制装置。他将传统的继电器控制系统与计算机技术结合 在 一起,具有高可靠性、适应工业过程现场以及强大的联网功能等特点,被广泛应用。VB提供 MSComm控件,通过串行端口传输和接收数据,为应用程序提供程序通讯功能。
  在微机与PLC之间构成的集散控制系统中,多数是由一台PC机与数台PLC之间形成1∶N的通 信模式。该模式系统中PLC负责现场高速数据采集、实现逻辑、定时、计数、PID调节等控制 任务,并通过串行通讯口向微机传送PLC工作状态及有关数据,从而实现计算机对控制系统 的管理,提高了PLC的控制能力。该集散控制系统中,PLC与微型计算机之间的通讯显得尤为 重要。因此如何提高保证他们之间的通讯准确程度、可靠性及效率是通讯成功与否的关键技 术之一。
2串行通讯控件[1]
2.1MSComm控件的引用
  MSComm控件与其他控件的引用类似,在工程开始设计之前,到【工程】菜单下选择【部件 】选项,出现部件选项对话框,在对话框中选中Microsoft Comm Control 6.0,然后单击 确定,则MSComm控件出现在工具框中,用户可以像使用内部控件那样把他添加到窗体。
2.2MSComm控件的属性
  MSComm控件的属性众多,比较重要的有:
  CommPort属性用于设置或返回通讯连接端口的号码。
  Settings属性用于设置初始化参数。
  PortOpen属性用于设置或返回通信连接端口的状态。
  bbbbb属性用于从输入缓存区返回并删除字符。
  Output属性用于将一个字符串写入输出缓存区。
  HandShaking属性用于指定通信两方的交握协议。
  CommEvent 属性CommEvent 属性在通信错误或事件发生时都会产生OnC omm事件(这也是此控件惟一的事件),CommEvent 属性存有该错误或事件的数值码。
2.3MSComm控件的事件
  OnComm事件是MSComm控件的惟一事件,此事件可用来处理所有与通信相关的事件,不管是 何种事件发生,MSComm控件只用一个CommEvent的属性予以代表。使用事件程序的好处是不 需要一直让程序处于检查的状态,只要事先将程序代码写好,一有事件发生,就会直接执行 相应的程序代码。
3上位计算机与PLC之间的链接方式
  上位机与多台PLC组成的多链系统,常用的链接方式有2种:
  方式一:使用链接适配器较少、不用信号转换,但若中间一台PLC出故障,其后续的PLC 无法与上位机通讯。
  方式二:使用了信号转换模块,可以避免前级故障对后级的影响。
 
4编程口操作命令类型
  串行通讯是计算机与其他机器之间进行通讯的一种常用方法。通过SC08编程电缆 或FX232A W模块,可将微型计算机的串行通讯口RS 232和PLC 的编程口连接起来,这样微型计算机就 可对PLC的RAM区数据进行读、写操作。由PLC本身具有的特性,可对PLC进行以下4种类型 的操作[2]:
  (1)位元件或字元件状态读操作(CMD0)。
  (2)位元件或字元件状态写操作(CMD1)。
  (3)位元件强制ON操作(CMD7)。
  (4)位元件强制OFF操作(CMD8)。
  另外,在进行上述4类操作前,首先要对端口进行初始化操作,即设定通讯协议( 包括设置通讯波特率、数据位数、数据停止位及奇偶校验)。
5bbbbbbs系统下VB通讯程序设计
  上位机通讯软件是用VB开发的。因VB具有强大的图形显示功能,可以开发出界面良好的 bbbbbbs标准风格的图形用户界面。同时VB还提供了串行端口控件MSComm,程序员在 利用该控件 时,只需设置、监视其属性和事件,即可完成对串行口的初始化和数据的传输工作。程序示 例如下:
   
6PLC方的通讯设置
  计算机与PLC通讯的目的是实现计算机对PLC运行状态、数据区的监控、PLC的管理并可用 计 算机编程。一般来说,在通讯过程中PLC是被动的,每一次通讯都由计算机发起与终止,但 也可以由PLC发起。通讯前需用外部输入设备在系统数据寄存器D8120中进行通讯条件设定。
7结语
  编程电缆将PLC的编程口和微型计算机的RS 232口连接起来,将PLC用户程序由微型计算机 编程环境传到PLC用户程序区,其编程口大多没有被再利用。其实,这是一种浪费。也就 是说,可利用此编程口实现微型计算机和PLC的数据通讯,将PLC的工作状态纳入微型计算 机管理之下。本文旨在探讨用可视化编程语言实现PC机与PLC网络之间数据通讯的技术及 软硬件实现方案,合理充分利用系统的资源及特点,提高通讯效率。希望能对同类系统的设 计与实现有一定的启发和帮助。

联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com