长沙分类信息网-长沙新闻网

长沙玥励6ES7954-8LC02-0AA0西门子数字量输入/输出模块

2023-8-25 2:41:26发布次查看发布人:
长沙玥励   西门子   6es7954-8lc02-0aa0   数字量输入/输出模块   
 
   
   s7-1200 cpu 通过ethernet与s7-200 cpu 通信 s7-1200 cpu 与 s7-200 cpu 之间的以太网通信只能通过 s7 通信来实现,因为 s7-200 的以太网模块只支持s7 通信。而在 step7 v11中, s7-1200 的 profinet 通信口可以做 s7 通信的服务器端或客户端。当s7-200作为客户端,s7-1200作为服务器,见“s7-1200 cpu 通过ethernet与s7-200 cpu 通信”;当s7-200作为服务器,s7-1200作为客户端,由于s7-1200 仅支持 s7 单边通信,需在客户端单边组态连接和编程,而作为服务器端的s7-200只需设置为服务器准备好通信的数据就行。
硬件和软件需求及所完成的通信任务 硬件:
① s7-1200 cpu 硬件版本v2.0或更高 
② s7-200 cpu + cp243-1
③ pc (带以太网卡)
④ pc/ppi 电缆
⑤ tp以太网电缆
软件:
① step7 v11 sp2 
② step 7 micro/win v4.0 sp9
所完成的通信任务:
① s7-1200 将通信数据区 db1 中的212 个字节发送到 s7-200 的vb 数据区。 
② s7-1200 读取 s7–200中的vb数据区存储到s7-1200 的数据区db2 。
s7-200 server 端的组态 1. 打开 step 7 micro/win 软件,创建一个新项目,在“plc”>“type”选择所使用 cpu 的型号,如图1. 所示。
图1. 选择s7-200 cpu 类型
2. 选择“工具”>“以太网向导” 进入 cp243-1 的向导配置,如图2. 所示。
 
图2. 使用以太网向导
3. 选择cp243-1 模板的位置。
cp243-1 紧邻 cpu 安装,所以模板位置为0 ,也可以通过“读取模块”读出模板位置,如图3. 所示。
图3. 选择模板位置
4. 设置 cp243-1 模板的 ip 地址
ip 地址:192. 168. 70. 101 ,子网掩码:255. 255. 255. 0,如图4.所示。
图4. 设置网络地址
5. 设置模块所占用输出地址字节和连接数,如图5. 所示。
图5. 设置占用输出地址及网络连接数
6. 将cp243-1 定义为 server 端,如图6. 所示。
图 6. 定义为 server 端
注意:本例s7-200中安装的cp243-1紧邻cpu,位置为0,故tsap地址为10.00;若cp243-1在位置为1,则tsap地址为10.01。
7. 选择crc校验,如图7. 所示。
图7. 选择crc 较验
8. 为配置分配存储区
根据以态网的配置,需要一个v存储区,用户可以指定一个未用过的v存储区的起始地址,也可以点击“建议地址”按钮使用建议地址。如图8. 所示。
图8. 为配置分配存储区 
9. 生成以太网用户子程序。如图9. 所示。
图9. 生成子程序
10. 调用向导中生成的子程序,并将程序下载到cpu中。如图10. 所示。
图10. 调用子程序
 
s7-1200 client 端的配置编程 1. 使用 step7 v11软件新建一个项目并完成硬件配置,网络组态
1.1 在“项目树”>“设备组态”>“网络视图”下,按如下图片中1~6的步骤建立s7连接,如图11. 所示。
图11. 建立s7连接
1.2 按如下图片中1~3的步骤填写连接参数,如图12. 所示。
图12. 定义连接对方ip地址
1.3 在“地址详细信息”中设置通信伙伴的tsap地址,如图13. 所示。
图13. 定义通信双方tsap号
注意:通讯伙伴的tsap地址设定必须与cp243-1的组态一致,如图6所示。
2. 软件编程
2.1 创建发送数据块db1(接收区数据块db2类似),定义为212个字节的数组,如图14.和15. 所示。
图14. 创建发送数据块db1
图15. 定义212个字节的数组
2.2 在ob1中,从“指令”-->“s7 通信”下,调用get、put通信指令,程序见图16。
图16. 程序调用功能
call “put” , %db3 //调用 put,使用背景db块:db3
req :=%m0.7 //系统时钟 2秒脉冲
id :=w#16#0100 //连接号,要与连接配置中一致,创建连接时的连接号
done :=%m2.0 // 为1时,发送完成
error :=%m2.1 // 为1时,有故障发生
status :=%mw4 // 状态代码
addr_1 :=p#db1.dbx1000.0 byte 212 // 发送到通信伙伴数据区的地址
sd_1 :=p#db1.dbx0.0 byte 212 // 本地发送数据区
 
call “get” , %db4 //调用 get,使用背景db块:db4
req  :=%m0.7 //系统时钟 2秒脉冲
id :=w#16#0100 //连接号,要与连接配置中一致,创建连接时的连接号
ndr :=%m2.2 //为1时,接收到新数据
error :=%m2.3 //为1时,有故障发生
status :=%mw6 //状态代码
addr_1 :=p#db1.dbx2000.0 byte 212 //从通信伙伴数据区读取数据的地址
rd_1 :=p#db2.dbx0.0 byte 212 //本地接收数据地址
 
3. 监控结果
通过在s7-1200侧编程进行s7通信,实现两个cpu之间的数据交换,监控结果如图17。
图17. s71200和s7200监控数据
注意:s7-200中v区对应于db1,即在put指令中使用的通信伙伴数据区addr_1=p#db1.dbx1000.0 byte 212在s7-200中对于为vb1000~vb1211。
 
如何打开项目归档文件 参考:如何打开归档项目文件
s7-1200 与 s7-300 cp343-1 s7 通信例程 本文为s7-1200 与 s7-300 cp343之间 s7 通信的几种可能情况分别提供了例程:
1. 同一项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 客户端,s7-300 作为服务器;
2. 同一项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 服务器,s7-300 作为客户端;
3. 不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 客户端,s7-300 作为服务器,双方 cpu 都采用 tia v14 sp1编程组态;
4. 不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 服务器,s7-300 作为客户端,双方 cpu 都采用 tia v14 sp1编程组态;
5. 不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 客户端,s7-300 作为服务器,s7-1200 使用step7 v14 sp1编程组态,s7-300使用 step 7 v5.6 编程组态; 
6. 不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信,s7-1200 作为 s7 服务器,s7-300 作为客户端,s7-1200 使用step7 v14 sp1编程组态,s7-300使用 step 7 v5.6 编程组态。
注:例程中为标准版的 cp343-1,如果为cp343-1 lean,则s7-300只能作为服务器。
1.同一项目中s7-1200 与 s7-300 cp343-1 之间 s7 通信(s7-1200 作为 s7 客户端,s7-300 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ step7 v14 sp1
2.实现功能:
用于演示同一项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300 作为 s7 通信的服务器。
① s7-1200 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-300 cpu的db11 块中。 
② s7-1200 cpu将 s7-300 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
1_same_projects_s7-1200_as_client.zap14
2.同一项目中s7-1200 与 s7-300 cp343-1之间 s7 通信(s7-1200 作为 s7 服务器,s7-300 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ step7 v14 sp1
2.实现功能:
用于演示同一项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300 作为 s7 通信的客户端。
① s7-300 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-1200 cpu的db11 块中。 
② s7-300 cpu将 s7-1200 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
2_same_projects_s7-300_as_client.zap14
3.不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信(s7-1200 作为 s7 客户端,s7-300 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ step7 v14 sp1
2.实现功能:
用于演示不同项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300 作为 s7 通信的服务器。
① s7-1200 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-300 cpu的db11 块中。 
② s7-1200 cpu将 s7-300 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
s7-1200 项目:3_different_projects_s7-1200_as_client.zap14
s7-300项目:3_different_projects_s7-300_as_server.zap14
4.不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信(s7-1200 作为 s7 服务器,s7-300 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ step7 v14 sp1
2.实现功能:
用于演示不同项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300 作为 s7 通信的客户端。
① s7-300 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-1200 cpu的db11 块中。 
② s7-300 cpu将 s7-1200 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
s7-1200 项目:4_different_projects_s7-1200_as_server.zap14
s7-300项目:4_different_projects_s7-300_as_client.zap14
5.不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信(s7-1200 作为 s7 客户端,s7-300 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ s7-1200 v4.2 使用step7 v14 sp1编程组态;s7-300 v3.3 使用 step 7 v5.6 编程组态。
2.实现功能:
用于演示不同项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300 作为 s7 通信的服务器。
① s7-1200 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-300 cpu的db11 块中。 
② s7-1200 cpu将 s7-300 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
s7-1200 项目:5_different_projects_s7-1200_as_client.zap14
s7-300项目:5_different_projects_s7-300_as_server.zip
6.不同项目中s7-1200 与 s7-300 cp343-1之间 s7 通信(s7-1200 作为 s7 服务器,s7-300 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300 v3.3 ; cp343-1 v3.0
③ s7-1200 v4.2 使用step7 v14 sp1编程组态;s7-300 v3.3 使用 step 7 v5.6 编程组态。
2.实现功能:
用于演示不同项目中s7-1200 与 s7-300 cp343-1之间的以太网通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300 作为 s7 通信的客户端。
① s7-300 cpu将 本地 db10块中的 10 个字节的数据发送到 s7-1200 cpu的db11 块中。 
② s7-300 cpu将 s7-1200 cpu的 db10块中 10 个字节的数据读取到 本地db11 块中。
s7-1200 项目:6_different_projects_s7-1200_as_server.zap14
s7-300项目:6_different_projects_s7-300_as_client.zip
免责声明 本例程仅供参考,程序中的cpu版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
 
如何打开项目归档文件 参考:如何打开归档项目文件
s7-1200 与 s7-300 pn s7 通信例程 本文为s7-1200 与 s7-300 pn 之间 s7 通信的几种可能情况分别提供了例程:
1. 同一项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器;
2. 同一项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端;
3. 不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器,双方 cpu 都采用 tia v14 sp1 编程组态;
4. 不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端,双方 cpu 都采用 tia v14 sp1 编程组态;
5. 不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器,s7-1200 使用step7 v14 sp1 编程组态,s7-300pn 使用 step 7 v5.6 编程组态; 
6. 不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信,s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端,s7-1200 使用step7 v14 sp1 编程组态,s7-300pn 使用 step 7 v5.6 编程组态。
1.同一项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ step7 v14 sp1
2.实现功能:
例程用于演示同一项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300pn 作为 s7 通信的服务器。
① s7-1200 cpu调用 put 指令将本地数据区 db10 块中的 10 个字节的数据传送到 s7-300 cpu的数据区 db10 块中。 
② s7-1200 cpu调用 get 指令读取s7-300 cpu的数据区 db11 块中10 个字节的数据存储到本地数据区 db 11 块中。
s7 通信服务器设置:
s7-300pn 作为 s7 通信的服务器无需编写 s7 通信程序。
s7-1200_s7_communication_with_s7-300pn_s7-1200_as_client.zap14
2.同一项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ step7 v14 sp1
2.实现功能:
例程用于演示同一项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300pn 作为 s7 通信的客户端。
① s7-300pn cpu调用 put 指令将本地数据区 db11 块中的 10 个字节的数据传送到 s7-1200 cpu的数据区 db11 块中。 
② s7-300pn cpu调用 get 指令读取s7-1200 cpu的数据区 db10 块中10 个字节的数据存储到本地数据区 db 10 块中。
s7 通信服务器设置:
s7-1200 作为 s7 通信的服务器无需编写 s7 通信程序,但是需要在 cpu 属性防护与安全 > 连接机制中激活允许来自远程对象的 put/get 通信访问。
s7-1200_s7_communication_with_s7-300pn_s7-1200_as_server.zap14
3.不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ step7 v14 sp1
2.实现功能:
例程用于演示不同项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300pn 作为 s7 通信的服务器。
① s7-1200 cpu调用 put 指令将本地数据区 db10 块中的 10 个字节的数据传送到 s7-300 cpu的数据区 db10 块中。 
② s7-1200 cpu调用 get 指令读取s7-300 cpu的数据区 db11 块中10 个字节的数据存储到本地数据区 db 11 块中。
s7 通信服务器设置:
s7-300pn 作为 s7 通信的服务器无需编写 s7 通信程序。
注意:
s7-1200 项目中创建 s7 连接时,需要在网络视图中为s7_连接的属性常规 > 地址详细信息中将伙伴 cpu 的 tsap 设置为 03.02 。
s7-1200 项目:different_projects_s7-1200_as_client.zap14
s7-300pn项目:different_projects_s7-300_as_server.zap14
4.不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ step7 v14 sp1
2.实现功能:
例程用于演示不同项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300pn 作为 s7 通信的客户端。
① s7-300pn cpu调用 put 指令将本地数据区 db11 块中的 10 个字节的数据传送到 s7-1200 cpu的数据区 db11 块中。 
② s7-300pn cpu调用 get 指令读取s7-1200 cpu的数据区 db10 块中10 个字节的数据存储到本地数据区 db 10 块中。
s7 通信服务器设置:
s7-1200 作为 s7 通信的服务器无需编写 s7 通信程序,但是需要在 cpu 属性防护与安全 > 连接机制中激活允许来自远程对象的 put/get 通信访问。
s7-1200 项目:different_projects_s7-1200_as_server.zap14
s7-300pn项目:different_projects_s7-300_as_client.zap14
5.不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信客户端,s7-300 pn 作为服务器) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ s7-1200 v4.2 使用step7 v14 sp1编程组态;s7-300pn v3.2 使用 step 7 v5.6 编程组态。
2.实现功能:
例程用于演示不同项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的客户端,s7-300pn 作为 s7 通信的服务器。
① s7-1200 cpu调用 put 指令将本地数据区 db10 块中的 10 个字节的数据传送到 s7-300 cpu的数据区 db10 块中。 
② s7-1200 cpu调用 get 指令读取s7-300 cpu的数据区 db11 块中10 个字节的数据存储到本地数据区 db 11 块中。
s7 通信服务器设置:
s7-300pn 作为 s7 通信的服务器无需编写 s7 通信程序。
注意:
s7-1200 项目中创建 s7 连接时,需要在网络视图中为s7_连接的属性常规 > 地址详细信息中将伙伴 cpu 的 tsap 设置为 03.02 。
s7-1200 项目:s7-1200_as_client.zap14
s7-300pn项目:s7-300_as_server.zip
6.不同项目中s7-1200 与 s7-300 pn 口之间 s7 通信(s7-1200 作为 s7 通信服务器,s7-300 pn 作为客户端) 1.使用环境:
① s7-1200 v4.2
② s7-300pn v3.2
③ s7-1200 v4.2 使用step7 v14 sp1编程组态;s7-300pn v3.2 使用 step 7 v5.6 编程组态。
2.实现功能:
例程用于演示不同项目中s7-1200 与 s7-300 pn 口之间的s7通信,项目中 s7-1200 cpu 作为 s7 通信的服务器,s7-300pn 作为 s7 通信的客户端。
① s7-300pn cpu调用 put 指令将本地数据区 db11 块中的 10 个字节的数据传送到 s7-1200 cpu的数据区 db11 块中。 
② s7-300pn cpu调用 get 指令读取s7-1200 cpu的数据区 db10 块中10 个字节的数据存储到本地数据区 db 10 块中。
s7 通信服务器设置:
s7-1200 作为 s7 通信的服务器无需编写 s7 通信程序,但是需要在 cpu 属性防护与安全 > 连接机制中激活允许来自远程对象的 put/get 通信访问。
s7-1200 项目:s7-1200_as_server.zap14
s7-300pn项目:s7-300_as_client.zip
免责声明 本例程仅供参考,程序中的cpu版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
 
如何打开项目归档文件 参考:如何打开归档项目文件
s7-1200 与 s7-1200 s7 通信例程 本文为 s7-1200 与 s7-1200 进行 s7 通信的两种可能情况分别提供了例程:
1. s7-1200 与 s7-1200 在同一项目下进行 s7 通信;
2. s7-1200 与 s7-1200 在不同项目下进行 s7 通信;
1.s7-1200 与 s7-1200 s7 通信 同一项目( 一个 s7-1200 为客户端,一个 s7-1200 为服务器) 1. 使用环境:
(1)s7-1215c v4.2与s7-1217c v4.2
(2)tia 博途v14sp1组态
2. 实现功能:
s7-1215c作为客户端,s7-1217c作为服务器,s7-1215c读取s7-1217c的ib100~ib199,写入s7-1217c的qb100~qb199
s7_put_get_two_side.zap14
2.s7-1200 与 s7-1200 s7 通信 不同项目( 一个 s7-1200 为客户端,一个 s7-1200 为服务器) 1. 使用环境:
(1)s7-1215c v4.2与s7-1217c v4.2
(2)tia 博途v14sp1组态
2. 实现功能:
s7-1215c作为客户端,s7-1217c作为服务器,s7-1215c读取s7-1217c的ib100~ib199,写入s7-1217c的qb100~qb199
客户端程序:
s7_put_get_client.zap14
服务器程序:
s7_put_get_server.zap14
免责声明 本例程仅供参考,程序中的cpu版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
长沙玥励   西门子    6es7954-8lc02-0aa0
该用户其它信息

推荐信息

长沙分类信息网-长沙新闻网
关于本站