


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
三菱FX 系列PLC 编程口通信协议总览三菱FX 系列PLC 编程口通信协议总览该协议实际上适用于PLC 编程端口以及 FX-232AW 模块的通信感谢网友visualboy 提供通讯格式命令 命令码 目标设备DEVICE READ CMD 0 X,Y,M,S,T,C,DDEVICE WRITE CMD 1 X,Y,M,S,T,C,DFORCE ON CMD 7 X,Y,M,S,T,CFORCE OFF CMD 8 X,Y,M,S,T,C传输格式: RS232C波特率: 9600bps奇偶: even校验: 累加方式和校验字符: ASCII16 进制代码ENQ 05H 请求ACK 06H PLC 正确响应NAK 15H PLC 错误响应STX 02H 报文开始ETX 03H 报文结束帧格式STX CMD DATA . DATA ETX SUM(upper) SUM(lower)例子STX ,CMD ,ADDRESS, BYTES, ETX, SUM02H, 30H, 31H,30H,46H,36H, 30H,34H, 03H, 37H,34HSUM=CMD+.+ETX30h+31h+30h+46h+36h+30h+34h+03h=74h;累加和超过两位取低两位1 DEVICE READ 读出软设备状态值计算机向PLC 发送始 命令 首地址 位数 终 和校验STX CMD GROUP ADDRESS BYTES ETX SUM例子从D123 开始读取4 个字节数据02h 30h 31h,30h,46h,36h 30h,34h 03h 37h,34h地址算法:address=address*2+1000h再转换成ASCII31h,30h,46h,36hPLC 返回STX 1ST DATA 2ND DATA . LAST DATA ETX SUM注最多可以读取64 个字节的数据例子从指定的存储器单元读到3584 这个数据02h 33h 35h 38h 34h 03h 44h,36h2 DEVICE WRITE 向PLC 软设备写入值始 命令 首地址 位数 数据 终 和校验STX CMD GROUP ADDRESS BYTES 1ST DATA 2ND DATA . LAST DATA ETX SUM例子向D123 开始的两个存储器中写入1234,ABCD02h 31h 31h,30h,46h,36h 30h,34h 33h,34h,31h,32h,43h,44h,41h,42h 03h 34h,39hPLC 返回ACK (06H) 接受正确NAK (15H) 接受错误3 位设备强制置位/复位FORCE ON 置位始 命令 地址 终 和校验STX CMD ADDRESS ETX SUM02h 37h address 03h sumFORCE OFF 复位始 命令 地址 终 和校验STX CMD ADDRESS ETX SUM02h 38h address 03h sumPLC 返回ACK(06H) 接受正确NAK(15H) 接受错误设备强制中的地址公式:Address=Address/8+100h(设备强制中的地址公式:Address=Address * 100h + (*) (必须为4位,不足4位前面补0)注:*号所代表值: C:14 M:8 T:6 Y:5 X:4 S:0如对M2置位,则为地址为:2*256(100H)+8=0520 转为十六进制为:0208 再换为ASCII就是: 30 32 30 38)说明1.帧中的BYTES 表示需要读取或者写入的字节数2.地址算法上有说明3.累加和是从STX 后面一个字节开始累加到ETX 的和VB读写三菱FX系列PLC数据示例通过前面两篇文章,我们了解了三菱FX系列PLC的编程口通信协议。为了更方便读者学习这里提供一个用VB编写的示例,其中包含一个通用模块,如果你需要对此类PLC进行读写数据区的操作可以下载看看。三菱FX系列PLC的校验采用的是和校验,在写数据和读数据时都会有这个和校验,和校验用于检查数据包是否有错。因此我们必需知道和校验的算法,才能成功地进行通信。在这里我们提供了一个和校验的VB源代码: *Private Function Check_FCS(mStr As String) As StringDim K As Integer, mTest As IntegerFor K = 1 To Len(mStr)mTest = mTest + Asc(Mid(mStr, K, 1)NextCheck_FCS = Right(Hex(mTest), 2)End Function* 函数中的 mStr 参数为命令、位数、数据、终止符的合集,读取时不包括数据。使用Check_FCS函数时将返回和校验码。当向PLC写数据时,数据必须为四位的十六进制数,并且低位在前、高位在后。这里提供一个循环代码,将一个数组里的整数转换为向PLC写入数据的字符串: For Q = 0 To UBound(mData)myHex = myHex & Format(Hex(mData(Q) Mod &HFF), 00) & Format(Hex(mData(Q) &HFF), 00)Next 在上面的代码中 mData 为向PLC写入数据的数组,myHex 最终得到的就是写入PLC时所要的数据字符串。同样的从PLC读出来的数据也是四位的十六进制,低位在前、高位在后。所以我们有必要将其转换为对应的整数。其主要的转换代码如下: ReDim mData(mCounts - 1)For Q = 0 To mCounts - 1mData(Q) =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东公共课自考试题及答案
- 狼中考试题及答案
- 矿山管理考试题及答案
- 课件时间设置
- 课件日知录教学课件
- 溴化丁基橡胶装置操作工专业技能考核试卷及答案
- 电动自行车装配工专业知识考核试卷及答案
- 增材制造设备操作员工艺考核试卷及答案
- 闪速炉熔炼工质量追溯知识考核试卷及答案
- 杜美丝制造工职业考核试卷及答案
- 道路运输安全员考试题库及答案
- 2025年全国高考一卷英语真题(解析版)
- 食品安全包保制度
- Module 1 Unit 1 How long is the Great Wall(教学设计)-2023-2024学年外研版(一起)英语六年级上册
- 2025重庆某国有企业招聘新媒体运营(偏拍摄剪辑)参考题库含答案
- 2025年秋期新教材部编人教版一年级上册道德与法治教学计划+进度表
- 考勤管理制度全套表格
- 关于懂你的600字初三作文9篇
- 联邦学习在二零二五年保险精算模型跨机构协作中的实践
- 2025年北师大版新教材数学三年级上册教学计划(含进度表)
- 招投标技术服务及售后承诺书
评论
0/150
提交评论