WO2019154446A2 - 自动引导车的控制方法、自动引导车及货物搬运系统 - Google Patents

自动引导车的控制方法、自动引导车及货物搬运系统 Download PDF

Info

Publication number
WO2019154446A2
WO2019154446A2 PCT/CN2019/087343 CN2019087343W WO2019154446A2 WO 2019154446 A2 WO2019154446 A2 WO 2019154446A2 CN 2019087343 W CN2019087343 W CN 2019087343W WO 2019154446 A2 WO2019154446 A2 WO 2019154446A2
Authority
WO
WIPO (PCT)
Prior art keywords
arc
trajectory
next position
robot
guided vehicle
Prior art date
Application number
PCT/CN2019/087343
Other languages
English (en)
French (fr)
Other versions
WO2019154446A3 (zh
Inventor
周靖淳
张恒
周喆颋
黄威
倪菲
黄润
兴磊磊
Original Assignee
上海快仓智能科技有限公司
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
Priority claimed from CN201910257006.XA external-priority patent/CN109885070B/zh
Priority claimed from CN201910256998.4A external-priority patent/CN109928129B/zh
Application filed by 上海快仓智能科技有限公司 filed Critical 上海快仓智能科技有限公司
Publication of WO2019154446A2 publication Critical patent/WO2019154446A2/zh
Publication of WO2019154446A3 publication Critical patent/WO2019154446A3/zh

Links

Images

Classifications

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

Definitions

  • the invention relates to the field of intelligent warehousing, in particular to a control method of an automatic guided vehicle, an automatic guided vehicle and a cargo handling system.
  • a parcel sorting system consisting of sorting robots has emerged. This system guarantees the efficient sorting of parcels and has instant Responsive and distributed flexibility.
  • AAV automatic guided vehicles
  • the automated guided vehicle can automatically receive the item handling task, under the control of the program, arrive at the first position, obtain the item, then walk to the second position, remove the item, and continue to perform other tasks.
  • Most of the existing parcel sorting systems divide the field into rectangular cells and establish a Cartesian coordinate system. After receiving the task of moving to the specified point, the robot first calculates the moving path and then executes multiple moving commands along the path. After passing through the cell, it stops at the cell where the end point is.
  • the existing two-dimensional code navigation mobile robot establishes a grid coordinate system composed of cells in the field.
  • the robot generally moves linearly along the grid in the X or Y direction.
  • the robot needs to decelerate to a standstill, then rotate in place, and finally re-accelerate away from the turning point.
  • the efficiency of such movement is relatively low, and one robot decelerates, which may cause an interlocking effect, causing other robots to decelerate at the same time, so multiple robots may block the path when they cooperate.
  • the existing arc planning is mostly based on the arc or elliptical arc connecting the straight line.
  • the arc and the straight line are connected in the angular velocity, which may cause the control precision to decrease or even lead to slip.
  • the method of greatly reducing the line speed is used to connect, so that the angular velocity jump can be reduced to some extent, but the efficiency is affected and the stability is still insufficient.
  • Figure 10 shows such a scheme.
  • the robot has a line speed of v and an angular velocity of 0 before entering the arc. At the moment of entering the arc, the angular velocity is the linear velocity v/arc radius r.
  • Figure 11 shows the severe speed jumps of the left and right wheels of the robot before and after entering the arc.
  • the present invention provides a method for controlling an automated guided vehicle, comprising: acquiring a current position and a next position of the automated guided vehicle; determining whether the next position is a turning point; if the next position is a non-steering point that controls the automated guided vehicle to pass straight through the next position; and if the next position is a turning point, controlling the automated guided vehicle to steer at the next position.
  • the step of controlling the automatic guided vehicle to perform steering at the next position comprises: determining whether the next position satisfies a U-shaped steering condition, and if so, controlling the automatic guided vehicle to have a U-shaped arc Turning through the next position; otherwise, determining whether the next position satisfies an arc turning condition, and if so, controlling the automatic guided vehicle to pass the next position in a right angle arc; if If the position does not satisfy the arc turning condition, the automatic guided vehicle is controlled to pass through the next position in a right angle turn.
  • control method further includes: acquiring a next position of the next position, and determining whether the next position is available, and waiting for the next position is not available until The next next position becomes available.
  • control method further includes: if the next position is a turning point, acquiring a next position of the next position, and determining whether the next position is available, When the next position is not available, it waits until the next position becomes available, and the automatic guided vehicle is controlled to pass the next position in a U-shaped arc or a right-angled arc.
  • the step of controlling the automatic guided vehicle to perform steering at the next position comprises:
  • the robot is controlled to move in accordance with the planned trajectory.
  • the method further includes receiving the linear velocity V, wherein the step of planning the trajectory comprises:
  • the trajectory is calculated based on the acceleration and angular acceleration.
  • the plurality of feature time points includes 16 feature time points T0-T15,
  • T1 AccMax/Jerk/ts+T0;
  • T2 vMax/AccMax/ts+T0;
  • T3 T2+T1-T0;
  • T4 T3+floor((x_target-0.8305)/vMax/ts+0.5);
  • T5 omgAccMax/omgJerk/ts+T4;
  • T6 omgMax/omgAccMax/ts+T4;
  • T7 T6+T5-AT0;
  • T8 targetOmg/omgMax/ts+T4;
  • T9 T8+T5-T4;
  • T10 T8+T6-T4;
  • T11 T8+T7-T4;
  • T12 T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
  • T13 T4+T1-T0;
  • T14 T4+T2-T0;
  • T15 T4+T3-T0;
  • the maximum velocity of the trajectory vMax linear velocity V
  • AccMax is the maximum acceleration value of the trajectory
  • Jerk is the maximum jerk value of the trajectory
  • omgMax is the maximum angular velocity of the arc
  • omgAccMax is the maximum angular acceleration of the arc
  • the oggJerk is the arc.
  • the maximum angular jerk, targetOmg is the arc radians.
  • the trajectory maximum acceleration value AccMax vMax*5
  • the trajectory maximum jerk value Jerk AccMax/ts/10
  • the arc maximum angular velocity omgMax 50/180*pi
  • the arc maximum angular acceleration omgAccMax omgMax *2
  • arc maximum angular jerk omgJerk omgAccMax / ts / 20
  • targetOmg 0.5 * pi is a 90 degree arc.
  • the calculating the acceleration and the angular acceleration of the robot comprises: calculating the current time acceleration acc n according to the current t time and the previous time acc n-1 , according to the current t time and the previous time angleacc n -1 iteratively calculates the current time angular acceleration angleacc n ,
  • the step of calculating the trajectory comprises: calculating the trajectory according to the acceleration and the angular acceleration using the following formula:
  • the present invention also provides an automatic guided vehicle comprising: a vehicle body; a motor mounted on the vehicle body; a traveling device coupled to the motor and driven by the motor; and a control device disposed on the vehicle Physically, and configured to perform the control method as described above.
  • the present invention also provides a cargo handling system comprising: a coordinate unit; an automated guided vehicle; a control unit that communicates with the automated guided vehicle and controls movement of the automated guided vehicle in the coordinate unit, and It is configured to perform the control method as described above.
  • the invention also provides a computer readable storage medium comprising computer executable instructions stored thereon, the executable instructions, when executed by a processor, implement a control method as described above.
  • the invention proposes an adaptive arc turn decision logic, which dynamically selects which way to move through the turning point according to the real-time state.
  • the arc turn waiting strategy is proposed to improve the probability of using curved turns in the congested area and improve the overall operating efficiency of the system.
  • the invention provides a plurality of optimization schemes and control logics for the movement of the robot near the turning point, reduces the time consumption of the robot turning, and improves the overall efficiency of the system.
  • the present invention also provides a motion control method for a robot, comprising: receiving start point coordinates x_start, y_start and end point coordinates x_target, y_target; planning a trajectory of the robot from the start point coordinate to the end point coordinate, wherein the path of the trajectory And including a straight line segment and an arc segment in which the movement mechanism of the robot does not have a speed jump at a boundary between the straight line segment and the arc segment; and controlling the robot according to the track Trajectory movement.
  • the motion control method further includes receiving a linear velocity V, wherein the step of planning the trajectory comprises: calculating a plurality of feature time points; calculating an acceleration of the robot according to the plurality of feature time points And angular acceleration; and calculating the trajectory according to the acceleration and angular acceleration.
  • the plurality of feature time points comprises 16 feature time points T0-T15, wherein:
  • T1 AccMax/Jerk/ts+T0;
  • T2 vMax/AccMax/ts+T0;
  • T3 T2+T1-T0;
  • T4 T3+floor((x_target-0.8305)/vMax/ts+0.5);
  • T5 omgAccMax/omgJerk/ts+T4;
  • T6 omgMax/omgAccMax/ts+T4;
  • T7 T6+T5-AT0;
  • T8 targetOmg/omgMax/ts+T4;
  • T9 T8+T5-T4;
  • T10 T8+T6-T4;
  • T11 T8+T7-T4;
  • T12 T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
  • T13 T4+T1-T0;
  • T14 T4+T2-T0;
  • T15 T4+T3-T0;
  • the maximum velocity of the trajectory vMax linear velocity V
  • AccMax is the maximum acceleration value of the trajectory
  • Jerk is the maximum jerk value of the trajectory
  • omgMax is the maximum angular velocity of the arc
  • omgAccMax is the maximum angular acceleration of the arc
  • the oggJerk is the arc.
  • the maximum angular jerk, targetOmg is the arc radians.
  • the trajectory maximum acceleration value AccMax vMax*5
  • the trajectory maximum jerk value Jerk AccMax/ts/10
  • the arc maximum angular velocity omgMax 50/180*pi
  • the arc maximum angular acceleration omgAccMax omgMax *2
  • arc maximum angular jerk omgJerk omgAccMax / ts / 20
  • targetOmg 0.5 * pi is a 90 degree arc.
  • the calculating the acceleration and the angular acceleration of the robot comprises: calculating the current time acceleration acc n according to the current t time and the previous time acc n-1 , according to the current t time and the previous time angleacc n -1 Iteratively calculates the angular acceleration angleacc n at the current time, as follows:
  • the step of calculating the trajectory comprises: calculating the trajectory according to the acceleration and the angular acceleration using the following formula:
  • the motion mechanism of the robot includes at least two sets of wheels, wherein a set of wheels are located inside the track, with a set of wheels being located outside of the track.
  • the present invention also relates to a motion control apparatus for a robot, comprising: a unit that receives a start point coordinate x_start, a y_start and an end point coordinate x_target, y_target; a unit that plans a trajectory of the robot from the start point coordinate to the end point coordinate, Wherein the path of the trajectory comprises a straight line segment and an arc segment that are connected, the movement mechanism of the robot does not have a speed jump at the boundary between the straight line segment and the arc segment; and the robot is controlled according to the plan The unit of the trajectory movement.
  • the invention further relates to an automatic storage system comprising: an automated guided vehicle; and a control unit in communication with the automated guided vehicle and configured to perform the motion control method as described above.
  • the invention further relates to a computer readable storage medium comprising computer executable instructions stored thereon, the executable instructions, when executed by a processor, implement a control method as described above.
  • Figure 1 shows the situation in which the automatic guided vehicle moves linearly
  • Figure 2 shows the situation of the automatic guided vehicle moving in a straight line.
  • Figure 3 shows the situation of the automatic guided car right angle arc steering
  • Figure 4 shows the situation of the U-shaped arc steering of the automatic guided vehicle
  • FIG. 5 illustrates a method of controlling an automated guided vehicle according to an embodiment of the present invention
  • Figure 6 illustrates a method of controlling an automated guided vehicle in accordance with a preferred embodiment of the present invention
  • FIG. 7 illustrates an automated guided vehicle in accordance with another aspect of the present invention.
  • FIG. 8 illustrates a cargo handling system in accordance with another aspect of the present invention.
  • Figure 9 illustrates a computer program product arranged in accordance with at least some embodiments of the present invention.
  • Figure 10 shows an existing arc planning scheme
  • Figure 11 shows the speed jump of the left and right wheels of the robot before and after entering the arc
  • FIG. 12 illustrates a motion control method of a robot according to an embodiment of the present invention
  • Figure 13 shows the principle and effect of the motion control method of the present invention
  • FIG. 14 shows accelerations of left and right wheels or left and right motors of the robot obtained according to the motion control method of FIG. 12;
  • 15a-15b illustrate a trajectory of a robot calculated in accordance with a preferred embodiment of the present invention
  • Figure 16 shows the speed curves of the left and right wheels of the robot obtained according to Figures 15a-15b;
  • Figure 17 shows the case of a 180 degree arc turn
  • Figure 18 illustrates an automated warehousing system in accordance with one embodiment of the present invention
  • Figure 19 illustrates a computer program product arranged in accordance with at least some embodiments of the present invention.
  • first and second are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated.
  • features defining “first” or “second” may include one or more of the described features, either explicitly or implicitly.
  • the meaning of “plurality” is two or more unless specifically and specifically defined.
  • connection or integral connection: it can be mechanical connection, electrical connection or communication with each other; it can be directly connected or indirectly connected through an intermediate medium, which can be the internal connection of two elements or the interaction of two elements. relationship.
  • intermediate medium can be the internal connection of two elements or the interaction of two elements. relationship.
  • the first feature "on” or “under” the second feature may include direct contact of the first and second features, and may also include first and second features, unless otherwise explicitly defined and defined. It is not in direct contact but through additional features between them.
  • the first feature “above”, “above” and “above” the second feature includes the first feature directly above and above the second feature, or merely indicating that the first feature level is higher than the second feature.
  • the first feature “below”, “below” and “below” the second feature includes the first feature directly above and above the second feature, or merely indicating that the first feature level is less than the second feature.
  • One aspect of the present invention provides an arc movement scheme and motion control logic including the arc movement to improve overall operation efficiency of the automatic transportation unit.
  • each cell is equal in size and can be square or rectangular.
  • a grid coordinate system in units of cells is established in the field.
  • a two-dimensional code can be set at the center of the cell for positioning by a robot or an automated guided vehicle that is walking on it. Usually starting from any cell, you can only reach the four cells that are directly adjacent to each other, but not directly to the four cells on the diagonal.
  • a schematic representation of a similar cell-divided site can be seen in Figure 1.
  • Figure 1 shows the case where the automatic guided vehicle moves linearly.
  • the auto-guide car in the cell coordinate system, the auto-guide car is in the cell (1,1), and it will reach the cell (1,3), and it will move through the cell in a straight line (1, 2).
  • the black dots therein schematically show the center of the cell.
  • Fig. 2 shows the case where the automatic guided vehicle moves in a straight line (right angle turn).
  • the automated guided vehicle is currently in cell (1, 1), which is to reach the cell (2, 2).
  • the automatic guided vehicle needs to move linearly to the center point of the cell (1, 2) and decelerate to stop, change the direction of rotation by 90 degrees in the original position, and finally accelerate in the new direction and reach the cell (2, 2).
  • Figure 3 shows the situation of automatic guided car right angle arc steering.
  • the automatic guided vehicle needs to reach the (2, 2) point from the (1, 1) point through the (1, 2) point.
  • the automatic guided vehicle needs to travel up half a cell upwards, then rotate 90° clockwise in the radius of half of the cell side length, and finally move half a cell to the right to reach the target point.
  • Figure 4 shows the situation in which the U-turn is automatically guided.
  • the motion diagram of the automatic guided vehicle continuously passing through two turning points the robot needs to reach the (2, 1) point from the (1, 1) point through the (1, 2) and (2, 2) points.
  • the robot needs to travel up one cell up to the center of (1, 2), and then rotate the 180° clockwise arc to the center of the cell (2, 2) with half of the cell side length as the radius. Drive down one cell to the target point (2,1).
  • FIG. 5 illustrates a method 100 of controlling an automated guided vehicle in accordance with one embodiment of the present invention. As shown in FIG. 5, the control method 100 includes:
  • step S101 the next position of the automatic guided vehicle is acquired.
  • the cell where the current automatic guided vehicle is located is (1, 1), and according to the current traveling direction, or according to the path planned by the control system, the next position of the automatic guided vehicle will be the cell (1, 2).
  • step S102 it is determined whether the next position is a turning point.
  • the cell whose direction of advancement changes is the turning point.
  • the path plan is, for example, for a given start and end point, starting from the cell where the start point is, moving forward in one of the four directions of up, down, left, and right directions, recursively finding a move that can reach the cell where the end point is located. route.
  • step S103 if the next position is a non-steering point, the automatic guided vehicle is controlled to pass straight through the next position.
  • step S104 if the next position is a turning point, the automatic guided vehicle is controlled to perform steering at the next position, such as linear moving steering, right angle arc steering or U-shaped arc steering, according to specific requirements of steering. And set.
  • a method 200 of controlling an automated guided vehicle in accordance with a preferred embodiment of the present invention will now be described with reference to FIG.
  • Steps S201, S202, and S203 in FIG. 6 are similar to steps S101, S102, and S103 in FIG. 5, and are not described herein again.
  • step S202 if it is determined that the next position (next cell) is the turning point, it is judged based on the characteristics of the next position whether or not various types of turning operations can be performed.
  • step S204 it is determined whether the next position satisfies the U-turn condition. If the U-shaped steering condition is satisfied, proceeding to step S205, the automatic guided vehicle is controlled to pass the next position in a U-turn. The U-turn is shown in Figure 4 and will not be described here. If the U-turn condition is not satisfied, it proceeds to step S206 to determine whether the next position satisfies the arc turning condition. If the arc turning condition is satisfied, proceeding to step S207, the automatic guided vehicle AGV is controlled to pass through the next position or cell in a right angle arc.
  • next position does not satisfy the U-shaped steering condition or the arc turning condition, then proceed to step S208 to control the automatic guided vehicle to pass the next position in a right angle turn.
  • step S209 it is determined whether the next position is the end point of the handling task. If it is the end point, it proceeds to step S211, and the entire process ends. Otherwise, proceeding to step S210, the next position is iterated to the current position, and the entire process 200 is continued.
  • the conditions of the right-angled arc steering include, for example:
  • Condition a) is required; if the robot needs to be turning The point and the points before and after it stop to perform other tasks, and the arc turning cannot stop in the middle, so the condition b) is required; the actual moving track of the arc turning deviates from the original path, and the inner cell may collide if there is a robot
  • Condition c) is a special treatment for arc turning when calculating collision control. The specific explanation is as follows.
  • the trajectory of the right-angle arc curve corresponds to the three cells of the original path, and the second cell is the turning point. Since the end point of the path is defined as the turning point during path planning (it is convenient to split the path into multiple pieces).
  • the straight line segment is calculated in stages. When it is judged whether an arc is needed, if the end point is encountered, the arc cannot be turned naturally. Since a right-angled arc turn is an inseparable action, that is, it does not stop at the turning point, and it does not move linearly on the three cells of the arc track, so if you need to perform other tasks, you cannot execute the arc.
  • the line turns turns.
  • the actual moving track of the arc turning deviates from the original path of the path planning, and the car body will partially enter the cell inside the arc when the car is actually moved. If there is another automatic guiding vehicle or equipment in the cell inside the arc, There is a possibility of a collision, so the turning point cannot be curved in an arc.
  • the above 3 points are the most basic conditions to determine whether or not an arc can be considered. In the actual scenario, there may be other restrictions that need to be considered. Only when these constraints are met can the arc be safely turned, otherwise only It can pass through the turning point by moving the steering in a straight line.
  • the basic conditions of the U-shaped arc turning include, for example:
  • condition b) is required; if the robot needs to stop at the turning point and its front and rear points to perform other tasks, the arc turn cannot stop midway. Therefore, the condition d) is required; the actual moving track of the arc turning deviates from the original path, and the inner cell may collide if there is a robot, and the condition e) is a special treatment for the arc turning in the collision control calculation.
  • the U-turn corresponds to the 4 cells on the original path, with the turning points in the 2nd and 3rd cells. Similar to a right-angle turn, you need to exclude the special turning point at the end of the path.
  • the U-turn can be seen as a combination of two consecutive arc turns, which rotates 90° in the direction of the head of the car that is automatically guided through each steering point.
  • the clock direction of the rotation is the same ( Both clockwise or counterclockwise), the direction of the front of the car is rotated by 180° after passing through the two turning points.
  • the second case is that the clocks rotating at the two turning points are opposite in direction, after two passes.
  • the direction of the front of the steering is the same as before the steering.
  • the U-turn described in the present invention is the first case. Therefore, in judging whether it is a U-turn, in addition to requiring two consecutive turning points, there is also a requirement for the direction of steering. Similar to a right-angled arc turn, there are no other tasks for the four points that the U-turn passes. Similar to a right-angle arc turn, the U-turn trajectory also deviates from the original straight path trajectory. As shown in Figure 4, it is necessary to check whether the two cells outside the two turning points have other automatic guided vehicles or equipment. The above 5 points are the most basic situations to determine whether a U-turn can be considered. In the actual scenario, there may be other restrictions that need to be considered. Only when these constraints are met can the U-turn be safely performed, if not The U-turn can also determine whether the two corners can meet the conditions of the right-angle arc turn and improve the steering efficiency.
  • the robot needs to apply for occupying cells in the background, and each cell can be occupied by only one robot at a time, and the background uses the occupation of the control cells to logically avoid collisions between the robots when moving.
  • the inventor of the present application has found that in the turning logic, if the next point of the turning point is occupied by another robot or an automatic guided vehicle, the verification will determine that it is a failure when the arc is turned, and the automatic guided vehicle will select "straight movement + Turn to”.
  • Robot A first reaches the turning point and then reaches the point after the turning point. At this time, robot B can only apply to the cell where the turning point is located, and cannot apply for the turning point.
  • Robot B will select the line to move + rotate.
  • this phenomenon will cause almost all the robots will not choose the arc turn when turning, but will degenerate into a straight line + turn, and the longer the turning point, the greater the degree of congestion.
  • the step of waiting for the arc turn is added in the control process, that is, when the cell of the point after the automatic guided vehicle applies for the turning point (the next position) fails, the The automatic guided vehicle adds a timer, and the application cell is repeated until the application is successful, that is, the next position becomes available.
  • the arc turning strategy can make the robot turn and use the arc to improve the average traffic rate when the machine in the congested area is not blocked. If there are multiple turning points near the working point where you need to stop performing other tasks, if you don't use this strategy, the steering away will take a long time, which will basically lead to congestion. Using this strategy can significantly reduce the probability of congestion and improve the probability. Productivity.
  • FIG. 7 illustrates an automated guided vehicle 50 in accordance with another aspect of the present invention.
  • the internal components of the automated guided vehicle 50 are shown therein, and components such as the outer casing are omitted for clarity.
  • the automatic guided vehicle 50 includes: a vehicle body 6; a motor (not shown) mounted on the vehicle body; a traveling device 1 coupled to the motor and driven by the motor; and the control device 4 Provided on the vehicle body and configured to perform the control method 100 or 200 as described above.
  • the traveling device 1 may include, for example, a small wheel, a crawler belt, or the like, mounted on the vehicle body 6, and driven by a motor.
  • a speed reducer can be included between the motor and the traveling device, and the driving force is amplified by the speed reducer to reduce the rotational speed.
  • Figure 8 illustrates a cargo handling system 300 in accordance with another aspect of the present invention, comprising: a coordinate unit 301; an automated guided vehicle 302; a control unit 303 that communicates with the automated guided vehicle and controls the The automated guided vehicle moves in the coordinate unit and is configured to perform the control method 100 or 200 as described above.
  • a plurality of automated guided vehicles 302 may be included in the cargo handling system 300, and the control unit 303 performs unified planning of the handling tasks and the transportation paths of the plurality of automated guided vehicles.
  • the automated guided vehicle 302 can also have its own control unit.
  • the invention further relates to a computer readable storage medium comprising computer executable instructions stored thereon, the executable instructions, when executed by a processor, implement the control method 100 or 200 as described above.
  • Figure 9 is a block diagram of a computer program product 500 arranged in accordance with at least some embodiments of the present invention.
  • the signal bearing medium 502 can be implemented as or include a computer readable medium 506, a computer recordable medium 508, a computer communication medium 510, or a combination thereof that stores a configurable processing unit to perform programming of all or some of the previously described processes. Instruction 504.
  • the instructions may include, for example, one or more executable instructions for causing one or more processors to: acquire a next location of the automated guided vehicle; determine if the next location is a turning point; The next position is a non-steering point, and the automatic guided vehicle is controlled to pass straight through the next position; and if the next position is a turning point, the automatic guided vehicle is controlled to perform steering at the next position.
  • the invention proposes an adaptive arc turn decision logic, which dynamically selects which way to move through the turning point according to the real-time state.
  • the arc turn waiting strategy is proposed to improve the probability of using curved turns in the congested area and improve the overall operating efficiency of the system.
  • the existing arc planning is mostly based on the arc or elliptical arc connecting the straight line.
  • the arc and the straight line are connected in the angular velocity, which may cause the control precision to decrease or even lead to slip.
  • the method of greatly reducing the line speed is used to connect, so that the angular velocity jump can be reduced to some extent, but the efficiency is affected and the stability is still insufficient.
  • Figure 10 shows such a scheme.
  • the robot has a line speed of v and an angular velocity of 0 before entering the arc. At the moment of entering the arc, the angular velocity is the linear velocity v/arc radius r.
  • Figure 11 shows the severe speed jumps of the left and right wheels of the robot before and after entering the arc.
  • Figure 12 illustrates a motion control method 600 for a robot in accordance with one embodiment of the present invention. As shown in FIG. 10, the motion control method 600 includes:
  • step S601 the starting point coordinates x_start, y_start and the end point coordinates x_target, y_target are received.
  • the starting point coordinates and the ending point coordinates may be coordinates in a physical coordinate system or coordinates in a logical coordinate system.
  • the physical coordinate system is the actual two-dimensional XY direction distance coordinate system.
  • the logical coordinate system is a coordinate system set according to the actual situation of the business. By way of example and not limitation, the logical coordinate system and the physical coordinate system may differ, for example, in that the logical coordinate system is generally described by an integer, such as (1, 2), (5, 10), and coordinates.
  • the direction of the system does not necessarily coincide with the physical coordinate system, and the distance unit of the logical coordinate system is not necessarily a common physical unit, but is defined by the actual work needs. Therefore, the logical position and the physical position may be completely identical, or there may be a certain conversion relationship between the two.
  • the positional parameters in the logical coordinate system are not limited to integers, and may also have decimals. These are all within the scope of the invention. If the physical coordinate system or logical coordinate system of the site has been established in advance, it can be obtained from the corresponding file or database.
  • the physical coordinate system is taken as an example for explanation below.
  • step S602 a trajectory of the robot from the starting point coordinate to the end point coordinate is planned, wherein the path of the trajectory comprises a straight line segment and an arc segment that are engaged, wherein in the trajectory, the movement mechanism of the robot There is no jump in velocity at the intersection of the straight line segment and the arc segment.
  • the motion mechanism of the robot includes, for example, at least two sets of wheels, one of which is located inside the trajectory with a set of wheels located outside of the trajectory. That is, when viewed along the direction of motion of the robot, at least one set of wheels is on the left side and at least one set of wheels is on the right side. According to step S602, in the planned trajectory, the speed jump of the inner wheel and the outer wheel of the robot at the boundary between the straight line segment and the arc segment does not occur.
  • the meaning of "the absence of a jump in velocity” means that there is no significant change in the linear velocity and/or angular velocity of the robot motion mechanism before and after entering the arc segment from the straight line segment, for example, the velocity V1 before entering the arc.
  • the velocity V2 after entering the arc the rate of change with respect to V1 does not exceed 20%, or does not exceed 10%, or does not exceed 5%, the speed can be considered to have not changed significantly.
  • the "trajectory" of the robot includes at least the speed planning of the robot in addition to the path curve of the robot. And preferably, including the displacement curves of the speed, angular velocity, X direction and Y direction of the robot.
  • step S603 the robot is controlled to move according to the planned trajectory.
  • Figure 13 illustrates the principles and effects of the motion control method 600 of the present invention.
  • the motion is planned such that there is no velocity jump at the intersection of the straight line segment and the arc segment of the path curve, which is advantageous for reducing control deviation and reducing impact.
  • the trajectory obtained by the motion control method shown in Fig. 11 shows a significant jump in the speed of the two-wheeled robot when entering the arc and leaving the arc. This is considered to be unfavorable and will affect control deviations and produce shocks.
  • a method of planning a trajectory of the robot from the starting point coordinates to the end point coordinates in accordance with a preferred embodiment of the present invention is described below.
  • the motion control method 600 also includes receiving a line speed V, which is the speed at which the robot uniform velocity reaches the end point coordinates from the starting point coordinates.
  • the step S602 of the planning track includes:
  • step S6021 a plurality of feature time points are calculated.
  • the plurality of feature time points are located on a time period from the coordinates of the start point to the coordinates of the end point, including both ends.
  • step S6022 the acceleration and angular acceleration of the robot are calculated according to the plurality of feature time points.
  • step S6023 the trajectory is calculated based on the acceleration and angular acceleration.
  • the plurality of feature time points in step S6021 includes 16 feature time points T0-T15, which are respectively calculated as follows (in units of ts):
  • T1 AccMax/Jerk/ts+T0;
  • T2 vMax/AccMax/ts+T0;
  • T3 T2+T1-T0;
  • T4 T3+floor((x_target-0.8305)/vMax/ts+0.5);
  • T5 omgAccMax/omgJerk/ts+T4;
  • T6 omgMax/omgAccMax/ts+T4;
  • T7 T6+T5-AT0;
  • T8 targetOmg/omgMax/ts+T4;
  • T9 T8+T5-T4;
  • T10 T8+T6-T4;
  • T11 T8+T7-T4;
  • T12 T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
  • T13 T4+T1-T0;
  • T14 T4+T2-T0;
  • T15 T4+T3-T0;
  • the maximum velocity of the trajectory vMax linear velocity V
  • AccMax is the maximum acceleration value of the trajectory
  • Jerk is the maximum jerk value of the trajectory
  • omgMax is the maximum angular velocity of the arc
  • omgAccMax is the maximum angular acceleration of the arc
  • the maximum angular acceleration of the omgJerk is The angular jerk
  • targetOmg is the arc radians
  • floor is the rounding function, for example rounding down.
  • the trajectory maximum acceleration value AccMax vMax*5
  • the trajectory maximum jerk value Jerk AccMax/ts/10
  • the arc maximum angular velocity omgMax 50/180*pi
  • the arc maximum angular acceleration omgAccMax omgMax*2
  • arc maximum angular jerk omgJerk omgAccMax/ts/20
  • targetOmg 0.5*pi is a 90 degree arc.
  • AccMax, Jerk, omgMax, omgAccMax, omgJerk can be constant, or can not limit its fixed value, as a module input as needed.
  • the step of calculating the acceleration and the angular acceleration of the robot includes: calculating the current time acceleration acc n according to the current t time and the previous time acc n-1 , according to the current t time and the previous time angleacc n -1 Iteratively calculates the angular acceleration angleacc n at the current time.
  • the specific calculation method is as follows:
  • the motion mechanism of the robot includes at least two sets of wheels, one set of wheels being located inside the track, with a set of wheels being located outside of the track. That is, when viewed along the direction of motion of the robot, at least one set of wheels is on the left side and at least one set of wheels is on the right side.
  • Figure 14 is the acceleration of the left and right wheels or the left and right motors calculated according to the above formula.
  • the step of calculating the trajectory comprises: calculating the trajectory according to the acceleration and the angular acceleration by using the following formula:
  • theta n is the angle value, that is, the orientation angle of the AGV at a certain moment.
  • the state of the Agv at a certain time includes, for example, the position X, Y and the orientation angle theta.
  • the planned trajectory is the relationship between X, Y, and theta n over time.
  • Figures 15a-15b show the trajectories calculated according to the above formula.
  • 15a shows the coordinate trajectories of the X coordinate and the Y direction
  • FIG. 15b shows the displacement of the X direction with time and the displacement of the Y direction with time.
  • the speed curves of the left and right wheels of the robot can be obtained, as shown in Fig. 16. As can be seen from the figure, the speed of the left and right wheels does not change when entering the arc.
  • the third order is calculated, that is, the highest calculated to the maximum jerk value and the maximum angular jerk value.
  • higher order that is, maximum plus acceleration value and maximum angular angular velocity value can be calculated.
  • the invention also relates to a motion control device for a robot, comprising:
  • a unit that receives the starting point coordinates x_start, y_start, and the end point coordinates x_target, y_target;
  • a unit that controls the movement of the robot in accordance with the planned trajectory A unit that controls the movement of the robot in accordance with the planned trajectory.
  • FIG. 18 illustrates an automated warehousing system 700 in accordance with one embodiment of the present invention.
  • the automated warehousing system 700 includes one or more automated guided vehicles 701 and a control unit 702 that communicates with the automated guided vehicle 701 and is configured to perform the motion control method 600 as described above.
  • the control unit 702 and the automatic guided vehicle can communicate by means of wireless, for example, through 2G, GPRS, EDGE, 3G, 4G, 5G, WIFI, Bluetooth, ZIGBEE and the like.
  • Figure 19 shows a block diagram of a computer program product 800 in accordance with the present invention.
  • the signal bearing medium 802 can be implemented as or include a computer readable medium 806, a computer recordable medium 808, a computer communication medium 810, or a combination thereof that stores a configurable processing unit to perform programming of all or some of the previously described processes. Instruction 804.
  • the instructions may include, for example, one or more executable instructions for causing one or more processors to perform processing of receiving start point coordinates x_start, y_start and end point coordinates x_target, y_target; planning the robot from the start point coordinates to a trajectory of the end point coordinates, wherein the path of the trajectory comprises a straight line segment and an arc segment in which the movement mechanism of the robot does not have a speed jump at the boundary between the straight line segment and the arc segment And controlling the robot to move in accordance with the planned trajectory.
  • Embodiments of the present invention provide a method for planning a type of arc trajectory.
  • the trajectory does not jump continuously in time, and the motion control has high stability and high precision.
  • the linear velocity of the robot's centroid is fixed, and the angular velocity trajectory curve is S-shaped and smooth with time.
  • the speed trajectory curve of the robot driving wheel is S-shaped and smooth.
  • the arc trajectory can achieve a 90 degree smooth turn and a 180 degree U-turn in the grid coordinate system.
  • the differential AGV can be smoothly transitioned with the left and right wheel speeds. From the start time to the end time, the discrete interval does not have a wide range of transitions.
  • the motion control method 600 of the second aspect of the present invention can be applied to the automatic guided vehicle control methods 100 and 200 of the first aspect of the present invention.
  • the next position is a turning point
  • the automatic guided vehicle is controlled to perform steering at the next position.
  • the starting point and the ending point of the turn can be input, and the trajectory planning of the turning is performed by the motion control method 600, and the trajectory of the automatic guiding vehicle from the starting point coordinate to the end point coordinate is planned, wherein the path of the trajectory includes a straight line connecting A segment and an arc segment, wherein in the trajectory, the motion mechanism of the robot does not have a speed jump at the intersection of the straight line segment and the arc segment.
  • step S207 and/or S205 the trajectory planning of the turn is performed by the motion control method 600, and the trajectory of the automatic guided vehicle from the starting point coordinate to the end point coordinate is planned, wherein the trajectory The path includes a straight line segment and an arc segment that are engaged, wherein in the trajectory, the motion mechanism of the robot does not have a speed jump at the intersection of the straight line segment and the arc segment.
  • the starting point of the turn can be a cell (1, 1) (or corresponding physical coordinates), and the end of the turn can be a cell (2, 2) (or corresponding Physical coordinates).
  • the starting point of the turn can be a cell (1, 1) or (1, 2) (or their corresponding physical coordinates)
  • the focus of the turn can be a cell (2) , 2) or (2, 1) (or their corresponding physical coordinates).
  • the motion control method of the present invention can be used for motion control of an automated guided vehicle AGV in an automated storage system.
  • the motion control method of the present invention may also be adapted to control other types of robots, all of which are within the scope of the present invention.
  • designing circuits and/or writing code for the software and/or firmware will be within the skill of the field technicians. For example, if the user determines that speed and accuracy are important, the user can select the primary hardware and/or firmware media; if flexibility is important, the user can select the primary software implementation; or, alternatively, the user can Select a combination of hardware, software, and/or firmware.
  • signal bearing media include, but are not limited to, the following: recordable media such as floppy disks, hard drives, compact discs (CDs), digital video discs (DVDs), digital tapes, computer memories, etc.; and transport-type media such as digital and / or analog communication media (eg, fiber optic cable, waveguide, wired communication link, wireless communication link, etc.).

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)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明公开了一种自动引导车的控制方法,包括:获取所述自动引导车的下一位置;确定所述下一位置是否为转向点;如果所述下一位置为非转向点,控制所述自动引导车直线通过所述下一位置;和如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向。本发明提出了一种自适应的弧线转弯决策逻辑,根据实时状态动态选择使用何种方式移动经过转向点。另外还提出了弧线转弯等待策略,提高拥堵区域使用弧线转弯的概率,提高系统整体运行效率。

Description

自动引导车的控制方法、自动引导车及货物搬运系统 技术领域
本发明涉及智能仓储领域,尤其涉及一种自动引导车的控制方法、自动引导车以及一种货物搬运系统。
背景技术
随着我国电商行业的高速发展,物流的各个环节也出现了多样化的需求,由分拣机器人组成的包裹分拣系统应运而生,该系统在保证包裹分拣高效的同时,还具有即时响应和分布式的灵活性。在当前的物流仓储领域,已经越来越多的使用了自动引导车(AGV)来代替或者补充人工劳动。自动引导车能够自动接收物品搬运任务,在程序控制下,到达第一位置,取得物品,然后行走到第二位置,将物品卸下,继续去执行其他的任务。
现有的大部分包裹分拣系统会把场地划分成矩形单元格并建立直角坐标系,机器人收到移动到指定点的任务后会先计算出移动的路径,然后沿该路径执行多个移动指令经过单元格,最后停在终点所在单元格。
现有自动运输单元运动控制大多只包含直线移动和原地旋转两种动作,在经过转弯点时会先减速停下,然后原地旋转改变方向,最后沿新的方向加速移动。这种方式过弯的耗时较长,如果机器人移动路径存在多个转弯点,机器人的平均移动速度就会大大降低,此外,一台机器人的减速会导致后续机器人都减速,降低系统整体效率。
另外,现有的二维码导航移动机器人,在场地中建立以单元格组成的网格坐标系。机器人一般沿网格进行X或Y向的直线移动,当规划的路线需要转弯时,机器人需要先减速至静止,再进行原地旋转,最后重新加速驶离转弯点。这样移动的效率比较低,一台机器人减速,可能会产生联锁效应,引发其他机器人同时减速,因此多台机器人协作时可能堵塞路径。
现有的弧线规划大都是基于圆弧或椭圆弧衔接直线的方式进行,然而圆弧和直线衔接在角速度上存在跳变,容易造成控制精度的降低甚至不稳定导致打滑。通常会采用大幅度降低线速度的方法衔接,这样可以一定程度上降低角速度跳变,但是影响效率,稳定性依然不足。图10示出了这样一个方案。其中机器人在进入弧线的前一刻,线速度为v,角速度为0。进入弧线的时刻,角速度为线速度v/圆弧半径r。也就是机器人开始圆弧轨迹运动的话,角速度从0跃变为v/r,对应于驱动轮的速度也会有一个跳变,此时容易造成控制不稳定,控制偏差过大。图11示出了在进入圆弧前后,机器人的左轮和右轮发生的严重速度跳变。有些公司提出了弧线转弯的方法,该方法基于圆弧或椭圆弧衔接直线的方式进行,衔接时在角速度上存在跳变,容易造成控制精度的降低甚至不稳定导致打滑。
背景技术部分的内容仅仅是发明人所知晓的技术,并不当然代表本领域的现有技术。
发明内容
有鉴于此,本发明提出一种自动引导车的控制方法,包括:获取所述自动引导车的当前位置和下一位置;确定所述下一位置是否为转向点;如果所述下一位置为非转 向点,控制所述自动引导车直线通过所述下一位置;和如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向。
根据本发明的一个方面,所述控制自动引导车在下一位置进行转向的步骤包括:判断所述下一位置是否满足U型转向条件,如果满足,则控制所述自动引导车以U型弧线转弯通过所述下一位置;否则,判断所述下一位置是否满足弧线转弯条件,如果满足,则控制所述自动引导车以直角弧线转弯方式通过所述下一位置;如果所述下一位置不满足所述弧线转弯条件,则控制所述自动引导车以直角转弯的方式通过所述下一位置。
根据本发明的一个方面,所述的控制方法还包括:获取所述下一位置的再下一个位置,并判断所述再下一个位置是否可用,当所述再下一个位置不可用时,等待直到所述再下一个位置变为可用。
根据本发明的一个方面,所述的控制方法还包括:如果所述下一位置为转向点,获取所述下一位置的再下一个位置,并判断所述再下一个位置是否可用,当所述再下一个位置不可用时,等待直到所述再下一个位置变为可用时,控制所述自动引导车以U型弧线或直角弧线方式通过所述下一位置。
根据本发明的一个方面,所述控制自动引导车在下一位置进行转向的步骤包括:
接收起点坐标x_start、y_start和终点坐标x_target、y_target;
规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和
控制所述机器人按照所述规划的轨迹运动。
根据本发明的一个方面,还包括接收线速度V,其中所述规划轨迹的步骤包括:
计算多个特征时间点;
根据所述多个特征时间点计算所述机器人的加速度和角加速度;和
根据所述加速度、角加速度计算所述轨迹。
根据本发明的一个方面,所述多个特征时间点包括16个特征时间点T0-T15,
T0=1;
T1=AccMax/Jerk/ts+T0;
T2=vMax/AccMax/ts+T0;
T3=T2+T1-T0;
T4=T3+floor((x_target-0.8305)/vMax/ts+0.5);
T5=omgAccMax/omgJerk/ts+T4;
T6=omgMax/omgAccMax/ts+T4;
T7=T6+T5-AT0;
T8=targetOmg/omgMax/ts+T4;
T9=T8+T5-T4;
T10=T8+T6-T4;
T11=T8+T7-T4;
T12=T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
T13=T4+T1-T0;
T14=T4+T2-T0;
T15=T4+T3-T0;
其中ts为采样周期,轨迹最大速度vMax=线速度V,AccMax为轨迹最大加速度值,Jerk为轨迹最大加加速度值,omgMax为弧形最大角速,omgAccMax为弧形最大角加速度,omgJerk为弧形最大角加加速度,targetOmg为弧线弧度。
根据本发明的一个方面,轨迹最大加速度值AccMax=vMax*5,轨迹最大加加速度值Jerk=AccMax/ts/10;弧形最大角速度omgMax=50/180*pi;弧形最大角加速度omgAccMax=omgMax*2;弧形最大角加加速度omgJerk=omgAccMax/ts/20;targetOmg=0.5*pi为90度弧线。
根据本发明的一个方面,所述计算机器人的加速度和角加速度的步骤包括:根据当前t时刻及上一时刻acc n-1迭代计算当前时刻加速度acc n,根据当前t时刻及上一时刻angleacc n-1迭代计算当前时刻角加速度angleacc n
Figure PCTCN2019087343-appb-000001
根据本发明的一个方面,所述计算轨迹的步骤包括:根据加速度及角加速度,利用以下公式计算得到轨迹:
Figure PCTCN2019087343-appb-000002
本发明还提供一种用于自动引导车,包括:车体;电机,安装在所述车体上;行进装置,与所述电机耦合并被所述电机驱动;控制装置,设置在所述车体上,并配置成执行如上所述的控制方法。
本发明还提供一种货物搬运系统,包括:坐标单元;自动引导车;控制单元,所述控制单元与所述自动引导车通讯,并控制所述自动引导车在所述坐标单元中运动,并配置成执行如上所述的控制方法。
本发明还提供一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如上所述的控制方法。
本发明提出了一种自适应的弧线转弯决策逻辑,根据实时状态动态选择使用何种方式移动经过转向点。另外还提出了弧线转弯等待策略,提高拥堵区域使用弧线转弯的概率,提高系统整体运行效率。本发明提供了多种对转弯点附近机器人移动的优化方案及其控制逻辑,降低机器人转弯耗时,提升系统整体效率。
本发明还提出一种机器人的运动控制方法,包括:接收起点坐标x_start、y_start和终点坐标x_target、y_target;规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和控制所述机器人按照所述轨迹的轨迹运动。
根据本发明的一个方面,所述的运动控制方法还包括接收线速度V,其中所述规划轨迹的步骤包括:计算多个特征时间点;根据所述多个特征时间点计算所述机器人的加速度和角加速度;和根据所述加速度、角加速度计算所述轨迹。
根据本发明的一个方面,所述多个特征时间点包括16个特征时间点T0-T15,其中:
T0=1;
T1=AccMax/Jerk/ts+T0;
T2=vMax/AccMax/ts+T0;
T3=T2+T1-T0;
T4=T3+floor((x_target-0.8305)/vMax/ts+0.5);
T5=omgAccMax/omgJerk/ts+T4;
T6=omgMax/omgAccMax/ts+T4;
T7=T6+T5-AT0;
T8=targetOmg/omgMax/ts+T4;
T9=T8+T5-T4;
T10=T8+T6-T4;
T11=T8+T7-T4;
T12=T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
T13=T4+T1-T0;
T14=T4+T2-T0;
T15=T4+T3-T0;
其中ts为采样周期,轨迹最大速度vMax=线速度V,AccMax为轨迹最大加速度值,Jerk为轨迹最大加加速度值,omgMax为弧形最大角速,omgAccMax为弧形最大角加速度,omgJerk为弧形最大角加加速度,targetOmg为弧线弧度。
根据本发明的一个方面,轨迹最大加速度值AccMax=vMax*5,轨迹最大加加速度值Jerk=AccMax/ts/10;弧形最大角速度omgMax=50/180*pi;弧形最大角加速度omgAccMax=omgMax*2;弧形最大角加加速度omgJerk=omgAccMax/ts/20;targetOmg=0.5*pi为90度弧线。
根据本发明的一个方面,所述计算机器人的加速度和角加速度的步骤包括:根据当前t时刻及上一时刻acc n-1迭代计算当前时刻加速度acc n,根据当前t时刻及上一时刻angleacc n-1迭代计算当前时刻角加速度angleacc n,具体如下:
Figure PCTCN2019087343-appb-000003
根据本发明的一个方面,所述计算轨迹的步骤包括:根据加速度及角加速度,利用以下公式计算得到轨迹:
Figure PCTCN2019087343-appb-000004
根据本发明的一个方面,所述机器人的运动机构包括至少两组车轮,其中一组车轮位于所述轨迹的内侧,其中一组车轮位于所述轨迹的外侧。
本发明还涉及一种用于机器人的运动控制设备,包括:接收起点坐标x_start、y_start和终点坐标x_target、y_target的单元;规划所述机器人从所述起点坐标到所述终点坐标的轨迹的单元,其中所述轨迹的路径包括衔接的直线段和弧线段,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和控制所述机器人按照所述规划轨迹运动的单元。
本发明还涉及一种用于自动仓储系统,包括:自动引导车;和控制单元,与所述自动引导车通讯,并配置成执行如上所述的运动控制方法。
本发明还涉及一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如上所述的控制方法。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了自动引导车直线移动的情形;
图2示出了自动引导车直线移动转向的情形
图3示出了自动引导车直角弧线转向的情形;
图4示出了自动引导车U型弧线转向的情形;
图5示出了根据本发明一个实施例的一种自动引导车的控制方法;
图6示出了根据本发明一个优选实施例的自动引导车的控制方法;
图7示出了根据本发明另一个方面的自动引导车;
图8示出了根据本发明另一个方面的一种货物搬运系统;
图9示出了根据本发明的至少一些实施例布置的计算机程序产品;
图10示出了现有的弧线规划方案;
图11示出了在进入圆弧前后,机器人的左轮和右轮的速度跳变的情况;
图12示出了根据本发明一个实施例的机器人的运动控制方法;
图13示出了本发明的运动控制方法的原理和效果;
图14示出了根据图12的运动控制方法获得的机器人的左右轮或左右电机的加速度;
图15a-15b示出了根据本发明优选实施例计算出的机器人的轨迹;
图16示出了根据图15a-15b获得的机器人左右轮的速度曲线;
图17示出了180度弧线转弯的情况;
图18示出了根据本发明一个实施例的一种自动仓储系统;和
图19示出了根据本发明的至少一些实施例布置的计算机程序产品。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
在本发明的描述中,需要理解的是,术语"中心"、"纵向"、"横向"、"长度"、"宽度"、"厚度"、"上"、"下"、"前"、"后"、"左"、"右"、"坚直"、"水平"、"顶"、"底"、"内"、"外"、"顺时针"、"逆时针"等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语"第一"、"第二"仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有"第一"、"第二"的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,"多个"的含义是两个或两个以上,除非另有明确具体的限定。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语"安装"、"相连"、"连接"应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接:可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征之"上"或之"下"可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征"之上"、"上方"和"上面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征"之下"、"下方"和"下面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。
下文的公开提供了许多不同的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明的一个方面提供一种弧线移动方案及包含该弧线移动的运动控制逻辑,提高自动运输单元整体运行效率。
现有的大部分智能仓库或者包裹分拣机器人系统中,整个场地会被建模划分为单元格的形式。各个单元格大小相等,可以为正方形,也可以是长方形的。在场地中建立以单元格为单位的网格坐标系。单元格的中心可设置一个二维码,以供在其上行走的机器人或者自动引导车来进行定位。通常从任一个单元格出发,只能到达其直接相邻的前后左右四个单元格,而不能直接到达对角线上的四个单元格。从图1中可以看到类似的单元格划分的场地的示意图。
分拣机器人或者自动引导车在单元格上行进时,其运动方式通常有以下四种:直线移动,直线移动转向,直角弧线转向,U型弧线转向。分别大致说明如下。
图1示出了自动引导车直线移动的情况。如图1所示,在单元格坐标系中,自动引导车处于单元格(1,1)中,其要到达单元格(1,3),就将以直线移动的方式经过单元格(1,2)。其中的黑点示意性示出了单元格的中心。
图2示出了自动引导车直线移动转向(直角转弯)的情况。如图2所示,自动引导车目前处于单元格(1,1)中,其要到达单元格(2,2)。为此,自动引导车需要直线移动到单元格(1,2)的中心点并减速停下,在原地旋转改变90度方向,最后沿新的方向加速移动并到达单元格(2,2)。
图3示出了自动引导车直角弧线转向的情形。其中,自动引导车需要从(1,1)点经 过(1,2)点到达(2,2)点。自动引导车需要先向上行驶半个单元格的距离,然后以单元格边长的一半作为半径沿顺时针方向弧线旋转90°,最后再向右移动半个单元格到达目标点。
图4示出了自动引导车U型弧线转向的情形。其中,自动引导车连续经过两个转弯点时的运动示意图,机器人需要从(1,1)点经过(1,2)和(2,2)点到达(2,1)点。机器人需要先向上行驶一个单元格的距离到达(1,2)的中心,然后以单元格边长的一半作为半径沿顺时针方向弧线旋转180°到达单元格(2,2)的中心,最后向下行驶一个单元格到达目标点(2,1)。
图5示出了根据本发明一个实施例的一种自动引导车的控制方法100。如图5所示,控制方法100包括:
在步骤S101,获取所述自动引导车的下一位置。例如当前自动引导车所处的单元格为(1,1),根据当前的行进方向,或者根据控制系统预先规划的路径,获取自动引导车下一个位置将为单元格(1,2)。
在步骤S102,确定所述下一位置是否为转向点。例如在自动引导车的路径规划过程中,路径规划找到的移动路线中,前进方向发生改变的单元格即为转向点。路径规划例如是对于给定的起点和终点,从起点所在单元格开始,沿上、下、左、右四个方向其中一个方向的单元格前进,递归查找出一条可以到达终点所在单元格的移动路线。
在步骤S103,如果所述下一位置为非转向点,控制所述自动引导车直线通过所述下一位置。
在步骤S104,如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向,例如直线移动转向、直角弧线转向或者U型弧线转向,根据转向的具体要求而定。
下面参考图6描述根据本发明一个优选实施例的自动引导车的控制方法200。
图6中的步骤S201、S202和S203与图5中的步骤S101、S102、S103类似,此处不再赘述。
在步骤S202,如果判断下一位置(下一单元格)为转向点,则根据下一位置的特征来判断是否能够进行各种类型的转弯操作。
在步骤S204,确定下一位置是否满足U型转向条件。如果满足U型转向条件,则进行到步骤S205,控制自动引导车,以U型转弯的方式通过所述下一位置。U型转弯的方式如图4所示,此处不再赘述。如果不满足U型转弯条件,则进行到步骤S206,确定下一位置是否满足弧线转弯条件。如果满足弧线转弯条件,则进行到步骤S207,控制自动引导车AGV以直角弧线的方式通过所述的下一位置或单元格。
如果下一位置既不满足U型转向条件也不满足弧线转弯条件,则进行到步骤S208,控制自动引导车以直角转弯的方式通过下一位置。
在步骤S209,判断下一位置是否是搬运任务的终点。如果是终点则进行到步骤S211,整个过程结束。否则,进行到步骤S210,将下一位置迭代成为当前位置,继续整个过程200。
根据本发明的一个实施例,以图3为例,直角弧线转向的条件例如包括:
a)转向点(1,2)不是路径终点;
b)转向点(1,2)及转向点前一个点(1,1)、转向点后一个点(2,2)都没有特殊任务;
c)以上3个点的单元格及弧线内侧单元格(即图3中的4个单元格)都没被其他机器人占用。
由于直角弧线转弯的终点是第3个点(2,2),与路径终点应在(2,2)及其后面的点才适用弧线转弯,故需要条件a);如果机器人需要在转向点及其前后的点停下执行其他任务,而弧线转弯不能在中途停下,故需要条件b);弧线转弯实际移动轨迹偏离了原始的路径,内侧单元格如果有机器人就有可能碰撞,条件c)是碰撞控制计算时对弧线转弯的特殊处理。具体解释如下。
直角弧线转弯的轨迹对应的是原始路径的3个单元格,其中第2个单元格是转向点,由于在路径规划时会把路径的终点定义为转向点(方便把路径拆分成多条直线段来分段计算),在判断是否需要弧线转弯时如果遇到终点自然不能弧线转弯。由于直角弧线转弯是一个不可拆分的动作,即不会在转向点上停下,且在弧线轨迹的3个单元格上不是直线移动,故如果需要执行其他任务,那么就不能执行弧线转弯。此外弧线转弯实际移动轨迹偏离了路径规划的原始路径的轨迹,自动引导车在实际移动时车体会部分进入弧线内侧的单元格,如果弧线内侧单元格有其他自动引导车或设备,就有可能产生碰撞,故在该转向点不能弧线转弯。以上3点就是判断是否可以弧线转弯需要考虑的几种最基本的情况,而在实际场景中可能还会有其他限制条件需要考虑,只有满足这些限制条件才能安全地进行弧线转弯,否则只能使用直线移动转向的方式经过转向点。
根据本发明的一个实施例,以图4为例,U型弧线转弯的基本条件例如包括:
a)有连续的两个转向点(1,2)和(2,2),这两个转向点是相邻的;
b)第二个转向点(2,2)不是终点;
c)在两个转向点都是顺时针或逆时针旋转;
d)两个转向点(1,2)和(2,2)及其前一个点(1,1)和后一个点(2,1)都没有特殊任务;
e)以上4个点的单元格以及转向点外侧的两个单元格(即图2中的6个单元格)都没有被其他机器人占用。
如果只有一个转向点,那么应该执行直角弧线转弯,而U型转弯是对连续两个转弯的移动路径的优化;由于直角弧线转弯的终点是第4个点(2,1),路径终点应在(2,1)及其后面的点才适用弧线转弯,故需要条件b);如果机器人需要在转向点及其前后的点停下执行其他任务,而弧线转弯不能在中途停下,故需要条件d);弧线转弯实际移动轨迹偏离了原始的路径,内侧单元格如果有机器人就有可能碰撞,条件e)是碰撞控制计算时对弧线转弯的特殊处理。
U型转弯对应的是原始路径上的4个单元格,其中在第2个和第3个单元格里是转向点。与直角转弯类似,需要排除路径终点这个特殊的转向点。U型转弯可以看作是两个连续的弧线转弯的组合,在每经过一个转向点自动引导车的车头方向会旋转90°,而这里有两种情况,一种是旋转的时钟方向相同(都是顺时针或都是逆时针方向),在 经过两个转向点后车头方向与转向前相比旋转了180°,第二种情况是在两个转向点旋转的时钟方向相反,经过两次转向后车头方向与转向前相同。本发明中所述的U型转弯是第一种情况,故在判断是否是U型转弯时除了要求有连续的两个转向点外,对转向的方向也有要求。与直角弧线转弯类似,U型转弯经过的4个点都不能有其他任务。与直角弧线转弯类似,U型转弯的轨迹也偏离了原始的直线路径的轨迹,如图4所示,需要检查两个转向点外侧的两个单元格是否有其他自动引导车或设备。以上5点就是判断是否可以U型转弯需要考虑的几种最基本的情况,而在实际场景中可能还会有其他限制条件需要考虑,只有满足这些限制条件才能安全地进行U型转弯,如果不能U型转弯,对两个转向点还可以分别判断是否满足直角弧线转弯的条件,也能提高转向效率。
本发明中,机器人需要向后台申请占用单元格,每个单元格同一时刻只能一个机器人占用,后台通过控制单元格的占用从逻辑上避免机器人之间在移动时产生的碰撞。本申请的发明人发现,在转弯逻辑中,如果转向点下一个点被其他机器人或自动引导车占用,那么校验是否能弧线转弯时会判定为失败,自动引导车会选择“直线移动+转向”。假设有两个机器人A和B都需要经过相同的转向点,机器人A先到达转向点,然后到达转向点后一个点,此时机器人B只能申请到转向点所在单元格,不能申请到转向点后一个点的单元格,故机器人B会选择直线移动+旋转。在局部区域内比较拥堵的情况下,该现象会导致几乎所有机器人转弯时都不会选择弧线转弯,而是退化成直线+转向,通过转向点的时间更长,加重拥堵现象的程度。
因此根据本发明的一个优选实施例,在控制过程中加入了弧线转弯等待的步骤,即当自动引导车申请转向点之后的一个点的单元格(再下一个位置)失败时,会给该自动引导车添加一个计时器,在计时结束前会一直重复申请单元格直到申请成功,即所述再下一个位置变为可用为止。
弧线转弯策略可以使拥堵区域机器未堵死的情况下,机器人转向时使用弧线转弯,提高平均通行速率。在需要停下执行其他任务的工作点附近如果有多个转向点,不使用该策略时,转向离开耗时特别长,基本必定会导致拥堵,而使用该策略能明显降低出现拥堵的概率,提高生产效率。
图7示出了根据本发明另一个方面的自动引导车50。其中示出了自动引导车50的内部部件,而为了清晰起见省略了其外壳等部件。如图7所示,自动引导车50包括:车体6;电机(未示出),安装在所述车体上;行进装置1,与所述电机耦合并被所述电机驱动;控制装置4,设置在所述车体上,并配置成执行如上所述的控制方法100或200。
行进装置1例如可以包括小轮、履带等,安装在车体6上,由电机驱动。在电机和行进装置之间例如可以包括减速器,由减速器来放大驱动力,降低转速。
图8示出了根据本发明另一个方面的一种货物搬运系统300,包括:坐标单元301;自动引导车302;控制单元303,所述控制单元与所述自动引导车通讯,并控制所述自动引导车在所述坐标单元中运动,并配置成执行如上所述的控制方法100或200。
根据本发明的一个实施例,货物搬运系统300中可包括多个自动引导车302,由控 制单元303来对多个自动引导车的搬运任务和搬运路径进行统一规划。当然,自动引导车302上也可以具有自己的控制单元。
本发明还涉及一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如上所述的控制方法100或200。
图9依照本发明的至少一些实施例布置的计算机程序产品500的框图。信号承载介质502可以被实现为或者包括计算机可读介质506、计算机可记录介质508、计算机通信介质510或者它们的组合,其存储可配置处理单元以执行先前描述的过程中的全部或一些的编程指令504。这些指令可以包括例如用于使一个或多个处理器执行如下处理的一个或多个可执行指令:获取所述自动引导车的下一位置;确定所述下一位置是否为转向点;如果所述下一位置为非转向点,控制所述自动引导车直线通过所述下一位置;和如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向。
本发明提出了一种自适应的弧线转弯决策逻辑,根据实时状态动态选择使用何种方式移动经过转向点。另外还提出了弧线转弯等待策略,提高拥堵区域使用弧线转弯的概率,提高系统整体运行效率。
以下结合附图10-19描述根据本发明第二方面的运动控制方法。
现有的弧线规划大都是基于圆弧或椭圆弧衔接直线的方式进行,然而圆弧和直线衔接在角速度上存在跳变,容易造成控制精度的降低甚至不稳定导致打滑。通常会采用大幅度降低线速度的方法衔接,这样可以一定程度上降低角速度跳变,但是影响效率,稳定性依然不足。图10示出了这样一个方案。其中机器人在进入弧线的前一刻,线速度为v,角速度为0。进入弧线的时刻,角速度为线速度v/圆弧半径r。也就是机器人开始圆弧轨迹运动的话,角速度从0跃变为v/r,对应于驱动轮的速度也会有一个跳变,此时容易造成控制不稳定,控制偏差过大。图11示出了在进入圆弧前后,机器人的左轮和右轮发生的严重速度跳变。有些公司提出了弧线转弯的方法,该方法基于圆弧或椭圆弧衔接直线的方式进行,衔接时在角速度上存在跳变,容易造成控制精度的降低甚至不稳定导致打滑。
图12示出了根据本发明一个实施例的机器人的运动控制方法600。如图10所示,运动控制方法600包括:
在步骤S601,接收起点坐标x_start、y_start和终点坐标x_target、y_target。起点坐标和终点坐标可以是物理坐标系下的坐标,也可以是逻辑坐标系下的坐标。物理坐标系即实际的二维XY方向的距离坐标系。逻辑坐标系是按照业务实际情况设定的坐标系。示例性的而非限制性的,逻辑坐标系和物理坐标系的不同之处例如可以在于,逻辑坐标系一般是以整数作为描述的,比如(1,2)、(5,10),并且坐标系方向不一定与物理坐标系重合,而且逻辑坐标系的距离单位并不一定是常见物理单位,而是以实际作业需要进行定义。因此逻辑位置和物理位置可以完全一致,也可以两者存在一定的换算关系。在本发明的概念下,逻辑坐标系下的位置参数不限于整数,也可以带有小数。这些都在本发明的保护范围内。如果事先已经建立好了场地的物理坐标系或者逻辑坐标系,可以从相应的文件或者数据库中获取即可。下文以物理坐标系为例进行说明。
在步骤S602,规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,其中在所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变。
机器人的运动机构例如包括至少两组车轮,其中一组车轮位于所述轨迹的内侧,其中一组车轮位于所述轨迹的外侧。也就是说,当沿着机器人的运动方向观察时,至少一组车轮位于左侧,至少一组车轮位于右侧。根据步骤S602,使得在规划的轨迹中,机器人的内侧车轮与外侧车轮在所述直线段和弧线段的交界处的前后不发生速度的跃变。
本发明中,“不存在速度的跃变”的含义是在从直线段进入弧线段前后的机器人运动机构的线速度和/或角速度没有发生明显的变化,例如以进入弧线前的速度V1为参考,进入弧线后的速度V2,相对于V1的变化率不超过20%,或者不超过10%,或者不超过5%,均可认为速度没有发生明显的变化。
本发明中,机器人的“轨迹”除了包括机器人的路径曲线以外,还至少包括机器人的速度规划。并且优选的,包括机器人的速度、角速度、X方向和Y方向的位移曲线。
在步骤S603,控制所述机器人按照所述规划的轨迹运动。
图13示出了本发明的运动控制方法600的原理和效果。在方法600的步骤S602中,运动的规划使得在路径曲线的直线段和弧线段的交界处不存在速度的跃变,有利于减小控制偏差,降低冲击。与之相对照的,图11中所示的运动控制方法获得的轨迹,两轮机器人在进入圆弧时和离开圆弧时,速度发生了明显的跃变。这被认为是不利的,会影响控制偏差,产生冲击。
下面描述根据本发明一个优选实施例的规划所述机器人从所述起点坐标到所述终点坐标的轨迹的方法。
运动控制方法600还包括接收线速度V,V是机器人匀速从所述起点坐标到达所述终点坐标的速度。其中所述规划轨迹的步骤S602包括:
在步骤S6021,计算多个特征时间点。这多个特征时间点位于从起点坐标到达终点坐标的时间段上,包括两端。
在步骤S6022,根据所述多个特征时间点计算所述机器人的加速度和角加速度。
在步骤S6023,根据所述加速度、角加速度计算所述轨迹。
根据本发明一个优选的实施例,步骤S6021中的多个特征时间点包括16个特征时间点T0-T15,分别计算如下(单位为ts):
T0=1;
T1=AccMax/Jerk/ts+T0;
T2=vMax/AccMax/ts+T0;
T3=T2+T1-T0;
T4=T3+floor((x_target-0.8305)/vMax/ts+0.5);
T5=omgAccMax/omgJerk/ts+T4;
T6=omgMax/omgAccMax/ts+T4;
T7=T6+T5-AT0;
T8=targetOmg/omgMax/ts+T4;
T9=T8+T5-T4;
T10=T8+T6-T4;
T11=T8+T7-T4;
T12=T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
T13=T4+T1-T0;
T14=T4+T2-T0;
T15=T4+T3-T0;
其中ts为采样周期,轨迹最大速度vMax=线速度V,AccMax为轨迹最大加速度值,Jerk为轨迹最大加加速度值,omgMax为弧形最大角速度,omgAccMax为弧形最大角加速度,omgJerk为弧形最大角加加速度,targetOmg为弧线弧度,floor为取整函数,例如向下取整。
其中根据本发明一个优选实施例,轨迹最大加速度值AccMax=vMax*5,轨迹最大加加速度值Jerk=AccMax/ts/10;弧形最大角速度omgMax=50/180*pi;弧形最大角加速度omgAccMax=omgMax*2;弧形最大角加加速度omgJerk=omgAccMax/ts/20;targetOmg=0.5*pi为90度弧线。其中,AccMax,Jerk,omgMax,omgAccMax,omgJerk,可以为常数,也可以不限制其固定值,根据需要作为模块输入。
其中根据本发明一个优选实施例,计算机器人的加速度和角加速度的步骤包括:根据当前t时刻及上一时刻acc n-1迭代计算当前时刻加速度acc n,根据当前t时刻及上一时刻angleacc n-1迭代计算当前时刻角加速度angleacc n,具体计算方式如下:
Figure PCTCN2019087343-appb-000005
其中根据本发明一个优选实施例,机器人的运动机构包括至少两组车轮,其中一组车轮位于所述轨迹的内侧,其中一组车轮位于所述轨迹的外侧。也就是说,当沿着机器人的运动方向观察时,至少一组车轮位于左侧,至少一组车轮位于右侧。图14是 根据上述公式计算出的左右轮或左右电机的加速度。
其中根据本发明一个优选的实施例,计算轨迹的步骤包括:根据加速度及角加速度,利用以下公式计算得到轨迹:
Figure PCTCN2019087343-appb-000006
其中theta n是角度值,即AGV在某一时刻的的朝向角度。Agv在某一时刻的状态包括例如位置X,Y和朝向角度theta。规划的轨迹就是是X,Y,theta n对时间的关系。
图15a-15b示出了根据上述公式计算出的轨迹。其中图15a示出了X坐标和Y方向的坐标轨迹,图15b示出了X方向随时间的位移以及Y方向随时间的位移。
根据图15b,基于所获得的轨迹,可以得到机器人左右轮的速度曲线,如图16所示。从图中可以看到,在进入弧线时,左右轮的速度均没有发生跃变。
上面是以targetOmg=0.5*pi即90度弧线为例进行了说明。可以根据具体的需求设置,例如令targetOmg=0.5*pi,即以180度弧线实现转弯,如图17所示。
以上实施例中计算到了三阶,即最高计算到最大加加速度值和最大角加加速度值。实际中,为了实现更精细的运动控制,可以计算到更高阶,即最大加加加速度值和最大角角角速度值。这些都在本发明的范围内。
本发明还涉及一种用于机器人的运动控制设备,包括:
接收起点坐标x_start、y_start和终点坐标x_target、y_target的单元;
规划所述机器人从所述起点坐标到所述终点坐标的轨迹的单元,其中所述轨迹的路径包括衔接的直线段和弧线段,其中在所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和
控制所述机器人按照所述规划轨迹运动的单元。
图18示出了根据本发明一个实施例的一种自动仓储系统700。如图18所示,自动仓储系统700包括:一个或多个自动引导车701以及控制单元702,控制单元702与自动引导车701通讯,并配置成执行如上所述的运动控制方法600。控制单元702与自动引导车可以通过无线的方式来进行通讯,例如通过2G、GPRS、EDGE、3G、4G、5G、WIFI、蓝牙、ZIGBEE等各种方式来进行连接通讯。
图19示出了根据本发明的一种计算机程序产品800的框图。信号承载介质802可以被实现为或者包括计算机可读介质806、计算机可记录介质808、计算机通信介质810或者它们的组合,其存储可配置处理单元以执行先前描述的过程中的全部或一些的编程指令804。这些指令可以包括例如用于使一个或多个处理器执行如下处理的一个或多个可执行指令:接收起点坐标x_start、y_start和终点坐标x_target、y_target;规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和控制所述机器人按照所述规划的轨迹运动。
本发明的实施例提供了一种一类弧线轨迹的规划方法,轨迹在时间上连续不跳变,运动控制的稳定性高,精度高。弧线轨迹中,机器人质心的线速度固定,角速度轨迹曲线随时间呈S型,平滑。弧线轨迹中,机器人驱动轮的速度轨迹曲线呈S型,平滑。该弧线轨迹在网格坐标系中可以实现90度平滑转弯,180度U型转弯。
差速AGV可以采用左右轮速度平滑过渡。开始时刻到结束时刻,离散间隔没有大范围跳变。
本领域技术人员可以理解,本发明第二方面的运动控制方法600可以应用于本发明第一方面的自动引导车的控制方法100和200。例如,在控制方法100中,在步骤S104,如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向。例如可以输入转弯的起点和终点,通过运动控制方法600来进行转弯的轨迹规划,规划所述自动引导车从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,其中在所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变。
或者在图6中,在步骤S207和/或S205,通过运动控制方法600来进行转弯的轨迹规划,规划所述自动引导车从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,其中在所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变。
以直角弧线转弯为例,例如在图3中,转弯的起点的可以为单元格(1,1)(或者相应的物理坐标),转弯的终点可以为单元格(2,2)(或者相应的物理坐标)。以U型转弯为例,例如在图4中,转弯的起点可以为单元格(1,1)或者(1,2)(或者它们相对应的物理坐标),转弯的重点可以为单元格(2,2)或者(2,1)(或者它们相对应的物理坐标)。
本发明的运动控制方法可用于自动仓储系统中的自动引导车AGV的运动控制。本领域技术人员容易理解,本发明的运动控制方法也可以适用于控制其他类型的机器人,这些都在本发明的保护范围内。
虽然前面的详细说明已经通过框图、流程图和/或示例的使用阐述了装置和/或过程的各个示例,但是这样的框图、流程图和/或示例包含一项或多项功能和/或操作,本领域技术人员将理解的是,可以通过各种各样的硬件、软件、固件或几乎其任意组合来单独地和/或统一地实现这样的框图、流程图或示例内的每个功能和/或操作。在一个示例中,本文所描述的主题的若干部分可经由专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)或其它集成形式来实现。然而,本领域技术人员将理解的是,本文公开的示例的一些方面可以整体地或部分地被等同地实现在集成电路中、实现为在一个或多个计算机上运行的一个或多个计算机程序(例如,实现为在一个或多个计算机系统上运行的一个或多个程序)、实现为在一个或多个处理器上运行的一个或多个程序(例如,实现为在一个或多个微处理器上运行的一个或多个程序)、实现为固件、或实现为以上的几乎任何组合,并且根据本公开的内容,针对所述软件和/或固件设计电路和/或编写代码将在本领域技术人员的技能范围内。例如,如果使用者判定速度和精度重要,则使用者可以选择主硬件和/或固件媒介物;如果灵活 性重要,则使用者可以选择主软件实施方式;或者,另外可选地,使用者可以选择硬件、软件和/或固件的某组合。
另外,本领域技术人员将理解的是,本文所描述的主题的机制能够作为各种形式的程序产品被分发,并且不管实际上用于实施分发的信号承载介质的具体类型如何,本文所描述的主题的说明性示例都适用。信号承载介质的示例包括但不限于以下:可记录型介质,诸如软盘、硬盘驱动器、压缩盘(CD)、数字视频盘(DVD)、数字带、计算机存储器等;以及传输型介质,诸如数字和/或模拟通信介质(例如,光纤光缆、波导、有线通信链路、无线通信链路等)。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (23)

  1. 一种自动引导车的控制方法,包括:
    获取所述自动引导车的下一位置;
    确定所述下一位置是否为转向点;
    如果所述下一位置为非转向点,控制所述自动引导车直线通过所述下一位置;和
    如果所述下一位置为转向点,控制所述自动引导车在所述下一位置进行转向。
  2. 根据权利要求1所述的控制方法,其特征在于,所述控制自动引导车在下一位置进行转向的步骤包括:
    判断所述下一位置是否满足U型转向条件,如果满足,则控制所述自动引导车以U型弧线转弯通过所述下一位置;否则,判断所述下一位置是否满足弧线转弯条件,如果满足,则控制所述自动引导车以直角弧线转弯方式通过所述下一位置;如果所述下一位置不满足所述弧线转弯条件,则控制所述自动引导车以直角转弯的方式通过所述下一位置。
  3. 根据权利要求1或2所述的控制方法,其特征在于,还包括:获取所述下一位置的再下一个位置,并判断所述再下一个位置是否可用,当所述再下一个位置不可用时,等待直到所述再下一个位置变为可用。
  4. 根据权利要求2所述的控制方法,其特征在于,还包括:如果所述下一位置为转向点,获取所述下一位置的再下一个位置,并判断所述再下一个位置是否可用,当所述再下一个位置不可用时,等待直到所述再下一个位置变为可用时,控制所述自动引导车以U型弧线或直角弧线方式通过所述下一位置。
  5. 根据权利要求1或2所述的控制方法,其特征在于,所述控制自动引导车在下一位置进行转向的步骤包括:
    接收起点坐标x_start、y_start和终点坐标x_target、y_target;
    规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和
    控制所述机器人按照所述规划的轨迹运动。
  6. 根据权利要求5所述的控制方法,其特征在于,还包括接收线速度V,其中所述规划轨迹的步骤包括:
    计算多个特征时间点;
    根据所述多个特征时间点计算所述机器人的加速度和角加速度;和
    根据所述加速度、角加速度计算所述轨迹。
  7. 根据权利要求5或6所述的运动控制方法,其特征在于,所述多个特征时间点包括16个特征时间点T0-T15,
    T0=1;
    T1=AccMax/Jerk/ts+T0;
    T2=vMax/AccMax/ts+T0;
    T3=T2+T1-T0;
    T4=T3+floor((x_target-0.8305)/vMax/ts+0.5);
    T5=omgAccMax/omgJerk/ts+T4;
    T6=omgMax/omgAccMax/ts+T4;
    T7=T6+T5-AT0;
    T8=targetOmg/omgMax/ts+T4;
    T9=T8+T5-T4;
    T10=T8+T6-T4;
    T11=T8+T7-T4;
    T12=T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
    T13=T4+T1-T0;
    T14=T4+T2-T0;
    T15=T4+T3-T0;
    其中ts为采样周期,轨迹最大速度vMax=线速度V,AccMax为轨迹最大加速度值,Jerk为轨迹最大加加速度值,omgMax为弧形最大角速,omgAccMax为弧形最大角加速度,omgJerk为弧形最大角加加速度,targetOmg为弧线弧度。
  8. 根据权利要求7所述的运动控制方法,其特征在于,轨迹最大加速度值AccMax=vMax*5,轨迹最大加加速度值Jerk=AccMax/ts/10;弧形最大角速度omgMax=50/180*pi;弧形最大角加速度omgAccMax=omgMax*2;弧形最大角加加速度omgJerk=omgAccMax/ts/20;targetOmg=0.5*pi为90度弧线。
  9. 根据权利要求7或8所述的运动控制方法,其特征在于,所述计算机器人的加速度和角加速度的步骤包括:根据当前t时刻及上一时刻acc n-1迭代计算当前时刻加速度acc n,根据当前t时刻及上一时刻angleacc n-1迭代计算当前时刻角加速度angleacc n
    Figure PCTCN2019087343-appb-100001
    Figure PCTCN2019087343-appb-100002
  10. 根据权利要求9所述的运动控制方法,其特征在于,所述计算轨迹的步骤包括:根据加速度及角加速度,利用以下公式计算得到轨迹:
    Figure PCTCN2019087343-appb-100003
  11. 一种自动引导车,包括:
    车体;
    电机,安装在所述车体上;
    行进装置,与所述电机耦合并被所述电机驱动;
    控制装置,设置在所述车体上,并配置成执行如权利要求1-10中任一项所述的控制方法。
  12. 一种货物搬运系统,包括:
    坐标单元;
    自动引导车;
    控制单元,所述控制单元与所述自动引导车通讯,并控制所述自动引导车在所述坐标单元中运动,并配置成执行如权利要求1-10中任一项所述的控制方法。
  13. 一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如权利要求1-10中任一项所述的控制方法。
  14. 一种机器人的运动控制方法,包括:
    接收起点坐标x_start、y_start和终点坐标x_target、y_target;
    规划所述机器人从所述起点坐标到所述终点坐标的轨迹,其中所述轨迹的路径包括衔接的直线段和弧线段,所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和
    控制所述机器人按照所述规划的轨迹运动。
  15. 根据权利要求14所述的运动控制方法,其特征在于,还包括接收线速度V,其中所述规划轨迹的步骤包括:
    计算多个特征时间点;
    根据所述多个特征时间点计算所述机器人的加速度和角加速度;和
    根据所述加速度、角加速度计算所述轨迹。
  16. 根据权利要求14或15所述的运动控制方法,其特征在于,所述多个特征时间点包括16个特征时间点T0-T15,
    T0=1;
    T1=AccMax/Jerk/ts+T0;
    T2=vMax/AccMax/ts+T0;
    T3=T2+T1-T0;
    T4=T3+floor((x_target-0.8305)/vMax/ts+0.5);
    T5=omgAccMax/omgJerk/ts+T4;
    T6=omgMax/omgAccMax/ts+T4;
    T7=T6+T5-AT0;
    T8=targetOmg/omgMax/ts+T4;
    T9=T8+T5-T4;
    T10=T8+T6-T4;
    T11=T8+T7-T4;
    T12=T11+1+floor((y_target-0.8305)/vMax/ts+0.5);
    T13=T4+T1-T0;
    T14=T4+T2-T0;
    T15=T4+T3-T0;
    其中ts为采样周期,轨迹最大速度vMax=线速度V,AccMax为轨迹最大加速度值,Jerk为轨迹最大加加速度值,omgMax为弧形最大角速,omgAccMax为弧形最大角加速度,omgJerk为弧形最大角加加速度,targetOmg为弧线弧度。
  17. 根据权利要求16所述的运动控制方法,其特征在于,轨迹最大加速度值AccMax=vMax*5,轨迹最大加加速度值Jerk=AccMax/ts/10;弧形最大角速度omgMax=50/180*pi;弧形最大角加速度omgAccMax=omgMax*2;弧形最大角加加速度omgJerk=omgAccMax/ts/20;targetOmg=0.5*pi为90度弧线。
  18. 根据权利要求16或17所述的运动控制方法,其特征在于,所述计算机器人的加速度和角加速度的步骤包括:根据当前t时刻及上一时刻acc n-1迭代计算当前时刻加速度acc n,根据当前t时刻及上一时刻angleacc n-1迭代计算当前时刻角加速度angleacc n
    Figure PCTCN2019087343-appb-100004
    Figure PCTCN2019087343-appb-100005
  19. 根据权利要求18所述的运动控制方法,其特征在于,所述计算轨迹的步骤包括:根据加速度及角加速度,利用以下公式计算得到轨迹:
    Figure PCTCN2019087343-appb-100006
  20. 根据权利要求14-19中任一项所述的运动控制方法,其特征在于,所述机器人的运动机构包括至少两组车轮,其中一组车轮位于所述轨迹的内侧,其中一组车轮位于所述轨迹的外侧。
  21. 一种用于机器人的运动控制设备,包括:
    接收起点坐标x_start、y_start和终点坐标x_target、y_target的单元;
    规划所述机器人从所述起点坐标到所述终点坐标的轨迹的单元,其中所述轨迹包括衔接的直线段和弧线段,其中在所述轨迹中,所述机器人的运动机构在所述直线段和弧线段的交界处不存在速度的跃变;和
    控制所述机器人按照所述规划轨迹运动的单元。
  22. 一种用于自动仓储系统,包括:
    自动引导车;和
    控制单元,与所述自动引导车通讯,并配置成执行如权利要求14-19中任一项所述的运动控制方法。
  23. 一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如权利要求14-19中任一项所述的控制方法。
PCT/CN2019/087343 2019-04-01 2019-05-17 自动引导车的控制方法、自动引导车及货物搬运系统 WO2019154446A2 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201910257006.XA CN109885070B (zh) 2019-04-01 2019-04-01 机器人的运动控制方法、运动控制设备以及自动仓储系统
CN201910256998.4A CN109928129B (zh) 2019-04-01 2019-04-01 自动引导车的控制方法、自动引导车及货物搬运系统
CN201910257006.X 2019-04-01
CN201910256998.4 2019-04-01

Publications (2)

Publication Number Publication Date
WO2019154446A2 true WO2019154446A2 (zh) 2019-08-15
WO2019154446A3 WO2019154446A3 (zh) 2020-02-20

Family

ID=67548809

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/087343 WO2019154446A2 (zh) 2019-04-01 2019-05-17 自动引导车的控制方法、自动引导车及货物搬运系统

Country Status (1)

Country Link
WO (1) WO2019154446A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699135A (zh) * 2019-10-22 2021-04-23 北京京东乾石科技有限公司 信息更新方法和装置
CN113761086A (zh) * 2020-06-16 2021-12-07 北京京东乾石科技有限公司 一种自动导引运输车轨迹展示方法和装置
CN113988377A (zh) * 2021-09-30 2022-01-28 东方电气集团东方电机有限公司 一种智能车间agv充电站位置优化布置方法
CN114281066A (zh) * 2020-09-17 2022-04-05 顺丰科技有限公司 控制机器人运行的方法及其相关设备
CN114637279A (zh) * 2022-03-11 2022-06-17 厦门大学 一种基于局部方位信息的多智能体编队控制方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106767808B (zh) * 2016-11-22 2019-09-03 上海振华重工电气有限公司 基于模板的自动化集装箱码头自动引导车辆路径规划方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699135A (zh) * 2019-10-22 2021-04-23 北京京东乾石科技有限公司 信息更新方法和装置
CN112699135B (zh) * 2019-10-22 2023-12-05 北京京东乾石科技有限公司 信息更新方法和装置
CN113761086A (zh) * 2020-06-16 2021-12-07 北京京东乾石科技有限公司 一种自动导引运输车轨迹展示方法和装置
CN113761086B (zh) * 2020-06-16 2024-03-01 北京京东乾石科技有限公司 一种自动导引运输车轨迹展示方法和装置
CN114281066A (zh) * 2020-09-17 2022-04-05 顺丰科技有限公司 控制机器人运行的方法及其相关设备
CN113988377A (zh) * 2021-09-30 2022-01-28 东方电气集团东方电机有限公司 一种智能车间agv充电站位置优化布置方法
CN113988377B (zh) * 2021-09-30 2023-06-27 东方电气集团东方电机有限公司 一种智能车间agv充电站位置优化布置方法
CN114637279A (zh) * 2022-03-11 2022-06-17 厦门大学 一种基于局部方位信息的多智能体编队控制方法

Also Published As

Publication number Publication date
WO2019154446A3 (zh) 2020-02-20

Similar Documents

Publication Publication Date Title
WO2019154446A2 (zh) 自动引导车的控制方法、自动引导车及货物搬运系统
CN113184423B (zh) 自动引导车的控制方法、自动引导车及货物搬运系统
CN109885070B (zh) 机器人的运动控制方法、运动控制设备以及自动仓储系统
US20210163068A1 (en) Obstacle avoidance guidance for ground vehicles
EP2251758B1 (en) Autonomous mobile body, and method and system for controlling the same
JP6740477B2 (ja) 自動駐車制御装置
US10255811B2 (en) Obstacle avoidance system
JP3056211B2 (ja) 位置のフィ―ドバックと連続曲率を用いて、有向直線と有向円弧の系列からなる経路を追跡する自律ロボット移動車とその制御方法
US10126747B1 (en) Coordination of mobile drive units
US20170060133A1 (en) Apparatus and method for controlling autonomous navigation
CN107992053B (zh) Agv交通管制方法和agv交通管制系统
CN110109467B (zh) 机器人的转弯路径控制方法、装置、存储介质及机器人
JP2017010292A (ja) Agv軌道計算装置及び方法
CN111624999A (zh) 碰撞消除方法、装置、电子设备及可读存储介质
US20210200223A1 (en) Robotic motion control method and apparatus and robot using the same
CN112325898A (zh) 路径规划方法、装置、设备和存储介质
CN115179929A (zh) 自动驾驶车辆调度方法、装置及自动驾驶车辆
Amouzadi et al. Optimal lane-free crossing of cavs through intersections
CN113671941A (zh) 一种轨迹规划方法、装置、设备和存储介质
CN109839930B (zh) 一种避障装置、系统及方法
CN113534789B (zh) 移动机器人三次多项式速度曲线实时规划方法及装置
CN102830704A (zh) 单机驱动人工装卸agv控制系统
US11132898B2 (en) Systems and methods for self-driving vehicle traffic management
CN113534702B (zh) 一种控制方法、装置、设备及存储介质
CN115871709A (zh) 自动驾驶车辆进站轨迹规划方法、装置、设备、介质和车辆

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205N DATED 23/11/2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19751278

Country of ref document: EP

Kind code of ref document: A2