This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2016-159017, filed on Aug. 12, 2016, the entire contents of which are incorporated herein by reference.
The embodiment discussed herein is related to a process planning support apparatus, a process planning support method, and a computer-readable recording medium.
Conventionally, process planning to allocate works to work stations, respectively, in an assembly line for performing assembly of products is created by a designer while evaluating the work time or cost in each of the work stations. For creation of the process planning, a process planning support apparatus that generates an order in which the cost calculated by a simulator verifying an assembly work is the lowest, and that divides processes to equalize costs of the processes, thereby designing process planning is known.
However, in the case of process planning for an assembly line in which humans and robots are mixed in work stations, creation of the process planning may include many man-hours and is not easy even if the process planning is created by a professional designer.
For example, the work time may greatly vary depending on a work subject such as a robot and a human even when contents of a work are the same. Considering a work of assembling components as an example, the work time can be estimated from the time of each of elements such as grasp, carry, paste, and press when the work subject is a human. However, when the work subject is a robot, fine movements such as approach, hold, and lift need to be considered as for the element of grasp, for example, and settings on these fine movements are handled manually by the designer.
According to an aspect of an embodiment, a process planning support apparatus includes a processor that executes a process including: setting allocation of works with respect to each of work stations in an assembly line; first calculating work times corresponding to work subjects of the work stations based on library data of each of unit works, in which each unit work is expressed by a combination of element works each having motions as constituent elements, for the works allocated to the work stations, respectively; second calculating evaluation indexes of the work stations based on the calculated work times, respectively; and outputting the calculated evaluation indexes.
The object and advantages ox the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to foe understood that, both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Preferred embodiments of the present invention will be explained with reference to accompanying drawings. In the embodiments, constituent elements having the same functions are denoted by like reference signs and redundant explanations thereof will be omitted. The process planning support apparatus, the process planning support method, and the process planning support program described in the following embodiments are only examples and the embodiments are not limited thereto. Each of the embodiments described below may be combined appropriately within a scope in which no contradiction occurs.
The process planning support apparatus 1 receives process planning in which works of assembling products are allocated to work stations (processes), respectively, in an assembly line for performing assembly of products according to an operation of a user 2. The process planning support apparatus 1 then calculates an evaluation result 3 of the process planning received from the user 2 and displays the evaluation result 3 on a display or the like to output the evaluation result 3 of the process planning to the user 2. The user 2 creates actual process planning based on the evaluation result 3.
In the assembly line 20, products are carried to the next work station by a conveyor belt (not illustrated) or the like according to a takt time (a time limit) defined from production planning. A robot 21A and workers 21B to 21D are placed at the work stations A to D in the assembly line 20. In the illustrated example, the robot 21A is placed at the work station A, and the workers 21B to 21D are placed at the work stations B to D, respectively,
Works based on the process planning are allocated to the work stations A to D in the assembly line 20. The robot 21A and the workers 21B to 21D placed at the work stations A to D, respectively, perform the works allocated according to the process planning to the products carried in the assembly line 20 to produce the products.
The configuration example of the assembly line 20 is not limited to that illustrated in
The process planning support apparatus 1 outputs the evaluation result 3, which is an evaluation index calculated for each of the work stations based on the work time table 2a. Specifically, as illustrated in
Alternatively, the evaluation result 3 can be a graph of a running cost obtained by multiplying the cycle time at each of the work stations in the work time table 2a by a cost coefficient. The user 2 can know an evaluation of the process planning input and set in the process planning support apparatus 1 based on the graph of the evaluation result 3 indicating the evaluation indexes of the respective work stations, and can refer to the graph when creating actual process planning.
Referring back to
The assembly-work module library 10a is library data of each of unit works, in which each unit work is expressed as a module by combining element works each including motions as constituent elements for each of works as targets to be allocated to the work stations A to D, respectively.
An element work is a work in a minimum unit that provides a state change to a component, a tool, equipment, or the like by a series of motions being the constituent elements. A unit work is a work in one unit that provides a change for approaching to a completed state to a product.
The unit work 30a has information about a work in one unit, such as an identifier, a name, a classification, a remark, a component, an attachment-destination component, an automation difficulty level, a work subject, and a truth value as to whether a work is an additional work.
The identifier in the unit work 30a is identification information that identifies a work. The name and the classification are information indicating the name and the classification of a work. The remark is a remark column for a work and includes, for example, restriction information such as an execution order of the work. The component and the attachment-destination component are information indicating components related to a work.
The automation difficulty level indicates the difficulty level in a case where a work is performed by the robot 21A. For example, when a work is performed by the robot 21A, the cost of the work can be obtained based on the automation difficulty level. For example, when the difficulty level of a work performed by the robot 21A is high, the initial cost of the robot 21A becomes high and thus the cost may be calculated to be high according to the height of the difficulty level.
The work subject is information indicating a subject (a robot or a worker) that performs a work. The truth value as to whether a work is an additional work is information (a flag) indicating whether the work is an additional work.
The each-work-subject-directed unit work 30b is information indicating a unit work directed to each work subject in the unit work 30a and has information such as a work subject, a tool, a jig, and an equipment/peripheral device. The work subject indicates a subject that performs a work. The tool, the jig, and the equipment/peripheral device indicate a tool, a jig, and an equipment/peripheral device used by a work subject for the relevant work. The unit work 30a and the each-work-subject-directed unit work 30b are also referred to as “unit work 30” when these are not particularly distinguished.
The element work 31 is information of an element work that is linked to the unit work 30 and is combined with the unit work 30 using an identifier or the like. The element work 31 has information such as an identifier, a name, a classification, a workpiece component, a tool, a jig, equipment, a work time, and a remark.
The identifier in the element work 31 is identification information that identifies an element work. The name and the classification are information indicating the name and the classification of an element work. The workpiece component, the tool, the jig, and the equipment are information indicating a workpiece component, a tool, a jig, and equipment related to an element work. The work time is information indicating an estimated work time of an element work. The remark is a remark column for an element work.
The motion 32 is information of motions that are linked to the element work 31 using identifiers or the like and that become constituent elements (also “motion elements”) of the element work 31.
Specifically, a unit work 30 a being “pasting work” has the work-subject-directed unit work 30b corresponding to a human or a robot. For example, in the case of a human, the work-subject-directed unit work 30b has element works 31 including “pick”, “carry”, “paste”, and “press”. In the case of a robot, the work-subject-directed unit work 30b has element works 31 including “image and recognize”, “pick”, “carry”, “paste”, and “press”. The element works 31 of the robot have motions 32 of the robot for each of the element works, including “wait”, “move arm”, and “grasp”.
Referring back to
The work modeling unit 11 refers to the assembly-work module library 10a with respect to each of works (unit works 30) included in the process planning received according to the operation of the user 2 and modularizes works to generate a model (a module) of each of the unit works 30. The work modeling unit 11 outputs the generated models to the process/work-order setting unit 12.
The process/work-order setting unit 12 sets allocation of works to the respective work stations A to D (processes) in the assembly line 20 based on the process planning received, according to the operation of the user 2. Specifically, the process/work-order setting unit 12 arranges the models of the respective unit works 30 generated by the work modeling unit 11 in a set work order to express the entire work in the process planning.
The work-order-restriction determination unit 13 checks (determines) whether the work order allocated by the process/work-order setting unit 12 meets restrictions on an execution order of the unit works 30 based on restriction information indicating an execution order of the respective unit works 30 in the assembly-work module library 10a. The work-order-restriction determination unit 13 outputs a result of the check to the process/work-order setting unit 12. When the order of the works in the process planning received according to the operation of the user 2 does not meet the restrictions, the process/work-order setting unit 12 outputs a warning to the user 2. This enables the user 2 to confirm that the order of the works in the process planning does not meet the restrictions previously set.
The work-order-restriction determination unit 13 checks whether the order of the works in the received process planning meets the restrictions on the execution order using the directed acyclic graph,
Specifically, the work-order-restriction determination unit 13 searches for groups (immediately below the root) that have no parent group as for the order of the works in the received process planning. Next, the work-order-restriction determination unit 13 selects one group from the search result and searches for a child to recursively assign a number thereto. A number #i−(j+1) is assigned to a child based on a number (#i−j) of the parent group.
In a branch portion 41 having a plurality of child groups, a SubAssy number k instead of “i” is newly acquired for the second and subsequent child groups, so that #k−0 is assigned to the corresponding parent and #k−1 is assigned to the child. In a confluence portion 42 having a plurality of parents, a plurality of numbers are assigned. When a parent group having plural numbers have one child group, one of the numbers of the parent group, being lower (smaller) in the SubAssy number is assigned to the child group.
The work-order-restriction determination unit 13 performs following checks (1) to (3) to all the works to determine whether the execution order meets the order restrictions.
(1) A node of a group to which a target work belongs is selected.
(2) A child group is selected on the graph.
(3) Whether all works included in the group selected in (2) have been performed earlier in the work order assigned with numbers (whether the works meet the restriction information) is confirmed.
The work-time calculation unit 14 calculates, for each of works set by the process/work-order setting unit 12 and allocated, to each of the work stations A to D, a work time corresponding to a work subject at the relevant work station, while referring to data modeled (modularized) in the assembly-work module library 10a.
The evaluation-value calculation unit 15 calculates an evaluation index of each of the work stations A to D based on the work times calculated by the work-time calculation unit 14. Specifically, the evaluation-value calculation unit 15 calculates the sum of work times of works allocated to the work stations A to D, respectively, to calculate a cycle time of each of the work stations A to D as the evaluation index. Furthermore, the evaluation-value calculation unit 15 multiplies the cycle time of each of the work stations A to D by a predetermined cost coefficient to calculate a cost corresponding to the cycle time of each of the work stations A to D as the evaluation index.
The evaluation-result output unit 16 outputs the evaluation index of each of the work stations A to D, calculated by the evaluation-value calculation unit 15, as the evaluation result 3 through file outputting or display outputting to a display.
An operation of the process planning support apparatus 1, specifically, calculation of the work time in the work-time calculation unit 14 is described detail next.
As illustrated in
Specifically, at Step S1, the work-time calculation unit 14 additionally allocates an additional work of setting/resetting a component to the worker (21B) adjacent to the work station A of the robot 21A (Step S1). For example, with respect to a work in which an additional work truth value is true among works allocated to the work station A of the robot 21A, the work-time calculation unit 14 allocates the additional work of setting/resetting to the adjacent worker.
Next, the work-time calculation unit 14 additionally allocates an additional work of loading/unloading a component to the work station A of the robot 21A (Step S2). For example, with respect to a work in which the additional work truth value is true among the works allocated to the work station A of the robot 21A, the work-time calculation unit 14 additionally allocates the additional work of loading/unloading.
Subsequently, the work-time calculation unit 14 refers to parameters previously set in the equipment/jig information 10b and calculates the times taken for the additional works (setting/resetting and loading/unloading of a component) (Step S3).
Next, the work-time calculation unit 14 refers to data modeled (modularized) from the assembly-work module library 10a and calculates the work time of the subject work with respect to each of the work stations A to D (Step S4).
As illustrated in
Next, the work-time calculation unit 14 determines the work subject of the loaded assembly work (Step S12). Specifically, as for a work allocated to the work station A of the robot 21A, the work-time calculation unit 14 determines the work subject to be “robot”. As for works allocated to the work stations B to D of the workers 21B to 21D, the work-time calculation unit 14 determines the work subject to be “human”.
When the work subject is determined to be “human” at Step S12, the work-time calculation unit 14 acquires the work time of each motion by referring to the standard time DB 10c based on motion contents (“grasp”, “carry”, “paste”, and “press”, for example) of humans in the modules of the assembly work (see
When the work subject is determined to be “robot” at Step S12, the work-time calculation unit 14 calculates the time taken fox each motion using, information (such, as “approach”, “hold”, . . . ) of sub modules of a motion level of the robot in the modules of the assembly work (see
Specifically, the work-time calculation unit 14 calculates the time taken for each motion of the robot by a combination of each of the motions (“approach”, “hold”, . . . ) in the information of the sub modules of the motion level and a waiting time. Furthermore, each motion is assumed to have an operating speed (s) expressed by percentage as a parameter. The work-time calculation unit 14 obtains a time (Tact, A) taken for a motion (A) of the robot by the following calculating expression (1).
In this expression, c is a conversion factor [sec/step] depending on equipment Nabove is the number of motion steps in the motion (A). Tsleep is a waiting time [sec].
After Step S13 or Step S14, the work-time calculation unit 14 calculates the sum of work times of respective motions taken for the assembly work (Step S15). Specifically, the work-time calculation unit 14 obtains the sum of work times of respective motions taken for a work (X) by the following expression (2).
Next, the work-time calculation unit 14 outputs the calculated work time of each work as the work time table 2a or the like to the evaluation-value calculation unit 15 (Step S16) to end the processing.
Subsequent to the processing of calculating the work time of the subject work (Step S4), the work-time calculation unit 14 sequentially checks the works (modules) of the respective work stations and detects the number of times of switching of tools or components (Step S5). Next, the work-time calculation unit 14 calculates the time taken for the switching with respect to each of the work stations based on the detected number of times of switching (Step S6).
Subsequently, the work-time calculation unit 14 calculates the sum of work times of the subject work, the additional work, and the tool switching to calculate the cycle time with respect to each of the work stations (Step S7). Next, the work-time calculation unit 14 outputs the calculated cycle time to the evaluation-value calculation unit 15 to end the processing.
As described above, the process planning support apparatus 1 has the process/work-order setting unit 12 that sets allocation of works to the work stations A to D in the assembly line 20. The process planning support apparatus 1 also has the work-time calculation unit 14 that calculates, for the work allocated to each of the work stations A to D, the work time corresponding to the relevant work subject based on the assembly-work module library 10 a with respect to each of unit works, in which each unit work is expressed by a combination of element works each including motions as constituent elements. The process planning support apparatus 1 further has the evaluation-value calculation unit 15 that calculates the evaluation index (the cycle time or the cost, for example) with respect to each of the work stations A to D based on the work time calculated by the work-time calculation unit 14. The process planning support apparatus 1 has the evaluation-result output unit 16 that outputs the evaluation index calculated by the evaluation-value calculation unit 15 to a display or the like to present the evaluation index to the user 2.
The process planning support apparatus 1 can perform a design support in a case where the user 2 designs process planning by presenting the evaluation index calculated with respect to each of the work stations A to D to the user 2. Specifically, the user 2 can easily confirm the evaluation indexes of the respective work stations A to D, which greatly differ according to the work subjects (a robot or a worker, for example) in the work stations A to D without performing setting of a fine movement in a case where the work subject is a robot.
Furthermore, because the work-time calculation unit 14 adds the work time taken for the additional work according to the work subject, the process planning support apparatus 1 can present the evaluation index to which the additional work is also considered according to the work subject to the user 2.
The process planning support apparatus 1 also has the work-order-restriction determination unit 13 that checks the execution order of allocated works based on the restriction information on the execution order of the works. Therefore, work allocation according to the execution order can be set to the respective work stations.
The respective constituent elements of each of the illustrated devices do not always need to be physically configured as illustrated. That is, specific modes of distribution or integration of the devices are not limited to those illustrated, and all or some of the devices can be configured to be functionally or physically distributed or integrated in an arbitrary unit according to various loads or use statuses.
All or an arbitrary part of various processing functions performed in the process planning support apparatus 1 can be performed on a CPU (Central Processing Unit) (or a microcomputer such as an MPU (Micro Processor Unit) or an MCU (Micro Controller Unit)). It is needless to mention that all or an arbitrary part of the various processing functions can be performed on a program that is analyzed and executed by a CPU (or a microcomputer such as an MPU or an MCU) or on hardware using wired logic. The various processing functions performed in the process planning support apparatus 1 can be performed in corporation of a plurality of computers through cloud computing.
The various types of processing described in the above embodiment can be realized by executing a program prepared in advance on a computer. An example of a computer (hardware) that executes a program having identical functions to those in the above embodiment is described below.
As illustrated in
A program 111 for performing various types of processing in the work modeling unit 11, the process/work-order setting unit 12, the work-order-restriction determination unit 13, the work-time calculation unit 14, the evaluation-value calculation unit 15, and the evaluation-result output unit 16 described in the above embodiment is stored in the hard disk device 109. Various data 112 (such as the assembly-work module library 10a, the equipment/jig information 10b, and the standard time DB 10c) that is referred to by the program 111 is also stored in the hard disk device 109. The input device 102 receives an input of operation information from an operator of the process planning support apparatus 1, for example. The monitor 103 displays various screens to be operated by the operator, for example. For example, a printing device is connected to the interface device 106. The communication device 107 is connected to a communication network such as a LM (Local Area Network) and exchanges various types of information with an external device via the communication network.
The CPU 101 reads the program 111 stored in the hard disk device 109 and loads the program 111 on the RAM 108 to execute the program 111, thereby performing various types of processing. The program 111 does not always need to be stored in the hard disk device 109. For example, the process planning support apparatus 1 can read the program 111 stored in a readable storage medium and execute the read program 111. A storage medium readable by the process planning support apparatus 1 corresponds to a portable recording medium such as a CD-ROM, a DVD disk, or a USB (Universal Serial Bus) memory, a semiconductor memory such as a flash memory, and a hard disk drive, for example. The program 111 can be stored in a device connected to a public circuit, the Internet, a LAN, or the like and the process planning support apparatus 1 can read the program 111 therefrom to execute the read program 111.
According to an embodiment of the present invention, it is possible to easily create process planning for an assembly line.
All examples and conditional language recited herein are intended for pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2016-159017 | Aug 2016 | JP | national |