• 维控PLC——LX1S :编程口通讯协议


    说明

    该协议适用于维控LX1S系列PLC,关于维控LX2N的协议将在后面描述。

    通讯帧

    通讯采用ASCII码,校验方式采用和校验。

    请求帧格式:报文开始命令字地址(有些无)长度(有些无)数据(有些无)报文结束 和校验(两位)
    STX(02H) CMD(两位) ADDRESS(四位) LEN(两位)DATA (2*LEN)EXT(03H) SUM
    例子 STX, CMD,ADDRESS, LEN,ETX, SUM,
    02H, 30H 31H, 30H, 46H, 36H, 30H, 34H, 03H37H,34H,
    指令解释如下:
    STX, "0" "10F6" "04""ETX""74"
    报文开始 读命令 地址10F6H处 04H字节数据报文结束 累加方式和校验
    其中 SUM=(CMD......+ETX) =( 30H + 31H + 30H + 46H + 36H + 30H + 34H + 03H)= 74h 累加和超过两位取低位,转成ascii码,分SUM(upper),SUM(lower)二次传送

    通讯命令字

    通讯命令字含义:
    分类 命令字 备注 命令字对应的帧格式
    命令 HEX 命令解释 请求或返回 STX, CMD, ADDRESS, LEN, DATA, ETX, SUM
    基本命令 STX 02H 报文开始 格式命令帧 /
    ETX 03H 报文结束 格式命令帧 /
    ENQ 05H 通信请求 请求帧 ENQ(05H)
    成功返回帧ACK(06H)
    ACK 0H PLC正确响应
    NAK 15H PLC错误响应 返回命令帧 /
    基本命令字0 30H 读数据 请求帧 STX, 0, ADDRESS, LEN, EXT, SUM
    成功返回帧 STX, DATA, EXT, SUM
    1 31H 写数据 请求帧 STX, 1, ADDRESS, LEN, DATA, EXT, SUM
    成功返回帧 ACK(06H)
    7 37H 强制BIT位ON 请求帧 STX, 7, ADDRESS, EXT, SUM
    成功返回帧 ACK(06H)
    8 38H 强制BIT位OFF 请求帧 STX, 8, ADDRESS, EXT, SUM
    成功返回帧 ACK(06H)
    系统命令B 42H程序下载结束 请求帧 STX, B, EXT, SUM
    成功返回帧 ACK(06H)
    拓展命令字 E00 45H 30H 30H 读配置(D8000、数据监控缓存区) 请求帧 STX, E00, ADDRESS, LEN, EXT, SUM
    成功返回帧 STX, DATA, EXT, SUM
    E01 45H 30H 31H读程序(参数、程序、注释等) 请求帧 STX, E01, ADDRESS, LEN, EXT, SUM
    成功返回帧 STX, DATA, EXT, SUM
    E11 45H 31H 31H 写程序(参数、程序、注释等) 请求帧 STX, E11, ADDRESS, LEN, DATA, EXT, SUM
    成功返回帧 ACK(06H)
    E745H 37H 强制BIT位ON 请求帧 STX, E7, ADDRESS, EXT, SUM
    成功返回帧 ACK(06H)
    E8 45H 38H 强制BIT位OFF 请求帧 STX, E8, ADDRESS, EXT, SUM
    成功返回帧 ACK(06H)

    通讯数据地址

    通讯数据地址:
    类型 寄存器 起始地址(含) 结束地址 (含) 备注 在A地址上加减
    字地址AC0~C199 寄存器 0x0A00 0x0B8F字地址B(数据监控缓存也是用的该地址)不变
    C200~C255 寄存器 0x0C00 0x0CDF不变
    T0~T255 寄存器 0x0800 0x0A00+0x800
    D0~D7999 0x1000 0x4E7F+0x3000
    D8000~D8255 0x0E00 0x0FFE不变
    M0~M1535 0x0100 0x01BF-0x100
    M8000~M8255 0x01E0 0x01FF-0x20
    S0~S1023 0x0000 0x007F+0x280
    T0~T255 线圈 0x00C0 0x00DF+0x140
    C0~C255 线圈 0x01C0 0x01DF+0x20
    X0~X377 0x0080 0x009F+0x1C0
    Y0~Y377 0x00A0 0x00BF+0xE0
    寄存器 起始地址(含) 结束地址 (不含) 备注 起始地址(含) 结束地址 (不含)
    映射地址AS0~S1023 0x0000 0x03FF 映射地址B0x14000x17FF
    X0~X377 0x0400 0x04FF0x12000x12FF
    Y0~Y377 0x0500 0x05FF0x0C000x0CFF
    T0~7255 0x0600 0x06FF0x10000x10FF
    M0~M1535 0x0800 0x0DFF0x00000x05FF
    C0~C255 0x0E00 0x0EFF0x0F000x0FFF
    M8000~M8255 0x0F00 0x0FFF0x0E000x0EFF

    维控 LX1S通讯协议举例

    在这里插入图片描述

    以下是从维控HMI和维控PLC–LX1S抓取到的数据帧,请注意在数据帧中操作位地址时位地址寄存器的高低位变化。 在操作字地址时,读写寄存器地址高低位不变。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述


    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    5. 吴恩达深度学习--搭建卷积神经网络模型以及应用
    JAVA_多态(面向对象进阶)学习笔记
    爬虫 — JsonPath 和 CSV 文件读写
    [机缘参悟-66]:深度思考-吃苦、努力、勤奋的方式与本质
    采用Java的水下遥控机器人监控系统
    如何使用选择工具
    课堂练习10 python数据库编程
    Kafka(三)- Kafka 命令行操作
    python列表操作和方法
    计算机毕业论文java毕业设计选题基于springboot的社区服务管理包运行成功]
  • 原文地址:https://blog.csdn.net/weixin_40314351/article/details/134174502