紫外工控论坛

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 3618|回复: 1

[VB/VB.NET] 利用 VB6.0 实现 PC 与三菱 PLC 的通信

[复制链接]
冰糖 发表于 2011-12-6 12:34:52 | 显示全部楼层 |阅读模式
利用 VB6.0 实现 PC 与三菱 PLC 的通信

哈尔滨李松颖

本文介绍的 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)Input :从输入寄存器传回并移除字符。
(5)Output :将一个字符串写入输出寄存器。
(6)InputLen :指定由串行端口读入的字符串长度。
(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 所示

本文介绍的利用 VB6 . O 实现 PC 与三菱 PLC 通信的基本方法,切实可行,具有广泛的实用价值。对初学者很有帮助。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
竹叶 发表于 2012-2-16 09:29:25 | 显示全部楼层
这个不错,一直想学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


--------------------------------------------------------------------------------------------------------------------
本站是工控技术交流站点,论坛内容均为网络收集或会员所发表,并不代表本站立场,会员拥有该内容的所有权力及责任!
本站内容如有侵犯您的版权,请按下面方式联系本站管理员,我们将及时删除处理
管理员:冰糖 QQ:5483695(请直击主题), Mail:admin#ziwai.net(#改成@) 其它非本人.
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!

QQ|Archiver|手机版|小黑屋|紫外工控论坛. ( 苏ICP备11032118号-1 )

GMT+8, 2024-4-30 00:12 , Processed in 0.375005 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表