CN108563227B - Motion control method of 2D wheeled robot based on movable caster - Google Patents

Motion control method of 2D wheeled robot based on movable caster Download PDF

Info

Publication number
CN108563227B
CN108563227B CN201810360530.5A CN201810360530A CN108563227B CN 108563227 B CN108563227 B CN 108563227B CN 201810360530 A CN201810360530 A CN 201810360530A CN 108563227 B CN108563227 B CN 108563227B
Authority
CN
China
Prior art keywords
robot
motion
coordinate system
point
axis
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
CN201810360530.5A
Other languages
Chinese (zh)
Other versions
CN108563227A (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.)
Zhongshan Saibotan Intelligent Technology Co ltd
Wuhan University WHU
Original Assignee
Zhongshan Saibotan Intelligent Technology Co ltd
Wuhan University WHU
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 Zhongshan Saibotan Intelligent Technology Co ltd, Wuhan University WHU filed Critical Zhongshan Saibotan Intelligent Technology Co ltd
Priority to CN201810360530.5A priority Critical patent/CN108563227B/en
Publication of CN108563227A publication Critical patent/CN108563227A/en
Application granted granted Critical
Publication of CN108563227B publication Critical patent/CN108563227B/en
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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/08Control of attitude, i.e. control of roll, pitch, or yaw
    • G05D1/0891Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles

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

The invention discloses a motion control method of a 2D wheeled robot based on movable casters, which comprises the following steps of continuously updating and controlling the motion state of the robot according to the following procedures: step S1, determining the target state of the robot at the current moment according to the task requirement; step S2, representing the motion of the whole robot as the motion of mass points of a geometric center P point of a chassis of the robot, and calculating the motion vector of the robot in the global coordinate system at the current moment according to the target state; step S3, calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemi(ii) a Step S4, according to the rotating speed n of each wheeliAnd the included angle psiiAnd the state of the wheels is adjusted to control the robot to move. The invention supports the robot to realize the moving modes of forward movement, transverse movement, oblique movement, rotation, combination and the like, can be used for the motion control of a 2D wheeled robot with a plurality of 2 or more castors, and has small wheel sliding, higher motion stability and flexibility.

Description

Motion control method of 2D wheeled robot based on movable caster
Technical Field
The invention belongs to the technical field of robot motion control, and particularly relates to a motion control model and method of a 2D wheeled robot based on movable casters.
Background
With the continuous development of industrial automation, applications of intelligent trolleys, mobile robots and the like in daily life are more and more extensive, and a 2D wheel robot is one of the most widely applied robots, so people have higher and higher requirements on the motion flexibility and the motion efficiency of the 2D wheel robot.
The wheels applied to the wheeled robot include an Omni wheel (Omni wheel), a Mecanum wheel (Mecanum wheel), and a conventional movable caster wheel, i.e., a universal wheel.
The more extensive mecanum wheel of present wheeled robot field application can satisfy the all-round nimble motion of robot, provides the robot and carries out efficient removal modes such as translation and rotation simultaneously, but in the robot of activity truckle of using at present, adopts differential wheel mode or front wheel to turn to etc. control model mostly, and this greatly reduced the flexibility of the robot motion based on activity truckle, do not have the motion advantage of full play activity truckle. There is an urgent need for a more efficient and flexible motion control model and method for a robot based on movable casters.
Disclosure of Invention
In order to solve the problems in the prior art, the invention provides a motion control model and a motion control method of a 2D wheeled robot based on movable casters, wherein the model enables the robot to realize the motion modes of advancing, traversing, tilting, rotating, combination of the moving modes and the like, the motion control model can be used for motion control of 2D wheeled robots with more than 2 movable casters and the like, the wheels slide slightly, the motion stability and flexibility are higher, and the motion control model and the motion control method have great advantages in practical application.
The technical scheme adopted by the invention is a motion control method of a 2D wheeled robot based on movable casters, wherein the movable casters have controllability in two aspects, including controlling the rotating speed of wheels and controlling the wheels to rotate 360 degrees around the axis where the contact points of the wheels and the ground and the mass center of the wheels are located; the robot supports changing the rotational speed n of any movable caster at any timeiAnd the angle psi between the wheel orientation and the positive direction of the robotiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2; the motion state of the robot is continuously updated and controlled according to the following process,
step S1, determining the target state of the robot at the current moment according to the task requirement;
in step S2, the motion of the entire robot is expressed as the motion of mass points at the geometric center P of the robot chassis, and the motion vector T ═ V in the global coordinate system of the robot at the current time is calculated from the target statex Vy ωzIn which V isxFor the velocity component, V, of the robot in the X-axis under the global coordinate systemyIs the velocity component, omega, of the Y axis of the robot in the global coordinate systemzThe angular velocity of the robot on the Z axis under the global coordinate system is obtained;
step S3, calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemi
Step S4, obtaining the rotation speed n of each wheel according to the step S3iAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiAnd the state of the wheels is adjusted to control the robot to move.
Then, in step S1, the target state of the robot at the current time including the position B of the target point, the velocity direction α when reaching the moving target, the attitude rot B when reaching the moving target, and the velocity V when reaching the target are selected according to the task demandBWherein, the position (Bx, By, Bz) of the moving target is any position on the moving plane of the robot under the global coordinate system, and the speed direction alpha of the robot when reaching the moving target is any direction alpha epsilon (-pi, pi) on the moving plane of the robot under the global coordinate system]The posture rot B when the robot reaches the target point is the rot B epsilon (-pi, pi) of any included angle between the positive direction of the robot and the X axis of the global coordinate system when the robot reaches the target point]The speed of reaching the target point is any speed 0-V under the maximum speed limit of the robotB≤Vmax
In step S3, the rotation speed n of each wheel is calculated based on the principle that the wheel is not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiThe implementation mode is as follows,
ni×2×π×r×cos(ψi+rotA)=Vxz×di×sin(λi)
ni×2×π×r×sin(ψi+rotA)=Vyz×di×cos(λi)
wherein, the wheel radius r, the distance d between the intersection point M of the straight line where the connecting line of the wheel i, the ground contact point and the wheel center is located and the local coordinate system XY plane and the origin P of the local coordinate system of the robotiThe included angle lambda between the PM direction and the X axis of the local coordinate system of the vehicle bodyiIs a known fixed value, Vx、Vy、ωzCalculated in step S2, rotA is the attitude of the robot at the point A and is a known value, and the rotating speed n of the wheel i is obtained by calculation according to the formulaiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2.
Furthermore, the following movement patterns are supported,
(1) the robot makes linear motion on a plane without changing the posture of the robot, namely a linear motion mode;
(2) the robot rotates around the Z axis of the local coordinate system on the plane, namely the self-rotation mode;
(3) the robot makes curvilinear motion on a plane without changing the posture of the robot, namely a curvilinear motion mode;
(4) the robot makes linear motion on a plane and rotates around a Z axis of a local coordinate system, namely a motion mode of simultaneous straight motion and rotation;
(5) the robot makes curvilinear motion on a plane and rotates around a Z axis of a local coordinate system, namely, a curvilinear translation and autorotation motion mode simultaneously;
(6) and stopping the vehicle and terminating all motion states.
The invention has the advantages that:
(1) the movable caster wheel supported by the invention has low installation cost and high assembly efficiency;
(2) the invention provides a motion control model irrelevant to the quantity of movable trundles, and the motion control model provided by the invention can be used for wheel robots provided with 2 or more movable trundles;
(3) the invention enables the robot to realize the moving modes of advancing, traversing, diagonal, rotating, combination and the like, improves the flexibility of the robot in a limited space, and the robot can be any intelligent platform for installing the movable caster, including but not limited to an intelligent trolley, a mobile robot and the like, and has high market value;
according to the invention, when the rotating speed of the wheel and the included angle between the direction of the wheel and the positive direction of the robot are calculated, the principle that the wheel is not stressed laterally is taken as a principle, no lateral sliding exists in the moving process of the wheel, the moving friction is small, and the stability is high.
Drawings
Fig. 1 is a schematic diagram of a relationship between a global coordinate system and a local coordinate system according to an embodiment of the present invention.
FIG. 2 is a schematic diagram of calculating a center position according to an embodiment of the present invention.
Fig. 3 shows the motion vector of the robot at point a according to the embodiment of the present invention.
Fig. 4 is a diagram illustrating a relationship between a motion state of wheels and a motion state of a robot according to an embodiment of the present invention.
Fig. 5 is a schematic diagram of a motion control process according to an embodiment of the invention.
Detailed Description
The technical solution of the present invention is described in detail below with reference to the accompanying drawings and examples.
The invention provides a motion control method of a 2D wheeled robot based on movable casters, wherein the movable casters have controllability on two aspects, and can control the rotating speed of wheels firstly and control the wheels to rotate 360 degrees around the axis where the contact points of the wheels and the ground and the mass centers of the wheels are located. The robot can change the rotating speed n of any movable caster at any timeiAnd the angle phi between the wheel orientation and the positive direction of the robot on the planeiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2. The 2D wheeled robot based on the movable caster can adopt products in the prior art, and the invention researches the motion control of the device.
The 2D wheeled robot based on the movable caster can realize but is not limited to the following movement modes:
(1) the robot makes linear motion on a plane without changing the posture of the robot, namely a linear motion mode;
(2) the robot rotates around the Z axis of the local coordinate system on the plane, namely the self-rotation mode;
(3) the robot makes curvilinear motion on a plane without changing the posture of the robot, namely a curvilinear motion mode;
(4) the robot makes linear motion on a plane and rotates around a Z axis of a local coordinate system, namely a motion mode of simultaneous straight motion and rotation;
(5) the robot makes curvilinear motion on a plane and rotates around a Z axis of a local coordinate system, namely, a curvilinear translation and autorotation motion mode simultaneously;
(6) and stopping the vehicle and terminating all motion states.
The linear motion means that the moving track of the robot is a straight line on the robot moving plane under the global coordinate system, and the straight line direction may not be the positive direction of the robot, and includes forward movement, backward movement, lateral movement, oblique movement and the like of the robot on the moving plane. The curvilinear motion means that the moving track of the robot is a curve on the robot motion plane under the global coordinate system, and the curve can have different curvature radii at different positions.
The technical scheme adopted by the invention comprises the following steps:
s1, determining the target state of the robot at the current moment according to the task requirements;
s2 represents the motion of the entire robot as the motion of a mass point at the geometric center P of the robot chassis, and calculates, from the target state, the motion vector T ═ V in the global coordinate system of the robot at the present timex Vy ωzIn which V isxFor the velocity component, V, of the robot in the X-axis under the global coordinate systemyIs the velocity component, omega, of the Y axis of the robot in the global coordinate systemzThe three quantities can be all nonzero at the same moment under the motion model for the angular velocity of the robot on the Z axis under the global coordinate system;
s3 calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiIs the motion model proposed by the invention;
s4, according to the calculated rotating speed n of each wheeliAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiThe state of the wheels is adjusted to achieve the purpose of controlling the movement of the robot.
Since the motion of the robot is a continuous process, S1-S4 controls the robot to update the motion state once, and thus, it is necessary to repeat the above S1-S4 at a stable update rate in actual operation so that the robot smoothly reaches the target state.
As shown in fig. 1, two coordinate systems related to the motion model are first defined as follows:
(1) local coordinate system: and taking the geometric center P of the chassis of the robot as a coordinate origin, taking the right front of the defined robot as an X axis, taking the right left of the robot as a Y axis direction, and forming a right-hand coordinate system by taking a Z axis which is vertical to a plane where XY is positioned, wherein the coordinate system changes along with the movement and the steering of the robot in the motion process of the robot.
(2) Global coordinate system: and a point Q in the space is taken as a coordinate origin, the horizontal direction is an X axis, the vertical direction is a Y axis, and the Z axis is vertical to the plane where the XY is positioned to form a right-hand coordinate system which does not translate and rotate in the motion process of the robot.
(3) In this embodiment, for convenience of calculation, the Z axis of the global coordinate system is parallel to the Z axis of the local coordinate system and has the same direction.
It should be understood by those skilled in the art that the position of the global coordinate system is not always obtained, but the relative coordinates of the target point with respect to the current position may be calculated by using the following steps, where the origin of the global coordinate system is the current position and the global coordinates of the target point are the relative coordinates.
In this embodiment, a detailed description will be given of an implementation process of the technical solution adopted in the present invention. The method specifically comprises the following steps:
s1, determining the target state of the robot at the current moment according to the task requirement:
the target state of the robot may include: position B of target point, velocity direction α when reaching moving target, attitude rot B when reaching moving target, and velocity V when reaching targetB. The position (Bx, By, Bz) of the moving target can be any position on the moving plane of the robot under the global coordinate system, and the speed direction alpha of the robot when reaching the moving target can be any direction alpha epsilon (-pi, pi) on the moving plane of the robot under the global coordinate system]The posture rot B when reaching the target point can be any included angle rot B between the positive direction of the robot and the X axis of the global coordinate system when reaching the target point, wherein rot B belongs to (-pi, pi)]The speed of reaching the target point is any speed 0-V under the maximum speed limit of the robotB≤Vmax
As shown in fig. 2, according to the moving task requirement of the robot, the target position of the robot at the current time is point B, and the coordinates of point B in the global coordinate system are (Bx, By, Bz). The current position of the robot is point a, and the coordinates of point a (coinciding with the platform center P) in the global coordinate system can be obtained from the sensor of the robot itself as (Ax, Ay, Az), because the motion plane of the robot is parallel to the XY plane of the global coordinate system, and thus Az is Bz.
S2 determining the motion vector T ═ { V } of the robot in the current state according to the moving target of the robotx Vy ωzIn which V isxFor the velocity component, V, of the robot in the X-axis under the global coordinate systemyIs the velocity component, omega, of the Y axis of the robot in the global coordinate systemzFor the angular velocity of the robot in the Z-axis under the global coordinate system, these three quantities may all be non-zero at the same time under the present motion model:
s2.1, calculating a circle center O of the planar motion revolution:
when the point A coincides with the point B, the robot does not move in a plane, or the speed direction alpha of the robot when the target state requires to reach the point B is consistent with the linear direction AB or the speed direction of the robot when the target state requires not to reach the point B, the robot does linear motion along the linear direction AB on the plane, the position of the plane revolution center O does not need to be calculated, and S2.2 is executed by skipping the step.
When the point a and the point B do not coincide, the speed direction of the robot when the target state requires to reach the point B is the direction α, and the direction α is not consistent with the direction of the line AB, so the translation of the robot is a curvilinear motion. At this time, the center O of the planar circular motion needs to be calculated according to the positions of the two points A, B and the speed direction when the point B is reached. As shown in fig. 2, the calculation method is as follows:
(1) the straight line of the connecting line of the circle center O and the point B is vertical to the speed direction of the point B, VBThe included angle α with the X-axis of the global coordinate system is known, so the included angle β between the BO straight line and the X-axis in the global coordinate system can be obtained, since the perpendicular relationship is known:
Figure BDA0001635851830000061
combining the coordinates (Bx, By, Bz) of a point B on the BO straight line, a straight line equation of the BO straight line on the XY plane under the global coordinate system can be obtained:
let the point-slope equation of the BO straight line: k x + b
Wherein the parameters are as follows:
k=tan(β)
b=By-k×Bx
the equation for the straight line for BO can thus be found:
y=tan(β)×x+(By-tan(β)×Bx)
(2) calculating a linear equation of the AB perpendicular bisector DO under the global coordinate system according to the coordinates of the point A and the point B under the global coordinate system:
d-point coordinates (Dx, Dy, Dz):
Figure BDA0001635851830000062
included angle between AB linear direction and X axis of global coordinate system
Figure BDA0001635851830000063
Figure BDA0001635851830000071
From the DO line perpendicular to the AB line, the DO line direction γ:
Figure BDA0001635851830000072
and combining the coordinate of the point D in the global coordinate system and the DO linear direction to obtain a DO linear equation:
let the oblique equation of the DO line be y ═ k2x+b2
Wherein the parameters are as follows:
k2=tan(γ)
b2=Dy-k2×Dx
the linear equation for DO can thus be found:
y=tan(γ)×x+(Dy-tan(γ)×Dx)
(3) because the robot moves on a plane parallel to the XY plane of the global coordinate system, Az ═ Bz ═ Dz ═ Oz, so that the coordinate of the center O under the global coordinate system can be obtained only by combining the above two linear equations:
Figure BDA0001635851830000073
the coordinates (Ox, Oy, Oz) of the O point in the global coordinate system can thus be obtained:
Figure BDA0001635851830000074
wherein the parameters are as follows:
k=tan(β)
k2=tan(γ)
b=By-k×Bx
b2=Dy-k2×Dx
s2.2, determining the speed direction of the robot at the point A:
when the point A and the point B coincide, the robot does not move in a plane, the speed direction of the robot at the point A does not need to be calculated, and S2.3 is executed by skipping the step.
When the point A and the point B are not coincident, the speed direction alpha of the robot when the target state requires to reach the point B is consistent with the linear direction AB or the speed direction of the robot when the target state does not require to reach the point B, the robot makes linear motion along the linear direction AB on the plane, and the speed direction of the robot at the point A is the linear direction AB. Velocity V of robot at point AAThe included angle between the X axis of the global coordinate system and the positive direction of the X axis of the global coordinate system is recorded as theta, and the value range (-pi, pi) is taken]:
Thus VAThe size of an included angle theta with the X axis of the global coordinate system is as follows:
Figure BDA0001635851830000081
thirdly, when the point A is not coincident with the point B and the speed direction alpha of the robot is not consistent with the linear direction AB when the target state requires to reach the point B, as shown in figure 4, the speed V of the robot at the point A is determined according to the position of the circle center OAThe included angle between the X axis of the global coordinate system and the positive direction of the X axis of the global coordinate system is recorded as theta, and the value range (-pi, pi) is taken]:
Determining the direction of the AO straight line on the plane by the coordinates of the point A and the coordinates of the point O
Figure BDA0001635851830000084
Figure BDA0001635851830000082
Due to VAPerpendicular to the AO line, therefore:
Figure BDA0001635851830000083
the determination principle of the plus and minus signs in the above formula is as follows: since A, B are located in the same arc, VAAngle with AO direction and VBEqual to the BO direction because of the angle VBAnd the BO direction are known, so the speed direction of the robot at point a can be determined.
S2.3, calculating the rotation angular velocity of the robot according to the attitude of the robot at the point A and the attitude of the robot reaching the point B:
when the point a coincides with the point B, the robot moves without a plane, and it is known from the posture rot a of the robot at the point a and the posture rot B of the robot at the point B that the posture changes into Δ rot B-rot a during the movement from the point a to the point B, and if Δ rot is 0, the robot does not change in the motion state in space, that is, the robot plane motion speed V at the current time pointAThe angular speed omega which is 0 and the robot rotates around the Z axis of the local coordinate system is 0;
secondly, when the point A is overlapped with the point B, the robot does not move in a plane, the change of the posture is delta rot which is equal to rot B-rot A in the moving process from the point A to the point B according to the posture rot A of the robot at the point A and the posture rot B of the robot reaching the point B, if the delta rot is not equal to 0, the robot rotates around the Z axis, and the angular speed omega of the robot rotating around the Z axis of the local coordinate system is given by the target state and takes an arbitrary value under the limitation of the maximum rotation angular speed (the value is more than 0 and less than or equal to omega)max)。
When the point A and the point B are not coincident, the speed direction alpha of the robot when the target state requires to reach the point B is consistent with the linear direction AB or the speed direction of the robot when the target state does not require to reach the point B, the robot makes linear motion along the linear direction AB on the plane, and the speed direction of the robot at the point A is the linear direction AB. The speed of the robot at point A is VA
(1) According to the velocity V of linear motionAEstimating the time t required for the robot to move from the point A to the point B:
linear distance between AB:
Figure BDA0001635851830000091
according to VAThe time t required for the robot to move from the point A to the point B is calculated as follows:
Figure BDA0001635851830000092
(2) the change of the posture is delta rot which is equal to rot B-rot A in the moving process from the point A to the point B according to the posture rot A of the robot at the point A and the posture rot B of the robot when the robot reaches the point B;
(3) the angular speed of the robot rotating around the Z axis of the local coordinate system in the process of moving from the point A to the point B is as follows:
Figure BDA0001635851830000093
when the point A is not coincident with the point B and the speed direction alpha of the robot is not consistent with the linear direction AB when the target state requires to reach the point B:
(1) and calculating the length L of the arc traveled by the robot from the point A to the point B according to the center O obtained by the calculation of S2.2:
knowing the included angle beta between the BO straight line and the X axis under the global coordinate system and the included angle between the AO straight line and the X axis on the plane under the global coordinate system
Figure BDA0001635851830000097
Then, from the calculated relationship between the arc length and the central angle, it is known that:
Figure BDA0001635851830000094
wherein R is the radius of the planar revolution arc under the global coordinate system, and can be obtained by calculating the coordinates of the point A and the point O under the global coordinate system:
Figure BDA0001635851830000095
from the length L of the arc and the moving speed V of the robot at the momentAThe time required for the robot to move from the point A to the point B is calculated
Figure BDA0001635851830000096
(4) The change of the posture is delta rot which is equal to rot B-rot A in the moving process from the point A to the point B according to the posture rot A of the robot at the point A and the posture rot B of the robot when the robot reaches the point B;
(5) the angular speed of the robot rotating around the Z axis of the local coordinate system in the process of moving from the point A to the point B is as follows:
Figure BDA0001635851830000101
s2.4, calculating the motion vector of the robot at the current moment according to the speed of the robot at the point A and the rotation angular velocity:
as shown in fig. 3, the movement of the robot chassis geometric center P in space represents the movement of the robot as a whole, wherein P is not necessarily the center of mass of the robot. Then the motion vector of the robot at point a can be expressed as:
(1) the speed V of the robot at the point AADecomposed into a velocity component V in the X-axis direction in a global coordinate systemxVelocity component V of the Y-axis in the global coordinate systemx
Vx=VA×cos(θ)
Vy=VA×sin(θ)
(2) The angular speed of the Z axis of the robot under the global coordinate system is calculated by S2.3 to obtain omegaz=ω;
(3) These three variables determine the motion state of the robot at that time, and represent it as a motion vector T ═ Vx Vyωz}。
S3 calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemi
In the embodiment, the number of the wheels m is equal to or more than 2. For the ith wheel, the rotating speed n of the wheel at the moment needs to be calculatedi(i is more than or equal to 0 and less than or equal to m, and the number of movable caster wheels is more than or equal to 2) and the included angle psi between the wheel orientation and the X axis of the local coordinate system of the roboti(i is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2);
take the ith wheel of the robot as an example, the wheel andand the line connecting the ground contact point and the wheel center is parallel to the Z axis of the local coordinate system, and the intersection point of the straight line where the wheel is connected with the ground contact point and the wheel center and the XY plane of the local coordinate system is recorded as the M point. Distance d between M and origin P of local coordinate system of robotiIs a fixed value and is obtained by measuring the installation position of the robot, and the included angle lambda between the PM direction and the X axis of the local coordinate system of the vehicle bodyiAlso known in relation to the mounting position, the radius r of the wheel is also known, and the spatial position relationship of these quantities is shown in fig. 4.
The rotation of the robot causes the linear velocity of the M point in the space perpendicular to the MP direction, and the actual velocity V of the M pointMIs the composition of the plane movement speed of the geometric center P of the robot chassis and the linear speed, and decomposes the movement of the M point in the space into a speed component V in the X-axis direction under a global coordinate systemMxAnd a velocity component V in the Y-axis direction in the global coordinate systemMyThen its motion vector T ═ V with the robot chassis center Px Vy ωzThe following relationship is satisfied:
VMx=Vxz×di×sin(λi)
VMy=Vyz×di×cos(λi)
radius r of wheel, wheel speed niThe size v of the translation speed of the outermost point of the wheel in spaceiSatisfies the following conditions:
vi=ni×2×π×r
because the wheel is rigidly connected with the rotating shaft of the wheel, M is a point on the rotating shaft of the wheel, and the lateral unstressed principle of the wheel is used, the included angle between the direction of the wheel and the X axis of the global coordinate system and V areMThe directions are the same, and the translation speed v of one point at the outermost side of the wheel in the spaceiAnd VMAre the same size. The speed v of the translation of the outermost point of the wheel in space is thus of the magnitudeiThe angle psi between the wheel and the X-axis of the local coordinate system of the robot at that timeiAnd the motion components of the M points in the global coordinate system satisfy that:
vi×cos(ψi+rotA)=VMx
vi×sin(ψi+rotA)=VMy
the above formulas are combined as follows:
ni×2×π×r×cos(ψi+rotA)=Vxz×di×sin(λi)
ni×2×π×r×sin(ψi+rotA)=Vyz×di×cos(λi)
in the above formula, the radius r of the wheel, the distance d between the intersection point M of the straight line where the connecting line of the wheel i, the ground contact point and the wheel center is located and the local coordinate system XY plane and the origin P of the local coordinate system of the robotiThe included angle lambda between the PM direction and the X axis of the local coordinate system of the vehicle bodyiIs a known fixed value, Vx、Vy、ωzThe motion vector is calculated by S2, rot A is the attitude of the robot at the point A and is a known value, so the rotating speed n of each wheel can be obtained by calculation according to the formulaiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2.
S4 calculating n of each wheeli,ψiThe state of the wheels is adjusted to achieve the purpose of controlling the movement of the robot:
using the above calculated individual wheel speeds niAnd the angle psi between the wheel and the X-axis of the local coordinate system of the robot at that timeiThe state of the wheels is adjusted by combining the current speed and direction of the wheels, and the aim of adjusting the motion state of the robot is further achieved.
Because the motion of the robot is a continuous process, the states of the wheels also need to be continuously adjusted, and the above steps S1-S4 are executed at fixed time intervals to realize continuous detection and update of the motion state of the robot, and in the detection and update process, if the target point is not changed, whether the target is reached is continuously detected; if the target point changes in the moving process, the moving state can be adjusted at any time, and the moving instruction is efficiently executed, so that the aim of accurately, flexibly and efficiently controlling the robot movement is fulfilled. In specific implementation, the automatic operation of the process can be realized by adopting a software technology.
The 6 motion modes which can be realized by the robot under the motion model are macroscopic expressions of the robot in the space, when the motion model is actually applied, the motion model can dynamically determine the current motion mode of the robot according to the position, the posture, the target position, the posture, the speed direction when reaching the target, the speed magnitude and the like under the global coordinate system of the robot at the current moment, and as the target point may be constantly changing, the overall expression form of the motion of the robot in the space is one or a combination of the 6 motion modes:
when the point A and the point B are not coincident, the speed direction alpha of the robot when the target state requires to reach the point B is consistent with the linear direction AB or the speed direction of the robot when the target state does not require to reach the point B, at the moment, the robot makes linear motion along the linear direction AB on the plane, the posture direction of the initial robot is the included angle between the X axis of the local coordinate system and the positive direction of the X axis of the global coordinate system and is represented as rot A, the posture of the robot when the target state reaches the point B is the included angle between the X axis of the local coordinate system and the positive direction of the X axis of the global coordinate system and is represented as rot B, and if rot B is rot A, the posture of the robot is not changed when the robot makes plane curve motion and reaches the point B, the robot does not rotate in the linear motion process, and the robot at the moment enters a linear motion mode;
when the point A is superposed with the point B, namely the robot does not translate on the plane, but rot B is not equal to rot A, the posture of the robot is changed, and the robot rotates around the center P of the chassis. The robot moves in the space and rotates around the Z axis of the local coordinate system, and the robot enters a self-rotation mode at the moment;
when the point A and the point B are not coincident, and the target state requires that the speed direction of the robot is in the alpha direction when the point B is reached, and the linear direction of the alpha and the AB is not consistent, the translation of the robot is curvilinear motion, if rot B is rot A, the posture of the robot does not change when the robot performs planar curvilinear motion and reaches the point B, the robot does not rotate in the curvilinear motion process, and the robot enters a curvilinear motion mode at the moment;
when the point A and the point B are not coincident, the speed direction alpha of the robot when the target state requires to reach the point B is consistent with the linear direction AB, or the speed direction of the robot when the target state does not require to reach the point B, and at the moment, the robot makes linear motion along the linear direction AB on the plane. If rot B is not equal to rot A, the posture of the robot is changed when the robot makes a linear motion and reaches a point B, the robot performs autorotation simultaneously in the linear motion process, and the robot enters a linear and autorotation motion mode at the moment;
when the point A and the point B are not coincident, and the target state requires that the speed direction of the robot when the point A and the point B are reached is an alpha direction, and the linear directions of alpha and AB are not consistent, so that the translation of the robot is curvilinear motion, if rot B is not equal to rot A, the posture of the robot is changed when the robot makes linear motion and reaches the point B, the robot simultaneously rotates in the curvilinear motion process, and the robot at the moment enters a curvilinear and self-rotating motion mode;
when the point A coincides with the point B and rot B is rot A, namely the robot reaches a target state, the robot does not move at the moment, namely all moving states are stopped, and the robot stops.
It should be understood that the above description of the preferred embodiments is given for clearness of understanding and no unnecessary limitations are to be understood therefrom, for those skilled in the art may make modifications and alterations within the scope of the invention without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (4)

1. A motion control method of a 2D wheeled robot based on movable casters, the movable casters having controllability in two aspects, including controlling the rotation speed of wheels, and controlling the wheels to rotate 360 degrees around an axis where the wheels contact the ground and the center of mass of the wheels are located; the robot supports changing the rotational speed n of any movable caster at any timeiAnd the angle psi between the wheel orientation and the positive direction of the robotiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2; it is characterized in thatIn the following steps: the motion state of the robot is continuously updated and controlled according to the following process,
step S1, determining the target state of the robot at the current moment according to the task requirement, including the position B of the target point, the speed direction alpha when reaching the moving target, the attitude rot B when reaching the moving target and the speed V when reaching the targetB
In step S2, the motion of the entire robot is expressed as the motion of mass points at the geometric center P of the robot chassis, and the motion vector T ═ V in the global coordinate system of the robot at the current time is calculated from the target statex Vy ωzIn which V isxFor the velocity component, V, of the robot in the X-axis under the global coordinate systemyIs the velocity component, omega, of the Y axis of the robot in the global coordinate systemzThe angular velocity of the robot on the Z axis under the global coordinate system is obtained; the motion vector calculation is implemented as follows,
(a) calculating the circle center O of the planar motion revolution according to the current position A point of the robot and the position B point of the target point;
(b) determining the speed direction of the robot at the point A;
(c) calculating the rotation angular speed of the robot according to the posture of the robot at the point A and the posture of the robot reaching the point B;
(d) calculating the motion vector of the robot at the current moment according to the speed and the rotation angular speed of the robot at the point A;
step S3, calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemi
Step S4, obtaining the rotation speed n of each wheel according to the step S3iAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiAnd the state of the wheels is adjusted to control the robot to move.
2. The method for controlling the movement of a mobile caster-based 2D wheeled robot according to claim 1, wherein: in step S1, the position (Bx, By, Bz) of the moving object is an arbitrary position on the robot moving plane in the global coordinate system, and the robot reaches the moving objectThe speed direction alpha is any direction alpha epsilon (-pi, pi) on the motion plane of the robot under the global coordinate system]The posture rot B when the robot reaches the target point is the rot B epsilon (-pi, pi) of any included angle between the positive direction of the robot and the X axis of the global coordinate system when the robot reaches the target point]The speed of reaching the target point is any speed 0-V under the maximum speed limit of the robotB≤Vmax
3. The method for controlling the movement of a mobile caster-based 2D wheeled robot according to claim 1, wherein: step S3, calculating the rotating speed n of each wheel according to the principle that the wheels are not stressed laterallyiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiThe implementation mode is as follows,
ni×2×π×r×cos(ψi+rotA)=Vxz×di×sin(λi)
ni×2×π×r×sin(ψi+rotA)=Vyz×di×cos(λi)
wherein, the wheel radius r, the distance d between the intersection point M of the straight line where the connecting line of the wheel i, the ground contact point and the wheel center is located and the local coordinate system XY plane and the origin P of the local coordinate system of the robotiThe included angle lambda between the PM direction and the X axis of the local coordinate system of the vehicle bodyiIs a known fixed value, Vx、Vy、ωzCalculated in step S2, rotA is the attitude of the robot at the point A and is a known value, and the rotating speed n of the wheel i is obtained by calculation according to the formulaiAnd the angle psi between the wheel orientation and the X-axis of the robot's local coordinate systemiI is more than or equal to 0 and less than or equal to m, and the number m of the movable casters is more than or equal to 2.
4. The method for controlling the movement of a mobile caster-based 2D wheeled robot according to claim 1, 2 or 3 wherein: the following movement patterns are supported in order,
(1) the robot makes linear motion on a plane without changing the posture of the robot, namely a linear motion mode;
(2) the robot rotates around the Z axis of the local coordinate system on the plane, namely the self-rotation mode;
(3) the robot makes curvilinear motion on a plane without changing the posture of the robot, namely a curvilinear motion mode;
(4) the robot makes linear motion on a plane and rotates around a Z axis of a local coordinate system, namely a motion mode of simultaneous straight motion and rotation;
(5) the robot makes curvilinear motion on a plane and rotates around a Z axis of a local coordinate system, namely, a curvilinear translation and autorotation motion mode simultaneously;
(6) and stopping the vehicle and terminating all motion states.
CN201810360530.5A 2018-04-20 2018-04-20 Motion control method of 2D wheeled robot based on movable caster Active CN108563227B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810360530.5A CN108563227B (en) 2018-04-20 2018-04-20 Motion control method of 2D wheeled robot based on movable caster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810360530.5A CN108563227B (en) 2018-04-20 2018-04-20 Motion control method of 2D wheeled robot based on movable caster

Publications (2)

Publication Number Publication Date
CN108563227A CN108563227A (en) 2018-09-21
CN108563227B true CN108563227B (en) 2020-12-18

Family

ID=63535911

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810360530.5A Active CN108563227B (en) 2018-04-20 2018-04-20 Motion control method of 2D wheeled robot based on movable caster

Country Status (1)

Country Link
CN (1) CN108563227B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109901581A (en) * 2019-03-15 2019-06-18 智久(厦门)机器人科技有限公司上海分公司 A kind of scaling method and spin motion control method of AGV vehicle spin angle
CN111319041B (en) * 2020-01-17 2021-04-16 深圳市优必选科技股份有限公司 Robot pose determining method and device, readable storage medium and robot
CN113359147B (en) * 2020-03-06 2023-08-18 宇通客车股份有限公司 Method and device for judging motion states of vehicle and target object
CN113021297A (en) * 2021-03-25 2021-06-25 深圳市伽利略机器人有限公司 Disk-type walking robot and walking control method thereof
CN113608525A (en) * 2021-06-23 2021-11-05 北京迈格威科技有限公司 Robot motion state indicating method and device, electronic equipment and storage medium
CN117455982B (en) * 2023-12-22 2024-03-05 保定市立中车轮制造有限公司 Quick repositioning method for geometric model of wheel

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08305440A (en) * 1995-05-10 1996-11-22 Fujitsu Ltd Device and method for controlling motion of ordinary wheel type omnidirectional vehicle
JP2003330542A (en) * 2002-05-10 2003-11-21 Sanyo Electric Co Ltd Movement control method of omnidirectional moving vehicle
KR101004957B1 (en) * 2008-09-17 2010-12-28 현대위아 주식회사 Robot system for 4 wheel driving and 4 wheel steering using motor
CN104155976A (en) * 2014-07-18 2014-11-19 北京理工大学 Autonomous ball-wheel-moving robot and control method thereof
CN107284544A (en) * 2017-07-30 2017-10-24 福州大学 A kind of multi-functional General Mobile robot chassis and its application process
CN107640016A (en) * 2017-10-27 2018-01-30 灵动科技(北京)有限公司 Intelligent mobile chassis, intelligent mobile device based on universal wheel and traveling method is controlled accordingly
CN207164583U (en) * 2017-04-24 2018-03-30 武汉理工大学 Indoor following device based on Mecanum wheel

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103616023B (en) * 2013-11-25 2016-04-20 清华大学 Crawler type facade climbing robot two dimension pose measuring apparatus and method
CN106427390A (en) * 2016-10-13 2017-02-22 北京智能管家科技有限公司 Omnidirectional wheel, omnidirectional wheel and mobile robot including robot moving platform

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08305440A (en) * 1995-05-10 1996-11-22 Fujitsu Ltd Device and method for controlling motion of ordinary wheel type omnidirectional vehicle
JP2003330542A (en) * 2002-05-10 2003-11-21 Sanyo Electric Co Ltd Movement control method of omnidirectional moving vehicle
KR101004957B1 (en) * 2008-09-17 2010-12-28 현대위아 주식회사 Robot system for 4 wheel driving and 4 wheel steering using motor
CN104155976A (en) * 2014-07-18 2014-11-19 北京理工大学 Autonomous ball-wheel-moving robot and control method thereof
CN207164583U (en) * 2017-04-24 2018-03-30 武汉理工大学 Indoor following device based on Mecanum wheel
CN107284544A (en) * 2017-07-30 2017-10-24 福州大学 A kind of multi-functional General Mobile robot chassis and its application process
CN107640016A (en) * 2017-10-27 2018-01-30 灵动科技(北京)有限公司 Intelligent mobile chassis, intelligent mobile device based on universal wheel and traveling method is controlled accordingly

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
轮式移动机器人运动控制系统研究与设计;杨俊驹 等;《现代电子技术》;20160115;第39卷(第2期);全文 *

Also Published As

Publication number Publication date
CN108563227A (en) 2018-09-21

Similar Documents

Publication Publication Date Title
CN108563227B (en) Motion control method of 2D wheeled robot based on movable caster
CN109885052B (en) Error model prediction control method based on omnidirectional mobile robot kinematics modeling
CN107544520B (en) Control method for automatic driving of four-wheel carrier
CN109960150B (en) Track tracking control method for inspection robot
Terakawa et al. A novel omnidirectional mobile robot with wheels connected by passive sliding joints
CN107783540A (en) The control method and device that a kind of four-wheel drive turns to
Nayl et al. Design and experimental evaluation of a novel sliding mode controller for an articulated vehicle
CN111752150B (en) Four-wheel cooperative control method for wheeled-foot robot
Sekhavat et al. Motion planning and control for Hilare pulling a trailer: experimental issues
CN110244718B (en) Intelligent patrol trolley capable of automatically avoiding obstacles
CN111487976A (en) Backing track tracking method
CN111679676A (en) AGV movement track control method
CN113211438B (en) Wheel type robot control method and system based on pretightening distance self-adaption
Wu et al. An automated guided mechatronic tractor for path tracking of heavy-duty robotic vehicles
JPH1029556A (en) Carrying device
CN110362088B (en) Tracking control system and method suitable for unmanned straddle carrier
JP2006107027A (en) Automatic guided vehicle
JPH09167018A (en) Method for execution of combined motion of arbitray parallelmovement and arbitrary rotary movement to moving vehicle
WO2015035095A1 (en) Three-wheeled mobile robot
Gavani et al. Path planning of three wheeled omni-directional robot using bezier curve tracing technique and pid control algorithm
Vidhyaprakash et al. Positioning of two-Wheeled mobile robot to control wheelslip by using the wheel rotate planning technique
TWI770966B (en) Guidance control method of unmanned self-propelled vehicle
CN108955720A (en) A kind of mileage projectional technique and device based on four motorized wheels and steering
Liu et al. Kinematics analysis and motion control of a mobile robot driven by three tracked vehicles
Zhu et al. Line tracking of the gyrobot-a gyroscopically stabilized single-wheeled robot

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