最近在做一个小东西,涉及到了三菱fx3u通信协议,经过几天的资料查找,做个整理,方便以后查询。本文介绍的是电脑通过USB-SC09-FX与FX3U进行通信,用的软件是串口助手;
设置如下:

通信命令有两种,一种是DEVICE READ/WRITE,另一种是FORCE ON/OFF;

  • DEVICE READ/WRITE 就是读写PLC里面的寄存器。比如D,M,Y,X等以字节为单位读写
  • FORCE ON/OFF 这个是强制置位,强制让Y,M,X等变为开或者关
  • 命令格式:
    • DEVICE READ :STX CMD ADDR BYTE ETX SUM
    • DEVICE WRITE:STX CMD ADDR BYTE DATA EXT SUM
    • FOREC ON/OFF :STX CMD ADDR EXT SUM
  • STX 02H,ETX 03H
  • CMD:
    • DEVICE READ 30H
    • DEVICE WRITE 31H
    • FORCE ON 37H
    • FORCE OFF 38H
  • ADDR:这里我就介绍几个D,M,Y的,其余的需要你们自己去查找了。
    • DEVICE 和 FORCE的地址是不一样的

      • DEVICE:

        • Dn ADDR = n*2 + 1000H;也就是说D的起始地址是1000H,但D是2个字节的
        • Mn ADDR = n/8 + 100H; 这是计算在那一个字节里面,因为一个地址里面有8位,而M只占1位,然后用n%8计算在那一位里面
        • Yn ADDR = n/8 + A0H;与上面M一样,不同点就是FX3U的Y是以8进制来排序的,这里的n是8进制
        • ADDR 是把每一位转化为ASCLL码,高位在前,低位在后的发送,比如我计算D100的地址,100 * 2 = 200 = C8H,ADDR = 10C8H,那么在命令里面发送数据为 31H 30H 43H 38H 这就代表地址
      • FORCE:
        • Mn ADDR = n + 800H;
        • Yn ADDR = n + 500H;n是8进制
        • ADDR 这里除了地址与上面不同,连排列顺序也变了,他先发送低两位,在发送高两位,比如Y10的地址,ADDR = 8H + 500H = 508H,发送数据是 30H 38H 30H 35H;
      • 在写代码的时候,Y这种8进制数编码可以先转换为10进制,然后加上500H的10进制也就是1280,在转换成16进制,就是地址了。M,D这种都是10进制的,可以直接加首地址,在转换成16进制。但是发生时,十六进制的A,B,C,D,E,F是需要转换成ASCLL码发送的。
    • BYTE:用来控制读写几个字节的数据,比如写4个字节,就发送 30 34,最多只能
    • SUM:把除STX以外的数据都相加,取低两位,变成ASCLL码发送出去。
      • 举例:把Y10强制制为ON,02H 37H 30H 38H 30H 35H 03H 30H 37H,SUM= 37H+30H+38H+30H+35H+03H = 107H,取07。

命令的响应:发送05H是测试通信是否连接,返回06H代表成功,15H代表失败。
发送读D寄存器的时候在02 和 03之间就是数据,以ASCLL码值返回每一位,并且先发送的是低两位,然后在是高两位。数据是16进制的。

三菱FX3U编程口通信协议相关推荐

  1. 信捷plc485通信上位机_三菱FX3U编程口通信上位机QT实现

    三菱FX3U编程口通信上位机软件 上位机开发流程: 一 查找类似工具 找到 三菱FX串口实验(FX Serial) 这款工具 这款工具挺好用的,能够验证大多数的功能,而且能够看到发送和接收的报文,是一 ...

  2. 三菱FX2N编程口通信协议

    本博文系摘记,参考文献: 1.介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会? 2.用VB6.0实现PC机与三菱FX2n系列PLC编程口的通信 -- 三菱编程口通信协议不需要专门配置 ...

  3. 三菱FX系列PLC编程口通信协议总览

    该协议实际上适用于PLC编程端口以及FX-232AW模块的通信 通讯格式       命令(CMD)   命令码    目标设备  DEVICE READ  CMD    "0"  ...

  4. iec60870-5-104通讯协议编程_三菱FX编程口通讯协议1——协议解读

    三菱PLC编程口通讯协议: 1.三菱PLC编程口通讯协议有四个命令,如下: 2.三菱FX系列PLC地址对应表: PLC_X Group Base AddRess=128: Const PLC_Y_Gr ...

  5. 西门子SMART200与三菱FX3U自由口通讯程序,有西门子PLC程序

    西门子SMART200与三菱FX3U自由口通讯程序,有西门子PLC程序,三菱PLC程序.程序清楚明了,适合初学者入门 ID:6910668267906732

  6. 西门子SMART200与三菱FX3U自由口通讯程序

    西门子SMART200与三菱FX3U自由口通讯程序,有西门子PLC程序,三菱PLC程序.程序清楚明了编号:7710654126799197工业自动化

  7. labview源码,和三菱FX编程口协议通讯

    labview源码,和三菱FX编程口协议通讯 ID:6515616865279510

  8. plc通信程序 c语言,三菱PLC编程口通信C语言源代码(3)

    uTmp=(uTmp<10)?(uTmp+0x30):(uTmp+0x41-0xa); if((unsigned char)uTmp!=uReceive[number*4+3])return(F ...

  9. 三菱PLC和PC机通过编程口串行通信实现

    1 系统硬件构成 三菱FX系列PLC自带的编程口是RS-422接口,而PC机的串行通信口则是RS-232C接口,两者之间需要通过SC-09适配电缆才能通信.不同设备上相同类型的通信接口的引脚定义可能存 ...

最新文章

  1. 瞄准VR游戏市场,这款数据手套还提供模块化定制
  2. 记阿里的一次壮烈牺牲
  3. 用Lighttpd做图片服务器
  4. 手机百度输入法的用户体验
  5. 【Java】自编时间相关常用函数
  6. Developer Express右键菜单显示汉化
  7. 什么时候用removeUnusedSpriteFrames和removeUnusedTextures
  8. Android自动化测试(UiAutomator)简要介绍 - 萧瑟一笑的专栏 - 博客频道 - CSDN.NET...
  9. 个人博客 修改markdown代码块背景颜色
  10. 在从服务器接收结果时发生传输级错误。(provider: TCP 提供程序, error: 0 - 信号灯超时时间已到)...
  11. 非负矩阵分解NMF简介
  12. Java Socket 编程学习(5) TCP UDP总结
  13. 【计算机网络微课堂】3.3 差错检测
  14. 微众银行·We研究2021年最新大调研报告“健康险专题” : 用户保险消费的三个改变
  15. 如何冻结excel指定行和列
  16. Kubernetes kubectl rollout 命令详解
  17. python最小二乘法_最小二乘法(least sqaure method)
  18. virtual的用法
  19. js setTimeout 参数传递使用
  20. 犇牛(usp10.dll)专杀工具1.0下载

热门文章

  1. IT女性的职业困惑 (1)
  2. MMM互助社区是不是真的,有没有风险
  3. 上承文化、下启智慧:智慧城市建设的遂宁样本
  4. 啥叫工程?啥叫工程师?
  5. django-外键和表关系
  6. 青少年CTF-弱口令实验室招新赛个人wp
  7. #ifdef __cplusplus 是什么意思?
  8. 配置apache和nginx的tomcat负载均衡
  9. 【C语言-嵌入式】‘a0x7f‘代表什么意思?
  10. android锁屏快捷键设置,【Android高级】锁屏功能简单实现