Mobile device, control method, and program
The forklift's three-dimensional sensor and calculation unit enhance the accuracy of detecting and handling objects by determining the insertion opening's height and central position, overcoming the limitations of two-dimensional sensors.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2026-03-13
AI Technical Summary
Conventional forklifts using two-dimensional distance measuring sensors are limited by the installation height of the target object, restricting their accuracy in detecting the position and orientation of a target object.
A forklift equipped with a three-dimensional sensor below the fork that measures the position and distance of a target object, along with a calculation unit to determine the height and central position of the insertion opening, allowing precise control of the fork's vertical and horizontal movement.
Improves the accuracy of detecting the position and orientation of a target object without being restricted by the installation height, enabling efficient and accurate handling of objects with varying heights.
Smart Images

Figure 2026045841000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a moving body, a control method, and a program.
Background Art
[0002] A forklift has forks that are inserted into a pallet. Patent Document 1 discloses a forklift equipped with a pallet detection device that detects a line segment indicating the front surface of a pallet based on a point cloud measured by a two-dimensional distance measuring device and acquires the position and orientation of the pallet based on that line segment.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Conventional forklifts, when using a two-dimensional distance measuring sensor, can only be applied when the distance measuring height of the two-dimensional distance measuring sensor is equal, and the applicable scenarios are limited. Conventional forklifts have room for improvement in improving the accuracy of detecting the position and orientation of a target object without being restricted by the installation height of the target object to be distance measured.
[0005] The present disclosure solves the above-described problems, and an object thereof is to provide a moving body, a control method, and a program that can improve the accuracy of detecting the position and orientation of a target object without being restricted by the installation height of the target object to be distance measured.
Means for Solving the Problems
[0006] The movable body according to this disclosure comprises a fork that can be inserted into an insertion opening of a target object, a fork control unit that controls the vertical and horizontal movement of the fork, a sensor provided below the fork in the vertical direction and capable of measuring the three-dimensional position and distance of the target object, and a calculation unit that calculates the height of the insertion opening of the target object and the central position of the target object based on sensor information that can identify the target object measured by the sensor, wherein the fork control unit controls the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object and the central position of the target object.
[0007] The control method according to this disclosure is a control method for a moving body comprising: a fork that can be inserted into an insertion opening of a target object; a fork control unit that controls the vertical and horizontal movement of the fork; and a sensor provided below the fork in the vertical direction and capable of measuring the three-dimensional position and distance of the target object, the method comprising: calculating the height of the insertion opening of the target object and the central position of the target object based on sensor information that can identify the target object measured by the sensor; and controlling the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object and the central position of the target object.
[0008] The program relating to this disclosure causes a mobile body comprising a fork that can be inserted into an insertion opening of a target object, a fork control unit that controls the vertical and horizontal movement of the fork, and a sensor provided below the fork in the vertical direction and capable of measuring the three-dimensional position and distance of the target object, to perform the following steps: calculate the height of the insertion opening of the target object and the central position of the target object based on sensor information that can identify the target object measured by the sensor; and control the vertical and horizontal movement of the fork control unit based on the height of the insertion opening of the target object and the central position of the target object. [Effects of the Invention]
[0009] According to this disclosure, the accuracy of detecting the position and orientation of a target object can be improved without being limited by the installation height of the target object being measured. [Brief explanation of the drawing]
[0010] [Figure 1] Figure 1 is a schematic diagram of the motion control system according to the first embodiment. [Figure 2] Figure 2 is a schematic diagram of the configuration of the mobile body according to the first embodiment. [Figure 3] Figure 3 is a schematic diagram illustrating an example of the relationship between a sensor and a target object in the moving object shown in Figure 2. [Figure 4] Figure 4 is a schematic block diagram of the control system. [Figure 5] Figure 5 is a schematic block diagram of an information processing device. [Figure 6] Figure 6 is a schematic block diagram of the control device for the mobile unit. [Figure 7] Figure 7 is a diagram illustrating an example of the target object's structure. [Figure 8] Figure 8 is a flowchart showing the processing procedure of a control device that calculates the 3D position of a target object. [Figure 9] Figure 9 illustrates an example of limiting the distance measurement range based on sensor information. [Figure 10] Figure 10 is a flowchart showing an example of a process for calculating the height of the insertion opening of a target object. [Figure 11] Figure 11 is a diagram illustrating an example of calculating the height of the insertion opening of a target object. [Figure 12] Figure 12 illustrates an example of calculating the position of the central column by matching the shape of the target object. [Figure 13] Figure 13 is a flowchart showing an example of a process for calculating the left-right position of the central pillar of a target object. [Figure 14] Figure 14 is a diagram illustrating an example of calculating the detailed position of the central pillar of a target object. [Figure 15]FIG. 15 is a flowchart showing an example of a processing procedure for calculating the detailed position of the central column of the target object. [Figure 16] FIG. 16 is a flowchart showing an example of a processing procedure for discriminating the reflection intensity of the column of the target object. [Figure 17] FIG. 17 is a diagram for explaining an example of extracting the posture of the column of the target object. [Figure 18] FIG. 18 is a schematic diagram for explaining an example of the relationship between the fork of the moving body according to the second embodiment and the target object. [Figure 19] FIG. 19 is a schematic diagram for explaining an example of inserting the fork into the insertion port of the target object. [Figure 20] FIG. 20 is a diagram for explaining the outline of the operation of the moving body according to the third embodiment.
MODE FOR CARRYING OUT THE INVENTION
[0011] Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Note that the present disclosure is not limited by this embodiment, and when there are a plurality of embodiments, those configured by combining each embodiment are also included.
[0012] (First Embodiment) (Overall Configuration of the Movement Control System) Figure 1 is a schematic diagram of a movement control system according to the first embodiment. As shown in Figure 1, the movement control system 1 according to the first embodiment includes a mobile body 10, a management device 12, and an information processing device 14. The movement control system 1 is a system that controls the movement of the mobile body 10 belonging to a facility W. The facility W is a facility that is managed for logistics, such as a warehouse. In the movement control system 1, the mobile body 10 picks up and transports a target object P placed within the area AR of the facility W. Area AR is, for example, the floor surface of the facility W, and is the area where the target object P is placed and the mobile body 10 moves. In this embodiment, the target object P is a transport object with goods loaded on a pallet. The target object P has a front surface Pa formed with a plurality of columns PA and insertion openings PB formed between the columns PA. The front surface Pa refers to the side from which the mobile body 10 approaches. The mobile body 10 holds the target object P by inserting a fork 24, which will be described later, into the insertion openings PB. However, the target object P is not limited to an object with goods loaded on a pallet, but may take any form, for example, it may consist only of goods without a pallet. Hereinafter, one direction along region AR will be called direction X, and a direction along region AR that intersects direction X will be called direction Y. In this embodiment, direction Y is perpendicular to direction X. Directions X and Y may also be called horizontal directions. Furthermore, a direction perpendicular to directions X and Y, i.e., the vertical direction, will be called direction Z.
[0013] Within the facility W, area AR is provided with multiple installation areas AR0. Each installation area AR0 is the area where the target object P is installed. Each installation area AR0 is pre-defined as the area where the target object P should be installed. Each installation area AR0 is demarcated, for example, by white lines, and its position (coordinates), shape, and size are pre-defined. Within each installation area AR0, the target object P is positioned so that its front surface Pa faces direction X. In the example shown in Figure 1, the target object P is positioned within the installation area AR such that its axis PX, perpendicular to the front surface Pa when viewed from direction Z, aligns with direction X; that is, the orientation of the target object P does not shift relative to the installation area AR0. However, the target object P is not limited to having its axis PX aligned with direction X; it may also be positioned with its axis PX tilted from direction X, i.e., its orientation shifted relative to the installation area AR. For example, it is preferable that the target object P is positioned in the installation area AR0 such that the tilt angle between axis PX and direction X is 45 degrees or less.
[0014] In this embodiment, the installation area AR0 is located in area AR, which is the floor of the equipment W, but it is not limited to this. For example, it may be located in the cargo area of a vehicle that has brought the target object P into the equipment W. Also, in this embodiment, the installation area AR0 is partitioned for each target object P, and one target object P is placed in the installation area AR0, but it is not limited to this. For example, the installation area AR0 may be set up as a free space where multiple target objects P can be placed. Furthermore, in the example in Figure 1, the installation area AR0 is rectangular, but its shape and size may be arbitrary. The number of installation areas AR0 located in area AR may also be arbitrary.
[0015] The mobile body 10 is an automatically moving device. In this embodiment, the mobile body 10 is a forklift, or more precisely, a so-called AGF (Automated Guided Forklift). As illustrated in Figure 1, the mobile body 10 moves over area AR in the facility W. The mobile body 10 moves from the first position A1 to the second position A2 according to the first path R1 (wide-area path), detecting the target object P multiple times using the sensor 26, which will be described later. The mobile body 10 acquires a point cloud from the multiple detection results by the sensor 26 and determines the position and orientation of the target object P based on the point cloud. Once the mobile body 10 reaches the second position A2, it moves from the second position A2 to the target position A3 according to the second path R2 (approach path) set based on the position and orientation of the target object P, and picks up the target object P. In this context, the position of the target object P refers to the coordinates of the target object P in the two-dimensional coordinate system CO in directions X and Y, and the orientation of the target object P refers to the orientation (rotation angle) of the target object P when viewed from a direction perpendicular to directions X and Y. Furthermore, the target position A3 is a position and orientation that is predetermined relative to the target object P. In this embodiment, the target position A3 can be said to be a position and orientation in which the mobile body 10 can pick up the target object P. For example, the target position A3 may be a position and orientation of the mobile body 10 in which the fork 24 of the mobile body 10, described later, can be inserted into the insertion opening PB of the target object P by moving in a straight line without moving laterally. In this case, the mobile body 10 moves in a straight line from the target position A3 to pick up the target object P and transports the target object P to another location.
[0016] (Mobile) Figure 2 is a schematic diagram of the configuration of the mobile body according to the first embodiment. In Figure 2, the longitudinal direction XA, the lateral direction YA, and the vertical direction ZA are all perpendicular straight lines, with the forklift serving as the reference point.
[0017] As shown in Figure 2, the mobile body 10 comprises a vehicle body 20, wheels 20A, straddle legs 21, a mast 22, a fork 24, a side shift device 25, a sensor 26, and a control device 28.
[0018] The straddle legs 21 are a pair of shaft-shaped members that are provided at one end of the vehicle body 20 in the longitudinal direction XA and protrude from the vehicle body 20. The wheels 20A are provided at the tips of each straddle leg 21 and on the vehicle body 20. In other words, a total of three wheels 20A are provided, but the position and number of wheels 20A can be arbitrary. In the example shown in Figure 2, the wheels 20A have front wheels and rear wheels. The front wheels are wheels 20A that are rotatably provided at the front ends of the left and right straddle legs 21, respectively. The rear wheels are wheels 20A that are rotatably provided in the center of the vehicle body 20. The rear wheels are configured to be both rotatable and steerable. In this embodiment, the mobile body 10 is configured to be able to control its turning by operating one of the rear wheels 20A.
[0019] The mast 22 is movably attached to the straddle legs 21 and moves in the longitudinal direction XA of the vehicle body 20. The mast 22 extends along the vertical direction ZA perpendicular to the longitudinal direction XA, and the backrest 23 is configured to move in the left-right direction YA and the vertical direction ZA. The mast 22 has a lift device (not shown), which raises and lowers the backrest 23, thereby raising and lowering the forks 24, i.e., moving them in the vertical direction ZA. The lift device raises or lowers the forks 24 so that when the forks 24 are inserted into a pallet, the front end of the forks 24 and the insertion opening of the pallet are on the same horizontal plane. The backrest 23 is a load receiving frame that prevents the load on the forks 24 from falling behind the mast 22.
[0020] The fork 24 is mounted on the mast 22 via the backrest 23 so as to be movable in the vertical direction ZA. The fork 24 is movable relative to the mast 22 in the left-right direction YA of the vehicle body 20 by a side shift device 25. The fork 24 has a pair of forks 24A and 24B. Forks 24A and 24B extend from the backrest 23 (mast 22) toward the front of the vehicle body 20. Forks 24A and 24B are positioned apart from each other in the left-right direction YA of the mast 22. Hereinafter, in the longitudinal direction XA, the direction on the side of the movable body 10 where the fork 24 is not provided will be referred to as the rear direction, and the direction on the side where the fork 24 is provided will be referred to as the front direction.
[0021] The forks 24 are provided to extend along the front-rear direction XA, and when inserted into the target object P (the pallet insertion opening), the target object P becomes capable of being lifted. In this embodiment, the forks 24 are provided in pairs with a gap between them in the left-right direction YA, but a configuration of three or more forks is also possible.
[0022] The side shift device 25 moves the pair of forks 24 in the left-right direction YA without changing the distance between them. By moving the forks 24, the side shift device 25 adjusts the position of the forks 24 relative to the target object position.
[0023] Sensor 26 comprises sensor 26A and sensor 26B. Sensor 26A detects at least one of the position and orientation of an object present around the vehicle body 20. It can also be said that sensor 26A detects at least one of the position of an object relative to the moving body 10 and the orientation of an object relative to the moving body 10. In this embodiment, sensor 26A is provided at the front end of each straddle leg 21 and on the rear side of the vehicle body 20. Sensor 26A can be, for example, LiDAR (Light Detection and Ranging), a proximity sensor, etc. Note that the position of sensor 26A is not limited to this, and it may be provided at any position, and the number of sensors provided may also be arbitrary. Sensor 26A supplies sensor information indicating at least one of the position of an object relative to the moving body 10 and the orientation of an object relative to the moving body 10 to the control device 28.
[0024] Figure 3 is a schematic diagram showing an example of the relationship between the sensor 26B and the target object P in the mobile body 10 shown in Figure 2. In Figure 3, scene C1 shows a side view of the mobile body 10, and scene C2 shows a top view of the mobile body 10.
[0025] As shown in Figure 3, the sensor 26B detects the position, orientation, etc., of the target object P. The sensor 26B is located on the underside of a pair of forks 24 on the backrest 23 and moves together with the forks 24. That is, even if the forks 24 move in the vertical direction ZA or the left-right direction YA, the relative positional relationship between the forks 24 and the sensor 26B does not change. The sensor 26B is located below the forks 24 in the vertical direction ZA and is configured to measure the three-dimensional position and distance of the target object P. By being located below the pair of forks 24, the sensor 26B can move up and down together with the forks 24, and can detect the front of the moving body 10 even when the forks 24 are inserted into the target object P. That is, the sensor 26B does not need to move the forks 24 up and down to acquire three-dimensional positional information, thus simplifying the work. Because the sensor 26B can move up and down, it can also accommodate target objects P at different installation heights.
[0026] In the example shown in Figure 3, the sensor 26B has a distance measurement range 260 in front of the moving body 10, and this range 260 includes the mounting base 1000, the target object P placed on the mounting base 1000, and the luggage 2000 placed on the target object P. The distance measurement range 260 is a portion of the range that the sensor 26B can measure. The sensor 26B measures the environment within the distance measurement range 260 and provides sensor information including a point cloud that can identify the three-dimensional position of the measured object and the distance to the object. The sensor information includes a three-dimensional point cloud obtained by the sensor 26B in a single measurement, and each point has information such as the position and distance.
[0027] In this embodiment, the case in which a three-dimensional ToF (Time of Flight) camera that measures distance (depth) is used as the sensor 26B is described, but various sensors capable of detecting the position of an object can be used. The sensor 26B captures a depth image capable of identifying three-dimensional position and distance, and supplies sensor information indicating the captured depth image to the control device 28.
[0028] In Figure 2, the control device 28 is a computer and a device that controls the mobile body 10. The control device 28 detects the position and distance of the target object from the sensor information. The control device 28 has the function of calculating the position, orientation, etc. of the insertion opening PB of the target object P into which the fork 24 is inserted. The control device 28 will be described later.
[0029] (Management device) Figure 4 is a schematic block diagram of the management device. The management device 12 is a system for managing logistics in facility W. In this embodiment, the management device 12 is a WMS (Warehouse Management System), but it is not limited to a WMS and may be any system, for example, a backend system such as another production management system. The location where the management device 12 is installed is arbitrary; it may be installed within facility W, or it may be installed at a location away from facility W and manage facility W from that location. The management device 12 is a computer and, as shown in Figure 4, includes a communication unit 30, a storage unit 32, and a control unit 34.
[0030] The control unit 34 is an arithmetic unit, or CPU (Central Processing Unit). The control unit 34 includes a task determination unit 36. The control unit 34 realizes the task determination unit 36 and executes its processing by reading and executing a program (software) from the storage unit 32. The control unit 34 may execute processing with a single CPU, or it may have multiple CPUs and execute processing with those multiple CPUs. The task determination unit 36 may also be realized with hardware circuits. Furthermore, the program for the control unit 34 stored in the storage unit 32 may be stored on a recording medium that can be read by the management device 12.
[0031] The work determination unit 36 determines the target object P to be transported. Specifically, the work determination unit 36 determines the work content, which indicates the information of the target object P to be transported, based on, for example, the input work plan. The work content can also be said to be information that identifies the target object P to be transported. In the example of this embodiment, the work content determines which target object P is located in which facility, by when, and where to transport it. In other words, the work determination unit 36 determines the information that indicates the facility in which the target object P is stored, the target object P itself, the destination of the target object P, and the timing of the transport of the target object P. The work determination unit 36 transmits the determined work content to the information processing device 14 via the communication unit 30.
[0032] (Information processing device) Figure 5 is a schematic block diagram of the information processing device. The information processing device 14 is installed in the facility W and is a device that transmits and receives information regarding the movement of the mobile body 10 to and from the mobile body 10, a so-called ground system. The information processing device 14 is a computer and, as shown in Figure 5, includes a communication unit 40, a storage unit 42, and a control unit 44. The communication unit 40 is a module used by the control unit 44 to communicate with external devices such as the management device 12 and the mobile body 10, and may include, for example, an antenna. In this embodiment, the communication method used by the communication unit 40 is wireless communication, but the communication method may be arbitrary. The storage unit 42 is a memory that stores various information such as the calculation contents and programs of the control unit 44, and includes, for example, at least one of RAM, a main memory device such as ROM, and an external memory device such as an HDD.
[0033] The control unit 44 is an arithmetic unit, i.e., a CPU. The control unit 44 includes a work content acquisition unit 50 and a mobile object selection unit 52. The control unit 44 reads a program (software) from the storage unit 42 and executes it to realize the work content acquisition unit 50 and the mobile object selection unit 52 and perform their processing. The control unit 44 may perform these processing with a single CPU, or it may have multiple CPUs and perform the processing with those multiple CPUs. In addition, at least a part of the work content acquisition unit 50 and the mobile object selection unit 52 may be realized with hardware circuits. Furthermore, the program for the control unit 44 stored in the storage unit 42 may be stored on a recording medium that the information processing device 14 can read.
[0034] The work content acquisition unit 50 acquires information about the work content determined by the management device 12, that is, information about the target object P to be transported. From the information about the target object P in the work content, the work content acquisition unit 50 identifies the installation area AR0 where the target object P is installed. For example, the storage unit 42 stores the target object P and the installation area AR0 where the target object P is installed in association with each other, and the work content acquisition unit 50 identifies the installation area AR0 by reading this information from the storage unit 42. The mobile body selection unit 52 selects the target mobile body 10. For example, the mobile body selection unit 52 selects the target mobile body 10 from among multiple mobile bodies belonging to the equipment W. The mobile body selection unit 52 may select the target mobile body 10 by any method, but for example, based on the installation area AR0 identified by the work content acquisition unit 50, it may select a mobile body 10 suitable for transporting the target object P in that installation area AR0 as the target mobile body 10.
[0035] (Control device for mobile devices) Next, the control device 28 for the mobile body 10 will be described. Figure 6 is a schematic block diagram of the control device 28 for the mobile body 10. The control device 28 controls the mobile body 10. The control device 28 controls the mobile body 10 to move along a second path R2 set based on multiple detection results from the sensor 26 of the mobile body 10 to the target position A3, and to pick up the target object P. The control device 28 is a computer and, as shown in Figure 6, includes a communication unit 70, a storage unit 72, and a control unit 74. The control device 28 is electrically connected to the side shift device 25, the sensor 26, the drive device 29, and the lift device 220.
[0036] The drive unit 29 includes the drive unit and steering mechanism of the mobile body 10. The control device 28 is configured to control the movement, rotation, etc., of the mobile body 10 by controlling the drive unit and rotation mechanism of the drive unit 29. The mobile body 10 is configured to change the attitude and orientation of the fork 24 relative to the target object P by rotating.
[0037] The lifting device 220 is mounted on the mast 22 and includes a mechanism for raising and lowering the backrest 23. The control device 28 raises and lowers the backrest 23 by controlling the lifting device 220. The lifting device 220 positions the forks 24 at a desired height by raising and lowering the backrest 23. The lifting device 220 raises or lowers the forks 24 so that the front end of the forks 24 and the insertion opening PB of the target object P are on the same horizontal plane when the forks 24 are inserted into the insertion opening PB of the target object P.
[0038] The communication unit 70 is a module used in the control unit 74 to communicate with external devices such as the information processing device 14, and may include, for example, an antenna. In this embodiment, the communication method used by the communication unit 70 is wireless communication, but the communication method may be arbitrary.
[0039] The storage unit 72 is a memory that stores various information such as calculation contents and programs of the control unit 74, and includes at least one of the following: RAM, main memory such as ROM, and external memory such as HDD. The storage unit 72 can store programs 721, work information 722, sensor information 723, position information 724, etc. Program 721 includes a program for realizing functions such as movement control, fork control, and detection control of the mobile body 10. Work information 722 includes information indicating the first path R1, second path R2, etc. of the mobile body 10 obtained from the information processing device 14, database, etc. Sensor information 723 includes information obtained from the sensor 26. Position information 724 is obtained from the sensor information 723 and includes information that can identify the position, orientation, etc. of the target object P. The storage unit 72 can store the sensor information 723 and position information 724 in association and in chronological order.
[0040] The control unit 74 is an arithmetic unit and includes arithmetic circuits such as a CPU. The control unit 74 includes an information acquisition unit 80, a movement control unit 82, a detection control unit 84, a calculation unit 86, and a fork control unit 88. The control unit 74 reads and executes a program 721 (software) from the storage unit 72 to realize the movement control unit 82, the detection control unit 84, the calculation unit 86, and the fork control unit 88, and executes their processing. The control unit 74 may execute these processes with a single CPU, or it may have multiple CPUs and execute the processing with those multiple CPUs. In addition, at least a part of the movement control unit 82, the detection control unit 84, the calculation unit 86, and the fork control unit 88 may be realized with hardware circuits. Furthermore, the program 721 for the control unit 74 stored in the storage unit 72 may be stored on a recording medium that the control device 28 can read.
[0041] The information acquisition unit 80 acquires various information related to the work, such as the first pass R1, the second pass R2, the structure of the target object P, and the position of the target object P, as work information 722. When the mobile body 10 is selected as the work target, the information acquisition unit 80 may acquire work information from the information processing device 14, or it may read work information that has been previously stored in the storage unit 72.
[0042] The movement control unit 82 controls the movement mechanism of the drive unit 29, such as the drive unit and steering, to control the movement of the mobile body 10. The movement control unit 82 moves the mobile body 10 according to the first path R1 and the second path R2 acquired by the information acquisition unit 80. The movement control unit 82 moves the mobile body 10 so that it passes through the first path R1 and the second path R2 by sequentially grasping the position information of the mobile body 10. The method of acquiring the position information of the mobile body 10 is arbitrary, but for example, in this embodiment, a detection object (not shown) is provided in the equipment W, and the movement control unit 82 acquires position and orientation information of the mobile body 10 based on the detection of the detection object. The position of the mobile body 10 is the coordinate in the two-dimensional coordinate system CO of directions X and Y in the area AR of the equipment W. The orientation of the mobile body 10 is the orientation (rotation angle) of the mobile body 10 when viewed from direction Z which is perpendicular to directions X and Y.
[0043] The movement control unit 82 controls the movement of the mobile body so that the fork 24 approaches the insertion opening PB of the target object P. The movement control unit 82 moves the mobile body 10 to the target position A3 by moving it along the second path R2 (approach path), and positions it at the pickup position of the target object P.
[0044] The detection control unit 84 causes the sensor 26 to detect the position of the target object P, the front surface Pa of the target object P, the position of the fork 24, etc., and acquires the detection results of the sensor 26 as a point cloud. The detection control unit 84 stores the acquired information as sensor information 723 in the storage unit 72 in chronological order. For example, the detection control unit 84 analyzes the position of the target object P, the front surface Pa of the target object P, the insertion opening PB on the front surface Pa, the position of the fork 24, etc., based on the point cloud obtained by the sensor 26, and stores the analysis results as sensor information 723 in the storage unit 72.
[0045] The calculation unit 86 calculates position information 724, such as the position and orientation of the target object P, based on the sensor information 723. The calculation unit 86 estimates the target object P based on the parameters for estimating the position of the target object P and the sensor information 723, and calculates the position, orientation, etc. of the target object P.
[0046] Figure 7 is a diagram illustrating an example of the structure of a target object. In Figure 7, scene C11 shows a top view of the target object P, and scene C12 shows a front view of the front surface Pa of the target object P. The target object P has multiple columns PA. On the front surface Pa of the target object P, there are multiple columns PA consisting of a central column PAC located in the center, a left column PAL located at the left end, and a right column PAR located at the right end. On the front surface Pa of the target object P, the space enclosed by the central column PAC, the left column PAL, the top surface PC, and the bottom surface PD, and the space enclosed by the central column PAC, the right column PAR, the top surface PC, and the bottom surface PD form an insertion opening PB.
[0047] The calculation unit 86 calculates the height of the socket PB of the target object P and the central position of the target object PB based on sensor information 723 that allows identification of the target object P measured by the sensor 26B. The calculation unit 86 calculates the position of the central column PAC on the front surface Pa of the target object P on which the socket PB is provided as the central position and calculates the left and right positions of the central column PAC. The left and right positions of the central column PAC include the positions of the left and right ends of the central column PAC, the positions imposed on the left and right structures of the central column PAC, etc. The calculation unit 86 limits the distance measurement range 260 on which the target object P is located from the sensor information 723 and calculates the height of the socket PB of the target object P and the central position of the target object P from the distance measurement range 260. The calculation unit 86 determines the reflection intensity of multiple columns on the front surface Pa of the target object P on which the socket PB is provided and calculates the attitude of the target object P based on the distance measurement position and reflection intensity.
[0048] In Figure 6, the calculation unit 86 extracts the front surface Pa of the target object P from the sensor information 723, which shows information such as measured values indicating the position and distance of the front surface Pa of the target object P measured by the sensor 26B, and then estimates the position of the socket PB from that front surface Pa. The calculation unit 86 calculates position information 724, which includes the estimated positions of the target object P and the socket PB, and stores the calculation result in the storage unit 72.
[0049] The fork control unit 88 controls the vertical movement ZA and horizontal movement YA of the pair of forks 24. The fork control unit 88 moves the pair of forks 24 vertically ZA using the lift device 220. The fork control unit 88 moves the pair of forks 24 horizontally YA using the side shift device 25. The fork control unit 88 controls the vertical movement ZA and horizontal movement YA of the forks 24 based on the height of the insertion opening PB of the target object P and the central position of the target object P. The fork control unit 88 controls the vertical and horizontal movement of the forks 24 based on the height of the insertion opening PB of the target object P, the central position of the target object and the orientation of the target object. The fork control unit 88 controls the side shift until the pair of forks 24 are facing the unloading position.
[0050] (Processing procedure for the control device of a mobile object) Next, an example of an algorithm used by the control device 28 of the mobile body 10 to calculate the three-dimensional position of the target object P from the sensor information 723 will be described. Figure 8 is a flowchart showing the processing procedure of the control device 28 for calculating the three-dimensional position of the target object P.
[0051] As shown in Figure 8, the control device 28 acquires parameters for position estimation (step S101). For example, the control device 28 acquires parameters corresponding to the target object P from work information 722, a database, etc. The parameters are information for estimating the position of the target object P from sensor information 723. The parameters include, for example, information such as the size and shape of the target object P corresponding to the scale, the structure of the front panel Pa, and the arrangement of the socket PB. When the processing in step S101 is completed, the control device 28 proceeds to step S102.
[0052] The control device 28 acquires sensor information 723 from the sensor 26 (step S102). For example, the control device 28 acquires sensor information 723 measuring the installation area AR0 where the target object P is installed, and stores the acquired sensor information 723 in the storage unit 72 in chronological order. When the processing in step S102 is completed, the control device 28 proceeds to step S103.
[0053] The control device 28 limits the distance measurement range 260 from the acquired sensor information 723 (step S103). For example, the control device 28 deletes information unnecessary for estimating the target object P from the sensor information 723 to limit the distance measurement range 260 of the target object P. By limiting the distance measurement range 260, the control device 28 reduces the processing load of the control device 28 while deleting information from the sensor information 723 that could cause misjudgment.
[0054] Figure 9 illustrates an example of limiting the distance measurement range 260 based on sensor information 723. In Figure 9, Scene C21 is a front view showing the measurement of the target object P, and Scene C22 is a top view showing the measurement of the target object P. Note that in Scene C22, the cargo 2000 from Scene C21 is omitted to show the target object P.
[0055] In the example shown in Figure 9, the control device 28 limits the distance measurement range 260 based on the sensor information 723 shown in scene C21, including the height of the target object P (pallet), the assumed error HMZ of the height position of the target object P, the size of the mounting base 1000, and the size of the cargo 2000. The distance measurement range 260 includes the entire target object P and parts of the mounting base 1000 and cargo 2000. As shown in scene C22, the control device 28 limits the distance measurement range 260X, which is the depth of the distance measurement range 260 in the front-to-back direction XA, based on the reference distance from the sensor 26B to the target object P and the assumed error HMX in the front-to-back direction XA, which is the near-to-far direction of the sensor 26B, based on the sensor information 723. For example, the distance measurement range 260 in the left-to-right direction YA of the target object P covers a range of ±300 mm of the size of the target object P. If the size (dimensions) of the target object P is unknown, the distance measurement range 260 may be set based on the size of the mounting base 1000 or the cargo 2000, or it may be set to the entire range indicated by the sensor information 723.
[0056] In Figure 8, when the processing in step S103 is completed, the control device 28 proceeds to step S104. The control device 28 calculates the height of the socket PB of the target object P (step S104). For example, the control device 28 extracts the height of the lower surface of the socket PB of the target object P and the height of the upper surface of the target object P from the sensor information 723 and calculates the height of the socket PB of the target object P.
[0057] (Example of calculating the height of the socket) Figure 10 is a flowchart showing an example of a processing procedure for calculating the height of the insertion opening PB for the target object P. Figure 11 is a diagram illustrating an example of calculating the height of the insertion opening PB for the target object P. Note that Figure 11 shows only the target object P and the installation base 1000 on which the target object P is installed.
[0058] As shown in Figure 10, the control device 28 limits the processing range 260E in the left-right direction YA within the distance measurement range 260 (step S201). For example, as shown in Figure 11, the control device 28 limits the processing range 260E to the area within the distance measurement range 260 that includes the two sockets PB.
[0059] Next, in Figure 10, the control device 28 divides the limited processing range 260E into sections at regular intervals in the left-right direction YA and extracts the division region 261 with the minimum number of measurements (step S202). For example, as shown in Figure 11, the control device 28 divides the processing range 260E into sections at regular intervals in the left-right direction YA and sets up multiple division regions 261. In this embodiment, the case in which the multiple division regions 261 include the external regions on both sides in the vertical direction ZA of the processing range 260E is described, but a configuration that does not include the external regions is also possible. When the insertion port PB of the target object P is located, the number of measurements (number of points in the point cloud) in the multiple division regions 261 is less than the number of measurements in the region where the insertion port PB is located. For this reason, the control device 28 extracts the division region 261 with the minimum number of points in the point cloud from the multiple division regions 261.
[0060] Next, in Figure 10, the control device 28 narrows the lower limit in the extracted divided region 261 and obtains the lower and upper positions of the socket PB based on the change in the measured value (step S203). For example, as shown in Figure 11, the control device 28 sequentially moves the lower limit (scanning line) in the extracted divided region 261 upwards in the vertical direction ZA and upwards in the vertical direction ZAU, and calculates the change by comparing the number of measured values for each lower limit. The control device 28 then obtains the position where the change in the change decreases as the lower position of the socket PB and the position where the change in the change increases as the upper position of the socket PB.
[0061] Next, in Figure 10, the control device 28 takes the midpoint between the lower surface position PB1 and the upper surface position PB2 of the socket PB of the target object P and obtains the height of the socket PB of the target object (step S204). For example, as shown in Figure 11, the control device 28 calculates the midpoint between the lower surface position PB1 and the upper surface position PB2 of the socket PB of the target object P in the vertical direction ZA and obtains the position of that midpoint as the height of the socket PB of the target object. The height of the socket PB may also be obtained as the lower surface position PB1, the upper surface position PB2, etc. Once the control device 28 sets the obtained height of the socket PB in the position information 724 of the storage unit 72, it completes the predetermined procedure shown in Figure 10 and returns to step S104 shown in Figure 8.
[0062] When the processing in step S104 is completed, the control device 28 proceeds to step S105. The control device 28 calculates the left-right position of the central column PAC by shape matching of the target object P (step S105). For example, the control device 28 calculates the left-right position of the left and right ends of the central column PAC of the target object P by performing shape matching of the target object P within the distance measurement range 260.
[0063] (Example of calculating the left / right position of the central pillar) Figure 12 illustrates an example of calculating the position of the central column PAC by matching the shape of the target object P. Figure 12 shows a top view of the target object P as measured. Figure 13 is a flowchart showing an example of the process for calculating the left-right position of the central column PAC of the target object P.
[0064] As shown in Figure 12, the distance measurement range 260 is defined by the matching range center MC of the matching range ME, and the matching range center MC moves within this range. The left-right direction YA passes through the position 26P of sensor 26B, and the front-back direction XA (near-far direction) is orthogonal at the position 26P of sensor 26B. The attitude angle direction YAW indicates the direction of rotation (yawing) around the position 26P of sensor 26B. The search range MA indicates the range in which the matching range center MC is searched within the distance measurement range 260.
[0065] As shown in Figure 13, the control device 28 sets the initial value of 0 for the number of measurements ps (step S301). The number of measurements ps is the estimated position (X est ,Y est This indicates the number of points in the matching range ME of ). Estimated position X est This indicates the estimated position of the X-coordinate of the central column PAC of the target object P in the front-to-back direction XA. Estimated position Y est This indicates the estimated position of the Y coordinate in the left-right direction YA of the central column PAC of the target object P. Then, the control device 28 sets the lower limit of the matching range ME for the variable x (step S302).
[0066] Next, the control device 28 determines whether the variable x is less than or equal to the upper limit of the matching range ME in the forward / backward direction XA (step S303). If the control device 28 determines that the variable x is not less than or equal to the upper limit of the matching range ME in the forward / backward direction XA (No in step S303), it proceeds to step S304. The control device 28 sets the lower limit of the matching range ME to the variable y (step S304).
[0067] Next, the control device 28 determines whether the variable y is less than or equal to the upper limit of the left-right direction YA of the matching range ME (step S305). If the control device 28 determines that the variable y is not less than or equal to the upper limit of the left-right direction YA of the matching range ME (No in step S305), it proceeds to step S306.
[0068] The control device 28 determines whether the number of measurements ps is smaller than the number of measurements within the matching range ME (step S306). If the control device 28 determines that the number of measurements ps is smaller than the number of measurements within the matching range ME (Yes in step S306), it proceeds to step S307. The control device 28 sets the number of measurements ps to the number of measurements within the matching range ME (step S307). Then, the control device 28 determines the estimated position (X est ,Y est The control device 28 sets the variable (x, y) in step S308. Then, the control device 28 sets the value of variable y to the value obtained by adding the number of center position movements Δy of the matching range ME to the variable y (step S309), returns the process to step S305 which has already been described, and continues the process. The number of center position movements Δy is the number of movement steps (amount) of the center position in the left-right direction YA of the matching range ME.
[0069] Furthermore, if the control device 28 determines that the number of measurements ps is not less than the number of measurements in the matching range ME (No in step S306), it sets the value of variable y to the sum of the value of variable y and the number of center position movements in the matching range ME (step S309), returns to step S305 as described earlier, and continues processing.
[0070] Furthermore, if the control device 28 determines that the variable y is less than or equal to the upper limit of the left-right direction YA of the matching range ME (Yes in step S305), it proceeds to step S310. The control device 28 sets the value of variable x to the sum of the value of variable x and the number of center position movements Δx of the matching range ME (step S310), returns to step S303 as previously described, and continues processing. The number of center position movements Δx is the number of movement increments (amount) of the center position in the front-back direction XA of the matching range ME.
[0071] Furthermore, if the control device 28 determines that the variable x is less than or equal to the upper limit of the front-to-back direction XA of the matching range ME (Yes in step S303), it terminates the processing procedure shown in Figure 13 and returns to step S105 shown in Figure 8. That is, by executing the processing procedure shown in Figure 13, the control device 28 calculates the approximate left-to-right position of the central column PAC based on shape matching of the target object P, as shown in Figure 12, and stores the calculation result in the storage unit 72. In the example shown in Figure 12, the approximate left-to-right position includes the left-to-right position of the central column PAC in the left-to-right direction YA.
[0072] In Figure 8, when the processing in step S105 is completed, the control device 28 proceeds to step S106. The control device 28 calculates the detailed position of the central column PAC of the target object P (step S106). For example, the control device 28 detects the edge portion of the central column PAC of the target object P and uses the average position (left-right position) of the measured values (point cloud) between the edge portions as the detailed left-right position of the central column PAC of the target object P.
[0073] (Example of calculating the detailed position of the central pillar) Figure 14 illustrates an example of calculating the detailed position of the central column PAC of target object P. Figure 14 shows a top view of the measured target object P. Figure 15 is a flowchart illustrating an example of the process for calculating the detailed position of the central column PAC of target object P.
[0074] As shown in Figure 14, the control device 28 detects the left edge portion PEL and the right edge portion PER of the central column PAC of the target object P, and sets the edge portion PE which includes the edges PEL and PER. The control device 28 uses the average position (left / right position) of the measured values (point cloud) between the edges PEL and PER as the detailed position of the left / right position of the central column PAC.
[0075] As shown in Figure 15, the control device 28 extracts measured values (point cloud) of the central column PAC of the target object P from the approximate left-right positions of the central column PAC (step S401). Then, from the measured values of the central column PAC of the target object P, the control device 28 extracts two edge portions of the central column PAC from the information regarding the change in the front-rear direction XA (step S402). In the example shown in Figure 14, the control device 28 extracts edge portions PEL and PER of the central column PAC. Then, in Figure 15, the control device 28 extracts all the measured values (point cloud) between the edge portions of the central column PAC, extracts the average left-right position of the extracted measured values (points) (step S403), completes the processing procedure shown in Figure 15, and returns to step S106 shown in Figure 8. In other words, by executing the processing procedure shown in Figure 15, the control device 28 calculates the detailed position of the central column PAC of the target object P and stores the calculation result in the storage unit 72 as the detailed left-right position of the central column PAC.
[0076] In Figure 8, when the processing in step S106 is completed, the control device 28 proceeds to step S107. The control device 28 determines the reflectance of the left column PAL, the central column PAC, and the right column PAR of the target object P (step S107). For example, when the control device 28 measures the distance to the target object P with the sensor 26B, if the reflectance is low, there will be variation in the reflectance. In this case, if the attitude of the target object P is calculated using the columns of the target object P with low reflectance and the columns of the target object P with high reflectance, the error will increase due to the effect of variation. For this reason, the control device 28 checks the reflectance of the target object P and acquires two or more columns with similar reflectances of the target object P.
[0077] (Example of determining the reflectivity of a target object's column) Figure 16 is a flowchart showing an example of a processing procedure for determining the reflectance intensity of the columns of the target object P. As shown in Figure 15, the control device 28 acquires the average reflectance intensity of the left column PAL, the central column PAC, and the right column PAR of the target object P (step S501). For example, the control device 28 acquires the reflectance intensity from the color, brightness, etc. of the measured values (points) corresponding to the left column PAL, the central column PAC, and the right column PAR of the target object P, and calculates the average value.
[0078] Next, the control device 28 determines whether each acquired reflection intensity is above a threshold. If it is above the threshold, the reflection intensity determination flag for each column is set to 1. If it is not above the threshold, the reflection intensity determination flag for each column is set to 0 (step S502). In this embodiment, the control device 28 sets the reflection intensity determination flag for the left column PAL of the target object P to FGL, the reflection intensity determination flag for the central column PAC to FGC, and the reflection intensity determination flag for the right column PAR to FGR.
[0079] Next, the control device 28 determines whether the reflection intensity discrimination flag FGL, reflection intensity discrimination flag FGC, and reflection intensity discrimination flag FGR are equal (step S503). For example, if the reflection intensity discrimination flag FGL, reflection intensity discrimination flag FGC, and reflection intensity discrimination flag FGR are all 1, the control device 28 determines that the reflection intensity discrimination flag FGL, reflection intensity discrimination flag FGC, and reflection intensity discrimination flag FGR are equal.
[0080] If the control device 28 determines that the reflection intensity discrimination flags FGL, FGC, and FGR are equal (Yes in step S503), it proceeds to step S504. Then, the control device 28 uses the left column PAL, the central column PAC, and the right column PAR of the target object P to determine the attitude of the target object P (step S504), and after storing the information of the columns to be used in the storage unit 72, it terminates the processing procedure shown in Figure 16 and returns to step S107 shown in Figure 8.
[0081] Furthermore, if the control device 28 determines that the reflection intensity discrimination flag FGL, the reflection intensity discrimination flag FGC, and the reflection intensity discrimination flag FGR are not equal (No in step S503), it proceeds to step S505. The control device 28 determines whether the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGC are equal (step S505). For example, if the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGC are both 1, the control device 28 determines that the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGC are equal.
[0082] If the control device 28 determines that the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGC are equal (Yes in step S505), it proceeds to step S506. Then, the control device 28 uses the left column PAL and the central column PAC of the target object P to determine the attitude of the target object P (step S506), and after storing the information of the columns to be used in the storage unit 72, it terminates the processing procedure shown in Figure 16 and returns to step S107 shown in Figure 8.
[0083] Furthermore, if the control device 28 determines that the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGC are not equal (No in step S505), it proceeds to step S507. The control device 28 determines whether the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are equal (step S507). For example, if both the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are 1, the control device 28 determines that the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are equal.
[0084] If the control device 28 determines that the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are equal (Yes in step S507), it proceeds to step S508. Then, the control device 28 uses the central column PAC and the right column PAR of the target object P to determine the attitude of the target object P (step S508), and after storing the information of the columns to be used in the storage unit 72, it terminates the processing procedure shown in Figure 16 and returns to step S107 shown in Figure 8.
[0085] Furthermore, if the control device 28 determines that the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are not equal (No in step S507), it proceeds to step S509. The control device 28 determines whether the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGR are equal (step S509). For example, if the reflection intensity discrimination flag FGL and the reflection intensity discrimination flag FGR are both 1, the control device 28 determines that the reflection intensity discrimination flag FGC and the reflection intensity discrimination flag FGR are equal.
[0086] If the control device 28 determines that the reflection intensity discrimination flag FGLC and the reflection intensity discrimination flag FGR are equal (Yes in step S509), it proceeds to step S510. Then, the control device 28 uses the left column PAL and the right column PAR of the target object P to determine the attitude of the target object P (step S510), and after storing the information of the columns to be used in the storage unit 72, it terminates the processing procedure shown in Figure 16 and returns to step S107 shown in Figure 8.
[0087] Furthermore, if it is determined that the reflection intensity determination flag FGLC and the reflection intensity determination flag FGR are not equal (No in step S509), the processing procedure shown in Figure 16 is terminated, and the system returns to step S107 shown in Figure 8.
[0088] In Figure 8, when the processing in step S107 is completed, the control device 28 proceeds to step S108. The control device 28 calculates the attitude of the target object P based on the reflection intensities of the left column PAL, the central column PAC, and the right column PAR of the target object P (step S108). For example, the control device 28 calculates the attitude of the target object P based on the position information of the central column PAC of the target object P and the result of the reflection intensity determination in step S107.
[0089] Figure 17 illustrates an example of extracting the orientation of the columns of the target object P. Figure 17 shows a top view of the target object P as measured. As shown in Figure 17, the control device 28 extracts measurement values 700 (point cloud) of the left column PAL and right column PAR of the target object P based on the position information of the central column PAC of the target object P and the result of the reflection intensity determination in step S107. Using the least squares method, it obtains an approximate straight line 710 based on the reflection intensity, distance, etc., of the extracted measurement values 700, and extracts the orientation of the target object P from the slope of the approximate straight line 710. Once the control device 28 stores the orientation information of the target object P as position information 724 in the storage unit 72, it terminates the processing procedure shown in Figure 8.
[0090] The control device 28 obtains the calculated height of the insertion opening PB of the target object P and the central position of the target object P by executing the processing procedure shown in Figure 8. The control device 28 controls the lift device 220 so that the fork control unit 88 is at the height of the insertion opening PB of the target object P and at the central position of the target object P, thereby moving the fork 24 in the vertical direction ZA and the horizontal direction YA. Then, when the fork 24 is positioned in a position where it can be inserted into the insertion opening PB of the target object P, the control device 28 moves the mast 22 forward in the longitudinal direction XA, thereby inserting the fork 24 into the insertion opening PB of the target object P.
[0091] In this way, the mobile body 10 can calculate the height of the insertion opening PB for the target object P and the central position of the target object P, even if the heights of the target objects P are different, by equipping the fork 24 below the fork 24 in the vertical direction ZA with a sensor 26B capable of measuring three-dimensional position and distance. The mobile body 10 can accommodate insertion of the fork 24 into the insertion opening PB of target objects P at different heights by controlling the movement of the fork 24 based on the calculated height of the insertion opening PB for target objects P. As a result, the mobile body 10 can improve the accuracy of detecting the position and orientation of the target object P without being limited by the installation height of the target object P to be measured.
[0092] In this embodiment, the calculation unit 86 of the mobile body 10 calculates the orientation of the target object P based on the reflectivity, distance, and left-right position of columns with equal reflectivity among a plurality of columns on the surface of the target object P on which the insertion slot PB is provided. Columns with equal reflectivity include those with similar reflectivity. For example, the calculation unit 86 may calculate the orientation of the target object P based on a straight line connecting the left-right positions of columns with equal reflectivity. As a result, the mobile body 10 calculates the orientation of the target object based on all of the reflectivity, distance, and left-right position of columns with equal reflectivity, thereby further improving the accuracy of calculating the orientation of the insertion slot PB of the target object P.
[0093] (Second Embodiment) Next, a second embodiment will be described. In the second embodiment, the basic configuration of the movement control system 1 is the same as in the first embodiment and includes a mobile body 10, a management device 12, and an information processing device 14. The mobile body 10, as in the first embodiment, includes a vehicle body 20, wheels 20A, straddle legs 21, a mast 22, forks 24, a side shift device 25, a sensor 26, and a control device 28. The control device 28, as in the first embodiment, includes a communication unit 70, a storage unit 72, and a control unit 74. The control unit 74 includes an information acquisition unit 80, a movement control unit 82, a detection control unit 84, a calculation unit 86, and a fork control unit 88. In the second embodiment, parts that have the same configuration as the first embodiment will not be described.
[0094] Figure 18 is a schematic diagram illustrating an example of the relationship between the forks 24 of the mobile body 10 and the target object P according to the second embodiment. In the example shown in Figure 18, the backrest 23, which is provided with a pair of forks 24, and the target object P are shown, and other components are omitted.
[0095] As shown in Figure 18, the backrest 23 of the mobile body 10 has a pair of forks 24 with a length 24L and a width 24W, which are provided along the longitudinal direction XA of the mobile body 10. The mobile body 10 has a first center, with the midpoint of the pair of forks 24 on the backrest 23 as the first center, and a mobile body coordinate system with a left-right direction YF along the backrest 23 and a longitudinal direction XF along the forks 24 passing through the first center. The target object P has a second center, with the central position of the central column PAC on the front surface Pa as the second center, and a target object coordinate system with a left-right direction YP along the front surface Pa and a longitudinal direction XP along the inner wall PF of the insertion opening PB passing through the second center.
[0096] Figure 19 is a schematic diagram illustrating an example of inserting a fork 24 into the insertion opening PB of the target object P. In Figure 19, scene C31 shows an example of inserting a fork 24 using a conventional method, and scene C32 shows an example of inserting a fork 24 using the method of this disclosure.
[0097] The control device 28 of the mobile body 10 guides the fork 24 to a position where the mobile body coordinates and the target coordinates coincide. However, if a side shift device 25 is provided, it may be possible to adjust only the left-right direction YF of the mobile body coordinates without adjusting the attitude of the fork 24.
[0098] In the conventional method, as shown in scene C31 of Figure 19, the fork 24 is inserted into the insertion opening PB of the target object P without considering the orientation of the fork 24. As a result, in the conventional method, the first distance between the fork 24 and the inner wall PF of the target object P in the region P110 of the insertion opening PB is longer than the second distance between the fork 24 and the inner wall PF of the target object P in the region P120 inside the target object P, making it easier for the fork 24 to come into contact with the inner wall PF of the target object P.
[0099] In contrast, the method according to the second embodiment, as shown in scene C32 of Figure 19, takes into account the orientation of the fork 24 and estimates the position and orientation of the fork 24 with respect to the insertion opening PB after the fork 24 has been inserted into the insertion opening PB of the target object P. For example, the calculation unit 86 of the control device 28 calculates the amount of displacement SL of the fork 24 using the following equation (Equation 1). Displacement SL = Length of fork 24 / 2 * sin(fork attitude angle - target attitude angle) ... (Equation 1)
[0100] The calculation unit 86 of the control device 28 calculates the displacement amount SL of the fork 24 by substituting the attitude of the target object P, the attitude of the fork 24, and the length 24L of the fork 24, which were calculated in the first embodiment, into (Equation 1). The calculation unit 86 estimates the attitude of the fork 24 from, for example, the actual control results of the fork 24. The calculation unit 86 acquires fork information such as the length 24L of the fork 24 and the distance between a pair of forks 24. Then, the fork control unit 88 of the control device 28 controls the movement of the fork 24 in the left-right direction YF by controlling the side shift device 25 and the drive device 29 based on the displacement amount SL of the fork 24. As a result, the moving body 10 can adjust the position and attitude of the fork 24 to take into account the positional relationship of the fork 24 with respect to the insertion opening PB after the fork 24 has been inserted into the insertion opening PB of the target object P.
[0101] Thus, the mobile body 10 according to the second embodiment calculates a displacement amount SL of the fork 24 that prevents the fork 24 from contacting the inner wall of the insertion opening PB of the target object P, based on the calculated orientation of the target object P and the orientation and length of the fork 24, and controls the movement of the fork 24 in the left-right direction YA based on the displacement amount SL of the fork 24. As a result, the mobile body 10 can avoid contact between the fork 24 inserted into the insertion opening PB of the target object P and the inner wall of the target object P by considering the positional relationship between the fork 24 and the insertion opening PB after the fork 24 has been inserted into the insertion opening PB of the target object P.
[0102] (Third embodiment) Next, a third embodiment will be described. In the third embodiment, the basic configuration of the movement control system 1 is the same as in the first embodiment and includes a mobile body 10, a management device 12, and an information processing device 14. The mobile body 10, as in the first embodiment, includes a vehicle body 20, wheels 20A, straddle legs 21, a mast 22, forks 24, a side shift device 25, a sensor 26, and a control device 28. The control device 28, as in the first embodiment, includes a communication unit 70, a storage unit 72, and a control unit 74. The control unit 74 includes an information acquisition unit 80, a movement control unit 82, a detection control unit 84, a calculation unit 86, and a fork control unit 88. In the third embodiment, parts that have the same configuration as the first embodiment will not be described.
[0103] In conventional technology, even if the height of the target object P is known, it is necessary to raise and lower the fork 24 in order to grasp the shape of the target object P, and after the shape of the target object P is grasped, it is necessary to change the height of the fork 24 to an appropriate height.
[0104] Figure 20 is a diagram illustrating the operation overview of the mobile body 10 of the third embodiment. As shown in Figure 20, the mobile body 10 according to the third embodiment is equipped with a sensor 26B located below the fork 24 in the vertical direction ZA, which is capable of measuring the three-dimensional position and distance of the target object P. Therefore, if the height of the target object P is known, the mobile body 10 can grasp the shape of the target object P without raising or lowering the fork 24, and after grasping the shape of the target object P, the raising or lowering of the fork 24 can be made unnecessary. As a result, the mobile body 10 can improve throughput by eliminating the need to raise or lower the fork 24.
[0105] The calculation unit 86 of the mobile body 10 calculates the height of the insertion opening PB of the target object P and the central position of the target object P based on sensor information 723 that allows the sensor 26B to identify the target object P, without performing any upward or downward movement of the fork 24. For example, as shown in Figure 20, when the mobile body 10 moves to the target position and picks up the target object P, it measures the target object P located in front of it with the sensor 26B without performing any upward or downward movement of the fork 24. Then, based on the sensor information 723 that measured the target object P, the mobile body 10 calculates the height of the insertion opening PB of the target object P and the central position of the target object P, and moves the fork 24 to the height of the insertion opening PB of the target object P. As a result, the mobile body 10 can sense the insertion opening PB of the target object P into which the fork 24 is inserted, with the fork 24 positioned at the height of the insertion opening PB of the target object P. As a result, the mobile unit 10 can perform the insertion operation of the forks 24 without performing unnecessary lifting and lowering movements of the forks 24, thereby contributing to an improvement in throughput during the insertion operation of the forks 24.
[0106] (effect) The mobile body 10 according to the first aspect of this disclosure includes a fork 24 that can be inserted into an insertion opening PB of a target object P, a fork control unit 88 that controls the movement of the fork 24 in the vertical direction ZA and the left-right direction YA, a sensor 26B provided below the fork 24 in the vertical direction ZA and capable of measuring the three-dimensional position and distance of the target object P, and a calculation unit 86 that calculates the height of the insertion opening PB of the target object P and the central position of the target object P based on sensor information 723 that can identify the target object P measured by the sensor 26B. The fork control unit 88 controls the movement of the fork 24 in the vertical direction ZA and the left-right direction YA based on the height of the insertion opening PB of the target object P and the central position of the target object P. As a result, the mobile body 10 can calculate the height of the insertion opening PB of the target object P and the central position of the target object P even if the height of the target object P is different, by providing the sensor 26B, which is capable of measuring three-dimensional position and distance, below the fork 24 in the vertical direction ZA. The mobile unit 10 controls the movement of the forks 24 based on the calculated height of the insertion opening PB for the target object P and the central position of the target object P, thereby enabling the forks 24 to be inserted into the insertion opening PB of target objects P at different heights. As a result, the mobile unit 10 can improve the accuracy of detecting the position and orientation of the target object P without being limited by the installation height of the target object P to be measured.
[0107] In the mobile body 10 according to the second aspect of this disclosure, the target object P has a column formed between a pair of adjacent sockets PB, and the calculation unit 86 calculates the position of the central column PAC on the surface of the target object P on which the sockets PB are provided as the central position, and calculates the left and right positions of the central column PAC. As a result, the mobile body 10 can calculate the height of the sockets PB on the target object P and the central position of the target object P even when the width of the target object P is unknown, by focusing on the left and right positions of the central column PAC on the surface of the target object P on which the sockets PB are provided. Furthermore, since the mobile body 10 does not need to measure the entire target object P with the sensor 26B, it is possible to measure while in close proximity to the target object P.
[0108] In the mobile body 10 according to the third aspect of this disclosure, the calculation unit 86 limits the distance measurement range 260 in which the target object P is located based on the sensor information 723, and calculates the height of the socket PB of the target object P and the central position of the target object P from the distance measurement range 260. As a result, the mobile body 10 can suppress the processing load of the mobile body 10 by limiting the distance measurement range 260 to a narrower range than the range actually measured by the sensor information 723. Furthermore, the mobile body 10 can improve the accuracy of calculating the height of the socket PB of the target object P and the central position of the target object P by removing information that may cause misjudgment from the sensor information 723.
[0109] In the mobile body 10 according to the fourth aspect of this disclosure, the calculation unit 86 determines the reflection intensity of multiple columns on the surface of the target object P on which the insertion opening PB is provided, calculates the orientation of the target object P based on the reflection intensity, and the fork control unit 88 controls the movement of the fork 24 in the vertical direction ZA and the left-right direction YA based on the height of the insertion opening PB of the target object P, the central position of the target object PB, and the orientation of the target object P. As a result, the mobile body 10 calculates the orientation of the target object P from the orientations of multiple columns on the surface of the target object P on which the insertion opening PB is provided, thereby improving the accuracy of calculating the orientation of the insertion opening PB of the target object P.
[0110] In the mobile body 10 according to the fifth aspect of this disclosure, the calculation unit 86 calculates the attitude of the target object based on the reflectance, distance, and left-right position of columns with equal reflectance among a plurality of columns on the surface of the target object P on which the insertion slot PB is provided. For example, if the measured reflectance of the target object P is low, variations in reflectance will occur, and if the attitude of the target object P is calculated using columns with low reflectance and columns with high reflectance, the error will increase due to the effect of variations. In contrast, the mobile body 10 calculates the attitude of the target object based on all of the reflectance, distance, and left-right position of columns with equal reflectance, so the accuracy of calculating the attitude of the insertion slot PB of the target object P can be further improved.
[0111] The mobile body 10 according to the sixth aspect of this disclosure further includes a movement control unit 82 that controls the movement of the mobile body 10 so that the forks 24 approach the insertion opening PB of the target object P. As a result, the mobile body 10 can control the movement of the forks 24 based on the calculated height of the insertion opening PB of the target object P and the central position of the target object P after the forks 24 have been automatically positioned at the location of the insertion opening PB of the target object P, so that it can handle inserting the forks 24 into insertion openings PB of target objects P of different heights in automatic operation.
[0112] In the mobile body 10 according to the seventh aspect of this disclosure, the calculation unit 86 calculates the amount of displacement SL of the fork 24 so that the fork 24 does not come into contact with the inner wall of the insertion opening PB of the target object P, based on the calculated attitude of the target object P and the attitude and length of the fork 24, and the fork control unit 88 controls the movement of the fork 24 in the left-right direction YA based on the amount of displacement SL of the fork 24. As a result, the mobile body 10 can avoid contact between the fork 24 inserted into the insertion opening PB and the inner wall of the target object P by considering the positional relationship between the fork 24 and the insertion opening PB after the fork 24 has been inserted into the insertion opening PB of the target object P.
[0113] In the mobile body 10 according to the eighth aspect of this disclosure, the calculation unit 86 calculates the height of the insertion opening PB of the target object P and the central position of the target object PB based on sensor information 723 that can identify the target object P measured by the sensor 26B, without performing the lifting or lowering operation of the fork 24. As a result, the mobile body 10 can sense the insertion opening PB of the target object P into which the fork 24 is inserted, with the fork 24 positioned at the height of the insertion opening PB of the target object P. As a result, the mobile body 10 can perform the insertion operation of the fork 24 without performing unnecessary lifting or lowering operations of the fork 24, thereby contributing to an improvement in the throughput of the insertion operation of the fork 24.
[0114] A control method according to a ninth aspect of this disclosure is a control method for a mobile body 10 comprising: a fork 24 that can be inserted into an insertion opening PB of a target object P; a fork control unit 88 that controls the movement of the fork 24 in the vertical direction ZA and the left-right direction YA; and a sensor 26B provided below the fork 24 in the vertical direction ZA and capable of measuring the three-dimensional position and distance of the target object P, the control method comprising: a step of calculating the height of the insertion opening PB of the target object P and the central position of the target object P based on sensor information 723 that can identify the target object P measured by the sensor 26B; and a step of the fork control unit 88 controlling the movement of the fork 24 in the vertical direction ZA and the left-right direction YA based on the height of the insertion opening PB of the target object P and the central position of the target object P. As a result, by providing the sensor 26B capable of measuring three-dimensional position and distance below the fork 24 in the vertical direction ZA, the control method can calculate the height of the insertion opening PB of the target object P and the central position of the target object P using the mobile body 10, even if the height of the target object P is different. The control method allows the mobile body 10 to control the movement of the fork 24 based on the calculated height of the insertion opening PB for the target object P and the central position of the target object P, thereby accommodating insertion of the fork 24 into the insertion opening PB of target objects P at different heights. As a result, the control method can improve the accuracy with which the mobile body 10 detects the position and orientation of the target object P, without being limited by the installation height of the target object P to be measured.
[0115] A program according to a tenth aspect of this disclosure causes a mobile body 10, which includes a fork 24 that can be inserted into an insertion opening PB of a target object P, a fork control unit 88 that controls the movement of the fork 24 in the vertical direction ZA and the left-right direction YA, and a sensor 26B provided below the fork 24 in the vertical direction ZA and capable of measuring the three-dimensional position and distance of the target object P, to execute the following steps: calculate the height of the insertion opening PB of the target object P and the central position of the target object P based on sensor information 723 that can identify the target object P measured by the sensor 26B; and control the movement of the fork 24 in the vertical direction ZA and the left-right direction YA based on the height of the insertion opening PB of the target object P and the central position of the target object P. The program controls the movement of the fork 24 to the mobile body 10 based on the calculated height of the insertion opening PB for the target object P and the central position of the target object P, thereby enabling the fork 24 to be inserted into the insertion opening PB of target objects P at different heights. As a result, the program can improve the accuracy with which the mobile body 10 detects the position and orientation of the target object P, without being limited by the installation height of the target object P being measured.
[0116] Although embodiments of the present disclosure have been described above, the embodiments are not limited to those described herein. Furthermore, the aforementioned components include those that can be easily conceived by those skilled in the art, those that are substantially the same, and those that fall within the so-called equivalent range. Moreover, the aforementioned components can be combined as appropriate. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the gist of the embodiments described above. [Explanation of symbols]
[0117] 1. Mobility control system 10 Mobile Units 12 Management device 14 Information Processing Devices 20 car bodies 21 Straddle Legs 22 Mast 23 Backrest 24, 24A, 24B Fork 25 Side shift device 26, 26A, 26B sensors 28 Control device 29 Drive unit 36. Work Decision Department 50 Work content acquisition section 52 Mobile Unit Selection Section 70 Communications Department 72 Memory section 74 Control Unit 80 Information acquisition department 82 Mobile Control Unit 84 Detection Control Unit 86 Calculation Unit 88 Fork Control Unit 220 Lifting device 260,260X distance measurement range 260E Processing range 261 Split area 721 Programs 722 Work Information 723 Sensor Information 724 Location information 1000 installation stand 2000 luggage P target Pa Front
Claims
1. A fork that can be inserted into the slot of the target object, A fork control unit that controls the vertical and horizontal movement of the fork, A sensor provided below the fork in the vertical direction, capable of measuring the three-dimensional position and distance of the target object, A calculation unit calculates the height of the insertion opening of the target object and the central position of the target object based on sensor information that allows the sensor to identify the target object, Equipped with, The fork control unit is a moving body that controls the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object and the central position of the target object.
2. The aforementioned target object has a column formed between a pair of adjacent insertion openings. The calculation unit calculates the position of the central column on the surface of the target object on which the insertion opening is provided as the central position, and calculates the left and right positions of the central column, as described in claim 1.
3. The mobile body according to claim 2, wherein the calculation unit limits the distance measurement range in which the target object is located based on the sensor information, and calculates the height of the insertion opening of the target object and the central position of the target object from the distance measurement range.
4. The calculation unit determines the reflective intensity of the multiple columns on the surface of the target object on which the insertion opening is provided, and calculates the orientation of the target object based on the reflective intensity. The movable body according to claim 3, wherein the fork control unit controls the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object, the central position of the target object, and the orientation of the target object.
5. The mobile body according to claim 4, wherein the calculation unit calculates the attitude of the target object based on the reflectance, distance, and left-right position of the columns among a plurality of columns on the surface of the target object provided with the insertion opening that have the same reflectance.
6. The mobile body according to claim 5, further comprising a movement control unit that controls the movement of the mobile body so that the fork approaches the insertion opening of the target object.
7. Based on the calculated orientation of the target object and the orientation and length of the fork, the calculation unit calculates the amount of displacement of the fork so that the fork does not come into contact with the inner wall of the insertion opening of the target object. The movable body according to claim 4, wherein the fork control unit controls the movement of the fork in the left-right direction based on the amount of displacement of the fork.
8. The mobile body according to claim 1, wherein the calculation unit calculates the height of the insertion opening of the target object and the central position of the target object based on sensor information that allows the sensor to identify the target object, while the fork is not performing any lifting or lowering operation.
9. A method for controlling a moving object comprising: a fork that can be inserted into an insertion opening of a target object; a fork control unit that controls the vertical and horizontal movement of the fork; and a sensor provided below the fork in the vertical direction and capable of measuring the three-dimensional position and distance of the target object, A step of calculating the height of the insertion opening of the target object and the central position of the target object based on sensor information that allows the sensor to identify the target object measured by the sensor, The steps include: the fork control unit controlling the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object and the central position of the target object; A control method including
10. A mobile body comprising: a fork that can be inserted into an insertion opening of a target object; a fork control unit that controls the vertical and horizontal movement of the fork; and a sensor provided below the fork in the vertical direction and capable of measuring the three-dimensional position and distance of the target object, A step of calculating the height of the insertion opening of the target object and the central position of the target object based on sensor information that allows the sensor to identify the target object measured by the sensor, The steps include: the fork control unit controlling the vertical and horizontal movement of the fork based on the height of the insertion opening of the target object and the central position of the target object; A program that executes something.
Citation Information
Patent Citations
Pallet detection device, forklift, pallet detection method, and program
JP2022040866A