CN107272685A - 一种控制机器人拐弯的方法和*** - Google Patents
一种控制机器人拐弯的方法和*** Download PDFInfo
- Publication number
- CN107272685A CN107272685A CN201710476144.8A CN201710476144A CN107272685A CN 107272685 A CN107272685 A CN 107272685A CN 201710476144 A CN201710476144 A CN 201710476144A CN 107272685 A CN107272685 A CN 107272685A
- Authority
- CN
- China
- Prior art keywords
- track
- article
- turn
- speed
- robot
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000005611 electricity Effects 0.000 claims 1
- 238000000465 moulding Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control 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 (10)
1.一种控制机器人拐弯的方法,其特征在于,所述机器人运行的第一条轨迹和第二条轨迹相交,所述方法包括:
步骤1:设置所述机器人拐弯时的回退长度参数和比例系数;
步骤2:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线;
步骤3:控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
2.根据权利要求1所述的一种控制机器人拐弯的方法,其特征在于,步骤2具体包括:
步骤21:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点;
步骤22:根据四个所述控制点得到曲率;
步骤23:根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线。
3.根据权利要求2所述的一种控制机器人拐弯的方法,其特征在于,所述步骤21具体包括:
步骤211:分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标;
步骤212:根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点;
步骤213:根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点;
步骤214:根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点;
步骤215:根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
4.根据权利要求1-3中任一项所述的一种控制机器人拐弯的方法,其特征在于,所述步骤3具体包括:
步骤31:根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度;
步骤32:根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
5.根据权利要求4所述的一种控制机器人拐弯的方法,其特征在于,所述机器人包括电机,步骤31具体包括:
步骤311:根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度;
步骤312:根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和所述电机最大转速设置所述拐弯前速度;
步骤313:根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度;
步骤314:根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
6.一种控制机器人拐弯的***,其特征在于,所述机器人运行的第一条轨迹和第二条轨迹相交,所述***包括:
设置模块:用于设置所述机器人拐弯时的回退长度参数和比例系数;
获取模块:用于根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数获取所述机器人拐弯时的三次贝塞尔曲线;
控制模块:用于控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
7.根据权利要求6所述的一种控制机器人拐弯的***,其特征在于,所述获取模块包括:
选取单元:根据所述第一条轨迹和所述第二条轨迹的坐标、所述回退长度参数和所述比例系数选取四个控制点;
第一得到单元:用于根据四个所述控制点得到曲率;
第二得到单元:用于根据所述曲率得到所述机器人拐弯时的所述三次贝塞尔曲线。
8.根据权利要求7所述的一种控制机器人拐弯的***,其特征在于,所述选取单元具体用于:
分别获取所述第一条轨迹的和所述第二条轨迹的起点坐标和终点坐标;
根据所述第一条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第一条轨迹回退后的坐标,所述第一条轨迹回退后的坐标对应的点为第一控制点;
根据所述第二条轨迹的起点坐标和终点坐标、所述回退长度参数和所述比例系数计算得到所述第二条轨迹回缩后的坐标,所述第二条轨迹回缩后的坐标对应的点为第四控制点;
根据所述比例系数和所述第一条轨迹回退后的坐标,在所述第一条轨迹的以所述第一控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第二控制点;
根据所述比例系数和所述第二条轨迹回缩后的坐标,在所述第二条轨迹的以所述第四控制点为切点的切线上,靠近所述第一条轨迹和所述第二条轨迹交点的位置选取第三控制点。
9.根据权利要求6-8中任一项所述的一种控制机器人拐弯的***,其特征在于,所述控制模块具体包括:
设置单元:用于根据所述第一条轨迹、所述三次贝塞尔曲线对应的轨迹和所述第二条轨迹,分别设置所述机器人在所述第一条轨迹上运行的拐弯前速度,所述机器人在所述三次贝塞尔曲线对应的轨迹上运行的拐弯时速度,所述机器人在所述第二条轨迹上运行的拐弯后速度;
控制单元:用于根据所述拐弯前速度、拐弯时速度和拐弯后速度控制所述机器人从所述第一条轨迹拐入所述三次贝塞尔曲线对应的轨迹,并经所述轨迹拐出至所述第二条轨迹,完成所述机器人的拐弯。
10.根据权利要求9所述的一种控制机器人拐弯的***,其特征在于,所述设置单元具体用于:
根据所述第一条轨迹和第二条轨迹分别设置所述机器人进入所述第一条轨迹的进入速度、开始拐弯时的拐入速度、结束拐弯时的拐出速度和在所述第二条轨迹上停止时的停止速度;
根据所述第一条轨迹的长度、所述进入速度、所述拐入速度和所述电机最大转速设置所述拐弯前速度;
根据所述第一条轨迹和所述第二条轨迹的夹角、所述拐入速度和所述拐出速度设置所述拐弯时速度;
根据所述第二条轨迹的长度、所述拐出速度、所述停止速度和所述电机的最大转速设置所述拐弯后速度。
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 true CN107272685A (zh) | 2017-10-20 |
CN107272685B 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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108724189A (zh) * | 2018-06-22 | 2018-11-02 | 金蝶软件(中国)有限公司 | 控制机器人移动的方法、装置、机器人控制设备 |
CN110119141A (zh) * | 2018-02-05 | 2019-08-13 | 本田技研工业株式会社 | 移动体控制***、移动体及移动体控制方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060015247A1 (en) * | 2004-07-07 | 2006-01-19 | The Boeing Company | Bezier curve flightpath guidance using moving waypoints |
CN102129710A (zh) * | 2010-12-30 | 2011-07-20 | 北京像素软件科技股份有限公司 | 一种飞行路径模拟方法及*** |
CN102207736A (zh) * | 2010-03-31 | 2011-10-05 | 中国科学院自动化研究所 | 基于贝塞尔曲线的机器人路径规划方法及装置 |
CN105573315A (zh) * | 2015-12-01 | 2016-05-11 | 珞石(北京)科技有限公司 | 用于工业机器人的笛卡尔空间轨迹的几何平滑方法 |
CN106313047A (zh) * | 2016-09-28 | 2017-01-11 | 华中科技大学 | 一种基于Bezier样条的机器人实时拐角过渡方法 |
CN106325294A (zh) * | 2016-08-22 | 2017-01-11 | 上海交通大学 | 基于贝塞尔曲线转接的无人机轨迹平滑方法 |
CN106600665A (zh) * | 2016-12-01 | 2017-04-26 | 北京像素软件科技股份有限公司 | 一种相机动画路径生成方法和装置 |
-
2017
- 2017-06-21 CN CN201710476144.8A patent/CN107272685B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060015247A1 (en) * | 2004-07-07 | 2006-01-19 | The Boeing Company | Bezier curve flightpath guidance using moving waypoints |
CN102207736A (zh) * | 2010-03-31 | 2011-10-05 | 中国科学院自动化研究所 | 基于贝塞尔曲线的机器人路径规划方法及装置 |
CN102129710A (zh) * | 2010-12-30 | 2011-07-20 | 北京像素软件科技股份有限公司 | 一种飞行路径模拟方法及*** |
CN105573315A (zh) * | 2015-12-01 | 2016-05-11 | 珞石(北京)科技有限公司 | 用于工业机器人的笛卡尔空间轨迹的几何平滑方法 |
CN106325294A (zh) * | 2016-08-22 | 2017-01-11 | 上海交通大学 | 基于贝塞尔曲线转接的无人机轨迹平滑方法 |
CN106313047A (zh) * | 2016-09-28 | 2017-01-11 | 华中科技大学 | 一种基于Bezier样条的机器人实时拐角过渡方法 |
CN106600665A (zh) * | 2016-12-01 | 2017-04-26 | 北京像素软件科技股份有限公司 | 一种相机动画路径生成方法和装置 |
Non-Patent Citations (4)
Title |
---|
K.G. JOLLY 等: "A Bezier curve based path planning in a multi-agent robot soccer system without violating the acceleration limits", 《ROBOTICS AND AUTONOMOUS SYSTEMS》 * |
朱东伟 等: "基于改进粒子群三次Bezier曲线优化的路径规划", 《计算机应用研究》 * |
陈成 等: "基于四阶贝塞尔曲线的无人车可行轨迹规划", 《自动化学报》 * |
高柳: "基于全向轮机器人的贝塞尔曲线轨迹生成算法", 《中国新通信》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110119141A (zh) * | 2018-02-05 | 2019-08-13 | 本田技研工业株式会社 | 移动体控制***、移动体及移动体控制方法 |
CN108724189A (zh) * | 2018-06-22 | 2018-11-02 | 金蝶软件(中国)有限公司 | 控制机器人移动的方法、装置、机器人控制设备 |
CN108724189B (zh) * | 2018-06-22 | 2020-10-30 | 金蝶软件(中国)有限公司 | 控制机器人移动的方法、装置、机器人控制设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107272685B (zh) | 2021-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109571473B (zh) | 一种误差可控的小线段轨迹光顺方法 | |
CN107030697B (zh) | 一种机器人笛卡尔空间平滑轨迹的规划方法 | |
CN105171743B (zh) | 码垛机械臂末端的运动轨迹规划方法 | |
CN106527351B (zh) | 一种过渡曲线长度动态确定的小线段实时插补方法 | |
CN109876968B (zh) | 一种钢结构机器人喷涂自动路径规划方法 | |
CN107272685A (zh) | 一种控制机器人拐弯的方法和*** | |
CN108527365A (zh) | 一种高速并联机器人驱动***参数优化选型方法 | |
CN103513612B (zh) | 控制工业机器人与变位机协调运动的***及方法 | |
CN101515181B (zh) | 一种飞机蒙皮纵向拉形加载轨迹设计与数控代码生成方法 | |
Yang et al. | Smooth trajectory planning along Bezier curve for mobile robots with velocity constraints | |
JP2009053926A (ja) | 経路計画装置及び経路計画方法 | |
CN109676603A (zh) | 一种柔性超冗余度机器人控制方法 | |
CN109959383A (zh) | 一种自动泊车路径规划方法 | |
CN1288601C (zh) | 基于自由曲面的三维散乱点集数据进行路径规划的方法 | |
Sun et al. | An adaptive uniform toolpath generation method for the automatic polishing of complex surfaces with adjustable density | |
JPH04111006A (ja) | ロボットの経路補間方法 | |
CN112207833B (zh) | 一种运动路径的规划方法、***、主机及存储介质 | |
Hagen et al. | Variational design of smooth rational Bézier curves | |
Yuan et al. | Mobile collaborative welding system for complex welding seams | |
CN109959382A (zh) | 一种自动泊车路径规划装置 | |
DiMarco et al. | Exponential and sigmoid-interpolated machining trajectories | |
Shahzadeh et al. | Path planning for cnc machines considering centripetal acceleration and jerk | |
JP3000101B2 (ja) | 軌跡制御補間方法 | |
JP3690424B2 (ja) | 数値制御方法及びその装置 | |
CN112276906A (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 |