5.2 TIA 数据记录操作
在PLC的程序中,可以通过指令RDREC和WRREC读写数据记录,在参考代码里可以看到读写操作都实现了index = 2的记录数据,并且初始化为:
#define DEMO_RECORD "ABCDEFGH"
首先定义要写入和读出的数据块
在OB1,调用RDREC和WRREC
在线状态时,首先置位M0.0触发RDREC功能块,可以看到:
然后置位M0.2触发WRREC功能块,从串口打印可以看到写入的参数:
记录数据的读写操作分别对应PnUsr_cbf_rec_read和PnUsr_cbf_rec_write.
读写操作是由控制器或者监控设备发起,回调的过程如下图所示:
分析代码可以看出,写入参数并没有实际更新到200P的变量中,读出的参数始终为一个常数。如果感兴趣的话,可以尝试修改代码,将写入和读出的参数对应到200P的变量中。
当检测到错误的记录数据请求后,用户程序需要返回错误码给协议栈。最终错误码会作为读写请求的响应,返回到控制器。在示例代码中,如果请求的index不存在,会返回相应的错误码,如果需要自定义错误码,可以参考这部分的实现。
在规范中定义的部分错误码如下: