Method for controlling mobile body, control device for mobile body, mobile body, program product, and storage medium

CN122837486APending Publication Date: 2026-09-29HONDA MOTOR CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202610292419.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2025-03-28
Filing Date
2026-03-11
Publication Date
2026-09-29

AI Technical Summary

Benefits of technology

根据本发明,能够提供一种在移动体与多个特定人物一起移动的情况下,能够将移动体控制在适当的位置的技术。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122837486A_ABST
    Figure CN122837486A_ABST
Patent Text Reader

Abstract

The present application provides a kind of in the case where mobile body moves with multiple specific person, mobile body control method, mobile body control device, mobile body, program product and storage medium can be controlled to the appropriate location of mobile body.A kind of mobile body control method is the control method of mobile body leading multiple specific person, in the control method, the position of multiple specific person is determined, the position of pedestrian is determined, the actual weight of the multiple specific person is set respectively, the protection position of the specific person is calculated based on the position of specific person and the position of the pedestrian, the position for controlling the mobile body, i.e. the leading position is calculated based on the protection position and the actual weight of the specific person, the mobile body is controlled based on the leading position.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a control method for a mobile body, a control device for a mobile body, a mobile body, a program product, and a storage medium. Background Technology

[0002] Mobile bodies such as robots are known to move autonomously with specific individuals referred to as users. For example, Patent Document 1 discloses a mobile body that moves with multiple specific individuals. This technology estimates the desired speed of the multiple specific individuals and controls the mobile body at an average or slower desired speed.

[0003] Existing technical documents Patent documents Patent document 1: Japanese Patent Application Publication No. 2008-149399. Summary of the Invention

[0004] The problem that the invention aims to solve However, the aforementioned technology has the problem that it cannot control the moving object to the proper position because it is based on the desired speed and moves with multiple specific characters.

[0005] The present invention was made in view of the above-mentioned problems, and provides a technique for moving a mobile body to an appropriate position when the mobile body moves together with multiple specific characters.

[0006] means for solving problems According to the present invention, a method for controlling a moving object is provided, which is a method for controlling a moving object that leads multiple specific characters, characterized in that, in this control method, Determine the location of multiple specific individuals. Determine the location of the pedestrian. Each of the aforementioned specific individuals is assigned an actual weight. Based on the location of the specific person and the location of the pedestrian, calculate the protection position for the specific person. Based on the protected position and the actual weight of the specific person, the position used to control the moving body, i.e., the leading position, is calculated. The moving body is controlled based on the leading position.

[0007] Furthermore, according to the present invention, a control device for a moving body is provided, which is a control device for a moving body that guides multiple specific persons, characterized in that... The control device includes: The character identification department determines the location of multiple specific characters and the location of pedestrians; The setting department assigns actual weights to each of the aforementioned specific individuals; The calculation unit calculates a protection position for the specific person based on their position and the position of the pedestrian; and calculates a leading position for controlling the moving body based on the protection position and the actual weight of the specific person. A drive control unit controls the moving body based on the leading position.

[0008] Furthermore, according to the present invention, a mobile body is provided, characterized in that... The mobile body has: The aforementioned control device for the moving body; and A driving unit that enables the moving body to travel.

[0009] Furthermore, according to the present invention, a computer program product is provided, comprising a computer program, characterized in that... The computer program implements the above method when executed by the processor.

[0010] Furthermore, according to the present invention, a computer-readable storage medium is provided, which stores a computer program, characterized in that... The computer program implements the method described above when executed by the processor.

[0011] Invention Effects According to the present invention, a technique is provided that enables a mobile body to be controlled in an appropriate position when it moves together with multiple specific persons. Attached Figure Description

[0012] Figure 1 It is a three-dimensional diagram representing the overall structure of the moving object.

[0013] Figure 2 It is a top view illustrating the general layout of the moving unit of the vehicle.

[0014] Figure 3 This is a block diagram of the control system for the moving body.

[0015] Figure 4 This is a function block diagram representing the functions of the control unit.

[0016] Figure 5 It is a table representing the weight table.

[0017] Figure 6 It is a table that describes the specific features of multiple users and the calculation of their actual weights.

[0018] Figure 7 It is a top view illustrating the location of the mobile entity, multiple users, and the weight protection center.

[0019] Figure 8It is a top view that illustrates the location of the moving body, multiple users of the protected object, and the center of gravity of the weight protection.

[0020] Figure 9 This is a flowchart of the drive control process in the implementation method.

[0021] Explanation of reference numerals in the attached figures 100: Moving body; 125: Driving unit; 130: Control unit; 135: Storage device; 401: Person determination unit; 402: Setting unit; 403: Calculation unit; 404: Path generation unit; 405: Drive control unit; Cg: Weight protection center of gravity; GP: Protection position; PS: Pedestrian; SP: User. Detailed Implementation

[0022] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Furthermore, the following embodiments are not intended to limit the invention to which the technical solution pertains. Additionally, not all combinations of features described in the embodiments are necessarily essential to the invention. Two or more features from the plurality of features described in the embodiments may be arbitrarily combined. Furthermore, the same or identical structures are labeled with the same reference numerals, and repeated descriptions are omitted.

[0023] <Implementation Method> In the following embodiment, a miniature mobile vehicle, as an example of a mobile body, will be used for explanation. A miniature mobile vehicle is, for example, a small electric vehicle capable of carrying goods and following a user (also called a specific person) or guiding a user. However, this embodiment can also be applied to miniature mobile vehicles capable of carrying both goods and people. Furthermore, this embodiment is not limited to examples where the mobile body is an electric vehicle; it can also be applied to mobile bodies other than electric vehicles. Furthermore, in the following description, a mobile body with one driven wheel will be used as an example, but it may not necessarily have a driven wheel, and it is not limited to having only one driven wheel; it may have two or more.

[0024] Mobile vehicles like the aforementioned micro-mobile cars are useful as long as they can autonomously travel to serve one or more users. Furthermore, when serving multiple users, a mobile vehicle is useful as long as it can guide users to appropriate locations. Moreover, guidance doesn't necessarily have to be to a pre-set destination; it can simply travel in front of a registered user. Guidance can be traveling towards a destination pre-set by the user.

[0025] In this embodiment, the mobile device suppresses user anxiety by simultaneously providing services to the user and transmitting information to the user through an HMI (Human Machine Interface) or similar means.

[0026] Reference Figure 1 The structure of the movable body 100 in the embodiment will be described. Figure 1 It is a three-dimensional diagram representing the overall structure of the moving object. For example... Figure 1 As shown, the mobile body 100 of the embodiment includes a lower frame 111, an upper frame 112, a front display unit 113, multiple detection units 114, a sound output unit 115, a light-emitting unit 116, two drive wheels 120, and a driven wheel 121. Furthermore, the side where the drive wheels 120 are provided is the front.

[0027] The lower frame 111 holds the drive wheel 120 and driven wheel 121 in a rotatable position and houses the travel unit containing the drive wheel 120 and driven wheel 121. The upper part of the lower frame 111 has a loading space 118 for loading the user's cargo BG. The lower frame 111 houses the light-emitting unit 116. The area of ​​the lower frame 111 housing the light-emitting unit 116 is made of a light-transmitting material.

[0028] The upper frame 112 is configured to extend upward from the rear of the lower frame 111. The upper frame 112 supports the front display unit 113, the detection unit 114, and the sound output unit 115 at its upper end.

[0029] The front display unit 113 notifies the user of information through images. The front display unit 113 can be a liquid crystal display device or an organic EL (Electro Luminescence) display device, etc., that displays images. The front display unit 113 is located on the front side of the upper end of the upper frame 112. The front display unit 113 faces forward. The front display unit 113 notifies the user of information by displaying images mimicking a human face and text.

[0030] Multiple detection units 114 detect targets such as people and objects around the moving body 100. The detection unit 114 can be a digital camera with an optical system such as a lens and an image sensor. The detection unit 114 captures data of the surrounding environment and outputs image data. The detection unit 114 can also replace a camera, or in addition to a camera, it can have a device capable of detecting objects such as radar or optical radar (Light Detection and Ranging). Multiple detection units 114 are, for example, arranged at the front, back, left, and right sides of the upper end of the upper frame 112. Thus, the multiple detection units 114 can capture images of the moving body 100 from all directions (i.e., 360°). Furthermore, the placement and number of detection units 114 are not particularly limited and can be appropriately varied.

[0031] The sound output unit 115 notifies the user or other people in the vicinity of the sound output unit. The sound output unit 115 may be a sound output device such as a speaker.

[0032] The light-emitting unit 116 uses light to notify information to the user and others in the surrounding area. The light-emitting unit 116 may have one or more light-emitting elements such as LEDs (Light Emitting Diodes). The light-emitting unit 116 is arranged to surround the lower frame 111. The light-emitting unit 116 can also emit multiple colors. The light-emitting unit 116 can emit different colors of light by area or direction. That is, the light-emitting unit 116 may emit different colors of light in, for example, the front area 116F, the left area 116L, and the right area. Furthermore, the light-emitting unit 116 can switch between emitting and extinguishing light in each area. Moreover, the light emission can be controlled in even finer areas.

[0033] Two drive wheels 120 are respectively located at the front and lower left and right of the lower frame 111. The drive wheels 120 rotate around the axle by transmitting driving force from the driving unit.

[0034] Driven wheel 121 is located at the rear of the lower frame 111 and at the center of the lower part. Driven wheel 121 is configured to turn about a vertical axis extending in the vertical direction.

[0035] Figure 2 This is a schematic top view illustrating the driving unit 125 of the moving body 100. (Refer to...) Figure 2 The driving unit 125 of the moving body 100 will be described.

[0036] The driving unit 125 is located at the lower part of the lower frame 111. The driving unit 125 has two drive wheels 120, driven wheels 121, a drive mechanism 122, a motor 123a, a motor 123b, and a battery 124.

[0037] If power is supplied from battery 124, motors 123a and 123b function as drive sources, supplying driving force to drive mechanism 122. Drive mechanism 122 transmits the driving force supplied from motors 123a and 123b to drive wheel 120. Thus, drive mechanism 122 rotates drive wheel 120, causing the moving body 100 to move forward or backward. Drive mechanism 122 generates a rotational difference between motors 123a and 123b, allowing the moving body 100 to travel in either the left or right direction. Drive mechanism 122 achieves various turns of the moving body 100, such as turning in place, gentle turns, and alternating forward and reverse turns, by varying the magnitude of the rotational difference.

[0038] Figure 3 This is a block diagram of the control system for the mobile body 100. (Refer to...) Figure 3 The control system of the moving body 100 is described. For example... Figure 3As shown, the mobile body 100 also includes a control unit 130, an operation unit 132, an upper surface display unit 131, a voice input unit 133, a GNSS sensor 134, a storage device 135, and a communication unit 136.

[0039] Control unit 130 is an example of a control device, also known as an ECU (Electronic Control Unit), and can be a computer. Control unit 130 is responsible for the overall control of the moving body 100. Control unit 130 includes one or more processors, such as a CPU (Central Processing Unit), storage devices such as semiconductor memory, and interfaces for external devices.

[0040] Instead of a CPU, or in addition to a CPU, a processor can also be an MPU (Microprocessing Unit), a GPU (Graphics Processing Unit), an NPU (Neural Processing Unit), or a QPU (Quantum Processing Unit). The processor implements the various functions of the control unit 130 by reading and executing computer programs stored in storage devices, etc.

[0041] Some or all of the functions of the control unit 130 may also be implemented by one or more circuits, including ASIC (Application Specific Integrated Circuit) and PLD (Programmable Logic Device) including FPGA (Field Programmable Gate Array).

[0042] Storage devices can be, for example, RAM (Random Access Memory). The storage device stores programs executed by the processor, data used by the processor during processing, etc. Multiple processors, storage devices, and interfaces can also be configured according to the functions of the mobile body 100, and each group can communicate with each other.

[0043] The control unit 130 acquires output information such as image information from the detection unit 114, user input information acquired by the operation unit 132, and sound information output by the sound input unit 133, and performs processing corresponding to each piece of information. The control unit 130 performs motion control including the movement of the moving body 100 by controlling the motors 123a and 123b of the driving unit 125. The control unit 130 notifies the user or people in the vicinity of the device. For example, the control unit 130 notifies the user by controlling the display of images shown on the front display unit 113 and the upper surface display unit 131. The control unit 130 may also notify the user by emitting light from the light-emitting unit 116. The control unit 130 may also notify the user by emitting sound from the sound output unit 115. The control unit 130 may also perform processing on the image information from the detection unit 114 using a machine learning model (e.g., a deep neural network) for image recognition. Additionally, the control unit 130 may also perform processing on the sound information from the sound input unit 133 using a machine learning model (e.g., a deep neural network) for sound recognition.

[0044] The upper surface display unit 131 can be a display device capable of displaying images. The upper surface display unit 131 is disposed on the upper surface of the upper end of the upper frame 112. Based on image information acquired from the control unit 130, the upper surface display unit 131 displays images and text related to information notified to the user. For example, the upper surface display unit 131 displays an operation screen for receiving operations from the user.

[0045] The operation unit 132 may be an input device such as a touch panel or keyboard. For example, the operation unit 132 may be provided on the display surface of the upper surface display unit 131. The operation unit 132 accepts input from the user and outputs it to the control unit 130.

[0046] The voice input unit 133 may be a microphone or the like. The voice input unit 133 picks up sounds from the user of the mobile body 100 and the surrounding environment, and outputs them to the control unit 130.

[0047] GNSS sensor 134 receives GNSS signals from satellites to detect the current position of moving body 100. Furthermore, GNSS is an abbreviation for Global Navigation Satellite System.

[0048] Storage device 135 includes a non-volatile recording medium for storing various types of data. Storage device 135 can be an HDD (Hard Disk Drive) or an SSD (Solid State Drive), etc. Storage device 135 can store programs executed by the processor, parameters required for program execution, and data of objects processed by the processor. Storage device 135 can store various parameters (such as learned parameters and hyperparameters of deep neural networks) of machine learning models used for sound recognition and image recognition executed by control unit 130.

[0049] The communication unit 136 communicates with external devices such as the user's communication terminal 140 via wireless communication, such as Wi-Fi and fifth-generation mobile communication.

[0050] Figure 4 This is a function block diagram illustrating the functions of the control unit 130. (Refer to...) Figure 4 The functions of the control unit 130 will be explained.

[0051] The control unit 130 includes a character determination unit 401, a setting unit 402, a calculation unit 403, a path generation unit 404, and a drive control unit 405. The control unit 130 can, for example, read a program for position change processing from the storage device 135 and execute it to implement the character determination unit 401, the setting unit 402, the calculation unit 403, the path generation unit 404, and the drive control unit 405.

[0052] The person determination unit 401 determines one or more specific persons, namely users (also referred to as specific persons), and determines the user's position and generates position information related to the position. The position referred to here can be the user's current position. The user's position can be a position with the moving body 100 as the origin. For example, the user's position can also be determined in a rotating coordinate system with the moving body 100 as the origin, setting the distance from the moving body 100 and the front of the moving body 100 as 0°. Alternatively, the user's position can be determined in an orthogonal coordinate system with the moving body 100 as the origin. The position information can include information related to the user's speed, the orientation of the user's face or body, etc. The user is a person leading or following the moving body 100. The person determination unit 401 can determine the user, for example, by performing facial authentication on an image acquired from the detection unit 114. The person determination unit 401 can also determine the user through palm vein authentication, iris authentication, fingerprint authentication, etc.

[0053] The person determination unit 401 determines other pedestrians who are not following or leading objects. In other words, pedestrians can also be considered as people who are not users but exist around the moving body 100. The person determination unit 401 determines the positions of other pedestrians. The person determination unit 401 outputs position information related to the positions of one or more users and the positions of pedestrians to the setting unit 402, the calculation unit 403, the path generation unit 404, and the drive control unit 405.

[0054] The setting unit 402 sets actual weights for one or more users respectively. For example, the setting unit 402 sets actual weights based on the user's feature values ​​(also called attributes). The setting unit 402 may determine the user's feature values ​​based on one or more images acquired from the detection unit 114.

[0055] The setting unit 402 can determine the user's characteristic parameters based on the user's movement speed. For example, the setting unit 402 calculates the user's walking speed and other movement speeds based on multiple images. If the movement speed is below (or less than) a preset threshold speed for a preset threshold time or longer than the threshold time, the setting unit 402 can determine the user as having a specific attribute.

[0056] The setting unit 402 can determine the user's characteristic quantity based on the items the user carries. For example, the setting unit 402 can detect objects attached to or held by the user as carried items based on an image. The setting unit 402 can then determine whether the user has a specific attribute based on this object. For example, the setting unit 402 can determine the presence or absence of a carried item as a characteristic quantity of the user if the user carries a cane, a white cane, a stroller, a wheelchair, etc., based on an image.

[0057] The setting unit 402 can extract a user's height as a feature quantity of the user. For example, the setting unit 402 can detect the height of multiple users based on an image. The setting unit 402 can determine the attribute of the user with the shortest height among the multiple users as a specific attribute.

[0058] In addition, the setting unit 402 can also change the setting of the actual weight based on the feature quantity in both offline and online modes.

[0059] The setting unit 402 may determine features such as the user's age, the presence or absence of a disability, the presence or absence of a cane, a white cane, a stroller, pregnancy, or a wheelchair, for example, offline or based on an image. The setting unit 402 may also extract weights associated with these features from a pre-set weight table.

[0060] Figure 5 It is a table representing the weight table. Figure 6This is a table illustrating the specific feature values ​​and actual weight calculations for multiple users. The feature values ​​in the weight table are related to temporary weights and protection radii. (Refer to setting unit 402) Figure 5 The weight table shown is used to calculate the actual weight Wm (m = 1, 2, ...).

[0061] The setting unit 402 extracts feature values ​​of the user SP. Here, the setting unit 402 can extract feature values ​​of the user SP based on the image acquired from the detection unit 114. Alternatively, the setting unit 402 can extract feature values ​​from a feature value database or similar source that associates feature values ​​with pre-registered user SPs. The feature value database is, for example, pre-stored in the storage device 135.

[0062] The setting unit 402 extracts all temporary weights corresponding to the feature values ​​of each user SP. The setting unit 402 extracts the largest protection radius among the protection radii corresponding to the feature values ​​of each user SP. The setting unit 402 calculates the product of all extracted temporary weights and the protection radius as the actual weight Wm.

[0063] Here, the case of user SP1, who has the characteristics of being 25 years old and having a wheelchair, will be explained. Based on the characteristics, the setting unit 402 extracts 1.0 (equivalent to being 25 years old) and 2.2 (equivalent to having a wheelchair) as temporary weights. Additionally, the setting unit 402 extracts the maximum value of the protection radii associated with user SP1's characteristics, 2.5 and 3.5, i.e., 3.5, as the protection radius. Based on the extracted temporary weights and the protection radius, the setting unit 402 calculates 7.7 (=1.0×2.2×3.5) as the actual weight W1 for user SP1. The setting unit 402 calculates the actual weight W1 for all users SP.

[0064] In addition, the setting unit 402 can also determine the user's actual weight based on a weight database that is pre-stored in the storage device 135 and associated with the user and the weight.

[0065] The setting unit 402 detects, for example, the straightness of a user's walk, the curvature of the user's walk, the magnitude of the user's acceleration and deceleration, the following speed of the user following the moving body 100, and the user's average speed as feature quantities in an online environment. The setting unit 402 can calculate the actual weight using a weight function preset to calculate the actual weight based on these feature quantities. Furthermore, the setting unit 402 can also use predefined feature quantities based on the detected feature quantities.

[0066] The setting unit 402 outputs the determined actual weights of each user to the calculation unit 403.

[0067] The calculation unit 403 calculates various values ​​required for path generation of the mobile body 100. For example, the calculation unit 403 calculates the leading position for the leading mobile body 100. Specifically, the calculation unit 403 can calculate the leading position based on the positions of one or more users, the positions of pedestrians, and the actual weight Wm, etc. The calculation of the leading position will be explained below.

[0068] First, the calculation unit 403 calculates the protected position GP for each user based on the user's location and the pedestrian's location. Specifically, the calculation unit 403 calculates the protected position GP based on the following formula (1), where n is the number of pedestrians.

[0069] [Number 1]

[0070] The GuardDist of equation (1) is defined by the following equation (2).

[0071] [Number 2]

[0072] d in (Equation 2) ui This is the distance between user SP and pedestrian PS. (min) i d ui d ui The minimum value.

[0073] The influence of equation (1) I i The effect of time t on the following equation (3) I it .

[0074] [Number 3]

[0075] In Equation 3, η is a weighting parameter, which can be a value set based on experience. For example, η can be 1.0.

[0076] The weighted composite vector w in equation (3) ui and unit vector u ui Defined by the following equation (4).

[0077] [Number 4]

[0078] λ in equation (4) im This is a weighting parameter, which can be a value set based on experience. For example, λ im It can be 0.5.

[0079] The unit relative position vector e of the position of the i-th pedestrian PSi relative to the user SP in equations (1) and (4) uiDefined by the following equation (5).

[0080] [Number 5]

[0081] Position P in equation (5) u and location P i These are the positions of the u-th user SP and the ith pedestrian PSi, respectively.

[0082] Next, the calculation unit 403 calculates the leading position based on the protection position GPm of multiple users SPm and the actual weight Wm of each user SPm. First, the calculation unit 403 calculates the centroid of the protection position GPm that takes into account the actual weight Wm, i.e., the weight protection centroid Cg, based on equation (6). According to equation (6), the weight protection centroid Cg can be the product of the protection position GPm of each user SPm and the actual weight Wm, i.e., the centroid of the weight protection position (which can also be called the arithmetic mean).

[0083] [Number 6]

[0084] Next, the calculation unit 403 calculates the determination cost Vi for whether to exclude a user from the protected object based on the following formula (7). Furthermore, the location of a user excluded from the protected object is not used in the calculation of the preceding location.

[0085] [Number 7]

[0086] Distance d gi This is an example of the first distance, representing the distance between the weighted protection centroid Cg and the protection location GP of each user SP. Distance d ri This is an example of the second distance, representing the distance between the moving body 100 and the protected position GP of each user SP. (Further details will follow.) Figure 7 Only the distance d of user SP2 is recorded. g2 and distance d r2 Weights α and β are pre-defined weights. For example, weight α can be a value that depends on the width of the area that the mobile body 100 can protect, based on the size of the mobile body 100, HMI, mechanism, etc. If the mobile body 100 can protect an area larger than its current location, weight α can be reduced. Weight β can be a value that depends on the motion performance of the mobile body 100. For example, if the motion performance of the mobile body 100 is low, a larger weight β is better. In other words, if the motion performance of the mobile body 100 is low, by increasing weight β, the mobile body 100 excludes users located at a distance from the protected area.

[0087] The calculation unit 403 compares the determination cost Vi and the threshold cost ThV, and performs a determination, i.e., an exclusion determination, on whether to include each user SP as a protection object, that is, whether to use the position of each user SP in the calculation of the leading position. The calculation unit 403 excludes user SPs whose determination cost Vi is higher than or greater than the threshold cost ThV from the protection objects.

[0088] Figure 7 It is a top view illustrating the location of the mobile entity, multiple users, and the weight protection center. Figure 8 It is a top view that illustrates the location of the moving body, multiple users of the protected object, and the center of gravity of the weight protection. Figure 7 as well as Figure 8 The circle shown by the dashed line is a circle with the actual weight as its radius, which is the product of the temporary weight and the protection radius.

[0089] For example, in Figure 7 In the example shown, the calculation unit 403 calculates the protection location, the weighted protection center, and the location of the mobile body 100 based on the locations of the four users. The calculation unit 403 compares the determination cost Vi calculated based on the protection location, the weighted protection center, and the location of the mobile body 100 with the threshold cost ThV to determine the user SP to be excluded. Here, the calculation unit 403 excludes user SP4 from the protection list.

[0090] Therefore, as Figure 8 As shown, the number of users subject to protection is three. Furthermore, the calculation unit 403 determines the user SP to be excluded based on the positions of the remaining three users SP who have been excluded from protection. Figure 8 In the example shown, the calculation unit 403 determines that there is no user SP that should be excluded.

[0091] In this way, the calculation unit 403 repeatedly performs exclusion determination processing on the remaining user SPs that have been excluded from the protection objects. The calculation unit 403 compares the determination cost Vi and the threshold cost ThV, and repeatedly performs the exclusion determination processing until the user SPs to be excluded from the protection objects disappear. The calculation unit 403 compares the determination cost Vi and the threshold cost ThV. If the user SPs to be excluded from the protection objects disappear, the calculation unit 403 sets the current weight protection center Cg as the leading position of the moving body 100 and outputs it to the path generation unit 404.

[0092] The path generation unit 404 generates a movement path from the current position of the moving body 100 to the leading position calculated by the calculation unit 403. The path generation unit 404 outputs the generated movement path to the drive control unit 405.

[0093] The drive control unit 405 controls motors 123a and 123b based on the movement path, so that the moving body 100 moves forward to the guide position.

[0094] Figure 9 This is a flowchart of the drive control process in the implementation method. For example, the control unit 130 performs drive control processing by reading and executing a program for drive control processing stored in the storage device 135.

[0095] In the drive control processing, in step S901, the person determination unit 401 determines one or more users who are leading or following. The person determination unit 401 can determine the user based on the image acquired from the detection unit 114 and determine the position of the user. Furthermore, the person determination unit 401 can also determine multiple users. Afterwards, the person determination unit 401 proceeds to step S902.

[0096] In step S902, the person determination unit 401 determines the positions of pedestrians around the user. The person determination unit 401 can determine the positions of pedestrians based on the images acquired from the detection unit 114. Afterwards, the person determination unit 401 outputs information such as the positions of the user and pedestrians to the setting unit 402, the calculation unit 403, and the path generation unit 404, and proceeds to step S903.

[0097] In step S903, the setting unit 402 sets the actual weight for each user. For example, the setting unit 402 extracts the user's feature values ​​based on the image acquired from the detection unit 114. Based on these feature values, the setting unit 402 can extract temporary weights and a protection radius, and set the actual weight for each user. Afterward, the setting unit 402 outputs the actual weights to the calculation unit 403, and proceeds to step S904.

[0098] In step S904, the calculation unit 403 calculates the protection position for each user. For example, the calculation unit 403 can calculate the protection position based on the position of each user and the position of pedestrians. After that, the calculation unit 403 proceeds to step S905.

[0099] In step S905, the calculation unit 403 calculates the weight protection center of gravity. The calculation unit 403 can calculate the weight protection center of gravity based on the protection location and actual weight of each user. After that, the calculation unit 403 proceeds to step S906.

[0100] In S906, the calculation unit 403 calculates the distance d between the protection location of each user and the center of gravity of the weighted protection. gi Proceed to step S907.

[0101] In S907, the calculation unit 403 calculates the distance d between the protected position of each user and the moving body 100. ri Proceed to step S908.

[0102] In S908, the calculation unit 403 calculates the decision cost Vi for each user. The calculation unit 403 can calculate based on weight α, weight β, and distance d. gi and distance d ri The cost Vi for determination is calculated. After that, the calculation unit 403 proceeds to step S909.

[0103] In S909, the calculation unit 403 compares the decision cost Vi of each user with the threshold cost ThV and proceeds to step S910.

[0104] In S910, the calculation unit 403 performs an exclusion determination based on the comparison result of the determination cost Vi and the threshold cost ThV, determining whether there are users to be excluded from the protection object. The calculation unit 403 can determine users whose determination cost Vi is higher than or greater than the threshold cost ThV as users to be excluded from the protection object. If the calculation unit 403 determines that there are users to be excluded from the protection object (S910: Yes), it returns to step S905. Then, the calculation unit 403 repeats step S905 for the remaining users who were excluded from the protection object. On the other hand, if the calculation unit 403 determines that there are no users to be excluded from the protection object (S910: No), it proceeds to step S911.

[0105] In step S911, the calculation unit 403 sets a leading position. The calculation unit 403 can set the weight protection center of the last calculated exclusion object as the leading position. The calculation unit 403 outputs the set leading position to the path generation unit 404 and proceeds to step S912.

[0106] In step S912, the path generation unit 404 generates a movement path from the current position of the moving body 100 to a leading position. The path generation unit 404 outputs the movement path to the drive control unit 405, and proceeds to step S913.

[0107] In S913, the drive control unit 405 controls motors 123a and 123b based on the movement path, so that the moving body 100 moves forward to the guide position.

[0108] Therefore, the control unit 130 ends the drive control process.

[0109] As described above, the implementation calculates the leading position for controlling the mobile body 100 based on the position of the leading user, the position of the pedestrian, and the actual weight. Therefore, even when the mobile body 100 moves with multiple users, the implementation can control the mobile body 100 to an appropriate leading position corresponding to the user's position.

[0110] The implementation method calculates the leader position based on the weighted protection center of gravity, which is the center of gravity of the product of the user's protection position and the actual weight, thus enabling the calculation of a more appropriate leader position.

[0111] The implementation method is based on the distance d between the weight protection center and the user's protection location. gi and the distance d between the mobile body 100 and the user's protected position. ri The system determines whether to use the user in the calculation of the preceding position or exclude them. Thus, the implementation method can appropriately select the users to be protected.

[0112] The implementation method is based on a weighted average of α and d depending on the width of the area that the moving body 100 can protect. gi The product of the distance d and the weight β depending on the motion performance of the moving body 100. ri The product of these factors is used to determine whether to exclude a user. Therefore, the implementation method can consider the mobile body 100 to more appropriately select the user to be protected.

[0113] The implementation calculates the leading position based on the position of the remaining users after excluding the excluded users, thus enabling the calculation of a more appropriate leading position based on the position of the user to be protected.

[0114] The implementation method repeatedly performs the exclusion decision until there are no users who should be excluded. Therefore, the implementation method can calculate a more appropriate leading position based on the location of the user to be protected.

[0115] The implementation method determines the user's characteristic values ​​to set the actual weights. Therefore, the implementation method can set appropriate actual weights based on the user's state.

[0116] The implementation method sets the actual weights based on the product of a temporary weight associated with the user's feature and the protection radius. Therefore, the implementation method can set more appropriate actual weights.

[0117] In this implementation, when multiple temporary weights are extracted based on the user's feature values, the actual weight is set based on the product of these temporary weights. Therefore, this implementation can assign more appropriate actual weights to users with multiple different feature values.

[0118] The implementation method sets actual weights based on features including at least one of the user's belongings, age, speed, and physical characteristics. Therefore, the implementation method can set more appropriate actual weights.

[0119] <Example of Implementation Modification> The above implementation method can be modified appropriately. For example, any step in the flowchart of the implementation method can be omitted. Specifically, steps S906 to S910 can be omitted, and the leading position can be calculated based on the positions of all users instead of excluding users.

[0120] Furthermore, the method for calculating the actual weight is not limited to the method described above. For example, if multiple temporary weights are extracted from the user's features, the setting unit 402 can calculate the actual weight based on the largest or smallest temporary weight among these temporary weights.

[0121] Furthermore, in the above embodiment, the case where the control device is the control unit 130 of the mobile body 100 has been described as an example. However, the control device may also be included in an external device such as an information processing server. In this case, the control device may also perform part or all of the processing performed by the control unit 130 while communicating with the mobile body 100. That is, this embodiment can also be applied to the case where the mobile body 100 is remotely controlled from a device different from the mobile body 100.

[0122] <Summary of Implementation Methods> (Project 1) A method for controlling multiple specific characters (SPs) that act as guides for movement, wherein, Determine the location of multiple specific characters (SPs). Determine the location of the pedestrian (PS). Each of the aforementioned specific individuals (SPs) is assigned an actual weight. Based on the location of the specific person (SP) and the location of the pedestrian (PS), the protected location (GP) of the specific person (SP) is calculated. Based on the protected position (GP) and the actual weights of the specific person (SP), the position used to control the moving body (100), i.e., the leading position, is calculated. Based on the leading position, the moving body (100) is controlled.

[0123] According to the implementation method, even when the moving body moves together with multiple specific characters, it is possible to control the moving body to an appropriate leading position corresponding to the position of the specific characters.

[0124] (Project 2) The leading position is calculated based on the product of the protection position (GP) of each of the multiple specific characters (SPs) and the actual weight, which is the centroid of the weight protection position (GP) and also the weight protection centroid (Cg).

[0125] According to the implementation method, the leading position is calculated based on the centroid of the product of the protection position of a specific person and the actual weight, i.e., the weight protection centroid, so a more appropriate leading position can be calculated.

[0126] (Project 3) Based on the first distance (dgi) between the weighted protection center (Cg) and the protection position (GP) of the specific person (SP), and the second distance (dri) between the moving body (100) and the protection position (GP) of the specific person (SP), an exclusion decision is made on whether to use the specific person (SP) for the calculation of the leading position.

[0127] According to the implementation method, it is possible to appropriately select the specific individuals to be protected.

[0128] (Project 4) The exclusion decision is performed based on the product of a first weight (α) depending on the width of the area that the mobile body (100) can protect and the first distance (dgi), and the product of a second weight (β) depending on the motion performance of the mobile body (100) and the second distance (dri).

[0129] According to the implementation method, it is possible to more appropriately select the specific person to be protected by taking into account factors such as the performance of the mobile body.

[0130] (Project 5) The leading position is set based on the positions of the remaining specific characters (SPs) after excluding those specific characters (SPs) that are determined not to be used in the calculation of the leading position.

[0131] According to the implementation method, a more appropriate leading position can be calculated based on the position of the specific person to be protected.

[0132] (Project 6) Repeat the exclusion decision until there are no more specific individuals (SPs) to be excluded.

[0133] According to the implementation method, a more appropriate leading position can be calculated based on the location of the specific person to be protected.

[0134] (Project 7) The actual weights are set based on the feature values ​​of a specific person (SP).

[0135] According to the implementation method, appropriate actual weights can be set based on the status of a specific person.

[0136] (Project 8) The actual weights are set based on one or more temporary weights and protection radii associated with the characteristic quantities of the specific person (SP).

[0137] According to the implementation method, more appropriate actual weights can be set.

[0138] (Project 9) When multiple temporary weights (α) are extracted from the feature quantities of the specific person (SP), the actual weight is set based on the product of the multiple temporary weights (α).

[0139] According to the implementation method, it is possible to set more appropriate actual weights for specific individuals with multiple different characteristic quantities.

[0140] (Project 10) The characteristics include at least one of the following: the person’s (SP) possessions, age, speed, and physical characteristics.

[0141] According to the implementation method, more appropriate actual weights can be set.

[0142] The invention is not limited to the above-described embodiments, and various modifications and alterations can be made within the scope of the invention's intent.

Claims

1. A method for controlling a moving object, characterized in that, In this control method, Determine the location of multiple specific individuals. Determine the location of the pedestrian. Each of the aforementioned specific individuals is assigned an actual weight. Based on the location of the specific person and the location of the pedestrian, calculate the protection position for the specific person. Based on the protected position and the actual weight of the specific person, the position used to control the moving body, i.e., the leading position, is calculated. The moving body is controlled based on the leading position.

2. The control method for a moving body according to claim 1, characterized in that, The leading position is calculated based on the product of the protection position of each of the multiple specific characters and the actual weight, which is the centroid of the weight protection position, also known as the weight protection centroid.

3. The control method for a moving body according to claim 2, characterized in that, Based on the first distance between the weighted protection center and the protection position of the specific person, and the second distance between the moving body and the protection position of the specific person, an exclusion decision is made on whether to use the specific person for the calculation of the leading position.

4. The control method for a moving body according to claim 3, characterized in that, The exclusion decision is performed based on the product of a first weight (dependent on the width of the area that the mobile body can protect) and the first distance, and the product of a second weight (dependent on the motion performance of the mobile body) and the second distance.

5. The control method for a moving body according to claim 3, characterized in that, The leading position is set based on the positions of the remaining specific characters, excluding those determined not to be used in the calculation of the leading position.

6. The control method for a moving body according to claim 3, characterized in that, Repeat the exclusion decision until there are no more individuals to be excluded.

7. The control method for a moving body according to any one of claims 1 to 6, characterized in that, The actual weights are set based on the characteristic values ​​of a specific person.

8. The control method for a moving body according to claim 7, characterized in that, The actual weights are set based on one or more temporary weights and a protection radius associated with the characteristic quantity of the specific person.

9. The control method for a moving body according to claim 8, characterized in that, When multiple temporary weights are extracted from the feature values ​​of the specific person, the actual weight is set based on the product of the multiple temporary weights.

10. The control method for a moving body according to claim 7, characterized in that, The characteristics include at least one of the following: the person’s possessions, age, speed, and physical characteristics.

11. A control device for a moving body, which is a control device for guiding multiple specific characters, characterized in that, The control device includes: The character identification department determines the location of multiple specific characters and the location of pedestrians; The setting department assigns actual weights to each of the aforementioned specific individuals; The calculation unit calculates the protection position of the specific person based on the position of the specific person and the position of the pedestrian, and calculates the leading position for controlling the moving body based on the protection position and the actual weight of the specific person. as well as The drive control unit controls the moving body based on the leading position.

12. A mobile body, characterized in that, The mobile body has: The control device for the moving body as described in claim 11; and A driving unit that enables the moving body to travel.

13. A computer program product comprising a computer program, characterized in that, The computer program implements the method as described in claim 1 when executed by a processor.

14. A computer-readable storage medium storing a computer program, characterized in that, The computer program implements the method as described in claim 1 when executed by a processor.

Citation Information

Patent Citations

  • Mobile robot and travel speed estimating method

    JP2008149399A