技术论坛

 回复:多个CPU300通过以太网通讯中功能函数FC5参数的意义?

返回主题列表
作者 主题
发光
新手

经验值:12
发帖数:30
精华帖:0
楼主    2004-09-27 13:43:26
主题:多个CPU300通过以太网通讯中功能函数FC5参数的意义?
当多个CPU300通过以太网通讯时,调用功能函数FC5如下:
Call fc 5
ACT := M 10.0
ID := MW 12
LADDR := W#16#0100
SEND := P#db99.dbx10.0 byte 240
LEN := MW 14
DONE := M 10.1
ERROR := M 10.2
STATUS := MW 16

每行对应的解释如下:

//AG_SEND / AG_LSEND block call
//Job triggered by memory bit
//Connection ID acc. to configuration
//=LADDR 256 dec. in hardware configuration
//Buffer with send data
//Length info for send data
//Executed code
//Error code
//Status code


问题有两个:
1、参数ID指的是一个项目中插入的以太网络的数目吗?如果是,那么一个项目中以太网络的数目应该是一定的,这里应该是固定的某一个数,为什么要用MW12来赋值呢?
2、参数LEN指的是发送数据的长度,这个数据长度指的是每次要发送的数据的长度吗?参数SEND中不是已经指定了发送数据区的长度了吗,这里重新指定又是什么意思?
学生在此
侠客

经验值:706
发帖数:651
精华帖:4
    2004-10-05 13:06:49
精华帖  主题:回复:多个CPU300通过以太网通讯中功能函数FC5参数的意义?
我的理解:
1、参数ID指的是在同一网络中通信伙伴的ID,在网络组太中,建立相应连接时分配,实质上FC5、FC6就是发送与接收,而这种通信方式是一对一的,比如PLC0要与PLC1、PLC2通信,PLC0中就要对PLC1、PLC2分别使用FC5、FC6;
2、LEN是发送的长度信息,FC5、FC6允许最长240个字节,在有些时候,为了节省网络资源,我们可以将它定的小一些。“SEND := P#db99.dbx10.0 byte 240”指的是我们发送的数据,因为是用指针的方式来定义的,我们当然要给它地址长度,只与发送的实际数据有关,而与允许传输多少不是一个概念!

不知小弟说的对不对,请斑竹及高手指正!!!!以正校听,谢谢!

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