CN107272685B - 一种控制机器人拐弯的方法和系统 - Google Patents

一种控制机器人拐弯的方法和系统 Download PDF

Info

Publication number
CN107272685B
CN107272685B CN201710476144.8A CN201710476144A CN107272685B CN 107272685 B CN107272685 B CN 107272685B CN 201710476144 A CN201710476144 A CN 201710476144A CN 107272685 B CN107272685 B CN 107272685B
Authority
CN
China
Prior art keywords
track
speed
robot
turning
point
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
Application number
CN201710476144.8A
Other languages
English (en)
Other versions
CN107272685A (zh
Inventor
张文前
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sinomach Intelligence Technology Research Institute Co ltd
Original Assignee
Sinomach Intelligence Technology Research Institute Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sinomach Intelligence Technology Research Institute Co ltd filed Critical Sinomach Intelligence Technology Research Institute Co ltd
Priority to CN201710476144.8A priority Critical patent/CN107272685B/zh
Publication of CN107272685A publication Critical patent/CN107272685A/zh
Application granted granted Critical
Publication of CN107272685B publication Critical patent/CN107272685B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本发明实施例公开了一种控制机器人拐弯的方法和系统,属于机器人技术领域。该方法包括:步骤1:设置机器人拐弯时的回退长度参数和比例系数。步骤2:根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数获取机器人拐弯时的三次贝塞尔曲线。步骤3:控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经轨迹拐出至第二条轨迹,完成机器人的拐弯。本发明通过建立三次贝塞尔曲线,以使机器人从第一条轨迹运行至三次贝塞尔曲线对应的轨迹,再运行至第二条轨迹以完成机器人拐弯的技术方案,实现了快速且平滑的完成运行的技术效果。

Description

一种控制机器人拐弯的方法和系统
技术领域
本发明涉及机器人技术领域,特别涉及一种控制机器人拐弯的方法和系统。
背景技术
随着科学技术的不断发展,机器人的发展和应用成为一种必然的趋势。机器人也已经应用到工业等领域中,并带来了积极的应用效果。不管是机器人或是工业机器人,机器人本身呈现多自由度、多任务发展,精确高效的机器人拐弯区实现算法成为研究的热点。目前,国内外学者对于机器人拐弯区建模方法已经展开了深入的研究,其中有矢量插值法,该方法可以适用于大部分拐弯区问题;还包括最为经典的建模方法为圆弧算法,圆弧算法希望通过对拐弯前后轨迹的回退,在两者之间通过圆弧过渡。
在实现本发明的过程中,发明人发现至少存在如下问题:
1.轨迹不够平滑,缺乏通用性;
2.灵活度低,复杂度高;
3.不能应用于三维空间切线不相交的两段轨迹。
发明内容
本发明的目的是使机器人灵活的平滑的完成拐弯。
为实现上述目的,本发明提供了一种控制机器人拐弯的方法,机器人运行的第一条轨迹和第二条轨迹相交,该方法包括:步骤1:设置所述机器人拐弯时的回退长度参数和比例系数。步骤2:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线。步骤3:控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
通过本实施例提供的技术方案,实现了机器人从第一运动轨迹平滑至三次贝塞尔曲线对应的轨迹,在平滑至第二运动轨迹。实现了灵活度高的拐弯技术效果。
优选地,步骤2具体包括:步骤21:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点。步骤22:根据四个所述控制点得到曲率。步骤23:根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线。
优选地,步骤21具体包括:步骤211:分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标。步骤212:根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点。步骤213:根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点。步骤214:根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点。步骤215:根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
优选地,步骤3具体包括:步骤31:根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度。步骤32:根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
优选地,机器人包括电机,步骤31具体包括:步骤311:根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度。步骤312:根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和所述电机最大转速设置所述拐弯前速度。步骤313:根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度。步骤314:根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
根据本发明的另一方面,本发明提供了与上述方法相对应的一种控制机器人拐弯的系统,所述机器人运行的第一条轨迹和第二条轨迹相交,所述系统包括:设置模块:用于设置所述机器人拐弯时的回退长度参数和比例系数。获取模块:用于根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线。控制模块:用于控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
优选地,所述获取模块包括:选取单元:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点。第一得到单元:用于根据四个所述控制点得到曲率。第二得到单元:用于根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线。
优选地,所述选取单元具体用于:分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标。根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点。根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点。根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点。根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
优选地,所述控制模块具体包括:设置单元:用于根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度。控制单元:用于根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
优选地,所述设置单元具体用于:根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度。根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和所述电机最大转速设置所述拐弯前速度。根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度。根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
本发明实施例的有益效果在于,由于采用了根据设置的回退长度参数、比例系数、第一条轨迹和第二条轨迹的坐标获取机器人拐弯时的三次贝塞尔曲线,以控制机器人完成转弯的技术方案,实现了灵活性高,快速实现机器人平滑的技术效果。
附图说明
图1是本发明实施例提供的一种控制机器人拐弯的方法的流程示意图;
图2是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图;
图3是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图;
图4是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图;
图5是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图;
图6是本发明实施例提供的一种控制机器人拐弯的系统的结构示意图;
图7是本发明另一实施例提供的一种控制机器人拐弯的系统的结构示意图;
图8是本发明另一实施例提供的一种控制机器人拐弯的系统的结构示意图;
图9是本发明实施例第一条轨迹和第二条轨迹皆为直线轨迹时,四个控制点的选取示意图;
图10是本发明实施例一条轨迹为直线轨迹,另一条轨迹为圆弧形轨迹时,四个控制点的选取示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
请参阅图1,图1是本发明实施例提供的一种控制机器人拐弯的方法的流程示意图。
如图1所示,机器人运行的第一条轨迹和第二条轨迹相交,控制机器人拐弯的方法包括:步骤1:设置机器人拐弯时的回退长度参数和比例系数。步骤2:根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数获取机器人拐弯时的三次贝塞尔曲线。步骤3:控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经轨迹拐出至第二条轨迹,完成机器人的拐弯。
在本实施例中,第一条轨迹和第二条轨迹相交,机器人需要从第一条轨迹运行至第二条轨迹。显然,机器人不可能从第一条轨迹运行至第一条轨迹和第二条轨迹的交点处,再从交点处运行至第二条轨迹。机器人需要以曲线的方式运行,以从第一条轨迹平滑的运行至第二条轨迹。机器人拐弯时的回退是指,第一条轨迹尾部后退,第二条轨迹前端回缩。可以理解的是,第一条轨迹和第二条轨迹分别有两个端点,第一条轨迹的尾部是指第一条轨迹靠近第一条轨迹和第二条轨迹相交的位置的端点,第二条轨迹前端是指第二条轨迹靠近第一条轨迹和第二条轨迹相交的位置的端点。根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数获取机器人拐弯时的三次贝塞尔曲线,第一条轨迹和第二条轨迹有无数个点,对应无数个坐标,此处所说的坐标,优选为第一条轨迹的两个端点和第二条轨迹的两个端点的坐标。根据三次贝塞尔曲线得到对应的拐弯轨迹,机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,再拐出至第二条轨迹,以完成拐弯。
通过本实施例提供的技术方案,一方面,通过利用三次贝塞尔曲线,不需要再积分计算曲线长度,大大减小了计算的复杂程度。另一方面,利用三次贝塞尔曲线建立的拐弯轨迹,使得机器人更平滑的运行。
请参阅图2,图2是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图。
如图2所示,步骤2具体包括:步骤21:根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数选取四个控制点。步骤22:根据四个控制点得到曲率。步骤23:根据曲率得到所述机器人拐弯时的三次贝塞尔曲线。
在本实施例中,设置机器人拐弯时的回退长度参数和比例系数,根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数选取控制点,控制点的个数为四个。根据四个控制点得到曲率,再根据曲率得到机器人拐弯时的三次贝塞尔曲线。控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,再拐出至第二条轨迹,从而完成机器人的拐弯。需要说明的是,设置不同的比例系数,选取的控制点也就并不相同,控制点不同,曲率也就不相同,得到的三次贝塞尔曲线也就并不相同。可以根据实际情况的需求,设置不同的比例系数,以获取控制点,得到不同的曲率对应的三次贝塞尔曲线。
通过本实施例提供的技术方案,用户可以根据不同的任务属性,灵活选取比例系数,从而选取不同的控制点对三次贝塞尔曲线的曲率进行控制。实现了本实施例灵活性高,且通用性强的技术效果。
请参阅图3,图3是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图。
如图3所示,步骤21具体包括:步骤211:分别获取第一条轨迹的和第二条轨迹的起点坐标和终点坐标。步骤212:根据第一条轨迹的起点坐标和终点坐标、回退长度参数和比例系数计算得到第一条轨迹回退后的坐标,第一条轨迹回退后的坐标对应的点为第一控制点。步骤213:根据第二条轨迹的起点坐标和终点坐标、回退长度参数和比例系数计算得到第二条轨迹回缩后的坐标,第二条轨迹回缩后的坐标对应的点为第四控制点。步骤214:根据比例系数和第一条轨迹回退后的坐标,在第一条轨迹的以第一控制点为切点的切线上,靠近第一条轨迹和第二条轨迹交点的位置选取第二控制点。步骤215:根据比例系数和第二条轨迹回缩后的坐标,在第二条轨迹的以第四控制点为切点的切线上,靠近第一条轨迹和第二条轨迹交点的位置选取第三控制点。
实施例1,若第一条轨迹和第二条轨迹都为直线轨迹时,第一条轨迹标记为line1,第二条轨迹标记为line2,第一条轨迹line1的起点坐标和终点坐标分别为(0,0,0)和(0,2,0),第二条轨迹line2的起点坐标和终点坐标分别为(0,2,0)和(2,2,2),回退长度参数设为:curTurnL=0.4,比例系数设为:α=β=0.5。则四个控制点的计算方式具体为:line1后端回退curTurnL到(0,1.6,0),即为第一控制点。line2前端回缩curTurnL到(0.2*1.41421,2,0.2*1.41421),即为第四控制点。第二控制点为line1后端延切线方向前进α*curTurnL,坐标为(0,1.8,0)。第三控制点为line2前端延切线方向后退β*curTurnL,坐标为(0.1*1.41421,2,0.1*1.41421)。为更好的理解该技术方案,请结合该具体实施例与图9进行理解。其中,A点为第一控制点,B点为第二控制点,C点为第三控制点,D点为第四控制点。
实施例2,若第一条轨迹为圆弧,第二条轨迹为直线。第一条轨迹圆弧arc(R=2;X=Rcos(t);Y=Rsin(t);t=0:π/2)和第二条轨迹(2,0,1),(3.2,1.5,1.6)相交。设置回退长度参数为:curTurnL=1,比例系数为:α=β=1/3。则计算后得到的四个控制点详见图10。
在本发明的实施例中,实现了两条直线轨迹之间,或者直线轨迹与圆弧曲线轨迹之间的控制点的选取,实现机器人的平滑拐弯。
请参阅图4,图4是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图。
如图4所示,步骤3具体包括:步骤31:根据第一条轨迹、三次贝塞尔曲线对应的轨迹和第二条轨迹,分别设置机器人在第一条轨迹上运行的速度为在拐弯时的拐弯前速度,机器人在三次贝塞尔曲线对应的轨迹上运行的速度为拐弯时速度,机器人在第二条轨迹上运行的速度为拐弯后速度。步骤32:根据拐弯前速度、拐弯时速度和拐弯后速度控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经轨迹拐出至第二条轨迹,完成机器人的拐弯。
在本实施例中,分别设置机器人拐弯前速度、拐弯时速度和拐弯后速度,以使机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经过该轨迹拐出至第二条轨迹。可以理解的是,机器人的运行速度类似于车辆的运行速度,可以根据用户的需求设定,但是,为了安全起见,拐弯时的速度会低于拐弯前和拐弯后的速度。
请参阅图5,图5是本发明另一实施例提供的一种控制机器人拐弯的方法的流程示意图。
如图5所示,机器人包括电机,步骤31具体包括:步骤311:根据第一条轨迹和第二条轨迹分别设置机器人进入第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在第二条轨迹上停止时的停止速度。步骤312:根据第一条轨迹的长度、进入速度、拐入速度和电机最大转速设置拐弯前速度。步骤313:根据第一条轨迹和第二条轨迹的夹角、拐入速度和拐出速度设置拐弯时速度。步骤314:根据第二条轨迹的长度、拐出速度、停止速度和电机的最大转速设置拐弯后速度。
在本实施例中,根据第一条轨迹的长度、进入速度,拐入速度和电机的最大转速设置拐弯前的速度。第一条轨迹和第二条轨迹相交,呈一定的夹角,根据该夹角、拐入速度和拐出速度设置拐弯时的速度。并根据第二条轨迹的长度、拐出速度、停止速度和电机的最大转速设置拐弯后的速度。机器人根据拐弯前的速度实现拐弯前(第一条轨迹)的运行,根据拐弯时的速度实现在三次贝塞尔曲线对应的轨迹上运行,并根据拐弯后的速度实现在拐弯后(第二条轨迹)的运行。
根据本发明的另一方面,本发明提供了与上述方法相对应的一种控制机器人拐弯的系统。
请参阅图6,图6是本发明实施例提供的一种控制机器人拐弯的系统的结构示意图。
如图6所示,机器人运行的第一条轨迹和第二条轨迹相交,该系统包括:设置模块:用于设置机器人拐弯时的回退长度参数和比例系数。获取模块:用于根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数获取机器人拐弯时的三次贝塞尔曲线。控制模块:用于控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经轨迹拐出至第二条轨迹,完成机器人的拐弯。
请参阅图7,图7是本发明另一实施例提供的一种控制机器人拐弯的系统的结构示意图。
如图7所示,获取模块包括:选取单元:根据第一条轨迹和第二条轨迹的坐标、回退长度参数和比例系数选取四个控制点。第一得到单元:用于根据四个控制点得到曲率。第二得到单元:用于根据曲率得到机器人拐弯时的三次贝塞尔曲线。
具体地,选取单元具体用于:分别获取第一条轨迹的和第二条轨迹的起点坐标和终点坐标。根据第一条轨迹的起点坐标和终点坐标、回退长度参数和比例系数计算得到第一条轨迹回退后的坐标,第一条轨迹回退后的坐标对应的点为第一控制点。根据第二条轨迹的起点坐标和终点坐标、回退长度参数和比例系数计算得到第二条轨迹回缩后的坐标,第二条轨迹回缩后的坐标对应的点为第四控制点。根据比例系数和第一条轨迹回退后的坐标,在第一条轨迹的以第一控制点为切点的切线上,靠近第一条轨迹和第二条轨迹交点的位置选取第二控制点。根据比例系数和第二条轨迹回缩后的坐标,在第二条轨迹的以第四控制点为切点的切线上,靠近第一条轨迹和第二条轨迹交点的位置选取第三控制点。
请参阅图8,图8是本发明另一实施例提供的一种控制机器人拐弯的系统的结构示意图。
如图8所示,控制模块具体包括:设置单元:用于根据第一条轨迹、三次贝塞尔曲线对应的轨迹和第二条轨迹,分别设置机器人在第一条轨迹上运行的速度为拐弯前速度,机器人在三次贝塞尔曲线对应的轨迹上运行的速度为拐弯时速度,机器人在第二条轨迹上运行的速度为拐弯后速度。控制单元:用于根据拐弯前速度、拐弯时速度和拐弯后速度控制机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,并经轨迹拐出至第二条轨迹,完成机器人的拐弯。
具体地,设置单元具体用于:根据第一条轨迹和第二条轨迹分别设置机器人进入第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在第二条轨迹上停止时的停止速度。根据第一条轨迹的长度、进入速度、拐入速度和电机最大转速设置拐弯前速度。根据第一条轨迹和第二条轨迹的夹角、拐入速度和拐出速度设置拐弯时速度。根据第二条轨迹的长度、拐出速度、停止速度和电机的最大转速设置拐弯后速度。
本发明通过设置机器人拐弯时的回退长度参数和比例系数,并根据回退长度参数、比例系数、第一条轨迹和第二条轨迹的坐标获取三次贝塞尔曲线,机器人从第一条轨迹拐入三次贝塞尔曲线对应的轨迹,再拐出至第二条轨迹的技术方案,避免了采用圆弧算法和插值法造成的计算难度系数大的技术问题,实现了少运算,且平滑拐弯的技术效果。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (6)

1.一种控制机器人拐弯的方法,其特征在于,所述机器人运行的第一条轨迹和第二条轨迹相交,所述方法包括:
步骤1:设置所述机器人拐弯时的回退长度参数和比例系数;
步骤2:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线;
步骤3:控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯;
其中,所述步骤2具体包括:
步骤21:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点;
步骤22:根据四个所述控制点得到曲率;
步骤23:根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线;
其中,所述步骤3具体包括:
步骤31:根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度;
步骤32:根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
2.根据权利要求1所述的一种控制机器人拐弯的方法,其特征在于,所述步骤21具体包括:
步骤211:分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标;
步骤212:根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点;
步骤213:根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点;
步骤214:根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点;
步骤215:根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
3.根据权利要求1或2所述的一种控制机器人拐弯的方法,其特征在于,所述机器人包括电机,步骤31具体包括:
步骤311:根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度;
步骤312:根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和所述电机最大转速设置所述拐弯前速度;
步骤313:根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度;
步骤314:根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
4.一种控制机器人拐弯的系统,其特征在于,所述机器人运行的第一条轨迹和第二条轨迹相交,所述系统包括:
设置模块:用于设置所述机器人拐弯时的回退长度参数和比例系数;
获取模块:用于根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线;
控制模块:用于控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯;
其中,所述获取模块包括:
选取单元:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点;
第一得到单元:用于根据四个所述控制点得到曲率;
第二得到单元:用于根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线;
其中,所述控制模块具体包括:
设置单元:用于根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度;
控制单元:用于根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
5.根据权利要求4所述的一种控制机器人拐弯的系统,其特征在于,所述选取单元具体用于:
分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标;
根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点;
根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点;
根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点;
根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
6.根据权利要求4或5任一项所述的一种控制机器人拐弯的系统,其特征在于,所述设置单元具体用于:
根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度;
根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和电机最大转速设置所述拐弯前速度;
根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度;
根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
CN201710476144.8A 2017-06-21 2017-06-21 一种控制机器人拐弯的方法和系统 Active CN107272685B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710476144.8A CN107272685B (zh) 2017-06-21 2017-06-21 一种控制机器人拐弯的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710476144.8A CN107272685B (zh) 2017-06-21 2017-06-21 一种控制机器人拐弯的方法和系统

Publications (2)

Publication Number Publication Date
CN107272685A CN107272685A (zh) 2017-10-20
CN107272685B true CN107272685B (zh) 2021-01-08

Family

ID=60069488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710476144.8A Active CN107272685B (zh) 2017-06-21 2017-06-21 一种控制机器人拐弯的方法和系统

Country Status (1)

Country Link
CN (1) CN107272685B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6774445B2 (ja) * 2018-02-05 2020-10-21 本田技研工業株式会社 移動体制御システム、移動体及び移動体制御方法
CN108724189B (zh) * 2018-06-22 2020-10-30 金蝶软件(中国)有限公司 控制机器人移动的方法、装置、机器人控制设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106600665A (zh) * 2016-12-01 2017-04-26 北京像素软件科技股份有限公司 一种相机动画路径生成方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228227B2 (en) * 2004-07-07 2007-06-05 The Boeing Company Bezier curve flightpath guidance using moving waypoints
CN102207736B (zh) * 2010-03-31 2013-01-02 中国科学院自动化研究所 基于贝塞尔曲线的机器人路径规划方法及装置
CN102129710A (zh) * 2010-12-30 2011-07-20 北京像素软件科技股份有限公司 一种飞行路径模拟方法及系统
CN105573315B (zh) * 2015-12-01 2020-04-10 珞石(北京)科技有限公司 用于工业机器人的笛卡尔空间轨迹的几何平滑方法
CN106325294B (zh) * 2016-08-22 2020-03-06 上海交通大学 基于贝塞尔曲线转接的无人机轨迹平滑方法
CN106313047B (zh) * 2016-09-28 2018-08-21 华中科技大学 一种基于Bezier样条的机器人实时拐角过渡方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106600665A (zh) * 2016-12-01 2017-04-26 北京像素软件科技股份有限公司 一种相机动画路径生成方法和装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Bezier curve based path planning in a multi-agent robot soccer system without violating the acceleration limits;K.G. Jolly 等;《Robotics and Autonomous Systems》;20080406;全文 *
基于四阶贝塞尔曲线的无人车可行轨迹规划;陈成 等;《自动化学报》;20150331;全文 *
基于改进粒子群三次Bezier曲线优化的路径规划;朱东伟 等;《计算机应用研究》;20120531;全文 *

Also Published As

Publication number Publication date
CN107272685A (zh) 2017-10-20

Similar Documents

Publication Publication Date Title
Wang et al. Research and implementation of a non-supporting 3D printing method based on 5-axis dynamic slice algorithm
CN109571473B (zh) 一种误差可控的小线段轨迹光顺方法
CN107615194B (zh) 加工轨迹平滑转接的方法及加工装置
Affouard et al. Avoiding 5-axis singularities using tool path deformation
CN108568817B (zh) 一种基于贝塞尔曲线的Delta机器人轨迹连接控制方法
Jahanpour et al. A novel acc-jerk-limited NURBS interpolation enhanced with an optimized S-shaped quintic feedrate scheduling scheme
CN110900612B (zh) 一种位姿同步的六轴工业机器人轨迹平顺方法
CN101907876B (zh) 适用于数控装置的指令点整形压缩插补方法
CN108958173B (zh) 基于梯形求解的任意位移速度下的s曲线加减速规划方法
CN111061213A (zh) 一种基于Bezier曲线转角平滑过渡算法的加工方法
CN102566511B (zh) 五轴数控系统刀心点插补路径插值方法
CN103353761B (zh) 机器人连续加工方法、装置及平滑转接方法、装置
CN107272685B (zh) 一种控制机器人拐弯的方法和系统
CN113189938A (zh) 一种连续加工路径的速度曲线规划方法
WO2015098085A1 (ja) 動作プログラム作成方法およびロボットの制御方法
CN114274949B (zh) 远程遥控泊入泊出路径规划方法、系统、车辆及存储介质
CN111633668A (zh) 一种用于机器人加工三维自由曲面的运动控制方法
CN109959383A (zh) 一种自动泊车路径规划方法
CN112207833B (zh) 一种运动路径的规划方法、系统、主机及存储介质
CN103901815A (zh) 数值控制装置和数值控制方法
CN103353737B (zh) 机器人连续加工方法、装置及平滑转接方法、装置
CN108279644B (zh) 基于叠加指令的直线插补控制方法
US20230056743A1 (en) Method, system and computer program product for determining a machining path and method for machining a workpiece using of a multi-axis machine tool
CN105929796A (zh) 三轴数控系统高速高精度小线段插补协处理器
CN113467376B (zh) 一种面向多加工场景的多轴轨迹压缩方法

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