回复:两台 1200 通过 Modbus TCP 通讯,不同的数据类型下 LEN 和 DATA 该怎么写呢?

已锁定

Livid

  • 帖子

    154
  • 精华

    0
  • 被关注

    2

论坛等级:侠士

注册时间:2022-09-06

普通 普通 如何晋级?

发布于 2023-05-08 14:38:41

10楼

展开查看
以下是引用WWCWWC在2023-05-08 13:46:16的发言 >8楼

 P#DB1.DBX0.0 BYTE 10可以通讯?

严格意义上说应该是匹配的,应该写 P#DB1.DBX0.0 BYTE 6如果这样写通讯没有问题,但是,似乎有浪费存储空间的嫌疑。注意,MB_DATA_LEN的长度应该是位bool或者字word单位,用指针写byte就嫌疑6个字节对应。

 【DB1_发送数据】创建 Array[0..10] of Byte,想发送 3 个字节给 【DB2_接收数据】,"TSEND_DB" 中的 LEN 和 DATA怎么写呢?


官方的写法是 LEN = 3,DATA= P#DB1.DBX0.0 BYTE 10,我试过了,可以。


不过感觉还是按照 zhangli0 回答的来比较好,数据类型和字节数对应起来。比如:如果想发送 5 个实数 Real,那 LEN = 5*4 = 20,DATA= P#DB1.DBX0.0 Real 5,我试过了,可以。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15340条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。