换热器厂家
免费服务热线

Free service

hotline

010-00000000
换热器厂家
热门搜索:
成功案例
当前位置:首页 > 成功案例

今日子程序块在Logix5000中的应用

发布时间:2021-07-15 07:33:26 阅读: 来源:换热器厂家

子程序块在Logix5000中的应用

对于A-B PLC编程,Logix5000一直以其技术成熟、结构简单、稳定可靠和应用广泛而著称,但也存在一些缺点,如v16.0版本以前无法实现子程序块的调用。面对大量相似的设备,不得不重复性的工作降低了工作效率。为了提高效率,也有人在编写程序时使程序编写标准化、模块化,但都因为无法实现参数赋值,而只能逐条修改,虽然提高了些工作效率,但其块功能问题依然未能解决。

当前,汽车的普及及档次的不断提高对现代化的汽车厂的要求越来越高,而PLC程序无疑成为对其直接影响的最主要、最直接、最直观的要素,也是广大用户对于PLC程序设计提出的最强烈的要求。现代化汽车厂要求PLC程序必须具有调试时间短、性能稳定、修改方便、维护便捷、程序短小精悍以及通用性强等特点。自Logix5000 v16.0版本后,A-B公司增加了ADD ON功能,从而解决了子程序块的调用问题。

系统建立

1.任务的建立

首先应先新建任务。点击菜单FILE下的NEW(或快捷键NEW),弹出对话框:根据所选PLC类型选择Type,在Revision中选择下拉菜单16;在Name中给程序起名(本例中程序名称为TEST);在Chassis Type中选择所选的机架,本例选择的为10槽机架;在Solt中选择控制器所在机架的位置,默认为0槽。点击OK,出现图1所示信息(请注意图中蓝色部分),则本PLC程序创立完成。

图1 新文件创建完成

2.I/O模块配置

接下来要配置I/O模块。在图1所示信息中,右键点击图中蓝色部分,在新弹出的对话框中选择New Module,于是出现新对话框。选择相应的I/O模块,例如可选择一个以太模块、两个IB16输入模块、两个OB16E输出模块以及一个Profibus模块(本例中名称为Sst1),得到图2所示信息,则I/O模块配置完成。

图2 I/O模块配置完成

建立数据类型

在创建子程序前,应先创建数据结构(如图3所示)。右键单击Data Types下的User-Dfines(图中蓝色部分),选择New Data Type。在弹出的对话窗口中,在Name中给所定义的数据类型起名,在Members下定义本类数据类型所包我国锂辉石矿主要散布在4川甘孜州、阿坝州、新疆的和田、阿勒泰等地含的参数。这里所定义的数据类型即是在子程序中所调用的形参。Members下的Name为参数的名称,Data Type为参数的类型,Style为参数选择进制,Description内加入文字说明。

图3 创建数据结构

如图4所示,本案例中参数名称Name为UD_FLDP,数据类型为现场IP67输入模块,其中参数为所有进入IP67输入模块的信号。点击Apply,点击OK,则本条数据结构建立完成。同时,本数据结构也可以作为其他数据类型的一个参数,而被其他数据结构所调用。如此,可以根据需要建立不同名称、不同类型的数据类型以方便程序应用。

图4 数据结构详解

建立子程序

1.工艺流程

在编写子程序前应首先明确工艺流程。以汽车工厂焊装车间机械化输送系统为例,焊装车间机械化输送系统多为滑橇输送,以普通辊床为主,辅以旋转辊床、升降辊床、移行机和升降机等,其输送方式为连续输送,即下一工位出现空位时,本工位即向下一工位输送。普通辊床直接输送,旋转辊床则需要经自身旋转后接件或送件,移行机需要经过平移后接件或送件,升降机则需要经过上升及下降过程接件或送件等。

图5所示为普通辊床的输送方式,输送方向为从辊床GN132向辊床GN133输送。图中绿色靶型图形为辊床上开关,本例中普通辊床各设两个现场检测开关,分别为从左向右到位开关与超程开关。当辊床GN132有车,即辊床GN132到位或超程开关任何一个检测到高电平,即认为本辊床有车(或为不带车空滑橇)占位。如果此时其下一辊床GN133处无车,即辊床GN133到位及超程开关未检测到任何一个高电平,即认为本辊床无车(或为不带车空滑橇)空位。此时,辊床GN132向辊床GN133输送。当车身(或为不带车空滑橇)完全脱离辊床GN132后(此时辊床GN132到位及超程开关未检测到济南试金万能试验机特点任何一个高电平,即为空位),辊床GN132停止运行。当车身(或为不带车空滑橇)完全进入辊床GN133后(此时辊床GN133到位或超程开关检测到任何一个高电平),辊床GN133停止运行。以上为辊床GN133完成一次进车过程。同理,当辊床GN133占位,而辊床GN134空位时,辊床GN133向辊床GN134上输送,当辊床GN133空位停止而辊床GN134输送到位后,辊床GN133完成一次出车过程。此时,普通辊床完成其全部动作过程。

图5 普通辊床的输送方式

2.子程序建立

打开RSLogix 5000,在左侧任务栏消费者对汽车产品提出了更高的要求:节能、美观、安全、环保等中右键单击Add-On Instructions,选择New Add-On Instruction,然后在新弹出的对话窗口中给所要建立的子程序起名字。本例中子程序名为RollerBed_GN,说明为“普通滚床程序块”。点击确定,在弹出的对话框中多了几个选择,但此时的Parameters中仅有两条,而Local Tags下面为空,没有任何Tag。

在Parameters中建立Name为BedThis的参数,其中Usage选择InOut,在Data Type中选择UD_INPUT(在前面已建立的数据类型),将Req与Vis选项选中,点击应用并确定(见图6)。

图6 在Parameters中建立数据

同理,建立Name为BedBefor与BedAfter的参数,分别为BedThis辊床的前一辊床和后一辊床。点击应用并确定后,在RollerBed_GN下出现Logic(见图7)。双击Logic,进入子程序框。新建一条程序,点击RUNG,加入一个常开点(Examine On),双击常闭点的“ ?”,选择下拉菜单下的Arrive_ss。同理,按照前面工艺流程继续完善程序,完成后的程序如图8所示,子程序建立完毕。

图7 在RollerBed_GN下出现Logic

图8 子程序建立完毕

子程序的调用

子程序建立完成后,我们观察到在Add-On Instruction下多了条分支RollerBed_GN,即为我们所建立之子程序,可以被复调用。在选中RUNG条件下,键入RollerBed_GN,则出现图9所示对话框,此处的普通辊床程序块即为前面所建立的程序块,其数据结构即为前面所建立的模式。右键单击RollerBed_GN后的“?”,在下拉列表中选择New Tag,如以GN133为例,新Tag名称为GN133ADDON。由于GN133前一工位为GN132,后一工位为GN134,则在BedThis中填入GN133,Bed但与国外水性聚氨酯胶粘剂系列化大工业的水平相比Befor中填入GN132,BedAfter中填入GN134。

此时,本条语句尚处在状态,由于GN133、GN132和GN134三个Tag尚未,应对其进行。右键选中GN133,选择New Tag,在DataType中选中前面所建立的UD_INPU邻苯2甲酸酯会迁移到医疗导管或输液袋内的药液或血液中对人体产生副作用T类型(GN132、GN134、GN133),则此子程序调用完毕。如此,可以继续反复调用此子程序,以满足工作需要。

子程序的修改

当子程序建立完毕,并在多年来实际工作中运行后,如果需要对子程序进行修改,首先应进入状态,然后在左侧对话框中双击需要修改的子程序块(Logic),方可对子程序进行修改。需要注意的是,状态如无法对子程序进行修改,则应先下线,在Offline状态下对子程序进行修改。

图9 此处的普通辊床程序块即为前面所建立的程序块

结语

本文提出的对于A-B PLC编程Logix5000子程序的方案,在实际应用中得到了大量尝试,并获得了成功,彻底解决了目前传统的A-B PLC编程无法实现的程序编写的模块化、系统化和产业化的问题。(end)

治疗心悸心律失常吃什么药
肾阳虚如何调理多吃什么食物
肾阴虚遗精吃什么中药