WO2025022770A1 - Moving body control system and moving body control method - Google Patents
Moving body control system and moving body control method Download PDFInfo
- Publication number
- WO2025022770A1 WO2025022770A1 PCT/JP2024/018370 JP2024018370W WO2025022770A1 WO 2025022770 A1 WO2025022770 A1 WO 2025022770A1 JP 2024018370 W JP2024018370 W JP 2024018370W WO 2025022770 A1 WO2025022770 A1 WO 2025022770A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- control
- setting unit
- past
- mobile object
- unit
- 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
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/40—Control within particular dimensions
- G05D1/43—Control of position or course in two dimensions
Definitions
- the present invention relates to a mobile object control system and a mobile object control method.
- autonomous vehicles To solve the driver shortage in transporting soil at construction sites and mines, and in shuttles and logistics, the introduction of autonomous vehicles is progressing.
- the driving requirements for such autonomous vehicles vary depending on the tasks given to them. For example, when transporting people or precision machinery, the vehicle must be able to travel with minimal shaking to prevent car sickness and damage, while when transporting soil and ore, the vehicle must be able to travel round trip in a short time to increase the amount of material transported per hour.
- the control targets given to the autonomous vehicles (trajectory targets and target speed distributions expressed by nodes and branches/edges, etc.) differ, so it becomes necessary to design control targets every time the task changes, which imposes a large burden (engineering costs) on the operation site.
- the controller when the control targets differ, the controller must be adjusted to achieve the control targets. If the controller is adjusted every time the control target changes, the burden on the operation site increases even more. On the other hand, if such adjustments are not made, a general-purpose setting that can be applied to various tasks is required, which results in a decrease in control accuracy and limitations on the tasks that can be performed compared to when adjustments are made for each task.
- Patent Document 1 discloses a vehicle driving support device that outputs a target driving pattern that serves as a reference for controlling the vehicle speed according to the vehicle's driving state, and that, each time the vehicle travels through a section previously set on a map, classifies the vehicle's driving state, including the presence or absence of a preceding vehicle and the presence or absence of a following vehicle, and stores a driving pattern that indicates the change in the vehicle speed or the distance from the preceding vehicle within the section, and generates and outputs the target driving pattern based on the driving pattern that is classified as the same vehicle driving state as the current vehicle driving state from among the stored driving patterns.
- a target driving pattern which is the control target, is generated from driving patterns recorded during tasks performed by an autonomous vehicle in the past, so this is effective in reducing the burden of repeated operations at the same site or with the same vehicle (autonomous vehicle).
- the present invention has been made in consideration of the above, and aims to provide a mobile object control system and a mobile object control method that can reduce the burden when introducing new autonomous mobile objects to a site and can quickly introduce them to the site.
- the present application includes multiple means for solving the above problem, but one example is a mobile body control system that includes a destination setting unit that determines a destination for a mobile body and generates a movement route including a path shape to the destination and a control target, a parameter setting unit that sets control parameters to be used on the movement route set by the destination setting unit, and an information storage unit that stores a driving record that records at least a combination of a path shape, a control target, and a control parameter along which the mobile body has autonomously traveled in the past, in which the parameter setting unit generates past blocks by dividing the path shape and control target of the driving record, generates a past block set formed of similar past blocks to which the same control parameters can be assigned, generates a current block by dividing the path shape and control target of the movement route, compares the path shape and control target of the current block with the path shape and control target of the past block set, and generates control parameters corresponding to the past block set similar to the current block.
- the present invention can reduce the burden of introducing an autonomous mobile device to a site, and can quickly introduce the device to the site.
- FIG. 1 is a functional block diagram illustrating a schematic overall configuration of a mobile object control system according to a first embodiment.
- FIG. 1 is a diagram showing an autonomous moving body operating in a mine, which is a site of the autonomous moving body;
- FIG. 1 is a diagram showing a coordinate system set in a mine.
- FIG. 2 is a functional block diagram illustrating a configuration of an autonomous moving body.
- FIG. 11 is a diagram showing an example of a travel route set in a travel-permitted passage;
- FIG. 13 is a diagram showing how trajectory targets are set on a set movement route.
- FIG. 13 is a diagram showing how a speed target is set for a set movement route.
- FIG. 13 is a diagram showing a state in which a set movement route and a trajectory target are divided.
- FIG. 1 is a diagram showing an autonomous moving body operating in a mine, which is a site of the autonomous moving body
- FIG. 1 is a diagram showing a coordinate system set in a mine.
- FIG. 13 is a diagram showing the state of a velocity target in each divided block.
- FIG. 11 is a diagram showing an example of block information for each divided block.
- FIG. 11 is a diagram illustrating an example of a relationship between block features and control parameters.
- FIG. 10 is a diagram illustrating a method for searching for solution candidates.
- 4 is a flowchart showing the processing contents of the mobile object control system.
- FIG. 11 is a functional block diagram illustrating an overall configuration of a mobile object control system according to a second embodiment.
- the mobile object control system in this embodiment controls mobile objects such as robots and vehicles capable of autonomous operation, calculates movement plans (time series of coordinates, attitude, speed, etc.) for these mobile objects, and controls the mobile objects to follow this path plan.
- mobile objects such as robots and vehicles capable of autonomous operation
- movement plans time series of coordinates, attitude, speed, etc.
- an example is given of an autonomous vehicle operating in a mine as the autonomous mobile object to be controlled.
- the application of the present invention is not limited to generating movement paths for mobile objects operating in mines, but can also be applied, for example, to generating movement paths for transport vehicles in ports and paths for robots moving in theme parks.
- FIG. 1 is a functional block diagram that shows a schematic diagram of the overall configuration of a mobile object control system according to this embodiment.
- the mobile object control system is generally composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106.
- a mobile object position acquisition unit A101 a destination setting unit A102
- a control information storage unit A103 a parameter setting unit A104
- a control information storage unit A105 a mobile object control unit A106.
- FIG. 2 is a diagram showing autonomous mobile bodies operating in a mine, which is a site.
- autonomous mobile bodies B100 and non-autonomous mobile bodies B102 are mixed and each of them moves along a travel-permitted path B101.
- the autonomous mobile body B100 is, for example, a dump truck capable of carrying loads such as soil or ore.
- the autonomous mobile body B100 is not limited to so-called four-wheel vehicles such as dump trucks, and can handle various types of autonomous mobile bodies such as differential two-wheel robots, omni-wheel robots, forklifts, and towing vehicles.
- the non-autonomous mobile body B102 is, for example, a hydraulic excavator equipped with a loading function.
- Examples of work performed in a mine include an autonomous mobile body B100 moving to a specified position so that a non-autonomous mobile body B102 can load a load, and then discharging the loaded load in a specified area.
- the target position to which the autonomous mobile body B100 should move is managed by a management server B104.
- the management server B104 may be installed inside the mine, or may be installed in another location outside the mine.
- the target position determined by the management server B104 is distributed to the autonomous mobile body B100 via a wireless communication line B103 within the mine.
- Fig. 3 shows a coordinate system set in the mine.
- Fig. 4 is a functional block diagram showing the configuration of an autonomous mobile unit.
- an XY coordinate system is set up in the mine for the autonomous mobile body B100, with the position of the autonomous mobile body B100 represented by X-axis and Y-axis values (x, y), and the orientation (e.g., the forward direction of the autonomous mobile body B100) indicated by the angle ( ⁇ ) with the X-axis.
- the autonomous mobile body B100 is equipped with various sensors, such as an encoder that detects the rotation speed of the wheels (not shown), an inertial sensor (IMU: Inertial Measurement Unit) that acquires the rotational speed and acceleration of the vehicle body, LiDAR (Light Detection And Ranging), and GNSS (Global Navigation Satellite System).
- IMU Inertial Measurement Unit
- the autonomous mobile object B100 is composed of a recording unit M01, a communication unit M02, a sensor M03, a mobile object control unit M04, a self-position calculation unit M05, and an actuator M06.
- the recording unit M01 is a recording device for the computing unit provided in the autonomous mobile unit B100, and corresponds to an HDD (hard disk drive), SSD (solid state drive) or memory.
- the recording unit records various control programs, parameters used in the control programs, and control targets distributed from the management server.
- the communication unit M02 is a wireless communication device compatible with 5G, LTE (Long Term Evolution), etc., and can communicate with the management server B104 via a wireless communication line B103 within the mine.
- 5G Fifth Generation
- LTE Long Term Evolution
- Sensor M03 corresponds to sensors installed on the autonomous mobile unit B100, such as the encoder, IMU, LiDAR, and GNSS described above.
- the mobile unit control unit M04 is a function that performs calculations related to the travel control of the mobile unit, and is executed in a controller (not shown) that is installed in the autonomous mobile unit B100. The calculations performed by the mobile unit control unit M04 will be described in detail later.
- the self-position calculation unit M05 is a function that calculates the autonomous mobile unit B100's own position (x, y coordinates on a two-dimensional plane) and orientation by combining multiple sensors attached to the autonomous mobile unit B100.
- the functions of the self-position calculation unit M05 are executed in the controller, similar to the mobile unit control unit M04.
- the self-position calculation unit M05 can be realized by a technology known as SLAM (Simultaneous Localization And Mapping), so a detailed explanation will be omitted.
- Actuator M06 corresponds to the driving motor, steering mechanism, and braking device of the autonomous mobile body B100.
- the autonomous mobile body B100 receives control targets and control parameters from the management server B104 via the communication unit M02, records them in the recording unit M01, and controls its own operation according to this data. Note that if the communication cycle is sufficiently fast, the data may not be stored in the recording unit M01 but may be used directly by the mobile body control unit M04 (shown by the dotted line in Figure 4).
- the mobile control system is a system that manages the operation of the autonomous mobile unit B100 within the mine based on information acquired by the autonomous mobile unit B100, and most of the processing is executed by the management server B104.
- the mobile object control system is composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106.
- the mobile object position acquisition unit A101 is composed of a sensor A101a and a self-position calculation unit A101b. Each function of the mobile object position acquisition unit A101 corresponds to the sensor M03 and the self-position calculation unit M05 shown in FIG. 4.
- the control information storage unit A103 holds map information, which is a database of the terrain of the travel-permitted passage B101, such as the curvature, gradient, and road width; vehicle information, which is a database of vehicle specifications of the autonomous mobile body B100, such as the maximum speed, maximum acceleration, and minimum turning radius; and block information, which is a database of blocks composed of the terrain and control targets and the control parameters corresponding to those blocks.
- map information which is a database of the terrain of the travel-permitted passage B101, such as the curvature, gradient, and road width
- vehicle information which is a database of vehicle specifications of the autonomous mobile body B100, such as the maximum speed, maximum acceleration, and minimum turning radius
- block information which is a database of blocks composed of the terrain and control targets and the control parameters corresponding to those blocks.
- the destination setting unit A102 calculates the target position of the autonomous moving body B100 based on the current position of the autonomous moving body B100 calculated by the moving body position acquisition unit A101 and the work being carried out within the mine, sets a movement route on the travel permission passage B101 from the current position to the target position, and generates a control target.
- the tasks that can be assigned are loading, dumping, maintenance, etc.
- the corresponding target locations are loading areas, dumping areas, parking areas, etc.
- the allocation of tasks within the mine is achieved, for example, by linking with an FMS (Fleet Management System) not shown in the figure. Note that a detailed explanation of the processing content of the FMS is omitted here.
- FMS Flexible Management System
- Figure 5 shows an example of a travel route set in a travel-permitted passage.
- FIG. 6 shows how trajectory targets are set for a set movement route. Also, FIG. 7 shows how speed targets are set for a set movement route.
- control target generation involves generating trajectory targets and speed targets to be followed by the autonomous mobile body B100.
- Methods such as the Timed Elastic Band Algorithm (TEB algorithm) and Model Predictive Trajectory Optimization have been proposed as generation methods that can be optimized for different control objectives (efficiency-oriented, energy-saving, safety-oriented, etc.) based on the terrain and vehicle specifications, and these can be used to achieve this. Note that a detailed explanation of these methods will not be given here.
- TEB algorithm Timed Elastic Band Algorithm
- Model Predictive Trajectory Optimization have been proposed as generation methods that can be optimized for different control objectives (efficiency-oriented, energy-saving, safety-oriented, etc.) based on the terrain and vehicle specifications, and these can be used to achieve this. Note that a detailed explanation of these methods will not be given here.
- the parameter setting unit A104 has a block search unit A104a and a parameter generation unit A104b.
- Figure 8 shows the division of the set movement route and trajectory target.
- Figure 9 shows the speed target for each divided block.
- the block search unit A104a divides the travel route and control targets to generate blocks, searches the resulting blocks from the block information, and obtains the corresponding control parameters.
- the parameter generation unit A104b generates control parameters suitable for the control targets based on the block's terrain, vehicle specifications, and control targets.
- the blocks may be divided, for example, at points where the changes in terrain, such as gradient and road width, relative to the distance traveled become constant, making it easier to search for blocks with a common tendency for terrain changes, or at points where the changes in trajectory targets and speed targets relative to the distance traveled become constant, making it easier to search for blocks with a common tendency for control targets.
- the state of the autonomous mobile body B100 becomes steady, making it easier to switch control parameters between blocks.
- FIG. 10 shows an example of block information for each divided block. Also, FIG. 11 shows an example of the relationship between block characteristics and control parameters.
- the block information stored in the control information storage unit A103 records the route shape (topography), starting target, speed target, etc. as the characteristics of each divided block.
- the route shape (topography) stored in the control information storage unit A103 is represented, for example, by the road distance, road width at the initial position, road width change rate, curvature at the initial position, curvature change rate, gradient at the initial position, and gradient change rate.
- the trajectory target is represented, for example, by the initial state and state change rate.
- the speed target is represented, for example, by the initial speed and speed change rate.
- control parameters are associated based on the features shown in FIG. 10.
- FIG. 11 shows an example in which two features of a block are associated with the control parameters, but this is not limited thereto, and for example, more than two types of features may be associated with the control parameters.
- control parameter P1 When searching for blocks, if the characteristics of the newly obtained new block fall within the range that a certain control parameter P1 corresponds to (as in the case of new block A in FIG. 11), control parameter P1 is associated with new block A. On the other hand, if the characteristics of the new block do not fall within the range that any control parameter corresponds to (as in the case of new block B in FIG. 11), the existing block with the closest characteristics (smallest absolute difference in numerical values) may be associated with the corresponding control parameter, or a corresponding control parameter may be generated as described below.
- the range of the control parameters may be the range of variation of the block features within which the tracking accuracy of the block to the control target is within an acceptable range when the same control parameters are used, or, when control parameters are generated for each block, the range of variation of the control parameters within which the tracking accuracy of the block to the control target is within an acceptable range may be determined, blocks with overlapping ranges may be collected, and a normal distribution may be calculated for each collected block feature to set the range corresponding to the averaged control parameter for the overlapping range from a range based on the confidence interval.
- the acceptable range of tracking accuracy of the block to the control target indicates the accuracy with which the autonomous mobile body B100 can complete the assigned task, such as the accuracy with which the autonomous mobile body B100 can travel without deviating from the travel-permitted path B101 or the accuracy with which the autonomous mobile body B100 can achieve the scheduled arrival time.
- the block information stores the range of the control parameters and the characteristics of the corresponding blocks, it is possible to divide the movement route and the control target using this correspondence.
- the terrain, trajectory target, and speed target at the current position are set as initial values to search for candidates for the corresponding control parameters.
- the changes in the terrain, trajectory target, and speed target when moving in the direction of the path are tracked, and the block is divided into one block up to the point where there is only one candidate for the control parameter.
- the same process is repeated using the terrain, trajectory target, and speed target at the divided point as initial values, and the block is divided.
- the block is moved in the direction of the path until the corresponding control parameter appears, and the block is divided into one block up to the point where it is found. Since no control parameters are assigned to this block, the existing block with the closest characteristics (smallest absolute difference in numerical value) may be associated with the corresponding control parameters, or a corresponding control parameter may be generated as described below. This method makes it possible to minimize the number of divisions when assigning control parameters, and also minimizes the number of blocks for which control parameters need to be generated.
- the above method makes it possible to assign control parameters to the entire movement route.
- the control parameters differ between blocks, there is a possibility that the control input will become discontinuous when switching.
- the control input will become discontinuous when the state quantity accumulated using the integral component parameters of the previous block is multiplied by the integral component parameters of the new block, and the tracking accuracy will decrease until the state quantity is accumulated again. Therefore, in order to change the control input continuously, a buffer section that linearly connects the control parameters is provided before and after the boundary between blocks.
- the length of the buffer section is set to a range in which the decrease in tracking accuracy in the buffer section does not fall below the accuracy at which the autonomous mobile body B100 can complete the assigned task.
- the control parameters may be generated using, for example, Bayesian Optimization (BO).
- BO is an algorithm that efficiently searches for parameters based on a specific evaluation index c by repeating simulations and experiments so as to maximize or minimize this evaluation index.
- the evaluation index c indicates the degree of achievement of a control objective (such as tracking accuracy for a control target) that should be achieved within a block in order for the autonomous mobile body B100 to complete an assigned task, and may be, for example, the time tend until the autonomous mobile body B100 reaches the target position r.
- Figure 12 is a diagram that shows a schematic diagram of a method for searching for solution candidates.
- the solution candidates obtained so far it is possible to calculate the estimated value of the function shape (solid line) and its variance (dashed line).
- the variance is large in areas where there are no solution candidates ⁇ i so far.
- the next solution candidate ⁇ 7 (see " ⁇ " in Figure 12) is determined by taking into account the estimated value of the function shape and the variance.
- control parameter P1 in Figure 11 there may be multiple ranges that a certain control parameter corresponds to, such as control parameter P1 in Figure 11.
- the control information storage unit A105 obtains the blocks on the movement route and the corresponding control parameters from the parameter setting unit A104 and stores them.
- the mobile unit control unit A106 calculates a control input to the actuator M06 that causes the position and orientation of the autonomous mobile unit B100 obtained by the self-position calculation unit A101b to follow the control target.
- the control parameters used to calculate the control input are obtained from the control information storage unit A105, and correspond to the block corresponding to the current position obtained by the self-position calculation unit A101b.
- Proposed control methods for calculating the control input include PID control and model predictive control (MPC), and these can be used to realize the control. A detailed explanation of these methods will be omitted.
- the blocks on the travel route and the corresponding control parameters are managed by the recording device of the management server B104.
- the blocks and control parameters that are expected to be requested by the mobile unit control unit A106 are delivered from the management server B104 to the autonomous mobile unit B100, and the autonomous mobile unit B100 travels while receiving the necessary information.
- Figure 13 is a flowchart showing the processing performed by the mobile control system.
- the mobile object control system first checks the current position of the autonomous mobile object B100 (step S100). This process is realized by the function of the mobile object position acquisition unit A101.
- step S110 based on the acquired position of the autonomous mobile body B100, it is determined whether there is a task that can be assigned to the autonomous mobile body B100 (step S110). If the determination result in step S110 is NO, that is, if it is determined that there is no task that can be assigned to the autonomous mobile body B100, there is no load to be released or loaded on the autonomous mobile body B100, and there is no need to move the autonomous mobile body B100, so the process returns to step S100.
- step S100 determines whether there is a task that can be assigned to the autonomous mobile body B100. If the determination result in step S100 is YES, i.e., if it is determined that there is a task that can be assigned to the autonomous mobile body B100, then the target position r corresponding to the assigned task is determined (step S120).
- step S110 determines whether the autonomous moving body B100 has any cargo to be dumped or loaded.
- the autonomous moving body B100 is a battery-powered vehicle, a task to move it to a charging station may be generated if the battery level is low, and if the autonomous moving body B100 is a gasoline-powered vehicle, a task to move it to a refueling station may be generated if the gasoline level is low.
- step S120 After the processing of step S120 is completed, the movement route of the autonomous moving body B100 is set (step S130), and a control target is generated (step S140). Note that the processing of steps S110, S120, S130, and S140 is realized by the function of the movement destination setting unit A102 using the information stored in the control information storage unit A103.
- step S150 the movement route and the control target are divided into blocks (step S150), and the blocks on the movement route are searched for using block information to determine whether or not corresponding control parameters can be obtained from the block information for all blocks on the movement route (step S160).
- steps S150 and S160 is realized by the function of the block search unit A104a using the information stored in the control information storage unit A103.
- step S160 If the determination result in step S160 is NO, that is, if there is a block among the searched blocks for which the corresponding control parameters do not exist in the block information, then control parameters are generated for the blocks for which the corresponding control parameters do not exist in the block information (step S161). Note that this process is realized by the function of the parameter generation unit A104b using the information stored in the control information storage unit A103.
- step S160 determines whether the determination result in step S160 is YES, or if the processing of step S161 is completed.
- the control parameters of the block corresponding to the current position X of the autonomous mobile body B100 are then set (step S170). This processing is realized by the function of the control information storage unit A105. Note that if all blocks and control parameters are recorded in the management server B104, the necessary information is provided to the autonomous mobile body B100 at the timing of the processing of step S170.
- step S180 the control input to the actuator M06 is calculated using the control parameters set in step S170 (step S180), and the process ends. Note that the process of step S180 is realized by the function of the mobile unit control unit A106.
- steps S100 to S180 are repeated for each control cycle.
- a control target is generated based on the current position, and an appropriate control target is provided.
- the processing of steps S179 and S180 for each control cycle it is sufficient to perform the processing of steps S179 and S180 for each control cycle, thereby reducing calculation costs.
- the burden of introducing a new autonomous mobile body to a site can be reduced, and the mobile body can be introduced quickly to the site.
- the system designer prepares a database of blocks and their corresponding control parameters in advance, the operator does not need to perform control design suitable for the control objectives, and can optimally control the mobile body for each task.
- blocks generated in the past can be reused (if they can be expressed by rearranging existing blocks or if the same task is assigned to the same position as in the past), the process of generating control parameters is unnecessary, and the same execution results can be obtained while reducing calculation costs.
- This embodiment is a mobile control system that can handle changes in vehicle performance and disturbances that are difficult to record in advance in the block information.
- the same reference numerals are used for the same parts as in the first embodiment, and descriptions will be omitted as appropriate.
- model predictive control is introduced to the mobile unit control unit A106 of the mobile unit control system in the first embodiment, making it possible to generate control inputs that can follow the control target even in the presence of disturbances or performance changes such as obstacles not recorded in the block information or decreased vehicle braking performance, and to more reliably accomplish the assigned work in the mine.
- FIG. 1 is a functional block diagram that shows a schematic diagram of the overall configuration of a mobile object control system according to this embodiment.
- the mobile object control system is roughly composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106.
- the mobile unit control unit A106 has an evaluation function setting unit A106a and a prediction control unit A106b.
- the symbol T in the above (Equation 1) is a symbol representing transposition. Furthermore, the matrix Q is a weighting parameter related to the deviation ek, the matrix R is a weighting parameter related to the input uk, and the variable N is a parameter representing the evaluation interval (prediction interval). In this way, the evaluation function setting unit A106a includes multiple parameters, and these parameters are recorded in the control information storage unit A105.
- Equation 1 shows one example of the evaluation function J, and is not limited to this.
- an evaluation function in which only the final step N is a separate evaluation (terminal cost) may be used, as shown in the following (Equation 4).
- the prediction control unit A106b calculates the control input uk in accordance with the concept of MPC so as to reduce the value of the evaluation function J set by the evaluation function setting unit A106a.
- MPC has the advantage of being able to explicitly handle constraint conditions.
- the upper and lower limits of the driving speed v are determined by the rotational speed limit of the driving motor and the braking limit of the braking device.
- MPC that takes such constraint conditions into account can be expressed as shown in the following (Equation 5) and (Equation 6).
- the symbol [s.t.] is an abbreviation of [subject to], and means that the optimization problem is solved under the conditions following [s.t.].
- the subscripts max and min correspond to the upper and lower limits, respectively.
- the weight parameter matrices Q and R are given as diagonal matrices.
- Q can be expressed using the x-coordinate weight Qx, the y-coordinate weight Qy, and the orientation weight Q ⁇ .
- the control information storage unit A105 stores blocks on the movement route and the weight matrices Qi, Ri (i is an index assigned to the block) as the corresponding control parameters.
- the evaluation function setting unit A106a acquires control parameters from the control information storage unit A105 based on the block containing the predicted position calculated by the prediction control unit A106b, and sets the evaluation function.
- the MPC can predict state quantities occurring ahead and calculate the control input, it can adjust the control input so as to improve the tracking accuracy ahead after returning to the expected situation, rather than the tracking accuracy around the current position, which deviates from the assumption.
- the control parameters in the buffer section may be set to general-purpose control parameters that focus on stabilizing driving, or the weighting parameters may be reduced by a specified percentage to reduce the influence of the buffer section on the entire prediction interval.
- the length of the buffer section may be set to a position in the prediction interval from the current position to the position where the tracking error with the control target falls below a specified percentage, or it may be set to from the current position to the start position of the next block.
- the present embodiment configured as described above, can achieve the same effects as the first embodiment.
- the present invention is not limited to the above-described embodiments, and includes various modified examples and combinations of the embodiments within the scope of the gist of the present invention.
- the present invention is not limited to those having all the configurations described in the above-described embodiments, and includes those in which some of the configurations are changed or deleted.
- the above-described configurations, functions, etc. may be realized in part or in whole by designing them as an integrated circuit, for example.
- the above-described configurations, functions, etc. may be realized in software by a processor interpreting and executing a program that realizes each function.
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
本発明は、移動体制御システムおよび移動体制御方法に関する。 The present invention relates to a mobile object control system and a mobile object control method.
工事現場や鉱山での土砂運搬、送迎や物流におけるドライバー不足を解消するために、自律走行車両の導入が進んでいる。このような自律移動体は与えられる作業内容により要求される走行内容が異なる。例えば、人や精密機械の運搬では車酔いや破損を防ぐために車両の揺れが小さい走行が求められ、土砂や鉱石の運搬では時間当たりの運搬量を増やすために短時間で往復可能な走行が求められる。要求される走行内容が異なる場合、自律移動体に与えられる制御目標(節点(ノード)と枝(ブランチ/エッジ)などで表現される軌道目標や目標となる速度分布など)が異なるため、作業が変わるごとに制御目標を設計する必要が生じ、運用現場に大きな負担(エンジニアリングコスト)を求めることになる。加えて、制御目標が異なる場合、その制御目標を達成するために制御器の調整が必要となる。制御目標が変わるごとに制御器を調整する場合、運用現場の負担がさらに増加する。一方で、このような調整を行わない場合は様々な作業に適用できる汎用的な設定が必要となるため、作業ごとに調整した場合に比べ、制御精度の低下や実施可能な作業に対する制限が生じる。 To solve the driver shortage in transporting soil at construction sites and mines, and in shuttles and logistics, the introduction of autonomous vehicles is progressing. The driving requirements for such autonomous vehicles vary depending on the tasks given to them. For example, when transporting people or precision machinery, the vehicle must be able to travel with minimal shaking to prevent car sickness and damage, while when transporting soil and ore, the vehicle must be able to travel round trip in a short time to increase the amount of material transported per hour. When the required driving requirements differ, the control targets given to the autonomous vehicles (trajectory targets and target speed distributions expressed by nodes and branches/edges, etc.) differ, so it becomes necessary to design control targets every time the task changes, which imposes a large burden (engineering costs) on the operation site. In addition, when the control targets differ, the controller must be adjusted to achieve the control targets. If the controller is adjusted every time the control target changes, the burden on the operation site increases even more. On the other hand, if such adjustments are not made, a general-purpose setting that can be applied to various tasks is required, which results in a decrease in control accuracy and limitations on the tasks that can be performed compared to when adjustments are made for each task.
このような課題に対する従来技術としては、例えば、特許文献1に記載のものが知られている。特許文献1には、車両の走行状態に応じて、車速の制御の基準となる目標走行パターンを出力する車両走行支援装置であって、地図上に予め設定された区間を走行する度に、先行車両の有無、及び、後続車両の有無を含む車両の走行状態に基づいて分類して、前記区間内における車速又は先行車両との車間距離の変化を示す走行パターンを記憶し、記憶された走行パターンのうち、現在の車両の走行状態と同一の車両の走行状態に分類された前記走行パターンに基づいて、前記目標走行パターンを生成して出力する車両走行支援装置が開示されている。 A conventional technique for addressing such issues is known, for example, from Patent Document 1. Patent Document 1 discloses a vehicle driving support device that outputs a target driving pattern that serves as a reference for controlling the vehicle speed according to the vehicle's driving state, and that, each time the vehicle travels through a section previously set on a map, classifies the vehicle's driving state, including the presence or absence of a preceding vehicle and the presence or absence of a following vehicle, and stores a driving pattern that indicates the change in the vehicle speed or the distance from the preceding vehicle within the section, and generates and outputs the target driving pattern based on the driving pattern that is classified as the same vehicle driving state as the current vehicle driving state from among the stored driving patterns.
上記従来技術においては、自律移動体が過去に実施した作業の中で記録された走行パターンから制御目標である目標走行パターンを生成するため、同じ現場、或いは、同じ車両(自律移動体)での繰り返し運用における負担削減には有効である。 In the above conventional technology, a target driving pattern, which is the control target, is generated from driving patterns recorded during tasks performed by an autonomous vehicle in the past, so this is effective in reducing the burden of repeated operations at the same site or with the same vehicle (autonomous vehicle).
しかしながら、自律移動体の現場への新規導入時には、現場の状況や使用する車両、与えられる作業などの組合せに応じて個々に特有な状況になりやすいため、自律移動体が導入される現場と同一の状況の走行パターンを他の現場における過去の記録から取得することは困難である。すなわち、自律移動体の新規導入においては、制御目標などを新たに設定する必要があるため負担軽減が限定的となり、現場への導入に時間を要してしまうことが考えられる。 However, when an autonomous vehicle is newly introduced to a site, conditions are likely to be unique depending on the combination of the site conditions, the vehicle being used, the tasks given, etc., so it is difficult to obtain driving patterns for the same conditions as the site where the autonomous vehicle is being introduced from past records at other sites. In other words, when an autonomous vehicle is newly introduced, it is necessary to set new control targets, etc., so burden reduction is limited and it is thought that introduction to the site will take time.
本発明は上記に鑑みてなされたものであり、自律移動体の現場への新規導入の際の負担を軽減することができ、現場への導入を迅速に行うことができる移動体制御システムおよび移動体制御方法を提供することを目的とする。 The present invention has been made in consideration of the above, and aims to provide a mobile object control system and a mobile object control method that can reduce the burden when introducing new autonomous mobile objects to a site and can quickly introduce them to the site.
本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、移動体に移動先を決定し、移動先までの経路形状と制御目標を含む移動ルートを生成する移動先設定部と、前記移動先設定部で設定された移動ルートで使用する制御パラメータを設定するパラメータ設定部と、前記移動体が過去に自律走行した経路形状と制御目標と制御パラメータの組合せを少なくとも記録した走行記録を記憶した情報記憶部と、を備えた移動体制御システムにおいて、前記パラメータ設定部は、前記走行記録の経路形状と制御目標を分割した過去ブロックを生成し、同一の制御パラメータを対応させられる類似した過去ブロックにより形成される過去ブロック集合を生成し、前記移動ルートの経路形状と制御目標を分割した現在ブロックを生成し、現在ブロックの経路形状と制御目標と過去ブロック集合の経路形状と制御目標を比較し、現在ブロックと類似した過去ブロック集合に対応した制御パラメータを生成するものとする。 The present application includes multiple means for solving the above problem, but one example is a mobile body control system that includes a destination setting unit that determines a destination for a mobile body and generates a movement route including a path shape to the destination and a control target, a parameter setting unit that sets control parameters to be used on the movement route set by the destination setting unit, and an information storage unit that stores a driving record that records at least a combination of a path shape, a control target, and a control parameter along which the mobile body has autonomously traveled in the past, in which the parameter setting unit generates past blocks by dividing the path shape and control target of the driving record, generates a past block set formed of similar past blocks to which the same control parameters can be assigned, generates a current block by dividing the path shape and control target of the movement route, compares the path shape and control target of the current block with the path shape and control target of the past block set, and generates control parameters corresponding to the past block set similar to the current block.
本発明によれば、自律移動体の現場への新規導入の際の負担を軽減することができ、現場への導入を迅速に行うことができる。 The present invention can reduce the burden of introducing an autonomous mobile device to a site, and can quickly introduce the device to the site.
以下、本発明の実施の形態を図面を参照しつつ説明する。 The following describes an embodiment of the present invention with reference to the drawings.
本実施の形態における移動体制御システムは、自律動作が可能なロボットや車両などの移動体を制御対象とし、これら移動体の移動計画(座標、姿勢、速度などの時系列)を算出し、移動体がこの経路計画に従うように制御する。以下の説明においては、鉱山で稼働する自律走行車両を制御対象の自律移動体とする場合を例示して説明する。なお、本発明の適用対象は鉱山で稼働する移動体の移動経路生成に限られず、例えば、港湾における搬送車両の移動経路生成や、テーマパーク内を移動するロボットの経路生成などにも適用可能である。 The mobile object control system in this embodiment controls mobile objects such as robots and vehicles capable of autonomous operation, calculates movement plans (time series of coordinates, attitude, speed, etc.) for these mobile objects, and controls the mobile objects to follow this path plan. In the following explanation, an example is given of an autonomous vehicle operating in a mine as the autonomous mobile object to be controlled. Note that the application of the present invention is not limited to generating movement paths for mobile objects operating in mines, but can also be applied, for example, to generating movement paths for transport vehicles in ports and paths for robots moving in theme parks.
<第1の実施の形態>
本発明の第1の実施の形態を図1~図13を参照しつつ説明する。
First Embodiment
A first embodiment of the present invention will be described with reference to FIGS.
図1は、本実施の形態に係る移動体制御システムの全体構成を模式的に示す機能ブロック図である。 FIG. 1 is a functional block diagram that shows a schematic diagram of the overall configuration of a mobile object control system according to this embodiment.
図1において、移動体制御システムは、移動体位置取得部A101、移動先設定部A102、管制情報記憶部A103、パラメータ設定部A104、制御情報記憶部A105、及び、移動体制御部A106から概略構成されている。なお、図1においては、説明を簡単にするため、制御対象の移動体が1台である場合を例示して説明しているが、これに限られず、複数台の移動体を制御する場合においても本発明を適用することが可能である。 In FIG. 1, the mobile object control system is generally composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106. Note that in FIG. 1, for simplicity of explanation, an example is shown in which there is one mobile object to be controlled, but this is not limited to this, and the present invention can also be applied to cases in which multiple mobile objects are controlled.
図2は、自律移動体が現場である鉱山において稼働している様子を示す図である。図2においては、自律移動体B100と非自律移動体B102が混在し、それぞれを走行許可通路B101上で移動させることを想定している。 FIG. 2 is a diagram showing autonomous mobile bodies operating in a mine, which is a site. In FIG. 2, it is assumed that autonomous mobile bodies B100 and non-autonomous mobile bodies B102 are mixed and each of them moves along a travel-permitted path B101.
自律移動体B100は、例えば、土砂または鉱石などの積載物を積むことができるダンプトラックなどである。なお、自律移動体B100としては、ダンプトラックなどの所謂4輪車両に限定されるものではなく、例えば、差動二輪型のロボット、オムニホイール型のロボット、フォークリフト、牽引車両など様々な形態の自律移動体を扱うことが可能である。また、非自律移動体B102は、例えば、積込機能を備えた油圧ショベルなどである。 The autonomous mobile body B100 is, for example, a dump truck capable of carrying loads such as soil or ore. The autonomous mobile body B100 is not limited to so-called four-wheel vehicles such as dump trucks, and can handle various types of autonomous mobile bodies such as differential two-wheel robots, omni-wheel robots, forklifts, and towing vehicles. The non-autonomous mobile body B102 is, for example, a hydraulic excavator equipped with a loading function.
鉱山において実施される作業としては、例えば、自律移動体B100が非自律移動体B102によって積載物を積み込めるように指定位置まで移動し、積んでいる積載物を指定されたエリアで放土する作業などがある。 Examples of work performed in a mine include an autonomous mobile body B100 moving to a specified position so that a non-autonomous mobile body B102 can load a load, and then discharging the loaded load in a specified area.
自律移動体B100が移動すべき目標位置は、管理サーバB104が管理している。なお、管理サーバB104は鉱山内に設置されていても良いし、鉱山外の別の場所に設置されても良い。管理サーバB104が決定した目標位置は、鉱山内の無線通信回線B103を介して、自律移動体B100へと配信される。 The target position to which the autonomous mobile body B100 should move is managed by a management server B104. The management server B104 may be installed inside the mine, or may be installed in another location outside the mine. The target position determined by the management server B104 is distributed to the autonomous mobile body B100 via a wireless communication line B103 within the mine.
図3は、鉱山に設定される座標系を示す図である。また、図4は、自律移動体の構成を模式的に示す機能ブロック図である。 Fig. 3 shows a coordinate system set in the mine. Fig. 4 is a functional block diagram showing the configuration of an autonomous mobile unit.
図3に示すように、鉱山には自律移動体B100を対象とするXY座標系が設定されており、自律移動体B100の位置がX軸及びY軸の値(x,y)で表され、向き(例えば、自律移動体B100の前方向)がX軸とのなす角(θ)で示される。自律移動体B100には図示しない車輪(ホイール)の回転数を検出するエンコーダや、車体の回転速度、加速度を取得する慣性センサ(IMU:Inertial Measurement Unit)、LiDAR(Light Detection And Ranging)、GNSS(Global Navigation Satellite System)などの各種センサが備え付けられている。 As shown in Figure 3, an XY coordinate system is set up in the mine for the autonomous mobile body B100, with the position of the autonomous mobile body B100 represented by X-axis and Y-axis values (x, y), and the orientation (e.g., the forward direction of the autonomous mobile body B100) indicated by the angle (θ) with the X-axis. The autonomous mobile body B100 is equipped with various sensors, such as an encoder that detects the rotation speed of the wheels (not shown), an inertial sensor (IMU: Inertial Measurement Unit) that acquires the rotational speed and acceleration of the vehicle body, LiDAR (Light Detection And Ranging), and GNSS (Global Navigation Satellite System).
図4において、自律移動体B100は、記録部M01、通信部M02、センサM03、移動体制御部M04、自己位置演算部M05、アクチュエータM06から構成されている。 In FIG. 4, the autonomous mobile object B100 is composed of a recording unit M01, a communication unit M02, a sensor M03, a mobile object control unit M04, a self-position calculation unit M05, and an actuator M06.
記録部M01は、自律移動体B100が備えている演算部の記録装置であり、HDD(ハードディスクドライブ)、SSD(ソリッドステートドライブ)やメモリに相当する。記録部に各種制御プログラムや制御プログラムに利用されるパラメータ、管理サーバから配信された制御目標が記録される。 The recording unit M01 is a recording device for the computing unit provided in the autonomous mobile unit B100, and corresponds to an HDD (hard disk drive), SSD (solid state drive) or memory. The recording unit records various control programs, parameters used in the control programs, and control targets distributed from the management server.
通信部M02は、5GやLTE(Long Term Evolution)などに対応した無線通信装置であり、鉱山内の無線通信回線B103を介して、管理サーバB104と通信することができる。 The communication unit M02 is a wireless communication device compatible with 5G, LTE (Long Term Evolution), etc., and can communicate with the management server B104 via a wireless communication line B103 within the mine.
センサM03は、上述のエンコーダ、IMU、LiDAR、GNSSなど自律移動体B100に備え付けられているセンサに相当する。 Sensor M03 corresponds to sensors installed on the autonomous mobile unit B100, such as the encoder, IMU, LiDAR, and GNSS described above.
移動体制御部M04は、移動体の走行制御に関わる演算を行う機能であり、自律移動体B100に備え付けられた、図示しないコントローラにおいて実行される。移動体制御部M04の演算内容については、後に詳述する。 The mobile unit control unit M04 is a function that performs calculations related to the travel control of the mobile unit, and is executed in a controller (not shown) that is installed in the autonomous mobile unit B100. The calculations performed by the mobile unit control unit M04 will be described in detail later.
自己位置演算部M05は、自律移動体B100に備え付けられた複数のセンサの組み合わせで自身の位置(2次元平面上でのx,y座標)、および、方位を算出する機能である。自己位置演算部M05の機能は、移動体制御部M04と同様にコントローラにおいて実行される。自己位置演算部M05は、SLAM(Simultaneous Localization And Mapping)として知られている技術によって実現可能であるため、詳細な説明は省略する。 The self-position calculation unit M05 is a function that calculates the autonomous mobile unit B100's own position (x, y coordinates on a two-dimensional plane) and orientation by combining multiple sensors attached to the autonomous mobile unit B100. The functions of the self-position calculation unit M05 are executed in the controller, similar to the mobile unit control unit M04. The self-position calculation unit M05 can be realized by a technology known as SLAM (Simultaneous Localization And Mapping), so a detailed explanation will be omitted.
アクチュエータM06は、自律移動体B100の走行モータ、操舵機構、制動装置に相当する。 Actuator M06 corresponds to the driving motor, steering mechanism, and braking device of the autonomous mobile body B100.
自律移動体B100は、通信部M02を介して、管理サーバB104から制御目標と制御パラメータを受信し、これらを記録部M01に記録して、このデータに従って自身の動作を制御する。なお、通信周期が十分に速い場合、データを記録部M01に格納せずに、直接移動体制御部M04で利用する形態をとっても良い(図4に点線で図示)。 The autonomous mobile body B100 receives control targets and control parameters from the management server B104 via the communication unit M02, records them in the recording unit M01, and controls its own operation according to this data. Note that if the communication cycle is sufficiently fast, the data may not be stored in the recording unit M01 but may be used directly by the mobile body control unit M04 (shown by the dotted line in Figure 4).
ここで、移動体制御システムについて詳細に説明する。 Here, we'll explain the mobile control system in detail.
移動体制御システムは、自律移動体B100で取得した情報に基づいて、鉱山内の自律移動体B100の動作を管理するシステムであり、多くの処理が管理サーバB104にて実行される。 The mobile control system is a system that manages the operation of the autonomous mobile unit B100 within the mine based on information acquired by the autonomous mobile unit B100, and most of the processing is executed by the management server B104.
移動体制御システムは、前述のように、移動体位置取得部A101、移動先設定部A102、管制情報記憶部A103、パラメータ設定部A104、制御情報記憶部A105、移動体制御部A106から構成される。 As described above, the mobile object control system is composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106.
移動体位置取得部A101は、センサA101aと、自己位置演算部A101bとから構成される。なお、移動体位置取得部A101の各機能には、図4で示したセンサM03および自己位置演算部M05がそれぞれ対応する。 The mobile object position acquisition unit A101 is composed of a sensor A101a and a self-position calculation unit A101b. Each function of the mobile object position acquisition unit A101 corresponds to the sensor M03 and the self-position calculation unit M05 shown in FIG. 4.
管制情報記憶部A103は、走行許可通路B101の曲率、勾配、道幅などの地形のデータベースである地図情報と、自律移動体B100の最高速度、最大加速度、最小旋回半径などの車両スペックのデータベースである車体情報と、地形および制御目標により構成されるブロックとそのブロックに対応する制御パラメータのデータベースであるブロック情報を保持する。 The control information storage unit A103 holds map information, which is a database of the terrain of the travel-permitted passage B101, such as the curvature, gradient, and road width; vehicle information, which is a database of vehicle specifications of the autonomous mobile body B100, such as the maximum speed, maximum acceleration, and minimum turning radius; and block information, which is a database of blocks composed of the terrain and control targets and the control parameters corresponding to those blocks.
移動先設定部A102は、移動体位置取得部A101で算出した自律移動体B100の現在位置と、鉱山内の作業に応じて、自律移動体B100の目標位置を算出し、現在位置から目標位置までの走行許可通路B101上の移動ルートを設定し、制御目標を生成する。 The destination setting unit A102 calculates the target position of the autonomous moving body B100 based on the current position of the autonomous moving body B100 calculated by the moving body position acquisition unit A101 and the work being carried out within the mine, sets a movement route on the travel permission passage B101 from the current position to the target position, and generates a control target.
例えば、割り当てられる作業は積込、放土、メンテナンスなどであり、対応する目標位置は積込場、放土場、駐機場などである。鉱山内の作業の割り付けは、例えば、図示しないFMS(Fleet Management System)と連携することによって、実現される。なお、FMSの詳細な処理内容については説明を割愛する。 For example, the tasks that can be assigned are loading, dumping, maintenance, etc., and the corresponding target locations are loading areas, dumping areas, parking areas, etc. The allocation of tasks within the mine is achieved, for example, by linking with an FMS (Fleet Management System) not shown in the figure. Note that a detailed explanation of the processing content of the FMS is omitted here.
図5は、走行許可通路に設定される移動ルートの一例を示す図である。 Figure 5 shows an example of a travel route set in a travel-permitted passage.
図5に示すように、移動ルートの設定では、走行許可通路B101上で現在位置から目標位置までの移動ルートを探索する。経路探索にはダイクストラ法やA*法などの手法が提案されており、これらにより実現可能である。なお、ダイクストラ法やA*法の詳細な内容については説明を割愛する。 As shown in FIG. 5, when setting a travel route, a travel route from the current position to the target position is searched for on the travel-permitted passage B101. Methods such as the Dijkstra algorithm and the A* algorithm have been proposed for route search, and this can be realized by using these. Note that a detailed explanation of the Dijkstra algorithm and the A* algorithm will be omitted.
図6は、設定された移動ルートにおける軌道目標の設定の様子を示す図である。また、図7は、設定された移動ルートにおける速度目標の設定の様子を示す図である。 FIG. 6 shows how trajectory targets are set for a set movement route. Also, FIG. 7 shows how speed targets are set for a set movement route.
図6及び図7に示すように、制御目標の生成は、自律移動体B100が追従するべき軌道目標と速度目標を生成する。地形と車両スペックに基づき、異なる制御目的(効率重視、省エネ重視、安全重視など)ごとに最適化可能な生成手法としてTEBアルゴリズム(Timed Elastic Band Algorithm)やModel Predictive Trajectory Optimizationなどの手法が提案されており、これらにより実現可能である。なお、これらの手法の詳細な内容については説明を割愛する。 As shown in Figures 6 and 7, control target generation involves generating trajectory targets and speed targets to be followed by the autonomous mobile body B100. Methods such as the Timed Elastic Band Algorithm (TEB algorithm) and Model Predictive Trajectory Optimization have been proposed as generation methods that can be optimized for different control objectives (efficiency-oriented, energy-saving, safety-oriented, etc.) based on the terrain and vehicle specifications, and these can be used to achieve this. Note that a detailed explanation of these methods will not be given here.
パラメータ設定部A104は、ブロック検索部A104aとパラメータ生成部A104bとを有している。 The parameter setting unit A104 has a block search unit A104a and a parameter generation unit A104b.
図8は、設定された移動ルート及び軌道目標の分割の様子を示す図である。また、図9は、分割された各ブロックにおける速度目標の様子を示す図である。 Figure 8 shows the division of the set movement route and trajectory target. Figure 9 shows the speed target for each divided block.
図8に示すように、ブロック検索部A104aは、移動ルートと制御目標を分割してブロックを生成し、得られたブロックをブロック情報から検索し、対応する制御パラメータを取得する。パラメータ生成部A104bは、ブロックの地形と車両スペックと制御目標に基づいて制御目標に適した制御パラメータを生成する。 As shown in FIG. 8, the block search unit A104a divides the travel route and control targets to generate blocks, searches the resulting blocks from the block information, and obtains the corresponding control parameters. The parameter generation unit A104b generates control parameters suitable for the control targets based on the block's terrain, vehicle specifications, and control targets.
ブロックの分割は、例えば、道のり距離に対する勾配や道幅などの地形の変化が一定になる地点で分割することで、地形変化の傾向が共通するブロックを検索しやすくしてもよいし、道のり距離に対する軌道目標や速度目標の変化が一定になる地点で分割することで、制御目標の傾向が共通するブロックを検索しやすくしてもよい。軌道目標や速度目標の変化が一定となっている区間では自律移動体B100の状態が定常となるため、ブロック間での制御パラメータの切り替えが容易になる。 The blocks may be divided, for example, at points where the changes in terrain, such as gradient and road width, relative to the distance traveled become constant, making it easier to search for blocks with a common tendency for terrain changes, or at points where the changes in trajectory targets and speed targets relative to the distance traveled become constant, making it easier to search for blocks with a common tendency for control targets. In sections where the changes in trajectory targets and speed targets are constant, the state of the autonomous mobile body B100 becomes steady, making it easier to switch control parameters between blocks.
図10は、分割された各ブロックのブロック情報の一例を示す図である。また、図11は、ブロックの特徴と制御パラメータとの関係の一例を示す図である。 FIG. 10 shows an example of block information for each divided block. Also, FIG. 11 shows an example of the relationship between block characteristics and control parameters.
図10に示すように、管制情報記憶部A103に格納されたブロック情報には、分割された各ブロックの特徴として、経路形状(地形)、起動目標、速度目標などが記録されている。管制情報記憶部A103に記憶されている経路形状(地形)は、例えば、道のり距離、初期位置の道幅、道幅変化率、初期位置の曲率、曲率変化率、初期位置の勾配、勾配変化率で表される。軌道目標は、例えば、初期状態、状態変化率で表される。また、速度目標は、例えば、初期速度、速度変化率で表される。 As shown in FIG. 10, the block information stored in the control information storage unit A103 records the route shape (topography), starting target, speed target, etc. as the characteristics of each divided block. The route shape (topography) stored in the control information storage unit A103 is represented, for example, by the road distance, road width at the initial position, road width change rate, curvature at the initial position, curvature change rate, gradient at the initial position, and gradient change rate. The trajectory target is represented, for example, by the initial state and state change rate. Also, the speed target is represented, for example, by the initial speed and speed change rate.
図11に示すように、図10に示す特徴をもとに制御パラメータが対応づけられている。なお、図11においては、説明の簡単のためにブロックの2つの特徴で制御パラメータに対応づけられる場合を例示して表現しているが、これに限られず、例えば、2種類よりも多い特徴で制御パラメータに対応づけるように構成しても良い。 As shown in FIG. 11, the control parameters are associated based on the features shown in FIG. 10. Note that, for simplicity of explanation, FIG. 11 shows an example in which two features of a block are associated with the control parameters, but this is not limited thereto, and for example, more than two types of features may be associated with the control parameters.
ブロックの検索では、新たに得られた新規ブロックの特徴が、ある制御パラメータP1が対応する範囲に入る場合(図11の新規ブロックAの場合)、新規ブロックAには制御パラメータP1を対応させる。一方で、新規ブロックの特徴が、どの制御パラメータが対応する範囲にも入らない場合(図11の新規ブロックBの場合)、最も特徴が近い(数値の絶対差が小さい)関係にある既存ブロックが対応する制御パラメータと対応づけてもよいし、後述するように対応する制御パラメータを生成してもよい。 When searching for blocks, if the characteristics of the newly obtained new block fall within the range that a certain control parameter P1 corresponds to (as in the case of new block A in FIG. 11), control parameter P1 is associated with new block A. On the other hand, if the characteristics of the new block do not fall within the range that any control parameter corresponds to (as in the case of new block B in FIG. 11), the existing block with the closest characteristics (smallest absolute difference in numerical values) may be associated with the corresponding control parameter, or a corresponding control parameter may be generated as described below.
制御パラメータが対応する範囲は、同じ制御パラメータを使った場合に、ブロックの制御目標に対する追従精度が許容できる範囲内となるブロックの特徴の変動範囲を制御パラメータが対応する範囲としてもよいし、ブロックごとの制御パラメータが生成されている場合において、ブロックの制御目標に対する追従精度が許容できる範囲内となる制御パラメータの変動範囲を求め、その範囲が重なるブロックを集め、重なった範囲で平均化した制御パラメータと対応する範囲を、集めた各ブロックの特徴ごとに正規分布を算出し、信頼区間に基づいた範囲から設定してもよい。ここで、ブロックの制御目標に対する追従精度が許容できる範囲は自律移動体B100が割り当てられた作業を完遂できる精度を示しており、例えば、自律移動体B100が走行許可通路B101から逸脱することなく走行できる精度や自律移動体B100が到着予定時刻を達成できる精度などである。 The range of the control parameters may be the range of variation of the block features within which the tracking accuracy of the block to the control target is within an acceptable range when the same control parameters are used, or, when control parameters are generated for each block, the range of variation of the control parameters within which the tracking accuracy of the block to the control target is within an acceptable range may be determined, blocks with overlapping ranges may be collected, and a normal distribution may be calculated for each collected block feature to set the range corresponding to the averaged control parameter for the overlapping range from a range based on the confidence interval. Here, the acceptable range of tracking accuracy of the block to the control target indicates the accuracy with which the autonomous mobile body B100 can complete the assigned task, such as the accuracy with which the autonomous mobile body B100 can travel without deviating from the travel-permitted path B101 or the accuracy with which the autonomous mobile body B100 can achieve the scheduled arrival time.
ブロック情報には制御パラメータとそれに対応するブロックの特徴の範囲が格納されていることから、この対応関係を用いた移動ルートと制御目標の分割が可能である。まず、現在位置での地形、軌道目標、速度目標を初期値として、該当する制御パラメータの候補を検索する。次に、道のり方向に移動したときの地形、軌道目標、速度目標の変化を追跡し、制御パラメータの候補が1つになった地点までを1つのブロックとして分割する。分割した地点での地形、軌道目標、速度目標を初期値として同じ処理を繰り返し、ブロックを分割していく。初期値を使った検索で該当する制御パラメータがない場合は、該当する制御パラメータが現れるまで道のり方向に移動させ、見つかった地点までを1つのブロックとして分割する。このブロックは制御パラメータが割り当てられていないため、最も特徴が近い(数値の絶対差が小さい)関係にある既存ブロックが対応する制御パラメータと対応づけてもよいし、後述するように対応する制御パラメータを生成してもよい。この方法によれば、制御パラメータを割り当てる上で最小の分割回数とすることが可能であり、制御パラメータの生成が必要なブロックの個数も最小とすることが可能となる。 Since the block information stores the range of the control parameters and the characteristics of the corresponding blocks, it is possible to divide the movement route and the control target using this correspondence. First, the terrain, trajectory target, and speed target at the current position are set as initial values to search for candidates for the corresponding control parameters. Next, the changes in the terrain, trajectory target, and speed target when moving in the direction of the path are tracked, and the block is divided into one block up to the point where there is only one candidate for the control parameter. The same process is repeated using the terrain, trajectory target, and speed target at the divided point as initial values, and the block is divided. If no corresponding control parameter is found in the search using the initial values, the block is moved in the direction of the path until the corresponding control parameter appears, and the block is divided into one block up to the point where it is found. Since no control parameters are assigned to this block, the existing block with the closest characteristics (smallest absolute difference in numerical value) may be associated with the corresponding control parameters, or a corresponding control parameter may be generated as described below. This method makes it possible to minimize the number of divisions when assigning control parameters, and also minimizes the number of blocks for which control parameters need to be generated.
以上のような方法により、移動ルート全体に制御パラメータを割り当てることが可能になる。ここで、ブロック間で制御パラメータが異なる場合、切り替えにより制御入力が不連続になる可能性がある。例えば、PID制御を用いていた場合には、前ブロックの積分成分パラメータで蓄積された状態量と、新しいブロックでの積分成分パラメータをかけ合わせる場合に制御入力が不連続となり、改めて状態量が蓄積されるまで追従精度が下がってしまう。そこで、制御入力を連続的に変化させるために、ブロック間の境界前後に制御パラメータを線形に接続する緩衝区間を設ける。緩衝区間の長さは、緩衝区間での追従精度の低下が自律移動体B100が割り当てられた作業を完遂できる精度を下回らない範囲とする。 The above method makes it possible to assign control parameters to the entire movement route. Here, if the control parameters differ between blocks, there is a possibility that the control input will become discontinuous when switching. For example, if PID control is used, the control input will become discontinuous when the state quantity accumulated using the integral component parameters of the previous block is multiplied by the integral component parameters of the new block, and the tracking accuracy will decrease until the state quantity is accumulated again. Therefore, in order to change the control input continuously, a buffer section that linearly connects the control parameters is provided before and after the boundary between blocks. The length of the buffer section is set to a range in which the decrease in tracking accuracy in the buffer section does not fall below the accuracy at which the autonomous mobile body B100 can complete the assigned task.
制御パラメータの生成は、例えば、ベイズ最適化(BO:Bayesian Optimization)を利用してもよい。BOは、シミュレーションや実験を繰り返すことで、特定の評価指標cに基づき、この評価指標を最大化、もしくは、最小化するように、パラメータを効率的に探索するアルゴリズムである。本実施の形態における評価指標cは、自律移動体B100が割り当てられた作業を完遂するためにブロック内で達成するべき制御目的(制御目標に対する追従精度など)の達成度合を示しており、例えば、自律移動体B100が目標位置rに到達するまでの時間tendである場合が考えられる。 The control parameters may be generated using, for example, Bayesian Optimization (BO). BO is an algorithm that efficiently searches for parameters based on a specific evaluation index c by repeating simulations and experiments so as to maximize or minimize this evaluation index. In this embodiment, the evaluation index c indicates the degree of achievement of a control objective (such as tracking accuracy for a control target) that should be achieved within a block in order for the autonomous mobile body B100 to complete an assigned task, and may be, for example, the time tend until the autonomous mobile body B100 reaches the target position r.
ここで、目標位置rに到達するまでの時間tendを最小化する課題を例として、BOによる制御パラメータ調整方法を説明する。調整する制御パラメータをまとめた変数をベクトルρとする。評価指標cは目標位置rに到達するまでの時間tendなので、この値を最小化する最適なρ*を探す問題として最適化問題を与えることが出来る。一般に、この最適化問題は直接解くことが出来ない。BOでは、いくつかの解候補ρiを与えて実際に得られた評価指標cの値を確認しながら、評価指標cの関数形状を推定しながら、次の解候補ρiを算出する。 Here, we will explain the control parameter adjustment method using BO, taking as an example the task of minimizing the time tend to reach the target position r. The variable that summarizes the control parameters to be adjusted is the vector ρ. Since the evaluation index c is the time tend to reach the target position r, an optimization problem can be given as the problem of finding the optimal ρ* that minimizes this value. In general, this optimization problem cannot be solved directly. In BO, several solution candidates ρi are given, and the values of the evaluation index c that are actually obtained are confirmed, while the function shape of the evaluation index c is estimated and the next solution candidate ρi is calculated.
図12は、解候補の探索方法を模式的に示す図である。 Figure 12 is a diagram that shows a schematic diagram of a method for searching for solution candidates.
図12において、黒点は、これまでの解候補ρi(i=1,…,6)によって得られた評価値である。これまでに得られている解候補を利用すると、関数形状の推定値(実線)とその分散(破線)を算出することが出来る。分散は、これまでの解候補ρiが無い領域で大きな値をとる。関数形状の推定値、および、分散を考慮して次の解候補ρ7(図12中の「△」参照)を決定する。以上のような処理を行うことで、解候補ρiを総当たりで検証する場合に比べて、非常に効率的に制御パラメータの探索を行うことが出来る。 In Figure 12, the black dots are evaluation values obtained from the solution candidates ρi (i = 1, ..., 6) obtained so far. By using the solution candidates obtained so far, it is possible to calculate the estimated value of the function shape (solid line) and its variance (dashed line). The variance is large in areas where there are no solution candidates ρi so far. The next solution candidate ρ7 (see "△" in Figure 12) is determined by taking into account the estimated value of the function shape and the variance. By performing the above processing, it is possible to search for control parameters very efficiently compared to the case of exhaustively verifying the solution candidates ρi.
ここで、異なるブロックであっても、同じ制御パラメータで算出される評価指標cが同等、つまり、それぞれのブロック内で制御目的が同等に達成できる場合には、そのブロックと制御パラメータを対応させてブロック情報に格納してもよい。このとき、図11の制御パラメータP1のように、ある制御パラメータが対応する範囲が複数存在してもよい。 Here, even in different blocks, if the evaluation index c calculated with the same control parameters is equivalent, that is, the control objective can be achieved equally within each block, the block and the control parameters may be associated and stored in the block information. In this case, there may be multiple ranges that a certain control parameter corresponds to, such as control parameter P1 in Figure 11.
制御情報記憶部A105は、移動ルート上のブロックとそれに対応した制御パラメータをパラメータ設定部A104から取得し、格納する。 The control information storage unit A105 obtains the blocks on the movement route and the corresponding control parameters from the parameter setting unit A104 and stores them.
移動体制御部A106は、自己位置演算部A101bで取得した自律移動体B100の位置と方位を制御目標に追従させるアクチュエータM06への制御入力を算出する。制御入力を算出するために使用する制御パラメータは、自己位置演算部A101bで取得した現在位置に対応するブロックに対応した制御パラメータを制御情報記憶部A105から取得する。制御入力を算出する制御手法はPID制御やモデル予測制御(MPC:Model Predictive Control)などの手法が提案されており、これらにより実現可能である。なお、これらの手法の詳細な内容については説明を割愛する。 The mobile unit control unit A106 calculates a control input to the actuator M06 that causes the position and orientation of the autonomous mobile unit B100 obtained by the self-position calculation unit A101b to follow the control target. The control parameters used to calculate the control input are obtained from the control information storage unit A105, and correspond to the block corresponding to the current position obtained by the self-position calculation unit A101b. Proposed control methods for calculating the control input include PID control and model predictive control (MPC), and these can be used to realize the control. A detailed explanation of these methods will be omitted.
移動ルートが長くなる場合やブロックが細かく分割される場合に、制御情報記憶部A105内に格納されるブロックとそれに対応した制御パラメータが膨大となるため、自律移動体B100が搭載している記録装置(記録部M01)の記録容量が不足することが予想される。よって、移動ルート上のブロックとそれに対応した制御パラメータは管理サーバB104の記録装置で管理されることが望ましい。このような実行形態では、自己位置演算部A101bで取得した自律移動体B100の位置に基づいて、移動体制御部A106からの取得要求が予想されるブロックと制御パラメータを、管理サーバB104から自律移動体B100に配信し、必要な情報を自律移動体B100が受信しつつ走行するような運用になる。 When the travel route is long or the blocks are divided into small pieces, the number of blocks and the corresponding control parameters stored in the control information storage unit A105 will be enormous, and it is expected that the recording capacity of the recording device (recording unit M01) mounted on the autonomous mobile unit B100 will be insufficient. Therefore, it is desirable that the blocks on the travel route and the corresponding control parameters are managed by the recording device of the management server B104. In such an implementation form, based on the position of the autonomous mobile unit B100 acquired by the self-position calculation unit A101b, the blocks and control parameters that are expected to be requested by the mobile unit control unit A106 are delivered from the management server B104 to the autonomous mobile unit B100, and the autonomous mobile unit B100 travels while receiving the necessary information.
図13は、移動体制御システムの処理内容を示すフローチャートである。 Figure 13 is a flowchart showing the processing performed by the mobile control system.
図13において、移動体制御システムは、まず、自律移動体B100の現在位置を確認する(ステップS100)。この処理は、移動体位置取得部A101の機能により実現される。 In FIG. 13, the mobile object control system first checks the current position of the autonomous mobile object B100 (step S100). This process is realized by the function of the mobile object position acquisition unit A101.
続いて、取得した自律移動体B100の位置に基づいて、自律移動体B100に割付可能なタスクがあるか否かを判定する(ステップS110)。ステップS110での判定結果がNOの場合、すなわち、自律移動体B100に割付可能なタスクが無いと判定された場合には、自律移動体B100には放土、積載すべき積載物が無く、自律移動体B100を動かす必要が無いため、ステップS100の処理に戻る。 Next, based on the acquired position of the autonomous mobile body B100, it is determined whether there is a task that can be assigned to the autonomous mobile body B100 (step S110). If the determination result in step S110 is NO, that is, if it is determined that there is no task that can be assigned to the autonomous mobile body B100, there is no load to be released or loaded on the autonomous mobile body B100, and there is no need to move the autonomous mobile body B100, so the process returns to step S100.
また、ステップS100での判定結果がYESの場合、すなわち、自律移動体B100に割付可能なタスクが有ると判定された場合には、続いて、割り付けられたタスクに対応する目標位置rを決定する(ステップS120)。 Also, if the determination result in step S100 is YES, i.e., if it is determined that there is a task that can be assigned to the autonomous mobile body B100, then the target position r corresponding to the assigned task is determined (step S120).
なお、自律移動体B100が放土、積載すべき積載物が無い場合、すなわち、ステップS110の判定結果がNOの場合でも、その場に自律移動体B100が留まることで他の移動体の移動を妨げるような場合には、別の場所に移動させるタスクを生成しても良い。同様に、自律移動体B100がバッテリで駆動されるタイプの車両の場合、バッテリ残量が少なければ、充電ステーションへと移動するタスクを生成しても良いし、ガソリンで駆動されるタイプの車両の場合、ガソリン残量が少なければ、給油ステーションへと移動するタスクを生成しても良い。 Note that even if the autonomous moving body B100 does not have any cargo to be dumped or loaded, that is, if the determination result in step S110 is NO, if the autonomous moving body B100 staying there would hinder the movement of other moving bodies, a task to move it to another location may be generated. Similarly, if the autonomous moving body B100 is a battery-powered vehicle, a task to move it to a charging station may be generated if the battery level is low, and if the autonomous moving body B100 is a gasoline-powered vehicle, a task to move it to a refueling station may be generated if the gasoline level is low.
ステップS120の処理が終了すると、続いて、自律移動体B100の移動ルートを設定し(ステップS130)、制御目標を生成する(ステップS140)。なお、ステップS110,S120,S130,S140の処理は、管制情報記憶部A103に格納された情報を用いて移動先設定部A102の機能により実現される。 After the processing of step S120 is completed, the movement route of the autonomous moving body B100 is set (step S130), and a control target is generated (step S140). Note that the processing of steps S110, S120, S130, and S140 is realized by the function of the movement destination setting unit A102 using the information stored in the control information storage unit A103.
ステップS140の処理が終了すると、続いて、移動ルートと制御目標とをブロックに分割し(ステップS150)、移動ルート上のブロックをブロック情報で検索して、移動ルート上のすべてのブロックにおいてブロック情報から対応する制御パラメータが取得できるか否かを判定する(ステップS160)。なお、ステップS150,S160の処理は、管制情報記憶部A103に格納された情報を用いてブロック検索部A104aの機能により実現される。 After the processing of step S140 is completed, the movement route and the control target are divided into blocks (step S150), and the blocks on the movement route are searched for using block information to determine whether or not corresponding control parameters can be obtained from the block information for all blocks on the movement route (step S160). Note that the processing of steps S150 and S160 is realized by the function of the block search unit A104a using the information stored in the control information storage unit A103.
ステップS160での判定結果がNOの場合、すなわち、検索したブロックの中で対応する制御パラメータがブロック情報内に存在しないブロックがある場合には、続いて、対応する制御パラメータがブロック情報内に存在しないブロックに対して制御パラメータを生成する(ステップS161)。なお、この処理は、管制情報記憶部A103に格納された情報を用いてパラメータ生成部A104bの機能により実現される。 If the determination result in step S160 is NO, that is, if there is a block among the searched blocks for which the corresponding control parameters do not exist in the block information, then control parameters are generated for the blocks for which the corresponding control parameters do not exist in the block information (step S161). Note that this process is realized by the function of the parameter generation unit A104b using the information stored in the control information storage unit A103.
ステップS160での判定結果がYESの場合、又は、ステップS161の処理が終了した場合には、続いて、自律移動体B100の現在位置Xに対応するブロックの制御パラメータを設定する(ステップS170)。この処理は、制御情報記憶部A105の機能により実現される。なお、管理サーバB104にすべてのブロックと制御パラメータが記録されている場合には、ステップS170の処理のタイミングで自律移動体B100に必要な情報を提供する。 If the determination result in step S160 is YES, or if the processing of step S161 is completed, the control parameters of the block corresponding to the current position X of the autonomous mobile body B100 are then set (step S170). This processing is realized by the function of the control information storage unit A105. Note that if all blocks and control parameters are recorded in the management server B104, the necessary information is provided to the autonomous mobile body B100 at the timing of the processing of step S170.
続いて、ステップS170で設定した制御パラメータを利用してアクチュエータM06への制御入力を算出し(ステップS180)、処理を終了する。なお、このステップS180の処理は、移動体制御部A106の機能により実現される。 Then, the control input to the actuator M06 is calculated using the control parameters set in step S170 (step S180), and the process ends. Note that the process of step S180 is realized by the function of the mobile unit control unit A106.
以上のステップS100~S180の処理が制御周期ごとに繰り返される。制御周期ごとに処理を実施することで、現在位置が制御目標から乖離している場合であっても現在位置に基づいて制御目標が生成されるため、適切な制御目標が与えられる。また、現在位置が制御目標から乖離していない場合には、ステップS179,S180の処理を制御周期ごとに実行すれば十分であり、計算コストを削減することができる。 The above processing of steps S100 to S180 is repeated for each control cycle. By performing the processing for each control cycle, even if the current position deviates from the control target, a control target is generated based on the current position, and an appropriate control target is provided. Furthermore, if the current position does not deviate from the control target, it is sufficient to perform the processing of steps S179 and S180 for each control cycle, thereby reducing calculation costs.
以上のように構成した本実施の形態においては、自律移動体の現場への新規導入の際の負担を軽減することができ、現場への導入を迅速に行うことができる。すなわち、システム設計者がブロックとそれに対応する制御パラメータのデータベースを事前に準備しておけば、事業者は制御目標に適した制御設計を行う必要が無く、作業ごとに移動体を最適に制御することが出来る。特に、過去に生成されたブロックを再利用可能な場合(既存ブロックの並べ替えで表現できる場合や過去と同じ位置で同じ作業を割り当てられた場合)は制御パラメータ生成の工程が不要となるため、計算コストを削減しつつ同じ実行結果を得ることができる。 In this embodiment configured as described above, the burden of introducing a new autonomous mobile body to a site can be reduced, and the mobile body can be introduced quickly to the site. In other words, if the system designer prepares a database of blocks and their corresponding control parameters in advance, the operator does not need to perform control design suitable for the control objectives, and can optimally control the mobile body for each task. In particular, if blocks generated in the past can be reused (if they can be expressed by rearranging existing blocks or if the same task is assigned to the same position as in the past), the process of generating control parameters is unnecessary, and the same execution results can be obtained while reducing calculation costs.
<第2の実施の形態>
本発明の第2の実施の形態について図14を参照しつつ説明する。
Second Embodiment
A second embodiment of the present invention will be described with reference to FIG.
本実施の形態は、予めブロック情報に記録しておくことが困難な車両の性能変化や外乱などにも対応可能な移動体制御システムとするものである。本実施の形態において、第1の実施の形態と同様のものには同じ符号を付し、適宜説明を省略する。 This embodiment is a mobile control system that can handle changes in vehicle performance and disturbances that are difficult to record in advance in the block information. In this embodiment, the same reference numerals are used for the same parts as in the first embodiment, and descriptions will be omitted as appropriate.
鉱山では運搬中にこぼれた岩などの障害物が走行許可通路B101上に落ちている状況が発生し得る。また、鉱山で使用される自律走行車両は質量が大きいため、緊急時に使用される摩擦ブレーキを使った制動装置は1度の使用で熱を持ち、冷めるまで制動性能が低下して連続で使用できない制約がある。このような障害物や車両の性能変化は例外的に発生し、ブロック情報として記録しておくことが困難となる。そこで、本実施の形態では、第1の実施の形態における移動体制御システムの移動体制御部A106にモデル予測制御(MPC:Model Predictive Control)を導入して、ブロック情報に記録されていない障害物や車両の制動性能低下などの外乱や性能変化がある場合であっても制御目標に追従可能な制御入力の生成を可能とし、より確実に鉱山内で割り当てられた作業を達成することができるように構成する。 In mines, obstacles such as rocks that have fallen during transportation may land on the travel permission passage B101. In addition, because the autonomous vehicles used in mines have a large mass, the braking system using friction brakes used in emergencies heats up after one use, and the braking performance decreases until it cools down, so there is a restriction that it cannot be used continuously. Such obstacles and changes in vehicle performance occur exceptionally, making it difficult to record them as block information. Therefore, in this embodiment, model predictive control (MPC) is introduced to the mobile unit control unit A106 of the mobile unit control system in the first embodiment, making it possible to generate control inputs that can follow the control target even in the presence of disturbances or performance changes such as obstacles not recorded in the block information or decreased vehicle braking performance, and to more reliably accomplish the assigned work in the mine.
図1は、本実施の形態に係る移動体制御システムの全体構成を模式的に示す機能ブロック図である。 FIG. 1 is a functional block diagram that shows a schematic diagram of the overall configuration of a mobile object control system according to this embodiment.
図1において、移動体制御システムは、移動体位置取得部A101、移動先設定部A102、管制情報記憶部A103、パラメータ設定部A104、制御情報記憶部A105、及び、移動体制御部A106から概略構成されている。 In FIG. 1, the mobile object control system is roughly composed of a mobile object position acquisition unit A101, a destination setting unit A102, a control information storage unit A103, a parameter setting unit A104, a control information storage unit A105, and a mobile object control unit A106.
移動体制御部A106は、評価関数設定部A106aと予測制御部A106bとを有している。 The mobile unit control unit A106 has an evaluation function setting unit A106a and a prediction control unit A106b.
評価関数設定部A106aは、いくつかの評価関数とその評価関数に関わるパラメータの組合せによって評価関数を構築する。例えば、下記の(式1)~(式3)に示すように、各時刻における自律移動体B100の目標位置(xrk,yrk)と目標方位θrkをまとめたベクトルrkを定義し、自律移動体B100の現在状態(xk,yk,θk)と目標状態との偏差ek=Xk-rkを評価する関数(下記の(式1)の第1項)と、制御入力ukの大きさを評価する関数(下記の(式1)の第2項)を利用した評価関数Jを構築することが出来る。 The evaluation function setting unit A106a constructs an evaluation function by combining several evaluation functions and parameters related to the evaluation functions. For example, as shown in the following (Equation 1) to (Equation 3), it is possible to define a vector rk that combines the target position (xrk, yrk) and target orientation θrk of the autonomous mobile body B100 at each time, and to construct an evaluation function J that uses a function (first term in (Equation 1) below) that evaluates the deviation ek = Xk-rk between the current state (xk, yk, θk) of the autonomous mobile body B100 and the target state, and a function (second term in (Equation 1) below) that evaluates the magnitude of the control input uk.
上記の(式1)における記号Tは転置を表す記号である。また、行列Qは偏差ekに関わる重みパラメータ、行列Rは入力ukに関わる重みパラメータ、変数Nは評価区間(予測区間)を表すパラメータである。このように、評価関数設定部A106aには、複数のパラメータが含まれており、これらのパラメータは制御情報記憶部A105に記録されている。 The symbol T in the above (Equation 1) is a symbol representing transposition. Furthermore, the matrix Q is a weighting parameter related to the deviation ek, the matrix R is a weighting parameter related to the input uk, and the variable N is a parameter representing the evaluation interval (prediction interval). In this way, the evaluation function setting unit A106a includes multiple parameters, and these parameters are recorded in the control information storage unit A105.
なお、上記の(式1)は、評価関数Jの1例を示すものであり、これに限られるものではなく、例えば、下記の(式4)に示すように、最終ステップNだけを別の評価(終端コスト)とした評価関数を用いても良い。 Note that the above (Equation 1) shows one example of the evaluation function J, and is not limited to this. For example, an evaluation function in which only the final step N is a separate evaluation (terminal cost) may be used, as shown in the following (Equation 4).
予測制御部A106bは、MPCの考えに従って、評価関数設定部A106aで設定された評価関数Jの値を小さくするように制御入力ukを算出する。 The prediction control unit A106b calculates the control input uk in accordance with the concept of MPC so as to reduce the value of the evaluation function J set by the evaluation function setting unit A106a.
MPCでは、評価関数の区間(現時刻からNステップ先の挙動)までの評価関数Jを評価するため、自律移動体B100の将来の挙動を予測する必要がある。移動体のNステップ先までの挙動予測は上記の(式1)(或いは、(式4))を最小化するように求めた制御入力uを自律移動体B100の運動方程式に入力することで再帰的に計算することが出来る。 In MPC, in order to evaluate the evaluation function J up to the interval of the evaluation function (behavior N steps ahead from the current time), it is necessary to predict the future behavior of the autonomous mobile body B100. The behavior prediction of the mobile body up to N steps ahead can be calculated recursively by inputting the control input u found to minimize the above (Equation 1) (or (Equation 4)) into the equation of motion of the autonomous mobile body B100.
なお、MPCには、拘束条件を陽に扱うことができるという利点がある。例えば、図3に示した自律走行車両の場合、走行速度vは走行モータの回転速度限界と制動装置の制動限界により上限値、下限値が決まる。このようなアクチュエータの動作特性を拘束条件として組み込むことで、自律走行車両が実際に実行可能な制御入力を生成できるようになる。このような拘束条件を考慮したMPCは、下記の(式5)及び(式6)のように表現することができる。 MPC has the advantage of being able to explicitly handle constraint conditions. For example, in the case of the autonomous vehicle shown in Figure 3, the upper and lower limits of the driving speed v are determined by the rotational speed limit of the driving motor and the braking limit of the braking device. By incorporating the operating characteristics of such actuators as constraint conditions, it becomes possible to generate control inputs that the autonomous vehicle can actually execute. MPC that takes such constraint conditions into account can be expressed as shown in the following (Equation 5) and (Equation 6).
なお、上記の(式6)において、記号[s.t.]は[subject to]の略記であり、[s.t.]以降の条件のもと最適化問題を解くことを意味している。また、添え字のmaxとminとは、それぞれ上限値と下限値に相当する。一般に、設計を容易にするために、重みパラメータ行列Q,Rはそれぞれ対角行列で与えられる。例えば、Qはx座標の重みQx、y座標の重みQy、方位の重みQθを利用して表現することが出来る。 In addition, in the above (Equation 6), the symbol [s.t.] is an abbreviation of [subject to], and means that the optimization problem is solved under the conditions following [s.t.]. The subscripts max and min correspond to the upper and lower limits, respectively. Generally, to facilitate design, the weight parameter matrices Q and R are given as diagonal matrices. For example, Q can be expressed using the x-coordinate weight Qx, the y-coordinate weight Qy, and the orientation weight Qθ.
制御情報記憶部A105は、移動ルート上のブロックとそれに対応した制御パラメータとして重み行列Qi,Ri(iはブロックに与えられたインデックス)を格納している。 The control information storage unit A105 stores blocks on the movement route and the weight matrices Qi, Ri (i is an index assigned to the block) as the corresponding control parameters.
移動体制御部A106は、予測制御部A106bで算出される予測位置が含まれるブロックに基づいて、評価関数設定部A106aが制御パラメータを制御情報記憶部A105から取得し、評価関数を設定する。 In the mobile object control unit A106, the evaluation function setting unit A106a acquires control parameters from the control information storage unit A105 based on the block containing the predicted position calculated by the prediction control unit A106b, and sets the evaluation function.
以上により、MPCを導入し、拘束条件に反映することで外乱や性能変化に対応可能となる。ただし、軌道目標上に障害物がある環境では軌道目標を達成できないように、ブロックで想定された状況から乖離する場合があり、このとき、制御パラメータが適切でなくなる可能性がある。そこで、対処方法として、現在位置に基づいて移動ルート全体の制御目標を再生成し、制御パラメータを再設定する方法と、現在位置から想定された状況に復帰する位置までに緩衝区間を設ける方法がある。特に後者の方法は移動ルート全体に対する再計算が不要なため、計算コストが削減できる利点がある。 As described above, by introducing MPC and reflecting it in the constraint conditions, it becomes possible to respond to disturbances and performance changes. However, in an environment where there are obstacles on the trajectory target, there are cases where the situation deviates from the situation assumed in the block and the trajectory target cannot be achieved, and in this case, the control parameters may no longer be appropriate. As a countermeasure, there is a method of regenerating the control target for the entire movement route based on the current position and resetting the control parameters, and a method of setting up a buffer section from the current position to the position where the assumed situation will be restored. In particular, the latter method has the advantage of reducing calculation costs, as it does not require recalculation for the entire movement route.
ここで、緩衝区間の設定方法について説明する。MPCは前方で生じる状態量を予測して制御入力を算出することができるため、想定から乖離している現在位置付近の追従精度よりも想定された状況に復帰した後の前方での追従精度を高めるように、制御入力を調整することができる。そのために、緩衝区間における制御パラメータは、走行を安定させることに重点をおいた汎用的な制御パラメータを設定してもよいし、重みパラメータを所定の割合で低減し、予測区間全体における緩衝区間の影響度を下げる設定にしてもよい。そして、緩衝区間の長さは、予測区間において現在位置から制御目標との追従誤差が所定の割合を下回った位置までを設定してもよいし、現在位置から次のブロックの開始位置までを設定してもよい。 Here, a method for setting the buffer section will be explained. Since the MPC can predict state quantities occurring ahead and calculate the control input, it can adjust the control input so as to improve the tracking accuracy ahead after returning to the expected situation, rather than the tracking accuracy around the current position, which deviates from the assumption. For this reason, the control parameters in the buffer section may be set to general-purpose control parameters that focus on stabilizing driving, or the weighting parameters may be reduced by a specified percentage to reduce the influence of the buffer section on the entire prediction interval. The length of the buffer section may be set to a position in the prediction interval from the current position to the position where the tracking error with the control target falls below a specified percentage, or it may be set to from the current position to the start position of the next block.
その他の構成は第1の実施の形態と同様である。 The rest of the configuration is the same as in the first embodiment.
以上のように構成した本実施の形態においても第1の実施の形態と同様の効果を得ることができる。 The present embodiment, configured as described above, can achieve the same effects as the first embodiment.
また、移動体制御部A106にMPCを導入したので、ブロック情報に記録されていない、例外的に生じる障害物や車両の制動性能低下などの外乱や性能変化がある場合であっても制御目標に追従可能な制御入力の生成を可能とし、より確実に鉱山内で自律移動体B100に割り当てられた作業を達成する可能とする。 In addition, by introducing MPC into the mobile unit control unit A106, it is possible to generate control inputs that can track the control target even in the presence of disturbances or performance changes, such as exceptional obstacles or deterioration of the vehicle's braking performance that are not recorded in the block information, making it possible to more reliably accomplish the tasks assigned to the autonomous mobile unit B100 within the mine.
<付記>
なお、本発明は上記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲内の様々な変形例や実施の形態の組み合わせが含まれる。また、本発明は、上記の実施の形態で説明した全ての構成を備えるものに限定されず、その構成の一部を変更や削除したものも含まれる。また、上記の各構成、機能等は、それらの一部又は全部を、例えば集積回路で設計する等により実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。
<Additional Notes>
The present invention is not limited to the above-described embodiments, and includes various modified examples and combinations of the embodiments within the scope of the gist of the present invention. The present invention is not limited to those having all the configurations described in the above-described embodiments, and includes those in which some of the configurations are changed or deleted. The above-described configurations, functions, etc. may be realized in part or in whole by designing them as an integrated circuit, for example. The above-described configurations, functions, etc. may be realized in software by a processor interpreting and executing a program that realizes each function.
A101…移動体位置取得部、A101a…センサ、A101b…自己位置演算部、A102…移動先設定部、A103…管制情報記憶部、A104…パラメータ設定部、A104a…ブロック検索部、A104b…パラメータ生成部、A105…制御情報記憶部、A106…移動体制御部、A106a…評価関数設定部、A106b…予測制御部、B100…自律移動体、B101…走行許可通路、B102…非自律移動体、B103…無線通信回線、B104…管理サーバ、M01…記録部、M02…通信部、M03…センサ、M04…移動体制御部、M04…直接移動体制御部、M05…自己位置演算部、M06…アクチュエータ A101...mobile body position acquisition unit, A101a...sensor, A101b...self-position calculation unit, A102...destination setting unit, A103...control information storage unit, A104...parameter setting unit, A104a...block search unit, A104b...parameter generation unit, A105...control information storage unit, A106...mobile body control unit, A106a...evaluation function setting unit, A106b...prediction control unit, B100...autonomous mobile body, B101...permitted passage, B102...non-autonomous mobile body, B103...wireless communication line, B104...management server, M01...recording unit, M02...communication unit, M03...sensor, M04...mobile body control unit, M04...direct mobile body control unit, M05...self-position calculation unit, M06...actuator
Claims (9)
前記移動先設定部で設定された移動ルートで使用する制御パラメータを設定するパラメータ設定部と、
前記移動体が過去に自律走行した経路形状と制御目標と制御パラメータの組合せを少なくとも記録した走行記録を記憶した情報記憶部と、
を備えた移動体制御システムにおいて、
前記パラメータ設定部は、
前記走行記録の経路形状と制御目標を分割した過去ブロックを生成し、
同一の制御パラメータを対応させられる類似した過去ブロックにより形成される過去ブロック集合を生成し、
前記移動ルートの経路形状と制御目標を分割した現在ブロックを生成し、
現在ブロックの経路形状と制御目標と過去ブロック集合の経路形状と制御目標を比較し、
現在ブロックと類似した過去ブロック集合に対応した制御パラメータを生成することを特徴とする移動体制御システム。 a destination setting unit that determines a destination for the moving body and generates a moving route including a path shape and a control target to the destination;
a parameter setting unit that sets control parameters to be used on the movement route set by the movement destination setting unit;
an information storage unit that stores a travel record that records at least a route shape, a control target, and a control parameter combination along which the moving body has autonomously traveled in the past;
In a mobile object control system comprising:
The parameter setting unit is
A past block is generated by dividing the route shape and the control target of the driving record,
A set of past blocks is generated that is formed by similar past blocks to which the same control parameters can be assigned;
A current block is generated by dividing the path shape of the movement route and the control target;
Compare the path shape and control target of the current block with the path shape and control target of the past block set;
A mobile object control system that generates control parameters corresponding to a set of past blocks similar to a current block.
前記パラメータ設定部は、経路形状の道のり距離に対する変化率が一定となった地点で分割したブロックを生成することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
The mobile object control system is characterized in that the parameter setting unit generates blocks divided at points where a rate of change of the route shape with respect to the distance traveled becomes constant.
前記パラメータ設定部は、制御目標の道のり距離に対する変化率が一定となった地点で分割したブロックを生成することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
A mobile object control system, wherein the parameter setting unit generates blocks divided at points where a rate of change of the control target with respect to the travel distance becomes constant.
前記パラメータ設定部は、単一の過去ブロック集合に含まれるブロックとなった地点で分割したブロックを生成することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
The mobile object control system is characterized in that the parameter setting unit generates blocks divided at points where the blocks become included in a single past block set.
前記パラメータ設定部は、各現在ブロックの境界前後に緩衝区間を設け、緩衝区間に前後の現在ブロックに生成された制御パラメータを滑らかに接続する制御パラメータを生成することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
The parameter setting unit provides a buffer section before and after a boundary of each current block, and generates control parameters that smoothly connect the control parameters generated for the previous and next current blocks in the buffer section.
前記パラメータ設定部は、制御目標の達成度を示す評価指標を算出し、同一の制御パラメータで同等の評価指標となる過去ブロックを集めた過去ブロック集合を生成することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
A mobile object control system characterized in that the parameter setting unit calculates an evaluation index indicating the degree of achievement of a control goal, and generates a past block set that collects past blocks that have the same evaluation index with the same control parameters.
前記移動体に備えられたアクチュエータの状態量を検出するセンサの検出結果から前記移動体の自己位置を算出する自己位置演算部と、
前記移動先設定部で設定された移動ルートにおいて移動体の挙動を制御する移動体制御部とをさらに備え、
前記移動体制御部は、
移動体の状態量とアクチュエータへの指令値を用いて表現される1つ以上の関数とそれらの関数に対応する重みパラメータで定義される評価関数を構築する評価関数設定部と、
予測ステップ数までの移動体の挙動を予測する機能を有し、各予測ステップにおいて、前回ステップより前記評価関数設定部で定めた評価関数の値が減少するように制御入力を算出する予測制御部とを有し、
前記パラメータ設定部は、前記評価関数設定部で利用する重みパラメータであり、かつ、前記パラメータ設定部は、前記自己位置演算部で算出した移動体の現在位置と、前記予測制御部で算出した移動体の予測位置とに基づいて、重みパラメータを前記評価関数設定部に提供することを特徴とする移動体制御システム。 2. The mobile object control system according to claim 1,
a self-position calculation unit that calculates a self-position of the moving body based on a detection result of a sensor that detects a state quantity of an actuator provided in the moving body;
a moving object control unit that controls a behavior of the moving object along the moving route set by the moving destination setting unit,
The moving object control unit includes:
an evaluation function setting unit that constructs an evaluation function defined by one or more functions expressed using state quantities of the moving object and command values to the actuators and weight parameters corresponding to those functions;
a prediction control unit that has a function of predicting a behavior of a moving object up to a prediction step number, and calculates a control input in each prediction step so that a value of the evaluation function determined by the evaluation function setting unit is reduced from a value in a previous step;
A mobile object control system characterized in that the parameter setting unit is a weight parameter used in the evaluation function setting unit, and the parameter setting unit provides the weight parameter to the evaluation function setting unit based on the current position of the mobile object calculated by the self-position calculation unit and the predicted position of the mobile object calculated by the prediction control unit.
前記パラメータ設定部は、前記自己位置演算部で算出した移動体の現在位置から前方に緩衝区間を設け、緩衝区間での追従精度よりも緩衝区間の終端から前記予測制御部で算出した移動体の予測位置の終端までの追従精度を優先させる重みパラメータを緩衝区間に設定することを特徴とする移動体制御システム。 8. The mobile object control system according to claim 7,
The parameter setting unit provides a buffer zone ahead of the current position of the moving body calculated by the self-position calculation unit, and sets a weighting parameter for the buffer zone that prioritizes tracking accuracy from the end of the buffer zone to the end of the predicted position of the moving body calculated by the prediction control unit over tracking accuracy in the buffer zone.
設定された移動ルートで使用する制御パラメータを設定する手順とを有し、
前記制御パラメータを設定する手順は、
前記移動体が過去に自律走行した経路形状と制御目標と制御パラメータの組合せを少なくとも記録した走行記録の経路形状と制御目標を分割した過去ブロックを生成する手順と、
同一の制御パラメータを対応させられる類似した過去ブロックにより形成される過去ブロック集合を生成する手順と、
前記移動ルートの経路形状と制御目標を分割した現在ブロックを生成する手順と、
現在ブロックの経路形状と制御目標と過去ブロック集合の経路形状と制御目標を比較し、現在ブロックと類似した過去ブロック集合に対応した制御パラメータを生成する手順と
からなることを特徴とする移動体制御方法。 A step of determining a destination for a moving body and generating a moving route including a path shape and a control target to the destination;
and a step of setting control parameters to be used on the set movement route,
The step of setting the control parameters includes:
A step of generating past blocks by dividing a route shape and a control target of a travel record that records at least a combination of a route shape, a control target, and a control parameter along which the moving body has autonomously traveled in the past;
A procedure for generating a past block set formed by similar past blocks to which the same control parameters can be assigned;
A step of generating a current block by dividing the path shape of the movement route and the control target;
A method for controlling a moving object, comprising the steps of: comparing a path shape and control target of a current block with a path shape and control target of a set of past blocks; and generating control parameters corresponding to a set of past blocks similar to the current block.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023-122525 | 2023-07-27 | ||
| JP2023122525A JP2025018636A (en) | 2023-07-27 | 2023-07-27 | MOBILE BODY CONTROL SYSTEM AND MOBILE BODY CONTROL METHOD |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025022770A1 true WO2025022770A1 (en) | 2025-01-30 |
Family
ID=94374757
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2024/018370 Pending WO2025022770A1 (en) | 2023-07-27 | 2024-05-17 | Moving body control system and moving body control method |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2025018636A (en) |
| WO (1) | WO2025022770A1 (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005091112A (en) * | 2003-09-16 | 2005-04-07 | Equos Research Co Ltd | Traveling speed pattern estimation device and hybrid vehicle drive control device |
| JP2010188950A (en) * | 2009-02-20 | 2010-09-02 | Hitachi Automotive Systems Ltd | Vehicle traveling control device |
| WO2022200217A1 (en) * | 2021-03-26 | 2022-09-29 | Volkswagen Aktiengesellschaft | Segment-based driver analysis and individualized driver assistance |
-
2023
- 2023-07-27 JP JP2023122525A patent/JP2025018636A/en active Pending
-
2024
- 2024-05-17 WO PCT/JP2024/018370 patent/WO2025022770A1/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005091112A (en) * | 2003-09-16 | 2005-04-07 | Equos Research Co Ltd | Traveling speed pattern estimation device and hybrid vehicle drive control device |
| JP2010188950A (en) * | 2009-02-20 | 2010-09-02 | Hitachi Automotive Systems Ltd | Vehicle traveling control device |
| WO2022200217A1 (en) * | 2021-03-26 | 2022-09-29 | Volkswagen Aktiengesellschaft | Segment-based driver analysis and individualized driver assistance |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2025018636A (en) | 2025-02-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10062287B2 (en) | Contention avoidance | |
| US11713059B2 (en) | Autonomous control of heavy equipment and vehicles using task hierarchies | |
| CA2941985C (en) | Haulage vehicle and travel control system for the same | |
| CA2817818C (en) | System for autonomous path planning and machine control | |
| US20100228427A1 (en) | Predictive semi-autonomous vehicle navigation system | |
| AU2017383016B2 (en) | A method of operating a work machine on a worksite with a particular surface profile | |
| US12497080B2 (en) | Method and system for controlling autonomous or semi-autonomous vehicle | |
| CN111026133A (en) | Path planning method and vehicle, computer readable medium | |
| US12365334B2 (en) | Mobile body control method, mobile body control system, and storage medium | |
| US11279372B2 (en) | System and method for controlling a vehicle having an autonomous mode and a semi-autonomous mode | |
| WO2022209465A1 (en) | System, method, and work vehicle | |
| Svensson et al. | Traction adaptive motion planning and control at the limits of handling | |
| CN115116220A (en) | An unmanned multi-vehicle cooperative control method for loading and unloading scenes in mining areas | |
| WO2025022770A1 (en) | Moving body control system and moving body control method | |
| Svensson et al. | Traction adaptive motion planning at the limits of handling | |
| Caldas et al. | Autonomous driving of trucks in off-road environment | |
| JP7149366B1 (en) | Transportation vehicles and vehicle control systems | |
| JP2024173374A (en) | Mobile Control System | |
| WO2025211096A1 (en) | Control device, mobile body, control system, and control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24845154 Country of ref document: EP Kind code of ref document: A1 |