产品描述
V20代理商6SL3210-5BE23-0CV0 V20代理商6SL3210-5BE23-0CV0 V20代理商6SL3210-5BE23-0CV0
下载两个 CPU 中的所有硬件组态及程序,实现两个 CPU 之间数据交换,监控结果如图25所示。
图25. 监控结果
使用 STEP 7 V16 在一个项目中,新建一个S7-300站点,在另一个项目中,新建一个S7-1200站点,然后做 TCP 通讯。
1.使用 STEP7 V16 软件新建项目,添加新设备并命名 PLC_2
打开STEP7 V16,在 STEP7 V16的 “Portal 视图” 中选择 “创建新项目” 创建一个新项目。然后进入 “项目视图”,在“项目树” 下双击 “添加新设备”,在对话框中选择所使用的 S7-300 CPU 添加到机架上,命名为 PLC_2,如图26所示。
图26. 添加新设备
为了编程方便,使用 CPU 属性中定义的时钟位,定义方法如下:
在 “项目树” > “PLC_2” > “设备组态” 中,选中 CPU ,然后在下面的属性窗口中,“属性” > “时钟存储器” 下时钟位定义在 MB0,如图27所示。
时钟位我们主要使用 M0.3,它是以 2Hz 的速率在 0 和 1 之间切换的一个位,可以使用它去自动激活发送任务。
图27. 时钟存储位
2. 为 PROFINET 通信口分配以太网地址
在 “设备视图”中点击 CPU 上代表PROFINET 通信口的绿色小方块,在下方会出现PROFINET 接口的属性,在 “以太网地址” 下分配IP 地址为 192.168.0.2 ,子网掩码为255.255.255.0,图28所示。
图28. 分配IP 地址
① 在 S7-300 CPU 中调用发送通信指令,进入 “项目树” > “PLC_2” > “程序块” > “OB1” 主程序中,从右侧窗口 “指令” > “通讯” > “开放式用户通信”下调用 “TCON” 指令,创建连接,如图29所示。
图29. 调用 TCON 通信指令
② 定义 S7-300 的 “TCON”连接参数
S7-300 的 “TCON”指令的连接参数需要在指令下方的属性窗口“属性”> “组态”>“连接参数中”中设置,如图30所示。
图30. 定义 TCON 连接参数
地址处输入伙伴IP:192.168.0.1。
连接参数说明:
端点 | :可以通过点击选择按钮选择“未*”; |
连接类型 | :选择通信协议为 TCP; |
连接 ID | :连接的地址 ID 号,这个 ID 号在后面的编程里会用到; |
连接数据 | :点击新建自动生成该数据块; |
主动建立连接 | :选择对方 S7-1200 作为主动连接; |
地址详细信息 | :定义本方的端口号为:2000。 |
①创建并定义 S7-300 的发送数据区 DB1 块
通过“项目树”>“PLC_2”>“程序块”>“添加新块”,选择“数据块” 创建 DB1 块,点击“确定”键,定义发送数据区为 10个字节的数组,如图31所示,结果如图32所示。
图31. 创建发送数据区 DB 块
图32. 定义发送数据区为字节类型的数组
②调用 “TSEND” 在OB1内调用 发送 10 个字节数据到 S7-1200 中
进入 “项目树” > “PLC_2” > “程序块” > “OB1 ” 主程序中,从右侧窗口 “指令” > “通讯” > “开放式用户通信”下调用 “TSEND” 指令,配置接口参数,如图33所示。
图33. 调用 TSEND 指令并配置接口参数
参数说明:
输入接口参数:
REQ | :在上升沿启动发送作业 |
ID | :引用由“TCON”建立的连接 |
LEN | :要通过作业发送的较大字节数 |
DATA | :发送数据区的数据,使用指针寻址时,DB块要选用**寻址 |
输出接口参数:
DONE | :任务执行完成并且没有错误,该位置 1 |
BUSY | :该位为 1,代表任务未完成,不能激活新任务 |
ERROR | :通信过程中有错误发生,该位置 1 |
STATUS | :有错误发生时,会显示错位信息号 |
①创建并定义 S7-300 的接收数据区 DB2 块。
通过“项目树”>“PLC_2”>“程序块”>“添加新块”,选择“数据块” 创建 DB2 块,点击“确定”键,定义接收数据区为 10 个字节的数组,如图34所示,结果如图35所示。
图34. 创建接收数据区 DB2 块
图35. 定义接收数据区为字节类型的数组
② 将 “TRCV” 在OB1内调用
进入 “项目树” > “PLC_2” > “程序块” > “OB1 ” 主程序中,从右侧窗口 “指令” > “通讯” > “开放式用户通信”下调用 “TRCV” 指令,配置接口参数,如图36所示。
图36. 调用 TRCV 指令并配置接口参数
参数说明:
输入接口参数:
EN_R | :启用接收功能 |
ID | :指向使用“TCON”建立的连接的引用 |
LEN | :接收数据长度 |
DATA | :接收数据区的地址 |
输出接口参数:
NDR | :该位为 1,接收任务成功完成 |
BUSY | :该位为 1,代表任务未完成,不能激活新任务 |
ERROR | :通信过程中有错误发生,该位置 1 |
STATUS | :有错误发生时,会显示错误信息号 |
RCVD_LEN | :实际接收数据的字节数 |
配置完连接并编译存盘。
1. 使用 STEP7 V16 软件新建一个项目并完成硬件配置
在 STEP7 V16的 “Portal 视图” 中选择 “创建新项目” 创建一个新项目。
2.添加硬件并命名PLC
然后进入 “项目视图”,在“项目树” 下双击 “添加新设备”,在对话框中选择所使用的 S7-1200 CPU 添加到机架上,命名为 PLC_1,如图37所示。
图37. 添加新设备
为了编程方便,使用 CPU 属性中定义的时钟位,定义方法如下:
在 “项目树” > “PLC_1” > “设备组态” 中,选中 CPU ,然后在下面的属性窗口中,“属性” > “系统和时钟存储器” 下,将时钟位定义在 MB0,如图38所示。
时钟位我们主要使用 M0.3,它是以 2Hz 的速率在 0 和 1 之间切换的一个位,可以使用它去自动激活发送任务。
图38. 时钟位
3. 为 PROFINET 通信口分配以太网地址
在 “设备视图”中点击 CPU 上代表PROFINET 通信口的绿色小方块,在下方会出现PROFINET 接口的属性,在 “以太网地址” 下分配IP 地址为 192.168.0.1 ,子网掩码为255.255.255.0,如图39所示。
图39. 分配IP 地址
① 在S7-1200 CPU 中调用发送通信指令,进入 “项目树” > “ PLC_1” > “程序块” > “OB1” 主程序中,从右侧窗口 “指令” > “通信” > “开放式用户通信”下调用 “TCON” 指令,创建连接,如图40所示。
图40. 调用“TCON”通信指令
注意: S7-1200必须等S7-300先准备好(触发S7-300的TCON)后,才可以触发TCON。
② 定义 S7-1200 的 “TCON”连接参数
S7-1200 的 “TCON”指令的连接参数需要在指令下方的属性窗口“属性”> “组态”>“连接参数”中设置,如图41所示。
图41. 定义 TCON 连接参数
连接参数说明:
端点 | :可以通过点击选择按钮选择伙伴CPU为“未*” ; |
连接类型 | :选择通信协议为 TCP; |
连接 ID | :连接的地址 ID 号,这个 ID 号在后面的编程里会用到; |
连接数据 | :点击新建自动生成该数据块,如PLC_1_Connection_DB; |
主动建立连接 | :选择本地 S7-1200 作为主动连接; |
地址详细信息 | :定义通信伙伴方的端口号为:2000。 |
注意:伙伴端口号是因为服务器(S7-300)设置为2000,所以这里设置为2000。
产品推荐
友情链接