三菱PLC编程口的通讯协议

时间:2023-03-17来源:佚名
三菱plc编程口的通讯协议比较简单,只有四个命令,即:
命令 命令码 目标设备
DEVICE READ CMD "0" X,Y,M,S,T,C,D
DEVICE WRITE CMD "1" X,Y,M,S,T,C,D
FORCE ON CMD " 7" X,Y,M,S,T,C
FORCE OFF CMD "8" X,Y,M,S,T,C五个标示:
ENQ 05H 请求
ACK 06H PLC正确响应
NAK 15H PLC错误响应
STX 02H 报文开始
ETX 03H 报文结束
使用累加方式的和校验,帧格式如下:
STX CMD DATA ...... DATA ETX SUM(upper) SUM(lower)
和校验:
SUM= CMD „„ ETX。 如SUM=73H,SUM=“73”。
1、DEVICE READ(读出软设备状态值)
计算机向PLC发送:
始命令 首地址 位数 终和校验
STX CMD GROUP ADDRESS BYTES ETX SUM PLC 返回
STX 1ST DATA 2ND DATA ..... LAST DATA ETX SUM
2、DEVICE WRITE(向PLC 软设备写入值)
计算机向PLC发送:
始命令 首地址 位数 数据 终和校验
PLC 返回
ACK (06H) 接受正确
NAK (15H) 接受错误
3、位设备强制置位/复位
FORCE ON 置位
始命令 地址 终和校验
STX CMD ADDRESS ETX SUM 02h 37h address 03h sum FORCE OFF 复位
始 命令 地址 终 和校验 STX CMD ADDRESS ETX SUM 02h 38h address 03h sum PLC 返回
ACK(06H) 接受正确
NAK(15H) 接受错误
以上可以看出,协议非常简单,但是由于没有寄存器类型信息,所以地址的计算十分关键,如D100和M100分别对应哪个地址呢?下面就是三菱Fx系列PLC地址对应表:
Public Const PLC_D_Base_AddRess = 4096 =1000H
Public Const PLC_D_Special_Base_AddRess = 3584 =E00H
Public Const PLC_Y_Group_Base_AddRess = 160 =A0H
Public Const PLC_PY_Group_Base_AddRess = 672 =2A0H
Public Const PLC_T_Group_Base_AddRess = 192 =C0H
Public Const PLC_OT_Group_Base_AddRess = 704 =2C0H
Public Const PLC_RT_Group_Base_AddRess = 1216 =4C0H
Public Const PLC_M_SINGLE_Base_AddRess = 2048(命令为7或8时) =800H
Public Const PLC_M_Group_Base_AddRess = 256 =100H
Public Const PLC_PM_Group_Base_AddRess = 768 =300H
Public Const PLC_S_Group_Base_AddRess = 0 =0H
Public Const PLC_X_Group_Base_AddRess = 128 =80H
Public Const PLC_C_Group_Base_AddRess = 448 =1C0H
Public Const PLC_OC_Group_Base_AddRess = 960 =3C0H
Public Const PLC_RC_Group_Base_AddRess = 1472 =5C0H
Public Const PLC_TV_Group_Base_AddRess = 2048 =800H
Public Const PLC_CV16_Group_Base_AddRess = 2560 =A00H
Public Const PLC_CV32_Group_Base_AddRess = 3072 =C00H
当我们用DEVICE READ命令时,D100地址=100*2 4096;M100地址=100 256;不同的是D类型寄存器存放的是字,M寄存器存放的是位,同样是读两个字节,D100返回的就是PLC中D100地址的值,M类型寄存器返回的是M100到M116的值。所以当我们用FORCE ON 命令时,M100寄存器地址=100 2048;
这也没有什么复杂的,不是吗?可是三菱公司好像不甘于如此,FORCE ON/Off命令中地址排列与DEVICE READ/WRITE不同,是低位在前高位在后。如Y20,地址是0510H,代码中4个字节地址表示为:1005。(注意:Y寄存器为八进制,如Y20地址=16 1280=0510H) 其实一点技术含量都没有,就是拐了几个弯,偏偏很多时候又不都告诉你,让人浪费不少时间。不废话了,自己做个程序试试吧。

    相关阅读

    软启动器12个故障代码

    软启动器常见故障问题的故障代码,参考如下: 1、故障代码Err01 故障类容:→断相;说明:主电路任意一相断相。 2、故障代码Err02 故障类容:→过电流;说明:超过额定电流12倍。 3、故...
    2022-11-26

    电动车电池看参数的三种方法,轻松查看电动车电池型号

    新买的电动车电池是什么型号的,很多人并不是很清楚,而在需要换电池时搞不清楚型号就会很麻烦,那么电动车电池规格怎么,怎么来识别电动车电池的型号,与电工天下小编一起来...
    2022-11-30

    电焊机电流调到多少合适,根据焊条大小及焊接对象做调整

    2.5焊条电焊机电流大小应根据焊条的种类来定: 1、一般碳钢焊条焊接电流调到100A左右,不锈钢焊条稍低点。 2、焊方管2.5焊条电流: 60-80A电焊机利用正负两极在瞬间短路时产生的高温电...
    2023-01-09
    电焊机电流调到多少合适,根据焊条大小及焊接对象做调整

    电动机的启动电流如何计算,电动机启动电流计算公式

    有关电动机启动电流的计算方法,三相电机启动电流瞬时是正常的多少倍,电动机的启动电流是额定电流 的多少,电动机 启动电流计算公式与实例,感兴趣的朋友参考下。 电动机启动...
    2022-11-22
    电动机的启动电流如何计算,电动机启动电流计算公式

    【电力用户怎么分级,电力用户分类标准】

    【电力用户怎么分级,电力用户分类标准】 有网友咨询,电力用户怎么分级,针对分级的问题,电力用户分为一级用户至三级用户,那么电力用户分类标准是怎么样的,电力客户分级和...
    2022-12-10
    【电力用户怎么分级,电力用户分类标准】

    插座发出滋滋滋的声音是什么原因

    首先最有可能的原因就是电源线与插座接线端子接触不牢固,而造成的虚接,进而产生电弧也就是我们俗称的电火花,就会发出的滋滋声音。 插座内由于质量问题,电源接线柱与插头触...
    2022-11-10
    插座发出滋滋滋的声音是什么原因

    安装西门子软件时提示重启电脑的解决办法

    在 西门子软件安装 时,比如:WinCC、Step7、SIMATIC NET SQL Server for WINCC等软件,有时候并不是很顺利,经常提示要重启,而且重启之后还是提示重启,一直循环提示,这个问题可以通过下面...
    2023-03-09
    安装西门子软件时提示重启电脑的解决办法

    异步电动机正反转控制plc接线图及梯形图(图文)

    【 异步电动机 正反转控制plc 接线图及梯形图 】 用plc实现异步电动机的正反转控制,如何设计控制线路图,如何分配i/o,都是绘制plc接线图的关键,另外异步电动机正反转控制设计 过...
    2022-12-11
    异步电动机正反转控制plc接线图及梯形图(图文)

    网站栏目