- 厂家:西门子
- 封装:德国
- 批号:CM1243-5
- 数量:35
6GK7243-5DX30-0XE0 CM1243-5
6GK7243-5DX30-0XE0 CM1243-5
6GK7243-5DX30-0XE0 CM1243-5
希殿电气技术(上海)有限公司
SIEMENS 备件仓库渠道
由于西门子产品现货型号实在太多,很多产品没有及时上架,如有其他产品需要可以联系!(现货的特价)
客服咨询康奎经理
“CP440 SEND RECV”程序实例
激活、启动程序
启动程序位于 OB 100 中。
启动过程中将控制位和计数器复位。
循环程序 6GK7243-5DX30-0XE0 CM1243-5
在组织块 OB 1 中定义循环程序。
在本例中,功能块 FB 9 “RECV_440”和 FB 10 “SEND_440”与功能 FC 21 和 FC 22 以及作为背景数据块的数据块 DB 21 和 DB 22 和 作为发送或接收 DB 的 DB 42 和 DB 43 一起工作。
在本例中,部分通过常数,部分通过符号方式寻址的实际操作数为功能块分配参数。
数据传输
数据传输发生的起始点为从插槽 4 上的 CP 440 的到插槽 5 上的 CP 440。如果您使用其它通信伙伴,则不调用 FC 22 (RECEIVE)。
对 FC 21 (SEND) 的说明
“生成跳沿 SEND_REQ”(Generate edge SEND_REQ) 程序部分:
初当 SEND_REQ=0 时,SEND_440 运行,然后 SEND_REQ 被设置为 1。当在 SEND_REQ 控制参数上检测到信号状态从“0”变为“1”时,SEND_440 作业启动。
当 SEND_DONE=1 或 SEND_ERROR=1 时,SEND_REQ 复位为 0。
“SEND_DONE=1”程序部分:
如果传输成功,在 SEND_440 的参数输出上 SEND_DONE 被置为“1”。
为了区分连续进行的传输,源块 DB 42 的数据字 0 中包含有一个发送计数器 (SEND_COUNTER_OK)。
“SEND_ERROR=1”程序部分:
如果 SEND_ERROR=1 时 SEND_440 运行了,则数据字 2 中的 SEND_COUNTER_ERR 错误计数器递增 1。对 SEND_STATUS 进行复制,因为它将在下次运行中被 0 覆盖,这意味着将不能够读取它的值。
对 FC 22 (RECEIVE) 的说明
“接收数据使能”(Enable Receive Data) 程序部分:
必须将块 RECV_440 的接收使能端 (RECV_EN_R) 设置为“1”,才能接收数据。
“RECV_NDR=1”程序部分:
当 RECV_NDR 置位时,新数据已接收到,同时 RECV_COUNTER_O 接收计数器的值递增。
“RECV_ERROR=1”程序部分:
如果执行不成功(也就是说,RECV_440 的参数输出端置位了错误位),则 RECV_COUNTER_ERR 错误计数器的值递增。 复制了 RECV_STATUS,因为在下次运行时它将被 0 覆盖,因此将不再能够读出它的值。
在变量表中,可以观察所有相关的值,以用于测试。