收藏 分享(赏)

SIMOTION--D435--实例.doc

上传人:tangtianxu1 文档编号:2960841 上传时间:2018-09-30 格式:DOC 页数:59 大小:2.03MB
下载 相关 举报
SIMOTION--D435--实例.doc_第1页
第1页 / 共59页
SIMOTION--D435--实例.doc_第2页
第2页 / 共59页
SIMOTION--D435--实例.doc_第3页
第3页 / 共59页
SIMOTION--D435--实例.doc_第4页
第4页 / 共59页
SIMOTION--D435--实例.doc_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、SIMOTION 项目实战 D435 Beginner1 概述本文档通过一个实际项目来介绍 SIMOTION 项目组态、配置和编程的过程。在SIMOTION SCOUT 软件的安装包里提供了一个供初学者学习的项目“D435_BEGINNER”,该项目位于软件光盘路径. Utilities_ApplicationssrcExamplesExampleForBeginners 文件夹内,该项目提供了完整的项目文 件和介绍文档,该项目可以在 SIMOTION D435 演示设备上模拟运行。图 1 项目实战图示该项目要实现的功能是将生产线上的空盒子吹出生产线,其工作过程如下:按下起动按钮后,盒子在传送

2、带上从上游运输到下游,如果在运输途中被检测出是空的, 那么载有喷嘴的吹出器会跟随空盒子运动,建立同步以后在指定的位置打开喷嘴将空盒子吹出传送带,然后吹出器重新返回等待位置。在运行过程中,如果安全门被 打开,那么生产线立即停止,在安全门关上以后,又自动恢复运行。复位起动按钮后,生产线停止。该项目中使用的运动控制功能有: 齿轮同步 Gearing 凸轮同步 Camming 快速点输出 Output Cam2 项目中使用的硬件和软件2.1 项目中使用的硬件项目使用的硬件基于 SIMOTION D435(可以转换到其他 SIMOTION 硬件),具体的产品如下表所示。编号 名称 数量 订货号 /备注1

3、 SIMOTION D435 1 6AU1435-0AA00-0AA12 CF 卡 1 6AU1400-2PA01-0AA03 SIMOTION 多轴授权包 1 6AU1820-0AA43-0AB04 端子板 TB30 1 6SL3055-0AA00-2TA05 智能型电源模块 SLM 5KW 1 6SL3130-6AE15-0AB06 双轴电机模块 DMM 21.6KW 1 6SL3120-2TE13-0AA37 传送带电机 1 1FK7022-5AK71-0LG08 吹出器电机 1 1FK7022-5AK71-0AG09 起动按钮 1 数字量输入,常开点10 安全门 1 数字量输入,常闭点

4、11 空盒子传感器 1 数字量输入,常开点12 吹出器喷嘴阀门 1 数字量输出13 连接电缆 若干 动力电缆、信号电缆等表 1 本项目所使用的硬件列表2.2 项目中使用的软件编号 名称 版本1 Windows XP SP3, Professional2 STEP7 V5.5 SP2 HF13 SIMOTION SCOUT V4.3 SP1 HF34 WinCC Flexible 2008 SP2 Upd125 SIMOTION D435 Firmware V4.3,with SINAMICS V2.6.2表 2 本项目所使用的软件列表3 项目配置SIMOTION SCOUT 项目的基本配置步骤

5、如下:1. 配置驱动器2. 配置工艺对象 TO3. 编写程序并分配执行系统4. 连接 HMI 设备3.1 配置驱动器本项目中有两台电机,由双轴电机模块驱动,可以参考下载中心应用文档编号A0309(视频教程)来完成驱动器配置文档名称SIMOTION D435 调试入门,其下载网址如下:http: / conveyor 和 eject,项目如下图所示:图 2 项目配置配置完成以后,重新进行对 SIMOTION 和 SINAMICS 进行下载并保存数据(Copy RAM to ROM)。此时本项目中 SINAMICS_Integrated 的基本配置已结束,接下来的工作需要在 SIMOTION D4

6、35 中继续配置。3.2 配置工艺对象 TOSIMOTION 运行系统摒弃了传统的面向各种功能的执行方式,采用了更为先进的面向对象的方式,而每一个对象即为各种不同类型的 TO (Technology Object,工艺对象)。这些TO 被用于工艺和运动控制,每个 TO 都集成了特定的功能,例如,一个轴 TO 包含了与驱动的通讯功能、测量值的处理功能、位 置控制功能。在组态的时候这些 TO 被创建并进行参数化之后,便可以在 SIMOTION 系统的内核中运行了,在用户程序中编写合适的命令就能够使用 TO的各 种功能。除了轴 TO 以外,外部编码器、同步操作、CAM 曲线等等都可以配置成一个TO。

7、每个 TO 都独立地处理各自的任务,同时输出相应的状态信息,如下图 所示。图 3 SIMOTION 中 TO 示意图本项目中有两个实轴 Conveyorbelt 和 Ejector,分别对应 SINAMICS_Integrated 中的两个驱动 conveyor 和 eject。另外,为了提高系统可靠性,我们引入一个虚轴作为整个系统的主轴 MasterAxis,Conveyorbelt 轴与 MasterAxis 轴 作齿轮同步,Ejector 轴与 Conveyorbelt 轴作凸轮同步,凸轮曲线需要根据工艺绘制。快速点输出(CamOutput TO)根据 Ejector 轴的位置控制吹出器

8、的喷嘴。所以本项目中使用的 TO 有: 轴 TO:MasterAxis、Conveyorbelt 、Ejector 齿轮同步 TO:Conveyorbelt 与 MasterAxis 之间的齿轮同步 凸轮 TO:Ejctor 与 Conveyorbelt 之间的位置凸轮曲线 凸轮同步 TO:Ejector 与 Conveyorbelt 之间的凸轮同步 快速点输出 TO:Valve,由 Ejector 的位置决定喷嘴的通断3.2.1 轴 TO 的配置在创建轴 TO 的过程中,需要指定轴的名称、类型、工艺、单位、连接的驱动、编码器等信息。根据工艺要求,需要配置的三个轴的属性如下表所示。名称 Nam

9、e 类型 Type 工艺 Technology 连接的驱动 DriveMasterAxis 虚轴,旋转轴 位置轴 无Conveyorbelt 实轴,旋转轴 跟随轴 ConveyorEjector 实轴,直线轴 跟随轴 Eject表 3 本项目中轴 TO 的属性1. 创建虚主轴 MasterAxis,步骤如下。AXES,双击 insert axis 可以插入一个轴。在弹出的窗口中配置轴的名称为 MasterAxis,工艺为 Positioning(即为位置轴)。 在离线情况下,在 SCOUT 软件中依次打开 D435图 4 插入轴点击 OK 进入下一步,选择轴的类型为旋转轴 Rotary、虚轴

10、Virtual,单位采用默认值。图 5 选择轴类型点击 Next 进入最后一步,这里可以看到所有配置的摘要信息,点击 Finish 结束配置。图 6 轴配置完成2.创建实轴 Conveyorbelt,步骤如下。AXES,双击 insert axis 可以插入一个轴。在弹出的窗口中配置轴的名称为 Conveyorbelt,工艺为 Synchronous operation(即为跟随轴)。 在离线情况下,在 SCOUT 软件中依次打开 D435图 7 插入同步轴点击 OK 进入下一步,选择轴的类型为旋转轴 Rotary,电气轴 Electrical,模式为标准轴Standard,单位采用默认单位。

11、图 8 选择轴类型点击 Next 进入下一步,选择需要连接的驱动为 SINAMICS_Integrated 中的 conveyor。图 9 选择轴的驱动点击 Next 进入下一步,编码器的数据会自动识别出来,默认选择使用的编码器为驱动器的Encoder_1,该编码器为绝对值编码器。图 10 选择轴的编码器点击 Next 进入最后一步,这里可以看到所有配置的摘要信息,点击 Finish 结束配置。图 11 结束轴配置打开 ConveyorBelt 轴得机械配置部分进行模态轴的组态:图 12 组态轴参数设置该轴为模态轴:图 13 配置模态轴3.创建实轴 Ejector,注意修改轴的类型为直线轴,回

12、零方式修改为编码器零脉冲(Encoder zero mark only),Conveyorbelt 使用的是绝对值编码器,所以无需设定回零模式。图 14 配置 Ejector 轴的回零步骤与 Conveyorbelt 基本相同,这里不再赘述。保存并且编译下载后,可以使用控制面板对实轴进行测试。3.2.2 齿轮同步 TO 的配置在轴 TO 配置完成以后,需要配置跟随轴 Conveyorbelt 与主轴 MasterAxis 的互联,在SCOUT 软件中,依次打开D435 AXESConveyorbeltConveyorbelt_SYNCHRONOUS_OPERATION(Conveyorbelt

13、_GLEICHLAUF),双击其中的 Interconnections,在右侧窗口选择使用虚主轴 MasterAxis 的设定值 Setpoint。图 15 同步配置3.2.3 凸轮 TO 的配置在配置 Ejector 轴与 Conveyorbelt 轴之间的凸轮同步操作之前,需要先定义凸轮曲线。根据工艺要求,如果检测到有空盒子,那么 Ejector 轴开始跟随传送带移动,在 1mm 处建立同步以后,喷嘴打开吹出吹盒子,然后在 4mm 处关闭喷嘴,同时 Ejector 轴开始返回初始位置。这 个操作过程中,Ejector 轴与 Conveyorbelt 轴的位置关系可以用下面的曲线(横纵坐标显

14、示为位置)来描述。图 16 凸轮曲线 第 1 段:建立同步过程中 第 2 段:已建立同步 第 3 段:返回初始位置可以使用凸轮绘制工具 CamTool 来绘制这条曲线,CamTool 软件需要预先安装好。在SCOUT 软件中,依次打开 D435CAMS,双击 Insert cam with CamTool 即可打开编辑器,输入 CAM 曲线的名称为 CAM_Ejector。如果没有安装 CamTool 软件,也可以通过描点法插入这条 CAM 曲线,本文档以 CamTool 为例进行说明。图 17 创建 CAM 曲线在编辑窗口插入两个插补点和一个线段。点击工具栏上的插补点工具 ,在起点和终点附近

15、插入两个插补点,使用直线工具 在两个插补点之间插入一条直线。图 18 创建 CAM 曲线在画出雏形以后,使用工具栏上的箭头工具 ,设定插入的各个对象的参数。双击第一个插补点,在弹出的属性窗口中指定其参数为 x=0,y=0。同理可以设定直线段和第二个插补点的参数,如下图所示。图 19 设定插入各个对象的参数在参数修改完成以后,曲线如图 20 所示:图 20 完成后的 CAM 曲线最后指定坐标的范围,在工作区的右键菜单中选择 Target Device Parameters,在Scaling 选项卡中设置主轴范围为 360,从轴范围为 10,如下图所示。这样,就将 Ejector 轴与 Conve

16、yorbelt 轴的位置对应了起来,在 Conveyor 轴到 36(0.1)时,Ejector 轴到达1mm(0.1)位置,此时即已建立同 步,同理在 4mm(0.4)位置处开始解除同步,并返回初始位置。图 21 指定坐标的范围3.2.4 凸轮同步 TO 的配置在凸轮曲线配置完成以后,可以配置轴 Ejector 与 Conveyorbelt 的互联,在 SCOUT 软件中依次打开D435AXESEjectorEjector_SYNCHRONOUS_OPERATION(Ejector_GLEICHLAUF),双击其中的 Interconnections,在右侧窗口选择使用 Conveyorbe

17、lt 轴的设定值,并选择互联的CAM 曲线为 Cam_Ejector。图 22 配置轴的 CAM 互联3.2.5 快速点输出 TO 的配置OUTPUT CAM 是 SIMOTION 中用于快速点输出的 TO。本项目中吹出器喷嘴的控制可以使用 OUTPUT CAM 功能实现,喷嘴的通断由 Ejector 轴的位置决定,所以需要为 Ejector 轴配置一个 OUTPUT CAM TO。该 TO 通过 SIMOTION D435 集成的 CU320 上的 DO 点输出。Control_Unit,双击其中的 Inputs/outputs,在右侧窗口中 Bidirectional digital in

18、puts/outputs选项卡下,设置 P0728.8 为输出点,如下图所示。 SINAMICS_Integrated 本项目中使用DI/DO8 作为该 OUTPUT CAM 的输出通道,所以首先要将该通道配置为数字量输出。在SCOUT 软件中,依次打开 D435图 23 设置 P0728.8 为输出点然后插入快速点输出 TO。在 SCOUT 软件中,依次打开D435AXESEjectorOUTPUT CAM,双击其中的 Insert output cam,创建一个名称为Valve 的 OUTPUT CAM TO。图 24 插入快速点输出 TO然后配置该 TO 的通过 SINAMICS_Int

19、egrated 中的 DO8 输出。在 SCOUT 软件中,依次打开 D435EjectorAXESOUTPUT CAMValve,双击其中的 Configuration,在右侧窗口中,选择激活输出 ,选择 Fast digital output(DO) (D4xx,C240) ,然后点击Output 中的 按钮,可以浏览到 SINAMICS_Integrated 中配置的 DO8。图 25 配置 TO在 OUTPUT CAM TO 配置完毕以后,如下图所示。图 26 TO 配置完毕这样,本项目中所使用的 TO 就都配置完成了,此时的项目导航栏如下图所示。图 27 本项目 TO 配置完毕3.3

20、 编写程序并分配执行系统SIMOTION 提供的编程环境方便而灵活,可以使用不同的编程语言实现相同的功能,这完全取决于个人的编程习惯。SIMOTION 程序的执行系统清晰而 全面,不管是周期性执行,还是单次执行,不管是时间触发,还是事件触发,都可以按照优先级高低顺序进行程序的分配。通过程序在执行系统中的合理分配,可以 方便的实现各种运动控制功能,SIMOTION 的执行系统的示意图如下图所示。图 28 SIMOTION 的执行系统示意图图 29 项目功能分解在使用 SIMOTION 创建项目时,首先需要对程序结构进行规划,根据工艺要求,将所需的功能分解,编写成多个独立的程序,再将程序分门别类地

21、分配到执行 系统当中。在本项目中,根据工艺的要求,可以将程序分成几部分,再将程序分配到相应的执行系统中,如图 29 所示。PROGRAMS 即可插入程序。 SIMOTION 设备支持的程序语言有ST、MCC 、LAD/FBD、DCC 等,这些编程语言各有特点,其中使用 MCC 语言可以方便地编写运动控制程序, 使用 LAD/FBD 语言可以方便地实现逻辑控制功能,使用 DCC 可以方便地实现工艺控制功能,使用 ST 语言可以方便地实现复杂的运动、逻辑和工艺控制功 能。在SCOUT 软件中,依次打开 D435图 30 插入程序本项目中使用了 ST、MCC 和 LAD/FBD 三种编程语言。在使用

22、 MCC 和 LAD/FBD 时,需要先插入程序单元(Unit),再在单元中插入程序 (Program)。本项目中,使用 ST 编写了pInit()和 pHMIout()程序,使用 MCC 编写了 pAuto(),pEject(), pHoming(),pProtDoor() ,pTecFault()程序,使用 LAD/FBD 编写了 pLADFBD(),pPLCopenProg() 程序,如图 31 所示。图 31 项目中的程序Execution System 即可以打开分配执行系统的画面,分配结果详见本文档 3.4.3 节。然后在线连接设备,编译并下载项目后,系统就可以正常运行了。 在程序

23、编写并编译完成以后,再分门别类地分配到执行系统中。在 SCOUT 软件中,依次打开 D435与 SIMATIC PLC 的程序不同的是,SIMOTION 中没有数据块 DB 的概念,所有程序都对变量进行操作,所在在缩写 SIMOTION 程序时,需要按照以下步骤进行:1. 声明变量2. 编写程序3. 分配执行系统3.3.1 声明变量在编写程序之前,需要声明变量。SIMOTION 设备中的变量分为系统变量、全局变量和局部变量。其中系统变量在 TO 创建完成后,就已经由系统自动生成, 比如轴 TO 的运行状态等。全局变量包括 IO 变量、设备全局变量和程序单元变量三类,其中 IO 变量可以通过SC

24、OUT 软件中的 ADDRESS LIST 来创建,设备全局变量可以通过 GLOBAL DEVICE VARIABLES 来创建(本项目中没有使用),而程序单元变量需要在程序单元中创建,可以在程序单元内使用。一个程序单元中的全局变量通过互联,也可以 用于其他程序单元。局部变量在单个程序中创建,只可以在本程序中使用。图 32 变量说明3.3.1.1 创建 IO 变量在 SCOUT 软件中,双击 D435 下的 ADDRESS LIST,即可在软件下半窗口中配置全局的 IO 变量。在 Name 列输入变量名称,在 I/O address 一列指定输入输出类型以后,就可以直接在 Assignment

25、 列点击 按钮浏览到系统中的 IO 变量。本项目中的 IO 变量配置如下图所示。其中 iboEject 为空盒子传感器的 DI 信号,iboProtDoor 为安全门的 DI 信号,iboStartBelt 为生产线起动的 DI 信号。图 33 创建 IO 变量3.3.1.2 创建程序单元变量和局部变量根据编程语言的不同,程序单元变量的创建方式也不同。(1)在 ST 语言中的声明变量使用 ST 语言时,可以在 INTERFACE 段声明全局变量,其格式如下:变量名:数据类型(: =初始值 );比如 pDefInit 程序单元中一个名称为 gboProgEnd 的布尔型变量,需要按以下格式声明:

26、INTERFACEVAR_GLOBALgboProgEnd : BOOL := FALSE;END_VAREND_INTERFACE这里声明的全局变量只能在本程序单元中使用。如果需要在其他程序单元中访问这些变量,那么需要在其他程序的 INTERFACE 段内添加 USES 语句,比如 在 pHMIout 程序单元中就有这样的语句,其格式如下:INTERFACEUSES pDefInit;END_INTERFACE另外,在程序中 IMPLEMENTATION 段也可以声明全局变量,这里声明的变量只能在本程序单元中使用,无法被其他程序单元访问,在本项目中并没有在 IMPLEMENTATION 段中

27、声明全局变量。局部变量在程序内部的 PROGRAM 段内声明,仅供本程序使用,无法被其他程序或程序单元访问,其声明格式与全局变量相同。本项目中也没有在 PROGRAM 段声明局部变量。(2)在 MCC 程序单元中声明变量PROGRAM,双击其中的 Insert MCC Unit 即可插入一个程序单元,此时在右侧的窗口中可以定义本程序单元的全局变量。 在 SCOUT 软件中,依次打开 D435MCC 程序单元中的全局变量在数据表格中声明,变量声明的位置与 ST 语言是一致的。如果是全局变量,并希望被其他程序单元访问,那么变量在 INTERFACE 段声明,如果不希望被其他程序单元访问,那么变量在 IMPLEMENTATION 段声明。比如在 pProtDoor 程序单元中定义了下 面的全局变量。图 34 MCC 程序单元中声明变量

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报