首页> 中国专利> 一种高效的单缸插销式多级顺序伸缩路径优化方法

一种高效的单缸插销式多级顺序伸缩路径优化方法

摘要

本发明涉及一种高效的单缸插销式多级顺序伸缩路径优化方法,属于单缸插销式多级顺序伸缩路径优化方法。通过计算所需最大行程、所需最小行程、运行流程判断,得出缩臂极限状态集;将得出的所有缩臂极限状态集按顺序伸缩的原则进行步序列举,需要步序最少的为最优缩臂极限状态集。本发明是通用、普适性算法,适用于n节伸缩臂、每节臂上有m个插销位置,算法逻辑清晰、表达明确、集成度高、自成体系,可以找到深度最优解,对是否为最优解具备评价标准,通常,优化力度达10%以上。

著录项

  • 公开/公告号CN106744389A

    专利类型发明专利

  • 公开/公告日2017-05-31

    原文格式PDF

  • 申请/专利权人 吉林大学;

    申请/专利号CN201611214033.1

  • 发明设计人 毛艳;成凯;

    申请日2016-12-22

  • 分类号B66C23/70(20060101);B66C23/693(20060101);

  • 代理机构22100 吉林长春新纪元专利代理有限责任公司;

  • 代理人魏征骥

  • 地址 130000 吉林省长春市前进大街2699号

  • 入库时间 2023-06-19 02:23:20

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-07-17

    授权

    授权

  • 2017-06-23

    实质审查的生效 IPC(主分类):B66C23/70 申请日:20161222

    实质审查的生效

  • 2017-05-31

    公开

    公开

说明书

技术领域

本发明提供一种单缸插销式多级顺序伸缩路径优化方法,单缸插销式多级顺序伸缩是以一节驱动缸顺序推动多节伸缩臂/套,每节臂/套上有数个销孔位置,臂节尾部的臂销与其外部臂节的销孔锁定,从而使伸缩臂/套逐级伸长到需求的长度。汽车起重机的单缸插销式多级伸缩臂是典型的多级顺序伸缩机构。

背景技术

“单缸插销式顺序伸缩”是指:用一个伸缩油缸,依次顶伸或回缩每个臂节到某个臂销孔位置,油缸的行程只有一节臂长。伸缩按照:“从外到内缩、从内到外伸”的原则。以五节伸缩臂为例,伸时按照第五、四、三、二、一节臂的顺序;缩时按照第一、二、三、四、五节臂的顺序,“先进后出”或“先出后进”,类似堆栈原理。如图1所示。

因为伸缩油缸的总行程等于一节臂长,可以用每节臂占用的油缸行程长度、同时也是该臂节的插销位置,表示臂节长度;而所有臂节长度的组合,即是臂长。如果用数字1、2、3、4分别表示油缸总行程的0%、45%、90%、100%,可用一个数组表示臂长、即臂长组合,也称臂长状态集。数组{1 1 1 1 1},表示五节臂全缩(见图1-a);数组{4 4 4 4 4}表示五节臂全伸(见图1-c);数组{3 3 2 2 1},表示有五节伸缩臂,从臂1开始,各节臂的伸出量分别是:90%,90%,45%,45%,0%油缸总行程(见图1-b)。

因此,顺序伸缩的特点:

(一):臂长是离散的组合值,是不连续的;

(二):臂长组合是有限的。例如:五节伸缩臂,每节臂上有四个销孔位置,则理论组合数为45=1024,即最多有1024种臂长。

(三):更换臂长麻烦,必须将臂节逐节全部缩回,然后逐节伸至新的臂长组合,因此伸缩效率低,速度慢。

实际上,更换臂长,从一个臂长组合切换到另一个臂长组合,有时候并不需要全缩吊臂,某些臂节位置可以保持,或者提前伸至目标位置,这样可以节省伸缩步数,缩短伸缩时间。

节省一步往往意味效率提升10%以上,因此,如何精简伸缩步数,提高伸缩效率,实现任意臂长组合伸缩路径优化,对顺序伸缩类问题非常有意义。

目前,顺序伸缩路径优化问题研究甚少,例如,单缸插销技术虽得到广泛运用,但是国内外主机厂都没有较好的路径优化方法。

文献1《单缸插销式伸缩臂轨迹的优化控制方法及控制系统》,公开号CN 101670984A。采用即时判断的方式,每次缩一节臂,程序判断该位置的油缸行程是否满足要求?若满足要求则可以保持前面臂节;若不满足长度要求,必须再缩一节臂,再判断一次;如此多次缩臂后,达到要求的油缸长度,才从最末节臂开始伸臂。这种“走一步、算一步”,是一种程序实现方法,不是表征事物特征的算法模型,不能预先规划优化路径,优化效果有限。

文献2《单缸插销式伸缩臂的控制方法、设备、系统以及工程机械》,申请公布号CN 104340884 A虽然提出了多级顺序伸缩路径优化问题的核心:寻找缩臂极限组合,但是对算法全局性统筹和逻辑整体性把握有欠缺。表现为:

其一、流程图复杂:按油缸停留的位置,停在第n节臂,则调用第n个子程序,子程序模块多;同时,按油缸停留位置,将程序划分为尾部算法和头部算法两部分。算法繁杂,程序体量大,占用资源。

其二、其最大缺陷是:由于对路径优化问题的认识未达到根本层面,优化时一律采用“缩1”处理,没有考虑其它位置可能性,因此对于随机组合,难以达到深度或极度优化;对得出的路径组合是否达到最优,没有评价标准。

例如:从附图2a可以看出,对于从臂长当前状态集{2 2 2 2 2}伸至臂长目标状态集{2 1 21 2},文献2可以实现优化,优化后只需要4步完成伸缩切换;优化前需要7步。但是从附图2b可知,对于从当前状态集{1 4 4 1 1}伸至目标状态集{2 2 2 2 2},文献2不能实现优化,仍需要7步完成。

发明内容

本发明提供一种高效的单缸插销式多级顺序伸缩路径优化方法;

不同于文献1只是一种程序实现方法,不能预先规划路径,只能“缩一步,算一步”;本发明给出了路径优化问题的系统解决方法,只要输入单缸插销式伸缩臂当前组合和目标组合,系统就能规划出最优路径。

针对文献2流程复杂、程序体量大;对路径优化问题的认识未达到根本层面,优化时一律采用“缩1”处理,没有考虑其它位置可能性,因此对于随机组合难以达到深度优化的缺点,本发明发现了缩臂极限组合流程判断的内在规律,创建了分层的缩臂极限流程判断网络,以“阀”为层间的连通条件,算法效果可达到深度优化。

本发明可以有效减少伸缩步数,从而提升伸缩效率。

本发明采取的技术方案是:伸缩臂具有n节臂,包括下列步骤:

步骤(1):接收伸缩臂当前状态集{A[1]、A[2]…A[n]}、伸缩臂目标状态集{T[1]、T[2]…T[n]};其中:

n为伸缩臂节数;A[i]为第i节臂的当前状态,A[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

T[i]为第i节臂的目标状态,T[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

步骤(2):根据所述伸缩臂当前状态集、所述伸缩臂目标状态集,以及可用于伸缩的伸缩油缸行程,计算缩臂极限状态集{O[1]、O[2]…O[n]};

缩臂极限状态集是指:多级顺序伸缩更换臂长时,是将臂节先顺序缩回,然后再顺序伸出;通过油缸有效行程判断,某些臂节可以不用缩回,就可以越过它顺序伸缩其它臂节;或者某些臂节无需先缩,可以直接将其伸至目标位,不影响后续臂节的伸缩;这些可以保留的臂节、可以先伸至目标位的臂节、和其它需缩回的臂节,加上开始切换到伸出的最末臂节状态的组合,称为缩臂极限状态集;缩臂极限状态集的总长度一定在伸缩油缸总行程即一节臂长范围内;

O[i]为第i节臂的缩臂极限状态,O[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

步骤(3):根据所述伸缩臂当前状态集、所述伸缩臂目标状态集、以及所计算得出的缩臂极限状态集,按照顺序伸缩臂的原则,规划伸缩路径:从所述伸缩臂当前状态集——所述缩臂极限状态集,为顺序缩臂;从所述缩臂极限状态集——所述伸缩臂目标状态集,为顺序伸臂;

顺序缩臂是指:先缩第1节臂、再缩第2节臂……最后缩第n节臂;

顺序伸臂是指:先伸第n节臂、再伸第n-1节臂……最后伸第1节臂;

步骤(2)得出的所述缩臂极限状态集可能是一个,也可能是多个,若得出多个,则将得出的多个所述缩臂极限状态集均按步骤3所述方法规划伸缩路径;然后从中选出,从所述伸缩臂当前状态集——所述伸缩臂目标状态集使用步数最少的所述缩臂极限状态集,作为最优路径。

本发明的积极效果在于:

1、本发明给出单缸插销式多级顺序伸缩的路径优化方法的系统解决方法

本发明系统完整的给出了单缸插销式多级顺序伸缩路径优化问题的解决思路:寻找缩臂极限状态集是算法的核心目标;通过计算所需最大行程、所需最小行程、运行流程判断,得出缩臂极限状态集;将得出的所有缩臂极限状态集按顺序伸缩的原则进行步序列举,需要步序最少的为最优缩臂极限状态集。

该方法是通用、普适性算法,适用于n节伸缩臂、每节臂上有m个插销位置,算法逻辑清晰、表达明确、集成度高、自成体系。

2、创建了求取缩臂极限状态集的分层判断网络流程,以“阀”为层间的连通条件,只要添加判断水阀,就能增加可行的路径,从而进一步逼近深度最优路径,算法效果可达到深度优化。

本发明发现了缩臂极限组合流程判断的内在规律,为求取缩臂极限状态集,构建了多层的判断流程网络。优化问题的解往往不唯一;并且,可行解是否最优,需要评价标准。以渠流水阀的比拟,可以形象描述流程判断的行进路线,通过打开或关闭满足开启条件的水阀,得出多条可行路径,最终在其中选出最优路径,因此,本专利可以找到深度最优解。同时,对是否为最优解具备评价标准。通常,优化力度达10%以上。

3、提出T型水阀和A型水阀概念,T型和A型复用的流程,可加大优化深度

T型水阀是指,以伸至目标位作为固定臂节的原则进行水阀开启判断;A型水阀是指,以保留原位作为固定臂节的原则进行水阀开启判断。同时具备T型和A型水阀的判断流程增加了可能的优化路径,因此,可能达到更加深度优化。

附图说明

图1为顺序伸缩原理示意图;

图2a是文献2能实现优化的示例;

图2b是文献2优化效果不佳的示例;

图3是求取缩臂极限状态集的行程判断流程简图;

图4是求取缩臂极限状态集的行程判断流程简图,T型和A型复合渠流水阀法;

图5是渠流水阀法缩臂极限组合对应的伸缩步序图;

图6是不同优化方法效果对比图。

具体实施方式

伸缩臂具有n节臂,包括下列步骤:

步骤(1):接收伸缩臂当前状态集{A[1]、A[2]…A[n]}、伸缩臂目标状态集{T[1]、T[2]…T[n]};其中:

n为伸缩臂节数;A[i]为第i节臂的当前状态,A[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

在本实施例中,臂节上共有4个销孔,m取值为1、2、3、4,分别对应油缸行程的0%、45%、90、100%;伸缩臂当前状态集{A[1]、A[2]…A[n]}是:有n节伸缩臂,每节臂当前伸出的长度的集合;

T[i]为第i节臂的目标状态,T[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

在本实施例中,臂节上共有4个销孔,m取值为1、2、3、4,分别对应油缸行程的0%、45%、90、100%;伸缩臂目标状态集{T[1]、T[2]…T[n]}是:有n节伸缩臂,每节臂目标伸出的长度的集合;

步骤(2):根据所述伸缩臂当前状态集、所述伸缩臂目标状态集,以及可用于伸缩的伸缩油缸行程,计算缩臂极限状态集{O[1]、O[2]…O[n]};

缩臂极限状态集是指:多级顺序伸缩更换臂长时,是将臂节先顺序缩回,然后再顺序伸出;通过油缸有效行程判断,某些臂节可以不用缩回,就可以越过它顺序伸缩其它臂节;或者某些臂节无需先缩,可以直接将其伸至目标位,不影响后续臂节的伸缩;这些可以保留的臂节、可以先伸至目标位的臂节、和其它需缩回的臂节,加上开始切换到伸出的最末臂节状态的组合,称为缩臂极限状态集;缩臂极限状态集的总长度一定在伸缩油缸总行程即一节臂长范围内,路径优化算法的目的是寻找缩臂极限状态集;

O[i]为第i节臂的缩臂极限状态,O[i]的值为m,m为正整数,表示臂节上分布的销孔位置,如:第1个销孔、第2个销孔……第m个销孔,每个销孔对应不同的油缸行程;臂节插销在不同的销孔中,从而有不同的伸出长度;

在本实施例中,臂节上共有4个销孔,m取值为1、2、3、4,分别对应油缸行程的0%、45%、90、100%;伸缩臂缩臂极限状态集{O[1]、O[2]…O[n]}是:有n节伸缩臂,每节臂缩臂极限长度的集合;

步骤(3):根据所述伸缩臂当前状态集、所述伸缩臂目标状态集、以及所计算得出的缩臂极限状态集,按照顺序伸缩臂的原则,规划伸缩路径:从所述伸缩臂当前状态集——所述缩臂极限状态集,为顺序缩臂;从所述缩臂极限状态集——所述伸缩臂目标状态集,为顺序伸臂;

顺序缩臂是指:先缩第1节臂、再缩第2节臂……最后缩第n节臂;

顺序伸臂是指:先伸第n节臂、再伸第n-1节臂……最后伸第1节臂;

步骤(2)得出的所述缩臂极限状态集可能是一个,也可能是多个,若得出多个,则将得出的多个所述缩臂极限状态集均按步骤3所述方法规划伸缩路径;然后从中选出,从所述伸缩臂当前状态集——所述伸缩臂目标状态集使用步数最少的所述缩臂极限状态集,作为最优路径。

本发明在步骤(2)中执行以下步骤:

步骤(20):比较最末端臂节的当前状态A[n]和目标状态T[n],判断A[n]≠T[n]?,若A[n]和T[n]相等,则往前比较A[n-1]≠T[n-1]?;以此类推比较A[n-2]≠T[n-2]?…;如果不相等,则流程往下执行;

步骤(21):确立最大行程判断公式和最小行程判断公式;赋值x,i,导出不同x、i值对应的最大行程判断公式和最小行程判断公式;

所述最大行程判断公式(通式):

n:伸缩臂节数;

L:油缸总行程(等于一节臂长),定义为100%;

C_A[i]:第i节臂当前行程,取值为0%-100%;

如:C_A[2]=2,表示第2节臂,当前伸出45%油缸总行程,油缸总行程等于一节臂长;

C_T[i]:第i节臂目标行程,取值为0%-100%;

如:C_T[4]=3,表示第4节臂,目标伸出90%油缸总行程,油缸总行程等于一节臂长;

C[i]:第i节臂伸缩需要的最大油缸行程,取值为0%-100%;C[i]=max(C_A[i],C_T[i])如:C[2]=max(C_A[2],C_T[2])=3,表示伸缩第2节臂所需最大油缸行程为90%;

最小行程判断公式(通式):

CC_i(i+1)(i+2):伸缩第i节、第(i+1)节、第(i+2)节臂所需油缸行程的最小值,CC_i(i+1)(i+2)=max(C[i],C[i+1],C[i+2]);

x表示:流程从上往下执行时,缩1臂节的数量(缩1是指全缩)。其中:x=1,表示一开始没有臂节缩1;x=2,表示第1节臂缩1;…;x=n-1表示:从第1节臂开始,直到第n-2节臂都缩1;

i表示:流程从左至右执行时,流程向右展开的层数,因为流程除了按步骤(22)——步骤(24)从上至下执行,当执行到步骤(23)时,若满足最小行程判断公式——公式(2),流程还会从左至右展开;

i=1,表示:一开始程序流程执行在第1层,只有一个从上到下的主流程;

i=2,表示:当第1层主流程执行到步骤(23)时,某个最小行程判断公式满足条件,此时程序可选择进入、或不进入向右展开的分支流程,若输入开启,则流程进入到向右展开的第2层分支流程;若输入关闭,则流程不能流入第2层分支流程,只能在第1层流程从上往下顺序执行;

i=n-2,表示:当第n-2层分支流程执行到步骤(23)时,某个最小行程判断公式满足条件,此时程序可选择进入、或不进入向右展开的分支流程;若输入开启,则流程进入到向右展开的第n-1层分支流程;若输入关闭,则流程不能流入第n-1层分支流程,只能在第1层到第n-2层分支流程中从左往右、从上往下顺序执行;

为了形象描述流程的行进方式,此处用“渠流”比喻流程的路径,若i=1,只有一层从上往下的流程,称为主渠流;若i=2,流程可以向右展开一层分支,共两层渠流;……若i=n-1,流程可以向右展开至第n-1层,共n-1层渠流;

每一层渠流执行到步骤(23)时,最小行程判断公式是否满足条件,若满足条件,同时“选择开启”,则流程图可以向右增加一层分支渠流;此处“选择开启”,用“水阀”进行比喻,“水阀”开启,意味“渠流”可以向右流入分支流程,“水阀”关闭,意味“渠流”只能在当前层路径运行;

“渠流”对应“流程”,“水阀”对应“选择开启”,它们二者没有实际物理意义,只是为了形象描述“流程”的行进,和“选择开启”进入分支流程的条件;

步骤(22):所需最大行程判断,若所需最大行程公式满足,直接输出缩臂极限状态集O{};否则,执行步骤(23);

由步骤(21),初始只有一层主渠流,取i=1;这一层渠流所有臂节都不缩1;记x=1;

所述所需最大行程判断公式(1)写成:

C[1]+C[2]+...+C[n]≤L? (1.1)

公式(1.1)若满足,则所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],…,T[n]};若不满足,向下执行步骤(23);

步骤(23):所需最小行程判断,若所需最小行程公式满足,可以选择是否向右进入分支流程,若选择“水阀”开启,则流程进入下一层分支“渠流”,同时,i=i+1;若所需最小行程公式不满足,流程向下执行,执行步骤(24);

由步骤(21),初始只有一层主渠流,取i=1;这一层渠流所有臂节都不缩1;记x=1;

所述所需最小行程判断公式(2)写成:

C_T[1]+CC_234...n≤L? (2.1)

公式(2.1)若满足,至下一层“水阀”可以选择开启,进入步骤(231),i=2,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(24);

步骤(24):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=1,x=2,重复步骤(21);

由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节臂缩1,则x=2;向下执行步骤(25);

步骤(25):所需最大行程判断,重复步骤(22);

由步骤(22),i=1,x=2时,所述所需最大行程判断公式(1)写成:

0+C[2]+...+C[n]≤L? (1.2)

若满足最大行程判断公式(1.2),有缩臂极限状态集输出O={1,T[2],…,T[n]};若不满足,则进行最小行程判断,执行步骤(26);

步骤(26):所需最小行程判断,重复步骤(23);

由步骤(23),i=1,x=2时,所述所需最小行程判断公式(2)写成:

0+C_T[2]+CC_34...n≤L? (2.2)

公式(2.2)若满足,“水阀”可以选择开启,进入步骤(261),i=2,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(27);

步骤(27):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=1,x=3,重复步骤(21)……直到对最大行程判断公式(1)和最小行程判断公式(2),赋值i=1,x=(n-1),重复步骤(21);

由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节、第2节臂缩1,则x=3;

……依次类推,

直到由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节——第(n-3)节臂缩1,则x=(n-2);向下执行步骤(28);

步骤(28):所需最大行程判断,重复步骤(22);

由步骤(22),i=1,x=(n-2)时,所述所需最大行程判断公式(1)写成:

0+...0+C[n-2]+C[n-1]+C[n]≤L? (1.(n-2))

若满足最大行程判断公式(1.(n-2)),缩臂极限状态集输出O={1,1,…,1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(29);

步骤(29):所需最小行程判断,重复步骤(23),并求出流程最后结果;

由步骤(23),i=1,x=(n-2)时,所述所需最小行程判断公式(2)写成:

0+...+0+C_T[n-2]+C[n-1]+C[n]≤L? (2.(n-2))

公式(2.(n-2))若满足,“水阀”可以选择开启,进入步骤(291),i=2,类似循环执行步骤(21)——步骤(23);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

0+...0+C[n-1]+C[n]≤L? (1.(n-1))

若最大行程公式(1.(n-1))满足,则输出缩臂极限状态集输出O={1,1,1,…,1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={1,1,1,…,1,1,T[n]}。

本发明在步骤(23)中执行以下步骤:

公式(2.1)若满足,第二层“水阀”可以选择开启,进入步骤(231),此时,第二层渠流记为:i=2;

步骤(231):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=1,重复步骤(21);

由步骤(21),初始为:i=2,有两层渠流;x=1,表示第1节臂伸至目标位不变,从第2节臂开始缩1,初始时没有臂节缩1,向下执行步骤(232);

步骤(232):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=1;所述所需最大行程判断公式(1)写C[2]+...+C[n]≤L-C_T[1]?(1.1.1)

公式(1.1.1)若满足,则将第1节臂伸至目标位,从第2节臂开始,所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],…,T[n]};若不满足,向下执行(233);

步骤(233):所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=1时,所述所需最小行程判断公式(2)写成:

C_T[2]+CC_34...n≤L-C_T[1]? (2.1.1)

公式(2.1.1)若满足,第三层“水阀”可以选择开启,进入步骤(2331),i=3,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(234);

步骤(234):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=2,重复步骤(21);

由步骤(21),i=2,有两层渠流;x=2,表示第1节臂伸至目标位不变、从第2节臂开始,将第2节臂缩1,向下执行步骤(235);

步骤(235):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=2;所述所需最大行程判断公式(1)写成:

0+C[3]+...+C[n]≤L-C_T[1]? (1.1.2)

公式(1.1.2)若满足,则第1节臂伸至目标位,第2节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],1,T[3],…,T[n];若不满足,向下执行(236);

步骤(236):所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=2时,所述所需最小行程判断公式(2)写成:

0+C_T[3]+CC_34...n≤L-C_T[1]? (2.1.2)

公式(2.1.2)若满足,第2个第三层“水阀”可以选择开启,进入步骤(2361),i=3,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(237);

步骤(237):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=3,重复步骤(21)……直到对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=(n-1),重复步骤(21);

由步骤(21),i=2,有两层渠流;x=3,表示第1节臂伸至目标位不变、从第2节臂开始,将第2节、第3节臂缩1;……依次类推,直到由步骤(21),i=2,有两层渠流;x=(n-2),表示第1节臂伸至目标位不变、从第2节臂开始,将第2节——第(n-3)节臂缩1;

步骤(238):所需最大行程判断,重复步骤(22);

由步骤(22),i=2,x=(n-2)时,所述所需最大行程判断公式(1)写成:

0+...+0+C[n-2]+C[n-1]+C[n]≤L-C_T[1]? (1.1.(n-2))

若满足最大行程判断公式(1.1.(n-2)),缩臂极限状态集输出O={T[1],1,…1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(239);

步骤(239):所需最小行程判断,重复步骤(23),并求出该层分支流程最后结果;

由步骤(23),i=2,x=(n-2)时,所述所需最小行程判断公式(2)写成:

0+...+0+C_T[n-2]+C[n-1]+C[n]≤L-C_T[1]? (2.1.(n-2))

公式(2.1.(n-2))若满足,“水阀”可以选择开启,进入步骤(2391),i=3,类似循环执行步骤(21)——步骤(23);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

0+...+0+C[n-1]+C[n]≤L-C_T[1]? (1.1.(n-1))

若最大行程公式(1.1.(n-1))满足,则输出缩臂极限状态集输出O={T[1],1,…,1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={T[1],1,…,1,1,T[n]}。

本发明在步骤(26)中执行以下步骤:

公式(2.2)若满足,第二层“水阀”可以选择开启,进入步骤(261),此时,第二层渠流记为:i=2;

步骤(261):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=1,重复步骤(21);

由步骤(21),初始为:i=2,有两层渠流;x=1,表示第1节臂缩1、将第2节臂伸至目标位,此外所有臂都不缩1,向下执行步骤(262);

步骤(262):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=1;所述所需最大行程判断公式(1)写成:

C[3]+...+C[n]≤L-C_T[2]? (1.2.1)

公式(1.2.1)若满足,则第1节臂缩1、将第2节臂伸至目标位,此外所有臂节直接伸至目标位,缩臂极限状态集O={1,T[2],T[3],T[4],…,T[n]};若不满足,向下执行(263);

步骤(263):所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=1时,所述所需最小行程判断公式(2)写成:

C_T[3]+CC_45...n≤L-C_T[2]? (2.2.1)

公式(2.2.1)若满足,第3个第三层“水阀”可以选择开启,进入步骤(2631),i=3,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(264);

步骤(264):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=2,重复步骤(21);

由步骤(21),i=2,有两层渠流;x=2,表示第1节臂缩1、第2节臂伸至目标位,将第3节臂缩1,此外所有臂都不缩1。向下执行步骤(265);

步骤(265):所需最大行程判断,重复步骤(22)。

由步骤(22),i=2;x=2;所述所需最大行程判断公式(1)写成:

0+C[4]+...+C[n]≤L-C_T[2]? (1.2.2)

公式(1.2.2)若满足,则第1节臂缩1、第2节臂伸至目标位,将第3节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={1,T[2],1,T[4],…,T[n]};若不满足,向下执行(266);步骤(266):所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=2时,所述所需最小行程判断公式(2)写成:

0+C_T[4]+CC_56...n≤L-C_T[2]? (2.2.2)

公式(2.2.2)若满足,第4个第三层“水阀”可以选择开启,进入步骤(2661),i=3,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(267);

步骤(267):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=3,重复步骤(21)……直到对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=(n-1),重复步骤(21);

由步骤(21),i=2,有两层渠流;x=3,表示第1节臂缩1、将第2节臂伸至目标位,将第3节、第4节臂缩1;……依次类推,直到由步骤(21),i=2,有两层渠流;x=(n-2),表示第1节臂缩1、将第2节臂伸至目标位,从第3节臂开始,将第3节——第(n-3)节臂缩1;

步骤(268):所需最大行程判断,重复步骤(22);

由步骤(22),i=2,x=(n-2)时,所述所需最大行程判断公式(1)写成:

0+...+0+C[n-2]+C[n-1]+C[n]≤L-C_T[2]? (1.2.(n-2))

若满足最大行程判断公式(1.2.(n-2)),缩臂极限状态集O={1,T[2],1,…,1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(269);

步骤(269):所需最小行程判断,重复步骤(23),并求出该层分支流程最后结果;

由步骤(23),i=2,x=(n-2)时,所述所需最小行程判断公式(2)写成:

0+...+0+C_T[n-2]+C[n-1]+C[n]≤L-C_T[2]? (2.2.(n-2))

公式(2.2.(n-2))若满足,“水阀”可以选择开启,进入步骤(2691),i=3,类似循环执行步骤(21)——步骤(23);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

0+...+0+C[n-1]+C[n]≤L-C_T[2]? (1.2.(n-1))

若最大行程公式(1.2.(n-1))满足,缩臂极限状态集O={1,T[2],1,…,1,T[n-1],T[n]};若不满足,将第(n-1)节臂缩1,则x=n,输出缩臂极限状态集O={1,T[2],1,…,1,1,T[n]}。

本发明在步骤(29)中执行以下步骤:

公式(2.2)若满足,第二层“水阀”可以选择开启,进入步骤(291),此时,第二层渠流记为:i=2;

步骤(291):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=2,x=1,重复步骤(21);

由步骤(21),初始为:i=2,有两层渠流;x=1,表示第1节臂缩1、将第2节臂伸至目标位,此外所有臂都不缩1,向下执行步骤(292);

步骤(292):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=1;所述所需最大行程判断公式(1)写成:

C[n-1]+C[n]≤L-C_T[n-2]? (1.(n-2).1)

公式(1.(n-2).1)若满足,则第1节臂——第(n-3)节臂缩1、将第(n-2)节臂伸至目标位,此外所有臂节直接伸至目标位,则缩臂极限状态集O={1,1,…,1,T[n-2],T[n-1],T[n]};若不满足,向下执行(293);

步骤(293):所需最小行程判断,重复步骤(23),并求出该层分支流程最后结果;

由步骤(23),i=2,x=1时,所述所需最小行程判断公式(2)写成:

C_T[n-1]+C[n]≤L-C_T[n-2]? (2.(n-2).1)

公式(2.(n-2).1)若满足,则第1节臂——第(n-3)节臂缩1、将第(n-2)节臂伸至目标位,此外所有臂节直接伸至目标位,则缩臂极限状态集O={1,1,…,1,T[n-2],T[n-1],T[n]};若不满足,将第(n-1)节臂缩1,则输出目标状态集O={1,1,…,1,T[n-2],1,T[n]}。

本发明在步骤(233)中执行以下步骤:

公式(2.1.1)若满足,第三层“水阀”可以选择开启,进入步骤(2331);

步骤(2331):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=3,x=1,重复步骤(21);

由步骤(21),初始为:i=3,有三层渠流;x=1,表示第1节、第2节臂伸至目标位不变,从第3节臂开始缩1,初始时没有臂节缩1。向下执行步骤(2332);

步骤(2332):所需最大行程公式判断,重复步骤(22);

由步骤(22),i=3;x=1;最大行程判断公式(1)表示为:

C[3]+...+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.1)

公式(1.1.1.1)若满足,则第1节、第2节臂伸至目标位不变,从第3节臂开始,所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],T[3],…,T[n]};若不满足,向下执行(2333);

步骤(2333):所需最小行程公式判断,重复步骤(23);

由步骤(23),i=3;x=1;最小行程判断公式(1)表示为:

C_T[3]+CC_45...n≤L-C_T[1]-C_T[2]? (2.1.1.1)

公式(2.1.1.1)若满足,第四层“水阀”可以选择开启,进入步骤(23331),i=4,类似循环执行步骤(21)——步骤(23);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(2334);

步骤(2334):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=3,x=2,重复步骤(21);

由步骤(21),初始为:i=3,有三层渠流;x=2,表示第1节、第2节臂伸至目标位不变,第3节臂缩1,向下执行步骤(2335)。

步骤(2335):所需最大行程公式判断,重复步骤(22);

由步骤(22),i=3;x=2;最大行程判断公式(1)表示为:

C[4]+...+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.2)

公式(1.1.1.2)若满足,则第1节、第2节臂伸至目标位,第3节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],1,T[4],…,T[n]};若不满足,向下执行(2336);

步骤(2336):所需最小行程公式判断,重复步骤(23);

由步骤(23),i=3;x=2;最小行程判断公式(1)表示为:

C_T[4]+CC_56...n≤L-C_T[1]-C_T[2]? (2.1.1.2)

公式(2.1.1.2)若满足,第四层“水阀”可以选择开启,进入步骤(23361),i=4,类似循环执行步骤(21)——步骤(23);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(23);若不满足,只能向下执行步骤(2337);

步骤(2337):对最大行程判断公式(1)和最小行程判断公式(2),赋值i=3,x=3,重复步骤(21);

由步骤(21),初始为:i=3,有三层渠流;x=3,表示第1节、第2节臂伸至目标位不变,第3节、第4节臂缩1;……依次类推,直到由步骤(21),i=3,有三层渠流;x=(n-2),表示第1节、第2节臂伸至目标位不变,第3节——第(n-3)节臂缩1;

步骤(2338):所需最大行程判断,重复步骤(22)。

由步骤(22),i=3,x=(n-2)时,所述所需最大行程判断公式(1)写成:

C[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.(n-2))

公式(1.1.1.(n-2))若满足,则第1节、第2节臂伸至目标位,第3节——第(n-3)臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],1,1,…,1,T[n-2],T[n-1],T[n]};若不满足,向下执行(2339);

步骤(2339):所需最小行程公式判断,重复步骤(23);

由步骤(23),i=3;x=(n-2);最小行程判断公式(1)表示为:

C_T[n-2]+CC_(n-1)n≤L-C_T[1]-C_T[2]? (2.1.1.(n-2))

公式(2.1.1.(n-2))若满足,“水阀”可以选择开启,进入步骤(23391),i=4,类似循环执行步骤(21)——步骤(23);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

0+...+0+C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.(n-1))

若最大行程公式(1.1.1.(n-1))满足,缩臂极限状态集O={T[1],T[2],1,…,1,T[n-1],T[n]};若不满足,将第(n-1)节臂缩1,则x=n,输出缩臂极限状态集O={T[1],T[2],1,…,1,1,T[n]}。

本发明在所有所需最大行程判断和所需最小行程判断之间,加入A型最小行程判断,以在步骤(23)和步骤(24)之间加入A型最小行程判断为例,A型所需最小行程判断公式为:

为以示区别:以下将公式(2)称为T型所需最小行程判断公式;

加入A型最小行程判断的流程步骤如下:

步骤(20):比较最末端臂节的当前状态A[n]和目标状态T[n],判断A[n]≠T[n]?,若A[n]和T[n]相等,则往前比较A[n-1]≠T[n-1]?;以此类推比较A[n-2]≠T[n-2]?…;如果不相等,则流程往下执行;

步骤(21):确立最大行程判断公式和最小行程判断公式;赋值x,i,导出不同x、i值对应的最大行程判断公式和最小行程判断公式;

最大行程判断公式(通式):

T型最小行程判断公式(通式):

A型最小行程判断公式(通式):

步骤(22):所需最大行程判断,若所需最大行程公式满足,直接输出缩臂极限状态集O{};否则,执行步骤(23);

由步骤(21),初始只有一层主渠流,取i=1;这一层渠流所有臂节都不缩1;记x=1;

所述所需最大行程判断公式(1)写成:

C[1]+C[2]+...+C[n]≤L? (1.1)

公式(1.1)若满足,则所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],…,T[n]};若不满足,向下执行步骤(23);

步骤(23):T型所需最小行程判断,若T型所需最小行程公式满足,可以选择是否向右进入分支流程,若选择“水阀”开启,则流程进入下一层分支“渠流”,同时,i=i+1;若T型所需最小行程公式不满足,流程向下执行,执行步骤(24);

由步骤(21),初始只有一层主渠流,取i=1;这一层渠流所有臂节都不缩1;记x=1;

所述所需最小行程判断公式(2)写成:

C_T[1]+CC_234...n≤L? (2.1)

公式(2.1)若满足,至下一层T型“水阀”可以选择开启,进入步骤(231),i=2,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(25);

步骤(24):A型所需最小行程判断,若A型所需最小行程公式满足,可以选择是否向右进入分支流程,若选择“水阀”开启,则流程进入下一层分支“渠流”,同时,i’=i’+1;若A型所需最小行程公式不满足,流程向下执行,执行步骤(25);

由步骤(21),初始只有一层主渠流,取i=1;这一层渠流所有臂节都不缩1;记x=1;

所述所需最小行程判断公式(3)写成:

C_A[1]+CC_234...n≤L? (3.1)

公式(3.1)若满足,至下一层A型“水阀”可以选择开启,进入步骤(241),i=2,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(25);

步骤(25):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=1,x=2,重复步骤(21);

由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节臂缩1,则x=2;向下执行步骤(26);

步骤(26):所需最大行程判断,重复步骤(22);

由步骤(22),i=1,x=2时,所述所需最大行程判断公式(1)写成:

0+C[2]+...+C[n]≤L? (1.2)

若满足最大行程判断公式(1.2),有缩臂极限状态集输出O={1,T[2],…,T[n]};若不满足,则进行最小行程判断,执行步骤(27);

步骤(27):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=1,x=2时,所述T型所需最小行程判断公式(2)写成:

0+C_T[2]+CC_34...n≤L? (2.2)

公式(2.2)若满足,T型“水阀”可以选择开启,进入步骤(271),i=2,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(27);

步骤(28):A型所需最小行程判断,重复步骤(24);

由步骤(23),i=1,x=2时,所述A型所需最小行程判断公式(3)写成:

0+C_T[2]+CC_34...n≤L? (3.2)

公式(3.2)若满足,A型“水阀”可以选择开启,进入步骤(281),i=2,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(29);

步骤(29):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=1,x=3,重复步骤(21)……直到对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=1,x=(n-1),重复步骤(21);

由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节、第2节臂缩1,则x=3;……依次类推,直到由步骤(21),初始只有一层主渠流,取i=1;从第1节臂开始,将第1节——第(n-3)节臂缩1,则x=(n-2);向下执行步骤(2A);

步骤(2A):所需最大行程判断,重复步骤(22);

由步骤(22),i=1,x=(n-2)时,所述所需最大行程判断公式(1)写成:

0+...0+C[n-2]+C[n-1]+C[n]≤L? (1.(n-2))

若满足最大行程判断公式(1.(n-2)),缩臂极限状态集输出O={1,1,…,1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(2B);

步骤(2B):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=1,x=(n-2)时,所述T型所需最小行程判断公式(2)写成:

0+...+0+C_T[n-2]+C[n-1]+C[n]≤L? (2.(n-2))

公式(2.(n-2))若满足,T型“水阀”可以选择开启,进入步骤(2B1),i=2,类似循环执行步骤(21)——步骤(24);若不满足,向下执行步骤(2C);

步骤(2C):A型所需最小行程判断,重复步骤(24),并求出流程最后结果;

由步骤(24),i=1,x=(n-2)时,所述A型所需最小行程判断公式(3)写成:

0+...+0+C_A[n-2]+C[n-1]+C[n]≤L? (3.(n-2))

公式(3.(n-2))若满足,A型“水阀”可以选择开启,进入步骤(2C1),i=2,类似循环执行步骤(21)——步骤(23);若不满足,将第(n-2)节臂缩1,则x=(n-1)。此时,最大行程公式为:

0+...0+C[n-1]+C[n]≤L? (1.(n-1))

若最大行程公式(1.(n-1))满足,则输出缩臂极限状态集输出O={1,1,1,…,1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={1,1,1,…,1,1,T[n]}。

本发明在步骤(23)中执行以下步骤:

公式(2.1)若满足,第二层T型“水阀”可以选择开启,进入步骤(231),此时,第二层渠流记为:i=2;

步骤(231):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=2,x=1,重复步骤(21);

由步骤(21),初始为:i=2,有两层渠流;x=1,表示第1节臂伸至目标位不变,从第2节臂开始缩1,初始时没有臂节缩1,向下执行步骤(232);

步骤(232):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=1;所述所需最大行程判断公式(1)写成:

C[2]+...+C[n]≤L-C_T[1]? (1.1.1)

公式(1.1.1)若满足,则将第1节臂伸至目标位,从第2节臂开始,所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],…,T[n]};若不满足,向下执行步骤(233);

步骤(233):T型所需最小行程判断,重复步骤(23),

由步骤(23),i=2,x=1时,所述T型所需最小行程判断公式(2)写成:

C_T[2]+CC_34...n≤L-C_T[1]? (2.1.1)

公式(2.1.1)若满足,第三层T型“水阀”可以选择开启,进入步骤(2331),i=3,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(234);

步骤(234):A型所需最小行程判断,重复步骤(24),

由步骤(24),i=2,x=1时,所述A型所需最小行程判断公式(3)写成:

C_A[2]+CC_34...n≤L-C_T[1]? (3.1.1)

公式(3.1.1)若满足,第三层A型“水阀”可以选择开启,进入步骤(2341),i=3,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(235);

步骤(235):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=2,x=2,重复步骤(21);

由步骤(21),i=2,有两层渠流;x=2,表示第1节臂伸至目标位不变、从第2节臂开始,将第2节臂缩1,向下执行步骤(236);

步骤(236):所需最大行程判断,重复步骤(22);

由步骤(22),i=2;x=2;所述所需最大行程判断公式(1)写成:

0+C[3]+...+C[n]≤L-C_T[1]? (1.1.2)

公式(1.1.2)若满足,则第1节臂伸至目标位,第2节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],1,T[3],…,T[n];若不满足,向下执行(237);

步骤(237):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=2时,所述T型所需最小行程判断公式(2)写成:

0+C_T[3]+CC_34...n≤L-C_T[1]? (2.1.2)

公式(2.1.2)若满足,第2个第三层T型“水阀”可以选择开启,进入步骤(2371),i=3,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(238);

步骤(238):A型所需最小行程判断,重复步骤(24);

由步骤(23),i=2,x=2时,所述A型所需最小行程判断公式(3)写成:

0+C_A[3]+CC_34...n≤L-C_T[1]? (3.1.2)

公式(3.1.2)若满足,第2个第三层A型“水阀”可以选择开启,进入步骤(2381),i=3,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(239);

步骤(239):对最大行程判断公式(1)、T型最小行程判断公式(2)、A型最小行程判断公式(3),赋值i=2,x=3,重复步骤(21)……直到对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=2,x=(n-1),重复步骤(21);

由步骤(21),i=2,有两层渠流;x=3,表示第1节臂伸至目标位不变,从第2节臂开始,将第2节、第3节臂缩1;……依次类推,直到由步骤(21),i=2,有两层渠流;x=(n-2),表示第1节臂伸至目标位不变,从第2节臂开始,将第2节——第(n-3)节臂缩1;向下执行步骤(23A);

步骤(23A):所需最大行程判断,重复步骤(22);

由步骤(22),i=2,x=(n-2)时,所述所需最大行程判断公式(1)写成:

0+...+0+C[n-2]+C[n-1]+C[n]≤L-C_T[1]? (1.1.(n-2))

若满足最大行程判断公式(1.1.(n-2)),缩臂极限状态集输出O={T[1],1,…1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(23B);

步骤(23B):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=2,x=(n-2)时,所述T型所需最小行程判断公式(2)写成:

0+...+0+C_T[n-2]+C[n-1]+C[n]≤L-C_T[1]? (2.1.(n-2))

公式(2.1.(n-2))若满足,T型“水阀”可以选择开启,进入步骤(23B1),i=3,类似循环执行步骤(21)——步骤(24);若不满足,执行步骤(23C);

步骤(23C):A型所需最小行程判断,重复步骤(24),并求出该层分支流程最后结果;

由步骤(24),i=2,x=(n-2)时,所述A型所需最小行程判断公式(3)写成:

0+...+0+C_A[n-2]+C[n-1]+C[n]≤L-C_T[1]? (3.1.(n-2))

公式(3.1.(n-2))若满足,A型“水阀”可以选择开启,进入步骤(23C1),i=3,类似循环执行步骤(21)——步骤(24);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

0+...+0+C[n-1]+C[n]≤L-C_T[1]? (1.1.(n-1))

若最大行程公式(1.1.(n-1))满足,则输出缩臂极限状态集输出O={T[1],1,…,1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={T[1],1,…,1,1,T[n]}。

本发明在步骤(233)中执行以下步骤:

公式(2.1.1)若满足,第三层T型“水阀”可以选择开启,进入步骤(2331);

步骤(2331):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=3,x=1,重复步骤(21),

由步骤(21),初始为:i=3,有三层渠流;x=1,表示第1节、第2节臂伸至目标位不变,从第3节臂开始缩1,初始时没有臂节缩1。向下执行步骤(2332);

步骤(2332):所需最大行程公式判断,重复步骤(22);

由步骤(22),i=3;x=1;最大行程判断公式(1)表示为:

C[3]+...+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.1)

公式(1.1.1.1)若满足,则第1节、第2节臂伸至目标位不变,从第3节臂开始,所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],T[3],…,T[n]};若不满足,向下执行(2333);

步骤(2333):T型所需最小行程公式判断,重复步骤(23);

由步骤(23),i=3;x=1;T型最小行程判断公式(2)表示为:

C_T[3]+CC_45...n≤L-C_T[1]-C_T[2]? (2.1.1.1)

公式(2.1.1.1)若满足,第四层T型“水阀”可以选择开启,进入步骤(23331),i=4,类似循环执行步骤(21)——步骤(24);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2334);

步骤(2334):A型所需最小行程公式判断,重复步骤(24);

由步骤(24),i=3;x=1;A型最小行程判断公式(3)表示为:

C_A[3]+CC_45...n≤L-C_T[1]-C_T[2]? (3.1.1.1)

公式(3.1.1.1)若满足,第四层A型“水阀”可以选择开启,进入步骤(23341),i=4,类似循环执行步骤(21)——步骤(24);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2335);

步骤(2335):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=3,x=2,重复步骤(21);

由步骤(21),i=3,有三层渠流;x=2,表示第1节、第2节臂伸至目标位不变,从第3节臂开始,将第3节臂缩1,向下执行步骤(2336);

步骤(2336):所需最大行程判断,重复步骤(22);

由步骤(22),i=3;x=2;所述所需最大行程判断公式(1)写成:

C[4]+...+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.2)

公式(1.1.1.2)若满足,则第1节、第2节臂伸至目标位,第3节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],T[2],1,T[4],…,T[n];若不满足,向下执行(2337);

步骤(2337):T型所需最小行程判断,重复步骤(23),

由步骤(23),i=3,x=2时,所述T型所需最小行程判断公式(2)写成:

C_T[4]+CC_45...n≤L-C_T[1]-C_T[2]? (2.1.1.2)

公式(2.1.1.2)若满足,第2个第三层T型“水阀”可以选择开启,进入步骤(23371),i=4,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2338);

步骤(2338):A型所需最小行程判断,重复步骤(24),

由步骤(23),i=3,x=2时,所述A型所需最小行程判断公式(3)写成:

C_A[4]+CC_45...n≤L-C_T[1]-C_T[2]? (3.1.1.2)

公式(3.1.1.2)若满足,第2个第三层A型“水阀”可以选择开启,进入步骤(23381),i=4,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2339);

步骤(2339):对最大行程判断公式(1)、T型最小行程判断公式(2)、A型最小行程判断公式(3),赋值i=3,x=3,重复步骤(21)……直到对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=2,x=(n-1),重复步骤(21),

由步骤(21),i=3,有三层渠流;x=3,表示第1节、第2节臂伸至目标位不变,从第3节臂开始,将第3节、第4节臂缩1;……依次类推,直到由步骤(21),i=3,有三层渠流;x=(n-2),表示第1节、第2节臂伸至目标位不变,从第3节臂开始,将第3节——第(n-3)节臂缩1;

步骤(233A):所需最大行程判断,重复步骤(22);

由步骤(22),i=3,x=(n-2)时,所述所需最大行程判断公式(1)写成:

C[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.(n-2))

若满足最大行程判断公式(1.1.1.(n-2)),缩臂极限状态集输出

O={T[1],T[2],1,…1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(233B);

步骤(233B):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=3,x=(n-2)时,所述T型所需最小行程判断公式(2)写成:

C_T[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (2.1.1.(n-2))

公式(2.1.1.(n-2))若满足,T型“水阀”可以选择开启,进入步骤(233B1),i=4,类似循环执行步骤(21)——步骤(24);若不满足,执行步骤(233C);

步骤(233C):A型所需最小行程判断,重复步骤(24),并求出该层分支流程最后结果;

由步骤(24),i=3,x=(n-2)时,所述A型所需最小行程判断公式(3)写成:

C_A[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (3.1.1.(n-2))

公式(3.1.1.(n-2))若满足,A型“水阀”可以选择开启,进入步骤(233C1),i=4,类似循环执行步骤(21)——步骤(24);若不满足,将第(n-2)节臂缩1,则x=(n-1)。此时,最大行程公式为:

C[n-1]+C[n]≤L-C_T[1]-C_T[2]? (1.1.1.(n-1))

若最大行程公式(1.1.1.(n-1))满足,则输出缩臂极限状态集输出O={T[1],T[2],1,…1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={T[1],T[2],1,…1,1,T[n]}。

本发明在步骤(234)中执行以下步骤:

公式(3.1.1)若满足,第三层A型“水阀”可以选择开启,进入步骤(2341);

步骤(2341):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=3,x=1,重复步骤(21);

由步骤(21),初始为:i=3,有三层渠流;x=1,表示第1节伸至目标位、第2节臂保持原位不变,从第3节臂开始缩1,初始时没有臂节缩1,向下执行步骤(2342);

步骤(2342):所需最大行程公式判断,重复步骤(22);

由步骤(22),i=3;x=1;最大行程判断公式(1)表示为:

C[3]+...+C[n]≤L-C_T[1]-C_A[2]? (1.1.1.1’)

公式(1.1.1.1’)若满足,则第1节臂伸至目标位,第2节臂保持原位不变,从第3节臂开始,所有臂节直接伸至目标位,缩臂极限状态集O={T[1],A[2],T[3],…,T[n]};若不满足,向下执行(2343);

步骤(2343):T型所需最小行程公式判断,重复步骤(23);

由步骤(23),i=3;x=1;T型最小行程判断公式(1)表示为:

C_T[3]+CC_45...n≤L-C_T[1]-C_A[2]? (2.1.1.1’)

公式(2.1.1.1’)若满足,第四层T型“水阀”可以选择开启,进入步骤(23431),i=4,类似循环执行步骤(21)——步骤(24);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2344);

步骤(2344):A型所需最小行程公式判断,重复步骤(24);

由步骤(23),i=3;x=1;T型最小行程判断公式(1)表示为:

C_A[3]+CC_45...n≤L-C_T[1]-C_A[2]? (3.1.1.1’)

公式(3.1.1.1’)若满足,第四层A型“水阀”可以选择开启,进入步骤(23441),i=4,类似循环执行步骤(21)——步骤(24);……以此类推,可以递推至i=n-2层,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2345);

步骤(2345):对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=3,x=2,重复步骤(21);

由步骤(21),i=3,有三层渠流;x=2,表示第1节伸至目标位、第2节臂保持原位不变,从第3节臂开始缩1,将第3节臂缩1。向下执行步骤(2346);

步骤(2346):所需最大行程判断,重复步骤(22);

由步骤(22),i=3;x=2;所述所需最大行程判断公式(1)写成:

C[4]+...+C[n]≤L-C_T[1]-C_A[2]? (1.1.1.2’)

公式(1.1.1.2’)若满足,则第1节伸至目标位,、第2节臂保持原位,第3节臂缩1,此外所有臂节直接伸至目标位,缩臂极限状态集O={T[1],A[2],1,T[4],…,T[n];若不满足,向下执行(2347);步骤(2347):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=3,x=2时,所述T型所需最小行程判断公式(2)写成:

C_T[4]+CC_45...n≤L-C_T[1]-C_A[2]? (2.1.1.2’)

公式(2.1.1.2’)若满足,第2个第四层T型“水阀”可以选择开启,进入步骤(23471),i=4,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2348);

步骤(2348):A型所需最小行程判断,重复步骤(24),

由步骤(23),i=3,x=2时,所述A型所需最小行程判断公式(3)写成:

C_A[4]+CC_45...n≤L-C_T[1]-C_A[2]? (3.1.1.2’)

公式(3.1.1.2’)若满足,第2个第四层A型“水阀”可以选择开启,进入步骤(23481),i=4,类似循环执行步骤(21)——步骤(24);若不满足,只能向下执行步骤(2349);

步骤(2349):对最大行程判断公式(1)、T型最小行程判断公式(2)、A型最小行程判断公式(3),赋值i=3,x=3,重复步骤(21)……直到对最大行程判断公式(1)、T型最小行程判断公式(2)和A型最小行程判断公式(3),赋值i=2,x=(n-1),重复步骤(21);

由步骤(21),i=3,有三层渠流;x=3,表示第1节伸至目标位、第2节臂保持原位不变,从第3节臂开始缩1,将第3节、第4节臂缩1;……依次类推,直到由步骤(21),i=3,有三层渠流;x=(n-2),表示第1节伸至目标位、第2节臂保持原位不变,从第3节臂开始缩1,将第3节——第(n-3)节臂缩1;

步骤(234A):所需最大行程判断,重复步骤(22);

由步骤(22),i=3,x=(n-2)时,所述所需最大行程判断公式(1)写成:

C[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_A[2]? (1.1.1.(n-2)’)

若满足最大行程判断公式(1.1.1.(n-2)’),缩臂极限状态集输出

O={T[1],A[2],1,…1,T[n-2],T[n-1],T[n]};若不满足,则进行最小行程判断,执行步骤(234B);步骤(234B):T型所需最小行程判断,重复步骤(23);

由步骤(23),i=3,x=(n-2)时,所述T型所需最小行程判断公式(2)写成:

C_T[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_A[2]? (2.1.1.(n-2)’)

公式(2.1.1.(n-2)’)若满足,T型“水阀”可以选择开启,进入步骤(234B1),i=4,类似循环执行步骤(21)——步骤(24);若不满足,执行步骤(234C);

步骤(234C):A型所需最小行程判断,重复步骤(24),并求出该层分支流程最后结果;

由步骤(24),i=3,x=(n-2)时,所述A型所需最小行程判断公式(3)写成:

C_A[n-2]+C[n-1]+C[n]≤L-C_T[1]-C_A[2]? (3.1.1.(n-2)’)

公式(3.1.1.(n-2)’)若满足,A型“水阀”可以选择开启,进入步骤(234C1),i=4,类似循环执行步骤(21)——步骤(24);若不满足,将第(n-2)节臂缩1,则x=(n-1),此时,最大行程公式为:

C[n-1]+C[n]≤L-C_T[1]-C_A[2]? (1.1.1.(n-1)’)

若最大行程公式(1.1.1.(n-1)’)满足,则输出缩臂极限状态集输出O={T[1],A[2],1,…1,T[n-1],T[n]};若不满足,则将第(n-1)节臂缩1,x=n,输出缩臂极限状态集输出O={T[1],A[2],1,…1,1,T[n]}。

下边通过实验例进一步说明本发明。

臂节数n=5,求从当前状态集{1 4 4 2 1},到目标状态集{2 1 2 1 2}的优化路径。

(一)求取最优缩臂极限组合

1、由前述流程步骤(21),比较得:A[5]≠T[5],因此执行步骤(22);

2、由步骤(22),判断所需最大行程,所需最大行程公式为:

C[1]+C[2]+...+C[5]≤L?

C[1]=max(C_A[1],C_T[1])=max(0%,45%)=45%;

C[2]=max(C_A[2],C_T[2])=max(100%,0%)=100%;

C[3]=max(C_A[3],C_T[3])=max(100%,45%)=100%;

C[4]=max(C_A[4],C_T[4])=max(45%,0%)=45%;

C[5]=max(C_A[5],C_T[5])=max(0%,45%)=45%;

C[1]+C[2]+C[3]+C[4]+C[5]=45%+100%+100%+45%+45%=335%;

L=100%;因此,所需最大行程大于油缸行程,公式不满足,向下执行步骤(23);

3、由步骤(23),判断所需最小行程,所需最小行程公式为:

C_T[1]+CC_2345≤L?

C_T[1]=45%;

CC_2345=max(C[2],C[3],C[4],C[5])=max(100%,100%,45%,45%)=100%;

C_T[1]+CC_2345=145%;

L=100%;因此,所需最小行程大于油缸行程,公式不满足,流程继续向下执行步骤(24);

4、由步骤(24),将第1节臂缩1,记x=2,判断所需最大行程,所需最大行程公式为:

0+C[2]+...+C[5]≤L?

C[2]+C[3]+C[4]+C[5]=100%+100%+45%+45%=290%;

L=100%;因此,所需最大行程大于油缸行程,公式不满足,向下执行步骤(25);

5、由步骤(25),判断所需最小行程,所需最小行程公式为:

C_T[2]+CC_345≤L?

C_T[2]=0%;

CC_345=max(C[3],C[4],C[5])=max(100%,45%,45%)=100%;

C_T[2]+CC_345=100%;

L=100%;因此,所需最小行程等于油缸行程,公式满足,旁流水阀可以选择开启,进入步骤(251);也可以向下执行步骤(26);

6、由步骤(26),将第1节和第2节臂缩1,记x=3,判断所需最大行程,所需最大行程公式为:

C[3]+C[4]+C[5]≤L?

C[3]+C[4]+C[5]=100%+45%+45%=190%;

L=100%;因此,所需最大行程大于油缸行程,公式不满足,向下执行步骤(27);

7、由步骤(27),判断所需最小行程,所需最小行程公式为:

C_T[3]+CC_45≤L?

C_T[3]=45%;

CC_45=max(C[4],C[5])=max(45%,45%)=45%;

C_T[3]+CC_45=90%;

L=100%;因此,所需最小行程小于油缸行程,公式满足,旁流水阀可以选择开启,进入步骤(271);也可以向下执行步骤(28);

8、类似的,将第1节、第2节、第3节臂缩1,记x=4,判断所需最大行程,所需最大行程公式为:

C[4]+C[5]≤L?

C[4]+C[5]=45%+45%=90%;

L=100%;因此,所需最大行程小于油缸行程,公式满足,第4和第5节臂可以伸至目标位,因此,输出缩臂极限状态集O={1 1 1 1 2}。流程结束。因此,由第一层主流程得出的缩臂极限状态集为O1={1>

9、若选择打开第二层旁流,执行步骤(251),则步骤为:

1)、由步骤(251),记x=1,最大行程判断公式表示为:

C[3]+C[4]+C[5]≤L-C_T[2]?

C[3]+C[4]+C[5]=100%+45%+45%=190%;

L-C_T[2]=100%-0=100%;

因此,所需最大行程公式不满足,向下执行步骤(252);

2)、由步骤(252),x=1,所需最小行程公式表示为:

C_T[3]+CC_45≤L-C_T[2]?

C_T[3]+CC_45=45%+45%=90%;

L-C_T[2]=100%-0=100%;

因此,所需最小行程小于油缸有效行程,公式满足,旁流水阀可以选择开启,进入步骤(2521);也可以向下执行步骤(253);

3)、由步骤(253),记x=2,所需最大行程公式表示为:

C[4]+C[5]≤L-C_T[2]?

C[4]+C[5]=45%+45%=90%;

L-C_T[2]=100%-0=100%;

因此,所需最大行程公式满足,第4和第5节臂可以伸至目标位,因此,输出缩臂极限状态集O={1 1 1 1 2},流程结束。因此,由第二层主流程得出的第2个缩臂极限状态集为O2={11>

10、若选择打开第二层旁流,执行步骤(271),则步骤为:

1)、由步骤(271),记x=1,最大行程判断公式表示为:

C[4]+C[5]≤L-C_T[3]?

C[4]+C[5]=45%+45%=90%;

L-C_T[3]=100%-45%=55%;

因此,所需最大行程公式不满足,向下执行步骤(272);

2)、由步骤(272),x=1,所需最小行程公式表示为:

C_T[4]+C5≤L-C_T[3]?

C_T[4]+C[5]=0%+45%=45%;

L-C_T[3]=100%-45%=55%;

因此,所需最小行程小于油缸有效行程,公式满足,旁流水阀可以选择开启,进入步骤(2721);也可以向下执行步骤(273);

3)、由步骤(273),记x=2,所需最大行程公式表示为:

C[5]≤L-C_T[3]?

C[5]=45%=45%;

L-C_T[3]=100%-45%=55%;

因此,所需最大行程公式满足,第3节臂伸至目标位,输出缩臂极限状态集O={1 1 2 1 2},流程结束。因此,由第二层主流程得出的第3个缩臂极限状态集为O3={1>

11、若选择打开第三层旁流,执行步骤(2721),则步骤为:

1)、由步骤(2721),记x=1,最大行程判断公式表示为:

C[5]≤L-C_T[3]-C_T[4]?

C[5]=45%=45%;

L-C_T[3]-C_T[4]=100%-45%-0%=55%;

因此,所需最大行程公式满足,第3节和第4节臂伸至目标位,输出缩臂极限状态集O={11 2 1 2},流程结束。因此,由第二层主流程得出的第4个缩臂极限状态集为O4={1>

由前述11个流程步骤,共求得4条缩臂极限状态集,是:O1{1>2{1>3{1>4{1>

表1:从当前状态集{1 4 4 2 1},到目标状态集{2 1 2 1 2}的优化解集

优化解流程路径缩臂极限组合步数a流程22-281-1-1-1-26b流程251-2531-1-1-1-26c流程271-2731-1-2-1-25d流程27211-1-2-1-25

比较所有路径优化效果发现:(c)和(d)同为深度最优解,执行第二层旁流271-273和执行第三层旁流2721,此时的缩臂极限状态集均为{1 1 2 1 2},伸缩步数为五步。

(二)与现有优化方法效果对比

此例中,未作优化的缩臂极限状态集是{1 1 1 1 1};文献2的方法无法实现优化,它的缩臂极限状态集也是{1 1 1 1 1};本专利求出的缩臂极限状态集是{1 1 2 1 2},只需要5步,如图6。

表2:从当前状态集{1 4 4 2 1},到目标状态集{2 1 2 1 2}的不同方法优化对比

序号优化方式缩臂极限组合步数优化力度a未优化1-1-1-1-260%b文献21-1-1-1-260%c渠流水阀法1-1-2-1-2517%

从表2看出,此例中渠流水阀法能达到最佳优化效果,效率比未作优化提升17%。

(1)本发明可普遍适用到n级伸缩臂,每节臂上有m个销孔位置。

基于目前应用的钢材料结构特性:钢材重,所以吊臂的节数n不能太多,单缸插销式伸缩臂的臂节数目前最多为8节;常用的伸缩臂节数为4——7节。若将来采用轻型材料做吊臂,如碳纤维,吊臂节数可能大大超过8节,n>8,本发明同样适用。

本发明的实际案例是以五节伸缩臂,每节臂上有四个臂销孔,且每个销孔位置占用的油缸行程为0%、45%、90%和100%为例,进行阐述,实际不局限于销孔数量、不局限于销孔布置都普遍适用。

(2)本发明普遍适用于单缸插销式多级顺序伸缩的路径优化问题。

本发明是以单缸插销顺序伸缩臂为例进行阐述,实际不局限于单缸插销起重机伸缩臂。

(3)本发明提出的T型和A型水阀,是根据将臂节伸至目标、还是保留原位来定义,实际上,臂节停留在销孔的任意位置,都可以作为优化的停驻路径,它们单独使用,也可以复合使用。不同停驻位置,如:缩1阀——全缩位置;2型阀——伸至第2个销孔位置;3型阀——伸至第3个销孔位置……;不同的复合使用,如:T型和A性复合;T型和2型复合;T型和2型、3型复合……。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号