工控网首页
>

应用设计

>

利用IEC61131-3和PLCopen的运动控制功能块来创建独立于硬件的可再用运动控制应用程序

利用IEC61131-3和PLCopen的运动控制功能块来创建独立于硬件的可再用运动控制应用程序

2004/7/28 10:46:00
利用IEC61131-3和PLCopen的运动控制功能块来创建独立于硬件的可再用运动控制应用程序 摘要   运动集成及自动化解决方案的可维护性和连通性这些问题已经出现,因此需要建立标准。   PLCopen建立了这样的标准。编程语言的标准是来协调各工作平台间运动控制功能性的访问。这样,生成的应用程序在工作平台间更独立于硬件而且可再度利用。   PLCopen运动控制功能块提供的标准以IEC61131-3功能块概念为基础。随着功能性和接口的标准化及在多个平台上执行,建立了编程标准,并在工业领域被广泛支持。由于封装隐藏了数据,此标准可用于不同结构,适用的控制从集中型到分散型或从集成型到网络型。它不是为某个应用程序特别设计的,而是可以作为在不同领域中正进行定义的基础层。正因为如此,它对现有和将来的技术都是开放的。 介绍   在很多情形中运动控制系统的用户支持多个应用层。例如,一个包装机供应商可支持三个不同层次:低成本、中等层次和高性能/高成本。使用不同的运动控制系统可解决速度和精确度的不同需求。不幸的是,运动控制市场显示各种系统/解决方案的不兼容。实际上,这意味着结构和用于开发、安装和维护的软件工具的各个层次存在很大的差异。   这种不兼容性带来了相当大的费用:使用不同的实现设备发生混乱,工程变得困难,培训费用增加,软件在各平台间不能再次使用。   标准化自然减少了以上提到的消极要素。标准化不仅适用于IEC61131-3国际标准这样的编程语言中,而且适用于不同的运动控制解决方案(如分散型、集成型或集中型)的接口。   这种标准化可有效地用于定义可再用部件的资料库。这样,编程更独立于硬件,应用软件的可再用性增加,培训和维护的费用减少,不同控制解决方案间的应用程序可伸缩。 任务工作小组的目标   机器制造业的主要供应商请求PLCopen帮助解决不兼容的问题,因此组建了运动控制的任务工作小组。通过使运动控制的功能块标准化,此任务工作小组定义了程序员接口。不仅用户包括在其中,还得到供应商的广泛支持,为很多产品和结构提供了大量实现设备,因而保证了此资料库的成功。   独立的协会PLCopen于2001年11月在它的网站www.plcopen.org上发布了功能块资料库的定义。组织成员还将继续进行修改。该定义包括顺应性规则,将来会由PLCopen进行认证。   标准化主要关注不同供应商提供的不同系统之间的可再用性,包括分布型和网络型系统。总之,预计标准化将覆盖运动控制市场的百分之八十左右。 任务工作小组定义了运动控制功能块概念有以下几个目标: 1.简单性 — 容易编写应用程序、安装和维护 2.效率性 — 体现在功能块的数量和设计效率上 3.一致性 — 符合IEC61131-3标准 4.通用性 — 独立于硬件 5.灵活性 — 将来的扩展/应用范围 6.完全性 — 不是强制性的但很充分 定义包括三个部分: 1.状态机的定义 2.用于单轴/多轴运动控制的基本功能块集的定义 3.顺应性规则和综述 状态机的定义   下图标准地定义了多个运动控制FB同时启动时轴在高层次的行为特性。运动的这种组合对建立更复杂轮廓或处理程序中的一些例外很有用。(在实际实现过程中,可能有在较低层的附加状态。)   基本规则是按顺序发出运动命令,即使PLC具有实时并行处理的能力。这些命令作用于轴状态图上。   轴总是在定义的状态中的一种状态下。任何运动命令都是一种转换,它改变轴的状态,因此改变当前计算出的运动。
定义了七种状态   1.保持静止 2.回原位 3.离散运动 4.持续运动 5.同步运动 6.停止 7.故障停止   正常过程都从静止开始。在此状态下,每个轴都可连通电源(通过供电命令)。而且可以访问回原位状态(通过对每个轴发布回原位命令),正常完成后返回静止状态。从这里可以将轴转成离散运动或持续运动。通过停止状态可以返回到静止。发生故障时轴将转换为故障停止状态。通过重启命令(人工操作)可以返回到静止,接下来机器可以再次进入运行状态。请注意这些状态都定义了功能块的功能性。 功能块集的定义   功能块的粒度是基本问题。对应于低层次命令的功能性而言,每个轴至少有一个功能块。一个中间层更好地实现了以上的要求,减轻处理器的负载并创建了更高水准的可伸缩性。运行就是在此层次的基础上进行。而且,为了将来的扩展定义两个功能块输入和输出集:一个必须遵守的基本集和一个扩展集。 轴的数据类型及实例   导出数据类型AXIS_REF提供轴的索引。所有制造商都提供这种数据类型。它还为电机/驱动器提供接口。实接口的技术性隐藏在结构和功能块中。这样,当用户访问所有相关参数时,不同的结构看起来是一样的。这种结构包括集成于控制器的运动、集成于驱动器的控制、分布型和网络型系统。 AxisRef作为Var_In_Out   Axis_Ref作为Var_In_Out使用,表示在功能块图形中的水平线连接的一个输入和一个输出。输入/输出变量值存储于FB的外部。Axis_Ref使用的变量表现为输入和输出参数,可以在功能块内修改,以及从外部变量接收数值。   举例说明如何进行这个操作:设想一个程序包括很多功能块,所有的功能块都彼此相连(从左至右),都通过Axis_Ref参照到同一个轴。此程序是在一个循环任务模式中,比如每一个毫秒。第一个FB读取Axis_Ref中的最新值,并在完成执行前可能更新其中一些值。紧接着下一个FB开始运行,读取Axis_Ref中已更新的值,也就是使用最新值。这些值耦合到电机。系统间的控制结构完全不同。   可以使用此索引定义一个或更多虚拟轴,在这个意义上,它作为数据结构出现,没有耦合到物理的驱动器或电机。
MC_MoveAbsolute 在一个指定的绝对位置命令被控运动。 MC_MoveRelative 在执行时,命令指定距离的被控运动,此距离与实际位置有关。 MC_MoveAdditive   除了在离散运动状态下原始命令的位置,命令一个指定相关距离的被控运动。如果FB在持续模式下启动,在执行时指定的相关距离被加入到实际位置。 MC_MoveSuperimposed   除了已有的运动,命令指定相关距离的被控运动。已有的运动不被中断,而是叠加运动。 MC_MoveVelocity   命令在特殊速率下的不停止的被控运动。 MC_Home   命令轴执行“回原位搜索”顺序。此顺序的细节由制造商决定,并由轴的参数设置。当检测到参照信号时,位置输入用于设置绝对位置。在静止时完成此操作。 MC_Stop   命令被控运动停止,将轴转换为“停止”状态。它会中止任何进行中的功能块的执行。使用“Done”输出,可转换为静止状态。当轴处于“停止”状态时,其他的FB不可以在这个轴上执行任何运动。 MC_Power 控制电源(开或关)。 MC_ReadStatus 返回到相应于当前正在进行运动的轴的详细状况。 MC_ReadAxisError 显示与功能块无关的故障。 MC_Reset   通过复位所有内部与轴有关的故障和清除悬挂的命令,实现从故障停止状态到静止状态的转换。它不作用于FB实例的输出。 MC_ReadParameter& MC_ReadBoolParameter   返回到供应商的专用参数值。如果有必要的话,返回值必需转换为实数。若不能的话,供应商需提供一个由其规定的独立的FB。 MC_WriteParameter& MC_WriteBoolParameter 修改供应商专用的参数值。 MC_ReadActualPosition 返回到实际位置。 MC_PositionProfile 命令一个时钟位置以锁定运动的轮廓图。 MC_VelocityProfile 命令一个时间速率以锁定运动的轮廓图。 MC_AccelerationProfile 命令一个时间加速度以锁定运动的轮廓图。 多轴功能块的通用设备   针对多轴协同运动定义了一个小型的功能块集。附加的应用特定的资料库扩展了该功能块集。目前已定义的功能块有: CamTableSelect 通过在相关表格上设置指针来选择CAM(凸轮)表格。 Camln 啮合CAM。 CamOut 立即脱离对主轴的啮合。 GearIn 命令从轴和主轴间的速度比。 GearOut 从轴脱离对主轴的从属。
连续功能图 使用顺序功能图(SFC)实现顺序步的技术要求是较传统的方法。 SFC再配置了时序图。包括以下几个步骤: 第一步:启动,例如打开电源 第二步:向钻孔位置移动,钻头开始旋转。这样在到达指定位置前就能完全进入运行状态,然后检验是否完成这两项操作。 第三步:钻孔 第四步:钻孔结束后,需等待一系列的连续操作以清除孔中的填充物。 第五步:钻头返回起始位置,关闭主轴。完成返回移动和停止主轴两者,这时我们可以重新启动一系列步骤。 认证   顺应性规则和认证也包括在文件中。基本上是自认证,根据每个供应商发布在PLCopen网站www.plcopen.org上的结果。被认证的公司允许使用下面的图标,并附上编号、日期和所支持的顺从性功能块的数量。
任务工作小组目前的结果   此文
投诉建议

提交

查看更多评论
其他资讯

查看更多

智光节能内蒙古阿拉善左旗瀛海建材余热发电机组首次启动成功

智光电气台州电厂给水泵系统节能改造项目成功投运

智光节能荣登2014年度全国节能服务公司百强榜第五位

索引程序编程凸轮表

奥越信300系列PLC手册