本发明涉及一种锁丝路径优化控制方法,尤其是一种xy轴自动锁丝机的锁丝路径优化控制方法,属于运动控制领域。
背景技术:
近年来,随着国内生产水平加快了技术改造的步伐,自动螺丝机开始大量进入国内市场,取代普通电批,其速度快、效率高、安全性高,并且更能节省人工。
xy轴自动锁丝机控制系统主要通过控制工作平台xy轴的移动定位器件上的螺丝孔位置,螺丝由供料器吹到喷嘴上,喷嘴固定在z轴上,通过控制z轴和固定在z轴上的电批锁紧螺丝。xy轴自动锁丝机可应用在多个领域,对手机、键盘、智能仪表、汽车零部件等多种器件进行自动锁丝。对于不同的器件,螺丝孔位置不同,这里通过xy轴自动锁丝机控制系统的手持器手动校准每个螺丝孔位置坐标,存储在控制器中,xy轴自动锁丝机根据存储的先后顺序自动锁紧螺丝。
手持器手动校准每个螺丝孔位置坐标并存储在控制器后,自动锁丝机只会根据螺丝孔坐标存储的先后顺序把工作平台上器件所有的螺丝进行锁紧。但是,对工作平台上器件的各个螺丝孔里的螺丝进行锁紧的顺序不同,xy轴所走过的路径长短是不同的,同时,传统的控制方法是一个器件的全部螺丝锁紧后,xy轴复位运动到第一个螺丝孔位置,但是xy轴自动锁丝机加工器件所需要螺丝是由供料器通过导管吹到喷嘴上,所以这段路径实际上是徒劳的。因此,需要一种xy轴自动锁丝机的路径优化控制方法,使xy轴所走过的路径最短,进一步提高自动锁丝机的工作效率。
技术实现要素:
为了对xy轴自动锁丝机的工作路径进行优化,克服现有手动校准不能确保输入最优的锁丝顺序的缺点,克服现有xy轴自动锁丝机加工完器件后复位所走路径影响自动锁丝机效率的缺点,本发明提供了一种能优化xy轴自动锁丝机的工作路径,进一步提高工作效率的锁丝路径优化控制方法。
本发明解决其技术问题所采用的技术方案如下:
一种xy轴自动锁丝机的路径优化控制方法,所述方法包括以下步骤:
1)首先将器件固定在工作平台上,得出器件上螺丝孔的x坐标值表x1,x2,···,xn和y坐标值表y1,y2,···,yn,下标1到n表示坐标的输入顺序;
2)根据输入的坐标值计算出每两个螺丝孔之间的距离,得出距离表dis[1][1],dis[1][2],···,dis[n][n],标号1到n表示螺丝孔的编号;
3)动态规划法找出最优锁丝路径,并记录下相对应锁丝的顺序,重新规划好器件上螺丝孔的x坐标值表x1′,x2′,···,xn′,y坐标值表y1′,y2′,···,yn′;
4)xy轴自动螺丝机按照(x1′,y2′),(x2′,y2′),···,(xn′,yn′)的顺序定位每个螺丝孔位置,锁紧螺丝,由此一个器件加工完成;
5)将x坐标值表和y坐标值表倒序排列,即xn′,xn-1′,···,x1′和yn′,yn-1′,···,y1′。
进一步,在所述步骤1)中,操作手持器手动校准,移动xy轴自动锁丝机的x轴和y轴,输入器件的每个螺丝孔坐标值,通过微调准确定位螺丝孔坐标。
再进一步,在所述步骤2)中,每两个螺丝孔之间的距离为dis[i][j],即编号i的螺丝孔与编号j的螺丝孔之间的距离,显然,距离表中dis[i][i]=0,dis[i][j]=dis[j][i]。
再进一步,在所述步骤3)中,x坐标值表x1′,x2′,···,xn′,y坐标值表y1′,y2′,···,yn′顺序不再是手动校准的输入顺序,而是最优锁丝路径下xy轴所走螺丝孔的顺序;动态规划法求最优锁丝路径是依据状态转移方程如下:
s(ω,init)=min{s(ω-k,k)+dis[k][init]}
状态转移方程中,ω是用来记录器件上xy轴未走过的螺丝孔的集合。s(ω,init)表示从init点出发,经过ω集合中所有点的最小距离,min{s(ω-k,k)+dis[k][init]}表示由init点走到k点后状态转移,ω要更新,去掉k点。
所述步骤3)中,动态规划法求最优锁丝路径是一个np完全问题,时间复杂度较大,因此,还需要一个remove[ω][init]进行去重,remove[ω][init]中的所有元素初始化为-1,该算法实际上是一个递归求解的过程,如果在动态规划过程中已经计算过init->ω(递归形式),则直接返回即可。
所述步骤3)中,init初始值为0,ω的初始值2n,n是器件上螺丝孔的数目,递归的出口的条件是ω=0,即所有的螺丝孔均锁紧,此时返回0;递归过程中当remove[ω][init]不等于-1,返回remove[ω][init],递归过程中依次返回的remove[ω][init]中的init的顺序即最优路径下的xy轴自动螺丝机所走过的螺丝孔的顺序。
更进一步,所述步骤4)中,z轴向下移动一段固定距离,xy轴自动锁丝机控制系统里的螺丝供料器自动吹螺丝到器件的喷嘴上,然后通过控制气缸的下压进而控制固定在z轴上的电批压到喷嘴上,喷嘴和螺丝孔接触,电批转动,螺丝锁紧。
所述步骤5)中,等到下一个未加工的器件放到工作台上后,xy轴自动螺丝机按照(xn′,yn′),(xn-1′,yn-1),···,(x1′,y1)′的倒序依次锁丝,把器件上所有螺丝孔里的螺丝锁紧;
本发明的有益效果表现在:(1)采用动态规划法寻得自动锁丝机xy轴的最优锁丝路径,使得加工一个器件的时间最短,进一步提高器件加工效率;(2)由于螺丝由供料器自动吹到喷嘴上,加工完一个器件后,采用x坐标值表和y坐标值表倒序排列的方法,有效避免了传统上xy轴复位过程中,所走的路径使得器件加工时间变长的问题。(3)路径优化后的x坐标值表、y坐标值表都是提前规划好的,大大减少了系统计算时间,提高了处理效率,使得xy轴自动锁丝机运动的实时性更高;(4)控制方法基于stm32f407实现,资源丰富并且能减小xy轴自动锁丝机控制器的体积。
附图说明
图1为xy轴自动锁丝机锁丝路径优化控制的实现流程图。
图2为器件上螺丝孔距离表,表中的数值即为每两个螺丝孔之间的距离。
图3为根据动态规划法得出的最优锁丝路径示意图,从左至右依次为未优化的路径、优化后的路径、以及倒序排列的路径。
具体实施方式
下面结合附图对本发明的实施方式作进一步描述。
参照图1、图2和图3,一种xy轴自动锁丝机的锁丝路径优化控制方法,所述方法包括以下步骤:
1)首先将器件固定在工作平台上,得出器件上螺丝孔的x坐标值表x1,x2,···,xn和y坐标值表y1,y2,···,yn,下标1到n表示坐标的输入顺序;
2)根据输入的坐标值计算出每两个螺丝孔之间的距离,得出距离表dis[1][2],dis[1][3],···,dis[n][n],标号1到n表示螺丝孔的编号;
3)动态规划法找出最优锁丝路径,并记录下相对应锁丝的顺序,重新规划好器件上螺丝孔的x坐标值表x1′,x2′,···,xn′,y坐标值表y1′,y2′,···,yn′;
4)xy轴自动螺丝机按照(x1′,y2′),(x2′,y2′),···,(xn′,yn′)的顺序定位每个螺丝孔位置,锁紧螺丝,由此一个器件加工完成;
5)将x坐标值表和y坐标值表倒序排列,即xn′,xn-1′,···,x1′和yn′,yn-1′,···,y1′。
进一步,在所述步骤1)中,操作手持器手动校准,移动xy轴自动锁丝机的x轴和y轴,输入器件的每个螺丝孔坐标值,通过微调准确定位螺丝孔坐标。
再进一步,在所述步骤2)中,每两个螺丝孔之间的距离为dis[i][j],dis[i][j]即编号i的螺丝孔与编号j的螺丝孔之间的距离,显然,距离表中dis[i][i]=0,dis[i][j]=dis[j][i]。
距离表dis[1][1],dis[1][2],...,dis[n][n]具体计算公式如下:
图2为5个螺丝孔的距离表,螺丝孔之间的距离随机产生。
更进一步,在所述步骤3)中,x坐标值表x1′,x2′,···,xn′,y坐标值表y1′,y2′,···,yn′顺序不再是手动校准的输入顺序,而是最优锁丝路径下xy轴所走螺丝孔的顺序;动态规划法求最优锁丝路径是依据状态转移方程如下:
s(ω,init)=min{s(ω-k,k)+dis[k][init]}(2)
状态转移方程中,ω是用来记录器件上xy轴未走过的螺丝孔的集合。s(ω,init)表示从init点出发,经过ω集合中所有点的最小距离,min{s(ω-k,k)+dis[k][init]}表示由init点走到k点后状态转移,ω要更新,去掉k点。
进一步,动态规划法求最优锁丝路径是一个np完全问题,时间复杂度较大,因此,还需要一个remove[ω][init]进行去重,remove[ω][init]中的所有元素初始化为-1,该算法实际上是一个递归求解的过程。如果在动态规划过程中已经计算过init->ω(递归形式),则直接返回即可。
进一步,init初始值为0,ω的初始值2n,n是器件上螺丝孔的数目,递归的出口的条件是ω=0,即所有的螺丝孔均锁紧,此时返回0;递归过程中当remove[ω][init]不等于-1,返回remove[ω][init],递归过程中依次返回的remove[ω][init]中的init的顺序即最优锁丝路径下的xy轴自动锁丝机所走过的螺丝孔的顺序。
所述步骤4)中,z轴向下移动一段固定距离,xy轴自动锁丝机控制系统里的螺丝供料器自动吹螺丝到器件的喷嘴上,然后通过控制气缸的下压进而控制固定在z轴上的电批压到喷嘴上,喷嘴和螺丝孔接触,电批转动,螺丝锁紧。
所述步骤5)中,其目的是等到下一个未加工的器件放到工作台上后,xy轴自动螺丝机按照(xn′,yn′),(xn-1′,yn-1),···,(x1′,y1)′的顺序依次锁丝,把器件上所有螺丝孔里的螺丝锁紧;
本实施例的智能手套机滚筒选针的离散速度控制方法如图1所示,首先需进行s1步骤,按手动校准的顺序输入器件各个螺丝孔的位置坐标;在步骤s2中,根据输入的坐标值计算出每两个螺丝孔之间的距离,加载到距离表dis[1][1],dis[1][2],···,dis[n][n]中,如图2所示;在步骤s3中,动态规划法找出最优路径,运用递归的方法,计算每种路径的长度,由于时间复杂度比较大,使用remove[ω][init]进行去重;在这一递归算法中,remove[ω][init]中所有元素的初值为-1,此后重复计算过程中,当remove[ω][init]初值不为-1,返回remove[ω][init]进行去重,当ω为0时,返回值为0;每次计算用s(ω-k,k)+dis[k][init]逐步去分解,不断更新每种路径的距离值,返回到remove[ω][init],直到找到最优锁丝路径。
如图1步骤s4所示,路径优化完成后,xy轴自动螺丝机开始按照最优路径锁螺丝,xy轴自动螺丝机系统各部分相互配合,把器件上的所有螺丝锁紧;进行步骤s5,器件上螺丝锁紧后,将锁螺丝的顺序倒序,避免复位xy轴所走的路径,直接加工下一个器件;
本发明提出的一种xy轴自动锁丝机的锁丝路径优化控制方法采用采用动态规划法寻得自动锁丝机xy轴的最优锁丝路径,使得加工一个器件的时间最短,进一步提高器件加工效率;加工完一个器件后,采用x坐标值表和y坐标值表倒序排列的方法,有效避免了传统上xy轴复位过程中,所走的路径使得器件加工时间变长的问题;直接从控制器的存储单元加载出x坐标值表x1′,x2′,···,xn′和y坐标值表y1′,y2′,···,yn′的方式减少控制系统处理数据所花费的时间,避免脉冲发送过程中定时器中断因大量计算而产生的冲突问题,极大程度上减少加工器件的时间,同时保证在最优路径下锁螺丝。