[go: up one dir, main page]

CN103576688B - A kind of robot is counterclockwise clockwise motion control method more first - Google Patents

A kind of robot is counterclockwise clockwise motion control method more first Download PDF

Info

Publication number
CN103576688B
CN103576688B CN201310597933.9A CN201310597933A CN103576688B CN 103576688 B CN103576688 B CN 103576688B CN 201310597933 A CN201310597933 A CN 201310597933A CN 103576688 B CN103576688 B CN 103576688B
Authority
CN
China
Prior art keywords
center
point
coordinates
robot
unit vector
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.)
Expired - Fee Related
Application number
CN201310597933.9A
Other languages
Chinese (zh)
Other versions
CN103576688A (en
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.)
CHANGZHOU SCIENCE AND ART FUSION TECHNOLOGY RESEARCH INSTITUTE
Institute of Automation of Chinese Academy of Science
Original Assignee
CHANGZHOU SCIENCE AND ART FUSION TECHNOLOGY RESEARCH INSTITUTE
Institute of Automation of Chinese Academy of Science
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 CHANGZHOU SCIENCE AND ART FUSION TECHNOLOGY RESEARCH INSTITUTE, Institute of Automation of Chinese Academy of Science filed Critical CHANGZHOU SCIENCE AND ART FUSION TECHNOLOGY RESEARCH INSTITUTE
Priority to CN201310597933.9A priority Critical patent/CN103576688B/en
Publication of CN103576688A publication Critical patent/CN103576688A/en
Application granted granted Critical
Publication of CN103576688B publication Critical patent/CN103576688B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Manipulator (AREA)

Abstract

本发明公开了一种机器人先逆时针再顺时针运动控制方法,该方法包括以下步骤:设定并输入多个机器人运动参数;计算机器人运动的第一圆心的坐标;计算机器人运动的第二圆心的坐标;计算第一圆心指向第二圆心的第一单位向量;计算第一单位向量与第二单位向量之间的夹角;计算机器人运动的第一转换点的坐标;计算机器人运动的第二转换点的坐标;计算由第一转换点指向第二转换点的第二单位向量;计算机器人运动的第一转角;计算机器人运动的第二转角;基于上述运动路径参数,对于机器人的先逆时针后顺时针运动进行控制。本发明结合机器人学知识,利用坐标旋转变换方法实现了对于机器人先逆时针再顺时针运动的控制,本发明简单而且有效。

The invention discloses a method for controlling the movement of a robot counterclockwise and then clockwise. The method comprises the following steps: setting and inputting a plurality of robot movement parameters; calculating the coordinates of the first center of the robot movement; and calculating the second center of the movement of the robot coordinates; calculate the first unit vector pointing to the second center of the first circle; calculate the angle between the first unit vector and the second unit vector; calculate the coordinates of the first conversion point of the robot motion; calculate the second of the robot motion The coordinates of the conversion point; calculate the second unit vector from the first conversion point to the second conversion point; calculate the first rotation angle of the robot motion; calculate the second rotation angle of the robot motion; Control with a clockwise motion. The invention realizes the control of the counterclockwise and then clockwise movement of the robot by using the coordinate rotation transformation method in combination with the knowledge of robotics. The invention is simple and effective.

Description

一种机器人先逆时针再顺时针运动控制方法A control method for robot movement counterclockwise and then clockwise

技术领域technical field

本发明涉及机器人技术领域,具体是一种机器人先逆时针再顺时针运动控制方法。The invention relates to the technical field of robots, in particular to a method for controlling the counterclockwise and then clockwise movement of a robot.

背景技术Background technique

近年来,勘察、目标获取、搜索与援救、监督、环境监测等方面广泛的应用需求使移动机器人技术得到快速的发展。其中,导航技术是移动机器人研究的核心技术之一,而路径规划是导航的基本环节之一。机器人路径规划的基本思想是依据某种标准(如时间最短、能量最少、路径最短等)寻找一条从起始点到目标点的无碰撞的最优或近似最优的路径。路径规划可分为全局路径规划与局部路径规划,全局路径规划的主要算法有可视图法、栅格解耦法、概率图法、拓扑法和神经网络法;局部路径规划的主要算法有人工势场法、快速随机搜索树(RRT)和模糊逻辑算法等。In recent years, a wide range of application requirements in surveying, target acquisition, search and rescue, surveillance, and environmental monitoring have led to rapid development of mobile robot technology. Among them, navigation technology is one of the core technologies of mobile robot research, and path planning is one of the basic links of navigation. The basic idea of robot path planning is to find a collision-free optimal or nearly optimal path from the starting point to the target point according to certain criteria (such as the shortest time, the least energy, the shortest path, etc.). Path planning can be divided into global path planning and local path planning. The main algorithms of global path planning include visual map method, grid decoupling method, probability map method, topology method and neural network method; the main algorithm of local path planning is artificial potential field method, fast random search tree (RRT) and fuzzy logic algorithm, etc.

发明内容Contents of the invention

本发明的目的是提出一种机器人先逆时针再顺时针运动控制方法,以进行机器人CSC路径规划,使得机器人按照规划的路线进行先逆时针再顺时针运动。The object of the present invention is to propose a method for controlling the movement of the robot counterclockwise first and then clockwise, so as to plan the CSC path of the robot, so that the robot moves counterclockwise first and then clockwise according to the planned route.

本发明提出的一种机器人先逆时针再顺时针运动控制方法包括以下步骤:A method for controlling the movement of a robot counterclockwise and then clockwise includes the following steps:

步骤S1:设定并输入多个机器人运动参数,所述运动参数至少包括:机器人运动初始点S坐标(xs,ys),机器人在初始点S处的初始方向单位向量Ps(pxs,pys),机器人运动目标点G坐标(xg,yg),机器人在目标点G处的目标方向单位向量Pg(pxg,pyg),以及机器人容许的转弯半径R;Step S1: Set and input multiple robot motion parameters, the motion parameters at least include: the coordinates of the initial point S of the robot motion (x s , y s ), the initial direction unit vector Ps of the robot at the initial point S (p xs , p ys ), the coordinates of the robot’s moving target point G (x g , y g ), the target direction unit vector Pg (p xg , p yg ) of the robot at the target point G, and the allowable turning radius R of the robot;

步骤S2:基于初始点S、初始方向单位向量Ps和转弯半径R计算得到机器人从初始点S沿初始方向单位向量Ps以转弯半径R做逆时针绕第一圆心Os运动的第一圆心Os的坐标(xos,yos);Step S2: Based on the initial point S, the initial direction unit vector Ps and the turning radius R, calculate the coordinates of the first center Os of the robot moving counterclockwise around the first center Os from the initial point S along the initial direction unit vector Ps with the turning radius R (x os , y os );

步骤S3:基于目标点G、目标方向单位向量Pg和转弯半径R计算得到机器人以转弯半径R沿顺时针方向绕第二圆心Og运动以到达目标点G和目标方向单位向量Pg的第二圆心Og的坐标(xog,yog);Step S3: Based on the calculation of the target point G, the target direction unit vector Pg and the turning radius R, the robot moves clockwise around the second circle center Og with the turning radius R to reach the second circle center Og of the target point G and the target direction unit vector Pg The coordinates of (x og , y og );

步骤S4:基于第一圆心Os和第二圆心Og的坐标计算得到由第一圆心Os指向第二圆心Og的第一单位向量Q(qx,qy);Step S4: Calculate the first unit vector Q(q x , q y ) pointing from the first center Os to the second center Og based on the coordinates of the first center Os and the second center Og;

步骤S5:基于第一圆心Os、第二圆心Og和转弯半径R计算得到第一单位向量Q与第二单位向量W之间的夹角γ;Step S5: Calculate the angle γ between the first unit vector Q and the second unit vector W based on the first center Os, the second center Og and the turning radius R;

步骤S6:基于所述第一圆心Os、转弯半径R和第一单位向量Q计算得到机器人从绕第一圆心Os逆时针运动转为沿第二单位向量W方向作直线运动的第一转换点Ws的坐标(xws,yws);Step S6: Based on the first center Os, the turning radius R and the first unit vector Q, calculate the first conversion point Ws at which the robot moves counterclockwise around the first center Os to move in a straight line along the direction of the second unit vector W The coordinates of (x ws , y ws );

步骤S7:基于所述第二圆心Og、转弯半径R和第一单位向量Q计算得到机器人从沿第二单位向量W方向直线运动转为绕第二圆心Og顺时针运动的第二转换点Wg的坐标(xwg,ywg);Step S7: Calculate based on the second center of circle Og, turning radius R and first unit vector Q to obtain the second transition point Wg at which the robot moves from a straight line along the direction of the second unit vector W to moving clockwise around the second center of circle Og coordinates(x wg , y wg );

步骤S8:计算得到由第一转换点Ws指向第二转换点Wg的第二单位向量W(wx,wy);Step S8: Calculate the second unit vector W(w x , w y ) pointing from the first conversion point Ws to the second conversion point Wg;

步骤S9:基于第一圆心Os、初始点S、第一转换点Ws计算得到机器人从初始点S逆时针绕第一圆心Os运动到第一转换点Ws转过的第一转角αsStep S9: Calculate based on the first center Os, the initial point S, and the first conversion point Ws to obtain the first rotation angle α s that the robot moves counterclockwise around the first center Os from the initial point S to the first conversion point Ws;

步骤S10:基于第二圆心Og、目标点G、第二转换点Wg计算得到机器人从第二转换点Wg沿顺时针绕第二圆心Og运动到目标点G转过的第二转角βgStep S10: Based on the second center of circle Og, the target point G, and the second conversion point Wg, calculate the second rotation angle β g that the robot passes through from the second conversion point Wg clockwise around the second center of circle Og to the target point G;

步骤S11:基于所述步骤S2-S10计算得到的运动路径参数,对于机器人的先逆时针后顺时针运动进行控制,其中,所述机器人的先逆时针后顺时针运动路径为:由初始点S以转弯半径R绕第一圆心Os逆时针运动转过第一转角αs到达第一转换点Ws,由第一转换点Ws沿第二单位向量W方向直线运动到第二转换点Wg,由第二转换点Wg以转弯半径R绕第二圆心Og顺时针运动转过第二转角βg即到达目标点G。Step S11: Based on the motion path parameters calculated in the steps S2-S10, control the first counterclockwise and then clockwise motion of the robot, wherein, the first counterclockwise and then clockwise motion path of the robot is: from the initial point S Move counterclockwise around the first center of circle Os with the turning radius R and turn through the first turning angle α s to reach the first conversion point Ws, from the first conversion point Ws to the second conversion point Wg in a straight line along the direction of the second unit vector W, and from the second The second conversion point Wg moves clockwise around the second center of circle Og with the turning radius R and turns over the second turning angle βg to reach the target point G.

本发明结合机器人学,提出了一种机器人先逆时针再顺时针运动控制方法,其具体通过坐标旋转变换的方法来实现,简单而且有效。In combination with robotics, the present invention proposes a counterclockwise and then clockwise motion control method for a robot, which is implemented through coordinate rotation transformation, which is simple and effective.

附图说明Description of drawings

图1是本发明机器人先逆时针再顺时针运动控制方法的示意图。Fig. 1 is a schematic diagram of the method for controlling the movement of the robot first counterclockwise and then clockwise according to the present invention.

具体实施方式detailed description

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be described in further detail below in conjunction with specific embodiments and with reference to the accompanying drawings.

图1是本发明机器人先逆时针再顺时针运动控制方法,如图1所示,本发明提出的一种机器人先逆时针再顺时针运动控制方法包括以下几个步骤:Fig. 1 is the method for controlling the movement of the robot counterclockwise and then clockwise according to the present invention. As shown in Fig. 1, the method for controlling the movement of the robot anticlockwise and then clockwise in the present invention includes the following steps:

步骤S1:设定并输入多个机器人运动参数,所述运动参数至少包括:机器人运动初始点S坐标(xs,ys),机器人在初始点S处的初始方向单位向量Ps(pxs,pys),机器人运动目标点G坐标(xg,yg),机器人在目标点G处的目标方向单位向量Pg(pxg,pyg),以及机器人容许的转弯半径R;Step S1: Set and input multiple robot motion parameters, the motion parameters at least include: the coordinates of the initial point S of the robot motion (x s , y s ), the initial direction unit vector Ps of the robot at the initial point S (p xs , p ys ), the coordinates of the robot’s moving target point G (x g , y g ), the target direction unit vector Pg (p xg , p yg ) of the robot at the target point G, and the allowable turning radius R of the robot;

步骤S2:基于初始点S、初始方向单位向量Ps和转弯半径R计算得到机器人从初始点S沿初始方向单位向量Ps以转弯半径R做逆时针绕第一圆心Os运动的第一圆心Os的坐标(xos,yos);Step S2: Based on the initial point S, the initial direction unit vector Ps and the turning radius R, calculate the coordinates of the first center Os of the robot moving counterclockwise around the first center Os from the initial point S along the initial direction unit vector Ps with the turning radius R (x os , y os );

该步骤具体为:先将初始方向单位向量Ps逆时针旋转90度,然后与转弯半径R相乘,再将相乘结果与初始点S坐标相加即得第一圆心Os的坐标。This step is specifically: first rotate the initial direction unit vector Ps 90 degrees counterclockwise, then multiply it by the turning radius R, and then add the multiplication result to the initial point S coordinates to obtain the coordinates of the first center Os.

步骤S3:基于目标点G、目标方向单位向量Pg和转弯半径R计算得到机器人以转弯半径R沿顺时针方向绕第二圆心Og运动以到达目标点G和目标方向单位向量Pg的第二圆心Og的坐标(xog,yog);Step S3: Based on the calculation of the target point G, the target direction unit vector Pg and the turning radius R, the robot moves clockwise around the second circle center Og with the turning radius R to reach the second circle center Og of the target point G and the target direction unit vector Pg The coordinates of (x og , y og );

该步骤具体为:先将目标方向单位向量Pg顺时针旋转90度,然后与转弯半径R相乘,再将相乘结果与目标点G坐标相加即得第二圆心Og的坐标。This step is specifically: first rotate the target direction unit vector Pg 90 degrees clockwise, then multiply it by the turning radius R, and then add the multiplication result to the coordinates of the target point G to obtain the coordinates of the second circle center Og.

步骤S4:基于第一圆心Os和第二圆心Og的坐标计算得到由第一圆心Os指向第二圆心Og的第一单位向量Q(qx,qy);Step S4: Calculate the first unit vector Q(q x , q y ) pointing from the first center Os to the second center Og based on the coordinates of the first center Os and the second center Og;

该步骤具体为:用第二圆心Og的坐标减去第一圆心Os的坐标,再将相减结果除以第一圆心Os和第二圆心Og两点间的长度值即得第一单位向量Q。This step is specifically: Subtract the coordinates of the first center Os from the coordinates of the second center Og, and then divide the subtraction result by the length between the first center Os and the second center Og to obtain the first unit vector Q .

步骤S5:基于第一圆心Os、第二圆心Og和转弯半径R计算得到第一单位向量Q与第二单位向量W之间的夹角γ;Step S5: Calculate the angle γ between the first unit vector Q and the second unit vector W based on the first center Os, the second center Og and the turning radius R;

该步骤具体为:用2乘以R除以第一圆心Os和第二圆心Og两点间的长度值,再将计算结果进行反正弦即得夹角γ。This step is specifically as follows: multiply 2 by R and divide by the length value between the first circle center Os and the second circle center Og, and then perform the arc sine of the calculation result to obtain the included angle γ.

步骤S6:基于所述第一圆心Os、转弯半径R和第一单位向量Q计算得到机器人从绕第一圆心Os逆时针运动转为沿第二单位向量W方向作直线运动的第一转换点Ws的坐标(xws,yws);Step S6: Based on the first center Os, the turning radius R and the first unit vector Q, calculate the first conversion point Ws at which the robot moves counterclockwise around the first center Os to move in a straight line along the direction of the second unit vector W The coordinates of (x ws , y ws );

该步骤具体为:先将第一单位向量Q顺时针旋转(90-γ)度,然后与转弯半径R相乘,再将相乘结果与第一圆心Os的坐标相加即得第一转换点Ws的坐标。This step is specifically: first rotate the first unit vector Q clockwise by (90-γ) degrees, then multiply it by the turning radius R, and then add the multiplication result to the coordinates of the first center Os to obtain the first conversion point Coordinates of Ws.

步骤S7:基于所述第二圆心Og、转弯半径R和第一单位向量Q计算得到机器人从沿第二单位向量W方向直线运动转为绕第二圆心Og顺时针运动的第二转换点Wg的坐标(xwg,ywg);Step S7: Based on the second center Og, the turning radius R and the first unit vector Q, calculate the second transition point Wg at which the robot changes from linear motion in the direction of the second unit vector W to clockwise movement around the second center Og coordinates(x wg , y wg );

该步骤具体为:先将第一单位向量Q逆时针旋转(90+γ)度,然后与转弯半径R相乘,再将相乘结果与第二圆心Og坐标相加即得第二转换点Wg的坐标。This step is specifically: first rotate the first unit vector Q counterclockwise by (90+γ) degrees, then multiply it by the turning radius R, and then add the result of the multiplication to the coordinates of the second circle center Og to obtain the second conversion point Wg coordinate of.

步骤S8:计算得到由第一转换点Ws指向第二转换点Wg的第二单位向量W(wx,wy);Step S8: Calculate the second unit vector W(w x , w y ) pointing from the first conversion point Ws to the second conversion point Wg;

该步骤具体为:用第二转换点Wg的坐标减去第一转换点Ws的坐标,再将相减结果除以第一转换点Ws和第二转换点Wg两点间的长度值即得到第二单位向量W。This step is specifically as follows: subtract the coordinates of the first conversion point Ws from the coordinates of the second conversion point Wg, and then divide the subtraction result by the length value between the first conversion point Ws and the second conversion point Wg to obtain the second conversion point Wg Two unit vectors W.

步骤S9:基于第一圆心Os、初始点S、第一转换点Ws计算得到机器人从初始点S逆时针绕第一圆心Os运动到第一转换点Ws转过的第一转角αsStep S9: Calculate based on the first center Os, the initial point S, and the first conversion point Ws to obtain the first rotation angle α s that the robot moves counterclockwise around the first center Os from the initial point S to the first conversion point Ws;

所述步骤S9进一步包括以下步骤:Said step S9 further comprises the following steps:

步骤S91:计算第一圆心Os指向初始点S的第一向量MS:由初始点S的坐标减第一圆心Os的坐标可得第一向量MS;Step S91: Calculate the first vector MS pointing to the initial point S from the first center Os: subtract the coordinates of the first center Os from the coordinates of the initial point S to obtain the first vector MS;

步骤S92:计算第一圆心Os指向第一转换点Ws的第二向量NS:由第一转换点Ws的坐标减第一圆心Os的坐标可得第二向量NS;Step S92: Calculating the second vector NS pointing to the first conversion point Ws from the first center Os: subtracting the coordinates of the first center Os from the coordinates of the first conversion point Ws to obtain the second vector NS;

步骤S93:用反余弦求取第一向量MS和第二向量NS之间的夹角α;Step S93: Calculate the angle α between the first vector MS and the second vector NS by arccosine;

步骤S94:判断从初始点S逆时针绕第一圆心Os到达第一转换点Ws转过的第一转角αs是否大于180度,如果αs小于等于180度,则令αs等于α,否则令αs等于2π-α;Step S94: Judging whether the first rotation angle α s turned counterclockwise from the initial point S around the first center Os to the first conversion point Ws is greater than 180 degrees, if α s is less than or equal to 180 degrees, then set α s equal to α, otherwise Let α s equal to 2π-α;

所述步骤S94具体为:Described step S94 is specifically:

当pys<0且时,αs=2π-α;当pys<0且 y ws < y s - p xs p ys ( x ws - x s ) 时,αs=α;When p ys <0 and , α s =2π-α; when p ys <0 and the y ws < the y the s - p xs p ys ( x ws - x the s ) , α s =α;

当pys>0且时,αs=2π-α;当pys>0且 y ws > y s - p xs p ys ( x ws - x s ) 时,αs=α;When p ys > 0 and , α s =2π-α; when p ys >0 and the y ws > the y the s - p xs p ys ( x ws - x the s ) , α s =α;

当pys=0且xws≤0时,αs=2π-α;当pys=0且xws>0时,αs=α。When p ys =0 and x ws ≤0, α s =2π-α; when p ys =0 and x ws >0, α s =α.

步骤S10:基于第二圆心Og、目标点G、第二转换点Wg计算得到机器人从第二转换点Wg沿顺时针绕第二圆心Og运动到目标点G转过的第二转角βgStep S10: Based on the second center of circle Og, the target point G, and the second conversion point Wg, calculate the second rotation angle β g that the robot passes through from the second conversion point Wg clockwise around the second center of circle Og to the target point G;

所述步骤S10进一步包括以下步骤:The step S10 further includes the following steps:

步骤S101:计算第二圆心Og指向目标点G的第三向量MG:由目标点G的坐标减第二圆心Og的坐标即可得到第三向量MG;Step S101: Calculate the third vector MG pointing to the target point G from the second circle center Og: subtract the coordinates of the second circle center Og from the coordinates of the target point G to obtain the third vector MG;

步骤S102:计算第二圆心Og指向第二转换点Wg的第四向量NG:由第二转换点Wg的坐标减第二圆心Og的坐标即可得到第四向量NG;Step S102: Calculate the fourth vector NG pointing to the second conversion point Wg from the second center Og: subtract the coordinates of the second center Og from the coordinates of the second conversion point Wg to obtain the fourth vector NG;

步骤S103:用反余弦求取第三向量MG和第四向量NG之间的夹角β;Step S103: Calculate the angle β between the third vector MG and the fourth vector NG by using arc cosine;

步骤S104:判断从第二转换点Wg顺时针绕第二圆心Og运动到目标点G转过的角度βg是否大于180度,如果βg小于等于180度,则令βg等于β,否则令βg等于2π-β。Step S104: Judging whether the angle β g turned from the second conversion point Wg clockwise around the second center Og to the target point G is greater than 180 degrees, if β g is less than or equal to 180 degrees, then set β g equal to β, otherwise set β g is equal to 2π-β.

所述步骤S104具体为:The step S104 is specifically:

当pyg<0且时,βg=β;当pyg<0且 y wg < y g - p xg p yg ( x wg - x g ) 时,βg=2π-β;When p yg <0 and , β g = β; when p yg <0 and the y w g < the y g - p x g p yg ( x w g - x g ) , β g =2π-β;

当pyg>0且时,βg=β;当pyg>0且 y wg > y g - p xg p yg ( x wg - x g ) 时,βg=2π-β;When p yg > 0 and , β g = β; when p yg > 0 and the y w g > the y g - p x g p yg ( x w g - x g ) , β g =2π-β;

当pyg=0且xwg≤0时,βg=β;当pyg=0且xwg>0时,βg=2π-β。When p yg =0 and x wg ≤0, β g =β; when p yg =0 and x wg >0, β g =2π-β.

步骤S11:基于所述步骤S2-S10计算得到的运动路径参数,对于机器人的先逆时针后顺时针运动进行控制,其中,所述先逆时针后顺时针运动路径参数包括:第一圆心Os坐标(xos,yos),第一转换点Ws坐标(xws,yws),从初始点S逆时针绕第一圆心Os运动到第一转换点Ws转过的第一转角αs,第二单位向量W(wx,wy),第二圆心Og坐标(xog,yog),第二转换点Wg坐标(xwg,ywg),从第二转换点Wg沿顺时针绕第二圆心Og运动到目标点G转过的第二转角βg。所述机器人先逆时针后顺时针的运动路径具体为:由初始点S以转弯半径R绕第一圆心Os逆时针运动转过第一转角αs到达第一转换点Ws,由第一转换点Ws沿第二单位向量W方向直线运动到第二转换点Wg,由第二转换点Wg以转弯半径R绕第二圆心Og顺时针运动转过第二转角βg即到达目标点G。Step S11: Based on the motion path parameters calculated in the steps S2-S10, control the counterclockwise and then clockwise motion of the robot, wherein the counterclockwise and then clockwise motion path parameters include: the coordinates of the first circle center Os (x os , y os ), the coordinates of the first conversion point Ws (x ws , y ws ), the first rotation angle α s from the initial point S moving counterclockwise around the first center Os to the first conversion point Ws, the first Two unit vectors W(w x , w y ), the second circle center Og coordinates (x og , y og ), the second conversion point Wg coordinates (x wg , y wg ), from the second conversion point Wg around the second circle clockwise The second circle center Og moves to the second corner β g where the target point G turns. The movement path of the robot first counterclockwise and then clockwise is as follows: the initial point S moves counterclockwise around the first center of circle Os with the turning radius R and turns over the first turning angle α s to reach the first conversion point Ws, and the first conversion point Ws Ws moves linearly along the direction of the second unit vector W to the second conversion point Wg, and from the second conversion point Wg moves clockwise around the second center of circle Og with the turning radius R and turns over the second turning angle βg to reach the target point G.

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The specific embodiments described above have further described the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above descriptions are only specific embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present invention shall be included within the protection scope of the present invention.

Claims (7)

1.一种机器人先逆时针再顺时针运动控制方法,其特征在于,该方法包括以下步骤:1. a kind of robot anticlockwise and clockwise motion control method again, it is characterized in that, the method comprises the following steps: 步骤S1:设定并输入多个机器人运动参数,所述运动参数至少包括:机器人运动初始点S坐标(xs,ys),机器人在初始点S处的初始方向单位向量Ps(pxs,pys),机器人运动目标点G坐标(xg,yg),机器人在目标点G处的目标方向单位向量Pg(pxg,pyg),以及机器人容许的转弯半径R;Step S1: Set and input a plurality of robot motion parameters, the motion parameters at least include: the robot motion initial point S coordinates (x s , y s ), the initial direction unit vector Ps of the robot at the initial point S (p xs , p ys ), the coordinates of the moving target point G of the robot (x g , y g ), the target direction unit vector Pg(p xg , p yg ) of the robot at the target point G, and the allowable turning radius R of the robot; 步骤S2:基于初始点S、初始方向单位向量Ps和转弯半径R计算得到机器人从初始点S沿初始方向单位向量Ps以转弯半径R做逆时针绕第一圆心Os运动的第一圆心Os的坐标(xos,yos);Step S2: Based on the initial point S, the initial direction unit vector Ps and the turning radius R, calculate the coordinates of the first center Os of the robot moving counterclockwise around the first center Os from the initial point S along the initial direction unit vector Ps with the turning radius R (x os , y os ); 步骤S3:基于目标点G、目标方向单位向量Pg和转弯半径R计算得到机器人以转弯半径R沿顺时针方向绕第二圆心Og运动以到达目标点G和目标方向单位向量Pg的第二圆心Og的坐标(xog,yog);Step S3: Based on the calculation of the target point G, the target direction unit vector Pg and the turning radius R, the robot moves clockwise around the second circle center Og with the turning radius R to reach the second circle center Og of the target point G and the target direction unit vector Pg The coordinates of (x og , y og ); 步骤S4:基于第一圆心Os和第二圆心Og的坐标计算得到由第一圆心Os指向第二圆心Og的第一单位向量Q(qx,qy);Step S4: Calculate the first unit vector Q(q x , q y ) pointing from the first center Os to the second center Og based on the coordinates of the first center Os and the second center Og; 步骤S5:基于第一圆心Os、第二圆心Og和转弯半径R计算得到第一单位向量Q与第二单位向量W之间的夹角γ,其中,用2乘以R除以第一圆心Os和第二圆心Og两点间的长度值,再将计算结果进行反正弦即得夹角γ;Step S5: Calculate the angle γ between the first unit vector Q and the second unit vector W based on the first center Os, the second center Og, and the turning radius R, where 2 times R is divided by the first center Os and the length value between the two points of the second circle center Og, and then carry out the arc sine of the calculation result to obtain the included angle γ; 步骤S6:基于所述第一圆心Os、转弯半径R和第一单位向量Q计算得到机器人从绕第一圆心Os逆时针运动转为沿第二单位向量W方向作直线运动的第一转换点Ws的坐标(xws,yws);Step S6: Based on the first center Os, the turning radius R and the first unit vector Q, calculate the first conversion point Ws at which the robot moves counterclockwise around the first center Os to move in a straight line along the direction of the second unit vector W The coordinates of (x ws , y ws ); 步骤S7:基于所述第二圆心Og、转弯半径R和第一单位向量Q计算得到机器人从沿第二单位向量W方向直线运动转为绕第二圆心Og顺时针运动的第二转换点Wg的坐标(xwg,ywg);Step S7: Calculate based on the second center of circle Og, turning radius R and first unit vector Q to obtain the second transition point Wg at which the robot moves from a straight line along the direction of the second unit vector W to moving clockwise around the second center of circle Og coordinates(x wg , y wg ); 步骤S8:计算得到由第一转换点Ws指向第二转换点Wg的第二单位向量W(wx,wy);Step S8: Calculate the second unit vector W(w x , w y ) pointing from the first conversion point Ws to the second conversion point Wg; 步骤S9:基于第一圆心Os、初始点S、第一转换点Ws计算得到机器人从初始点S逆时针绕第一圆心Os运动到第一转换点Ws转过的第一转角αsStep S9: Calculate based on the first center Os, the initial point S, and the first conversion point Ws to obtain the first rotation angle α s that the robot moves counterclockwise around the first center Os from the initial point S to the first conversion point Ws; 步骤S10:基于第二圆心Og、目标点G、第二转换点Wg计算得到机器人从第二转换点Wg沿顺时针绕第二圆心Og运动到目标点G转过的第二转角βgStep S10: Based on the second center of circle Og, the target point G, and the second conversion point Wg, calculate the second rotation angle β g that the robot passes through from the second conversion point Wg clockwise around the second center of circle Og to the target point G; 步骤S11:基于所述步骤S2-S10计算得到的运动路径参数,对于机器人的先逆时针后顺时针运动进行控制,其中,所述机器人的先逆时针后顺时针运动路径为:由初始点S以转弯半径R绕第一圆心Os逆时针运动转过第一转角αs到达第一转换点Ws,由第一转换点Ws沿第二单位向量W方向直线运动到第二转换点Wg,由第二转换点Wg以转弯半径R绕第二圆心Og顺时针运动转过第二转角βg即到达目标点G;Step S11: Based on the motion path parameters calculated in the steps S2-S10, control the first counterclockwise and then clockwise motion of the robot, wherein, the first counterclockwise and then clockwise motion path of the robot is: from the initial point S Move counterclockwise around the first center of circle Os with the turning radius R and turn through the first turning angle α s to reach the first conversion point Ws, from the first conversion point Ws to the second conversion point Wg in a straight line along the direction of the second unit vector W, and from the second The second conversion point Wg moves clockwise around the second center of circle Og with the turning radius R and turns over the second turning angle β g to reach the target point G; 其中,所述步骤S9进一步包括以下步骤:Wherein, said step S9 further comprises the following steps: 步骤S91:计算第一圆心Os指向初始点S的第一向量MS;Step S91: Calculate the first vector MS pointing to the initial point S from the first circle center Os; 步骤S92:计算第一圆心Os指向第一转换点Ws的第二向量NS;Step S92: Calculating the second vector NS pointing to the first conversion point Ws from the first circle center Os; 步骤S93:用反余弦求取第一向量MS和第二向量NS之间的夹角α;Step S93: Calculate the angle α between the first vector MS and the second vector NS by arccosine; 步骤S94:判断从初始点S逆时针绕第一圆心Os到达第一转换点Ws转过的第一转角αs是否大于180度,如果αs小于等于180度,则令αs等于α,否则令αs等于2π-α;Step S94: Judging whether the first rotation angle α s turned counterclockwise from the initial point S around the first center Os to the first conversion point Ws is greater than 180 degrees, if α s is less than or equal to 180 degrees, then set α s equal to α, otherwise Let α s equal to 2π-α; 所述步骤S10进一步包括以下步骤:The step S10 further includes the following steps: 步骤S101:计算第二圆心Og指向目标点G的第三向量MG;Step S101: Calculate the third vector MG pointing to the target point G from the second circle center Og; 步骤S102:计算第二圆心Og指向第二转换点Wg的第四向量NG;Step S102: Calculate the fourth vector NG pointing to the second conversion point Wg from the second circle center Og; 步骤S103:用反余弦求取第三向量MG和第四向量NG之间的夹角β;Step S103: Calculate the angle β between the third vector MG and the fourth vector NG by using arc cosine; 步骤S104:判断从第二转换点Wg顺时针绕第二圆心Og运动到目标点G转过的角度βg是否大于180度,如果βg小于等于180度,则令βg等于β,否则令βg等于2π-β。Step S104: Judging whether the angle β g turned from the second conversion point Wg clockwise around the second center Og to the target point G is greater than 180 degrees, if β g is less than or equal to 180 degrees, then set β g equal to β, otherwise set β g is equal to 2π-β. 2.根据权利要求1所述的方法,其特征在于,所述步骤S2具体为:先将初始方向单位向量Ps逆时针旋转90度,然后与转弯半径R相乘,再将相乘结果与初始点S坐标相加即得第一圆心Os的坐标。2. The method according to claim 1, characterized in that the step S2 is specifically: first rotate the initial direction unit vector Ps 90 degrees counterclockwise, then multiply it by the turning radius R, and then multiply the multiplication result with the initial The coordinates of the first circle center Os are obtained by adding the coordinates of the points S. 3.根据权利要求1所述的方法,其特征在于,所述步骤S3具体为:先将目标方向单位向量Pg顺时针旋转90度,然后与转弯半径R相乘,再将相乘结果与目标点G坐标相加即得第二圆心Og的坐标。3. The method according to claim 1, characterized in that the step S3 is specifically: first rotate the target direction unit vector Pg 90 degrees clockwise, then multiply it by the turning radius R, and then multiply the multiplication result with the target The coordinates of the point G are added to obtain the coordinates of the second circle center Og. 4.根据权利要求1所述的方法,其特征在于,所述步骤S4具体为:用第二圆心Og的坐标减去第一圆心Os的坐标,再将相减结果除以第一圆心Os和第二圆心Og两点间的长度值即得第一单位向量Q。4. The method according to claim 1, wherein the step S4 is specifically: subtracting the coordinates of the first center Os from the coordinates of the second center Og, and then dividing the subtraction result by the first center Os and The length value between the two points of the second circle center Og is the first unit vector Q. 5.根据权利要求1所述的方法,其特征在于,所述步骤S6具体为:先将第一单位向量Q顺时针旋转(90-γ)度,然后与转弯半径R相乘,再将相乘结果与第一圆心Os的坐标相加即得第一转换点Ws的坐标。5. The method according to claim 1, characterized in that the step S6 is specifically: first rotate the first unit vector Q clockwise by (90-γ) degrees, then multiply it by the turning radius R, and then multiply the Add the multiplication result to the coordinates of the first circle center Os to obtain the coordinates of the first conversion point Ws. 6.根据权利要求1所述的方法,其特征在于,所述步骤S7具体为:先将第一单位向量Q逆时针旋转(90+γ)度,然后与转弯半径R相乘,再将相乘结果与第二圆心Og坐标相加即得第二转换点Wg的坐标。6. The method according to claim 1, characterized in that the step S7 is specifically: first rotate the first unit vector Q counterclockwise by (90+γ) degrees, then multiply it by the turning radius R, and then multiply the Add the multiplication result to the coordinates of the second circle center Og to obtain the coordinates of the second conversion point Wg. 7.根据权利要求1所述的方法,其特征在于,所述步骤S8具体为:用第二转换点Wg的坐标减去第一转换点Ws的坐标,再将相减结果除以第一转换点Ws和第二转换点Wg两点间的长度值即得到第二单位向量W。7. The method according to claim 1, wherein the step S8 is specifically: subtracting the coordinates of the first conversion point Ws from the coordinates of the second conversion point Wg, and then dividing the result of the subtraction by the first conversion The length value between the point Ws and the second conversion point Wg is the second unit vector W.
CN201310597933.9A 2013-11-22 2013-11-22 A kind of robot is counterclockwise clockwise motion control method more first Expired - Fee Related CN103576688B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310597933.9A CN103576688B (en) 2013-11-22 2013-11-22 A kind of robot is counterclockwise clockwise motion control method more first

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310597933.9A CN103576688B (en) 2013-11-22 2013-11-22 A kind of robot is counterclockwise clockwise motion control method more first

Publications (2)

Publication Number Publication Date
CN103576688A CN103576688A (en) 2014-02-12
CN103576688B true CN103576688B (en) 2016-01-20

Family

ID=50048690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310597933.9A Expired - Fee Related CN103576688B (en) 2013-11-22 2013-11-22 A kind of robot is counterclockwise clockwise motion control method more first

Country Status (1)

Country Link
CN (1) CN103576688B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0457064A1 (en) * 1990-05-14 1991-11-21 Siemens Aktiengesellschaft Method for driving a mobile system
US5661650A (en) * 1994-02-23 1997-08-26 Honda Giken Kogyo Kabushiki Kaisha System for controlling a vehicle relative to a judged shape of a travel road
CN102207736A (en) * 2010-03-31 2011-10-05 中国科学院自动化研究所 Robot path planning method and apparatus thereof based on Bezier curve
CN102831298A (en) * 2012-07-30 2012-12-19 北京理工大学 Target real-time path planning method for target generator

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0457064A1 (en) * 1990-05-14 1991-11-21 Siemens Aktiengesellschaft Method for driving a mobile system
US5661650A (en) * 1994-02-23 1997-08-26 Honda Giken Kogyo Kabushiki Kaisha System for controlling a vehicle relative to a judged shape of a travel road
CN102207736A (en) * 2010-03-31 2011-10-05 中国科学院自动化研究所 Robot path planning method and apparatus thereof based on Bezier curve
CN102831298A (en) * 2012-07-30 2012-12-19 北京理工大学 Target real-time path planning method for target generator

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
机器人避障问题;吴元清等;《四川职业技术学院学报》;20130430;第23卷(第2期);全文 *
自主水下航行器回坞路径规划与跟踪控制;高剑;《机械科学与技术》;20120531;第31卷(第5期);全文 *

Also Published As

Publication number Publication date
CN103576688A (en) 2014-02-12

Similar Documents

Publication Publication Date Title
Wang et al. Application of Dijkstra algorithm in robot path-planning
Cheein et al. Trajectory tracking controller design for unmanned vehicles: A new methodology
CN105843234B (en) A kind of two-dimentional Route planner that UUV detours to round barrier geometry
Jiang et al. Research on global path planning of electric disinfection vehicle based on improved A* algorithm
CN108664024A (en) The motion planning and Cooperative Localization Method and device that unmanned vehicle network is formed into columns
Cao et al. Direction control and adaptive path following of 3-D snake-like robot motion
CN104865825B (en) A kind of multi-Robot Cooperative time series forecasting control method
CN106155057A (en) A kind of clustered machine people&#39;s graphical set construction method based on self-organizing behavior
Kim et al. Any-angle path planning with limit-cycle circle set for marine surface vehicle
CN103552070B (en) Method for controlling robot to move firstly clockwise and then anticlockwise
Wang et al. The path planning of collision avoidance for an unmanned ship navigating in waterways based on an artificial neural network
CN106502090B (en) The positioning of multi-agent system and around control method in a kind of three-dimensional space
CN103576687B (en) A kind of robot inverse counterclockwise motion control method
Yuan et al. Research on robot path planning based on smooth A* algorithm for different grid scale obstacle environment
CN103592945B (en) A kind of robot clockwise motion control method
CN103576688B (en) A kind of robot is counterclockwise clockwise motion control method more first
CN104407613A (en) Obstacle avoidance path smooth optimization method
Yan et al. Dubins-RRT path planning and heading-vector control guidance for a UUV recovery
Gong et al. Coordinated path planning based on RRT algorithm for robot
CN103279451A (en) Novel computing method of artificial potential field function
Guo et al. Research on the mobile robots intelligent path planning based on ant colony algorithm application in manufacturing logistics
CN103116356A (en) Method of search in mazes
Zhong et al. Integrating Global Path Information with Advanced Risk Assessment: An Enhanced Potential Field Method for Intelligent Connected Vehicles Local Path Planning
Jinfeng et al. Indoor Robot Path Planning Based on an Improved Probabilistic Road Map Method
CN114815828B (en) A robot path planning and control method combining reinforcement learning with recurrent networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160120

CF01 Termination of patent right due to non-payment of annual fee