设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子S7-300/400与S7-200SMART之间的以太网S7通信 ...
返回列表
发新帖
[西门子]
西门子S7-300/400与S7-200SMART之间的以太网S7通信
[复制链接]
68031
|
0
|
2024-3-23 08:08:45
|
显示全部楼层
|
阅读模式
学PLC、机器人、机器视觉,启程是您的可靠选择
启程专注于10多年工业自动化培训
S7-300/400通过以太网接口与S7-200 SMART PLC 之间的S7通讯经过测试是可以成功的,但是需要S7-300/400侧编程调用PUT/GET指令,见表1所示。
S7通信介绍
S7通信是S7系列PLC基于MPI、PROFIBUS、ETHERNET网络的一种优化的通信协议,主要用于S7-300/400PLC之间的通信。S7-300/400通过以太网接口与S7-200 SMART PLC 之间的S7通讯经过测试是可以成功的,但是需要S7-300/400侧编程调用PUT/GET指令,见表1所示。
表 1 PUT和GET :S7-300/400根据使用通信接口(集成的PN口或CP343-1/CP443-1)不同,调用的功能块来源也不同。通信接口为S7-300 集成PN接口时,需要使用Standard Library中PUT/GET指令,如图1所示。
图1 S7-300PN接口需采用Standard Library
通信接口为S7-300 CP通信模块时,需要使用SIMATIC_NET_CP 库中PUT/GET指令,如图2所示。
图2 S7-300 CP模块接口需采用SIMATIC_NET_CP库
S7-400 CPU不区分通信接口,需要使用System Function Blocks 中的SFB14/SFB15指令块,如图3所示。
图3 S7-400 需采用SFB程序块
硬件及网络组态
本文以采用1个315-2PN/DP,1个S7-200 SMART PLC为例,介绍它们之间的S7通信。在STEP7中创建一个新项目,项目名称为S7-300-SMART。插入1个S7-300站,在硬件组态中插入CPU 315-2 PN/DP。如图4所示。
图4 STEP7 项目中插入S7-300站点设置CPU 315-2PN/DP的IP地址:192.168.0.1,
如图5所示。硬件组态完成后,即可下载该组态。
图5 设置CPU PN IP地址打开“NetPro”设置网络参数,选中CPU 315-2PN/DP,在连接列表中建立新的连接。
步骤如图6所示
图6 NetPro组态视图中插入新连接
选择 Unspecified 站点,选择通讯协议 S7 connection,点击 Apply,如图7所示。
图7 组态新连接
在弹出的S7 connection属性对话框中,勾选 Establish an active connection,设置Partner address:192.168.0.2(S7-200 SMART PLC IP 地址),如图8所示。
图8 设置S7连接参数点击 "Address Details" ,再弹出来的对话框设置 Partner 的 Slot 为1,如图9所示。点击 OK即可关闭该对话框。
图9 设置“address details”参数
网络组态创建完成后,需要编译,如图10所示。
图10 保存并编译连接网络组态编译无错,鼠标先点击 CPU 315-2PN/DP ,然后点击下载按钮下载网络组态,步骤如图11所示。
图 11 下载组态连接
程序编程
可以通过SFB/FB 14 "GET",从远程CPU中读取数据。
S7-300:在REQ的上升沿处读取数据。在REQ的每个上升沿处传送参数ID、ADDR_1和RD_1。在每个作业结束之后,可以分配新数值给ID、ADDR_1和RD_1参数。
S7-400:在控制输入REQ的上升沿处启动SFB。在此过程中,将要读取的区域的相关指针(ADDR_i)发送到伙伴CPU。远程伙伴返回此数据。在 下一个SFB/FB调用处,已接收的数据被复制到组态的接收区(RD_i)中。必须要确保通过参数ADDR_i和RD_i定义的区域在长度和数据类型方面 要相互匹配。通过状态参数NDR数值为1来指示此作业已完成。
只有在前一个作业已经完成之后,才能重新激活读作业。远程CPU可以处于RUN或STOP工作状态。如果 正在读取数据时发生访问故障,或如果数据类型检查过程中出错,则出错和警告信息将通过ERROR和STATUS输出表示。
通过使用SFB/FB 15 "PUT",可以将数据写入到远程CPU。
S7-300:在REQ的上升沿处发送数据。在REQ的每个上升沿处传送参数ID、ADDR_1和SD_1。在每个作业结束之后,可以给ID、ADDR_1和SD_1参数分配新数值。
S7-400:在控制输入REQ的上升沿处启动SFB。在此过程中,将指向要写入数据的区域(ADDR_i)的指针和数据(SD_i)发送到伙伴CPU。远程伙伴将所需要的数据保存在随数据一起提供的地址下面,并返回一个执行确认。必须要确保通过参数ADDR_i和SD_i定义的区域在编号、长度和数据类 型方面相互匹配。
如果没有产生任何错误,则在下一个SFB/FB调用时,通过状态参数DONE来指示,其数值为1。只有在最后一个作业完成之后,才能再次激活写作业。远程 CPU可以处于RUN或STOP模式。如果正在写入数据时发生访问故障,或如果执行检查过程中出错,则出错和警告信息将通过ERROR和STATUS输出 表示。打开SIMATIC 315 PN-1的OB1,在OB1中依次调用FB14,FB15如图12、图13所示:
图12 FB14调用
图13 FB15调用
推荐获取资料:
【视频】15个S7-1200编程案例精讲,免费领取!
《工业4.0通信与识别技术的实战技巧》全集免费下载
西门子PLC斗地主程序(含源代码)
2020年西门子最新软件汇总,欢迎下载!
400多页PPT西门子PLC入门到精通教程,免费领取!
学习报名+美女老师微信
线下实操学习地址
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
剑指工控
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』