CN110850883A - Movement control method, medium, terminal and device of robot - Google Patents
Movement control method, medium, terminal and device of robot Download PDFInfo
- Publication number
- CN110850883A CN110850883A CN201911211740.9A CN201911211740A CN110850883A CN 110850883 A CN110850883 A CN 110850883A CN 201911211740 A CN201911211740 A CN 201911211740A CN 110850883 A CN110850883 A CN 110850883A
- Authority
- CN
- China
- Prior art keywords
- robot
- speed
- path
- moving
- delta
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000003860 storage Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 15
- 238000006073 displacement reaction Methods 0.000 claims description 14
- 238000005457 optimization Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
Abstract
The invention discloses a movement control method, medium, terminal and device of a robot. The method comprises the following steps: establishing a moving track space set; receiving a planned path of a robot from a user, and selecting a moving path with the minimum deviation distance from the planned path as a target moving path in a moving track space set; and converting the linear speed and the angular speed corresponding to the target moving path into the driving wheel speed of the robot, and forming a control instruction for driving the robot to move according to the target optimization path. The method selects the optimal track from the pre-established multiple moving tracks according to the planned path sent by the user, and quickly obtains the speed combination corresponding to the optimal track, so that the robot is controlled to move.
Description
[ technical field ] A method for producing a semiconductor device
The present invention relates to the field of robots, and in particular, to a method, medium, terminal, and apparatus for controlling movement of a robot.
[ background of the invention ]
With the rapid development of artificial intelligence, artificial intelligent robot dollies (hereinafter referred to as robots) are gradually present in various buildings and undertake tasks such as navigation, exhibition, delivery and the like. Along with the increasing acceptance of people in buildings to robots, the capacity requirements of people to the robots are gradually improved, and the moving requirements of the robots from single-position information display, navigation patrol for moving on a flat layer and multi-layer space are more urgent. With the increasing functions of robots, the load of a robot computing unit is increased, and the robot moving algorithm in the current market has large calculation amount and poor robustness, so that the robot control command is discontinuous and the movement is not smooth.
[ summary of the invention ]
The invention provides a movement control method, medium, terminal and device of a robot, and solves the technical problems.
The technical scheme for solving the technical problems is as follows: a movement control method of a robot includes the steps of: a movement control method of a robot includes the steps of:
step 1, establishing a moving track space set according to the value ranges of the linear speed and the angular speed of the robot, wherein the moving track space set comprises a plurality of moving tracks of the robot moving for a preset time at different linear speeds and different angular speeds;
step 2, receiving a planned path of the robot from a user, and selecting a moving path with the minimum deviation distance from the planned path in the moving track space set as a target moving path;
and 3, converting the linear speed and the angular speed corresponding to the target moving path into the driving wheel speed of the robot, and forming a control instruction for driving the robot to move according to the target optimized path.
In a preferred embodiment, the method for establishing the moving track space set according to the value ranges of the linear velocity and the angular velocity of the robot specifically comprises the following steps:
s101, obtaining value ranges of linear speed and angular speed of the robot, combining different linear speeds and different angular speeds by an exhaustion method to generate a plurality of speed combinations, and recording each speed combination as [ delta ]V,ΔW]In which ΔVIndicating linear velocity, Δ, of the robotWRepresenting the angular velocity of the robot;
s102, obtaining each time point T in the 0-T time period, and calculating linear speed delta according to a preset dynamic model and a preset kinematic modelVAnd angular velocity deltaWThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming velocity groupsAnd [ delta ] inV,ΔW]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the included angle between the current position of the robot and the X axis;
s103, repeating the step S102, calculating the position of all the speed combinations at each time point t, and forming a moving track space set, wherein each moving track in the moving track space set is represented as [ delta ]V,ΔW,t,Xt,Yt,θt]。
In a preferred embodiment, the velocity combinations of different linear velocities and different angular velocities are formed in an exhaustive method, comprising in particular the following steps:
s1101, acquiring a linear speed value range and linear speed adjustment gears of the robot, equally dividing the linear speed value range according to the number of the linear speed adjustment gears, and generating linear speeds △ corresponding to each linear speed adjustment gear respectivelyV;
S1102, acquiring angular velocity value ranges and angular velocity adjustment gears of the robot, equally dividing the angular velocity value ranges according to the number of the angular velocity adjustment gears, and generating angular velocities △ corresponding to each angular velocity adjustment gear respectivelyW;
S1103, converting the different linear speeds △VAnd different angular velocities △WMake up to form a velocity combination, which is recorded as [ Delta ]V,△W]。
In a preferred embodiment, selecting a movement path with a minimum deviation distance from the planned path as a target movement path in the movement trajectory space set specifically includes the following steps:
s201, receiving a planned path of the robot from a user, wherein a robot position corresponding to each time point t in the planned path is marked as [ X ]nt,Ynt,θnt];
S202, collecting the X of each movement track in the movement track space sett,Yt,θt]Respectively associated with the planned path[ X ] ofnt,Ynt,θnt]Comparing, calculating the deviation distance between the planned path position and the moving track position corresponding to each time point t,
the offset distance ═ Xnt-Xt|+|Ynt-Yt|+|θnt-θt|;
And S203, calculating the sum of the deviation distances corresponding to all time points of each movement track, and taking the movement path with the minimum sum of the deviation distances as the target movement path.
In a preferred embodiment, the method further includes an updating step, specifically:
s401, collecting the actual driving wheel speed of the robot at each time point t, and calculating the actual linear speed △ 'of the robot according to the actual driving wheel speed'v△ 'actual angular velocity'wAnd actual position (X't,Y′t,θ′t) And generating an actual track of the robot, which is recorded as [ △'v,△′w,t,X′t,Y′t,θ′t];
S402, judging whether the movement track space set contains a speed combination [ △'v,△′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ △'v,△′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ △'v,△′w,t,X′t,Y′t,θ′t]Adding to the set of movement trajectory space.
A second aspect of embodiments of the present invention provides a computer-readable storage medium storing a computer program which, when executed by a processor, implements the above-described movement control method for a robot.
A third aspect of the embodiments of the present invention provides a mobile control terminal for a robot, including the computer-readable storage medium and a processor, where the processor implements the steps of the mobile control method for the robot when executing a computer program on the computer-readable storage medium.
A fourth aspect of the embodiments of the present invention provides a movement control apparatus for a robot, including a trajectory space set creating module, a path selecting module, and a driving control module,
the track space set establishing module is used for establishing a moving track space set according to the value ranges of the linear speed and the angular speed of the robot, and the moving track space set comprises a plurality of moving tracks of the robot moving at different linear speeds and different angular speeds for preset time;
the path selection module is used for receiving a planned path of the robot from a user and selecting a moving path with the minimum deviation distance from the planned path in the moving track space set as a target moving path;
the driving control module is used for converting the linear speed and the angular speed corresponding to the target moving path into the driving wheel speed of the robot and forming a control instruction for driving the robot to move according to the target optimized path.
In a preferred embodiment, the trajectory space set creating module specifically includes:
a speed combination generating unit, configured to obtain value ranges of linear speeds and angular speeds of the robot, combine different linear speeds and different angular speeds by an exhaustive method, and generate a plurality of speed combinations, where each speed combination is denoted as [ Δ [ ]V,ΔW]In which ΔVIndicating linear velocity, Δ, of the robotWRepresenting the angular velocity of the robot;
a moving track generating unit for obtaining each time point T in the 0-T time period and calculating the linear velocity delta according to the preset dynamic model and the preset kinematic modelVAnd angular velocity deltaWThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ Delta ]V,ΔW]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the included angle between the current position of the robot and the X axis;
a track space set establishing unit, configured to calculate the positions of all the velocity combinations at each time point t, and form a moving track space set, where each moving track in the moving track space set is represented as [ Δ ]V,ΔW,t,Xt,Yt,θt]。
In a preferred embodiment, the system further includes an update module, where the update module specifically includes:
a calculating unit for collecting the actual driving wheel speed of the robot at each time point t and calculating the actual linear speed delta 'of the robot according to the actual driving wheel speed'vActual angular velocity Δ'wAnd actual position (X't,Y′t,θ′t) And generating an actual trajectory of the robot, noted as [ Delta'v,Δ′w,t,X′t,Y′t,θ′t];
An updating unit for judging whether the movement track space set contains a speed combination [ Delta'v,Δ′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ Delta'v,Δ′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ Delta'v,Δ′w,t,X′t,Y′t,θ′t]Adding to the set of movement trajectory space.
The method selects the optimal track from the pre-established multiple moving tracks according to the planned path sent by the user, and quickly obtains the speed combination corresponding to the optimal track, so that the robot is controlled to move.
In order to make the aforementioned and other objects, features and advantages of the present invention comprehensible, preferred embodiments accompanied with figures are described in detail below.
[ description of the drawings ]
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained according to the drawings without inventive efforts.
Fig. 1 is a schematic flowchart of a movement control method of a robot according to embodiment 1;
fig. 2 is a schematic structural diagram of a movement control device of a robot according to embodiment 2:
fig. 3 is a schematic structural diagram of a mobile control terminal of a robot according to embodiment 3.
[ detailed description ] embodiments
In order to make the objects, technical solutions and advantageous effects of the present invention more clearly apparent, the present invention is further described in detail below with reference to the accompanying drawings and the detailed description. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.
Fig. 1 is a schematic flow chart of a movement control method of a robot according to embodiment 1 of the present invention, as shown in fig. 1, including the following steps:
step 1, establishing a moving track space set according to the value ranges of the linear speed and the angular speed of the robot, wherein the moving track space set comprises a plurality of moving tracks of the robot moving for preset time at different linear speeds and different angular speeds. Where robots include, but are not limited to, unmanned devices, smart mobile devices, telemetric mobile devices, and the like. In a preferred embodiment, the establishing of the movement trajectory space set specifically includes the following steps:
s101, acquiring linear speed and angle of the robotThe value range of the speed is combined by different linear speeds and different angular speeds by an exhaustion method to generate a plurality of speed combinations, and each speed combination is marked as [ delta ]V,ΔW]Where is deltaVIndicating the linear velocity of the robot, △WFor example, the linear speed adjustment gear and the angular speed adjustment gear of the robot can be obtained, the linear speed value range is equally divided according to the number of the linear speed adjustment gears, the angular speed value range is equally divided according to the number of the angular speed adjustment gears, and therefore the linear speed △ corresponding to each gear is generatedVAnd angular velocity △WThen the different linear speeds △VAnd different angular velocities △WThe speed combination can be formed by combining.
S102, obtaining each time point T in the 0-T time period, and calculating △ linear velocity according to the preset dynamic model and the preset kinematic modelVAnd angular velocity △WThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ △V,△W]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the angle of the current position of the robot with the X-axis.
Taking two-wheeled differential motion as an example: establishing a coordinate system by taking the advancing direction of the robot as an X axis, the axes of two wheels of the robot as a Y axis and the center of the wheel tread as an origin; the kinematic formula used is as follows:
wherein: vIs the linear velocity of the robot in the forward direction; vlIs the robot left wheel speed; vrIs the machine right wheel speed; w is the robot angular velocity; l is the distance between two wheels; and R is the radius of the robot doing circular motion.
The kinetic formula used is as follows: f ═ ma
Wherein: f is the traction force of the robot, m is the robot mass, and a is the robot acceleration.
Velocity formula: v is V0+a△t2
Wherein: v is the robot speed; v0The robot gives out the speed, a is the robot acceleration, and △ t is the change time of the speed.
According to the model, the position [ X ] of the robot in space after running for △ t time at linear velocity V and angular velocity W can be obtained0Y0θ0]The derivation of (d) is:
X0=Rcos(θ)
Y0=Rsin(θ)
θ0=W△t
when W is 0, Y0=0,θ0When the robot does linear motion, the robot does linear motion;
when W is not 0, the robot does circular motion;
wherein: r represents the radius X when the robot does circular motion and represents the displacement of the robot in the advancing direction; y represents a displacement in the left-right direction of the robot; θ represents the angle of rotation of the robot.
By using the above formula, the linear velocity △ can be calculatedVAnd angular velocity △WThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ △V,△W]Corresponding movement tracks are calculated, and then the positions of all the speed combinations at each time point t are calculated, so that a movement track space set is formed, wherein each movement track in the movement track space set is represented as [ △ ]V,△W,t,Xt,Yt,θt]So that the pairs of speed combinations and robot positions can be quickly obtainedThe relationship is used.
And then step 2 is executed, the planned path of the robot from the user is received, and the moving path with the minimum deviation distance from the planned path is selected as the target moving path in the moving track space set. The method specifically comprises the following steps:
s201, receiving a planned path of the robot from a user, wherein a robot position corresponding to each time point t in the planned path is marked as [ X ]nt,Ynt,θnt];
S202, collecting the X of each movement track in the movement track space sett,Yt,θt]Respectively with [ X ] of the planned pathnt,Ynt,θnt]Comparing, calculating the deviation distance between the planned path position and the moving track position corresponding to each time point t,
the offset distance ═ Xnt-Xt|+|Ynt-Yt|+|θnt-θt|;
And S203, calculating the sum of the deviation distances corresponding to all time points of each movement track, and taking the movement path with the minimum sum of the deviation distances as the target movement path.
After the optimal target moving path is obtained, the optimal speed combination can be obtained, then step 3 is executed, and the speeds of the left wheel and the right wheel are obtained according to the optimal speed combination, wherein the specific formula is as follows:
wherein VlLeft wheel speed; vrRight wheel speed; l is a wheel track; delta V is the linear speed of the robot; Δ W is the angular velocity of the robot.
Control instructions for driving the robot to move according to the target optimized path are then formed according to the left and right wheel speeds of the robot. In a preferred embodiment, the method further includes an updating step, specifically:
s401, acquiring the actual driving wheel speed of the robot at each time point t, and calculating the actual linear speed delta 'of the robot according to the actual driving wheel speed'vActual angular velocity Δ'wAnd actual position (X't,Y′t,θ′t) And generating an actual track of the robot, which is recorded as [ △'v,Δ′w,t,X′t,Y′t,θ′t];
S402, judging whether the movement track space set contains a speed combination [ △'v,Δ′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ Delta'v,Δ′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ Delta'v,Δ′w,t,X′t,Y′t,θ′t]Added to the set of motion trajectory space, the updated data will participate in the calculations in the next cycle.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
An embodiment of the present invention further provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the method for controlling the movement of the robot is implemented.
Fig. 2 is a schematic structural diagram of a movement control apparatus of a robot according to embodiment 2 of the present invention, as shown in fig. 2, including a trajectory space set creating module 100, a path selecting module 200 and a driving control module 300,
the trajectory space set establishing module 100 is configured to establish a moving trajectory space set according to a value range of a linear velocity and an angular velocity of the robot, where the moving trajectory space set includes a plurality of moving trajectories of the robot moving at different linear velocities and different angular velocities for a preset time;
the path selection module 200 is configured to receive a planned path of the robot from a user, and select a moving path with a minimum deviation distance from the planned path in the moving trajectory space set as a target moving path;
the driving control module 300 is configured to convert the linear velocity and the angular velocity corresponding to the target movement path into a driving wheel velocity of the robot, and form a control instruction for driving the robot to move according to the target optimized path.
In a preferred embodiment, the trajectory space set creating module 100 specifically includes:
a speed combination generating unit 101, configured to obtain value ranges of linear speeds and angular speeds of the robot, combine different linear speeds and different angular speeds by an exhaustive method, and generate a plurality of speed combinations, where each speed combination is denoted as [ Δ [ ]V,ΔW]In which ΔVIndicating the linear velocity of the robot, △WRepresenting the angular velocity of the robot;
a moving track generating unit 102, configured to obtain each time point T in the O-T time period, and calculate a linear velocity △ according to a preset kinetic model and a preset kinematic modelVAnd angular velocity △WThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ △V,△W]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the included angle between the current position of the robot and the X axis;
a track space set establishing unit 103, configured to calculate the positions of all the velocity combinations at each time point t, and form a movement track space set, where each movement track in the movement track space set is represented as [ △ ]V,△W,t,Xt,Yt,θt]。
In a preferred embodiment, the speed combination generating unit 101 specifically includes:
a first data obtaining unit 1011, configured to obtain a linear velocity value range and linear velocity adjustment gears of the robot, equally divide the linear velocity value range according to the number of the linear velocity adjustment gears, and generate a linear velocity △ corresponding to each linear velocity adjustment gear respectivelyV;
A second data obtaining unit 1012, configured to obtain angular velocity value ranges and angular velocity adjustment gear positions of the robot, equally divide the angular velocity value ranges according to the number of angular velocity adjustment gear positions, and generate an angular velocity △ corresponding to each angular velocity adjustment gear positionW;
Combination unit 1013 for combining different linear velocities △VAnd different angular velocities △WThe combination is carried out to form a speed combination which is marked as [ △ ]V,△W]。
In a preferred embodiment, the path selection module 200 specifically includes:
a planned path receiving unit 201, configured to receive a planned path of the robot from a user, where a robot position corresponding to each time point t in the planned path is marked as [ Xnt,Ynt,θnt];
A comparing unit 202 for comparing [ X ] of each movement trace in the movement trace space sett,Yt,θt]Respectively with [ X ] of the planned pathnt,Ynt,θnt]Comparing, calculating the deviation distance between the planned path position and the moving track position corresponding to each time point t,
the offset distance ═ Xnt-Xt|+|Ynt-Yt|+|θnt-θt|;
And a target track generating unit 203, configured to obtain a sum of deviation distances corresponding to all time points of each moving track, and use a moving path with the smallest sum of deviation distances as the target moving path.
In a preferred embodiment, the system further includes an update module 400, where the update module 400 specifically includes:
a calculating unit 401, configured to collect an actual driving wheel speed of the robot at each time point t, and calculate an actual linear speed Δ 'of the robot according to the actual driving wheel speed'vActual angular velocity Δ'wAnd actual position (X't,Y′t,θ′t) And generating an actual trajectory of the robot, noted as [ Delta'v,Δ′w,t,X′t,Y′t,θ′t];
An updating unit 402 for determining whether the motion trajectory space set contains a combination [ Delta ] with velocity'v,Δ′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ Delta'v,Δ′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ Delta'v,Δ′w,t,X′t,Y′t,θ′t]Adding to the set of movement trajectory space.
The embodiment of the invention also provides a mobile control terminal of the robot, which comprises the computer readable storage medium and a processor, wherein the processor realizes the steps of the mobile control method of the robot when executing the computer program on the computer readable storage medium. Fig. 3 is a schematic structural diagram of a movement control terminal of a robot according to embodiment 3 of the present invention, and as shown in fig. 3, the movement control terminal 8 of the robot according to this embodiment includes: a processor 80, a readable storage medium 81 and a computer program 82 stored in said readable storage medium 81 and executable on said processor 80. The processor 80, when executing the computer program 82, implements the steps in the various method embodiments described above, such as steps 1 through 3 shown in fig. 1. Alternatively, the processor 80, when executing the computer program 82, implements the functions of the modules in the above-described device embodiments, such as the functions of the modules 100 to 300 shown in fig. 2.
Illustratively, the computer program 82 may be partitioned into one or more modules that are stored in the readable storage medium 81 and executed by the processor 80 to implement the present invention. The one or more modules may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution of the computer program 82 in the mobile control terminal 8 of the robot.
The mobile control terminal 8 of the robot may include, but is not limited to, a processor 80, and a readable storage medium 81. Those skilled in the art will appreciate that fig. 3 is only an example of the mobile control terminal 8 of the robot, and does not constitute a limitation to the mobile control terminal 8 of the robot, and may include more or less components than those shown, or combine some components, or different components, for example, the mobile control terminal of the robot may further include a power management module, an arithmetic processing module, an input/output device, a network access device, a bus, and the like.
The processor 80 may be a Central Processing Unit (CPU), other general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The readable storage medium 81 may be an internal storage unit of the mobile control terminal 8 of the robot, such as a hard disk or a memory of the mobile control terminal 8 of the robot. The readable storage medium 81 may also be an external storage device of the mobile control terminal 8 of the robot, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the mobile control terminal 8 of the robot. Further, the readable storage medium 81 may also include both an internal storage unit and an external storage device of the mobile control terminal 8 of the robot. The readable storage medium 81 is used to store the computer program and other programs and data required by the mobile control terminal of the robot. The readable storage medium 81 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and method steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus/terminal device and method may be implemented in other ways. For example, the above-described embodiments of the apparatus/terminal device are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The invention is not limited solely to that described in the specification and embodiments, and additional advantages and modifications will readily occur to those skilled in the art, so that the invention is not limited to the specific details, representative apparatus, and illustrative examples shown and described herein, without departing from the spirit and scope of the general concept as defined by the appended claims and their equivalents.
Claims (10)
1. A movement control method of a robot, characterized by comprising the steps of:
step 1, establishing a moving track space set according to the value ranges of the linear speed and the angular speed of the robot, wherein the moving track space set comprises a plurality of moving tracks of the robot moving for a preset time at different linear speeds and different angular speeds;
step 2, receiving a planned path of the robot from a user, and selecting a moving path with the minimum deviation distance from the planned path in the moving track space set as a target moving path;
and 3, converting the linear speed and the angular speed corresponding to the target moving path into the driving wheel speed of the robot, and forming a control instruction for driving the robot to move according to the target optimized path.
2. The movement control method of the robot according to claim 1, wherein a movement trajectory space set is established according to the value ranges of the linear velocity and the angular velocity of the robot, and the method specifically comprises the following steps:
s101, obtaining value ranges of linear speed and angular speed of the robot, combining different linear speeds and different angular speeds by an exhaustion method to generate a plurality of speed combinations, and recording each speed combination as [ delta ]V,ΔW]In which ΔVIndicating linear velocity, Δ, of the robotWRepresenting the angular velocity of the robot;
s102, obtaining each time point T in the 0-T time period, and calculating linear speed delta according to a preset dynamic model and a preset kinematic modelVAnd angular velocity deltaWThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ Delta ]V,ΔW]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the included angle between the current position of the robot and the X axis;
s103, repeating the step S102, calculating the position of all the speed combinations at each time point t, and forming a moving track space set, wherein each moving track in the moving track space set is represented as [ delta ]V,ΔW,t,Xt,Yt,θt]。
3. The method for controlling the movement of a robot according to claim 2, wherein the velocity combinations of different linear velocities and different angular velocities are formed by an exhaustive method, comprising the following steps:
s1101, acquiring a linear speed value range and linear speed adjustment gears of the robot, equally dividing the linear speed value range according to the number of the linear speed adjustment gears, and generating a linear speed delta corresponding to each linear speed adjustment gearV;
S1102, acquiring angular velocity value ranges and angular velocity adjustment gears of the robot, equally dividing the angular velocity value ranges according to the number of the angular velocity adjustment gears, and generating angular velocities delta corresponding to each angular velocity adjustment gear respectivelyW;
S1103, converting the different linear velocities deltaVAnd different angular velocities deltaWMake up to form a velocity combination, which is recorded as [ Delta ]V,ΔW]。
4. The method for controlling movement of a robot according to claim 3, wherein the step of selecting a movement path with a minimum deviation distance from the planned path in the movement trajectory space set as a target movement path comprises the following steps:
s201, receiving a planned path of the robot from a user, wherein a robot position corresponding to each time point t in the planned path is marked as [ X ]nt,Ynt,θnt];
S202, collecting the X of each movement track in the movement track space sett,Yt,θt]Respectively with [ X ] of the planned pathnt,Ynt,θnt]Comparing, calculating the deviation distance between the planned path position and the moving track position corresponding to each time point t,
the offset distance ═ Xnt-Xt|+|Ynt-Yt|+|θnt-θt|;
And S203, calculating the sum of the deviation distances corresponding to all time points of each movement track, and taking the movement path with the minimum sum of the deviation distances as the target movement path.
5. The movement control method of the robot according to claim 4, further comprising an updating step, specifically:
s401, acquiring the actual driving wheel speed of the robot at each time point t, and calculating the actual linear speed delta 'of the robot according to the actual driving wheel speed'vActual angular velocity Δ'wAnd actual position (X't,Y′t,θ′t) And generating an actual trajectory of the robot, noted as [ Delta'v,Δ′w,t,X′t,Y′t,θ′t];
S402, judging whether the movement track space set contains speed combination [ delta'v,Δ′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ Delta'v,Δ′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ Delta'v,Δ′w,t,X′t,Y′t,θ′t]Adding to the set of movement trajectory space.
6. A computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements a movement control method of a robot according to any one of claims 1 to 5.
7. A movement control terminal of a robot, characterized by comprising the computer-readable storage medium of claim 6 and a processor, which when executing a computer program on the computer-readable storage medium implements the steps of the movement control method of a robot according to any of claims 1-5.
8. A movement control device of a robot is characterized by comprising a track space set establishing module, a path selecting module and a driving control module,
the track space set establishing module is used for establishing a moving track space set according to the value ranges of the linear speed and the angular speed of the robot, and the moving track space set comprises a plurality of moving tracks of the robot moving at different linear speeds and different angular speeds for preset time;
the path selection module is used for receiving a planned path of the robot from a user and selecting a moving path with the minimum deviation distance from the planned path in the moving track space set as a target moving path;
the driving control module is used for converting the linear speed and the angular speed corresponding to the target moving path into the driving wheel speed of the robot and forming a control instruction for driving the robot to move according to the target optimized path.
9. The movement control apparatus of a robot according to claim 8, wherein the trajectory space set creating module specifically includes:
a speed combination generating unit, configured to obtain value ranges of linear speeds and angular speeds of the robot, combine different linear speeds and different angular speeds by an exhaustive method, and generate a plurality of speed combinations, where each speed combination is denoted as [ Δ [ ]V,ΔW]In which ΔVIndicating linear velocity, Δ, of the robotWRepresenting the angular velocity of the robot;
a moving track generating unit for obtaining each time point T in the 0-T time period and calculating the linear velocity delta according to the preset dynamic model and the preset kinematic modelVAnd angular velocity deltaWThe position of the robot moving to each time point t is marked as [ X ]t,Yt,θt]And forming a velocity combination [ Delta ]V,ΔW]A corresponding movement track; wherein, XtIndicating the displacement of the current position of the robot on the X-axis, YtIndicating the displacement of the current position of the robot on the Y-axis, thetatRepresenting the included angle between the current position of the robot and the X axis;
a track space set establishing unit, configured to calculate the positions of all the velocity combinations at each time point t, and form a moving track space set, where each moving track in the moving track space set is represented as [ Δ ]V,ΔW,t,Xt,Yt,θt]。
10. The movement control device of a robot according to claim 9, further comprising an update module, wherein the update module specifically includes:
a calculating unit for collecting the actual driving wheel speed of the robot at each time point t and calculating the actual linear speed delta 'of the robot according to the actual driving wheel speed'vActual angular velocity Δ'wAnd actual position (X't,Y′t,θ′t) And generating an actual trajectory of the robot, noted as [ Delta'v,Δ′w,t,X′t,Y′t,θ′t];
An updating unit for judging whether the movement track space set contains a speed combination [ Delta'v,Δ′w]The same moving path, if any, the [ X ] of the moving patht,Yt,θt]Update to the speed combination [ Delta'v,Δ′w]Corresponding actual position (X't,Y′t,θ′t) If not, the actual path [ Delta'v,Δ′w,t,X′t,Y′t,θ′t]Adding to the set of movement trajectory space.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911211740.9A CN110850883A (en) | 2019-11-29 | 2019-11-29 | Movement control method, medium, terminal and device of robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911211740.9A CN110850883A (en) | 2019-11-29 | 2019-11-29 | Movement control method, medium, terminal and device of robot |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110850883A true CN110850883A (en) | 2020-02-28 |
Family
ID=69607551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911211740.9A Pending CN110850883A (en) | 2019-11-29 | 2019-11-29 | Movement control method, medium, terminal and device of robot |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110850883A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111844030A (en) * | 2020-07-10 | 2020-10-30 | 珠海格力电器股份有限公司 | Interpolation point generation method and device, processor and electronic device |
CN111993411A (en) * | 2020-07-07 | 2020-11-27 | 深圳市优必选科技股份有限公司 | Robot motion planning method and device, robot and storage medium |
CN112799296A (en) * | 2021-01-04 | 2021-05-14 | 中钞长城金融设备控股有限公司 | Control system and control method of intelligent stacking machine |
CN113110423A (en) * | 2021-03-26 | 2021-07-13 | 深圳市优必选科技股份有限公司 | Gait trajectory planning method and device, computer readable storage medium and robot |
CN113495530A (en) * | 2021-08-26 | 2021-10-12 | 珠海格力智能装备有限公司 | Motion control method and apparatus, computer-readable storage medium, and processor |
CN113110423B (en) * | 2021-03-26 | 2024-04-26 | 深圳市优必选科技股份有限公司 | Gait track planning method and device, computer readable storage medium and robot |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140142910A1 (en) * | 2012-11-22 | 2014-05-22 | Hon Hai Precision Industry Co., Ltd. | Handheld device and method for simulating flight path of boomerang |
CN107464018A (en) * | 2017-08-01 | 2017-12-12 | 北京同城必应科技有限公司 | A kind of Distribution path optimization method and device, computer equipment, storage medium |
CN109990783A (en) * | 2017-12-29 | 2019-07-09 | 深圳市优必选科技有限公司 | A kind of robot motion's paths planning method, robot and storage medium |
EP3561625A1 (en) * | 2018-04-27 | 2019-10-30 | Disney Enterprises, Inc. | Ballistic robot system with spin and other controlled motion of robot during flight |
CN110488843A (en) * | 2019-09-04 | 2019-11-22 | 深圳前海达闼云端智能科技有限公司 | Barrier-avoiding method, mobile robot and computer readable storage medium |
KR102049962B1 (en) * | 2019-04-17 | 2019-11-28 | 주식회사 트위니 | Sampling based optimal tree planning method and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
US20190361431A1 (en) * | 2018-05-28 | 2019-11-28 | Korea Institute Of Science And Technology | Mobile robot control apparatus and method for compensating input delay time |
-
2019
- 2019-11-29 CN CN201911211740.9A patent/CN110850883A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140142910A1 (en) * | 2012-11-22 | 2014-05-22 | Hon Hai Precision Industry Co., Ltd. | Handheld device and method for simulating flight path of boomerang |
CN107464018A (en) * | 2017-08-01 | 2017-12-12 | 北京同城必应科技有限公司 | A kind of Distribution path optimization method and device, computer equipment, storage medium |
CN109990783A (en) * | 2017-12-29 | 2019-07-09 | 深圳市优必选科技有限公司 | A kind of robot motion's paths planning method, robot and storage medium |
EP3561625A1 (en) * | 2018-04-27 | 2019-10-30 | Disney Enterprises, Inc. | Ballistic robot system with spin and other controlled motion of robot during flight |
US20190361431A1 (en) * | 2018-05-28 | 2019-11-28 | Korea Institute Of Science And Technology | Mobile robot control apparatus and method for compensating input delay time |
KR102049962B1 (en) * | 2019-04-17 | 2019-11-28 | 주식회사 트위니 | Sampling based optimal tree planning method and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same |
CN110488843A (en) * | 2019-09-04 | 2019-11-22 | 深圳前海达闼云端智能科技有限公司 | Barrier-avoiding method, mobile robot and computer readable storage medium |
Non-Patent Citations (1)
Title |
---|
彭继慎等: "农业轮式移动机器人反演自适应滑模轨迹跟踪控制", 《计算机应用与软件》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111993411A (en) * | 2020-07-07 | 2020-11-27 | 深圳市优必选科技股份有限公司 | Robot motion planning method and device, robot and storage medium |
CN111844030A (en) * | 2020-07-10 | 2020-10-30 | 珠海格力电器股份有限公司 | Interpolation point generation method and device, processor and electronic device |
CN111844030B (en) * | 2020-07-10 | 2022-04-05 | 珠海格力电器股份有限公司 | Interpolation point generation method and device, processor and electronic device |
CN112799296A (en) * | 2021-01-04 | 2021-05-14 | 中钞长城金融设备控股有限公司 | Control system and control method of intelligent stacking machine |
CN113110423A (en) * | 2021-03-26 | 2021-07-13 | 深圳市优必选科技股份有限公司 | Gait trajectory planning method and device, computer readable storage medium and robot |
WO2022198995A1 (en) * | 2021-03-26 | 2022-09-29 | 深圳市优必选科技股份有限公司 | Gait trajectory planning method and apparatus, computer readable storage medium, and robot |
CN113110423B (en) * | 2021-03-26 | 2024-04-26 | 深圳市优必选科技股份有限公司 | Gait track planning method and device, computer readable storage medium and robot |
CN113495530A (en) * | 2021-08-26 | 2021-10-12 | 珠海格力智能装备有限公司 | Motion control method and apparatus, computer-readable storage medium, and processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110850883A (en) | Movement control method, medium, terminal and device of robot | |
WO2019184179A1 (en) | Method and device for controlling movement of autonomous mobile machine, machine and storage medium | |
CN111309039B (en) | Gesture control method and device for four-foot robot | |
CN111319041B (en) | Robot pose determining method and device, readable storage medium and robot | |
CN108279674B (en) | Intelligent moving method, device, robot and storage medium | |
CN110986988A (en) | Trajectory estimation method, medium, terminal and device fusing multi-sensor data | |
US11372414B2 (en) | Robotic motion control method and apparatus and robot using the same | |
CN111390902A (en) | Trajectory planning method, trajectory planning device, equipment and storage medium | |
CN110887493A (en) | Trajectory estimation method, medium, terminal and device based on local map matching | |
CN109947112B (en) | Optimal time trajectory planning method for straight fixed-point motion of two-wheeled self-balancing vehicle | |
WO2022252390A1 (en) | Error compensation method and apparatus, computer device, and storage medium | |
CN112148017B (en) | Error calibration method and device, electronic equipment and storage medium | |
CN110083158B (en) | Method and equipment for determining local planning path | |
CN116449820A (en) | Unmanned tracked vehicle track tracking control method based on constraint following | |
CN112720455A (en) | Optimal joint acceleration and deceleration calculation method and device and application thereof | |
CN112157651B (en) | Pose determination method and device and robot | |
CN110991085A (en) | Robot image simulation data construction method, medium, terminal and device | |
CN114454981B (en) | Jumping motion control method and device of biped robot and biped robot | |
CN110285803A (en) | Chassis localization method, device, equipment and computer readable storage medium | |
CN113204892B (en) | Centroid trajectory generation method and device, computer readable storage medium and robot | |
CN112643674B (en) | Robot following machining workpiece surface compensation method, robot and storage device | |
CN114967441A (en) | Networked incomplete constraint multi-robot grouping consistent tracking control method, micro-control unit and control system | |
CN114440874A (en) | Fusion positioning method and device based on optical flow and grating | |
CN113359740A (en) | Wheeled mobile robot and control method, control system and storage medium thereof | |
CN113110423B (en) | Gait track planning method and device, computer readable storage medium and 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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200228 |