"通讯控制一直以来都是西门子不易学习,却很实用的功能,通过简单的线路连接以及软件编程,可以实现大量数据的传递,非常实用,但因使用通讯控制必须全面熟悉PLC,因此通讯控制也是PLC学习中的难点。
今天我们学习下西门子300和西门子CP243-1*多8个以太网S7控制器通信,每个连接既可以是服务器连接也可以是客户机连接。
一个客户端(Client)可以包含1-32个数据传输操作,一个读写操作*多可以传输212个字节。如果CP243-1作为服务器运行,每个读操作可以传送222个字节。
S7-300做服务器,S7-可以把S7-步是对以太网通信的描述,点击下一步开始以太网配置。
图2向导介绍
在此处选择模块的位置,CPU后的个模块位置为0,往后依次类推;或者在线的情况下,点击读取模块搜寻CP243-1模块(在线读取将该模块的命令字节载入模块命令字节向导屏幕)。点击下一步;
图3读取模块
选择模块相匹配的MLFB版本,本例中的CP243-1模块型号为6GK7243-1EX01-0XE0,如下图所示
图4模块版本选择
在此处填写IP地址和子网掩码。点击下一步;
图5地址设置
下面的对话框将组态CP243-1进行S7连接的连接数量的设置,通过S7连接可以与通信伙伴进行读写数据操作。点击“下一步”按钮继续进行S7连接组态。
图6模块占用地址设置
选择此为客户机连接,远程属性TSAP(TransportServiceAccessPoint)填写为03.02,输入S7-300侧的IP地址。点击数据传输按钮进入数据交换的定义。
注意:如果连接远程对象是S7-300,TSAP为03.02;如果连接远程对象是S7-400,TSAP为03.0x,其中x为CPU模块的槽位,可以从S7-400站的硬件组态中找出PLC的槽号。
图7连接设置
选择""数据传输""标记,并单击""新传输""按钮,进行配置:选择是读取数据还是写入数据,填写通讯数据的字节个数,填写发送数据区和接收数据区的起始地址。
本例中为从S7-300的MB注意:本地PLC中的地址必须是V内存字节地址,远程对象中的地址必须代表字节地址。当您为S7-300/S7-400设备输入远程地址时,若是数据块请使用DBx.DBBy格式。
图8数据区域设置
选择CRC校验,使用缺省的时间间隔30秒,点击下一步按钮。
图9使用CRC
填写模块所占用的V存储区的起始地址。你也可以通过“建议地址”按钮来获得系统建议的V存储区的起始地址,点击下一步按钮。
图10配置存储区
S7-1.调用向导生成的子程序,实现数据传输
对于S7-如果通信未建立成功,可以对应查询子程序的错误代码。
S7-300作客户端,S7-通过以太网向导将以太网模块CP243-1配置为服务器,使用STEP7Micro/WIN中的向导进行通信的配置即可。在命令菜单中选择工具--以太网向导。
步是对以太网通信的描述,点击下一步开始以太网配置。
在此处选择模块的位置,CPU后的个模块位置为0,往后依次类推;或者点击读取模块搜寻在线的CP243-1模块(且将该模块的命令字节载入模块命令字节向导屏幕)。点击下一步;
选择模块相匹配的MLFB版本,如下图所示:
在此处填写IP地址和子网掩码。本例中将IP地址设置为:140.80.0.60,点击下一步;
下面的对话框将组态CP243-1进行S7连接的连接数量的设置。通过S7连接可以与通信伙伴进行读写数据操作,点击“下一步”按钮继续进行S7连接组态。本例中CP243-1的第三、四个连接分别为服务器连接。
组态一个到S7-300的服务器连接:
S7-注意:分别组态S7-本地TSAP为12.00无法更改,远程TSAP设置为10.04(这是在STEP7网络组态得到的参数)。激活“接受所有连接请求”复选框,点击“下一步”按钮继续组态。
选择CRC校验,使用缺省的时间间隔30秒,点击下一步按钮。
填写模块所占用的V存储区的起始地址。你也可以通过建议地址按钮来获得系统建议的V存储区的起始地址,点击下一步按钮。
点击”完成”按钮完成以太网向导设置。
之后功能块ETHx_CTRL和ETHx_XFR将被创建,必须在STEP7-MicroWIN的主循环块MAIN(OB1)中调用这些功能块。
功能块ETHx_CTRL用于建立通讯。编写图中的通讯程序,保存组态并下载到S7-本例中使用S7-300作为样例建立S7连接,对于S7-400的组态步骤是一样的。
在STEP7中打开S7-300项目文件,通过Options--ConfigureNetwork或者是相对应的图标打开NetPro对话框。
在NetPro中选中S7-300站的CPU并通过菜单命令,Insert--NewConnection添加一个新连接。
选择连接伙伴为“unspecified”及连接类型为“S7connection”。点击“Apply”按钮,之后S7连接的属性对话框将打开。
由于S7连接是由S7-300创建,因此在S7连接的属性对话框中须激活“Establishanactiveconnection“复选框。输入通信伙伴CP243-1的IP地址,之后点击“AddressDetails”按钮。
在“AddressDetails”对话框中,本地的TSAP通常选用默认,输入通信伙伴的TSAP,本例中S7-在NetPro中选中S7-300站,保存及编译后下载到S7-300中,此处注意需要下载网络组态。
接下来,在S7程序中调用功能块,进行编程。
STEP7编写PUT/GET程序
需要在S7-300程序中,调用功能块FB14“GET”和FB15“PUT”。可以在StandardLibrary--CommunicationBlocks--Blocks下找到这些功能块。
注意:
1.ID:为Netpro里组态S7连接属性窗口中的Blockparamters-LocalID。
2.ADDR_1为伙伴PLC的数据区域,由于通信伙伴是S7-3.RD_1为本地PLC的数据接收区;SD_1为本地PLC的数据发送区。
如果通信无法建立,请查看“PUT”和“GET”指令的错误代码,STATUS仅在一个周期内有效,需要在ERROR=1时捕捉错误状态。如下图所示:
对于FB14“GET”和FB15“PUT”的输入参数'ID"",也可通过鼠标右击功能块ID引脚,可以自动插入本地ID连接。如下图所示:
"
- 西门子ET200SP分站,如此好的模块,你知道怎么使用吗 2023-08-01
- 编程实例,西门子安全模块的钝化和去钝: 2023-08-01
- 电机供应专场西门子等多品牌模块: 2023-08-01
- 史上*全西门子ET200SPIO模块接线图汇总 2023-08-01
- 史上*全西门子ET200SPIO模块接线图汇总 2023-08-01
- 西门子有源背板模块笔记 2023-08-01
- 西门子S71200模拟量输入模块的奇怪故障 2023-08-01
- 西门子通信模块CP341作为ModbusMaster的测试 2023-08-01
- 西门子故障安全模拟量输入模块分析: 2023-08-01
- 西门子安全IO模块的接线与参数设置 2023-08-01