Detection system, processing device, mobile body, detection method, and storage medium
By using point group information fitting technology in the detection system, the problem of identifying the position and posture of transported objects such as cage carts in unmanned transport vehicles has been solved, realizing autonomous navigation of unmanned transport vehicles and automated transport of trolleys, and improving the space utilization efficiency of logistics sites.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KK TOSHIBA
- Filing Date
- 2022-06-15
- Publication Date
- 2026-04-24
AI Technical Summary
In logistics and distribution sites, it is difficult to identify the position and posture of the objects being transported, especially in unmanned transport vehicles, where it is difficult to accurately detect and move the position and posture of the objects being transported, such as cages.
By employing a detection system, point group information is obtained, and the shape model is fitted with the point group information to estimate the position and orientation of the detected object. Information related to the position of the moving target is output, thereby realizing autonomous navigation of the unmanned transport vehicle and automated handling of the trolley.
It enables simple and accurate identification of the position and posture of transported objects, supports the autonomous movement of unmanned transport vehicles and the automated operation of trolleys, and improves the space utilization efficiency of logistics sites.
Smart Images

Figure CN115494836B_ABST
Abstract
Description
[0001] Related applications
[0002] This application is based on Japanese Patent Application 2021-101967 (filed on June 18, 2021), from which it enjoys priority benefits. This application incorporates the entire contents of the basic application by reference. Technical Field
[0003] Embodiments of the present invention relate to detection systems, processing devices, mobile bodies, detection methods, and storage media. Background Technology
[0004] In logistics and distribution sites, sometimes goods are loaded and transported using transport vehicles such as cage carts. Automated guided vehicles (AGVs) have requirements such as detecting and transporting the transported goods, and positioning other transported goods nearby. However, identifying the position and orientation of the positioned transported goods is sometimes not easy.
[0005] [Existing technical documents]
[0006] [Patent Literature]
[0007] [Patent Document 1] Japanese Patent Application Publication No. 2020-077295 Summary of the Invention
[0008] The technical problem to be solved by the present invention is to provide a detection system, processing device, moving body, detection method and storage medium for identifying the position and posture of a transported object.
[0009] The detection system of this embodiment includes an acquisition unit, an estimation unit, and an output unit. The acquisition unit acquires point group information, which is the point group information corresponding to multiple positions of the object to be detected after scanning light. The estimation unit uses the matching between the point group information and a shape model related to the object to be detected as an evaluation metric to estimate the position and orientation of the object to be detected. The output unit outputs information related to the position of the moving target based on the estimation result. The estimation unit fits the point group information of the point group information to a shape model representing the shape of the object to be detected, and uses the point group information existing outside the shape model to estimate the position and orientation of the object to be detected.
[0010] The detection system according to the implementation method can more easily identify the position and posture of the object being detected, such as the object being transported. Attached Figure Description
[0011] Figure 1A This is a schematic diagram illustrating an example of an application scenario for the detection system of the first embodiment.
[0012] Figure 1B yes Figure 1A A top view of the application site shown.
[0013] Figure 2 This is a top view of the unmanned transport vehicle according to the first embodiment.
[0014] Figure 3 This is a side view of the unmanned transport vehicle according to the first embodiment.
[0015] Figure 4 This is a structural diagram of the unmanned transport vehicle according to the first embodiment.
[0016] Figure 5 This is a diagram used to illustrate the extraction target area reference table that specifies the extraction target area in the first embodiment.
[0017] Figure 6A and Figure 6B This is a diagram used to illustrate the extraction target area in the first embodiment.
[0018] Figure 7 is a diagram illustrating the point group extraction process of the first embodiment.
[0019] Figure 8 This is a flowchart illustrating the detection process of the first embodiment.
[0020] Figure 9 This is a diagram used to illustrate the fitting algorithm of the first embodiment.
[0021] Figure 10 This diagram illustrates the management of the storage status of the trolley in the first embodiment.
[0022] Figure 11 This is a diagram used to illustrate the application of the curved outline in the modified example.
[0023] Figure 12 This is a flowchart illustrating the detection process of the second embodiment.
[0024] Figure 13 This is a structural diagram of the unmanned transport vehicle in the third embodiment.
[0025] Figure 14 This is a diagram used to illustrate the extraction target area in the third embodiment.
[0026] Figure 15 This is a schematic diagram illustrating an example of an application scenario for the detection system of the fourth embodiment.
[0027] Figure 16 This is a structural diagram of the detection system according to the fourth embodiment.
[0028] Figure 17This is a diagram illustrating an example of the hardware structure of the processing device in an implementation method. Detailed Implementation
[0029] Hereinafter, the detection system, processing device, moving body, detection method, and storage medium of the embodiments will be described with reference to the accompanying drawings. Furthermore, in the following description, structures having the same or similar functions will be labeled with the same reference numerals. Also, repeated descriptions of these structures will sometimes be omitted. Additionally, the term "based on XX" as used in this application means "at least based on XX," including cases where it is based on other elements besides XX. Furthermore, "based on XX" is not limited to the direct use of XX, but also includes cases where calculations or processing have been performed on XX. "XX" can be any element (e.g., any information).
[0030] In addition, let's define the +X direction, -X direction, +Y direction, -Y direction, +Z direction, and -Z direction. The +X, -X, +Y, and -Y directions are the directions along the ground where the automated guided vehicle (AGV) moves. The +X direction, for example, is one direction of movement for the AGV 100, sometimes referred to as "forward." The -X direction is the opposite direction to the +X direction, sometimes referred to as "rear." Without distinguishing between +X and -X directions, they are simply referred to as the "X direction." The +Y and -Y directions are directions that intersect (e.g., approximately orthogonal) the X direction, sometimes referred to as the width direction of the vehicle body 10 or "side." The +Y and -Y directions are opposite directions to each other. Without distinguishing between +Y and -Y directions, they are simply referred to as the "Y direction." The +Z and -Z directions are directions that intersect (e.g., approximately orthogonal) the X and Y directions, for example, vertical directions. The +Z direction is the upward direction. The -Z direction is the opposite direction to the +Z direction. Without distinguishing between +Z and -Z directions, they are simply referred to as the "Z direction." Furthermore, the terms "front," "rear," "side," and "vehicle width direction" used in this manual are used to describe the viewpoint based on one direction of movement of the automated guided vehicle 100 for ease of explanation. However, the direction of movement of the automated guided vehicle 100 is not limited to the +X direction. The automated guided vehicle 100 can also move in the -X, +Y, and -Y directions.
[0031] (First Implementation)
[0032] Figure 1A This is a schematic diagram showing an example of an application location of the detection system 1 according to the first embodiment. Figure 1B yes Figure 1A A top view of the application site shown. Figure 2 This is a top view of the unmanned transport vehicle 100 according to the first embodiment. Figure 3 This is a side view of the unmanned transport vehicle 100 according to the first embodiment.
[0033] The detection system 1 of this embodiment includes part or all of the automated guided vehicle 100. The automated guided vehicle 100 can be an example of the detection system 1. The detection system 1 can also be formed as part of the automated guided vehicle 100. Figure 1A and Figure 1B The image shows the unmanned transport vehicle 100 involved in the detection system 1, as well as the trolleys 90A and 90B that are the objects to be transported.
[0034] Carts 90A and 90B are the objects transported by the automated guided vehicle 100, such as rollbox pallets (RBP). Cart 90A is positioned in area ZA when loaded with goods. Area ZB, adjacent to area ZA, is not equipped with any carts. Cart 90B is a cart destined for area ZB. Figure 1A The state shown indicates the stage where trolley 90B is being transported by automated guided vehicle 100 to area ZB. Additionally, in the following description, when trolleys 90A and 90B are not distinguished, they may sometimes be referred to simply as trolley 90.
[0035] For example, Figure 1A and Figure 1B The application shown is an example of an unloading area within a logistics warehouse. In such an area, trolleys 90 collect and load goods (loads) being transported on them in a prescribed order. Thus, the trolleys 90, which are configured first, are loaded with goods and await removal from them.
[0036] The trolley 90 in this embodiment is an example of a transport object (detection object). The trolley 90 can also be configured to be detected by scanning with projected light. For example, if the trolley 90 has a cage, it can be a moving body with a shell whose interior space is only partially visible, or it can be a moving body with a shell whose interior space is completely covered and cannot be seen from the outside. In either case, a group of points based on the position of the shell detected by scanning can be extracted, and its shape can be identified by fitting the information of this group of points. In this way, it can be applied to all cases where the shape of the trolley 90 can be identified. In contrast, even if the trolley 90 is a flat (pallet) trolley without a cage, as long as the loading posture when loading and transporting goods is (approximately) fixed, a group of points based on the loading posture detected by scanning can be extracted, and the shape of the loading posture can be identified by fitting the information of this group of points. In this way, even if the trolley 90 does not have a cage, it can be applied to all cases where the shape of the loading posture can be identified. This is an example that can be considered the same as the case of the trolley 90 described above, which has a cage-like outer shell from which the inside cannot be seen from the outside.
[0037] The following examples illustrate situations where detecting the outer corner is difficult. The trolley 90 is configured such that its outer shell, corresponding to its side, includes a tubular frame and a resin mesh. The interior space of the trolley 90 can be observed from its side. Furthermore, the presence, quantity, and loading posture of goods inside the trolley 90 are sometimes not uniquely determined.
[0038] In the case of collecting and configuring multiple trolleys 90 in such a collection site, the space utilization efficiency of the collection site can be improved by arranging the trolleys 90 in a relatively close configuration. In this embodiment, an example of automating the handling operation of the trolleys 90 by introducing an unmanned transport vehicle 100, which is an example of a mobile robot, will be described.
[0039] To meet such requirements, the movement target of the unmanned transport vehicle 100 needs to be set by detecting the position and attitude of the set-up trolley 90A and arranging and setting up the trolley 90B in the adjacent position, and then moving it using a suitable movement path.
[0040] The automated guided vehicle 100 is, for example, an autonomous mobile cart that does not require operator control and is designed to move independently. The automated guided vehicle 100 is, for example, a low-floor type AGV (Automatic Guided Vehicle). However, the automated guided vehicle 100 can also be a wireless type that does not require connections to lines drawn on the ground. Furthermore, Figure 1B The reference numeral DZF in the attached diagram indicates an example of an area where the automated guided vehicle 100 detects objects such as the trolley 90 and obstacles. This will be discussed later.
[0041] The automated guided vehicle 100 crawls under and engages with the trolley 90B. The same applies to trolley 90A. A combined unit 100P is formed by the automated guided vehicle 100 and the trolley 90 engaged with it. The automated guided vehicle 100 is not limited to the example described above and can be other types of automated guided vehicles. For example, the automated guided vehicle 100 can also be configured to be operable by an operator.
[0042] For example, when the unmanned transport vehicle 100 is combined with each of the trolleys 90, it can move the trolleys 90A loaded with goods or the trolleys 90B unloaded with goods one by one in the work area.
[0043] The trolley 90 includes, for example, a loading section 91 and casters (wheels) 92. The loading section 91 is for loading goods. The loading section 91 includes a loading plate 91a and a protective grille 91b. The loading plate 91a is, for example, a flat plate. Goods are loaded on the loading plate 91a. The protective grille 91b is, for example, erected along three sides of the outer edge of the loading plate 91a, and has an opening on one side (the side facing the +Y direction).
[0044] For example, the protective grid 91b, erected along three sides of the outer edge of the trolley 90, is formed by a tubular frame containing components arranged in a grid pattern. The shape of the loading plate 91a is not limited, and the protective grid 91b can also be formed by a tubular frame arranged parallel to the vertical direction. Furthermore, a resin mesh can be provided on a portion of the protective grid 91b. Alternatively, a resin mesh separate from the protective grid 91b can be used to cover the cargo. In the above cases, the size of the grid formed in the tubular frame, the spacing of the tubular frame, and the width of the holes in the resin mesh are determined based on the shape and size of the cargo loaded on the trolley 90, to ensure that the cargo will not fall. The aforementioned tubular frame is an example of a component that reflects or scatters light.
[0045] Casters 92 are respectively disposed at the four corners of the back of the loading plate 91a. The casters 92 support the loading section 91 from below. The casters 92 are the traveling parts. Each caster 92 can rotate around the Z-direction, allowing for changes in the direction of travel. Furthermore, the object being transported is not limited to the trolley 90 shown in the figure. For example, two of the four casters 92 can be a two-axle fixed type that does not rotate around the Z-direction. Transport is still possible even if movement is restricted by the two fixed casters 92. The loading section 91 is an example of an object being inspected.
[0046] Figure 2 The unmanned transport vehicle 100 shown includes, for example, a vehicle body 10, a lifting mechanism 20, a sensor device 30, a movement control unit 110, a data processing unit 300, and a data storage unit 400. The vehicle body 10 has a body shell 11 as its body and a movement mechanism 12. The thickness of the vehicle body 10 is the thickness that extends below the loading section 91 of the trolley 90. The body shell 11 forms the outer contour of the vehicle body 10. The movement mechanism 12 is a running mechanism equipped with four wheels 12a-12d respectively arranged at the four corners of the vehicle body 10 and motors 13a-13d driving each wheel 12a-12d. The motors 13a-13d are connected to the wheels 12a-12d via axles.
[0047] The wheels 12a-12d of the moving mechanism 12 are, for example, Mecanum wheels. The moving mechanism 12 moves the vehicle body 11. The moving mechanism 12 is, for example, an omnidirectional moving mechanism that moves in all directions by individually rotating each wheel 12a-12d using motors 13a-13d. The moving mechanism 12 is configured to move the automated guided vehicle 100 within actual space. The automated guided vehicle 100 can move in all directions by adjusting the rotation direction and rotation speed of each wheel in the moving mechanism 12.
[0048] The moving mechanism 12 can also be an omnidirectional moving mechanism with wheels other than Mecanum wheels, such as an omnidirectional wheel. Alternatively, the moving mechanism 12 can also be configured as a moving mechanism based on a differential two-wheel configuration. Furthermore, the moving mechanism 12 can also include a steering control mechanism, capable of steering some or all of each wheel in addition to controlling the wheel's rotational speed and direction. Encoders are mounted on the axles connecting the wheels 12a-12d and the motors 13a-13d respectively, enabling continuous measurement of the rotational speed of each wheel 12a-12d.
[0049] like Figure 3 As shown, the lifting mechanism 20 includes two lifting plates 21a and 21b and lifting mechanisms 22a and 22b. Lifting mechanisms 22a and 22b include linkage mechanisms and actuators to raise and lower each lifting plate 21a and 21b. The lifting plates 21a and 21b can be raised and lowered by extending and retracting the linkage mechanisms in the lifting mechanisms 22a and 22b. For example, when the lifting plates 21a and 21b are moving upwards (in the +Z direction), they support the bottom surface of the trolley 90, and the relative position of the unmanned transport vehicle 100 with respect to the trolley 90 is fixed. Thus, the unmanned transport vehicle 100 and the trolley 90 combine to form a combined body 100P (see reference). Figure 1A The lifting mechanism 20 lowers the lifting plates 21a and 21b from their high load-bearing positions, releasing them from their supporting loading section 91 state. As a result, the connection between the unmanned transport vehicle 100 and the trolley 90 in the assembly 100P is released.
[0050] In this application, "connection" refers to a broad concept encompassing the degree to which two objects are physically linked. Besides supporting the trolley 90 (e.g., lifting it from below), it also includes engaging with the trolley 90 (e.g., hooking) or joining with the trolley 90 (e.g., directly or indirectly connecting). For example, engaging portions protruding towards and engaging with the trolley 90, or joining portions joining with the trolley 90, may be provided. The automated guided vehicle 100 can transport objects simply by connecting with the trolley 90 using any of the methods described above.
[0051] like Figure 3As shown, the sensor device 30 includes a sensor 31 and a support 32. The support 32 is disposed on the vehicle body 10 and supports the sensor 31. The sensor 31 is, for example, a 3D distance sensor such as a laser rangefinder (LRF) capable of irradiating a laser beam toward the trolley 90. The sensor 31 irradiates a laser beam along a virtual plane, generating a result of scanning within that virtual plane as point group information. The virtual plane, for example, refers to a plane in which the laser scanning beam is oscillated horizontally relative to the ground. Other examples of virtual planes will be described later.
[0052] As the unmanned transport vehicle 100 approaches the trolley 90, sensor 31 generates information related to the distance to the trolley 90 in the forward direction (+X direction), namely, detection distance information. Detection distance information refers to, but is not limited to, the measurement results of reflected or scattered light from a laser beam illuminating the trolley 90. Sensor 31 outputs the generated detection distance information to the moving body control unit 110. Furthermore, the unmanned transport vehicle 100 is equipped with various sensors for SLAM (Simultaneous Localization and Mapping) (not shown), such as encoders and rangefinders.
[0053] Figure 4 This is a structural diagram of the unmanned transport vehicle 100 according to the first embodiment. (See diagram below.) Figure 4 As shown, the automated guided vehicle 100 includes a movement control unit 110, a data processing unit 300, and a data storage unit 400. Each functional unit of the automated guided vehicle 100 (e.g., the movement control unit 110 and the data processing unit 300) is implemented, for example, at least partially, by executing programs (software) stored in a storage unit using a hardware processor such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit). Furthermore, some or all of the functional units of the automated guided vehicle 100 can be implemented using hardware (circuit unit) such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), or FPGA (Field-Programmable Gate Array), or through a combination of software and hardware. The automated guided vehicle 100 is an example of a computer.
[0054] The moving body control unit 110 includes, for example, a moving control unit 112, a loading and unloading control unit 120, and a sensor control unit 130.
[0055] The motion control unit 112 obtains control information, including a moving target, from the data processing unit 300 and drives the motion mechanism 12 to the position indicated by the moving target. Thus, the motion control unit 112 can move the automated guided vehicle 100. For example, the motion control unit 112 obtains the position of the automated guided vehicle 100 and supplies position arrival information to the loading and unloading control unit 120, indicating that the automated guided vehicle 100 has reached a predetermined position. For example, the motion control unit 112 can control the motion mechanism 12 based on information related to the position and attitude of the detected object, so that the automated guided vehicle 100 moves within the actual space. The motion mechanism 12 and the motion control unit 112 are an example of a movable mechanism that moves the position of the sensor 31 (distance sensor).
[0056] The loading and unloading control unit 120 receives position arrival information from the movement control unit 112 and controls the lifting mechanism. As a result, the loading and unloading control unit 120 switches the engagement state of the unmanned transport vehicle 100 and the trolley 90, and controls the loading and unloading of the trolley 90.
[0057] The sensor control unit 130 acquires the detection distance information generated by the sensor 31 and outputs it to the data processing unit 300.
[0058] The data processing unit 300 includes a point group information extraction unit 301, a trolley position and attitude estimation unit 302, and a moving target calculation unit 303.
[0059] The point group information extraction unit 301 obtains detection distance information, representing the distance to the trolley 90, from the sensor control unit 130, and extracts point group information representing detection locations within a specified range from the obtained detection distance information. Detection distance information refers to an index of the distance to multiple points corresponding to multiple positions of the object being detected after scanning light. For example, the multiple positions of the object being detected after scanning light can be the positions of light reflections scanned in a virtual plane in actual space. The point group information extraction unit 301 refers to the extraction object area reference table 401 to obtain information representing the extraction object area. The point group information extraction unit 301 can extract point group information representing detection locations within a specified range based on information representing the extraction object area obtained from the extraction object area reference table 401. The aforementioned detection distance information is an example of point group information. The point group information extraction unit 301 supplies the extracted point group information to the trolley position and attitude estimation unit 302. The point group information extraction unit 301 is an example of an acquisition unit.
[0060] The trolley position and attitude estimation unit 302 estimates the position and attitude of the object to be detected based on the point group information extracted by the point group information extraction unit 301. For example, the trolley position and attitude estimation unit 302 can estimate the position and attitude of the object to be detected based on estimation rules that define the matching between the shape model and the shape model related to the object to be detected in the evaluation index. The trolley position and attitude estimation unit 302 is one example of an estimation unit. For example, the trolley position and attitude estimation unit 302 estimates the position and attitude of the shape model by fitting the shape model representing the shape of the object to the point group information. The trolley position and attitude estimation unit 302 can use the point group information existing on the outside of the shape model to estimate the position and attitude of the object to be detected.
[0061] The moving target calculation unit 303 determines the position of the moving target based on the estimated position and attitude of the detected object, and outputs information related to the position of the moving target. The moving target calculation unit 303 is an example of an output unit.
[0062] The data storage department 400 has an extraction object area reference table 401, trolley shape model data 402, and relative movement position reference table 403.
[0063] The extraction target area reference table 401 holds the data related to the extraction target area, which represents the object area to be extracted, and provides prompts to the point group information extraction unit 301. The trolley shape model data 402 holds the data related to the shape model of the trolley 90, which is the object to be detected, as trolley shape model data. For example, the shape model is defined as the shape of the trolley 90 when viewed from above. The shape of the loading plate 91a of the trolley 90 can also be defined as the shape model. The relative movement position reference table 403 holds the relative movement position information, which is used to prompt the movement target calculation unit 303 for configuring the target movement destination of the next trolley 90, etc. By arranging the trolleys 90 according to the relative movement position information, they can be arranged to match the set trolleys 90.
[0064] Next, refer to Figure 5 and Figure 6A and Figure 6B The setting and processing of the extraction target area in the implementation method will be explained.
[0065] Figure 5 This is a diagram of the extraction target area, as shown in Table 401, used to illustrate the extraction target area of the specified implementation method. Figure 6A and Figure 6B This is a diagram used to illustrate the extraction target area of the implementation method.
[0066] Using the extraction object region reference table 401, specify more than one extraction object region. For example, in Figure 5 The extraction object region reference table 401 specifies two extraction object regions. Extraction object region reference table 401 includes application scenarios ( Figure 5 The record in the document is "case") and the extraction object area corresponding to this application scenario ( Figure 5 The item is referred to as "zone" in the documentation. The area to be extracted is defined by a coordinate system based on the Automated Guided Vehicle (AGV) 100.
[0067] The first application scenario specified herein applies to situations as described above. Figure 1A As shown, the distance from the automated guided vehicle 100 to the trolley 90 is relatively far. Figure 6A As shown, the extraction target area DZF is defined as a rectangle with four vertices: (+ΔX, +Y0), (+X0, +Y0), (+X0, -Y0), and (+ΔX, -Y0). In the above case, a range with a width of 2Y0 in the Y direction and a reference direction (+X direction) is defined. The values of +Y0 and -Y0 are defined as areas within which multiple trolleys 90 can be configured in the Y direction. The magnitudes (absolute values) of +Y0 and -Y0 can be the same or different from each other. Regarding the +X direction, the range up to +X0 is defined as the extraction target area DZF. The value of +X0 can be arbitrarily determined. For example, the value of X0 can be defined as areas within which multiple trolleys 90 can be configured in the X direction. In addition, +ΔX can be defined based on measurement limits, etc.
[0068] In contrast, the second application scenario applies to situations where the distance from the automated guided vehicle 100 to the trolley 90 is relatively short. For example... Figure 6B As shown, the extraction target area DZN is defined as a rectangle with four vertices: (+ΔX, +Y1), (+X1, +Y1), (+X1, -Y1), and (+ΔX, -Y1). In the above case, a range with a width of 2Y1 in the Y direction and a reference direction (+X direction) is defined. The values of +Y1 and -Y1 are defined as areas within which one trolley 90 can be configured in the Y direction. The magnitudes (absolute values) of +Y1 and -Y1 can be the same or different from each other. Regarding the +X direction, the range up to +X1 is defined as the extraction target area DZN. The value of +X1 is defined as areas within which up to two trolleys 90 can be configured in the X direction. For example, by setting it in such a way that it includes areas where up to two trolleys 90 can be configured, changes in the status of trolleys 90 positioned close to that area can be detected sequentially.
[0069] The extracted object regions DZF and DZN are examples of the extracted object regions of the trolley 90, which detects objects as objects. These extracted object regions DZF and DZN are specified as their relative positions to the automated guided vehicle 100.
[0070] Next, refer to Figure 7A and Figure 7B The point group extraction process of the implementation method is explained.
[0071] Figure 7A and Figure 7B This is a diagram used to illustrate the point group extraction process in the implementation method. Figure 7A A cross-sectional view of the trolley 90 in a virtual plane representing the height scanned by the laser emitted from sensor 31. Figure 7B This is a top view showing the distribution model of the point group obtained from the scanning results. As described above, a protective grille 91b, including components that reflect light, is provided on the side of the trolley 90. Figure 7A The double-dotted lines in the sectional view represent the shape of the trolley 90, and the circular markings scattered inside the rectangle represent the cross-sections of the components contained in the protective fence 91b. The cross-sections in this virtual plane are discretely arranged along the side of the trolley 90. The outline of the side profile of the trolley 90 is segmented based on the shape of the protective fence 91b at the scanned height. The trolley 90 is capable of loading goods (objects) inside its protective fence 91b. The automated guided vehicle 100 loads goods in an observable manner via the sensor device 30.
[0072] Figure 7B The double-dotted line in the top view shows the outline of the trolley 90, and the dashed line shows the outline of the loading section 91. The outline of the model corresponds to either the outline of the trolley 90 or the outline of the loading section 91. Additionally, white circles scattered inside the rectangle indicate the positions of components included in the protective fence 91b, and black circles indicate point groups corresponding to the points representing the positions of components detected by scanning. The cross-sections in this virtual plane are discretely arranged along the side of the trolley 90. The aforementioned point groups are discretely arranged along the outline of the model. As described above, if no goods are loaded on the trolley 90, then... Figure 7B The top view shows a group of dots marked with black circles.
[0073] Figure 8 This is a flowchart illustrating the detection process of the implementation method.
[0074] Figure 8 The process shown begins from the state where the unmanned transport vehicle 100 has moved to the starting position of the unloading operation.
[0075] The sensor control unit 130 begins scanning based on the sensor device 30. The sensor control unit 130 obtains point cluster information based on the detection results of the sensor device 30 (step S10) from the sensor device 30 and supplies it to the point cluster information extraction unit 301. The point cluster information extraction unit 301 obtains information about the extraction target region DZN from the extraction target region reference table 401 and extracts the point clusters existing in the extraction target region DZN (step S12).
[0076] The point group extracted by the point group information extraction unit 301 is input to the trolley position and attitude estimation unit 302. The trolley position and attitude estimation unit 302 refers to the trolley shape model data 402 and performs fitting between the extracted point group and the model data (step S20) to calculate the candidate shape.
[0077] As described above, it is possible to fit a monotonous pattern to the distribution of points on the cross-section of the trolley 90 cut off at the height of the observation plane of the sensor device 30 (the aforementioned virtual plane), and approximate the monotonous pattern. A rectangle is an example of a monotonous pattern.
[0078] In the processing related to this fitting, for example, three or four points are randomly selected from the extracted point clusters, and two line segments connecting these points are calculated. Two line segments whose angle, within an acceptable range, matches the angle based on the shape model can be identified as shape candidates. Alternatively, the number of point clusters existing within a predetermined distance from each line segment can be used as an identification criterion. Thus, combinations of line segments whose number of point clusters within the aforementioned range does not meet a predetermined benchmark can be excluded from the shape candidates. Furthermore, by weighting the extracted point clusters, point clusters that do not meet a certain weight can also be excluded from the selection of line segment calculation targets.
[0079] The trolley position and attitude estimation unit 302 evaluates the appropriateness of the fitting results based on the above processing. For example, the trolley position and attitude estimation unit 302 determines whether the extracted point group exists in the inside or outside of the shape represented by the fitted shape model (step S22). The trolley position and attitude estimation unit 302 evaluates only the point group on the outside, excluding the point group on the inside that has changed due to the loading state of the cargo on the trolley 90 (step S24).
[0080] The trolley position and attitude estimation unit 302 repeatedly performs the fitting and evaluation-related processing in step S20 until the number of evaluations reaches a predetermined number (N times) or more (step S26). When the number of evaluations reaches N times or more, the trolley position and attitude estimation unit 302 selects the shape with the best evaluation value as the position and attitude of the trolley 90 based on the candidate group of shapes obtained from the above evaluation results (step S30). As an indicator for this evaluation, it can be determined that a smaller number of points on the outer side but a better evaluation value is obtained.
[0081] The trolley position and attitude estimation unit 302 supplies the position and attitude estimation results of the trolley 90 obtained through the above evaluation to the moving target calculation unit 303. The moving target calculation unit 303 determines the arrangement position of the trolley 90 according to the relative movement position reference table 403, obtains the relative position for moving there, and calculates the moving target of the unmanned transport vehicle 100 from the current position (step S34). The moving target calculation unit 303 supplies the calculated moving target to the moving body control unit 110. The moving body control unit 110 causes the unmanned transport vehicle 100 to autonomously move to the target position (step S36).
[0082] Through the above processing, the unmanned transport vehicle 100 can move to the target location.
[0083] Here, refer to Figure 9 A more specific example of the fitting algorithm for the implementation method will be described. Figure 9 This is a diagram used to illustrate the fitting algorithm of the implementation method.
[0084] Figure 9 (a) represents the group of points extracted within the specified range. Figure 9 The box shown in (a) represents the specified range. Figure 9 In (b), (c1), and (c2), as a counterpart to Figure 9 The result of processing the point group fitting shape model shown in (a) illustrates an example of an unsuitable fit. Figure 9 In (d1) and (d2), as a pair Figure 9 The result of processing the point group fitting shape model shown in (a) illustrates an example of a suitable fit.
[0085] Alternatively, the processing of fitting the shape model can be divided into two stages by the trolley position and attitude estimation unit 302 to reduce the load of the computational processing.
[0086] For example, let's explain the case where the shape of the trolley 90 is approximated as a rectangle. In this case, the line segments corresponding to two adjacent sides of the four sides forming the outline can be used for the fitting process. Furthermore, when the approximate rectangle is a rectangle, it has the characteristic of two orthogonal line segments.
[0087] Therefore, firstly, as Figure 9 As shown in (b), the trolley position and attitude estimation unit 302 extracts a group of two line segments for fitting the point group.
[0088] For example, the trolley position and attitude estimation unit 302 generates line segments representing multiple points using an analytical method that utilizes the position information of multiple points. This analytical method can include least squares methods, but robust estimation methods such as RANSAC (Random Sample Consensus), which can be applied even when points deviate from the line segment, can also be used. For example, according to RANSAC, a line segment can be extracted where the number of points within a specified width, determined based on a line segment connecting two randomly selected points, is greater than a specified value.
[0089] The trolley position and attitude estimation unit 302 identifies groups of two line segments whose angles are within a specified range as suitable groups and groups outside the specified range as unsuitable groups. Alternatively, the specified range of the angles between the two line segments can be determined as a group in which approximately orthogonal line segments can be extracted. Figure 9 The result shown in (b) is an example where the angle between the two line segments is outside the specified range. Through this processing, the trolley position and attitude estimation unit 302 can extract groups where the angle between the two line segments is within the specified range. For example, through the above processing, it can extract... Figure 9 The fitting results are shown in (c1) and (d1). Figure 9 The rectangles shown in (c1) and (d1) are examples of the outlines of the shape model based on the fitting results.
[0090] Next, when the trolley position and attitude estimation unit 302 considers the four line segments represented by the above fitting results as the outline of the shape model, it uses the point group information corresponding to the point that becomes its outer side to determine the appropriateness of the group of two line segments.
[0091] For example, the point group outside the outline of the shape model can be defined as follows. When generating a semi-straight line connecting any point of the evaluation object from the point of the object to be judged as an inside or outside, points where the number of intersections between the line segment group constituting the outline of the shape model and the aforementioned semi-straight lines is odd can be defined as points inside the shape shown by the shape model, and points where the number of intersections is even can be defined as points outside. In addition, points on the line segment group constituting the shape model and points located in a certain vicinity considering the ranging error of the sensor device 30 can be regarded as points inside.
[0092] For example, from Figure 9The semi-linear line of the double-dotted line drawn from any point within the range of Rca and Rcb of (c2) intersects the group of line segments constituting the shape model twice. Therefore, according to the above definition, it is identified as... Figure 9 The point group on the outer side of the shape model (c2) in the diagram. The semi-linear line of a single-dotted dashed line drawn from any point within the ranges of Rcc and Rcd intersects the line segment group constituting the shape model once, therefore it is identified as... Figure 9 The point group inside the shape model (c2) in the model. More specifically, points Pa and Pb are identified as points outside the shape model, and points Pc and Pd are identified as points inside the shape model.
[0093] In contrast, if... Figure 9 If the shape model is identified as shown in (d2), then points Pa, Pb, and Pd are identified as points inside the shape model, while point Pc is identified as a point outside the shape model. Thus, the identification results for each point group differ depending on the shape model identification.
[0094] Here, the existence of points or groups of points on the outer or inner side of the shape model can be described as follows: Figure 9 As shown in (c2) and (d2), there exists a shape model formed by four sides (two solid lines and two horizontal lines), and points or groups of points exist on the outside or inside of the region enclosed by these four sides. The area outside or inside the shape model can also be referred to as the outside or inside of the shape model.
[0095] The trolley position and attitude estimation unit 302 is based on Figure 9 The point group information shown in (a) is used to estimate the position and attitude of the shape model in such a way that the number of points determined to be located outside the shape model that is estimated to represent the position and attitude of the trolley 90 is reduced, thereby estimating the position and attitude of the trolley 90, which is the object of detection. At this time, the trolley position and attitude estimation unit 302 can use the point group information of the point group existing outside the shape model compared with the shape model whose position and attitude are estimated to evaluate the estimation result of the position and attitude of the shape model, and adjust the position and attitude of the shape model.
[0096] In this evaluation, the number of points classified as outer edges can also be used. For example, a good fit can be determined if the number of points classified as outer edges is within a specified range. Furthermore, the group with the smallest number of points classified as outer edges can be selected as the most suitable group. According to this evaluation criterion, even if there are points that deviate significantly from the line segment, their impact can be mitigated.
[0097] Alternatively, the following criteria can be used to replace the above evaluation criteria.
[0098] For example, in the evaluation described above, the distance between the points identified as outer edges and the line segments corresponding to the shape can be used. A suitable fitting result can be determined if the total distance between the points identified as outer edges and the line segments corresponding to the shape is within a specified range. Furthermore, the group with the smallest total distance between the points identified as outer edges and the line segments corresponding to the shape can be selected as the most suitable group. Based on this evaluation criterion, the magnitude of the deviation in the fitting result can be quantitatively evaluated.
[0099] By evaluating the results according to any of the above criteria, the appropriateness of the fit can be identified. For example, Figure 9 The fitting evaluation values for (c1) and (c2) in the table represent the difference in fit. Figure 9 The evaluation values of the fit of (d1) and (d2) in the figure represent good values.
[0100] Furthermore, based on the evaluation results using the point group information, the trolley position and attitude estimation unit 302 adjusts the configuration of the shape model of the trolley 90, which is the object of detection, in a way that reduces the number of points determined to be located outside the shape model of the estimated position and attitude. Thus, the position of the moving target can be adjusted accordingly based on the estimated position and attitude of the object of detection.
[0101] Next, refer to Figure 10 This document explains several ways to utilize the unmanned transport vehicle 100. Figure 10 This diagram illustrates the management of the storage status of the trolley 90 in the implementation method. Figure 10 Example of a relative movement position reference table 403 for an embodiment is shown. The relative movement position reference table 403 includes items such as identification number (No), position, orientation, and trolley category. The identification number contains information for identifying each storage location where the trolley 90 can be configured. The position indicates each storage location where the trolley 90 can be configured. The orientation indicates the orientation in which the trolley 90 is configured within the storage location. For example, in this orientation, an index of the angle when the trolley 90 is configured with its orientation rotated about the vertical direction relative to a reference direction is stored. This angle index can be expressed as the angle (e.g., +5 degrees) with 0 degrees as the reference direction. The trolley category indicates the category of the trolley 90.
[0102] First, we will explain the application of the trolley 90B to the transport destination.
[0103] The movement target calculation unit 303 refers to the relative movement position reference table 403 to determine the position where the trolley 90B specified from the host device can be configured, and establishes a corresponding movement target for the unmanned transport vehicle 100 based on that position. The movement target calculation unit 303 supplies information indicating this position (specified position information) to the movement control unit 110. Based on the specified position information obtained from the movement target calculation unit 303, the movement control unit 112 uses the unmanned transport vehicle 100 to move the trolley 90B to the specified position corresponding to the specified position information for configuration.
[0104] For example, in the relative movement position reference table 403, the storage location ZB at the position specified by No. (K) is not equipped with trolley 90. When "No. (K)" is specified according to the specified location information, after the movement control unit 112 moves trolley 90B to the position of storage location ZB by the unmanned transport vehicle 100, the loading and unloading control unit 120 disconnects the unmanned transport vehicle 100 from trolley 90B.
[0105] Next, the handling of the trolley 90 being stored will be explained.
[0106] The movement target calculation unit 303 refers to the relative movement position reference table 403 to determine the position of the trolley 90 specified by the host device, and establishes a corresponding movement target for the unmanned transport vehicle 100 based on that position. The movement target calculation unit 303 supplies information indicating this position (specified position information) to the movement control unit 110. Based on the specified position information obtained from the movement target calculation unit 303, the movement control unit 112 causes the unmanned transport vehicle 100 to approach the trolley 90 stored at the specified position corresponding to the specified position information.
[0107] For example, in the relative movement position reference table 403, a trolley 90A is configured in the storage location ZA at the location specified by No. (K-1). When "No. (K-1)" is specified according to the specified location information, the movement control unit 112 causes the unmanned transport vehicle 100 to approach the trolley 90A stored in the storage location ZA.
[0108] Afterwards, the motion control unit 112 moves the unmanned transport vehicle 100 to the designated position, and then the loading and unloading control unit 120 connects the unmanned transport vehicle 100 to the trolley 90A. The connected unit 100P is then transported to the position designated by the host device.
[0109] Next, we will explain the application of this technology in re-inspecting the storage status of the trolley 90.
[0110] When the execution of re-detection of the storage status is specified from the host device, the movement target calculation unit 303 refers to the relative movement position reference table 403 to determine the position where the storage status of the trolley 90 can be detected, and supplies information indicating that position (specified position information) to the movement control unit 110, instructing the re-detection of the storage status. Based on the specified position information obtained from the movement target calculation unit 303, the movement control unit 112 moves the unmanned transport vehicle 100 to the specified position corresponding to the specified position information. At this time, it is assumed that there is an area for the trolley 90 to be positioned in the +X direction of the unmanned transport vehicle 100.
[0111] Subsequently, the motion control unit 112 moves the unmanned transport vehicle 100 in the Y direction according to the instruction for re-detection of the storage status. The motion control unit 110 and the data processing unit 300 cooperate to obtain the status of each storage location related to the current position and attitude of the trolley 90, and write the detection result into the relative movement position reference table 403 to update the data. Through this process of re-detection of the storage status, if the position and attitude of the trolley 90 in each storage location cannot match the data in the relative movement position reference table 403 due to some reason, the mismatch can be eliminated.
[0112] According to the above embodiment, the data processing unit 300 of the unmanned transport vehicle 100 includes a point group information extraction unit 301, a vehicle position and attitude estimation unit 302, and a moving target calculation unit 303. The point group information extraction unit 301 acquires point group information corresponding to multiple positions of the vehicle 90 (the object to be detected) obtained by the sensor device 30 scanning light. The vehicle position and attitude estimation unit 302 uses the matching between the point group information and the shape model related to the vehicle 90 as an evaluation index to estimate the position and attitude of the object to be detected based on the point group information. The moving target calculation unit 303 outputs information related to the position of the moving target based on the estimation result. The vehicle position and attitude estimation unit 302 fits the point group information to form a shape model representing the shape of the vehicle 90, and uses the point group information existing on the outside of the shape model to estimate the position and attitude of the vehicle 90. Thus, the detection system 1 can identify the position and attitude of the object to be transported. The data processing unit 300 can also constitute the detection system 1.
[0113] Furthermore, the majority of the trolley 90 is constructed from a tubular frame and a resin mesh. Therefore, during observation using optical sensors such as a laser rangefinder (LRF), the contents of the trolley 90 can be detected. In this case, the observation results vary depending on the presence or absence of the contents and the amount of contents, but in this embodiment, the position and orientation of the trolley 90 can be identified.
[0114] (First variation of the first embodiment)
[0115] A first variation of the first embodiment will be described.
[0116] In the first embodiment, the target regions DZF and DZN are extracted. Figure 6A and Figure 6B An example of a location being specified as a relative position to the automated guided vehicle 100 has been described. In this variation, instead, an example of an extraction object region DZF being specified as a relative position to the surrounding environment of the automated guided vehicle 100 has been described.
[0117] The position / range of the trolley 90 relative to the surrounding environment of the unmanned transport vehicle 100 (DZF, DZN) can be pre-specified. The surrounding environment of the unmanned transport vehicle 100 is related to the movement range of the trolley 90 that enables the unmanned transport vehicle 100 to move. More specifically, within or near its movement range, components capable of relatively determining the position of the unmanned transport vehicle 100, or components capable of relatively determining the range within which the unmanned transport vehicle 100 can move, are arranged. Thus, the unmanned transport vehicle 100 can resolve its relative position to its surrounding environment, or calculate its relative position to its surrounding environment by recognizing markers placed in the environment. By combining this calculation result with the specified value in the extraction object area reference table 401, the extraction object area relative to the unmanned transport vehicle 100 can be obtained. In addition, methods for estimating the self-position of the unmanned transport vehicle 100 relative to its position include, for example, SLAM (Simultaneous Localization and Mapping).
[0118] According to the above-described variation, even when the extraction target area DZF is specified as a relative position with respect to the surrounding environment of the unmanned transport vehicle 100, it achieves the same effect as the implementation method.
[0119] (Second variation of the first embodiment)
[0120] Reference Figure 11 A second variation of the first embodiment will be described.
[0121] In the first embodiment, an example of a rectangular shape model was described. In this modified example, an example of a shape model whose shape is difficult to approximate as a monotonous shape will be described.
[0122] Figure 11 This is a diagram used to illustrate the application of the curved outline in the modified example.
[0123] like Figure 11As shown, the outline of the shape model sometimes curves from point PA to point PB, forming a convex shape. In such cases, the outline OL can be approximated by a broken line, and the group of line segments constituting the approximation of the outline OL can be regarded as a combination of vectors Va, Vb, Vc, and Vd in a counterclockwise direction. Furthermore, the position of point PS of the evaluation object relative to the outline OL can be identified as inside or outside by the following method. The point PS of the evaluation object and the aforementioned vector Vc are selected as the first vector, and a second vector of the point PS of the evaluation object is estimated from the starting point of vector Vc. The cross product of the first vector and the second vector is calculated. If the cross product of the first vector (Va, Vb, Vc, and Vd selected sequentially as the first vector) and the second vector is always positive, then the point PS of the evaluation object can be regarded as a point inside the outline OL.
[0124] Furthermore, in calculating the evaluation value, for example, the number of points existing on the outer side can be used as the evaluation value, or the total distance from each point on the outer side to the shape can be used as the evaluation value. This has the following characteristics: the former can reduce the impact of large deviations, while the latter makes it easier to quantitatively evaluate the magnitude of the fitting deviation. Alternatively, the value obtained by multiplying the aforementioned weights can also be used in the evaluation value calculation.
[0125] (Second Implementation)
[0126] Reference Figure 12 The second embodiment will be described. In the second embodiment, examples of countermeasures taken to eliminate the problem when a proper estimation result is not obtained through the fitting process in the first embodiment will be described. Figure 12 This is a flowchart illustrating the detection process of the second embodiment.
[0127] Mainly, the sensor control unit 130 and the data processing unit 300 are configured in accordance with the aforementioned... Figure 8 The fitting process is performed in the same order as steps S10 to S30 shown.
[0128] The trolley position and attitude estimation unit 302 determines whether the value of the evaluation result in step S24 is above a predetermined threshold (step S32) for the shape selected as the best candidate through the processing in step S30. If the evaluation result related to the best candidate meets the predetermined threshold, the trolley position and attitude estimation unit 302 performs the processing in step S34.
[0129] Conversely, if the evaluation result related to the best candidate does not meet the pre-specified threshold, the trolley position and attitude estimation unit 302 determines that an inappropriate estimation result has not been obtained and notifies the moving target calculation unit 303 of the determination result. The moving target calculation unit 303 refers to the relative movement position reference table 403, which defines the relative position and attitude relative to the unmanned transport vehicle 100, and controls the movement control unit 112 to move the unmanned transport vehicle 100 so that its position or attitude is different from the previous observation of the trolley 90. The sensor control unit 130 and the data processing unit 300 observe the position and attitude of the trolley 90 again from the location of the moving destination (step S40) and calculate the moving target of the unmanned transport vehicle 100. The data processing unit 300 notifies the movement control unit 112 of the moving target of the unmanned transport vehicle 100. The movement control unit 112 causes the unmanned transport vehicle 100 to autonomously move to the moving target calculated based on the results of the re-observation (step S42). Correspondingly, the unmanned transport vehicle 100 repeatedly performs the processing starting from step S10 to re-observe the trolley 90, which is set as the transport object, from a different position and direction than the previous observation, and re-execute the estimation and evaluation.
[0130] According to this embodiment, the unmanned transport vehicle 100 changes the position of the sensor 31 by moving itself, thereby improving the detection accuracy of the trolley 90.
[0131] (Third Implementation)
[0132] Reference Figure 13 and Figure 14 The unmanned transport vehicle 100A corresponding to the detection system 1A of the third embodiment will be described. Figure 13 This is a structural diagram of the unmanned transport vehicle 100A according to the third embodiment. Figure 14 This is a diagram used to illustrate the extraction target region in the third embodiment. For example... Figure 13 As shown, the unmanned transport vehicle 100A has a sensor device 30A and a movement control unit 110A instead of the sensor device 30 and the movement control unit 110.
[0133] Sensor device 30A includes sensors 31A and 31B to replace sensor 31. Sensors 31A and 31B each have a structure equivalent to sensor 31. Sensors 31A and 31B are arranged at a predetermined distance along the Y direction in the unmanned transport vehicle 100A.
[0134] The moving body control unit 110A replaces the sensor control unit 130 with a sensor control unit 130A. The sensor control unit 130A acquires detection distance information generated by sensors 31A and 31B respectively and supplies it to the data processing unit 300. Furthermore, the position information represented by the point group information acquired from sensors 31A and 31B becomes information that has been offset in the Y direction by a predetermined distance corresponding to the installation interval of sensors 31A and 31B. The sensor control unit 130A can supply the data processing unit 300 with point group information that has been corrected to eliminate this offset.
[0135] As described above, by isolating sensors 31A and 31B in the Y direction, for example, even if one of the protective fences 91b of the trolley 90 overlaps with the optical axis scanned by sensor 31A, it will not overlap with the optical axis scanned by sensor 31B. Therefore, the sensor control unit 130A can detect the position of one of the protective fences 91b simply by switching the used sensor, without moving the unmanned transport vehicle 100.
[0136] (Fourth Implementation)
[0137] Reference Figure 15 and Figure 16 The detection system 1B of the fourth embodiment will be described. Figure 15 This is a schematic diagram showing an example of an application location for the detection system 1B of the fourth embodiment. Figure 16 This is a structural diagram of the detection system 1B according to the fourth embodiment.
[0138] The detection system 1B includes a processing unit 200. The processing unit 200 may be an example of the detection system 1B. For example, in this... Figure 15 The detection system 1B shown includes, in addition to the processing device 200, an unmanned transport vehicle 100B and trolleys 90A and 90B that are the objects to be transported.
[0139] The automated guided vehicle 100B has a mobile control unit 110B instead of the mobile control unit 110. Unlike the aforementioned automated guided vehicle 100, the automated guided vehicle 100B may also omit the data processing unit 300 and the data storage unit 400.
[0140] Instead, the processing device 200 includes a data processing unit 300 and a data storage unit 400. The data processing unit 300 and the data storage unit 400 in the processing device 200 are equivalent to the data processing unit 300 and the data storage unit 400 of the aforementioned unmanned transport vehicle 100.
[0141] Furthermore, the motion control unit 110B of the unmanned transport vehicle 100B includes a motion control unit 112B and a sensor control unit 130B instead of the motion control unit 112 and the sensor control unit 130. The motion control unit 112B and the sensor control unit 130B communicate with the data processing unit 300 of the processing device 200 via the network NW.
[0142] The aforementioned unmanned transport vehicle 100 includes a data processing unit 300 and a data storage unit 400, thereby processing data based on the detection results of the sensor device 30 within its internal components. In this embodiment, the unmanned transport vehicle 100B can cooperate with the processing device 200 by communicating with it via a network NW. In this state, the unmanned transport vehicle 100B achieves the same control as the unmanned transport vehicle 100.
[0143] Figure 17 This diagram illustrates an example of the hardware structure of the processing device 200 according to the embodiment. The processing device 200 includes, for example, a CPU 200A, RAM (Random Access Memory) 200B, a non-volatile storage device 200C, a removable storage medium drive device 200D, an input / output device 200E, and a communication interface 200F. Alternatively, the processing device 200 may replace the CPU 200A with any processor such as a GPU. Furthermore, Figure 17 Some of the constituent elements shown may also be omitted.
[0144] CPU 200A expands and executes programs stored in non-volatile storage device 200C or in portable storage media installed on portable storage media drive device 200D in RAM 200B, thereby performing various processes described below. RAM 200B is used as the working area by CPU 200A. Non-volatile storage device 200C is, for example, HDD, flash memory, ROM, etc. Portable storage media such as DVD, CD (Compact Disc), and SD (trademarked) cards are installed in portable storage media drive device 200D. Input / output devices 200E include, for example, keyboard, mouse, touch panel, and display device. Communication interface 200F functions as an interface for communication between processing device 200 and other devices such as automated guided vehicle 100B.
[0145] Each functional unit of the processing device 200 (e.g., the data processing unit 300) is implemented, for example, by at least a portion of a hardware processor such as a CPU 200A or a GPU executing a program (software) stored in a non-volatile storage device 200C. Alternatively, some or all of the functional units of the processing device 200 may be implemented using hardware (circuit unit) such as an LSI, ASIC, or FPGA, or through a combination of software and hardware. The processing device 200 is an example of a computer.
[0146] According to the above embodiment, the processing device 200 includes a point group information extraction unit 301, a trolley position and attitude estimation unit 302, and a moving target calculation unit 303. The processing device 200 communicates with the unmanned transport vehicle 100B via the communication interface 200F, achieving the same effect as in the first embodiment.
[0147] According to at least one embodiment described above, the detection system includes an acquisition unit, an estimation unit, and an output unit. The acquisition unit acquires point group information, which is the point group information corresponding to multiple positions of the object being detected after scanning light. The estimation unit uses the matching between an evaluation metric and a shape model related to the object being detected, and estimates the position and orientation of the object being detected based on the point group information. The output unit outputs information related to the position of the moving target based on the estimation result. The estimation unit can identify the position and orientation of the object being transported by a simpler process: fitting a shape model representing the shape of the object being detected to the point group information, and using the point group information existing outside the shape model to estimate the position and orientation of the object being detected.
[0148] Several embodiments of the present invention have been described, but these embodiments are given by way of example and are not intended to limit the scope of the invention. These embodiments can be implemented in various other ways, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope or spirit of the invention, and are also included in the scope of the invention as described in the claims and its equivalents.
[0149] For example, the surfaces on which the automated guided vehicle 100 and the trolley 90 move are preferably horizontal, so that the trolley 90 will not move due to the tilt of the surfaces. The virtual plane scanned by the sensor device 30 is preferably parallel to the surfaces on which the automated guided vehicle 100 and the trolley 90 move, while ensuring a wider detection range. Furthermore, the virtual plane scanned by the sensor device 30 is preferably also horizontal, as is the surface on which the automated guided vehicle 100 and the trolley 90 move. For example, when the aforementioned virtual plane and the surfaces on which the automated guided vehicle 100 and the trolley 90 move are both horizontal, and the shape of the trolley 90 is approximately a cuboid, the cross-section in the virtual plane of its shape model becomes rectangular. Conversely, when the virtual plane and the surfaces on which the automated guided vehicle 100 and the trolley 90 move are not parallel, the cross-section in the virtual plane of its shape model deforms from a rectangle. From this perspective, the virtual plane can be parallel to the surfaces on which the automated guided vehicle 100 and the trolley 90 move. Furthermore, there is no restriction on setting an angle in the manner in which the virtual plane scanned by the sensor device 30 is tilted relative to the surface on which the unmanned transport vehicle 100 and the trolley 90 move.
[0150] An example has been described in which the detection target of the above embodiment is determined as the loading section 91 of the trolley 90, and the height of the virtual plane scanned by the sensor device 30 is selected as the height of the protective fence 91b. However, the selection of the height of the loading plate 91a is not limited. It is also possible to select it appropriately.
[0151] [Explanation of reference numerals in the attached figures]
[0152] 1, 1A, 1B… Detection system; 100, 100A, 100B… Unmanned transport vehicle (moving body); 200… Processing device; 300… Data processing unit; 301… Point group information extraction unit; 302… Cart position and attitude estimation unit; 303… Moving target calculation unit; 400… Data storage unit
Claims
1. A detection system, comprising: The acquisition unit uses scanning light to acquire point group information, which is point group information corresponding to multiple positions of the object being detected; The estimation unit uses the matching between the object's shape model and the point group information to estimate the position and orientation of the object; and The output unit outputs information related to the position of the moving target based on the estimated result. The estimation part is configured such that, The shape model representing the shape of the detected object is fitted with the point group based on the point group information; The location of a point is determined by the number of times a semi-straight line drawn from each point intersects with the group of line segments that make up the shape of the shape model. The position and orientation of the detected object are estimated by evaluating the fit using only the information of the point group determined to be outside the shape model and by reducing the number of points on the outside or the total distance from the points on the outside to the outline of the shape model.
2. The detection system according to claim 1, wherein, The estimation unit, based on the point group information, estimates the position and orientation of the shape model in such a way that the number of points determined to be located outside the shape model whose position and orientation are estimated decreases.
3. The detection system according to claim 1, wherein, The estimation unit adjusts the configuration of the shape model based on the point group information in such a way that the number of points determined to be located outside the shape model whose position and orientation are estimated decreases, thereby estimating the position and orientation of the detected object.
4. The detection system according to claim 1, wherein, The estimation unit evaluates the estimation results of the position and orientation of the shape model using a group of points located on the outer side compared to the shape of the shape model whose position and orientation are estimated.
5. The detection system according to claim 1, wherein, The side of the object being detected includes a component that reflects light. The cross-section of the component receiving the scanned light is discretely configured along the side of the object being detected.
6. The detection system according to claim 5, wherein, A group of points corresponding to the positions of the components that reflected the light are discretely arranged along the direction of the shape model.
7. The detection system according to claim 1, wherein, The outer side of the shape model is identified by the number of intersections between the semi-straight line and the line segment group forming the shape model. The semi-straight line is formed by connecting the point of the object for determining the inside and outside of the object to any point of the object.
8. A processing apparatus comprising: The acquisition unit uses scanning light to acquire point group information, which is point group information corresponding to multiple positions of the object being detected; The estimation unit uses the matching between the object's shape model and the point group information to estimate the position and orientation of the object; and The output unit outputs information related to the position of the moving target based on the estimated result. The estimation part is configured such that, The shape model representing the shape of the detected object is fitted with the point group information. The location of a point is determined by the number of times a semi-straight line drawn from each point intersects with the group of line segments that make up the shape of the shape model. The position and orientation of the detected object are estimated by evaluating the fit using only the information of the point group determined to be outside the shape model and by reducing the number of points on the outside or the total distance from the points on the outside to the outline of the shape model.
9. A movable body, movable by a moving mechanism, comprising: The detection system according to any one of claims 1 to 6; and The moving mechanism is driven based on the estimated position and orientation of the detected object.
10. The mobile body according to claim 9, wherein, A distance sensor is also provided to generate the point group information. The estimation results of the position and orientation of the detected object are obtained based on the detection results of the distance sensor.
11. The mobile body according to claim 10, wherein, have: The dot cluster information extraction unit, referring to a table defining the extraction target area of the detected object, extracts dot cluster information within the extraction target area; and The control unit controls the moving mechanism based on information related to the position and orientation of the detected object. The estimation unit uses the point group information extracted as point group information to estimate the position and orientation of the detected object.
12. The mobile body according to any one of claims 9 to 11, wherein, The extraction target area of the detected object is specified as a relative position relative to the moving body, or as a relative position relative to the surrounding environment of the moving body.
13. The mobile body according to claim 11, wherein, The object to be detected is a transported object that is transported in conjunction with this mobile body. The control unit, based on the estimated position and orientation of the detected object, determines the position where the moving body combines with the detected object as the moving target of the moving body, and controls the moving body to move to the moving target.
14. The mobile body according to claim 13, wherein, When the output unit combines the transport object with the mobile body, it determines the movement target of the mobile body by referring to a table that defines the position and orientation of the transport object.
15. The mobile body according to any one of claims 9 to 11, wherein When arranging transport objects of the same shape, the output unit determines the moving target of the moving body by referring to a table that defines the position and orientation of the transport objects.
16. The mobile body according to claim 11, wherein, It has a movable mechanism that allows the position of the distance sensor to be moved. The control unit, referring to the shape model, moves the distance sensor to a position suitable for detecting the object to be detected.
17. The mobile body according to any one of claims 9 to 11, wherein, The estimation unit evaluates the estimation results of the position and orientation of the shape model using a group of points existing on the outer side compared to the shape of the shape model whose position and orientation are estimated. If the output unit does not obtain an evaluation better than a predefined threshold as the estimated result, it refers to a table defining the relative position and attitude relative to the moving body, and drives the moving mechanism based on the information of the relative position and attitude defined in the table. The estimation unit re-estimates the position and orientation of the object being detected based on the result of re-observing the object being detected from a different position and orientation than the previous observation, and evaluates the estimation result of the position and orientation.
18. The mobile body according to any one of claims 9 to 11, wherein, The object to be detected is defined as follows: the outline of the object to be detected is segmented at the height at which the light is projected and scanned; the object is formed at a position inside the side of the object to be detected so that it can be loaded with a load; and the load is loaded in a state in which the load can be observed by a distance sensor at a position outside the side of the object to be detected.
19. A detection method comprising the following steps performed by a computer of the detection system: The acquisition step involves scanning light to obtain point group information, which is the point group information corresponding to multiple positions of the detected object; The estimation step involves using the matching between the object's shape model and the point group information to estimate the position and orientation of the object. as well as The output step, based on the estimated result, outputs information related to the location of the moving target. In the estimation step, the following processing is performed: The shape model representing the shape of the detected object is fitted with the point group information. The location of a point is determined by the number of times a semi-straight line drawn from each point intersects with the group of line segments forming the shape of the shape model. as well as The position and orientation of the detected object are estimated by evaluating the fit using only the information of the point group determined to be outside the shape model and by reducing the number of points on the outside or the total distance from the points on the outside to the outline of the shape model.
20. A storage medium non-volatilely storing a computer-readable program of a detection system, the program causing the computer of the detection system to perform the steps of the detection method of claim 19.
Citation Information
Patent Citations
Unmanned carrier, unmanned carrier control method, and program
JP2020077295A
Radioactive pharmaceutical administration device, radioactive pharmaceutical administration method and radioactive pharmaceutical administration program
JP2021101967A
Mark extraction program and mark extraction device
JP2019196961A
Apparatus for estimating self-location
JP2020038498A
Trajectory generation device
JP2020190814A