S7-1500与S7-1200不需要第三方软件实现通讯

[复制链接]
查看49549 | 回复0 | 2024-6-30 21:55:06 | 显示全部楼层 |阅读模式
<div class="rich_media"><div class="rich_media_inner"><div class="rich_media_area_primary"><div class="rich_media_area_primary_inner"><div class="rich_media_wrp">


<div class="rich_media_content js_underline_content                       autoTypeSetting24psection            ">
     S7-1500与S7-1200在不同项目之间 的 PROFINET 通信,上篇文章实操调试案例S7-1500与S7-1200之间的S7通信,S7-1500与S7-1200是在同一项目内实现的S7通信。本编程实操调试案例是把S7-1500与S7-1200分别处在不同的工程项目中,这种通信案例一般资料上很少出现,因此本案例与上篇1500与1200处在同一项目中作为对比案例,强化S7-1500与S7-1200通信的不同方式、架构。本案例采用S7-1500PLC作为客户端,S7-1200PLC作为服务器端,通信程序写在S7-1500PLC客户端,S7-1200PLC中不做通信编程,本案例属于单向通信,这种通信方式工程上可能比1500与1200在同一个工程项目内使用概率更高,但是在市面上的资料、书籍上鲜见这种通信案例,这就是为什么要做本案例的原因,更实用,一般人都不会这种通信编程方法。   

硬件组成:

S7-1500采用CPU1511C,紧凑型1500PLC。

S7-1200采用CPU1214C,AC/DC/RLY

博途软件版本:

采用博途V15版本(只要是V13SP1以上的各个版本差别不大)

要实现的任务要求:



第一部分:博途1500PLC项目编程组态

1、点新建创建项目给项目命名:



2、添加新设备:



3、设置CPU的IP地址:



4、设置系统与时钟存储器



5、创建DB1(发送)与DB2(接收)全局数据块。





在DB1上点右键,属性对话框,去掉“优化的块访问”前面的√,使DB1的符号访问转成绝对地址访问



点DB1编译后如下图所示:



同样创建DB2(RECEIVE)



6、创建变量监控表,用于后面调试通信程序,查看发送数据区与接收数据区的数据是否正常。



7、双击“设备和网络”进入网络视图,在网口,点击右键--添加子网。



8、进入OB1主程序窗口,右侧点击“通信”--S7通信



9、组态PUT库指令:



10、组态GET通信指令



11、完成OB1主程序中PUT、GET通信指令的组态与编程。



12、选中PLC_1站点,点击“编译”“保存”“下载”。



到此为止:完成S7-1500PLC站点(客户端)的全部编程工作。

第二部分:博途1200PLC项目编程组态

1、点新建创建项目,给新项目命名



2、添加新设备,创建CPU1214 PLC站点(服务器端)



3、设置CPU1214C PLC的IP地址



4、设置防护与安全:连接机制



5、在CPU1214C中,创建新块,插入DB1(RECEIVE)与DB2(SEND)全局数据块

创建DB1(RECEIVE)数据块



创建DB2(SEND)数据块



6、在CPU1214中创建变量监控表,用以观察1500客户端与1200服务器端的发送与接收数据是否正确。



7、在CPU1214项目站点,选中PLC_1,编译项目,保存项目,下载项目到CPU1214C中

至此:博途1200PLC项目组态编程完成

第三部分:分别把博途1500项目、1200项目下载到各自的CPU中,然后在S7-1500PLC项目与S7-1200PLC项目中分别打开监控表,在两个监控表中分别相互发送及接收数据,观察发送数据区及接收数据区的数据是否正确,从而验证是否实现任务要求。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则