西门子6GT2002-0JE20

供应商
上海工智达电气技术有限公司
认证
报价
2890.00元每台
西门子
6GT2002-0JE20
德国
净重0.288KG
手机号
15221760199
联系人
田子龙
所在地
上海市松江区科技园区平原街880弄65号201
更新时间
2024-10-19 07:05

详细介绍

s7-1200 cpu 与 s7-200 cpu s7 通信(s7-1200 作为客户端)

s7-1200 cpu 与 s7-200 cpu 之间的以太网通信只能通过 s7 通信来实现,因为 s7-200的以太网模块只支持s7通信。当s7-1200作为客户端,s7-200作为服务器,需在客户端单边组态连接和编程,而作为服务器端的s7-200只需设置为服务器准备好通信的数据就行。

硬件和软件需求及所完成的通信任务

硬件:
① s7-1200 cpu 硬件版本v2.0或更高
② s7-200 cpu + cp243-1
③ pc (带以太网卡)
④ pc/ppi 电缆
⑤ tp以太网电缆

软件:
① step 7 professional v16
② step 7 micro/win v4.0 sp9

所完成的通信任务:

硬件/角色cpu1215(客户端)方向cp243-1(服务器)ip地址.168.0.101数据"put_data".a(db1,2字节数组)-->vb100-vb101"get_data".a(db4,2字节数组)

<--

mb10-mb11
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. 0. 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 v16软件新建一个项目并完成硬件配置,网络组态

1.1 在“项目树”>“设备组态”>“网络视图”下,按如下图片中1~4的步骤添加新连接,如图11. 所示。

图11. 添加s7连接

1.2 在弹出的“添加新连接”对话框中,按照步骤1~3,添加伙伴为未指定的s7连接,如图12.所示。

图12. 添加伙伴为未指定的s7连接

1.3 按如下图片中1~6的步骤填写s7连接参数,填写cp243-1的ip地址,如图13. 所示。

图13. 填写通信伙伴ip地址

1.4 在“地址详细信息”中设置通信伙伴的tsap号,如图14. 所示。

图14. 定义通信双方tsap号

注意:图14.中填写的伙伴tsap号,应该与s7-200程序中对cp243-1以太网向导组态的本地tsap号保持一致,如图6所示。

2. 软件编程

2.1 创建db块用来接收/发送数据,用来和s7-200 cp243-1交换数据,如图15. 所示。

db1数据块名为“put_data”,定义2个字节的数组,变量名称为“a”,向cp243-1发送2字节数据;

db4数据块名为“get_data”,,定义2个字节的数组,变量名称为“a”,从cp243-1读取2字节数据;

db4中创建的s7_comm_status的结构体变量,用于程序中捕捉错误代码和接收指令的完成位。

注意:此处创建的db块,可以是优化/非优化的数据块。创建的数据块为s7-1200用于发送/接收的数据区,填写在get指令的rd_x及put指令的sd_x中。

图15. 创建db块

2.2 在ob1中,从“指令”-->"通信指令"-->“s7 通信”下,调用put、get通信指令,程序见图16。

图16. 程序调用功能

call “put”

%db2

//调用 put,使用背景db块:db2

req

:=%m0.5

//系统时钟 1秒脉冲

id

:=w#16#0100

//连接号,要与连接配置中一致,创建连接时的连接号

done

可连接变量

// bool,为1时,写完成

error

可连接变量

//bool, 为1时,有故障发生

status

可连接变量

//word类型, 状态代码

addr_1

:=p#db1.dbx100.0 byte 2

// 此处填写发送到通信伙伴数据区的地址

表示将数据写入cp243-1的vb100-vb101

由于s7-200没有db区,所以使用db1对应s7-200的v区

sd_1

:=“put_data”.a

// 此处填写本地发送数据地址区

表示s7-1200要将数据块名为“put_data"的数据块的变量名为”a“的变量发送给cp243-1

如果“put_data”为非优化的数据块,还可以使用p#指针填写p#db1.dbx0.0 byte 2


call “get”

%db3

//调用 get,使用背景db块:db3

req 

:=%m0.5

//系统时钟 1秒脉冲

id

:=w#16#0100

//连接号,要与连接配置中一致,创建连接时的连接号

ndr

可连接变量

//bool,为1时,接收到新数据

error

可连接变量

//bool,为1时,有故障发生

status

可连接变量

//word,状态代码

addr_1

:=p#m10.0 byte 2

//此处填写从通信伙伴数据区读取数据的地址

表示从cp243-1的mb10-mb11读取数据

rd_1

:=“get_data”.a

//此处填写本地接收数据地址区

表示s7-1200要将从cp243-1中读取的数据存放在数据块名为“put_data"中变量名为”a“的数组中

如果“get_data”为非优化的数据块,还可以使用p#指针填写p#db4.dbx0.0 byte 2

2.3如果通信时发现数据没有正常交换,可以增加程序段,用来捕捉判断指令块的done是否置位过,或者捕捉判断指令块是否有错误,错误代码是什么,如图17.所示。

图17中所示为捕捉put指令的完成位及错误代码。

图17.捕捉错误代码及完成位

3. 监控结果

s7-1200和s7-200分别下载程序,将通信数据区域分别在监控表(s7-1200)和状态表(s7-200)中赋值及监控,监控结果如图18。

图18. s71200和s7200监控数据


西门子

展开全文

我们其他产品
我们的新闻
微信咨询 在线询价 拨打电话