三菱FX系列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 通信的基本方法,切实可行,具有广泛的实用价值。对初学者很有帮助。
三菱FX系列PLC编程口通信协议举例 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1、DEVICE READ(读出软设备状态值) 计算机向PLC发送:
例子:从D123开始读取4个字节数据
地址算法:address=address*2+1000h,将123 转换为16进制*2 得F6,10F6 再转换成ASCII 31h,30h,46h,36h PLC返回
注:最多可以读取64个字节的数据 例子:从指定的存储器单元读到3584这个数据
2、DEVICE WRITE(向PLC软设备写入值)
例子:向D123开始的两个存储器中写入1234,ABCD
PLC返回 ACK (06H) 接受正确 NAK (15H) 接受错误 3、位设备强制置位/复位 FORCE ON置位
FORCE OFF复位
PLC返回 ACK(06H) 接受正确 NAK(15H) 接受错误 设备强制中的地址公式:Address=Address/8+100h 说明: 1.帧中的BYTES表示需要读取或者写入的字节数。 2.地址算法上有说明。 3.累加和是从STX后面一个字节开始累加到ETX的和。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
三菱FX系列PLC编程口通信协议总览 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
该协议实际上适用于PLC编程端口以及 FX-232AW 模块的通信。感谢网友visualboy提供。 通讯格式:
传输格式: RS232C 16进制代码:
帧格式:
例子: STX ,CMD ,ADDRESS, BYTES, ETX, SUM 02H, 30H, 31H,30H,46H,36H, 30H,34H, 03H, 37H,34H SUM=CMD+......+ETX; 30h+31h+30h+46h+36h+30h+34h+03h=74h; 累加和超过两位取低两位 |
三菱FX系列PLC编程口通信协议举例相关推荐
- 三菱FX系列PLC编程口通信协议总览
该协议实际上适用于PLC编程端口以及FX-232AW模块的通信 通讯格式 命令(CMD) 命令码 目标设备 DEVICE READ CMD "0" ...
- 三菱FX 系列PLC 编程通信协议总览
三菱FX 系列PLC 编程口通信协议总览 该协议实际上适用于PLC 编程端口以及 FX-232AW 模块的通信 通讯格式 命令 命令码 目标设备 DEVICE READ CMD "0&quo ...
- 三菱FX系列plc编程软件SWOPC-FXGP/WIN-C中文版下载
SWOPC-FXGP/WIN-C 由本站工控资料分享专业户提供 三菱编程软件SWOPC-FXGP/WIN-C为一个可应用于三菱FX系列可编程控制器PLC的编程软件,可在windows下运行,在SWOP ...
- PC与三菱FX系列PLC通信实例
本文介绍的 PC 与三菱 FX 系列 PLC 通信,是通过 PLC 的编程口与 PC 机的串口进行的,采用 SC-09 编程电缆作为计算机与 PLC 通信的连线.电缆的 9 芯 D 形插头连接在计算机 ...
- plc和pc串口通讯接线_三菱FX系列PLC与电脑之间串口RS232通讯协议简易解析
本文介绍的 PC 与三菱 FX 系列 PLC 通信,是通过 PLC 的编程口与 PC 机的串口进行的,采用 SC-09 编程电缆作为计算机与 PLC 通信的连线.电缆的 9 芯 D 形插头连接在计算机 ...
- 三菱FX系列PLC模拟量输入AD模块的使用方法和相关编程设置详解
三菱FX系列PLC模拟量输入AD模块的使用方法和相关编程设置详解 本次以FX3U系列PLC的模拟量输入模块FX3U-4AD进行举例说明: 该模块的部分技术数据如下图所示, 该模块的接线端子排列 ...
- 三菱je-a系列伺服支持modbusrtu 协议吗_入门课程 | 三菱FX系列PLC的软元件介绍
点击箭头处"工业之家",选择"关注公众号"! 三菱FX系列PLC的软元件介绍 PLC的软元件很多,主要有输入继电器.输出继电器.定时器.计数器.数据寄存器和常 ...
- 三菱FX系列PLC以太网通讯
三菱FX系列PLC以太网通讯 BCBet-FX用于三菱FX1N/1S/2N/3U/3G/3S等系列PLC,以及汇川.禾川.士林等品牌PLC. BCBet-FX 以太网模块采用三通设计,不占用PLC通讯 ...
- 三菱FX系列PLC简单总结
点击 三菱FX系列PLC简单总结 关注微信公众号:小平Linux工作室 获得"0基础学习PLC电气电工知识.数据结构与算法,STC89C51知识,嵌入式STM32.嵌入式Linux C/C+ ...
- 三菱FX系列PLC以太网连接西门子wincc软件
三菱FX系列PLC以太网连接西门子wincc软件 三菱FX系列PLC,包括FX1N.FX2N.FX3U.FX3S.FX3G等:可以通过MCTCP和ModbusTCP两种以太网方式连接西门子wincc软 ...
最新文章
- 一行代码,揭开CPU执行原理!
- 人工智能其实并不客观,算法会加剧刻板印象
- [Linux] Linux smaps接口文件结构
- Python程序练习题6.2
- 转:Python中的文件和目录操作
- 局域网怎么查看单位摄像头_一行代码,实现多平台文件查看传输!
- 【免费】前端设计师必须知晓的网站(1)
- Centos7 配置交换内存Swap
- java报刊管理系统_Java课程设计——报刊管理系统
- PHP 报错 Resource temporarily unavailable 无法删除上传的资源
- 2019 告辞了您嘞 ~
- linux服务器实现AD域认证,Linux下用户启用Windows AD做集中认证
- java jpress,JPress导入Eclipse
- 计算机复制方法有,电脑复制粘贴怎么用(6种电脑复制粘贴方法)
- 京东物流实时风控实践
- mysql启动报错ERROR 2003 (HY000) Can‘t connect to MySQL server on ‘localhost3306‘ (10061)解决办法
- 苹果笔记本-MAC系统 上安装使用Windows系列(win7\win8\win10)
- 摇杆芯片速度测试软件,摇杆控制小车+L9110芯片
- 瑞昱 RTL8188CE Wireless LAN 802.11n PCI-E NIC支持5G吗
- 需求、需求分析、设计 思想
热门文章
- 与MySQL的纠缠(卸载与安装)
- powerha_使用IBM PowerHA SystemMirror的Hitachi TrueCopy镜像
- 手机点餐APP开发需求分析
- 游戏自动化协议测试工具的开发个人思路
- photoshopCC 2018入门学习
- 解决Visual Studio 2015创建工程时的“DNX SDK version 'dnx-clr-win-x86.1.0.0-beta5' failed to install.”错误
- 无刷直流电机matlab建模,基于MATLAB的无刷直流电机建模方法_郭丹蕊
- maven安装使用手册之-----------------------maven介绍及安装部署
- 解决MAC删除应用程序后依然残留的图标
- ORACLE获取月初、月末日期