CN113759852B - 自动化控制用的编程方法、编程语言、作业方法和作业系统 - Google Patents
自动化控制用的编程方法、编程语言、作业方法和作业系统 Download PDFInfo
- Publication number
- CN113759852B CN113759852B CN202111089522.XA CN202111089522A CN113759852B CN 113759852 B CN113759852 B CN 113759852B CN 202111089522 A CN202111089522 A CN 202111089522A CN 113759852 B CN113759852 B CN 113759852B
- Authority
- CN
- China
- Prior art keywords
- motor
- motion
- main controller
- load
- control unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000033001 locomotion Effects 0.000 claims abstract description 87
- 230000006870 function Effects 0.000 claims abstract description 58
- 230000008569 process Effects 0.000 claims description 52
- 230000009471 action Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 8
- 239000000203 mixture Substances 0.000 claims description 2
- 239000003153 chemical reaction reagent Substances 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 5
- 239000002173 cutting fluid Substances 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 239000007788 liquid Substances 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 238000005553 drilling Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000003801 milling Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000010355 oscillation Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000005119 centrifugation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000000465 moulding Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 238000007711 solidification Methods 0.000 description 1
- 230000008023 solidification Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Feedback Control In General (AREA)
Abstract
本说明书提供了自动化控制用的编程方法、编程语言、作业方法和作业系统,其中,自动化控制用的编程方法,包括以下步骤:确定各个电机的物理拓扑关系,所述物理拓扑关系包括电机和模块化控制单元的对应关系以及由电机的负载类型拓扑得到的电机的运动规则,基于电机的运动规则生成电机运动指令;基于电机运动指令、设备物理结构特征和物理拓扑关系生成主控制器用的调用函数。本发明适应面更加广,其适应于复杂的数字化工厂以及复杂的自动化机械设备结构,而不仅仅适用于机床的控制。本发明是针对电机控制驱动轴的控制,结合控制驱动轴的联动插补算法,适用更加灵活。
Description
技术领域
本申请涉及自动化控制技术领域,尤其涉及一种自动化控制用的编程方法、编程语言、自动化控制用的作业方法和作业系统。
背景技术
目前,现有的传统的自动化工厂一般采用三级架构。参照图1所示,传统的自动化工厂包括诸如PLC等控制器(第一级)、各个CNC机构(第二级)和多个功能已经被限定的轴组合。该类传统的自动化工厂二次开发采用的是主流的PLC(DCS)+CNC的G代码编程的方式。
显然,现有的传统的自动化工厂具有以下缺点:
1、编程过程是一个繁琐的计算验证过程;
2、CNC的G代码是各个转轴功能固定的零件加工代码,并且开关量/刀库都是固定的,只是适用于特定拓扑结构的机床/加工中心;不能用在机床/加工中心之外的负载上。
现有的传动设备也一般采用三级架构,参照图2所示,现有的传动设备一般包括诸如PLC等控制器(第一级)、各个电机驱动器(第二级)、各个电机。
显然,目前的传动设备具有以下缺点:
1、需要采用PLC编程,编程过程是一个繁琐的计算验证过程。针对每个目标控制都需要从人为计算,需要在人为计算后在程序中完成对拓扑信息的适配,容易出错,开发效率低。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本说明书目的在于提供一种自动化控制用的编程方法、编程语言、自动化控制用的作业方法和作业系统,以解决了上述技术问题中的至少一种。
本申请提供了一种自动化控制用的编程方法,包括以下步骤:
确定各个电机的物理拓扑关系,所述物理拓扑关系包括电机和模块化控制单元的对应关系以及由电机的负载类型拓扑得到的电机的运动规则,基于电机的运动规则生成电机运动指令;基于电机运动指令、设备物理结构特征和物理拓扑关系生成主控制器用的调用函数。
优选地,所述负载类型拓扑包括负载的动作属性、负载的目标位置类型、补偿规则中的至少一个。
优选地,所述负载的动作属性表示对电机的机械结构类型的抽象;所述负载的目标位置类型表示根据机械结构类型的特点,抽象出目标位置类型;所述补偿规则表示结构偏心所导致的补偿参数。
优选地,对可编程辅助装置的运行参数、开闭条件进行设置,从而将可编程辅助装置作为等效控制开关。
本申请实施例公开了一种自动化控制用的编程方法,包括:
将工艺流程分为多个工作模块;
针对各个工作模块生成主控制器用的调用函数,其中调用函数包括各个工艺函数块;
每个工艺函数块由各个工作模块下的电机的运动指令集合组成。
本申请实施例公开了一种自动化控制用的编程语言,包括:
设备拓扑描述文件和编程代码文件,其中,所述设备拓扑描述文件表示自动化设备特性;所述编程代码文件基于工艺需求输入,其中,所述设备拓扑描述文件包括电机和模块化控制单元的对应关系以及由各个电机的负载类型拓扑得到的各个电机的运动规则。
优选地,所述设备拓扑描述文件包括由电机的运动规则而生成模块化的电机运动指令。
本申请实施例公开了一种自动化控制用的作业方法,包括以下步骤:
输入负载的工艺需求;
根据加工的目标工艺的需求,主控制器加载对应工艺需求的编程代码文件;
编程代码文件的主程序函数调用对应工艺用得到的调用函数;所有的函数都会被编译系统编译成电机的运动指令集合;
主控制器从主程序函数的入口地址开始执行电机的运动指令集合,并根据设备描述文件把电机的运动指令集合解析为宏观指令;
主控制器把宏观指令下发给目标电机对应的模块化控制单元。
本申请实施例公开了一种自动化控制系统,包括主控制器和模块化控制单元,所述主控制器用于根据负载的工艺需求生成宏观指令,所述主控制器用于将宏观指令发送至与工艺需求对应的模块化控制单元,所述模块化控制单元根据宏观指令生成与工艺需求对应的电机的驱动指令。
优选地,包括多个可编程速度控制部件,括至少一个可编程辅助装置,所述主控器通过通讯线路与所述可编程辅助装置电性连接。本申请实施例相对于传统的CNC结构:
1)本发明适应面更加广,其适应于复杂的数字化工厂以及复杂的自动化机械设备结构,而不仅仅适用于机床的控制。
2)本发明是针对电机控制驱动轴的控制,结合控制驱动轴的联动插补算法,适用更加灵活(各个轴的功能都可以根据需要灵活编程,而不像CNC那样给定死)。
本申请实施例相对复杂的设备架构:
1)本发明的控制对象是一个一个的物理轴(有拓扑信息),从而只需要把目标的物理拓扑给出,则可以实现对目标位置的精确抵达。而传统的PLC架构则没有拓扑信息,针对每个物理轴的目标控制都需要从拓扑开始计算,在程序中完成对拓扑信息的适配,容易出错,开发效率低。
2)特别是在工艺调整的调试阶段,需要对设备进行大量的修改与适配,本发明可以使得开发人员集中精力在工艺的调试上,而不是复杂的拓扑计算上。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了现有技术中的自动化工厂的架构示意图。
图2示出了现有技术中的传动设备的架构示意图。
图3示出了本申请实施例中的自动化控制系统的架构示意图。
图4示出了电机的拓扑信息的原理示意图。
图5示出了模块化控制单元的原理示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
本申请提供了一种自动化控制用的编程方法,包括以下步骤:
确定各个电机的物理拓扑关系,所述物理拓扑关系包括电机和模块化控制单元的对应关系以及由电机的负载类型拓扑得到的电机的运动规则,基于电机的运动规则生成电机运动指令;基于电机运动指令、设备物理结构特征和物理拓扑关系生成主控制器用的调用函数。具体的,参照图3所示,本申请实施例公开了一种自动化控制系统,包括用于驱动至少一个负载动作的多个驱动轴、主控制器、至少一个模块化控制单元、多个电机;其中,每个所述模块化控制单元包括接口插补层和包括多个驱动模块的驱动层,每个所述驱动模块与所述接口插补层电性连接,各个所述驱动模块与与其对应的所述电机交互电性连接;每个电机用于驱动与其对应的所述驱动轴;
所述接口插补层在接收到由所述主控制器发出的宏观指令后生成对应于各个所述驱动轴对应的驱动模块的微观指令,所述驱动模块在接收到由所述接口插补层发出的微观指令生成对应于各个所述驱动轴的驱动指令,所述电机在接收到所述驱动指令后控制与驱动指令对应的驱动轴。
在本实施方式中,各个电机的物理拓扑关系包括两个方面,一方面是电机与所从属的模块化控制单元的对应关系,这样主控制器可以对与电机对应的模块化控制单元下发正确的指令。即,可以将各个负载的各个动作、电机、模块化控制单元和主控制器通过寻找目标地址方式对应起来。
另一方面是由各个电机的负载类型拓扑得到的各个电机的运动规则。负载类型拓扑参照图4所示,表示了电机运动部件场景的抽象,是电机运动指令的基础。
其中,
所述负载的动作属性表示对电机的机械结构类型的抽象;所述负载的目标位置类型表示根据机械结构类型的特点,抽象出目标位置类型;所述补偿规则表示结构偏心所导致的补偿参数。
其中,负载的动作属性可以包括但不限于直线型负载、圆弧形负载等多种运动模式。
负载的目标位置类型可以为固定的、也可以可变的,也可以根据检测得到的等。例如,以直线类型负载举例,目标位置类型可以包括但不限于:
a)固定的绝对位置:比如就是让电机A运动到10.00mm这个坐标(相对于电机的零点);
b)固定的相对位置:比如让电机A在当前位置的基础上,向前再运动5.00mm
c)基于特定工装的特定位置:比如让电机A(工装坐标的X轴),移动到M行*N列工装的第(X,Y)个元素的上方,其负责的是X轴的移动。
d)目标位置可变:比如,在程序中,有一个函数,根据数控程序的执行,实时更新A轴的目标位置。
e)目标位置检测得到:比如,把A轴移动到B的位置,那个B是通过超声波或者视觉检测,计算出的某个工装(工件)的某个属性(比如,试杯中的液面高度),然后生成的目标位置。
所述补偿规则表示结构偏心所导致的补偿参数。例如,对于直线型负载的形状补偿,对于直线型负载的形状补偿,则不论其目标位置多少,其物理结构决定的补偿量,比如因为机械臂的形状偏心,结果产生的补偿量;假设其为X,则如果你想让机械臂走到Z坐标,则试剂电机部件需要移动到Z-x坐标,实际执行部的终端就到了这个位置了。
由物理关系拓扑中的负载类型拓扑是生成电机的运动规则的基础。具体到某个电机,可能有以多种运动规则的多个不同的目标位置。所以把这个电机相关的目标位置的运动规则以枚举列表的方式设定好。然后调用电机的运动指令的时候,只需要指定该电机的第几号目标位置,则主控制器可以自动根据负载类型拓扑解析出电机的目标位置。
电机的运动指令在经过电机的运动规则构型之后,将对目标对象的动作要求转换为电机的运动指令语言。例如,需要将机械臂从位置A移动至位置B,那么在解析过使该机械臂移动的电机的运动规则后,转化为该电机的指令语言,即,使该电机以某种移动速度,从位置D(对应于机械臂位置A)移动至位置E(机械臂位置B)。当然,电机的运动指令涵盖了多个不同电机的运动可能,也涵盖了多个电机的不同运动规则下的指令。
设备物理结构特征表示设备的自身属性。例如,设备物理结构特征可以是指的比如一台食品安全检测设备,该设备的自身结构。比如,该设备包括10个坑位的转盘。每个转盘之间的间距为36°。坑位所在的圆直径为50厘米。这些结构参数的组成构成了设备物理结构特征。
调用函数基于电机运动指令、设备物理结构特征和物理拓扑关系生成的一个总的指令模块。
例如,食品安全检测设备的坑位用于盛放需要检测的试杯;加试剂的时候,需要把对应的试杯的坑位移动到A点。然后有一个机械手从试剂瓶中取出2ml的试剂,移动到A点上方,把试剂滴注到试杯中。
这样加试剂的操作的调用函数就变成如下电机运动指令的集合:1.首先,把转盘的对应试杯的位置移动到A点;2.在转动转盘的同时,把加试剂的机械臂的电机驱动起来,让他移动到对应的试剂瓶的上方。3.加试剂的机械臂下沉入试剂瓶中,检测的液位以下5mm的高度。4.从试剂瓶中抽取2ml的试剂。5.试剂的机械臂上升到正常工位。6.加试剂的机械臂移动到A点上方。7.把抽取的试剂滴到试杯中去。
这个机构有5个电机实现。转盘有个驱动电机a;机械臂有一个在水平面运动的X,Y两个轴的驱动电机(电机b,c);机械臂有一个在竖直方向运动的Z轴驱动电机(电机d);机械臂还有一个转动抽取装置(相当于一个螺杆结构)的抽取电机(电机e)。
由此解析得到,步骤1,对应电机a动作;步骤2,对应电机b,c动作;步骤3,对应电机d动作;步骤4,对应电机e动作;步骤5对应的电机d动作;步骤6对应的电机b,c动作;步骤7对应的电机e动作。
再对各个步骤下的电机的运动规则进行计算,基于各个电机的运动规则生成各个电机运动指令。再将各个电机的运动指令进行汇总形成模块化的主控制器用的调用函数。
再以某个工装举例,需要将某个某个机械臂移动到某个工装的特定位置,可以定义工装为一个N行*M列的点的矩阵,移动至该工装的移动区域(X,Y)元素的上方。具体的,
控制系统则可以把移动到工装(X,Y)元素上方的具体坐标计算出来,生成坐标B则变成:把机械臂从A位置移动到B位置。当然的,在其他可选的实施方式中,工艺需求可以是针对负载的位置要求,也可以是针对负载的转速,运动轨迹,运动时间,动作顺序等动作要求。
对于该工装被一个驱动电机在轨道上拖动的情况,则需要获取用于驱动该工装移动的电机,并且将驱动该工装移动的电机以及拖动轨道的参数输入到设备拓扑描述文件中。
当前被移动电机的负载类型拓扑中负载的动作属性为直线运动。根据工艺需求,负载的目标位置类型为固定的。由此,可以以如下步骤生成电机的运动规则:
首先,确定工装的驱动轨道0点相对被移动电机坐标系0点的相对位置,以及该工装驱动轨道相对于当前被移动电机轨道的夹角;该工装沿驱动轨道0点的移动距离;然后计算出工装的0点相对于被移动电机坐标系0点的实际位置;
然后计算出该工装矩阵元素(X,Y)对工装0点的位置偏移,最终考虑到补偿量,最终生成移动电机的移动绝对位置。
在编程中,只要指定目标为工装的点矩阵的(X,Y)元素中的特定一个,主控制器就可以通过调用函数计算得到当前移动电机的目标位置,然后主控制器将基于运动指令解析出的宏观指令发送给模块化控制单元,然后模块化控制单元在解析和接收反馈数据后将控制指令转化为对对应于工装移动的电机的驱动指令。
优选地,运动规则函数还可以包括对于直线型负载的约束,长度限位,位置选择,形状补偿(实际目标的0点考虑到偏移的因素,与电机的0点会有偏差的);电子齿轮等,这都是直线型负载的基于实际形状的约束,从而实现对负载的安全控制。
下面以食品检测设备为例,可以将食品检测分为这几个步骤:取样,加试剂,震荡,离心,再取样等每个操作都需要多个电机配合完成。电机的动作顺序取决于结构的设计。
为了适配这种情况,我们可以做取样,加试剂,震荡,离心等子程序,这些子程序根据设备的结构不同实现方法不同。而各个子程序之间的工艺顺序可以根据实际需要进行修改。各个子程序内的具体工艺可以根据需要进行修改。在使用时,我们调用通用的调用函数就行了。
具体到取样,首先要把试管从一个杯架(可以想象有N行乘以M列,可以放多个试管)中取出来,放到一个转盘(有N个坑位放多个试管)中。编程的时候,调用的运动指令指定杯架的行号与列号,主控制器通过调用函数即可自动计算出机械手所需要移动的目标位置,从而生成宏观指令
本申请实施例公开了一种自动化控制用的编程方法,包括:
将工艺流程分为多个工作模块;
针对各个工作模块生成主控制器用的调用函数,其中调用函数包括各个工艺函数块;
每个工艺函数块由各个工作模块下的电机的运动指令组成。
例如,以食品检测为例,可以把工艺流程分解为多个基本的工艺函数块(比如震荡/离心/取液/加料等),每个工艺函数块都基于各个电机的运动指令来实现。
工艺流程就变成了工艺函数块的组合以及参数的设定(比如,震荡10分钟还是2分钟等;切削的速度等)。
参数可以根据需要人工输入,或者由计算或检测或数据库等获取而得。
本申请实施例还公开了一种自动化控制用的编程语言,包括:
设备拓扑描述文件和编程代码文件,其中,所述设备拓扑描述文件表示自动化设备特性;所述编程代码文件基于工艺需求输入,其中,所述设备拓扑描述文件包括电机和模块化控制单元的对应关系以及由各个电机的负载类型拓扑得到的各个电机的运动规则。所述编程代码文件就包括主控制器调用函数的实现,以及调用主控制器调用函数的主执行函数。本申请实施例采用该编程语言的作业方法,包括以下步骤:
输入负载的工艺需求;
根据加工的目标工艺的需求,主控制器加载对应工艺需求的编程代码文件;
编程代码文件的主程序函数调用对应工艺用得到的调用函数;所有的函数都会被编译系统编译成电机的运动指令集合;
主控制从主程序函数的入口地址开始执行电机的运动指令集合,并根据设备描述文件把电机的运动指令集合解析为宏观指令;
主控制器把宏观指令下发给目标电机对应的模块化控制单元。
优选地,该自动化控制系统可以包括至少一个可编程辅助装置。主控制器通过诸如标准的modbus协议等通讯线路对可编程辅助装置的控制装置(例如,变频器)进行控制。可编程辅助装置可以为包括变频器的风机、切屑液供给装置、高压泵等该自动化控制系统的辅助装置。
在编程时,可以将该可编程辅助装置的运行参数进行设置,并且将某些工艺条件或者动力部的运行情况等设定该可编程辅助装置的开闭条件。例如,可以将切屑液的流速设定为固定值,或者可以设定为根据某检测参数而变化的浮动值(参数表),然后该切屑液供给装置的启动条件为某电机的启动,而该切屑液供给装置的关闭条件就是某电机的停止运行。那么该切屑液供给装置的控制条件就可以简化为一个等效控制开关。
相对于传统的CNC结构:
1)本发明适应面更加广,其适应于复杂的数字化工厂以及复杂的自动化机械设备结构,而不仅仅适用于机床的控制。
2)本发明是针对电机控制驱动轴的控制,结合控制驱动轴的联动插补算法,适用更加灵活(各个轴的功能都可以根据需要灵活编程,而不像CNC那样给定死)。
相对复杂的设备架构:
1)本发明的控制对象是一个一个的物理轴(有拓扑信息),从而只需要把目标的物理拓扑给出,则可以实现对目标位置的精确抵达。而传统的PLC架构则没有拓扑信息,针对每个物理轴的目标控制都需要从拓扑开始计算,在程序中完成对拓扑信息的适配,容易出错,开发效率低。
2)特别是在工艺调整的调试阶段,需要对设备进行大量的修改与适配,本发明可以使得开发人员集中精力在工艺的调试上,而不是复杂的拓扑计算上。
该自动化控制系统中的主控制器根据需要可以为具有一定计算能力的服务器或者能够进行云计算的云端服务器。在本实施方式中,模块化控制单元的数量为多个。每个所述模块化控制单元包括接口插补层和包括多个驱动模块的驱动层。其中,每个模块化控制单元中的接口插补层可以通过统一的通讯协议接口与控制器进行信息交互。例如,控制器可以通过通讯总线(可以是通用总线,或者定制化总线)向各个模块化控制单元发送宏观指令。具体的,宏观指令可以为控制器通讯总线(可以是通用总线,或者定制化总线)向模块化控制单元发出的动力部联动状态、联动的插补规则,目标位置、目标速度、传感器配置、开关量比值等。
在其他可选的实施方式中,驱动轴也可以为其他可以驱动的动力部。
参照图5所示,各个模块化控制单元的接口插补层可以接收由控制器发出的宏观指令,并进行解析,从而根据宏观指令得到该模块化控制单元管理下的各个动力部的联动规则和运动指令。其中,联动规则包括各个运动部的联动轴的选择、联动的插补规则和联动速度。所述动力部的运动指令包括所述动力部的目标位置、运动速度以及运动条件命令的一个或多个。运动条件指令可以包括比如运行,停机,找零点等指令,还包括一些控制特性,比如限制电流不超过多少等。当然的,各个模块化控制单元也可以通过通讯总线(可以是通用总线,或者定制化总线)向主控制器反馈各类信息,例如,可以为各个模块化控制单元、各个模块化控制单元下属的各个动力部的各种信息,更具体的,可以为各个模块化控制单元获取下属的动力部的运行状态、传感器状态、开关量状态等。
参照图4所示,每个所述模块化控制单元内部可以集成有多个驱动模块。各个驱动模块可以通过类似PCI总线之类的高速总线与接口插补层高度集成,从而整个接口插补层能够像直接控制自身硬件一样,直接驱动模块化控制单元的驱动模块。每个模块化控制单元的接口插补层均集成所有的插补算法,但是所有的插补算法对所有的动力部都是可以灵活选择的。
当主控制器给出插补规则时,接口插补层可以根据插补算法,来实现对所有动力部的插补控制。这些插补算法包括但不限于直线插补、圆弧插补、B样条插补、以及扩展到N个轴的机床、机器人更复杂的插补算法。比如,可以根据实际需要,选在1、2号驱动轴(动力部)联动走圆弧插补,也可以选择1、2、3号驱动轴(动力部)进行圆球的插补等。而这些插补组合的方式只是依据主控制器对各个动力部的设定和选择。即,接口插补层可以结合插补算法以及宏观指令,生成针对各个动力部的微观指令,微观指令可以表示该动力部当前计算周期的位置、速度、加速度中的至少一个,和/或,下一个计算周期的位置、速度、加速度中的至少一个。
各个驱动模块能接收由接口插补层发出的微观指令。各个驱动模块还可以获取到位置控制相关的要求实时性非常强的传感信息,传感信息可以通过位置传感器或限位开关等来获取到,以便于进行实时性非常强的逻辑控制、限位保护、0点检测、位置检测等,辅助位置、速度的控制。各个驱动模块还具有与位置控制相关的,要求实时性非常强的数字量输出接口。数字量输出接口包括但不限于开路集电极输出、继电器输出等,从而对各个对应的驱动部(诸如电机或阀或开关)进行控制。由此,各个驱动模块可以根据接收到的微观指令和通过传感器或位置开关采集到的传感信息,进行诸如位置环计算、速度环计算、电流环计算,从而对应生成各个驱动指令,并通过对应的驱动接口向电机输出,从而使所述电机正确的驱动对应的动力部。
由此,各个模块化控制单元的各个动力部可以根据设计需要进行柔性设计,例如各个动力部可以单独运动,或者,各个动力部可以某几个动力部同时或单独运动,再者,各个动力部也可以某几个动力部按照约定的插补规则进行联合动作。
显然,本申请实施例中的自动化控制系统更加通用,可以把模块化控制单元给扩展到各种加工设备。本申请实施例中的自动化控制系统可以应用在自动化工厂或者传动设备或者其他自动化集成较高的场景下。
相对传统的自动化工厂,本发明中的模块化控制单元把辅助传统机构、各个动力部等其他控制元件统一管理。而不是像现有技术中的CNC那样,钻床/铣床/钻铣加工中心等,物理形态固定控制单元就完全固定了;不具备很强的通用性。
显然,本申请实施例中的各个功能理论上是可以根据主控制器调整和选择的。即相对传统的自动化工厂,本发明的控制轴采用模块化的标准设备,而不是固定功能与插补关系的轴,可以灵活的改变轴的运行关系。这不同于现有技术中的传统的自动化工厂以及CNC,对于CNC来说,只要把机床给做好了,逻辑上各个轴的功能就固定了,从而能对应G代码的执行。
再者,采用本申请实施例中的自动化控制系统很容易实现对各种复杂机械机构的可编程扩展。对于现有技术中的CNC加工中心而言,很难针对造纸机械/包装机械等复杂的机械进行扩展。
综上,相对于传统的数字工厂,本申请实施例中的自动化控制系统具有以下优点:
对于产线中的加工设备以及辅助传动设备进行统一的模块化管理,从而消除了单个设备的自动化孤岛的现象;
对于产线中的各个轴的驱动更加灵活,而不是像传统的数字工厂中CNC的轴就是功能固定,则在进行新产线的设计的时候,可以采用复用驱动/复用轴的方式,进行更加灵活的产线设计。
对于大量的辅助性功能部件,统一按照等效开关量进行建模,降低了控制器的设计难度。
采用模块化设备固化插补算法的方式,编程更加灵活,产线的调试更加灵活。
相对于复杂的传动设备的架构,本发明把电机位置驱动模块化,并且多个驱动轴的驱动器进行集中的配置管理,从而降低了PLC的编程难度。
综上,相较于相对复杂的设备架构,本申请实施例中的自动化控制系统具有以下优点:
采用模块化的架构,内置了较复杂的运动控制算法,从而大大简化了PLC的编程的难度。采用模块化的编程风格,便于进行编程/调试/工艺的调整。
在一个优选的实施方式中,可以将对于整个自动化控制系统系统中的开关量,或者可以需要自行调节以达成某一控制目标的辅助系统(例如,包括但不限于风量控制、温度控制、切削液控制、变频主轴的旋转控制等)等效为开关量控制(其开关量提供几个共用的参数,供控制器根据工艺需要进行调节),由主控制器进行统一集中控制。
在另一个可选的实施方式中,该自动化控制系统在整个工作过程中需要集中采集的数据(包括但不限于整体或者局部的图像数据、传感器数据等),可以由主控制器进行数据的采集,并主控制器对工艺进行调整。
本申请实施例还公开了一种自动化控制方法,包括以下步骤:
主控制器生成宏观指令,其中,宏观指令包括各个动力部的联动规则和对应的运动指令;
与各个动力部分别对应的模块化控制单元根据宏观指令生成与各个动力部分别对应的各个电机的控制指令。
优选地,步骤“与各个动力部分别对应的模块化控制单元根据宏观指令生成与该动力部对应的电机的控制指令”包括:
与各个动力部分别对应的模块化控制单元根据宏观指令和与该动力部对应的电机的实时信息生成与该动力部对应的电机的控制指令。
优选地,步骤“模块化控制单元根据宏观指令生成与各个动力部分别对应的各个电机的控制指令”包括:
模块化控制单元中的接口插补层在接收到由所述主控制器发出的宏观指令后生成对应于各个所述动力部对应的驱动模块的微观指令;
根据被选取到的所述动力部的目标位置和与被选取到的所述动力部相关的电机的实际信息,生成与各个被选取到的动力部对应的电机的微观瞬时指令。
优选地,步骤“主控制器生成宏观指令”包括:响应于待加工零件的工艺需求,在多个驱动轴中选至少一个,以及生成选取到的驱动轴的插补规则和驱动轴的目标位置。
以汽车零件A为例,主控制器在分析过待加工部件和汽车零件A成型部件的工艺过程后,生成了宏观指令。宏观指令可以包括在多个驱动轴中选取了驱动轴1、驱动轴4、驱动轴9以及各个驱动轴的目标位置、联动规则、联动速度等。
在本实施方式中,驱动轴1(电机1)和驱动轴4(电机4)从属的模块化控制单元为模块化控制单元A;驱动轴9(电机9)从属的模块化控制单元为模块化控制单元B。参照图5所示,换言之,电机从属模块化控制单元的从属关系,也就是物理拓扑。通过这方面的拓扑,编程的时候可以确定电机所属的模块化控制单元,以及电机在该控制模块的所属通道,从而实现对电机的精确控制。
模块化控制单元中的接口插补层在接收到由所述主控制器发出的宏观指令后生成对应于各个所述动力部的微观指令。在本实施方式中,模块化控制单元A中的接口插补层解析得到驱动轴1和驱动轴4在第1时间段做圆周插补动作;驱动轴4在第2时间段做直线位移动作。模块化控制单元B中的接口插补层解析得到驱动轴8和驱动轴9在第3时间段做圆弧插补动作。
驱动模块可以根据被选取到的所述动力部的微观指令、与被选取到的所述动力部相关的电机的实际信息以及电机的负载类型拓扑,生成与各个被选取到的动力部对应的电机的控制指令。
尽管本申请内容中提到不同的具体实施例,但是,本申请并不局限于必须是行业标准或实施例所描述的情况等,某些行业标准或者使用自定义方式或实施例描述的实施基础上略加修改后的实施方案也可以实现上述实施例相同、等同或相近、或变形后可预料的实施效果。应用这些修改或变形后的数据获取、处理、输出、判断方式等的实施例,仍然可以属于本申请的可选实施方案范围之内。
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。
上述实施例阐明的装置或模块等,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的实施方式包括这些变形和变化而不脱离本申请。
Claims (8)
1.一种自动化控制用的编程方法,其特征在于,包括以下步骤: 确定各个电机的物理拓扑关系,所述物理拓扑关系包括电机和模块化控制单元的对应关系以及由电机的负载类型拓扑得到的电机的运动规则;
主控制器对与电机对应的模块化控制单元下发正确的指令,将各个负载的各个动作、电机、模块化控制单元和主控制器通过寻找目标地址方式对应;所述负载类型拓扑包括负载的动作属性、负载的目标位置类型、补偿规则中的至少一个;所述负载的动作属性表示对电机的机械结构类型的抽象,具体包含直线型负载或圆弧形负载;所述负载的目标位置类型表示根据机械结构类型的特点,抽象出目标位置类型,具体包含固定的或可变的;所述补偿规则表示结构偏心所导致的补偿参数;
基于电机的运动规则生成电机运动指令;将其中电机相关的目标位置的运动规则以枚举列表的方式进行设定,然后调用电机的运动指令的时候,只需要指定该电机的第几号目标位置,则主控制器可以自动根据负载类型拓扑解析出电机的目标位置;
基于电机运动指令、设备物理结构特征和物理拓扑关系生成主控制器用的调用函数,其中设备物理结构特征表示设备自身的属性, 包括设备的组成以及各个组成部件的结构特征, 组件之间的空间分布关系;解析电机运动指令集合,得到对应多个电机的动作步骤,再对各个步骤下的电机的运动规则进行计算,基于各个电机的运动规则生成各个电机运动指令;将各个电机的运动指令进行汇总形成模块化的主控制器用的调用函数;
主控制从主程序函数的入口地址开始执行电机的运动指令集合,并根据设备描述文件把电机的运动指令集合解析为宏观指令,主控制器把宏观指令下发给目标电机对应的模块化控制单元;其中,每个所述模块化控制单元包括接口插补层和包括多个驱动模块的驱动层,每个模块化控制单元的接口插补层均集成所有的插补算法。
2.根据权利要求1所述的自动化控制用的编程方法,其特征在于,对可编程辅助装置的运行参数、开闭条件进行设置,从而将可编程辅助装置作为等效控制开关。
3.一种根据权利要求1所述的自动化控制用的编程方法,其特征在于,包括: 将工艺流程分为多个工作模块; 针对各个工作模块生成主控制器用的调用函数,其中调用函数包括各个工艺函数块; 每个工艺函数块由各个工作模块下的电机的运动指令集合组成。
4.根据权利要求1所述的自动化控制用的编程方法,其特征在于,包括: 设备拓扑描述文件和编程代码文件,其中,所述设备拓扑描述文件表示自动化设备特 性;所述编程代码文件基于工艺需求输入,其中所述设备拓扑描述文件包括电机和模块化 控制单元的对应关系以及由各个电机的负载类型拓扑得到的各个电机的运动规则。
5.根据权利要求4所述的自动化控制用的编程方法,其特征在于,所述设备拓扑描述文件包括由电机的运动规则而生成模块化的电机运动指令。
6.一种基于权利要求1所述的自动化控制用的编程方法的自动化控制用的作业方法,其特征在于,包括以下步骤: 输入负载的工艺需求; 根据加工的目标工艺的需求,主控制器加载对应工艺需求的编程代码文件; 编程代码文件的主程序函数调用对应工艺用得到的调用函数;所有的函数都会被编译 系统编译成电机的运动指令集合; 主控制从主程序函数的入口地址开始执行电机的运动指令集合,并根据设备描述文件 把电机的运动指令集合解析为宏观指令; 主控制器把宏观指令下发给目标电机对应的模块化控制单元。
7.一种基于权利要求1所述的自动化控制用的编程方法的自动化控制系统,其特征在于,包括主控制器和模块化控制单元,所述主控制器 用于根据负载的工艺需求生成宏观指令,所述主控制器用于将宏观指令发送至与工艺需求 对应的模块化控制单元,所述模块化控制单元根据宏观指令生成与工艺需求对应的电机的驱动指令。
8.根据权利要求7所述的自动化控制系统,其特征在于,包括至少一个可编程辅助装置,所述主控制器通过通讯线路与所述可编程辅助装置电性连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111089522.XA CN113759852B (zh) | 2021-09-16 | 2021-09-16 | 自动化控制用的编程方法、编程语言、作业方法和作业系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111089522.XA CN113759852B (zh) | 2021-09-16 | 2021-09-16 | 自动化控制用的编程方法、编程语言、作业方法和作业系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113759852A CN113759852A (zh) | 2021-12-07 |
CN113759852B true CN113759852B (zh) | 2022-12-06 |
Family
ID=78796115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111089522.XA Active CN113759852B (zh) | 2021-09-16 | 2021-09-16 | 自动化控制用的编程方法、编程语言、作业方法和作业系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113759852B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116300596B (zh) * | 2023-03-03 | 2023-11-14 | 无锡积塔技术有限公司 | 一种模块化的自动化控制方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111903220B (zh) * | 2009-12-31 | 2012-11-21 | 中国人民解放军海军工程大学 | 一种带双环网的直线电机实时监控系统 |
CN102013993B (zh) * | 2010-10-14 | 2014-06-11 | 中兴通讯股份有限公司 | 物理拓扑使用管理方法和系统 |
CN105692027A (zh) * | 2016-02-03 | 2016-06-22 | 沈阳昊星科技有限公司 | 一种平衡式立体循环仓储装置的智能控制系统 |
CN108170084A (zh) * | 2016-12-07 | 2018-06-15 | 杨新高 | 一种农机设备自动化控制系统及产品 |
CN109621448A (zh) * | 2018-12-29 | 2019-04-16 | 上海庆科信息技术有限公司 | 一种玩具车编程控制方法、装置及可编程玩具车 |
CN109782720A (zh) * | 2019-01-28 | 2019-05-21 | 唐志 | 由工艺逻辑拓扑图直接实现控制的方法 |
CN111301552B (zh) * | 2020-02-26 | 2022-03-08 | 佛山职业技术学院 | 一种机器人腿部动力系统及其控制方法 |
-
2021
- 2021-09-16 CN CN202111089522.XA patent/CN113759852B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113759852A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Grigoriev et al. | Scalable open cross-platform kernel of PCNC system for multi-axis machine tool | |
Kadir et al. | Towards high-fidelity machining simulation | |
Rauch et al. | An advanced STEP-NC controller for intelligent machining processes | |
Xu et al. | Making CNC machine tools more open, interoperable and intelligent—a review of the technologies | |
Ramesh et al. | Intelligent automation of design and manufacturing in machine tools using an open architecture motion controller | |
Nagata et al. | Development of CAM system based on industrial robotic servo controller without using robot language | |
CN101739865A (zh) | 一种基于plc的教学用二维运动示教平台及其实现方法 | |
CN101093392A (zh) | 基于计算机在线或离线方法控制的数控系统及运行方法 | |
CN113759852B (zh) | 自动化控制用的编程方法、编程语言、作业方法和作业系统 | |
CN106886197A (zh) | 控制机器实施加工的方法及其装置和应用 | |
CN106557072B (zh) | 数控加工设备执行程序的辅助编程方法 | |
Calabrese et al. | Design and realization of a STEP-NC compliant CNC embedded controller | |
CN113759851B (zh) | 自动化控制系统以及自动化控制方法 | |
CN106113044A (zh) | 工业应用教学机器人控制方法 | |
CN102650852B (zh) | 一种硬件在环数控系统控制结构的设计方法 | |
WO2017101700A1 (zh) | 与数控系统直接通讯的计算机辅助制造方法及装置和系统 | |
Krot et al. | Collaborative robot UR10 integration with CNC lathe Haas ST10 | |
Laguionie et al. | A multi-process manufacturing approach based on STEP-NC data model | |
Nikishechkin et al. | Development of a System for Collect and Process Information on the Operation of Technological Equipment in Digital Production | |
Freund et al. | A system to automate the generation of program variants for industrial robot applications | |
Habeeb et al. | A novel CNC system for turning operations based on a high-level data model | |
Laguionie et al. | Simulation and optimization in a multi-process environment using STEP-NC | |
Pasek | Challenges in the design of reconfigurable machine tools | |
Fahim et al. | The UniSet approach for the programming of flexible manufacturing cells | |
Russell et al. | The ADACS Implementation of the UTAP Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |