ROBOT FACILITY DESIGN DEVICE, METHOD, AND PROGRAM
The robot equipment design device optimizes the arrangement of robots and components by evaluating placement candidates based on user intentions and operational efficiency, addressing the challenge of prolonged calculation times in existing technologies.
Patent Information
- Application Number
- JP2021076091
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-04-28
- Publication Date
- 2025-01-22
- Estimated Expiration
- 2041-04-28
AI Technical Summary
Existing technologies for designing equipment that includes robots and components other than robots face challenges in optimizing the arrangement to reflect user intentions efficiently, leading to prolonged calculation times for determining optimal layouts.
A robot equipment design device and method that acquires component, work, and constraint information, calculates placement candidates, and evaluates costs to select an optimal arrangement that reflects user intentions, considering factors like movement distance, interference, and reachability.
The solution efficiently plans layouts that reflect user intentions while optimizing robot operations, reducing calculation time and improving the success rate of route planning.
Smart Images

Figure 0007619149000005 
Figure 0007619149000006 
Figure 0007619149000007
Abstract
Description
[Technical field]
[0001] The present invention relates to a robot equipment design device, a robot equipment design method, and a robot equipment design program. [Background technology]
[0002] Conventionally, techniques have been proposed to support the design of equipment that includes robots and components other than robots. For example, a layout setting device has been proposed that sets a layout for arranging a robot arm and peripheral equipment in a robot workspace that includes the robot arm and peripheral equipment (Patent Document 1). The device described in Patent Document 1 determines a teaching point that corresponds to a specific operation in which the robot arm accesses the peripheral equipment and passes through a reference portion of the robot arm. The device also determines an initial layout of the robot arm and peripheral equipment, and updates the layout by moving each piece of equipment from the initial layout using a metaheuristic calculation. The device also sets the layout using an evaluation value related to the adaptability of the initial layout or the updated layout to the specific operation, and determines the optimal layout. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2018-20410 A Summary of the Invention [Problem to be solved by the invention]
[0004] In designing equipment that includes robots and non-robot parts as components, it is desirable to optimize the layout of the robots and parts in a manner that takes into account the user's intentions.
[0005] The technology described in Patent Document 1 updates the layout by metaheuristics calculation to calculate the arrangement. Therefore, when calculating an arrangement that reflects the user's intention using the technology described in Patent Document 1, a process is taken in which each of the vast number of arrangement patterns is evaluated to see how well the arrangement conforms to the user's intention. This causes a problem in that it takes a long time to calculate the optimal arrangement.
[0006] The present invention has been made in consideration of the above points, and has an object to efficiently plan a layout that reflects a user's intentions when designing equipment that includes robots as components. [Means for solving the problem]
[0007] In order to achieve the above-mentioned object, the robot equipment design device of the present invention is composed of an acquisition unit that acquires component information on each component included in equipment that includes a robot as a component, work information on work to be performed by the robot, and constraint information on the placement of the components, an arrangement planning unit that calculates one or more arrangement candidates that satisfy the constraint information as candidates for the placement of each of the components in the equipment based on the component information and the work information, and an evaluation unit that calculates a cost for each of the arrangement candidates and selects an optimal arrangement from the arrangement candidates based on an evaluation indicated by the cost.
[0008] The evaluation unit may calculate the cost based on at least the task information.
[0009] The evaluation unit may calculate a cost based on an operation distance or operation time of the robot when the robot performs the operations in the operation order indicated by the operation information.
[0010] In addition, the evaluation unit may further calculate the cost based on at least one of the distance between the components, the area or volume of the region in which the components are arranged, and the distance between an obstacle and the components.
[0011] In addition, the acquisition unit may acquire, as the constraint information, a maximum range assumed for placing the components, a constraint that each of the components is placed within a placement range set for each component, and a constraint that the components do not interfere with each other.
[0012] In addition, the placement planning unit may calculate, for each placement range corresponding to a group of components for which a common placement range is constraint information, the placement of each of the components included in k within the placement range.
[0013] In addition, when the placement ranges corresponding to the component groups overlap, the placement planning unit may calculate the placement of each of the components included in the component groups within the placement range in a predetermined order of priority.
[0014] The placement plan unit may determine that the smaller the size of the placement range, the higher the priority.
[0015] The placement plan unit may determine that the priority is higher for a placement range having a lower degree of freedom in an area in which the components can be placed.
[0016] Furthermore, the placement plan unit may determine that, when the placement ranges have an inclusive relationship with each other, the priority is higher for the placement range that is closer to the inside.
[0017] In addition, the acquisition unit may acquire at least one of the constraint information: a positional relationship between the components, an area where the components cannot be placed, a designated position for placing the components, a clearance for the components, and a position of the robot relative to the components corresponding to a working point of the robot.
[0018] The evaluation unit may also calculate a cost based on reachability, which indicates how easily the tip of the robot can reach a task point.
[0019] In addition, the robot equipment design method of the present invention is a method in which an acquisition unit acquires component information on each component included in equipment that includes a robot as a component, work information on work to be performed by the robot, and constraint information on the placement of the components, an arrangement planning unit calculates one or more arrangement candidates that satisfy the constraint information as candidates for the placement of each of the components in the equipment based on the component information and the work information, and an evaluation unit calculates a cost for each of the arrangement candidates and selects an optimal arrangement from the arrangement candidates based on an evaluation indicated by the cost.
[0020] In addition, a robot equipment design program according to the present invention is a program for causing a computer to function as an acquisition unit that acquires component information on each component included in equipment that includes a robot as a component, work information on work to be performed by the robot, and constraint information on the placement of the components, an arrangement planning unit that calculates one or more arrangement candidates that satisfy the constraint information as candidates for the placement of each of the components in the equipment based on the component information and the work information, and an evaluation unit that calculates a cost for each of the arrangement candidates and selects an optimal arrangement from the arrangement candidates based on an evaluation indicated by the cost. Effect of the Invention
[0021] According to the robot facility design device, method, and program of the present invention, in the design of facility that includes a robot as a component, it is possible to efficiently plan a layout that reflects the user's intentions. [Brief description of the drawings]
[0022] [Figure 1] FIG. 13 is a diagram for explaining an arrangement plan. [Diagram 2] FIG. 2 is a block diagram showing a hardware configuration of the robot equipment design device. [Diagram 3] 1 is a block diagram showing an example of a functional configuration of a robot equipment design device according to first to third embodiments. [Figure 4]FIG. 13 is a diagram for explaining the arrangement range of each component. [Diagram 5] FIG. 11 is a diagram for explaining an example of constraint information. [Figure 6] FIG. 13 is a diagram for explaining calculation of an arrangement candidate. [Figure 7] FIG. 13 is a diagram for explaining a placement cost based on work information. [Figure 8] FIG. 13 is a diagram for explaining an example of a geometric cost used in the placement cost. [Figure 9] FIG. 13 is a diagram for explaining an example of a geometric cost used in the placement cost. [Figure 10] FIG. 13 is a diagram for explaining an example of a geometric cost used in the placement cost. [Figure 11] FIG. 13 is a diagram for explaining an example of manipulability used in the placement cost. [Figure 12] 4 is a flowchart showing the flow of a robot equipment design process in the first embodiment. [Figure 13] FIG. 13 is a diagram for explaining a case where the placement ranges overlap. [Figure 14] FIG. 13 is a diagram for explaining the degree of freedom regarding the priority of the arrangement range. [Figure 15] 13 is a diagram for explaining an inclusion relationship of placement ranges regarding the priority of the placement ranges; FIG. [Figure 16] 13A and 13B are diagrams for explaining an example of a constraint violation that may occur when a priority based on an inclusion relationship of a placement range is not used. [Figure 17] 13A and 13B are diagrams for explaining an example of a constraint violation that may occur when a priority based on an inclusion relationship of a placement range is not used. [Figure 18] 13 is a flowchart showing the flow of a robot equipment design process in the second embodiment. [Figure 19] FIG. 13 is a block diagram showing an example of a functional configuration of a robot equipment design device according to a fourth embodiment. [Figure 20] FIG. 13 is a diagram for explaining the creation of a reachability map. [Figure 21]13 is a flowchart showing the flow of a robot equipment design process in the fourth embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0023] Hereinafter, an example of an embodiment of the present invention will be described with reference to the drawings. In each drawing, the same or equivalent components and parts are given the same reference numerals. In addition, the dimensions and ratios of the drawings are exaggerated for the convenience of explanation and may differ from the actual ratios.
[0024] First Embodiment The robot equipment design device according to the first embodiment plans the arrangement of parts including robots, which are components of the robot equipment, workpieces to be worked on, and jigs for handling the workpieces, as shown in Fig. 1. In the example of Fig. 1, Left covers, Tablele, Front and right covers, and Finished works are examples of parts.
[0025] Fig. 2 is a block diagram showing the hardware configuration of a computer functioning as the robot equipment design device 10 according to the first embodiment. As shown in Fig. 2, the robot equipment design device 10 has a CPU (Central Processing Unit) 12, a memory 14, a storage device 16, an input device 18, an output device 20, a storage medium reading device 22, and a communication I / F (Interface) 24. Each component is connected to each other via a bus 26 so as to be able to communicate with each other.
[0026] The storage device 16 stores a robot equipment design program for executing a robot equipment design process described below. The CPU 12 is a central processing unit, and executes various programs and controls each component. That is, the CPU 12 reads the program from the storage device 16 and executes the program using the memory 14 as a working area. The CPU 12 controls each component and performs various calculation processes according to the program stored in the storage device 16.
[0027] The memory 14 is made up of a RAM (Random Access Memory) and temporarily stores programs and data as a working area. The storage device 16 is made up of a ROM (Read Only Memory), HDD (Hard Disk Drive), SSD (Solid State Drive), etc., and stores various programs including an operating system, and various data.
[0028] The input device 18 is a device for performing various inputs, such as a keyboard or a mouse. The output device 20 is a device for outputting various information, such as a display or a printer. A touch panel display may be adopted as the output device 20 to function as the input device 18. The storage medium reader 22 reads data stored in various storage media, such as a CD (Compact Disc)-ROM, a DVD (Digital Versatile Disc)-ROM, a Blu-ray disc, and a USB (Universal Serial Bus) memory, and writes data to the storage media.
[0029] The communication I / F 24 is an interface for communicating with other devices, and uses standards such as Ethernet (registered trademark), FDDI, and Wi-Fi (registered trademark).
[0030] Next, a functional configuration of the robot equipment design device 10 according to the first embodiment will be described. Fig. 3 is a block diagram showing an example of the functional configuration of the robot equipment design device 10. As shown in Fig. 3, the robot equipment design device 10 includes, as its functional configuration, an acquisition unit 32, a layout planning unit 34, and an evaluation unit 36. Each functional configuration is realized by the CPU 12 reading out a robot equipment design program stored in the storage device 16, expanding it in the memory 14, and executing it.
[0031] The acquisition unit 32 acquires robot specification information on a robot that is a component of the robot equipment, member information on members other than the robot that are components of the robot equipment, and task information on a task to be performed by the robot. The robot specification information and member information are examples of "component information" of the present invention. The robot specification information includes kinematics information indicating the structure of the connection relationship between links and the rotation axis of the link, dynamics information for specifying the weight of each link, the speed of the link during operation, and shape information of each link. The member information includes shape information of the jig and work, which are components, and peripheral devices such as a processing machine and an inspection machine. Each piece of shape information may be three-dimensional data such as CAD (Computer-Aided Design) data. The task information includes information such as the type of task, the order of tasks, the members used in the task and the position where the robot accesses the members, the work used in the task, and the gripping state indicating which part of the robot hand grips which part of the work. The access of the robot to a member includes, for example, grasping (picking) the workpiece with the robot hand, releasing (releasing or placing) the workpiece, and attaching the workpiece to a predetermined position.
[0032] Hereinafter, when there is no distinction between the robot and components other than the robot, the robot and the components will be collectively referred to as "components".
[0033] The acquisition unit 32 also acquires constraint information on the placement of the components designated by the user. That is, the constraint information is information that reflects the user's intention. The constraint information includes at least a constraint that each of the components is placed within a placement range set for each component, and a constraint that the components do not interfere with each other. The placement range is the maximum range assumed as the range in which the components are placed. For example, the user may set an arbitrary range within the area in which the facility is designed, without considering other constraints. Therefore, each component has constraint information called the placement range. FIG. 4 shows an example of the relationship between the area in which the facility is designed and the placement range, and the placement range for each component. In the example of FIG. 4, A to E respectively represent components, and each rectangle of A to E roughly represents the shape and size of each component in a plan view. In the example of FIG. 4, the placement range that is the constraint information for each of the components A and B is placement range 1, the placement range that is the constraint information for each of the components C and D is placement range 2, and the placement range that is the constraint information for the component E is placement range 3.
[0034] The constraint information may also include at least one of the positional relationship between components, areas where it is impossible to place components, designated positions for placing components, clearances for components, and the position of the robot relative to a member corresponding to the working point of the robot.
[0035] Constraint information on the positional relationships between components is constraint information that specifies, in the local coordinate system of the components, positional relationships such as placing components A and B next to each other, placing components C and D at least 1 meter apart, etc. Constraint information on areas where components cannot be placed is constraint information that specifies, in the position of the world coordinate system, areas where components cannot be placed, such as areas that must be reserved as paths for people to move around and areas where fixed equipment is located, as shown, for example, at P in Fig. 5. Constraint information on the specified position for placing a component is constraint information that specifies, in the position of the world coordinate system, the placement of a component that is determined to be placed in a specific position, such as placing a tray, which is one of the components, on a conveyor (fixed equipment), as shown, for example, at Q in Fig. 5.
[0036] The clearance constraint information for a component is, for example, as shown by R in Fig. 5, constraint information that specifies areas in which other components cannot be placed, such as the space for opening and closing the door of the component, the power supply area, etc., by the position of the local coordinate system of the component. The clearance set for a component and the clearance set for another component can overlap. By using such clearance as constraint information, it is possible to calculate a placement that secures working space while reducing excess space.
[0037] Furthermore, the position of the robot relative to the member corresponding to the robot's working point is, for example, constraint information for limiting the placement of the robot according to the position where the robot accesses the member to be worked on. Specifically, assume that the working point where the robot grasps, releases, attaches, etc. a workpiece is set on one side of a certain member. In this case, the constraint information specifies the placement of the robot on that side of the member in the local coordinate system of the member. By setting such constraint information related to the work information, it is possible to calculate a placement that improves the success rate of the path planning when planning the path of the robot according to the placement of the components.
[0038] The robot specification information, component information, work information, and constraint information are input to the robot equipment design device 10 via the input device 18, the storage medium reading device 22, or the communication I / F 24. The acquisition unit 32 transfers the acquired robot specification information, component information, work information, and constraint information to the layout planning unit 34.
[0039] The layout planning unit 34 calculates one or more candidates for layout that satisfy the constraint information as candidates for the layout of each of the components in the facility based on the robot specification information, the component information, and the work information. Specifically, the layout planning unit 34 calculates the layout of each of the components included in the component group within the layout range for each layout range corresponding to the component group whose common layout range is the constraint information. For example, in the case of FIG. 4, the layout planning unit 34 extracts components A and B having layout range 1 as common constraint information as one group. Similarly, the layout planning unit 34 extracts components C and D having layout range 2 as common constraint information as one group, and extracts component E having layout range 3 as constraint information as one group. Then, the layout planning unit 34 calculates a layout pattern in which the components included in each group are arranged in the layout range corresponding to the group so as to satisfy all constraint information including the constraint that the components do not interfere with each other. There may be multiple layout patterns for one layout range.
[0040] The layout planning unit 34 calculates layout candidates by combining the layout patterns calculated for each layout range, as shown in Fig. 6. Information on each layout candidate is the position coordinates of each component in the area for designing the equipment. The layout planning unit 34 passes the calculated layout candidate information to the evaluation unit 36.
[0041] The evaluation unit 36 calculates the cost (hereinafter referred to as "placement cost") for each placement of the placement candidates calculated by the placement planning unit 34. The evaluation unit 36 calculates the cost based on at least the work information as the placement cost. For example, as shown in the upper diagram of FIG. 7, a placement that takes into account the work order, for example, a placement in which the parts related to the robot's work are arranged in the work order, often shortens the total operation time of the robot. On the other hand, as shown in the lower diagram of FIG. 7, in the case of a placement that does not take into account the work order, for example, a placement that simply minimizes the distance between the parts related to the robot's work, there are cases where redundant operations are performed and the total operation time is extended. In FIG. 7, each circle represents the robot's work point, and the arrow represents the robot's movement direction and movement distance. Based on this, the evaluation unit 36 may calculate the placement cost based on the total movement distance of the robot when the work is performed in the work order indicated by the work information. For example, the evaluation unit 36 may calculate the distance between the work points in the robot's work order, that is, the total distance between the parts, as the placement cost.
[0042] Furthermore, the evaluation unit 36 may calculate the placement cost by reflecting at least one cost using geometric information related to the components (hereinafter referred to as "geometric cost") in addition to the cost based on the work information. The geometric information related to the components includes the distance between the components, the area or volume of the area in which the components are placed, the distance between an obstacle and the components, etc. For example, as shown in FIG. 8 and the following formula (1), the distances between the components L1, L2, L3, ..., L N The larger the sum of (N is the number of components), the larger the value of the geometric cost c may be. Note that in Fig. 8, since illustrating all inter-component distances would be cumbersome, only some of the inter-component distances are illustrated.
[0043]
number
[0044] Also, for example, as shown in FIG. 9 and the following formula (2), the geometric cost c may be set to a value that increases as the area S of the circumscribing shape of the part of the component that is installed on the floor surface increases. c=S (2) The volume V obtained by multiplying the area S by the height of the component may be used as the geometric cost c.
[0045] In addition, as shown in FIG. 10 and the following formula (3), the distances D1, D2, D3, . . . , D N The geometric cost c may be a value that decreases as the sum of the distances between the components and obstacles increases. By reflecting the geometric cost based on the distances between the components and obstacles in the placement cost, it is possible to highly evaluate placement candidates that have a high success rate for robot path planning.
[0046]
number
[0047] The evaluation unit 36 may calculate the placement cost by, for example, multi-objective optimization of at least one of the above geometric costs c and the cost based on the work information. The placement cost using the above-mentioned cost based on the work information and the geometric cost c in the above formulas (1) to (3) indicates that the placement is evaluated higher as the value becomes smaller.
[0048] Furthermore, the evaluation unit 36 may calculate a cost based on the manipulability of the robot as the placement cost. Manipulability is an index that indicates the ease of movement from a certain posture of the robot when the robot is in that posture. Manipulability varies depending on the geometric configuration (kinematics) of the robot. Fig. 11 shows an outline of manipulability. In the example of Fig. 11, points with lighter colors (density) represent spatial positions where a posture with higher manipulability can be assumed. Manipulability w is calculated by the following formula (4).
[0049]
number
[0050] The bold q in the formula is the robot's posture, that is, a vector of the values (rotation angles) of each joint. The bold r in the formula is the position and posture (x, y, z, roll, pitch, yaw) of a specific part of the robot's hand. The bold J(q) in the formula is the Jacobian of the robot's posture q. The manipulability-based cost may be, for example, the sum of the manipulability w values of the positions where the components are placed. The evaluation unit 36 specifies information for calculating the manipulability-based cost from the robot specification information, the member information, and the work information. Therefore, the manipulability-based cost can also be said to be a cost based on the work information. By using the manipulability of the robot as the placement cost, the variation of the inverse kinematics solution when calculating the posture of the robot is increased, making it possible to obtain a better solution and contributing to an improvement in the success rate of the path planning. The evaluation unit 36 may calculate the placement cost by combining the manipulability-based cost with the sum of the distances between the members in the above-mentioned work order or the geometric cost.
[0051] The evaluation unit 36 selects an optimal layout from the layout candidates based on the evaluation indicated by the layout cost. Specifically, the evaluation unit 36 selects the layout candidate with the highest evaluation indicated by the layout cost as the optimal layout, and outputs layout information on the selected layout, i.e., information on the position coordinates of each component in the area where the equipment is designed.
[0052] Next, the operation of the robot equipment design device 10 according to the first embodiment will be described. Fig. 12 is a flowchart showing the flow of a robot equipment design process executed by the CPU 12 of the robot equipment design device 10. The CPU 12 reads out a robot equipment design program from the storage device 16, expands it in the memory 14, and executes it, whereby the CPU 12 functions as each functional component of the robot equipment design device 10, and the robot equipment design process shown in Fig. 12 is executed. The robot equipment design process is an example of a robot equipment design method of the present invention.
[0053] In step S10, the acquisition unit 32 acquires the robot specification information, member information, work information, and constraint information, and passes them to the layout planning unit 34. Next, in step S12, the layout planning unit 34 extracts, as a group, components that have a common layout range as constraint information.
[0054] Next, in step S14, the placement planning unit 34 selects a placement range corresponding to one of the groups extracted in step S12.
[0055] Next, in step S16, the placement planner 34 calculates a placement pattern in which the components included in the group corresponding to the selected placement range are placed in the placement range corresponding to that group so as to satisfy the constraint information.
[0056] Next, in step S18, the placement planning unit 34 judges whether or not the selection of all placement ranges corresponding to the groups extracted in step S12 has been completed. If there are any unselected placement ranges, the process returns to step S14, and if the selection of all placement ranges has been completed, the process proceeds to step S20.
[0057] In step S20, the placement planning unit 34 combines the placement patterns calculated for each placement range to calculate placement candidates, and passes information on the calculated placement candidates to the evaluation unit 36. Then, the evaluation unit 36 calculates a placement cost for each placement candidate using at least a cost based on the work information.
[0058] Next, in step S22, the evaluation unit 36 selects the placement candidate with the highest evaluation indicated by the placement cost as the optimal placement, and outputs placement information on the selected placement, and the robot facility design process ends.
[0059] As described above, the robot equipment design device according to the first embodiment acquires component information (robot specification information and component information) regarding each component (robot and components other than the robot) included in the equipment including the robot as a component. The robot equipment design device also acquires work information regarding the work to be performed by the robot and constraint information regarding the arrangement of the components. Then, based on the component information and the work information, the robot equipment design device calculates one or more arrangement candidates that satisfy the constraint information as arrangement candidates for each of the components in the equipment. Furthermore, the robot equipment design device calculates the arrangement cost for each arrangement of the arrangement candidates, and selects an optimal arrangement from the arrangement candidates based on the evaluation indicated by the arrangement cost. That is, the robot equipment design device calculates an arrangement candidate that satisfies the constraint reflecting the user's intention, and then evaluates each arrangement candidate based on the arrangement cost for each arrangement candidate. This makes it possible to efficiently calculate an arrangement that reflects the user's intention in the design of the equipment including the robot as a component. Also, by selecting an optimal arrangement according to the arrangement cost using the cost based on the work information, it is possible to calculate an arrangement in which the work by the robot is performed efficiently.
[0060] The robot equipment design device also acquires, as constraint information, a constraint indicating the maximum range assumed for the placement of components, that each component is placed within the placement range set for each component, and a constraint that the components do not interfere with each other.The robot equipment design device then calculates the placement of each component included in the component group within the placement range for each placement range corresponding to the component group whose common placement range is the constraint information.This makes it possible to efficiently calculate a placement that reflects the user's intention and improves the success rate of the robot's path planning.
[0061] In addition, the robot facility design device acquires at least one of the following constraint information: a positional relationship between components, an area where the components cannot be placed, a designated position for placing the components, a clearance for the components, and a position of the robot relative to the components corresponding to the robot's working point. This allows the user's intention to be reflected in the calculation of the placement in detail and flexibly.
[0062] <Second embodiment> Next, a second embodiment will be described. In the robot equipment design device according to the second embodiment, the same components as those in the robot equipment design device 10 according to the first embodiment will be denoted by the same reference numerals and detailed descriptions thereof will be omitted. In addition, in the functional components having the same last two digits of the reference numerals in the first and second embodiments, detailed descriptions of the common functions will be omitted. Furthermore, since the hardware configuration of the robot equipment design device according to the second embodiment is similar to the hardware configuration of the robot equipment design device 10 according to the first embodiment shown in FIG. 2, the description thereof will be omitted.
[0063] The functional configuration of a robot equipment design device 210 according to the second embodiment will be described. As shown in Fig. 3, the robot equipment design device 210 includes, as its functional components, an acquisition unit 32, a layout planning unit 234, and an evaluation unit 36. Each functional component is realized by the CPU 12 reading out a robot equipment design program stored in the storage device 16, expanding it in the memory 14, and executing it.
[0064] In the first embodiment, a case has been described where there is no overlap between the placement ranges, as shown in Fig. 4. The placement ranges set for each component may be set so as to partially overlap, as in placement range 1 and placement range 2 shown in Fig. 13, or may be set so as to have an inclusive relationship, as in placement range 2 and placement range 3.
[0065] The placement planning unit 234 determines the placement range for which a placement pattern is to be calculated in a predetermined order of priority when placement ranges corresponding to groups of components whose common placement range is constraint information overlap as shown in Fig. 13. Specifically, when calculating a placement pattern for a placement range that includes an area that overlaps with a placement range whose placement pattern has been determined earlier in the order of priority, the placement planning unit 234 calculates the placement pattern so as not to interfere with the components in the previously determined placement pattern.
[0066] For example, the placement plan unit 234 may determine that a placement range having a smaller size has a higher priority. The smaller the size of the placement range, the more difficult it is to place components in the placement range so as to satisfy the constraint information. Therefore, by determining the placement pattern for the placement range having a smaller size first, it becomes easier to calculate a placement that satisfies the constraint information for the entire area in which the equipment is designed.
[0067] Also, for example, the placement planning unit 234 may determine that the placement range with the smaller degree of freedom of the area in which the components can be placed in the placement range has a higher priority. The degree of freedom may be, for example, the degree of freedom=(area of placement range-area of non-placeable area) / area of the component (area of the circumscribed shape of the part installed on the floor surface). The non-placeable area is, for example, an area of fixed equipment installed within the placement range. For example, as shown in FIG. 14, it is assumed that placement range 1 is set as the constraint information of component A, and placement range 2 is set as the constraint information of component B. It is also assumed that placement range 1 and placement range 2 have the same area, component A and component B have the same area, and fixed equipment is installed within placement range 1. In this case, the degree of freedom of placement range 1 is smaller than the degree of freedom of placement range 2, so that placement range 1 has a higher priority than placement range 2. When the area of the area excluding the non-placeable area from the placement range is small after taking into account the size of the fixed equipment and the components, it becomes difficult to calculate a placement pattern that satisfies the constraint information, as in the case where the size of the placement range is small. Therefore, by first determining the placement pattern for the placement range with the least degree of freedom, it becomes easier to calculate a placement that satisfies the constraint information for the entire area in which the equipment is designed.
[0068] Also, for example, the placement plan unit 234 may determine that, in the case of placement ranges that are in an inclusive relationship, the inner placement range has a higher priority. For example, as shown in FIG. 15, placement range 2 is set as the constraint information of components A, B, and C, and placement range 1 is set as the constraint information of components D and E, and placement range 2 is included in placement range 1. In this case, it is assumed that a placement pattern is calculated first from placement range 1, which is the outer placement range. In this case, when calculating the placement pattern for placement range 2, as shown in the dashed line in FIG. 16, there is a high possibility that the placement pattern will interfere with the components in the placement pattern for placement range 1 that has been calculated earlier, or that the components will not fit in placement range 2, as shown in the dashed line in FIG. 17. In other words, there is a high possibility that the constraint that the components do not interfere with each other, or the constraint that each of the components is placed within the placement range set for each component, will not be satisfied. Therefore, by determining the placement pattern first from the inner placement range that is in an inclusive relationship, it becomes easier to calculate a placement that satisfies the constraint information for the entire area in which the equipment is designed.
[0069] The placement planning unit 234 may set a priority for each placement range based on any one of the size, degree of freedom, and inclusion relationship of the placement range described above, or may set an overall priority that combines these.
[0070] Next, the operation of the robot equipment design device 210 according to the second embodiment will be described. Fig. 18 is a flowchart showing the flow of a robot equipment design process executed by the CPU 12 of the robot equipment design device 210. The CPU 12 reads out a robot equipment design program from the storage device 16, expands it in the memory 14, and executes it, whereby the CPU 12 functions as each functional component of the robot equipment design device 210, and the robot equipment design process shown in Fig. 18 is executed. Note that in the robot equipment design process shown in Fig. 18, the same processes as those in the robot equipment design process (Fig. 12) in the first embodiment are given the same step numbers, and detailed descriptions thereof will be omitted.
[0071] After steps S10 and S12, the process proceeds to step S210. In step S210, the placement planning unit 234 sets a priority for each placement range corresponding to each group extracted in step S12 based on the size, degree of freedom, inclusion relationship, or a combination of these, of the placement range.
[0072] Next, in step S214, the placement planner 234 selects a placement range corresponding to one of the groups extracted in step S12 above, in the order of priority set in step S210 above.
[0073] Next, in step S216, the placement planner 234 calculates a placement pattern in which the components included in the group corresponding to the selected placement range are placed in the placement range corresponding to that group so as to satisfy the constraint information. At this time, if the components in the placement range for which the placement pattern has been calculated earlier interfere with the components in the selected placement range, the placement planner 234 calculates a placement pattern that satisfies the constraint that the components do not interfere with each other by correcting the placement of the components in the selected placement range.
[0074] Next, in step S18, the placement planning unit 234 judges whether or not the selection of all placement ranges corresponding to the groups extracted in step S12 has been completed. If there are any unselected placement ranges, the process returns to step S214, and if the selection of all placement ranges has been completed, the process proceeds to step S20.
[0075] Thereafter, similarly to the robot equipment design process in the first embodiment, the processes of steps S20 and S22 are executed, and the robot equipment design process ends.
[0076] As described above, the robot equipment design device according to the second embodiment sets a priority for each placement range based on the size, degree of freedom, inclusion relationship, or a combination of these for the placement range. Then, the robot equipment design device calculates a placement pattern for each placement range in order of priority. As a result, even if there is overlap in the placement ranges set as constraint information for each component, it is possible to efficiently calculate a placement that reflects the user's intention in designing equipment that includes a robot as a component.
[0077] <Third embodiment> Next, a third embodiment will be described. In the robot equipment design device according to the third embodiment, the same components as those in the robot equipment design device 10 according to the first embodiment will be denoted by the same reference numerals and detailed descriptions thereof will be omitted. In addition, in the functional components having the same last two digits of the reference numerals in the first and third embodiments, detailed descriptions of the common functions will be omitted. Furthermore, since the hardware configuration of the robot equipment design device according to the third embodiment is similar to the hardware configuration of the robot equipment design device 10 according to the first embodiment shown in FIG. 2, the description thereof will be omitted.
[0078] The functional configuration of a robot equipment design device 310 according to the third embodiment will be described. As shown in Fig. 3, the robot equipment design device 310 includes, as its functional components, an acquisition unit 32, a layout planning unit 34, and an evaluation unit 336. Each functional component is realized by the CPU 12 reading out a robot equipment design program stored in the storage device 16, expanding it in the memory 14, and executing it.
[0079] The evaluation unit 336 calculates the placement cost for each placement candidate based on the operation time of the robot when performing the tasks in the task order indicated by the task information. Specifically, the evaluation unit 336 may identify a task point for each placement candidate based on the task information, and calculate the placement cost based on a simple operation time by multiplying the length of a path that traces the identified task point in the task order by a preset robot operation speed. The evaluation unit 336 may also calculate the robot posture for each task point based on the robot specification information and task information, and calculate the sum of the robot operation times from the start posture to the end posture corresponding to the interval between task points as the placement cost, for example, as shown in the following formula (5).
[0080]
number
[0081] In equation (5), m is the number of work points, t i,i+1 is the motion time between the i-th task point and the (i+1)-th task point. The evaluation unit 336 sets the speed and acceleration for changing the posture of the robot based on the dynamics information included in the robot specification information, and simulates the motion of the robot to obtain the motion time t i,i+1 Then, the evaluation unit 336 selects the placement candidate with the shortest operation time as the optimal placement according to the placement cost based on the operation time.
[0082] The operation of the robot equipment design device 310 in the third embodiment differs from that in the first embodiment only in that in step S20 of the robot equipment design process (FIG. 12) in the first embodiment, a placement cost based on an operation time is calculated as the placement cost, and therefore a description thereof will be omitted.
[0083] As described above, the robot equipment design device according to the third embodiment calculates the cost based on the robot's operating time for each placement candidate as the placement cost for selecting the optimal placement from the placement candidates.The robot equipment design device then selects the placement candidate that results in the shortest operating time as the optimal placement.This makes it possible to select the placement that results in the shortest robot operating time as the optimal placement.
[0084] In the third embodiment, similarly to the second embodiment, when calculating the arrangement pattern for each arrangement range, the calculation may be performed in order of priority of the arrangement range.
[0085] <Fourth embodiment> Next, a fourth embodiment will be described. In the robot equipment design device according to the fourth embodiment, the same components as those in the robot equipment design device 10 according to the first embodiment are given the same reference numerals and detailed descriptions thereof will be omitted. In addition, in the functional components having the same last two digits of the reference numerals in the first and fourth embodiments, detailed descriptions of the common functions will be omitted. Furthermore, since the hardware configuration of the robot equipment design device according to the fourth embodiment is similar to the hardware configuration of the robot equipment design device 10 according to the first embodiment shown in FIG. 2, the description thereof will be omitted.
[0086] The functional configuration of a robot equipment design device 410 according to the fourth embodiment will be described. As shown in Fig. 19, the robot equipment design device 410 includes, as its functional configuration, an acquisition unit 32, a creation unit 438, a layout planning unit 34, and an evaluation unit 436. Each functional configuration is realized by the CPU 12 reading out a robot equipment design program stored in the storage device 16, expanding it in the memory 14, and executing it.
[0087] The creation unit 438 generates a reachability map indicating the reachability of each point in the space including the robot. Reachability is an index indicating how easily the corresponding point can be reached by the robot. Specifically, the creation unit 438 divides the space including the robot into a plurality of voxels by discretizing the space at regular intervals in each of the three-dimensional directions. As shown in FIG. 20, the creation unit 438 sets a sphere 42 in each discretized voxel 40, and generates coordinate system candidates 44 of the robot hand on the surface of the sphere 42 at regular intervals. In the example of FIG. 20, the coordinate system candidates 44 are represented by arrows in the z-axis direction of the local coordinate system of the robot hand 46. The creation unit 438 receives the robot specification information from the acquisition unit 32. Then, based on the robot specification information, the creation unit 438 determines whether or not there is a solution for each of the coordinate system candidates 44 that results in a robot posture that matches the coordinate system candidate 44 with the robot hand 46, and counts the coordinate system candidates 44 that have a solution. Note that in this robot posture, the robot base (foundation part) may not move or rotate.
[0088] The creation unit 438 calculates the reachability for each voxel 40, for example, as follows. Reachability = (number of coordinate system candidates with solutions / total number of coordinate system candidates)*100 The creation unit 438 creates a reachability map by calculating the reachability for all voxels 40 in the space as described above. The reachability map can be conceptually expressed in the same way as the manipulability shown in FIG. 11. In the example of FIG. 11, each point corresponds to a reachability value calculated for each voxel 40, and the lighter the color (density) of a point, the higher the reachability, i.e., the easier it is for the robot hand 46 to reach that point. The creation unit 438 passes the created reachability map to the evaluation unit 4336.
[0089] The evaluation unit 436 calculates a placement cost for each placement candidate calculated by the placement planning unit 34 based on the reachability map. Specifically, the evaluation unit 436 aligns the position and orientation of the robot in the reachability map to the position and orientation of the robot in the placement candidate. The evaluation unit 436 then obtains the reachability of the voxel 40 closest to each task point as seen from the robot, and calculates the sum of the reachability for all task points as the placement cost. In the case of reachability calculated as above, a larger placement cost indicates a higher placement evaluation.
[0090] Next, the operation of the robot equipment design device 410 according to the fourth embodiment will be described. Fig. 21 is a flowchart showing the flow of a robot equipment design process executed by the CPU 12 of the robot equipment design device 410. The CPU 12 reads out a robot equipment design program from the storage device 16, expands it in the memory 14, and executes it, whereby the CPU 12 functions as each functional component of the robot equipment design device 410, and the robot equipment design process shown in Fig. 21 is executed. Note that in the robot equipment design process shown in Fig. 21, the same processes as those in the robot equipment design process (Fig. 12) in the first embodiment are given the same step numbers, and detailed descriptions thereof will be omitted.
[0091] After step S10, the process proceeds to step S410. In step S410, the creation unit 438 discretizes and divides the space including the robot into a plurality of voxels 40, sets a sphere 42 within each of the discretized voxels 40, and generates coordinate system candidates 44 for the robot hand at regular intervals on the surface of the sphere 42. Then, based on the robot specification information, the creation unit 438 calculates the reachability for each of the coordinate system candidates 44 based on the presence or absence of a solution that results in a robot posture that matches the coordinate system candidate 44 with the robot hand 46, thereby creating a reachability map.
[0092] Next, the process proceeds to step S420 via steps S12 to S18. In step S420, the evaluation unit 436 aligns the position and orientation of the robot in the reachability map for each placement candidate with the position and orientation of the robot in the placement candidate. The evaluation unit 436 then obtains the reachability of the voxel 40 closest to each task point as seen from the robot, and calculates the sum of the reachability for all task points as the placement cost.
[0093] Thereafter, similarly to the robot equipment design process in the first embodiment, the process of step S22 is executed, and the robot equipment design process ends.
[0094] As described above, the robot facility design system according to the fourth embodiment selects an optimal layout from the layout candidates using the layout cost based on the reachability, which indicates the ease of reach of the robot. This makes it possible to select a layout that allows the robot to assume a natural posture as the optimal layout.
[0095] In the fourth embodiment, similarly to the second embodiment, when calculating the placement pattern for each placement range, the calculation may be performed in the order of priority of the placement range. Also, a placement cost that combines the placement cost described in the first to third embodiments and the placement cost based on reachability may be calculated.
[0096] In each of the above embodiments, the number of robots included in the robot equipment may be one or more. When multiple robots are included, a robot equipment capable of handling more complicated tasks can be constructed.
[0097] In addition, the disclosed technology is applicable to offline teaching tools for robots, simulation tools such as CPS (Cyber-Physical Systems), CAD, and the like.
[0098] In addition, the robot equipment design process executed by the CPU by reading the software (program) in each of the above embodiments may be executed by various processors other than the CPU. In this case, examples of the processor include a PLD (Programmable Logic Device) such as an FPGA (Field-Programmable Gate Array) whose circuit configuration can be changed after manufacture, and a dedicated electric circuit such as an ASIC (Application Specific Integrated Circuit) which is a processor having a circuit configuration designed exclusively for executing a specific process. The robot equipment design process may be executed by one of these various processors, or may be executed by a combination of two or more processors of the same or different types (for example, a plurality of FPGAs, a combination of a CPU and an FPGA, etc.). The hardware structure of these various processors is, more specifically, an electric circuit that combines circuit elements such as semiconductor elements.
[0099] In addition, in each of the above embodiments, the robot equipment design program is described as being pre-stored (installed) in the storage device, but the present invention is not limited to this. The program may be provided in a form stored in a storage medium such as a CD-ROM, a DVD-ROM, a Blu-ray disc, or a USB memory. The program may also be downloaded from an external device via a network. [Explanation of symbols]
[0100] 10, 210, 310 Robot equipment design device 12 CPU 14. Memory 16 Storage device 18 Input Devices 20 Output Devices 22 Storage media reader 24 Communication I / F 26 Bus 32 Acquisition Department 34, 234 Layout Planning Department 36, 336 Evaluation Department 40 Voxels 42 balls 44 Candidate coordinate systems 46 Robot Minions
Claims
1. an acquisition unit that acquires component information on each component included in a facility that includes a robot as a component, task information on tasks to be performed by the robot, and constraint information on the placement of the components; an arrangement planning unit that calculates one or more arrangement candidates that satisfy the constraint information as arrangement candidates for each of the components in the facility based on the component information and the work information; an evaluation unit that calculates a cost for each of the placement candidates and selects an optimal placement from the placement candidates based on an evaluation indicated by the cost; the acquisition unit acquires, as the constraint information, a constraint indicating a maximum range assumed as a range for arranging the components, and arranging each of the components within a placement range set for each of the components; The placement planning unit calculates, for each of the placement ranges corresponding to a group of components in which the common placement range is constraint information, a placement of each of the components included in the group of components within the placement range. Robot equipment design device.
2. The robot equipment design device according to claim 1 , wherein the evaluation unit calculates the cost based on at least the work information.
3. The robot equipment design device according to claim 2 , wherein the evaluation unit calculates a cost based on an operation distance or an operation time of the robot when the robot performs the operations in the operation order indicated by the operation information.
4. 4. The robot equipment design device according to claim 2 or claim 3, wherein the evaluation unit further calculates the cost based on at least one of a distance between the components, an area or volume of an area in which the components are arranged, and a distance between an obstacle and the components.
5. 5. The robot equipment design device according to claim 1, wherein the acquisition unit acquires, as the constraint information, a constraint that the components do not interfere with each other.
6. The robot equipment design device according to any one of claims 1 to 5, wherein when the placement ranges corresponding to the component groups overlap, the placement planner calculates the placement of each of the components included in the component groups within the placement range in a predetermined order of priority.
7. The robot equipment design device according to claim 6 , wherein the placement planner determines that the smaller the placement range is, the higher the priority is.
8. The robot equipment design device according to claim 6 , wherein the layout planner determines that the priority is higher for a layout range having a lower degree of freedom of an area in which the components can be arranged.
9. The robot equipment design device according to claim 6 , wherein the placement planner determines that, when the placement ranges have an inclusive relationship with each other, the priority of the placement range is higher on the inner side.
10. The robot equipment design device according to any one of claims 1 to 9, wherein the acquisition unit acquires, as the constraint information, at least one of a positional relationship between the components, an area where the components cannot be placed, a designated position at which the components are placed, a clearance with respect to the components, and a position of the robot with respect to the components corresponding to a working point of the robot.
11. The robot equipment design device according to any one of claims 1 to 10, wherein the evaluation unit calculates a cost based on reachability indicating how easily the tip of the robot can reach a work point.
12. an acquisition unit acquires component information on each component included in a facility including a robot as a component, task information on tasks to be performed by the robot, and constraint information on the placement of the components; a placement planning unit calculates one or more placement candidates that satisfy the constraint information as placement candidates for each of the components in the facility based on the component information and the work information; an evaluation unit that calculates a cost for each of the placement candidates and selects an optimal placement from the placement candidates based on an evaluation indicated by the cost; the acquisition unit acquires, as the constraint information, a constraint indicating a maximum range assumed as a range for arranging the components, and arranging each of the components within a placement range set for each of the components; The placement planning unit calculates, for each of the placement ranges corresponding to a group of components in which the common placement range is constraint information, a placement of each of the components included in the group of components within the placement range. Robot equipment design methods.
13. Computer, an acquisition unit that acquires component information on each component included in a facility that includes a robot as a component, task information on tasks to be performed by the robot, and constraint information on the placement of the components; an arrangement planning unit that calculates one or more arrangement candidates that satisfy the constraint information as arrangement candidates for each of the components in the facility based on the component information and the work information; and a robot equipment design program for causing a robot to function as an evaluation unit that calculates a cost for each of the placement candidates and selects an optimal placement from the placement candidates based on an evaluation indicated by the cost, the acquisition unit acquires, as the constraint information, a constraint indicating a maximum range assumed as a range for arranging the components, and arranging each of the components within a placement range set for each of the components; The placement planning unit calculates, for each of the placement ranges corresponding to a group of components in which the common placement range is constraint information, a placement of each of the components included in the group of components within the placement range. Robot equipment design program.
Citation Information
Patent Citations
Production line layout generating device
JP1995160739A
Method for estimating robot action and apparatus for estimating and assisting robot action
JP1997066481A
Production process layout generating device, its method and computer readable recording medium in which program to make computer function as production process layout generating device is recorded
JP2001236110A
Apparatus, method and program for supporting arrangement of work area, and recording medium
JP2011028597A
Layout setting method, and layout setting device
JP2018020410A