PLC部分1.PLC的基本知识PLC主要是用于辅助数控系统进行外部输入和输出的控制,完成相应的逻辑任务.PLC程序的运行有几个特点:在执行下一行程序之前,前一行程序必须执行完毕。程序按顺序依次执行。PLC程序在固定的时间间隔内重复运行。2.Heidenhain的PLCHeidenhain的PLC同样具备一般PLC的特点.PLC程序可以直接在系统中创建,也可以使用计算机软件PLCdesignNT软键在PC上创建。常见的PLC主要使用梯形图或是语句表进行PLC程序的编写,海德汉PLC除了一般PLC通常的逻辑控制语句还允许使用一些高级控制功能,因此采用的是语句表格式进行编写的,不支持梯形图.3.学习PLC前的准备a.HEIDENHAIN数控系统和PLC的接口关系:图中NC指的是数控系统的数控部分,PLC指的是数控系统中的PLC部分,箭头表示数据的流向。从上图我们大体可以看出哪些数据该有PLC采集,哪些数据该有NC采集,对于PLC和NC各自采集的数据部分,他们是通过什么途径进行数据交换的.b.Heidenhain软件工具虽然Heidenhain系统支持在线编写和修改PLC程序,但通常我们都是在个人电脑上进行离线编辑的。因此我们需要在电脑中安装相应的工具以便我们快捷的修改和编辑。我们进行PLC编辑的主要工具有:PLCdesign(PLCdesignNT):用于创建,编辑,管理PLC项目的主程序。PLCtext:用于管理,编辑PLC项目中的报警信息和提示信息的数据库程序。IOconfig:用于系统各组件配置(组态)的程序。CycleDesign:用于管理和编辑竖排软按键或OEM循环的程序。BMXdesign:用于制作软按键图标和帮助图形的程序。TNCremo:用于文件传输以及系统备份和还原的程序。这些软件仅支持WindowsXP或Window7的32位系统,依次将上述所列程序安装在个人电脑中。c.Heidenhain的基本程序为了方便各个机床制造商更加快捷的上手使用Heidenhain数控系统,Heidenhain可以向机床制造商提供基本程序包,该基本程序包通过简单的配置可以适用于与各类常见机床,即使是复杂的机床,也只需在灵活掌握Heidenhain的PLC基本功能后,通过简单的修改和调整就能完成。本课程PLC部分以Heidenhain基本程序为基础对PLC的使用进行讲解。TNC620目前最新的基本程序包是。将该基本程序解压缩到任意文件夹中,以便后续使用。打开基本程序解压缩后存放的文件夹,如果用户已经安装了b部分所指出的软件,此时会看见。双击该文件,电脑会自动打开Heidenhain的PLC编程环境并载入Heidenhain基本程序。4.熟悉PLC编程环境如上图所示,Heidenhain的PLC项目编程环境主要由以下几个部分组成:(1).主菜单及基本操作(2).集成软件调用(3).项目类型选择(4).状态监控方式选择(5).主编辑窗口(6).项目文件管理器(7).信息窗口(8).PLC变量监视区a.主菜单及基本操作区:关于主下拉菜单里的内容在这里不作说明,之后随着学习的深入再逐步讲解。基本操作区内的内容和一般的应用程序一样包括打开,新建文件,复制,粘贴等等,当鼠标在相应图标上停留时,会显示该图标功能的对话框。除此之外我们需要了解的是和PLC编程环境相关的两个图标,大家可以按几下这两个图标,观察一下编程环境有哪些变化。b.集成软件调用区:当大家已经安装了3.b中所示软件后,在打开PLC编程环境时,相应的软件已经集成在编程环境里了,当需要使用特定的软件时,只需点击相应小图标就可自动调用,当鼠标在相应图标上停留时,会显示该图标功能的对话框。下图所示的集成软件图标可能有些并没有显示在你的PLC编程环境里,只要下图中所有标有名称的软件图标包含在PLC编程环境里就不会影响PLC的使用。c.项目类型选择点击下拉菜单,根据选择的硬件不同选用相应的项目类型。d.状态监控方式选择当安装好软件的电脑和TNC620通过网线正常连接时,使用状态监视方式选择相应的监控方式。e.主编辑窗口用于编写PLC程序文件;在启用在线监视时,窗口显示各语句在线监视状态。f.项目文件管理器项目文件管理器和我们电脑上的资源管理器类似,用来显示,创建,编辑项目文件组织结构。项目文件管理器根目录中根据文件夹颜色的不同,也指示出不同的用途。g.信息窗口在对PLC进行编辑,连接TNC620等操作时,该窗口提供相关提示信息。h.PLC变量监视区当个人电脑与TNC620系统处于连接状态时,可在该窗口内添加相应的变量进行状态监视。5.开始使用PLC基本程序首先对PLC编程环境进行简单的设置,步骤如下:a.在项目类型选择中根据所使用的硬件选择相应的类型b.c.d.设置完成后点击OK键保存并退出设置菜单.6.配置硬件连接及IO点硬件使用CC硬件使用UEC假设HSCI连接顺序MCMBCCPL假设HSCI连接顺序MCMBUECPL重复以上两步依次将HSCI上除MC外的所有部件均加入其中,重复以上两步依次将HSCI上除MC外的所有部件均加入其中,对于以上两种提示信息直接选择Yes或OK确定,对于弹出的选择对话,根据实际使用情况进行选择。提示:带有FS的选项表示该设备具备安全功能,非特别说明具有安全功能的模块,请选择不带FS后缀的项目。对于以上两种提示信息直接选择Yes或OK确定,对于弹出的选择对话,根据实际使用情况进行选择.提示:带有FS的选项表示该设备具备安全功能,非特别说明具有安全功能的模块,请选择不带FS后缀的项目。按照以MC为起点HSCI总线上设备的连接顺序,排列自己添加进去的各个模块,原有模块置于队列末端,调整模块位置的方法可以通过右键点击对应的模块按照以MC为起点HSCI总线上设备的连接顺序,排列自己添加进去的各个模块,原有模块置于队列末端,调整模块位置的方法可以通过右键点击对应的模块展开原有PL6204模块,右键点击SystemModule项,选择第四项,将所有名称剪切到粘贴板上展开原有UEC模块,右键点击SystemModule项,选择第四项,将所有名称剪切到粘贴板上在新添加的PL62xx模块里的SystemModule处点右键,选择第一项从剪贴板复制所有名称在新添加的UEC模块里的SystemModule处点右键,选择第一项从剪贴板复制所有名称使用上两步的方法完成原PL6204的SlotNo.1及SlotNo.2下PLD-H16-08-00到新PL620x中SlotNo.1及SlotNo.2下PLD-H16-08-00的剪切和粘贴,原MB620模块中的DigitalKeys到新MB620中的DigitalInput的剪切和粘贴,以及从原MB620模块中的Digital到新MB620中的DigitalOutput的剪切和粘贴。使用上两步的方法完成原MB620模块中的DigitalKeys到新MB620中的DigitalInput的剪切和粘贴,以及从原MB620模块中的Digital到新MB620中的DigitalOutput的剪切和粘贴。展开MB620模块,对于有图中所示三个符号名的文件,则需调整。依次将这三个文件名选中,并使用按键组合Shift+Alt+D,将这三个符号名移动到队列最后方。分别选中原CC6106,原PL6204,原MB620模块,按键盘上的Del按键依次将其删除分别选中原UEC,原MB620模块,按键盘上的Del按键依次将其删除按照电气原理图通过核对描述中PLC物理地址的方式,找到与接线位置对应的输入或输出标签,点击右侧描述中符号名的位置,将符号名改为合适的名称,更改前请先阅读以下注意事项。为了便于编写和维护,请大家按照以下规则定义输入输出点符号名:输入点符号名-I_对于该输入点状态为1时的功能或状态的描述-例如:I_key_light_on(表示关于开灯按钮的输入)输出点符号名-O_对于该输出点状态为1时的功能或状态的描述-例如:O_light_on(表示该输出为1时,表示灯亮)注意:a.输入和输出符号名,只能使用字母,下划线及数字表示,并且必须使用字母开头,符号名有效长度24位,对于有效长度内字符相当的几个符号,系统认为是同一个值。b.对于原符号名为I_UNUSED_xxxx或O_UNUSED_xxxx的符号名可直接更改为所需的符号名c.对于原符号名为非b中所示的两种符号名(基本程序自带的)更改时,需先激活GLB_IO_CONFIG.LIB中对应的名称后再作修改,激活方式如下,以激活符号名O_wye_delta_connection输出点为例:1.2.3.4.5.6.对于完成激活的符号名的修改,可以按照之前的步骤进行符号名的修改d.对于使用基本程序中已经定义好的输入/输出点时,首先需要对GLB_IO_CONFIG.LIB文件中已经定义好的输入输出点进行去激活,再将该输入输出点的符号名填入IOconfig软件里对应物理地址的符号名处。输入输出点的去激活方法,与c中的激活方法相反,只需在你所需要去激活的符号名前加入;HSCI即可。关闭IOconfig软件,在PLC编程环境PLCdesign下,按F7按键,观察信息窗口,如果显示0Error,0Warnings,则表示之前的输入输出点定义成功了。双击树状结构中的GLB_IO_CONFIG.DEF文件,查看我们已经定义好的输入输出点在打开的GLB_IO_CONFIG.DEF窗口中,可以看到我们添加的输入输出点名称提示:每行第一个分号及之后的部分为注释,对注释进行的更改和删除不对程序造成影响,例如原始的参考端子物理地址位置就处于注释部分,供参考用。7.配置机床的基本功能配置完硬件连接和IO点之后,我们首先需要对该机床的基本功能进行配置。由于使用CC6106模块和使用UEC模块仅在配置硬件连接的地方有区别,因此之后的讲解不再区分使用CC6106模块还是UEC模块。a.b.c.d.在打开的文件里,找到我们需要根据机床功能修改的第一部分内容,其中等号后面的内容是我们修改的地方,每一部分修改的内容之前都会有绿色的注释(*号后的内容),用于说明这一部分内容所关联的功能,以及修改的的值的取值范围等等。第一部分:机床一般功能的配置Cfg_Tool_specific_torque_monitoring机床是否进行刀具的扭矩监控:需要监控将修改部分内容改为active表示激活,不需要监控时改为inactive表示不激活说明:基本程序已经对刀具扭矩监控部分作了示例的处理,需要监控时除了在此处激活外,还须对每把刀在刀具表中的扭矩一栏填写每把刀具扭矩的承受值,基本程序会根据填写的扭矩值,当超出扭矩一定量时作简单的降低进给速率的调整,若需特殊的处理方式还需制造商自行设计编写。常用值:inactiveCfg_Emergency_end_position_axes_coded急停链的结构类型是否属于编码形式:属于编码形式为active,不属于编码形式为inactive上图为编码形式和非编码形式典型的示例编码形式中单独使用b点,c点或d点的0或1的状态是无法判断是哪个轴压了限位,必须使用组合的方式此可以判断,例如:b点为1,c点为0,则可以判断是Y轴压了限位。非编码形式中可以单独的使用e点,f点,g点的0或1的状态来判断哪个轴压了限位,例如:f点为0即可判断是Y轴压了限位基本程序涉及的输出点:O_axes_motion_from_end_position超程解除编码形式基本程序涉及的输入点为I_end_posit_1_not_overtravelledX轴未超程I_end_posit_1_2_not_overtravelledXY轴未超程I_end_posit_1_2_3_not_overtravelledXYZ轴未超程I_end_posit_1_2_3_4_not_overtravelledXYZ4轴未超程I_end_posit_1_2_3_4_5_not_overtravelledXYZ45轴未超程非编码形式涉及的输入点