图3 设置A系统Address Details参数
图4 设置B系统Address Details参数
从图示3和图示4得知,此处TSAP号码已经实现一一对应关系,A系统中和B系统中的TSAP号码彼此正好是镜像的关系。
此时,A系统通讯组态设置已经创建完成,需要编译和下载到A系统CPU中。
先在网络组态界面点击按钮编译并保存,编程检查无错误后,为了能够实现CPU在线运行时通讯组态下载,如下步骤要严格按照STEP1到STEP3的执行过程,首先是在1处点中CPU,然后在2处选择新建立的通讯连接,在3处右键选择download selected connection,这样通讯已经下载成功。
图5 通讯新建连接编译和下载
对于系统B而言,按照以上系统A的方式进行配置,配置完成后同样进行编译和下载,配置过程中关注TCPIP地址和TSAP号即可。到此两个系统中的通讯组态配置完毕,可以在网络组态界面在线查看通讯是否已经建立,如图6所示。(图6为系统B中进行查看结果,系统A中查看亦可)
图6 在线查看通讯是否成功建立
程序编写在两个系统通讯已经建立的基础上,利用PCS7中通讯系统功能块实现对模拟量和布尔量的信号传递和交互,此处简单起见就布尔量信号传递举例说明。
在系统A中新增通讯系统功能块SEND_BO和REC_BO,在上述通讯连接(系统A)中的ID号需要在功能块中正确配置,如此处ID号码需要配置为7,对于R_ID号码,需要在两个系统中配置一样即可。如图7所示。
自系统A中的SEND_BO功能块上模拟前3个变量值为1进行简单测试,那么在系统B中的REC_BO功能块上应该会监控到前三个变量同样为1。这样就表明通讯数据已经在两个系统中成功传递。
组态详细步骤:- 双方项目中打开CFC。
- 分别添加一个“SEND_BO”和一个“REC_BO”块。
- 对每个块的“ID”管脚组态连接ID号。此例中,项目A是7,项目B是3。
- 对功能块的“R_ID”输入管脚组态任意数值。这个数值在一对通讯块"SEND_BO" 和"REC_BO"上必须要一致。示例中,项目A的发送块和项目B的接收块的“R_ID”是9;项目A的接收块和项目B的发送块的“R_ID”是10。
另外,文中并没有对模拟量进行举例说明,模拟量的做法等同,仅仅是调用不同的功能块而已,此处不再赘述。