2010-07-22
评论4
楼主 2010/3/25 10:39:41
PPI最简单了,用向导做,用自由口写也可以。
用网络读写指令
在Micro/WIN中的命令菜单中选择 工具 > 指令向导,然后在指令向导窗口中选择NETR/ NETW指令:
在使用向导时必须先对项目进行编译,在随后弹出的对话框中选择“Yes” ,确认编译。如果已有的程序中存在错误,或者有尚未编完的指令,编译不能通过。
如果你的项目中已经存在一个NETR/ NETW的配置,你必须选择是编辑已经存在的NETR/ NETW的配置还是创建一个新的。
第一步 定义用户所需网络操作的数目
向导允许用户最多配置24个网络操作,程序会自动调配这些通信操作。
第二步 定义通信口和子程序名。 选择应用哪个通信口进行PPI通信:port0或port1
注意:一旦定义选择了通信口,则向导中所有网络操作都将通过该口通信,即通过向导定义的网络操作,只能一直使用一个口与其它CPU进行通信。
向导为子程序定义了一个缺省名,你也可以修改这个缺省名。
第三步 定义网络操作
每一个网络操作,你都要定义以下信息:
定义该网络操作是一个NETR 还是一个 NETW。
定义应该从远程PLC读取多少个数据字节(NETR)或者应该写到远程PLC多少个数据字节(NETW)
每条网络读写指令最多可以发送或接收 16 个字节的数据
定义想要通信的远程PLC地址。
如果定义的是NETR(网络读)操作:
定义读取的数据应该存在本地PLC的哪个地址区,有效的操作数为VB,IB,QB, MB,LB
如果定义的是NETW(网络写)操作:
定义要写入远程PLC的本地PLC数据地址区,有效的操作数为VB,IB,QB, MB, LB。
如果定义的是NETR(网络读)操作:
定义应该从远程PLC的哪个地址区读取数据,有效的操作数为VB,IB,QB, MB, LB
如果定义的是NETW(网络写)操作:
定义在远程PLC中应该写入哪个地址区,有效的操作数为VB,IB,QB, MB, LB
操作此按钮可以删除当前定义的操作
操作此按钮可以进入下一步网络操作的定义
第四步 分配V存储区地址
配置的每一个网络操作需要12字节的V 区地址空间,上例中配置了两个网络操作,因此占用了24个字节的V 区地址空间。向导自动为用户提供了建议地址,用户也可以自己定义V 区地址空间的起始地址。
注意:要保证用户程序中已经占用的地址、及网络操作中读写区所占用的地址以及此处向导所占用的V 区地址空间不能重复使用,否则将导致程序不能正常工作。
第五步 生成子程序及符号表
第六步 配置完NETR/ NETW向导,需要在程序中调用向导生成的NETR/ NETW参数化子程序
必须用SM0.0来使能NETR/ NETW,以保证它的正常运行
超时:0=不延时;1-36767=以秒为单位的超时延时时间。如果通信有问题的时间超出此延时时间,则报错误
周期参数,此参数在每次所有网络操作完成时切换其开关量状态
此处是错误参数,0=无错误;1=错误
NetR/NetW指令向导生成的子程序管理所有的网络读写通信。用户不必再编其他程序进行诸如设置通信口的操作。
楼主 2010/7/22 13:13:05
感觉有些地方不方便
楼主 2011/1/31 10:38:52
2楼说的很详细啊。学习了
楼主 2014/4/23 13:17:03
西门子通讯方面很强大