螺丝刀1234
级别: 探索解密
精华主题: 0
发帖数量: 26 个
工控威望: 146 点
下载积分: 11714 分
在线时间: 80(小时)
注册时间: 2012-09-16
最后登录: 2024-03-15
查看螺丝刀1234的 主题 / 回贴
楼主  发表于: 2022-01-17 11:41
ADPRW  H1  H4 HA7B8 K1 D0    这条指令 含义( H1从站号)(H4功能读取存储器)(HA7B8地址)(K1数量) (D0主站地址) 意思是把从站X0-X17 状态读到主站D0 -DF ,
ADPRW H1  H3 H0  K8 D10这条指令含义 (H1从站号  (H3功能读保持寄存器)(H0地址)( K8数量) (D10主站寄存器) 意思是把从站 D0-D7 读到主站D10-D17
问题第一条 K1数量 为什么是16位地址 X0-X17  第二条指令K8是读取8位       。哪位师傅指点一下谢谢


  
zhangqi_1234
级别: 略有小成
精华主题: 0
发帖数量: 336 个
工控威望: 487 点
下载积分: 4001 分
在线时间: 245(小时)
注册时间: 2013-03-22
最后登录: 2024-04-28
查看zhangqi_1234的 主题 / 回贴
1楼  发表于: 2022-01-17 11:58
你问的哪种PLC的ADPRW?FX3U和FX5U是有区别的
螺丝刀1234
级别: 探索解密
精华主题: 0
发帖数量: 26 个
工控威望: 146 点
下载积分: 11714 分
在线时间: 80(小时)
注册时间: 2012-09-16
最后登录: 2024-03-15
查看螺丝刀1234的 主题 / 回贴
2楼  发表于: 2022-01-17 12:24
[quote]引用第1楼zhangqi_1234于2022-01-17 11:58发表的  :
你问的哪种PLC的ADPRW?FX3U和FX5U是有区别的
[你好 FX3U
zhangqi_1234
级别: 略有小成
精华主题: 0
发帖数量: 336 个
工控威望: 487 点
下载积分: 4001 分
在线时间: 245(小时)
注册时间: 2013-03-22
最后登录: 2024-04-28
查看zhangqi_1234的 主题 / 回贴
3楼  发表于: 2022-01-17 14:19
引用
引用楼主螺丝刀1234于2022-01-17 11:41发表的 ADPRW   指令问题 请指教 :
ADPRW  H1  H4 HA7B8 K1 D0    这条指令 含义( H1从站号)(H4功能读取存储器)(HA7B8地址)(K1数量) (D0主站地址) 意思是把从站X0-X17 状态读到主站D0 -DF ,
ADPRW H1  H3 H0  K8 D10这条指令含义 (H1从站号  (H3功能读保持寄存器)(H0地址)( K8数量) (D10主站寄存器) 意思是把从站 D0-D7 读到主站D10-D17
问题第一条 K1数量 为什么是16位地址 X0-X17  第二条指令K8是读取8位       。哪位师傅指点一下谢谢


.......

功能码H4是读取从站的多个地址连续的16位输入寄存器存储值,HA7B8是指16位输入寄存器的起始地址,K1是指读取1个输入寄存器,读取的16位数据存入D0。注意:HA7B8是不是指从站的X0-X17(X0-X7,X10-X17),要看PLC型号以及从站参数设置。功能码H3是读取从站的多个地址连续的16位保持寄存器存储值,H0是指保持寄存器起始地址,K8是读取8个地址连续的保持寄存器(地址为H0000-H0007),读取的8个16位数据依次存入D10-D17,注意,从站的地址H0-H7的保持寄存器是不是指D0-D7,也要看PLC型号以及从站参数设置。
[ 此帖被zhangqi_1234在2022-01-19 12:13重新编辑 ]
本帖最近评分记录:
  • 下载积分:+1(xiaocaide)
  • 下载积分:+2(奔大海的小溪) 好贴好贴!
    螺丝刀1234
    级别: 探索解密
    精华主题: 0
    发帖数量: 26 个
    工控威望: 146 点
    下载积分: 11714 分
    在线时间: 80(小时)
    注册时间: 2012-09-16
    最后登录: 2024-03-15
    查看螺丝刀1234的 主题 / 回贴
    4楼  发表于: 2022-01-17 15:40
    引用
    引用第3楼zhangqi_1234于2022-01-17 14:19发表的 Re:ADPRW   指令问题 请指教 :

    功能码H4是读取从站的多个地址连续的16位输入寄存器存储值,HA7B8是指输入寄存器起始地址,K1是指读取1个输入寄存器,读取存储值为1个的16位数据存入D0。注意:HA7B8是不是指从站的X0-X17(X0-X7,X10-X17),要看PLC型号以及从站参数设置。功能码H3是读取从站的多个地址连续的16位保持寄存器存储值,H0是指保持寄存器起始地址,K8是读取8个地址连续的保持寄存器(地址为H0000-H0007),读取的存储值为8个16位数据依次存入D10-D17,注意,从站的地址H0-H7的保持寄存器是不是指D0-D7,也要看PLC型号以及从站参数设置。

    非常感谢老师指点,能不能这么理解,输入和输出位元件比如X0-X17 ,Y0-Y17  读取值为1 代表16位的地址,读取值为2 代表32位地址     。读取对用X0-D0 X1-D1  以此推列。
    存储寄存器 读取值 K8代表 8个寄存器 每个寄存器16位   ,读取对用 D0-D10  D1-D11 以此推列。  
    zhangqi_1234
    级别: 略有小成
    精华主题: 0
    发帖数量: 336 个
    工控威望: 487 点
    下载积分: 4001 分
    在线时间: 245(小时)
    注册时间: 2013-03-22
    最后登录: 2024-04-28
    查看zhangqi_1234的 主题 / 回贴
    5楼  发表于: 2022-01-17 17:37
    引用
    引用第4楼螺丝刀1234于2022-01-17 15:40发表的 Re:Re:ADPRW   指令问题 请指教 :

    非常感谢老师指点,能不能这么理解,输入和输出位元件比如X0-X17 ,Y0-Y17  读取值为1 代表16位的地址,读取值为2 代表32位地址     。读取对用X0-D0 X1-D1  以此推列。
    存储寄存器 读取值 K8代表 8个寄存器 每个寄存器16位   ,读取对用 D0-D10  D1-D11 以此推列。  


    “读取值为1”应称为“读取数量为1”,这样才准确,否则容易造成误解。另外,你对位元件、寄存器的理解有问题,1个16位输入寄存器存储的是16位数据,它既可以保存16位的A/D转换值,也可以保存16个位元件状态。至于保存什么样的数据,这要看从站参数是如何设置的。X0是位元件,只占用16位数据中的某一位。X0-X7、X10-X17共计16个,占用16位。D0是16位数据寄存器,可保存X0-X17共16个位元件数据。还需要加强MODBUS和PLC的基础理论知识学习。
    本帖最近评分记录:
  • 下载积分:+2(奔大海的小溪) 热心助人!
    螺丝刀1234
    级别: 探索解密
    精华主题: 0
    发帖数量: 26 个
    工控威望: 146 点
    下载积分: 11714 分
    在线时间: 80(小时)
    注册时间: 2012-09-16
    最后登录: 2024-03-15
    查看螺丝刀1234的 主题 / 回贴
    6楼  发表于: 2022-01-22 13:33
    引用
    引用第5楼zhangqi_1234于2022-01-17 17:37发表的 Re:Re:Re:ADPRW   指令问题 请指教 :


    “读取值为1”应称为“读取数量为1”,这样才准确,否则容易造成误解。另外,你对位元件、寄存器的理解有问题,1个16位输入寄存器存储的是16位数据,它既可以保存16位的A/D转换值,也可以保存16个位元件状态。至于保存什么样的数据,这要看从站参数是如何设置的。X0是位元件,只占用16位数据中的某一位。X0-X7、X10-X17共计16个,占用16位。D0是16位数据寄存器,可保存X0-X17共16个位元件数据。还需要加强MODBUS和PLC的基础理论知识学习。

    谢谢老师指点