一种死锁避免控制方法、装置和自动化生产系统的制作方法

文档序号:6298914阅读:118来源:国知局
一种死锁避免控制方法、装置和自动化生产系统的制作方法
【专利摘要】在本发明中根据循环等待彼此所占用资源的工件,将自动化生产系统划分为一个或多个系统子模块。进而,为各个系统子模块构建死锁监控器,以进行死锁监控。系统的控制器根据各个监控器的状态和系统的当前状态输出控制指令,达到死锁避免的目的。在本发明中各系统子模块均是自动化生产系统的子集,因而构建各系统子模块死锁监控器的复杂性和难度要远小于构建系统集中式死锁监控器,从而提高了死锁监控建模和运算的效率。
【专利说明】一种死锁避免控制方法、装置和自动化生产系统
【技术领域】
[0001]本发明涉及自动生产领域,更具体的说是涉及一种死锁避免控制方法、装置和自动化生产系统。
【背景技术】
[0002]死锁是指两个或两个以上的进程在执行过程中,由于争夺共享资源而造成一种互相等待状态。在自动化生产系统中,死锁将会导致系统部分或全部出现瘫痪。
[0003]为了避免自动化生产系统出现死锁,本领域的技术人员基于自动机(一种描述系统动态行为的形式化建模工具)理论,通过对系统整体建模获得系统监控器,以达到死锁避免的目的。
[0004]然而随着系统规模的不断增加,现有的技术方案的由于受到系统规模的影响,建模和运算的效率低。

【发明内容】

[0005]有鉴于此,本发明提供一种死锁避免控制方法、装置和自动化生产系统,以提高自动化生产系统中死锁监控的建模和运算效率。
[0006]为实现上述目的,本发明提供如下技术方案:
[0007]一种死锁避免控制方法,所述方法应用于自动化生产系统,包括:
[0008]按照预设算法,确定自动化生产系统中循环等待彼此所占用资源的工件;
[0009]根据循环等待彼此所占用资源的工件,将自动化生产系统划分为若干个具有死锁倾向的系统子模块;
[0010]构建所述系统子模块各自的死锁监控器,对各个系统子模块进行实时监控;
[0011]根据所述死锁监控器的状态和当前自动化生产系统的状态,生成控制生产过程的控制指令。
[0012]优选的,所述确定自动化生产系统中循环等待彼此所占用资源的工件,包括:
[0013]构建自动化生产系统的关联矩阵,所述关联矩阵用于表征自动化生产系统中工件和资源的相互关系;
[0014]对所述关联矩阵进行自相关操作;
[0015]根据自相关操作结果确定循环等待彼此所占用资源的工件。
[0016]优选的,构建所述系统子模块各自的死锁监控器,包括:
[0017]按照自动机的建模方法,构建各个系统子模块的加工资源层自动机、工件层自动机以及约束层自动机;
[0018]对所述加工资源层自动机、所述工件层自动机以及所述约束层自动机进行与算法操作,得到所述系统子模块的死锁监控器。
[0019]优选的,构建各个系统子模块的加工资源层自动机的过程包括:
[0020]按照自动机的建模方式,对系统子模块中的各个加工资源建模,得到各个加工资源的自动机;
[0021]对各个加工资源的自动机进行或算法操作,得到系统子模块的加工资源层自动机。
[0022]优选的,构建各个系统子模块的工件层自动机的过程包括:
[0023]按照自动机的建模方式,对系统子模块中的各个工件建模,得到各个工件的工件自动机;
[0024]对同一类型工件的工件自动机进行或算法操作,构建工件类自动机;
[0025]对工件类自动机进行或算法操作,构建工件层自动机。
[0026]优选的,构建各个系统子模块的约束层自动机的过程包括:
[0027]按照自动机的建模方式,对系统子模块中的各个约束条件建模,得到各个约束条件对应的约束自动机;
[0028]对所述的约束自动机进行与算法操作,构建约束层自动机。
[0029]优选的,对同一类型工件的工件自动机进行或算法操作,构建工件类自动机之后,还包括:对所述工件类自动机的状态不确定转移性和冗余性进行处理。
[0030]一种死锁避免控制装置,包括:
[0031]按照预设算法,确定自动化生产系统中循环等待彼此所占用资源的工件的计算单元;
[0032]根据计算单元的计算结果,将自动化生产系统划分为若干个具有死锁倾向的系统子模块的模块划分单元;
[0033]构建所述系统子模块各自的死锁监控器的死锁监控器构建单元;
[0034]根据所述死锁监控器的状态和当前自动化生产系统的状态,生成控制生产过程的控制指令的指令输出单元。
[0035]优选的,所述计算单元包括:
[0036]构建自动化生产系统的关联矩阵的矩阵构建子单元,所述关联矩阵用于表征自动化生产系统中工件和资源的相互关系;
[0037]对所述关联矩阵进行自相关操作,并根据自相关操作结果确定循环等待彼此所占用资源的工件的计算子单元。
[0038]一种自动化生产系统,包括:数据采集设备、数据传输设备、PLC、内置有死锁避免控制装置的工控机以及服务器;
[0039]其中,所述数据采集设备,用于采集自动化生产系统的实时生产状态数据;
[0040]所述数据传输设备,用于将所述实时状态数据传输至所述PLC ;
[0041]所述PLC,用于将所述实时状态数据发送至所述工控机,并执行所述工控机输出的无死锁控制指令;
[0042]所述工控机,用于根据死锁监控器的状态和实时状态数据,生产无死锁控制指令;
[0043]所述服务器,用于实时所述实时状态数据的共享。
[0044]经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种死锁避免控制方法、装置和自动化生产系统。在本发明中根据循环等待彼此所占用资源的工件,将自动化生产系统划分为一个或多个系统子模块。进而,为各个系统子模块构建死锁监控器,以进行死锁监控。系统的控制器根据各个监控器的状态和当前系统的当前状态输出控制指令,达到死锁避免的目的。在本发明中各系统子模块均是自动化生产系统的子集,因而构建各系统子模块死锁监控器的复杂性和难度要远小于构建集中式死锁监控器,从而提高了建模和运算的效率。
【专利附图】

【附图说明】
[0045]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0046]图1示出了本发明一种死锁避免控制方法的一个实施例的流程示意图;
[0047]图2示出了本发明一种死锁避免控制方法的另一个实施例的流程示意图;
[0048]图3示出了本发明一种死锁避免控制装置的一个实施例的结构示意图;
[0049]图4不出了本发明一种自动化生产系统的一个实施例的结构不意图。
【具体实施方式】
[0050]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0051]自动机是通过状态以及转移等概念分析离散事件系统的演化过程。在实际的操作过程中,可用一个五兀组FA={2,Q, q0, δ (q, σ ) QmJ来描述。其中,Σ是一个有限输入字母表,每一个字母表示一个事件。Q是一个有限状态集,%是系统初始状态,且有% e Q,δ是状态转函数,可被定义为,QX Σ — Q,σ e Σ是一个输入字母表中的一个元素或者符合,也即一个事件,Qfflk为“标识”或“终止”状态集。
[0052]需要说明的是,为了能够利用多个简单自动机来描述复杂的离散事件动态系统,本领域的技术人员通常采用或运算来表示自动机FAl和自动机FA2之间的异步行为关系,采用与运算来表示自动机FAl和自动机FA2之间的同步行为关系。需要说明的是,自动机间的或运算和与运算的计算方法为现有技术在此不再做赘述。
[0053]实施例(一)
[0054]参见图1示出了本发明一种死锁避免控制方法的一个实施例的流程示意图。由图1可知,在本实施例中,该方法包括:
[0055]步骤101:按照预设算法,确定自动化生产系统中循环等待彼此所占用资源的工件。
[0056]需要说明的是,自动化生产系统发生死锁的必要条件为:
[0057]I)互斥性。当资源上的工件数量等于其最大资源容量时,该资源将不接受任何请求占用该资源的工件;
[0058]2)非抢占性。其它工件不能强行占有已被最大资源容量的工件所占用的资源;
[0059]3)条件等待性。工件将一直占据其正在占用的资源,直到其等待的资源被其它工件所释放;
[0060]4)循环等待性。存在循环等待彼此所占用资源的工件。
[0061]对于自动化生产系统来说,死锁的前三个必要条件通常都具备,因而本领域的技术人员可根据第四个必要条件,也就是循环等待性,来判断自动化生产系统是否有可能发生死锁。
[0062]当确定自动化生产系统中存在一组或多种循环等待彼此所占用资源的工件时,则确定该自动化生产系 统具有循环等待性,即有发生死锁的倾向。
[0063]步骤102:根据循环等待彼此所占用资源的工件,将自动化生产系统划分为若干个具有死锁倾向的系统子模块。
[0064]当在步骤101中确定自动化生产系统中存储一组或多种循环等待彼此所占用资源的工件时,将自动化生产系统划分为一个或多个系统子模块。其中,每个系统子模块中均包括:工件、加工资源、约束条件等。需要说明的是,在本发明中,系统中的有限缓冲区也被作为加工资源的一种。
[0065]步骤103:构建所述系统子模块各自的死锁监控器,对各个系统子模块进行实时监控。
[0066]步骤104:根据所述死锁监控器的状态和当前自动化生产系统的状态,生成控制生产过程的控制指令。
[0067]当向自动化生产系统中输入某个控制指令,该控制指令将被发送给所有死锁监控器中。若死锁监控器在该控制指令的驱动下状态发生变化,则其将向系统控制器发送一个无死锁的可控事件集,用于自动化生产系统下一个控制指令的生成;若状态未发生变化,则不发送可控事件集至系统控制器。进而系统控制器基于当前系统的实时状态及接收到的可控事件集,生成并发送一个控制指令用于对自动化生产系统生产过程的实时控制,直到生产结束。
[0068]由实施例(一)可知:本发明根据循环等待彼此所占用资源的工件,将自动化生产系统划分为一个或多个系统子模块。进而,为各个系统子模块构建死锁监控器,以进行死锁监控。由于在本发明中各系统子模块均是自动化生产系统的子集,因而构建各系统子模块死锁监控器的复杂性和难度要远小于构建集中式死锁监控器,从而提高了建模和运算的效率。
[0069]实施例(二)
[0070]参见图2示出了本发明一种死锁避免控制方法的另一个实施例的流程示意图。由图2可知,在本实施例中,该方法包括:
[0071]步骤201:构建自动化生产系统的关联矩阵,所述关联矩阵用于表征自动化生产系统中工件和资源的相互关系。
[0072]需要说明的是,若自动化生产系统中存在工件P」,此工件的先后相邻工序依次由资源Ril和Ri2来加工完成,则将资源Ri2称作资源Ril关于工件P]的后向资源,相应的,资源Ril称作资源Ri2关于匕的前向资源。可用关系式ri (Rn,Ri2)表示,具体有:
【权利要求】
1.一种死锁避免控制方法,所述方法应用于自动化生产系统,其特征在于,包括: 按照预设算法,确定自动化生产系统中循环等待彼此所占用资源的工件; 根据循环等待彼此所占用资源的工件,将自动化生产系统划分为若干个具有死锁倾向的系统子模块; 构建所述系统子模块各自的死锁监控器,对各个系统子模块进行实时监控; 根据所述死锁监控器的状态和当前自动化生产系统的状态,生成控制生产过程的控制指令。
2.根据权利要求1所述的方法,其特征在于,所述确定自动化生产系统中循环等待彼此所占用资源的工件,包括: 构建自动化生产系统的关联矩阵,所述关联矩阵用于表征自动化生产系统中工件和资源的相互关系; 对所述关联矩阵进行自相关操作; 根据自相关操作结果确定循环等待彼此所占用资源的工件。
3.根据权利要求1所述的方法,其特征在于,构建所述系统子模块各自的死锁监控器,包括: 按照自动机的建模方法,构建各个系统子模块的加工资源层自动机、工件层自动机以及约束层自动机; 对所述加工资源层自动机、所述工件层自动机以及所述约束层自动机进行与算法操作,得到所述系统子模块的死锁监控器。
4.根据权利要求3所述的方法,其特征在于,构建各个系统子模块的加工资源层自动机的过程包括: 按照自动机的建模方式,对系统子模块中的各个加工资源建模,得到各个加工资源的自动机; 对各个加工资源的自动机进行或算法操作,得到系统子模块的加工资源层自动机。
5.根据权利要求3所述的方法,其特征在于,构建各个系统子模块的工件层自动机的过程包括: 按照自动机的建模方式,对系统子模块中的各个工件建模,得到各个工件的工件自动机; 对同一类型工件的工件自动机进行或算法操作,构建工件类自动机; 对工件类自动机进行或算法操作,构建工件层自动机。
6.根据权利要求3所述的方法,其特征在于,构建各个系统子模块的约束层自动机的过程包括: 按照自动机的建模方式,对系统子模块中的各个约束条件建模,得到各个约束条件对应的约束自动机; 对所述的约束自动机进行与算法操作,构建约束层自动机。
7.根据权利要求5所述的方法,其特征在于,对同一类型工件的工件自动机进行或算法操作,构建工件类自动机之后,还包括:对所述工件类自动机的状态不确定转移性和冗余性进行处理。
8.一种死锁避免控制装置,其特征在于,包括:按照预设算法,确定自动化生产系统中循环等待彼此所占用资源的工件的计算单元;根据计算单元的计算结果,将自动化生产系统划分为若干个具有死锁倾向的系统子模块的模块划分单元; 构建所述系统子模块各自的死锁监控器的死锁监控器构建单元; 根据所述死锁监控器的状态和当前自动化生产系统的状态,生成控制生产过程的控制指令的指令输出单元。
9.根据权利要求8所述的装置,其特征在于,所述计算单元包括: 构建自动化生产系统的关联矩阵的矩阵构建子单元,所述关联矩阵用于表征自动化生产系统中工件和资源的相互关系; 对所述关联矩阵进行自相关操作,并根据自相关操作结果确定循环等待彼此所占用资源的工件的计算子单元。
10.一种自动化生产系统,其特征在于,包括:数据采集设备、数据传输设备、PLC、内置有权利要求8或权利要求9所述的死锁避免控制装置的工控机以及服务器; 其中,所述数据采集设备,用于采集自动化生产系统的实时生产状态数据; 所述数据传输设备,用于将所述实时状态数据传输至所述PLC ; 所述PLC,用于将所述实时状态数据发送至所述工控机,并执行所述工控机输出的无死锁控制指令; 所述工控机,用于根据死锁监控器的状态和实时状态数据,生产无死锁控制指令; 所述服务器,用于实时所`述实时状态数据的共享。
【文档编号】G05B19/418GK103699104SQ201310744989
【公开日】2014年4月2日 申请日期:2013年12月30日 优先权日:2013年12月30日
【发明者】杨宏兵, 孙承峰, 王明娣 申请人:苏州大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1