6ES7952-1KY00-0AA0西门子6ES7952-1KY00-0AA0存储卡
西门子模块6ES73364GE000AB0
![]() | 6ES7336-4GE00-0AB0 SIMATIC S7,模拟输入 SM 336,6 AE;15 位; fehlersichere 模拟输入端 用于 SIMATIC 安全, mit HART 支持, 到 类别 4(EN 954-1)/ SIL3(IEC61508)/PLE(ISO13849), 1x 20极 |
SIEMENS西门子上海朕锌电气设备有限公司
:郑鑫 :
:www.zhenxindianqi。。cn
工作 (同步)
1. 产品概况
1.1 引言
自动化领域的当前发展主流趋势是基于PLC集成的解决方案。在实现若干复杂工艺功能和运动控制的应用中,基于PLC的机电一体化1)解决方案得到了迅速的推广,它既能为用户提供更加灵活和更加效能的机械设备,也能大大地节约制造成本。因此,机电一体化的理念正逐渐地贯彻到越来越多的项目规划和产品设计中。
在机电一体化方案中,注重运动控制的工艺功能在自动化系统和驱动系统中得到了广泛的应用。西门子的Technology CPU(或称T CPU)实现了在一个SIMATIC CPU中集成工艺和运动控制功能,它不仅可*地执行开环控制和运动控制的任务,而且能*集成在SIMATIC产品家族和TIA(Totally Integrated Automation,全集成自动化)环境之中。
作为新的SINAMICS驱动家族的一员,SINAMICS S120是满足机器和工厂框架中高性能要求的模块化驱动系统。S120提供了高性能的单轴和多轴驱动,凭借其扩展性和灵活性,可广泛应用在众多行业。
1)机电一体化(Mechatronics),结合了机械工程、计算机技术和电子技术的综合性学科,常用于制造业的设计和开发工作。
1.2 Technology CPU产品介绍
目前西门子提供了三款T CPU(如图1)供用户选择:315T-2DP、317T-2DP和317TF-2DP。CPU 315T-2DP/CPU 317T-2DP应用在运动控制和标准控制相结合的典型应用中;CPU317TF-2DP除了包含了以上两款产品的所有功能,还提供了额外的故障安全功能,可应用在标准控制、运动控制和安全相关控制相结合的综合应用之中。
图1 T CPU产品家族
T CPU包括以下部分:
- SIMATIC CPU 31x-2DP
- 符合PLCopen认证的运动控制功能
- 工艺组态(工艺对象、轴组态、工艺工具等)
系统提供预编程的符合PLCopen认证的功能块简化了用户的编程工作。STEP 7选件包S7-Technology可用于对所有的工艺功能进行编程和调试。
T CPU可同时处理多达32个(对于315T-2DP)或64个(对于317T(F)-2DP)工艺对象。
更多T CPU产品信息请参考支持中心提供的相关网页。
1.3 SINAMICS S120产品介绍
Sinamics S120 是西门子公司推出的全新的集 V/F、矢量控制及伺服控制于一体的驱动控制系统,它不仅能控制普通的三相异步电动机,还能控制同步电机、扭矩电机及直线电机。其强大的定位功能将实现进给轴的、相对定位。内部集成的 DCC(驱动控制图表)功能,用 PLC 的 CFC 编程语言来实现逻辑、运算及简单的工艺等功能。
S120分为两种,AC/AC(单轴驱动器)和DC/AC(多轴驱动器)。
更多S120产品信息请参考支持中心提供的相关网页。
2. 准备
2.1 环境要求
2.1.1 本文档所述实例基于以下硬件环境:
• PS307 5A 6ES7307-1EA00-0AA0
• CPU 317TF-2DP 6ES7317-6TF14-0AB0
• SIMATIC MMC 8M 6ES7953-8LP11-0AA0
• SIMATIC Field PG M3 6ES7715-1BB23-0AA1
• PROFIBUS电缆
• 其他S7 300模块(如果有,如DI、DO等)
• S120 Training Case 6ZB2480-0BA0,
图2 S120 Training Case
包括:
(1)CU320 6SL3040-0MA00-0AA1
(2)非调节型电源模块5kW 6SL3130-6AE15-0AA0
(3)双电机模块3A 6SL3120-2TE13-0AA0
(4)同步电机(1FK7022-5AK71-1AG3),通过SMC20(6SL3055-0AA00-5BA1)接增量型编码器(2048,Sin/Cos,1Vpp)
(5)同步电机(1FK7022-5AK71-1LG3),通过DRIVE-CLIQ接值编码器(512 ppr,EnDat)
(6)CompactFlash Card 6SL3054-0CG01-1AA0
2.1.2 本文档所述实例基于以下软件环境:
• Window XP SP3
• STEP 7 V5.5 SP2
• S7 Technology V4.2 SP1
• S7 Distributed Safety V5.4 SP52)
2)如需使用故障安全功能,则需要此软件。
2.2 任务
2.2.1 组态实例
图3 系统连接图
2.2.2 任务
使用HW Config和S7T Config组态轴,然后借助STEP 7用户程序操作该轴。要完成该任务请遵循以下步骤:
步骤 | 内容 |
1 | 接线 |
2 | 在HW Config中对CPU 317TF-2DP进行组态 |
3 | 更改MPI/DP接口的传输速率并将组态数据下载到CPU中 |
4 | 组态DP(DRIVE) |
5 | 激活生成工艺系统数据 |
6 | 使用HW Config对驱动器进行组态 |
7 | 组态通过PG/PC接口访问驱动器 |
8 | 将硬件组态下载到目标硬件中 |
9 | 使用S7T Config组态SINAMICS驱动器 |
10 | 使用S7T Config组态轴工艺对象 |
11 | 创建工艺DB |
12 | 使用STEP 7用户程序控制轴 |
13 | 试运行 |
表1 操作步骤列表
2.2.3 使用站向导
如果在步骤 1 之后,借助站点向导建立了 T 站点,则可以一步式执行步骤 2 到 5 ,然后接着执行步骤 6 。
3. 步骤
3.1 步骤1:接线
3.1.1 T CPU接线
请参考手册S7-300 S7-300 CPU 数据: CPU 315T-2 DP 接线。
请严格按照手册要求接线,注意安全。
3.1.2 PROFIBUS接线
用PROFIBUS电缆连接CU320到CPU 317TF-2DP的DP(DRIVE)接口,并将CU320的 PROFIBUS 地址设置为4 。可按照如下方式直接通过硬件DIP开关设置CU320的PROFIBUS 地址:
图 4 CU320 PROFIBUS地址设置
3.2 可选:借助向导帮助建立 T 站点
组态CPU 31xT(F)时使用站向导可以一步式执行多步操作。若选择该功能,可直接跳转到步骤6。
操作步骤:
序号 | 操作 |
1 | 在SIMATIC Manager中建立一个新的项目 |
2 | 选择“插入”(Insert) >“站”(Station) >“SIMATIC T 站”(SIMATIC T Station) 菜单命令。
也可右击项目名,选择“插入新对象” (Insert New Object) >>“SIMATIC T 站”(SIMATIC T Station)
结果:“创建T站”对话框打开。 |
3 | 在“创建T站”对话框中设置以下参数: “CPU 型号”(CPU type): CPU317TF-2 DP “生成工艺系统数据”(Generate Technology System Data) 选项激活 “MPI/DP”:“新建”(New),类型 MPI,传输速度 1.5 Mbps “PG/PC”:未使用
点“OK”确认,STEP 7开始创建S7 300站,创建结束出现以下提示
结果:在项目中建立了包含CPU 317TF-2DP的SIMATIC 300站。 |
4 | 如步骤2中所述,打开硬件组态并插入其他模块(如DI、DO等)并进行相关设置。 |
5 | 如步骤3中所述,将硬件组态下载到CPU中。 |
6 | 之后可直接跳转到步骤6继续以下操作。 |
3.3 步骤2:在HW Config中对CPU 317TF-2DP进行组态
操作步骤:
序号 | 操作 |
1 | 在 SIMATIC 管理器中创建新的项目(例如“TCPUS120 ( 4579 KB ) ”)并添加一个 SIMATIC 300 站点。 |
2 | 通过选择“SIMATIC 300”站点并双击“Hardware”(硬件)打开 HW Config。 |
3 | 打开“Hardware Catalog”(硬件目录)并在“Profile”(配置文件)下拉列表中选择“SIMATIC Technology-CPU”硬件配置文件。
|
4 | 在 HW Config 的站窗口中通过拖放插入一个装配导轨。 |
5 | 将“PS 307 5A”电源模块拖放到装配导轨上。 |
6 | 通过拖放将 T CPU 添加到装配导轨。
随后会弹出一个消息框,点“OK”确认
|
7 | 随后弹出PROFIBUS接口DP(DRIVE)的属性对话框,点“OK”确认默认设置
|
8 | 在S7 300站中添加其他模块(如果有) |
3.4 步骤3:更改MPI/DP接口的传输速率并将组态数据下载到CPU中
操作步骤
序号 | 操作 |
1 | 在装配导轨中,双击“MPI/DP”以在 HW Config 中打开MPI/DP 接口 (X1)。 |
2 | 单击“属性”(Properties) 按钮。
|
3 | 在弹出的对话框中,点击“新建”创建一个新的MPI子网
|
4 | 在随后弹出的对话框中的“网络设置”标签下,设置传输速率为“1.5 Mbps”。
|
5 | 单击“OK”(确定),确认所有打开的对话框。 |
6 | 选择SIMATIC管理器的“选项”>“设置PG/PC接口”菜单命令,选择MPI方式连接。 |
7 | 选择“PLC”>“下载”菜单命令,并在 CPU 的 STOP 模式中传送组态。
|
8 | 在弹出的对话框“选择节点地址”中,选择CPU并点“OK”确认。
|
3.5 步骤4:组态DP(DRIVE)
操作步骤
序号 | 操作 |
1 | 在安装导轨中,双击“DP(驱动器)”(DP(DRIVE))以打开 HW Config 中的“属性 - DP(驱动器)”(Properties - DP(DRIVE)) 对话框。 |
2 | 单击“Properties”(属性)按钮。
|
3 | 输入 PROFIBUS 地址“2”。 |
4 | 单击“New”(新建)以创建新 PROFIBUS 子网。 |
5 | 在“网络设置”(Network settings) 选项卡中,设置PROFIBUS 网络的传输率。 输入传输率 12 Mbps。保持子网的“DP”配置文件设置。
|
6 | 单击“OK”(确定),确认 HW Config 的所有打开的对话框。 |
3.6 步骤5:激活生成工艺系统数据
操作步骤
序号 | 操作 |
1 | 双击装配导轨上的“Technology” |
2 | 选择“Technology system data”(工艺系统数据)标签,然后设置“Generate technology system data”(生成工艺系统数据)复选框。 单击“OK”确认。
如果不产生工艺系统数据,Technology CPU只能作为标准S7 300 CPU使用。 |
3.7 步骤6:使用HW Config对驱动器进行组态
操作步骤
序号 | 操作 |
1 | 在 HW 目录中,打开树形结构SIMATIC Technology > PROFIBUS DP(DRIVE) > Drives > SINAMICS > SINAMICS S120,选择S120 CU320,并拖放到DP(DRIVE)的DP主站系统。
|
2 | 在弹出的对话框中输入PROFIBUS地址“4”,然后点“OK”确认。
|
3 | 在弹出的对话框中为SINAMICS选择适当的驱动器版本,然后单击“OK”确认。
|
4 | 在弹出的“DP slave property”对话框中,选择“Isochronous Operation”标签,设置“Synchronize drive to equidistant DP cycle”,然后可设置相关事件系数,之后点击“Align”,并点击“OK”确认。
|
5 | 通过调用 Station(站)> Save and compile(保存并编译)命令完成 HW 组态。 |
3.8 步骤7:组态通过PG/PC接口访问驱动器
操作步骤
序号 | 操作 |
1 | 在 HW Config 中使用 Options(选项)> Configure network(组态网络)命令启动 NetPro 网络组态工具。 |
2 | 在 HW 目录中,打开树形结构Stations(站点)> PG/PC,然后将 PG/PC 站点拖放到“Network View”(网络视图)窗口中。
|
3 选择新插入的 PG/PC 组件,然后单击 Edit(编辑)> Object properties...(对象属性...)打开“Properties – PG/PC”(属性 — PG/PC)对话框,选择Interface(接口)标签。
| |
4 | 单击“New...”(新建...)按钮打开“New Interface – Type Selection”(新建接口 — 类型选择)对话框。 选择“MPI”,然后单击“OK”(确定)进行确认。
|
5 | 在“Properties - MPI Interface”(属性 — MPI 接口)对话框中,选择地址“1”和“MPI network”(MPI 网络)。 单击“OK”(确定),确认输入。
|
6 | 选择“Properties – PG/PC”(属性 — PG/PC)对话框中的“Assignment”(分配)标签。通过单击“Assign”(分配)将 PG/PC 中的 MPI 接口参数分配至已组态的接口。
|
7 | 单击“OK”(确定)完成接口分配。
|
8 | 现在已经将 PG/PC 插入了 MPI 网络,并满足了与 SINAMICS S120控制单元交换数据的要求。
|
9 | 通过调用 Network(网络)> Save and compile(保存并编译)命令来完成网络组态。选择“Compile and check everything”(编译并检查全部),然后单击“OK”(确定)进行确认。
|
10 | 单击 File(文件)> Close(关闭),关闭输出窗口。 |
11 | 通过调用 Network(网络)> Exit(退出)命令关闭 NetPro 组态程序。 |
3.9 步骤8:将硬件组态下载到目标硬件中
操作步骤
序号 | 操作 |
1 | 切换回 HW Config 通过调用 PLC > Download...(下载...)命令将硬件组态下载到 CPU 中。 |
2 | 通过调用 Station(站)> Exit(退出)命令关闭 HW Config。 |
3.10 步骤9:使用S7T Config组态SINAMICS驱动器
操作步骤
- 自动在线组态驱动器
- 离线组态不带完整的DRIVE-CLIQ接口技术的Servo 03驱动器
- 离线组态带带完整的DRIVE-CLIQ接口技术的Servo 02驱动器
- 离线组态Servo 03和Servo 02的报文结构
3.10.1 自动在线组态驱动器
序号 | 操作 |
1 | 在 SIMATIC 管理器中,双击“Technological Objects”打开 S7T Config。
结果:“工艺对象管理”(Technology Objects Management) 打开。 如果未组态任何工艺对象(如该实例所示),系统将自动运行 S7T Config。 |
2 | 通过选择 Project(项目)> Save and recompile all(全部保存并重新编译)命令保存当前项目数据。 |
3 | 在打开的S7T Config中,选择 Project(项目)> Connect to selected target system(连接到所选的目标系统)命令更改为在线模式。如果未选择目标系统,会弹出以下对话框
选择Technology和S120_CU320,并将Access point(接入点)设为S7ONLINE,点“OK”确认。 |
4 | 如果S120中有组态数据,则可能会有如下对话框,在这里直接点“Close”关闭。
|
5 | 在S7T Config左侧的项目树中选择S120_CU320,在工具栏中选择Restore factory settings(恢复工厂设置)命令,执行对S120的工厂复位。
|
6 | 在项目浏览器中,打开树形结构 SIMATIC 300(1) > Technology(技术)> SINAMICS_S120 > Automatic configuration(自动组态)。通过双击“Automatic configuration”(自动组态)打开自动组态。
|
7 | 在“Automatic Configuration”(自动组态)对话框中点击“Configure”启动自动组态。
|
8 | 保留驱动对象的默认设置(“Servo”),点“Create”开始自动组态。
结果:两个驱动对象自动创建组态且初始化。组态数据会自动地上载到编程设备。 |
9 | 自动组态结束后,点击“Go OFFLINE”切换到离线模式。
|
西门子模块6ES73364GE000AB0
3.10.2 离线组态不带完整的DRIVE-CLIQ接口技术的Servo 03驱动器
序号 | 操作 |
1 | 在项目浏览器中,打开树形结构 SIMATIC 300(1) > Technology > SINAMICS_S120 > Drives > Servo_03 > Configuration。通过双击“Configuration”(组态)打开离线驱动器组态。
|
2 | 单击“Configure DDS...”(组态 DDS...)按钮以启动组态。
|
3 | 接受默认设置并单击“下一步>”(Next >)。
|
4 | 在功率单元对话框中,确认所有的默认参数。
|
5 | 该 SINAMICS training case中没有调节型电源模块。 单击“OK”,确认弹出的警告。
|
6 | 在“功率单元BICO”对话框中,选择“Infeed in operation”为“1”,点“Next”进入下一步。
|
7 | 没有完整 DRIVE-CLIQ 技术的电机被连接至功率单元的接口端子X2,点“Next”继续。
|
8 | 从列表中选择正确的电机。 要激活备选选项,必须选中“Select standard motor from list”(从列表中选择标准电机)框。SINAMICS training case中使用的电机是 1FK7022-xAK7x-xxxx。 根据所提供的文档或电机类型铭牌(低压电机 — 蓝色齿轮)核对此电机型号。 选择合适的电机并单击“下一步 >”(Next >)。
|
9 | 选择“不使用制动闸”(Without holding brake) 并单击“下一步 >”(Next >)。
|
10 | 选择“Encoder 1”和“Select standard encoder from list”> “Via order no.”,选择1FK7xxx-xxxxx-xAxx。点“OK”和“Next”进入到下一步。
|
11 | 选择PROFIdrive报文帧类型为“(105) SIEMENS egram 105,PZD-10/10”,并单击“Next >”继续。
|
12 | 单击“Finish”(完成)按钮完成离线组态,并关闭对话框。
|
3.10.3 离线组态带带完整的DRIVE-CLIQ接口技术的Servo 02驱动器
序号 | 操作 |
1 | 在项目浏览器中,打开树形结构 SIMATIC 300(1) > Technology > SINAMICS_S120 > Drives > Servo_02 > Configuration。 双击“Configuration”打开离线驱动器组态。
|
2 | 通过单击“Configure DDS...”(组态 DDS...)按钮启动组态。
|
3 | 参考组态“Servo_03”,组态“Servo_02” 驱动器。 功率部分具有完整的DRIVE-CLIQ技术,并已预组态好,所以电机和编码器相关参数已经预先设置好。 |
4 | 有完整 DRIVE-CLIQ 技术的电机被连接至功率单元的接口端子X1
|
5 | 根据向导,完成Servo_02驱动器的离线组态。 |
3.10.4 离线组态Servo 03和Servo 02的报文结构
序号 | 操作 |
1 | 打开树形结构 SIMATIC 300(1) > Technology > SINAMICS_S120 > Communication > Message frame configuration。在“SINAMICS_S120 – 组态”对话框中,将两个消息帧类型都设置为“SIEMENS egram 105”,然后单击“Set up address”按钮,以在HW Config中设置报文帧地址。
|
2 | 弹出的对话框中点“Yes”确认。
结果:
|
3 | 在HW Config中选择Station > Save and Compile,保存并编译整个站,并下载到PLC中。 注意:如果提示保存编译错误,请检查连接DP(DRIVE)的PROFIBUS时间参数。 |
4 | 在S7T Config中选择 Project > Save and recompile all菜单命令,保存并编译整个工艺项目。 |
5 | 在S7T Config中选择 Project > Connect to target system菜单命令,切换到在线模式。 |
6 | 所需的组态位于 PG/PC 上。 在“在线/离线比较”对话框中,单击“<== Download”按钮,将组态传送到驱动器。 |
7 | 在弹出的对话框中勾选相关选项,并点“Yes”开始下载。
|
8 | 点“Close”关闭“在线/离线比较”对话框。 |
3.11 步骤10:使用S7T Config组态轴工艺对象
操作步骤
序号 | 操作 |
1 | 在项目浏览器中,打开树形结构 SIMATIC 300(1) > Technology > AXES。 双击“Insert axis”启动轴向导:
|
2 | 在弹出的“Insert Axis”对话框中,保留默认设置(速度控制,定位),点“OK”确认。
|
3 | 在弹出的“Axis Type”对话框中,接受默认选择,点“Next”继续。
|
4 | 在“Drive assignment”对话框中,点“Set up addresses”获取驱动器组态信息。
之后选择组态的轴工艺对象要连接的驱动器Servo 02,点击“Data transfer from the drive”读取已组态好的电机的归一化参考速度、zui大速度及zui大扭矩等参数,点“Next”进入下一步。
|
5 | 在弹出的“Encoder assignment”对话框中,分配驱动器带的编码器,并点击“Data transfer from the drive”读取已组态好的编码器参数,点“Next”进入下一步。
|
6 | 在弹出的“Encoder configuration”对话框中,接受默认的参数,点“Next”进入到下一步。
|
7 | 在弹出的“Summary”对话框中,点“Finish”结束轴组态。
|
8 | 如需组态另外一个轴工艺对象,可将其连接到Servo 03驱动器,组态过程参考本步骤1~7步操作。 |
9 | 保存编译后将工艺数据下载到Technology CPU中。 |
3.12 步骤11:创建工艺DB
操作步骤
序号 | 操作 |
1 | 切换到“Technological Objects Management”(工艺对象管理)。 单击“OK”确认消息框,。
如果尚未运行“Technological Objects Management”(技术对象管理)应用程序,则可在SIMATIC 管理器中双击“Technology”文件夹中的“Technological Objects”将其打开。 |
2 | 选中DB1~DB3,点“Create”创建工艺DB
|
3 | 通过 Technological objects > Exit菜单命令关闭 Technological ObjectsManagement(工艺对象管理)。此时可看到在STEP 7管理器的Block路径下,已经生成了工艺DB及其引用的UDT类型。
|
3.13 步骤12:使用STEP 7用户程序控制轴
操作步骤
序号 | 操作 |
1 | 在STEP 7管理器的Block路径下新建一个FB100,命名为“SimplePositioning”,打开FB100.
|
2 | 在程序编辑器中选择“Library”>“S7-Tech”>“S7-Tech V4.2”,从这里可以调用系统提供的运动控制功能块。
|
3 | 调用FB401“MC_Power”、FB402“MC_Reset”、FB405“MC_Halt”、FB410“MC_MoveAbsolute”等功能块。注意在Axis引脚输入的对应轴工艺对象的工艺DB号。
|
4 | 在OB1中调用FB100
|
5 | 在STEP 7管理器中将所有的用户程序下载到PLC中
|
3.14 步骤13:试运行
序号 | 操作 |
1 | 在项目的“Blocks”文件夹中,双击“VAT_1”变量表。 |
2 | 选择“PLC ”> “Connect to” > “Configured CPU”命令使变量表在线。 |
3 | 选择“Variable”>“Monitor”切换到变量监控。 |
4 | 首先使能轴,然后执行MoveAbsolute,使轴运行到一个位置“Object_Position”(MD22)。 |
5 | 可通过MC_Halt停止轴的运行。 |
1 概述
S7-1200 与 S7-300 之间的以太网通信方式比较多,可以采用ISO on TCP、TCP和 S7 的方式进行通信。在S7-1200 CPU 中采用ISO on TCP和TCP这两种协议进行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令编程。S7-300 CPU一侧如果使用的是CPU集成的PN接口,连接不在STEP7的NetPro中建立连接,而是使用西门子提供的OPEN IE 的方式来实现。
本文主要介绍了如何实现在S7-1200 和S7-300 CPU集成PN口之间的ISO on TCP通信,包括通信的基本步骤、配置及编程等内容。具体的实现方法有多种,比如在S7-1200中可以使用不带连接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用带连接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能块编程的方式来实现,也可以使用Open Communication Wizard工具(OPEN IE向导)的方式来建立OPEN IE的通信。
为了方便理解,本文在S7-1200中使用不带连接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300侧通过功能块编程的方式来实现。
关于S7-1200和S7-300 OPEN IE通信的文档可以登录西门子自动化与驱动集团的下载中心,:http://www.ad.siemens.com.cn/download/ ,根据如表1提供的文档编号搜索并下载相关文档。
文档编号 | 中文标题 |
A0426 | 西门子 S7-1200 PLC 技术参考Version 1.5 |
A0416 | S7-1200与S7-300 的以太网TCP 及ISO on TCP通信 |
A0421 | 如何实现两个S7-1200 CPU之间的以太网通信 |
A0415 | 通过S7协议实现S7-1200 与S7-300的通信 |
A0414 | S7-1200基本以太网通信使用指南 |
A0284 | 使用西门子PLC集成的PN口实现S5 兼容通信使用入门 |
A0345 | 使用 Open Communication Wizard 建立开放式 ISO on TCP 通信 |
A0346 | 使用 Open Communication Wizard 建立开放式 UDP 通信 |
A0347 | 使用 Open Communication Wizard 建立开放式 TCP 通信 |
A0344 | S7-300和S7-400集成PN口的S7通信 |
A0334 | PN CPU/CP的开放式通讯-Open IE |
表1 下载中心文档列表
2 软硬件及所要完成的通信任务
2.1硬件设备
实验的硬件设备:
1、S7-1200 CPU,CPU1212 AC/DC/RLY(6ES7 212-1BD30-0XB0)
2、S7-300 PN CPU,CPU317-2PN/DP(6ES7 317-2EH13-0AB0 V2.6.7)
3、PC机(带以太网卡)
4、SCALANCE X216交换机,S7-1200、S7-300和PC通过交换机互连起来
5、TP以太网电缆
2.2 软件环境
1、STEP7 Basic V10.5 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能块,请参见附件提供的例程 ”Sample_1 ( 50 KB ) ” 或参考下载中心文档:《A0284 使用西门子PLC集成的PN口实现S5 兼容通信使用入门》提供的程序。下载链接:80490650
2.3 所要完成的通信任务
本例中所要完成的通信任务定义为:
1、 将S7-1200的发送数据块DB3里的8个字节数据发送到S7-300的DB3中。
2、 将S7-300 DB3里接收到的8个字节数据再发送到S7-1200的接收数据块DB4中。
3 S7-1200 CPU的组态编程
3.1创建新项目
1、打开STEP 7 Basic 软件并新建项目
在STEP 7 Basic 的 “Portal View”中选择“Create new project”创建一个新项目,项目名称为“GS_ISO”。
2、添加硬件并命名PLC
然后进入 “Project view”,在“Project tree” 下双击 “Add new device”,在对话框中选择所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到机架上,设备名为 PLC_1,如图1所示。
图1 添加新的PLC站
为了编程方便,我们使用 CPU 属性中定义的时钟位,定义方法如下:
在“Project tree> PLC_1 > Device configuration” 中,选中 CPU ,然后在下面的属性窗口中,“Properties > System and clock memory” 下,将系统位定义在MB1,时钟位定义在MB0,如图2所示。程序中我们主要使用 M0.3,它是以2Hz 的速率在0和1之间切换的一个位,可以使用它去自动激活发送任务。
图2 系统和时钟存储器
3、为 S7-1200 CPU的PROFINET 通信口分配以太网地址
在 “Device View”中点击 CPU 上代表PROFINET 通信口的绿色小方块,在下方会出现PROFINET 接口的属性,在 “Ethernet addresses”下分配IP 地址为 192.168.0.2 ,子网掩码为255.255.255.0,如图3所示。
图3为 S7-1200 CPU的PROFINET 接口分配IP地址
3.2调用并配置通信指令
1、在 PLC_1 的 OB1 中调用 “TCON”通信指令
进入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,从右侧窗口 “Instructions > Extended Instructions > Communications” 下调用 “TCON” 指令,并选择 “Single Instance” 生成背景 DB块,如图4所示。
图4 调用TCON指令
2、定义PLC_1 的 “TCON” 连接参数
PLC_1 的 TCON 指令的连接参数需要在指令下方的属性窗口“Properties > Configuration > Connection parameter”中设置,如图5所示。
连接参数说明:
End point | :选择通信伙伴,这里选择“unspecified” |
Address | :通信伙伴S7-300站的IP地址“192.168.0.3” |
Connection type | :选择通信协议为ISO on TCP |
Connection ID | :连接的地址 ID 号,这个 ID 号在后面的编程里会用到 |
Connection data | :创建连接时,系统会自动生成本地的连接 DB 块,所有的连 接数据都会存在这个 DB 块中。 |
| :选择本地 PLC_1作为主动连接,S7-300 CPU作为被动连接 |
Address details | :设定 TSAP 地址这里本地设置成“PLC_1”, TSAP ID自动为“50.4C.43.5F.31”,伙伴方设置成不设置TSAP(ASCII),设置TSAP ID 为“E0.02.50.4C.43.5F.31”。 |
图5 “TCON” 指令的连接参数
3、分配 “TCON” 的块参数
在指令下方的属性窗口“Properties > Configuration > block parameter”中设置,可以根据需要自己为“TCON” 块相应的输入输出参数。好参数的块,如图6所示。其中M8.0作为启动连接的触发位,连接ID = 1与连接参数里面的设置相同。
图6 “TCON” 的块参数
4、在 PLC_1 的 OB1 中调用 “TSEND” 发送通信指令
首先创建一个发送数据块,通过 “Project tree > PLC_1 > Program blocks > Add new block”,选择 “Data block” 创建 DB 块,选择寻址,点击“OK”键,如图7所示。
图7 创建一个发送数据块DB3
打开创建的发送数据块,在数据块中定义发送数据区为 8个字节的数组,如图8所示。
图8 创建发送数据区
然后在OB1 中调用“TSEND”发送通信指令,并为“TSEND”参数。使用M0.3( 2Hz 的时钟脉冲)上升沿激活发送任务,发送数据区为P# DB3.DBX0.0 BYTE 8,连接 ID = 1与连接参数里面的设置相同,发送长度LEN=8。分配好参数的“TSEND”块如图9所示。
图9 调用“TSEND”发送通信块
5、在 PLC_1 的 OB1 中调用“TRCV”接收通信指令
同样,先创建一个接收数据块DB4 ,如图10所示。“TRCV”接收通信指令的调用方法与“TSEND” 发送通信指令的调用方法相同,M8.1作为接收指令的使能位,如图11所示。
图10创建接收数据区
图11 调用“TRCV”接收通信块
6、在 PLC_1 的 OB1 中调用 “TDISCON”通信指令
zui后,为了断开通信链接,我们需要调用“TDISCON”通信指令,如图12所示。
图12 调用“TDISCON”通信块
3.3下载程序
至此,S7-1200侧的组态和编程都已经完成,可以在项目编译无错误后,直接下载到S7-1200 CPU中,并启动CPU的运行。
4 S7-300 CPU的组态编程
S7-300带PN接口的CPU支持ISO on TCP通信功能,通过该集成以太网接口组态ISO on TCP通信时,只能使用开放式通信的功能块,这些的功能块可以在STEP7 “ 通讯块”的 “标准库 ”中找到,如图13所示。
图13 S7-300 CPU通信指令库
库中提供了下列通信功能块:
´> FB 65 "TCON",用于建立连接,连接时需要UDT65来提供参数
> FB 66 "TDISCON",用于终止连接
> FB 63 "TSEND",用于发送数据到S7站点、S5站点、PC站或者第三方设备
> FB 64 "TRCV" 用于从S7站点、S5站点、PC站或者第三方设备接收数据
要通过CPU 的 集成PN 接口实现开放的ISO on TCP通信,不能在Netpro网络组态中直接建立连接,必须通过程序每个连接的参数。用于通信的FB标准功能块,请参见附件提供的例程 ”Sample_1 ( 50 KB ) ” 或参考下载中心文档《A0284 使用西门子PLC集成的PN口实现S5 兼容通信使用入门》提供的例程。下载链接:80490650
从附件提供的例程 ”Sample_1 ( 50 KB ) ” 中将把需要的程序块拷贝到新建的项目中,包括:
> UDT 65 "TCON_PAR",存放用户通信参数
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65内通信对象参数
> FC21, 被FB420调用
随后,使用通信功能块 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的编写。
4.1创建新项目
1、打开STEP7,新建一个项目
2、在项目中插入一个SIMATIC 300的站
3、组态硬件,插入一个CPU317-2PN/DP的CPU,并为PN接口分配IP地址“192.168.0.3”,如图14所示。同时,在CPU的“Cycle/Clock Memory”属性页中MB0为时钟存储器,在程序中可以使用M0.3(2Hz 的时钟脉冲)去自动激活发送任务,如图15所示。
图14为PN接口分配IP地址
图15设置时钟存储器字节
4.2编写通信程序
1、从样例程序中拷贝通信所需的块
从附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21与UDT65程序块拷贝到新创建的项目中,如图16所示。
图 16
2、生成数据块
在程序中创建一个DB块,块号不限(本例为DB101),在块中建立变量DB_VAR,类型为UDT65,如图17所示。
图17
3、生成并调用FB块
首成一个FB块(本例为FB400),在FB400静态变量区建立一个结构“T_TSAP“,包含如下变量,并为变量分配初始值,如图18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有两个前导字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP规定)和 0x02(CPU槽号)
2) LOC_TSAP(STRING14)= 本地用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用两个前导符。
4) REM_TSAP (STRING16)= 远程用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。
图18
然后在生成的FB400中调用FB420,如图19所示。
图19
其中参数的含义如下:
1)ID: 连接ID,与S7-1200里的设置保持*
2)DEV_ID:用于本PLC型号(注意不是通信对方)
DEV_ID = B#16#1本PLC型号为 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型号为CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型号为CPU319-3PN/DP
DEV_ID = B#16#5本PLC型号为CPU41x-3PN/DP
3)ACTIVE: 主动或是被动建立连接,通信双方必须一个主动,一个被动,本例中S7-300侧为被动方。
4)T_TSAP: 静态变量区的结构变量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的变量,即DB101
4、在OB1中调用发送和接收功能块
在OB1中先调用FB400功能块,为其背景数据块DB400,如图20所示。
图20
然后再在OB1中依次调用通信功能块FB65、FB64、FB63、FB66。其中发送和接收功能块FB64、FB63的数据区都为DB3,建立DB3如图21所示。关于块的使用请参考STEP7的在线帮助或相关文档说明。
图21
FB65 “TCON”,建立连接功能块,如图22所示。通过输入参数 "REQ"一个上升沿来建立连接。 “ID” 为连接ID,“CONNECT” 参数填写用 UDT65 生成的变量, 连接建立后会一直保持,直到调用FB66 "TDISCON" 断开连接、CPU停止或者断电。其中CONNECT为通过UDT65生成的DB块,即DB101, ID = 1。通过M8.0启动作业,执行连接的建立。
图22
FB64 “TRCV”,接收功能块,如图23所示。"TRECV" EN_R始终为TRUE, ID 填写连接ID,”DATA” 填写接收数据区,输出参数 "NDR" 用于表示新的数据已经收到,输出参数 "LEN" 表示接收的数据长度。本例中连接ID = 1。DB3作为接收数据块,接收数据的字节长度为8,接收作业通过M8.1使能。
图23
FB63 “TSEND”,发送功能块,如图24所示。连接ID = 1。DB3为发送数据块,发送字节长度为8,发送作业通过M0.3触发。"TSEND" 发送请求依靠输入参数"REQ"的上升沿来实现,如果“BUSY”位为true时不要触发"REQ"。输出参数 "DONE", "ERROR" 和 "STATUS" 用于评估工作的情况。
图24
FB66 “TDISCON”,取消连接功能块,如图25所示。可以根据需要取消ID=W#16#1的连接,作业通过M8.2使能。
图25
4.3下载程序
S7-300侧的组态和编程都完成后,直接下载到S7-300 CPU中,并启动CPU的运行。
5 监控通信结果
对S7-1200和S7-300都组态和编程后,下载所有组态及程序并搭建好网络后,首先在在S7-1200中将M8.0置位为1,然后再在S7-300中将M8.0置位为1,两个站的“TCON” 被激活,建立两个站之间的ISO on TCP连接。
连接正常建立后,即可以进行数据的交换。在S7-1200和S7-300站中将 ”TRCV” 功能块的EN_R置位为1,使能接收,监控通信结果如图26所示。
通过监控结果可以看到,S7-1200中发送数据块DB3的8个字节数据被发送到S7-300站的DB3中,同时,S7-300的DB3中接收到的数据又被发送到S7-1200的接收数据块DB4中。
图26 在线监控通信结果
电源模块
6ES7 407-0DA02-0AA0 电源模块(4A)
6ES7 407-0KA02-0AA0 电源模块(10A)
6ES7 407-0KR02-0AA0 电源模块(10A)冗余
6ES7 407-0RA02-0AA0 电源模块(20A)
6ES7 405-0DA02-0AA0 电源模块(4A)
6ES7 405-0KA02-0AA0 电源模块(10A)
6ES7 405-0RA01-0AA0 电源模块(20A)
6ES7 971-0BA00 备用电池
CPU
6ES7 412-3HJ14-0AB0 CPU 412-3H; 512KB程序内存/256KB数据内存
6ES7 414-4HM14-0AB0 CPU 414-4H; 冗余热备CPU 2.8 MB RAM
6ES7 417-4HT14-0AB0 CPU 417-4H; 冗余热备CPU 30 MB RAM
6ES7 400-0HR00-4AB0 412H 系统套件包括 2 个CPU、1个H型*机架、2个电源、2个1M 存储卡、4个
同步模块、2根同步电缆,以及4个备用电池(PS407 10A)
6ES7 400-0HR50-4AB0 412H 系统套件包括 2 个CPU、1个H型*机架、2个电源、2个1M 存储卡、4个
同步模块、2根同步电缆,以及4个备用电池(PS405 10A)
6ES7 412-1XJ05-0AB0 CPU412-1,144KB程序内存/144KB数据内存
6ES7 412-2XJ05-0AB0 CPU412-2,256KB程序内存/256KB数据内存
6ES7 414-2XK05-0AB0 CPU414-2,512KB程序内存/512KB数据内存
6ES7 414-3XM05-0AB0 CPU414-3,1.4M程序内存/1.4M数据内存 1个IF模板插槽
6ES7 414-3EM05-0AB0 CPU414-3PN/DP 1.4M程序内存/1.4M数据内存 1个IF模板插槽
6ES7 416-2XN05-0AB0 CPU416-2,2.8M程序内存/2.8M数据内存
6ES7 416-3XR05-0AB0 CPU416-3,5.6M程序内存/5.6M数据内存 1个IF模板插槽
6ES7 416-3ER05-0AB0 CPU416-3PN/DP 5.6M程序内存/5.6M数据内存 1个IF模板插槽
6ES7 416-2FN05-0AB0 CPU416F-2,2.8M程序内存/2.8M数据内存
6ES7 416-3FR05-0AB0 CPU416F-3PN/DP,5.6M程序内存/5.6M数据内存
6ES7 417-4XT05-0AB0 CPU417-4,15M程序内存/15M数据内存
内存卡
6ES7 955-2AL00-0AA0 2 X 2M字节 RAM
6ES7 955-2AM00-0AA0 2 X 4M字节 RAM
6ES7 952-0AF00-0AA0 64K字节 RAM
6ES7 952-1AH00-0AA0 256K字节 RAM
6ES7 952-1AK00-0AA0 1M字节 RAM
6ES7 952-1AL00-0AA0 2M字节 RAM
6ES7 952-1AM00-0AA0 4M字节 RAM
6ES7 952-1AP00-0AA0 8M字节 RAM
6ES7 952-1AS00-0AA0 16M字节 RAM
6ES7 952-1AY00-0AA0 64M字节 RAM
6ES7 952-0KF00-0AA0 64K字节 FLASH EPROM
6ES7 952-0KH00-0AA0 256K字节 FLASH EPROM
6ES7 952-1KK00-0AA0 1M字节 FLASH EPROM
6ES7 952-1KL00-0AA0 2M字节 FLASH EPROM
6ES7 952-1KM00-0AA0 4M字节 FLASH EPROM
6ES7 952-1KP00-0AA0 8M字节 FLASH EPROM
6ES7 952-1KS00-0AA0 16M字节 FLASH EPROM
6ES7 952-1KT00-0AA0 32M字节 FLASH EPROM
6ES7 952-1KY00-0AA0 64M字节 FLASH EPROM
开关量输入模板
6ES7 421-7BH01-0AB0 开关量输入模块(16点,24VDC)中断
6ES7 421-1BL01-0AA0 开关量输入模块(32点,24VDC)
6ES7 421-1EL00-0AA0 开关量输入模块(32点,120VUC)
6ES7 421-1FH20-0AA0 开关量输入模块(16点,120/230VUC)
6ES7 421-7DH00-0AB0 开关量输入模块(16点,24V到60VUC)
开关量输出模板
6ES7 422-1BH11-0AA0 开关量输出模块(16点,24VDC,2A)
6ES7 422-1BL00-0AA0 32点输出,24VDC,0.5A
6ES7 422-7BL00-0AB0 32点输出,24VDC,0.5A,中断
6ES7 422-1FH00-0AA0 16点输出,120/230VAC,2A
6ES7 422-1HH00-0AA0 16点输出,继电器,5A
模拟量模块
6ES7 431-0HH00-0AB0 16路模拟输入,13位
6ES7 431-1KF00-0AB0 8路模拟输入,13位,隔离
6ES7 431-1KF10-0AB0 8路模拟输入,14位,隔离,线性化
6ES7 431-1KF20-0AB0 8路模拟输入,14位,隔离
6ES7 431-7QH00-0AB0 16路模拟输入,16位,隔离
6ES7 431-7KF00-0AB0 8路模拟输入,16位,隔离,热电偶
6ES7 431-7KF10-0AB0 8路模拟输入,16位,隔离,热电阻
6ES7 432-1HF00-0AB0 8路模拟输出,13位,隔离
功能模板
6ES7 450-1AP00-0AE0 FM450-1计数器模板
6ES7 451-3AL00-0AE0 FM451定位模板
6ES7 452-1AH00-0AE0 FM452电子凸轮控制器
6ES7 453-3AH00-0AE0 FM453定位模板
6ES7 455-0VS00-0AE0 FM455C闭环控制模块
6ES7 455-1VS00-0AE0 FM455S闭环控制模块
6DD1 607-0AA2 FM 458-1DP快速处理系统
6ES7 953-8LJ20-0AA0 用于FM458-1DP 基本模板 512KByte(MMC)
6ES7 953-8LL20-0AA0 用于FM458-1DP 基本模板 2MByte(MMC)
6ES7 953-8LM20-0AA0 用于FM458-1DP 基本模板 4MByte(MMC)
6DD1 607-0CA1 EXM 438-1 I/O扩展模板
6DD1 607-0EA0 EXM 448 通讯扩展模板
6DD1 607-0EA2 EXM 448-2 通讯扩展模板
6DD1 684-0GE0 SC64连接电缆
6DD1 684-0GD0 SC63连接电缆
6DD1 684-0GC0 SC62连接电缆
6DD1 681-0AE2 SB10端子模块
6DD1 681-0AF4 SB60端子模块
6DD1 681-0EB3 SB61端子模块
6DD1 681-0AG2 SB70端子模块
6DD1 681-0DH1 SB71端子模块
6DD1 681-0AJ1 SU12端子模块
6DD1 681-0GK0 SU13端子模块
通讯模板
6ES7 440-1CS00-0YE0 CP440通讯处理器
6ES7 441-1AA04-0AE0 CP441-1通讯处理器
6ES7 441-2AA04-0AE0 CP441-2通讯处理器
6ES7 963-1AA00-0AA0 RS232C接口模板
6ES7 963-2AA00-0AA0 20mA接口模板
6ES7 963-3AA00-0AA0 RS422/485接口模板
6ES7 870-1AA01-0YA0 可装载驱动 MODBUS RTU 主站
6ES7 870-1AB01-0YA0 可装载驱动 MODBUS RTU 从站
6GK7 443-5FX02-0XE0 CP443-5基本型通讯处理器,支持Profibus-Fms协议
6GK7 443-5DX04-0XE0 CP443-5扩展型通讯处理器,支持Profibus-DP协议
6GK7 443-1EX11-0XE0 CP443-1 以太网通讯处理器
6GK7 443-1EX41-0XE0 CP443-1 高级以太网通讯处理器
附件
6ES7 960-1AA04-0XA0 冗余系统同步模板(新)近距离同步(10米以内)
6ES7 960-1AB04-0XA0 冗余系统同步模板(新)远程同步模板(10米到10公里,用同长度的光缆)
6ES7 960-1AA04-5AA0 冗余系统光纤连接电缆(1米)(新)
6ES7 960-1AA04-5BA0 冗余系统光纤连接电缆(2米)(新)
6ES7 960-1AA04-5KA0 冗余系统光纤连接电缆(10米)(新)
6ES7 833-1CC01-0YA5 S7F系统可选软件包
6ES7 833-1CC00-6YX0 F运行*
6ES7 197-1LA03-0XA0 Y-LINK
6ES7 492-1AL00-0AA0 前连接器
6ES7 400-1TA01-0AA0 主板(18槽)
6ES7 400-1JA01-0AA0 主板(9槽)
6ES7 400-1TA11-0AA0 主板(18槽)铝板
6ES7 400-1JA11-0AA0 主板(9槽)铝板
6ES7 401-2TA01-0AA0 CR2主板(18槽)
6ES7 400-2JA00-0AA0 UR2-H主板(18槽)
6ES7 400-2JA10-0AA0 UR2-H主板(18槽)铝板
6ES7 403-1TA01-0AA0 ER1机架(18槽)
6ES7 403-1JA01-0AA0 ER2机架(9槽)
6ES7 403-1TA11-0AA0 ER1机架(18槽)铝板
6ES7 403-1JA11-0AA0 ER2机架(9槽)铝板
6ES7 460-0AA01-0AB0 IM460-0
6ES7 461-0AA01-0AA0 IM461-0
6ES7 468-1AH50-0AA0 连接电缆 (0.75米)
6ES7 468-1BB50-0AA0 连接电缆 (1.5米)
6ES7 461-0AA00-7AA0 终端器
6ES7 460-1BA01-0AB0 IM460-1
6ES7 461-1BA01-0AA0 IM461-1
6ES7 468-3AH50-0AA0 468-3连接电缆 (0.75米)
6ES7 468-3BB50-0AA0 468-3连接电缆 (1.5米)
6ES7 460-3AA01-0AB0 IM460-3
6ES7 461-3AA01-0AA0 IM461-3
6ES7 468-1BF00-0AA0 468-1连接电缆(5米)
6ES7 468-1CB00-0AA0 468-1连接电缆(10米)
6ES7 468-1CC50-0AA0 468-1连接电缆(25米)
6ES7 468-1CF00-0AA0 468-1连接电缆(50米)
6ES7 468-1DB00-0AA0 468-1连接电缆(100米)
6ES7 461-3AA00-7AA0 终端器
6ES7 463-2AA00-0AA0 IM463-2接口模块
6ES7 964-2AA04-0AB0 IF-964 DP接口模块