Control program generation device, control program generation method, program
Through the control program generation device and method, the control program generation device and method of automatic manufacturing machinery is solved, the problem of long development time is realized, the control program is generated quickly, and the introduction process of automatic manufacturing machinery is simplified.
Patent Information
- Application Number
- CN202180011269.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-01-28
- Filing Date
- 2021-01-25
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2041-01-25
AI Technical Summary
In the prior art, it takes a long time to develop a control program for new automatic manufacturing machinery, resulting in a time delay in introducing new automatic manufacturing machinery to the manufacturing site, which becomes a huge obstacle.
By using the control program generation device and method, a control program is automatically generated by generating a control program for an automatic manufacturing machine with a plurality of actuators, and a control program is automatically generated by a basic action storage unit, an action diagram reading unit, and a control program generation unit.
This greatly shortens the time required to develop new automatic manufacturing machinery, reduces dependence on programmers, and improves the import efficiency at the manufacturing site.
Smart Images

Figure CN115023669B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for generating a control program for an automatic manufacturing machine having a plurality of actuators. Background Art
[0002] Currently, labor saving in manufacturing sites such as factories is strongly demanded in all industries, and it is expected that this trend will become even stronger in the future. In order to promote labor saving in manufacturing sites, it is necessary to effectively use an automatic manufacturing machine that automatically performs the following operations: gripping an object to be processed or manufactured, transporting the object, or performing various processes or heating on the object.
[0003] Therefore, various types of automatic manufacturing machines (for example, Patent Document 1 and Patent Document 2) have been developed according to the object to be processed or manufactured, the content of the process (for example, cutting process, bending process), and the degree of heating in the case of food.
[0004] In addition, the size, shape, material, etc. of the object to be processed or manufactured are different at each manufacturing site, and the content of the process, the degree of heating, etc. also vary depending on the manufacturing site. Therefore, when introducing an automatic manufacturing machine into a manufacturing site, it is difficult to use the automatic manufacturing machine used in other manufacturing sites, and generally, it is necessary to newly develop a dedicated automatic manufacturing machine for each manufacturing site.
[0005] Prior Art Documents
[0006] Patent Documents
[0007] Patent Document 1: Japanese Unexamined Patent Application Publication No. 2011-245602
[0008] Patent Document 2: Japanese Unexamined Patent Application Publication No. 2018-192570 Summary of the Invention
[0009] Problems to be Solved by the Invention
[0010] However, there are the following problems: Developing a new automatic manufacturing machine also requires newly creating a control program for controlling the automatic manufacturing machine, and this situation has become a huge obstacle when introducing a new automatic manufacturing machine into a manufacturing site. The reasons are as follows.
[0011] When developing a new automatic manufacturing machine, first, a mechanical design technician, after understanding various functions required for the automatic manufacturing machine, creates a design drawing of the automatic manufacturing machine that can achieve the required functions. Next, a technician having the technology for creating a program (so-called programmer) understands the operations of various actuators and mechanical components described in the design drawing, and then creates a control program that realizes the required functions by causing the various actuators to operate in coordination.
[0012] In this way, a programmer with specialized skills needs to start developing the control program after the design of the automatic manufacturing machine is completed, resulting in a delay in the timing of starting to develop the control program. In addition, the programmer also needs time to understand the operations of various actuators and mechanical components. As a result, it takes a long time from the start of developing the automatic manufacturing machine to its delivery to the manufacturing site, which poses a significant obstacle when introducing a new automatic manufacturing machine to the manufacturing site.
[0013] The present invention is completed to solve the above problems of the prior art, and its object is to provide a technology that can significantly shorten the time required to develop a new automatic manufacturing machine by automatically generating the control program of the automatic manufacturing machine.
[0014] Solution to the problem
[0015] To solve the above problems, the control program generation device of the present invention adopts the following structure. That is,
[0016] A control program generation device (100) generates a control program for an automatic manufacturing machine (1) having a plurality of actuators (10-20). The control program generation device is characterized by comprising:
[0017] A basic motion storage unit (102) stores, in correspondence, a basic motion representing the motion of each degree of freedom of the actuator and capable of setting parameters and a program component for implementing the basic motion;
[0018] A motion diagram reading unit (103) reads a motion diagram (200), in which the motion of the automatic manufacturing machine is decomposed into a plurality of the basic motions, the parameters are set for the basic motions, and the end of the basic motion is associated with the start of other basic motions through logical operations, thereby describing the motion of the automatic manufacturing machine; and
[0019] A control program generation unit (105) generates the control program for causing the automatic manufacturing machine to operate by combining the program components stored in the basic motion storage unit according to the motion diagram.
[0020] In addition, the control program generation method of the present invention corresponding to the above control program generation device adopts the following structure. That is,
[0021] A control program generation method for generating, by a computer, a control program for an automatic manufacturing machine (1) having a plurality of actuators (10-20). The control program generation method is characterized by including:
[0022] An operation chart reading process (103) reads an operation chart in which the operation of the automatic manufacturing machine is described using basic operations representing the operations of each degree of freedom of the actuator and having parameters set therein, and logical operations associating the end of one basic operation with the start of another basic operation;
[0023] An operation chart analysis process (104) extracts a plurality of the basic operations included in the operation chart and the logical operations associating the plurality of basic operations by analyzing the operation chart; and
[0024] A control program generation process (105) transforms the basic operations described in the operation chart into program components by referring to data (102) storing the correspondence between the basic operations and the program components for implementing the basic operations, and generates the control program for operating the automatic manufacturing machine by combining the program components according to the operation chart.
[0025] In the control program generation device and the control program generation method according to the present invention, the basic operations of a plurality of actuators mounted on an automatic manufacturing machine are stored in advance in correspondence with the program components for implementing the basic operations. In addition, an operation chart is prepared in advance, in which the operation of the automatic manufacturing machine is decomposed into a plurality of basic operations, parameters are set for the basic operations, and the end of one basic operation is associated with the start of another basic operation by logical operations, thereby describing the operation of the automatic manufacturing machine. Then, when generating the control program for the automatic manufacturing machine, the operation chart describing the operation of the automatic manufacturing machine is read, the basic operations described in the operation chart are transformed into program components, and these program components are combined according to the operation chart, thereby generating the control program.
[0026] Since the basic operations of the actuator are simple operations, it is possible to pre-manufacture the program components for causing the actuator to perform the basic operations. In addition, when a mechanical design engineer designs an automatic manufacturing machine, the operation of the automatic manufacturing machine is realized by combining the basic operations of the actuator. Therefore, if it is a mechanical design engineer who designs the automatic manufacturing machine or a technician with sufficient knowledge of the structure of the automatic manufacturing machine, it is possible to easily prepare an operation chart in which the end and start of a plurality of basic operations are associated by logical operations, thereby describing the operation of the automatic manufacturing machine. Also, by setting parameters for the basic operations, it is possible to describe in the operation chart the detailed content of the basic operations such as the moving speed or rotational speed, the moving distance or rotational angle. Thus, if the operation chart is read, the basic operations in the operation chart are transformed into program components, and the program components are combined according to the operation chart, it is possible to automatically generate the control program for controlling the operation of the automatic manufacturing machine.
[0027] In addition, in the above-described control program generation device of the present invention, it is also possible to describe at least one of the timing operation of a timer and the counting operation of a counter as an operation in accordance with a basic operation in an operation diagram that describes the operations of an automatic manufacturing machine.
[0028] In this way, it is possible to describe, for example, the operations of an automatic manufacturing machine in an operation diagram such as delaying the start of an operation until a certain time has elapsed, or delaying the start of an operation until the number of times a specified button has been pressed reaches a specified number.
[0029] In addition, in the above-described control program generation device of the present invention, it is also possible to describe at least one of the sound output operation of a speaker and the light emission operation of a lamp as an operation in accordance with a basic operation in an operation diagram that describes the operations of an automatic manufacturing machine.
[0030] In this way, it is possible to describe, for example, the operations of an automatic manufacturing machine in an operation diagram such as operating an actuator after outputting a sound such as an effect sound from a speaker, or operating an actuator after lighting or flashing a lamp.
[0031] In addition, in the above-described control program generation device of the present invention, it is also possible to describe the heating operation of a heater as an operation in accordance with a basic operation in an operation diagram that describes the operations of an automatic manufacturing machine.
[0032] In this way, it is possible to describe, for example, the operations of an automatic manufacturing machine that heat-treats a metal material or the operations of an automatic manufacturing machine that heat-cooks food in an operation diagram.
[0033] In addition, in the above-described control program generation device of the present invention, it is also possible that, for the basic operations of actuators controlled by sequential control, program components for implementing the basic operations by sequential control are stored in advance in a corresponding manner, and for the basic operations of actuators controlled by servo control, program components for implementing the basic operations by servo control are stored in advance in a corresponding manner.
[0034] In this way, even for an automatic manufacturing machine in which actuators controlled by sequential control and actuators controlled by servo control coexist, it is possible to automatically generate a control program by describing the operations of the automatic manufacturing machine in an operation diagram.
[0035] In addition, the above-described control program generation method of the present invention can also be understood as a program for implementing the control program generation method using a computer. That is, the program of the present invention is for implementing, using a computer, a method for generating a control program for an automatic manufacturing machine (1) having a plurality of actuators (10 to 20), and the program is characterized by implementing the following functions using a computer:
[0036] The operation diagram reading function (103) reads an operation diagram, in which the operation of the automatic manufacturing machine is described using basic operations representing the operation of each degree of freedom of the actuator and having parameters set therein, and logical operations associating the end of one basic operation with the start of another basic operation;
[0037] The operation diagram analysis function (104) extracts a plurality of the basic operations included in the operation diagram and the logical operations associating the plurality of basic operations by analyzing the operation diagram; and
[0038] The control program generation function (105) transforms the basic operations described in the operation diagram into program components by referring to data (102) storing the correspondence between the basic operations and the program components for implementing the basic operations, and generates the control program for operating the automatic manufacturing machine by combining the program components according to the operation diagram.
[0039] If a computer reads and executes such a program, a control program for controlling the operation of the automatic manufacturing machine can be automatically generated according to the operation diagram. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] Figure 1 FIG. is an explanatory diagram showing the external shape of the automatic manufacturing machine 1 controlled by the control program generated by the control program generation device 100 of the embodiment.
[0041] Figure 2 FIG. is a block diagram conceptually showing the situation where the control computer 50 mounted on the automatic manufacturing machine 1 controls the operations of various actuators 10 to 20 mounted on the automatic manufacturing machine 1.
[0042] Figure 3 FIG. is an explanatory diagram showing a general process for developing a new automatic manufacturing machine 1.
[0043] Figure 4 FIG. is an explanatory diagram exemplifying the outline of the operation diagram (YOGO diagram) read by the control program generation device 100 of the present embodiment.
[0044] Figure 5 FIG. is an explanatory diagram showing a method of describing the operation of the automatic manufacturing machine 1 using an operation diagram (YOGO diagram).
[0045] Figure 6 FIG. is an explanatory diagram exemplifying a method of describing the operation of the automatic manufacturing machine 1 using an operation diagram (YOGO diagram) in another manner.
[0046] Figure 7It is an explanatory diagram showing an example of a description of a YOGO diagram in which the operation of the next actuator is started on the assumption that the operation of the actuator has ended before the operation of the actuator ends.
[0047] Figure 8 It is an explanatory diagram exemplifying operations that can be processed in the same way as the basic operation on the operation diagram (YOGO diagram).
[0048] Figure 9 It is an explanatory diagram exemplifying a method of taking the state of a switch as a start condition of an operation and describing it in the YOGO diagram.
[0049] Figure 10 It is an explanatory diagram exemplifying a method of taking the state of a switch as an end condition of an operation and describing it in the YOGO diagram.
[0050] Figure 11 It is an explanatory diagram showing the functions of the control program generation device 100 of the present embodiment.
[0051] Figure 12 It is an explanatory diagram exemplifying a case where the control program generation device 100 of the present embodiment stores the basic operation corresponding to the program component. Detailed implementation mode
[0052] A. Device structure:
[0053] Figure 1 It is an explanatory diagram showing the general external shape of the automatic manufacturing machine 1 of the present embodiment. The automatic manufacturing machine 1 of the present embodiment is a machine tool (so-called pipe bender) that automatically performs bending processing on a long-sized pipe to process it into a desired shape. Of course, as long as the automatic manufacturing machine 1 of the present embodiment can carry a plurality of actuators and automatically perform a plurality of operations such as gripping, transporting, processing, and heating on the object, it can also be a manufacturing machine other than a pipe bender. For example, it can also be a manufacturing machine for automatically manufacturing food. Or, it can also be a manufacturing system formed by combining a robotic arm robot having a plurality of joints and a transport device.
[0054] As Figure 1 shown, the automatic manufacturing machine 1 of the present embodiment generally has a horizontally long rectangular parallelepiped external shape, and two tracks 2 are erected along the long side direction on the top surface side of the rectangular parallelepiped. At one end side on the track 2 ( Figure 1On the left side (in the middle) is mounted a conveying unit 3 that holds and conveys a pipe (not shown) to be processed. On the side opposite to the side where the conveying unit 3 is mounted, a processing unit 4 that performs bending and other processing on the pipe (not shown) is mounted. In the conveying unit 3, a cylindrical holding shaft 3a protrudes, and a chuck 3b for holding the pipe (not shown) is installed at the front end of the holding shaft 3a. Therefore, the pipe can be supplied to the processing unit 4 by moving the conveying unit 3 on the rail 2 while the pipe is held by the chuck 3b, and the processing unit 4 can perform bending processing and the like on the pipe.
[0055] The automatic manufacturing machine 1 of this embodiment can control the feeding amount of the pipe by using the moving amount of the conveying unit 3, so that the position where bending processing and the like are performed on the pipe can be freely controlled. In addition, the pipe can also be bent in a desired direction by rotating the holding shaft 3a on which the chuck 3b is installed (so-called twisting action). To achieve this, inside the conveying unit 3, there are mounted an actuator 10 for opening and closing the chuck 3b, an actuator 11 for rotating the holding shaft 3a around its axis, an actuator 12 for moving the holding shaft 3a forward and backward in the axial direction, an actuator 13 for moving the conveying unit 3 forward and backward on the rail 2, and so on. In the automatic manufacturing machine 1 of this embodiment, these actuators 10 to 13 all use servo motors that operate through an AC power supply, but actuators of other drive methods (such as hydraulic cylinders, solenoids, stepper motors, etc.) can be adopted according to the performance requirements of the actuators. In addition, in the conveying unit 3, there are also mounted sensors such as encoders and limit switches for detecting the rotational position of the holding shaft 3a or the moving position of the conveying unit 3, but for the sake of avoiding the drawing from becoming complicated, in Figure 1 the illustration is omitted.
[0056] Inside the processing unit 4, there are mounted an actuator 17 for bending the pipe, an actuator 18 for moving the position where a force is applied to the pipe when bending the pipe, an actuator 19 for moving the entire processing unit 4 in the up and down direction, an actuator 20 for forming a flat end face called a flange or a ring-shaped convex portion called a protrusion on the pipe, and so on. In addition, in the processing unit 4, there are also mounted switches / sensors such as encoders or contact switches, but for the sake of avoiding the drawing from becoming complicated, the illustration thereof is omitted.
[0057] In addition, inside the processing unit 4, there are a control computer 50 for controlling the overall operation of the automatic manufacturing machine 1 and a plurality of drive circuits (not shown) for driving the various actuators 10 to 13, 17 to 20. Here, a drive circuit is an electrical component with the following functions. In order to make the actuators 10 to 13, 17 to 20 perform desired operations, it is necessary to supply drive currents with appropriate waveforms to the actuators 10 to 13, 17 to 20. However, the drive currents to be supplied to the actuators 10 to 13, 17 to 20 vary depending on the drive methods of the actuators 10 to 13, 17 to 20, and even for actuators of the same method, the current values of the drive currents also vary depending on the actuators. Therefore, dedicated electrical components called drive circuits are prepared for the actuators 10 to 13, 17 to 20. When the control computer 50 designates a drive amount to the drive circuit, the drive circuit outputs appropriate drive currents to the actuators 10 to 13, 17 to 20. As a result, the actuators 10 to 13, 17 to 20 are driven.
[0058] And, as Figure 1 shown, various mechanical components are also installed in the space below the two tracks 2. This space is for routing power cables (not shown) for supplying drive currents from the plurality of drive circuits (not shown) installed in the processing unit 4 to the various actuators 10 to 13 in the transfer unit 3, signal cables (not shown) for transmitting signals from the various switches / sensors installed in the transfer unit 3 to the processing unit 4, and so on. When these power cables and signal cables move within the space as the transfer unit 3 moves forward and backward on the tracks 2, there is a concern that they may become entangled with each other or get caught on something. Therefore, in order to avoid such a situation, actuators 14 to 16 are also installed in the space below the tracks 2. The actuators 14 to 16 are used to eliminate unnecessary slack by pulling back the cables when there is unnecessary slack in the power cables and signal cables, and to give the cables an appropriate amount of slack by feeding out the pulled-back cables when the power cables or signal cables are strongly tightened. In the automatic manufacturing machine 1 of this embodiment, cylinders are used as the actuators 14 to 16, and the operations of these cylinders are also controlled by the control computer 50 through drive circuits (not shown).
[0059] As described above, a large number of actuators 10 to 20 are installed in the automatic manufacturing machine 1. Moreover, in order to automatically process the object to be processed (here, a pipe) into a target shape, it is necessary to make these actuators 10 to 20 operate appropriately at appropriate timings. The drive circuits for driving these actuators 10 to 20 drive the operations of the respective actuators 10 to 20, and the operations of the drive circuits for driving the respective actuators 10 to 20 are controlled by the control computer 50 according to a control program read in advance.
[0060] Figure 2FIG. 0 is a block diagram conceptually showing a situation where a control computer 50 mounted on an automatic manufacturing machine 1 controls the operations of actuators 10 to 20. In addition, in Figure 2 FIG. 1, illustrations of switches / sensors required for control are also omitted. As shown in the figure, a drive circuit 10d for driving the actuator 10 is provided between the control computer 50 and the actuator 10, and the control computer 50 directly controls the operation of the drive circuit 10d. Similarly for the actuators 11 to 20, drive circuits 11d to 20d for driving the actuators 11 to 20 are provided between the control computer 50 and the actuators 11 to 20, and the control computer 50 indirectly controls the operations of the actuators 11 to 20 through the drive circuits 11d to 20d.
[0061] In addition, as described previously using Figure 1 FIG. 2, in the automatic manufacturing machine 1 of the present embodiment, servo motors are employed in the actuators 10 to 13 and 17 to 20, and air cylinders are employed in the actuators 14 to 16. Here, a servo motor refers to a motor that performs servo control, and typically is a motor that performs feedback control on the current value flowing through the motor so that the position (or angle, speed, etc.) becomes a target value. In addition, an air cylinder is an actuator that linearly moves a movable part using air pressure, and operates by opening and closing ports connected to a compressed air supply source. In addition, for opening and closing the ports, sequential control is used.
[0062] In this way, the control computer 50 is connected to the actuators 10 to 13 and 17 to 20 that perform servo control and the actuators 14 to 16 that perform sequential control. In the figure, the solid lines connecting the control computer 50 and the actuators 10 to 13 and 17 to 20 indicate that these actuators 10 to 13 and 17 to 20 perform servo control. In addition, the dashed lines connecting the control computer 50 and the actuators 14 to 16 indicate that these actuators 14 to 16 perform sequential control. Of course, an actuator controlled in a manner other than servo control and sequential control can also be connected to the control computer 50.
[0063] The control computer 50 controls the operations of the actuators 10 to 20 through the drive circuits 10d to 20d in accordance with a control program, which is pre-made using a control program generation device 100 and then read by the control computer 50. Here, it is not easy to create a control program for causing a large number of actuators 10 to 20 as shown in Figure 2 FIG. 3 to operate appropriately at appropriate timings. In particular, when actuators with different control methods such as servo control and sequential control coexist, creating the control program takes a long time. Therefore, currently, when developing a new automatic manufacturing machine 1, creating the control program consumes more than half of the development period.
[0064] B. Method for Producing Control Program:
[0065] B-1. Overview:
[0066] Figure 3 It is an explanatory diagram conceptually showing the general process for developing the new automatic manufacturing machine 1. In Figure 3 (a) of it, the development process that has been carried out since the past is shown. In addition, in Figure 3 (b) of it, the new development process proposed by the inventors of the present application is shown.
[0067] In the past development process, as shown in Figure 3 (a) of it, first, after understanding various functions required by the automatic manufacturing machine 1, the mechanical design technician creates a design drawing of the automatic manufacturing machine 1 with mechanisms for implementing these functions embedded. When creating the design drawing, the mechanical design technician discusses and determines one by one what kind of movable parts are needed, what actions these movable parts must perform, and where and how much actuators with what degree of torque, movable amount, and precision are needed to perform this action. Then, after determining the actuators to be actually mounted and also considering the mountability and maintainability of the actuators, the design drawing is finally completed.
[0068] After completing the mechanical design of the automatic manufacturing machine 1 in this way, next, work begins on creating a control program for controlling the automatic manufacturing machine 1. In the production of the control program, professional technology related to software is required, so it must be produced by technicians with this professional technology (i.e., programmers). Therefore, when the mechanical technician finishes the mechanical design, they create a flowchart showing the actions of the automatic manufacturing machine 1 that they have thought out, and then discuss and explain the actions of the automatic manufacturing machine 1 with the programmer. This is the work done by the mechanical design technician so far.
[0069] On the other hand, the programmer who discusses with the mechanical design technician, after understanding the actions of the automatic manufacturing machine 1 by thoroughly reading the flowchart created by the mechanical design technician, reading the design drawing as needed, or reading other materials, begins to create a control program for controlling the actions of various actuators mounted on the automatic manufacturing machine 1. Programmers generally use high-level programming languages that can be read by humans to create control programs, but computers cannot directly execute control programs in high-level programming languages. Therefore, after completing the control program, the programmer transforms the control program described in the high-level programming language into a machine language control program that the computer can execute, and finally completes the control program. In addition, the operation of transforming a control program in a high-level programming language into a program that the computer can execute is called compilation, and this operation is carried out by using a dedicated program called a compiler to end in a short time.
[0070] As Figure 3 illustrated in (a) of Figure 3 , in the development process that has been carried out since the past, the production of the control program usually takes about 1.5 to 2.5 times the period required for mechanical design. Also, in mechanical design and the production of the control program, it is difficult to carry out most of the processes simultaneously, so the development period of the automatic manufacturing machine 1 becomes long. In addition, it is necessary to ensure experts with different technologies such as mechanical design technicians and programmers, which also becomes a huge obstacle when developing a new automatic manufacturing machine 1.
[0071] On the other hand, in Figure 3 (b) of Figure 3 , the process of developing the automatic manufacturing machine 1 using the new method proposed by the inventor of the present application is shown. In the case of using the new method, the mechanical design itself is the same as the conventional method. That is, after the mechanical design technician understands the various functions required for the automatic manufacturing machine 1, a design drawing of the automatic manufacturing machine 1 incorporating mechanisms for realizing these functions is produced. At this time, the movable parts required to realize the functions, the action content of the movable parts, the performance of the actuators for starting the movable parts, etc. are explored, the actuators are determined, and then the mountability and maintainability of the actuators are also considered, and finally the design drawing is completed.
[0072] When the design drawing is completed, in the new development process, the mechanical design technician produces an action diagram instead of a flow chart (refer to Figure 3 (b) of Figure 3 ). This action diagram describes the actions of the respective actuators considered by the mechanical design technician during mechanical design in the form of a diagram, and will be described in detail later. This action diagram was uniquely conceived by the inventor of the present application and is a diagram that does not exist in the world, so it is named the "YOGO diagram". Therefore, the new action diagram will be described as the "YOGO diagram" below. Thus, the YOGO diagram of the present embodiment corresponds to the "action diagram" in the present invention.
[0073] As will be described later, the YOGO diagram is just a diagram that shows the actions of the respective actuators considered by the mechanical design technician during mechanical design as they are. Therefore, a mechanical design technician who has carried out mechanical design can produce it in about half the period of producing a flow chart (refer to Figure 3 (b) of Figure 3 ). In addition, the YOGO diagram can be read by a dedicated program and thus transformed into a control program that can be executed by the CPU of a computer. The reason why the YOGO diagram can be transformed into a control program will also be described later. If the actions of the automatic manufacturing machine 1 are described in the YOGO diagram in this way, a control program in machine language can be generated from the YOGO diagram, so as Figure 3As shown, the development period of the new automatic manufacturing machine 1 can be shortened to at least less than half (representatively about 1 / 3) compared with the conventional method. In addition, the YOGO diagram can be simply created by mechanical design technicians, so there is no need to ensure a programmer in advance. Therefore, almost all the situations that are a huge obstacle in developing the new automatic manufacturing machine 1 can be eliminated. Next, the YOGO diagram that enables this situation will be described.
[0074] B-2. YOGO Diagram
[0075] Figure 4 It is an explanatory diagram for explaining the outline of the YOGO diagram 200. In addition, if the size is reduced to display the whole YOGO diagram 200, the display will be damaged and unrecognizable. Therefore, Figure 4 a part (the upper left part) of the YOGO diagram 200 is shown. As Figure 4 shown, the YOGO diagram 200 is in the shape of a large table formed by the intersection of multiple horizontal lines and multiple vertical lines. Next, among the multiple intersecting lines, the horizontal lines will be called "separator lines" 201, and the vertical lines will be called "trigger lines" 202.
[0076] The rectangular area formed between adjacent separator lines 201 is an area for describing the operation of the actuator. In the leftmost column of the YOGO diagram 200, the name of the actuator is recorded between separator lines 201. And, in the rectangular area between separator lines 201, the operation of the actuator recorded in the leftmost column is described. In the Figure 4 example shown, the operation of actuator A is described in the uppermost rectangular area, the operation of actuator B is described in the second rectangular area from the top, and the operation of actuator C is described in the third rectangular area from the top. As described previously using Figure 1 and Figure 2 , 11 actuators 10 - 20 are mounted in the automatic manufacturing machine 1 of this embodiment. Therefore, rectangular areas are individually allocated to all these actuators 10 - 20. In addition, as described later, in the YOGO diagram 200, the operation of devices other than the actuator can also be described, and rectangular areas are individually allocated to these devices.
[0077] Consecutive numbers are assigned to the trigger lines 202. In the Figure 4 example shown, the consecutive numbers of the trigger lines 202 below are recorded in the upper column of the YOGO diagram 200. This trigger line 202 plays an important role when generating a machine language control program based on the YOGO diagram 200, which will be described in detail later.
[0078] In the area between the dividing lines 201 and 201, an action line 203 indicating the action of the actuator assigned to this area is recorded. At the left end of the action line 203, a starting point 204 indicating the start of the action is recorded, and at the right end of the action line 203, an end point 205 indicating the end of the action is recorded. In Figure 4 In the example shown, the action line 203 is represented by a thick solid line, the starting point 204 is represented by an open circular mark, and the end point 205 is represented by a black circular mark. Since the action line 203 must be recorded in the area between the dividing lines 201 and 201, it cannot cross the dividing line 201. In addition, the action line 203 can be recorded across the trigger line 202, but the starting point 204 and the end point 205 need to be recorded on the trigger line 202.
[0079] Also, the basic actions 206 of the actuator are displayed above the action line 203. Here, for example, if the actuator is a motor that performs a rotational motion, the basic actions of the actuator are basic actions such as a forward rotation action and a reverse rotation action. If the actuator is a linear motion actuator such as a cylinder, the basic actions of the actuator are basic actions such as a forward movement action and a backward movement action. Regarding these basic actions, the action of the actuator can be specified by specifying required parameters such as the rotational speed or moving speed and the action time. In addition, in this embodiment, the forward rotation action and the reverse rotation action are set as two basic actions with different degrees of freedom. However, although the signs of the parameters of these actions are different, they can also be treated as one basic action with the same degree of freedom. In the YOGO diagram 200, the actions of the automatic manufacturing machine 1 are described using the dividing line 201, the trigger line 202, the action line 203, the starting point 204, the end point 205, and the basic action 206 as described above.
[0080] Figure 5 It is an explanatory diagram showing a method of describing the actions of the automatic manufacturing machine 1 using the YOGO diagram 200. In Figure 5 In the example shown, the situation where four actuators a to d act in coordination is described. First, when focusing on the trigger line 202 of No. 1, on the trigger line 202 of No. 1, the starting point 204 is recorded in the area describing the action of the actuator a, and the action line 203 is pulled out to the right from this starting point 204. The trigger line 202 of No. 1 indicates the timing of turning on the power supply to the automatic manufacturing machine 1, so this marking indicates that the actuator a starts to act first when the power supply to the automatic manufacturing machine 1 is turned on.
[0081] In addition, above the action line 203, the basic action 206 of "Ω-AA-1" is recorded in a manner attached with two parameters of "A-10" and "B-5". As will be described later, the basic action 206 is corresponded to a program component executable by a computer for causing the actuator a to perform the basic action. Therefore, by recording the basic action 206 above the action line 203, the program component executable by the computer can be determined, and by using this program component to control the action of the actuator a, the actuator a can be caused to perform the basic action 206.
[0082] In addition, in the case where the actuator a is a simple-action actuator such as a cylinder that moves forward or backward until the stroke limit, the basic action implemented by the program component is to perform the forward or backward action until a certain time has elapsed, or to perform the forward or backward action until the contact switch is turned on (ON). If it is such a simple action, parameters are not required, so the basic action 206 without parameters is recorded above the action line 203. In contrast, in the case of an actuator such as a linear motor that can specify the moving speed and moving distance (or stop position) when moving forward or backward, these conditions need to be specified for the program component. In addition, in the case of an actuator such as a general motor that can specify the rotational speed and rotational angle (or stop angle position) when rotating the rotating shaft forward or backward, these conditions also need to be specified for the program component. Therefore, for such an actuator, the basic action 206 with parameters for specifying these conditions is recorded above the action line 203. In addition, the content specified by the parameters is not limited to values representing speed and position, etc., and can also specify, for example, the degree of acceleration and deceleration of the motor, the drive mode indicating the manner of acceleration and deceleration, etc.
[0083] In Figure 5 the action line 203 pulled out from the starting point 204 on the first trigger line 202 ends at the ending point 205 on the second trigger line 202 for the actuator a. This indication means that the timing at which the action of the actuator a starting after the power is turned on ends is set as the second trigger line 202. The elapsed time from the timing indicated by the first trigger line 202 to the timing indicated by the second trigger line 202 varies depending on the program component specified by the basic action 206 on the action line 203.
[0084] In addition, on the trigger line 202 of No. 2, a starting point 204 is marked at the position corresponding to the actuator b, and an action line 203 is drawn from this starting point 204. This action line 203 ends at an ending point 205 marked on the trigger line 202 of No. 3. Similarly, at the position corresponding to the actuator c, an action line 203 with a starting point 204 on the trigger line 202 of No. 2 and an ending point 205 on the trigger line 202 of No. 3 is also marked. These markings indicate that the actions of the actuator b and the actuator c start after the basic action 206 of "Ω-AA-1" of the actuator a. In addition, at this time, the action of the actuator b is the basic action 206 of "Ω-AA-2" marked above the corresponding action line 203, and the action of the actuator c is the basic action 206 of "Ω-BB-1" marked above the corresponding action line 203.
[0085] Moreover, on the trigger line 202 of No. 3, a starting point 204 is marked at the position corresponding to the actuator d, and an action line 203 that ends at an ending point 205 on the trigger line 202 of No. 4 is drawn from this starting point 204. And the basic action 206 of "Ω-AA-1" is marked above this action line 203. This marking indicates that the action of the actuator d starts after the actions of the actuator b and the actuator c end. Here, the action of the actuator b is the basic action 206 of "Ω-AA-2", and the action of the actuator c is the basic action 206 of "Ω-BB-1". Therefore, the actions of the actuator b and the actuator c do not end at the same time. Thus, when the action of the actuator b ends and the action of the actuator c ends, the actuator d starts the basic action 206 (here it is Ω-AA-1).
[0086] Here, the true function of the trigger line 202 is explained. Regarding the trigger line 202, it is easy to understand intuitively as "indicating the timing of the action". However, the true function of the trigger line 202 is not to indicate the timing of the action. For example, the action lines 203 of the above-mentioned actuator b and actuator c end at the ending point 205 on the trigger line 202 of No. 3, but since the contents of the actions of the actuator b and the actuator c are different, they do not actually end at the same timing. Therefore, the true function of the trigger line 202 is to associate the end of the actions of one or more actuators with the start of the actions of one or more other actuators through logical operations. In the above example, the trigger line 202 of No. 3 associates the truth or falsehood of the matter of "the end of the action of the actuator b", the truth or falsehood of the matter of "the end of the action of the actuator c", and the truth or falsehood of the matter of "the start of the action of the actuator d" through the following logical operation:
[0087] "The end of the action of the actuator b" AND "the end of the action of the actuator c" = "the start of the action of the actuator d".
[0088] In addition, from the above description, it can be seen that the essence of the YOGO diagram 200 lies in correlating the basic actions of multiple actuators through logical operations, thereby describing the overall actions of the automatic manufacturing machine 1. Therefore, as long as it is a diagram that realizes this function, even if it is a diagram made without using the action line 203, the starting point 204, the ending point 205, and the optional dividing line 201 and trigger line 202, etc., it can be said that this diagram is just one of the simple deformations of the YOGO diagram 200.
[0089] Figure 6 This is an explanatory diagram illustrating a case where an action diagram (a deformation of the YOGO diagram) having the same function as the YOGO diagram is used to represent the actions of the automatic manufacturing machine 1. In Figure 6 Among the exemplified deformations of the YOGO diagram, a rectangular action box 213 is used instead of the above-mentioned action line 203. The action box 213 indicates that the actuator performs an action, and the content of the action performed by the actuator is specified by writing the basic action 206 in the action box 213. Moreover, the actions can also be correlated by connecting the end of the action represented by the action box 213 to the start of the action of another action box 213 with a line representing a logical operation.
[0090] For example, in Figure 6 of (a), a case is shown where a part of the trigger line 202 of No. 3 shown in Figure 5 is described in the deformed YOGO diagram. In Figure 6 of (a), at the position of the trigger line 202 of No. 2, an action box 213 in which the basic action 206 of "Ω-AA-2" is written and an action box 213 in which the basic action 206 of "Ω-BB-1" is written are shown, and at the position of the trigger line 202 of No. 3, an action box 213 in which the basic action 206 of "Ω-AA-1" is written is shown. Moreover, the ends of the two action boxes 213 written in the trigger line 202 of No. 2 are connected to the front end of the action box 213 written in the trigger line 202 of No. 3 with a solid AND line 214. This AND line 214 indicates that these action boxes 213 are correlated through an AND logical operation. Therefore, in this case, the following action is described: when the basic action 206 of "Ω-AA-2" ends and the basic action 206 of "Ω-BB-1" ends, the basic action 206 of "Ω-AA-1" starts.
[0091] Of course, multiple action boxes 213 can also be correlated through an OR operation instead of an AND operation. For example, as in Figure 6As shown in (b) thereof, an OR line 215 shown by a dashed line is used to connect an action frame 213 of a basic action 206 representing "Ω-AA-2" and an action frame 213 of a basic action 206 representing "Ω-BB-1" to an action frame 213 of a basic action 206 representing "Ω-AA-1". In this way, the following action can be described: when either the basic action 206 of "Ω-AA-2" or the basic action 206 of "Ω-BB-1" ends, the basic action 206 of "Ω-AA-1" starts.
[0092] In addition, as described above, the essential function of the trigger line 202 of the YOGO diagram 200 is to associate the basic actions of multiple actuators through logical operations. Therefore, even if the actions of the actuators are not completely finished, it is possible to consider the actions as finished at the stage where specified conditions are met, thereby starting the actions of the next actuator.
[0093] Figure 7 It is an explanatory diagram of the YOGO diagram 200 that illustrates starting the actions of the next actuator by considering the actions as finished before the actions of the actuator are completed. Figure 7 The YOGO diagram 200 of Figure 5 The difference between the shown YOGO diagram 200 is that parameters such as "PRST-1" and "PRST-2" are set in the basic actions 206 of the actuator b and the actuator c respectively. Here, for example, it is assumed that the basic action 206 (Ω-AA-2) set for the actuator b is a rotational action and a parameter of the rotational angle being "A-100" is set. In addition, it is assumed that the basic action 206 (Ω-BB-1) set for the actuator c is a forward / backward movement action and a parameter of the movement amount being "S-150" is set. If parameters such as "PRST-1" or "PRST-2" are set in advance for such basic actions 206, it is possible to consider the actions of the actuator b or the actuator c as finished before the rotational angle of the actuator b reaches the angle set by "A-100" or before the movement amount of the actuator c reaches the movement amount set by "S-150".
[0094] For example, when the angle set with the parameter "A-100" is 100 degrees and the angle set with the parameter "PRST-1" is 10 degrees, it is possible to consider that the operation of the actuator b has ended at the stage where the rotation angle of the actuator b has reached 90 degrees (= 100 - 10). In addition, when the movement amount set with the parameter "S-150" is 150 mm and the movement amount set with the parameter "PRST-2" is 5 mm, it is possible to consider that the operation of the actuator c has ended at the stage where the movement amount of the actuator c has reached 145 mm (150 - 5). As a result, if the rotation angle of the actuator b reaches 90 degrees and the movement amount of the actuator c reaches 145 mm, the operation of the actuator d can be started even if these actuators are actually in operation.
[0095] The above is the basic method of describing the operation of the automatic manufacturing machine 1 using the YOGO diagram 200. However, for the purpose of making the description of the operation easier, various description methods are prepared in the YOGO diagram 200. For example, Figure 5 The trigger line 202 of No. 4 and the trigger line 202 of No. 5 shown in are represented by a dashed line, and they indicate a conditional branch. In addition, rectangular shapes 207 with a dashed line are respectively shown below the trigger line 202 of No. 4 and below the trigger line 202 of No. 5, and they indicate branch conditions. In Figure 5 In the example shown, "A > B" is entered in the rectangular shape 207 below the trigger line 202 of No. 4, and "ELSE (otherwise)" is entered in the rectangular shape 207 below the trigger line 202 of No. 5. They indicate that if the condition "A > B" is satisfied, the operation of the action line 203 pulled out from the starting point 204 located on the trigger line 202 of No. 4 is started, and in the case where the condition "A > B" is not satisfied (the case of ELSE), the operation of the action line 203 pulled out from the starting point 204 located on the trigger line 202 of No. 5 is started. Therefore, at the time point when the operation of the basic operation 206 of "Ω-AA-1" of the actuator d ends, if the condition "A > B" is satisfied, the actuator b starts the basic operation 206 of "Ω-AA-3", and if the condition "A > B" is not satisfied, the actuator c starts the basic operation 206 of "Ω-BB-1".
[0096] In addition, the end point 205 indicating the end of the operation of the actuator b starting thus and the end point 205 indicating the end of the operation of the actuator c starting thus are represented by black square marks. This represents associating the end of these operations with the start of other operations through an OR operation. In addition, the general end point 205 represented by a black circular mark connects the end of the operation with the start of other operations through an AND operation. Therefore, especially when it is necessary to distinguish the end point 205 of the black square mark from the end point 205 of the general black circular mark, the end point 205 of the black square mark is expressed as "OR end point 205a". In Figure 5 In the example shown in, the basic operation 206 of "Ω-AA-3" of the actuator b and the basic operation 206 of "Ω-BB-1" of the actuator c both end on the trigger line 202 of No. 6. When the operation of either one ends, the actuator d starts the basic operation 206 of "Ω-AA-1".
[0097] And, the end point 205 indicating the end of the operation of the actuator d starting thus is entered on the trigger line 202 of No. 7 represented by a dotted line. The trigger line 202 of the dotted line indicates repeated execution. In Figure 5 In the example shown in, the operation from the trigger line 202 of No. 7 represented by a dotted line to the trigger line 202 of No. 9 also represented by a dotted line is repeatedly executed. In addition, below the trigger line 202 of No. 7 that appears first among these two trigger lines 202, the repetition condition is entered in the dotted rectangle 208. In Figure 5 In the example shown in, the operation from the trigger line 202 of No. 7 to the trigger line 202 of No. 9 (therefore the operations of the actuator a and the actuator b) is repeatedly executed until the value of the variable VC becomes 0. Moreover, when the repetition condition (here the variable VC = 0) entered below the trigger line 202 of No. 7 is satisfied, the start point 204 is entered for the operation of the actuator c on the trigger line 202 of No. 9.
[0098] In addition, in the automatic manufacturing machine 1, sometimes a sound (including an effect sound) is output before the operation of the actuator to attract the attention of the surrounding operators, or the lamp is lit or flashed for a certain period of time. The operation of outputting a sound from the speaker and the operation of lighting or flashing the lamp are not operations performed by the actuator, but can be processed in the same way as the basic operation according to their operations. In the YOGO diagram 200, it is also possible to describe operations that are not performed by the actuator but can be processed in the same way as the basic operation.
[0099] Figure 8 An explanatory diagram illustrating a method of describing an operation that can be processed in the same way as the basic operation on the YOGO diagram 200. In Figure 8The action of outputting sound from the speaker (sound output action) is described in (a). In YOGO diagram 200, the sound output action of the speaker is also described by writing the basic action 206 (here, Ω-SP-1) indicating the driving of the speaker above the action line 203 having a starting point 204 at the left end and an ending point 205 at the right end. The sound data output from the speaker can be specified using parameters.
[0100] In Figure 8 the lighting action of making a lamp emit light is described in (b). The lighting action of the lamp is also described by writing the basic action 206 (here, Ω-LL-1) indicating the lighting action of the lamp above the action line 203 having a starting point 204 at the left end and an ending point 205 at the right end. The manner of making the lamp emit light (for example, the manner of lighting or flashing) can be specified using parameters.
[0101] Moreover, for example, a counting action of counting until the number of times a switch (or button) is pressed reaches a specified number, a timing action of timing until a specified time elapses after the switch (or button) is pressed, and a heating action of heating an object or cooking a material using a heater can also be described as actions in accordance with basic actions in YOGO diagram 200. In Figure 8 the (c) shows a description example of the counting action of counting using a counter until a specified number is reached. In Figure 8 the (d) shows a description example of the timing action of timing the elapse of a specified time using a timer. In Figure 8 the (e) shows a description example of the heating action of heating using a heater.
[0102] In addition, in the automatic manufacturing machine 1, the switch being turned on (ON) or the switch being turned off (OFF) sometimes becomes a condition for starting an action. Also, the switch becoming turned on or the switch becoming turned off sometimes becomes a condition for ending an action. Considering this situation, in YOGO diagram 200, the state of the switch can be described as a start condition or an end condition of an action.
[0103] Figure 9 is an explanatory diagram exemplifying the manner of describing the state of the switch as a start condition of an action in YOGO diagram 200. In Figure 9In the example shown in (a), on the trigger line 202 of No. 11, there are recorded an end point 205, a start point 204, and a hollow triangle mark. This hollow triangle mark indicates the action of confirming that the switch is turned on (hereinafter referred to as the turn-on confirmation action 209), and beside the turn-on confirmation action 209, there is recorded switch determination information 210 for determining the switch to be confirmed. In addition, the turn-on confirmation action 209, the start point 204, and the end point 205 are respectively recorded in the areas between different dividing lines 201. Like this Figure 9 The record in (a) indicates that if the basic action 206 of "Ω-AA-2" ends and the switch SW-1 becomes turned on (or has already been turned on), then the basic action 206 of "Ω-AA-3" starts.
[0104] In addition, in Figure 9 In the example shown in (b), the turn-on confirmation action 209 indicated by the hollow triangle mark is changed to a black triangle mark. This black triangle mark indicates the action of confirming that the switch is turned off (hereinafter the turn-off confirmation action 211). Beside the turn-off confirmation action 211, there is also recorded the switch determination information 210 for determining the switch to be confirmed. Therefore, Figure 9 The record in (b) indicates that if the basic action 206 of "Ω-AA-2" ends and the switch SW-1 becomes turned off (or has already been turned off), then the basic action 206 of "Ω-AA-3" starts.
[0105] Figure 10 is an explanatory diagram exemplifying the method of taking the state of the switch as the end condition of the action and describing it in the YOGO diagram 200. When comparing Figure 10 in (a) with the above-mentioned Figure 9 in (a), in Figure 10 in (a), the turn-on confirmation action 209 of the hollow triangle mark and the end point 205 are recorded in the area between the same dividing line 201. This indicates that the turn-on confirmation action 209 is the end condition of the action. Therefore, Figure 10 The record shown in (a) indicates that if the switch SW-1 becomes turned on, then the basic action 206 of "Ω-AA-2" ends and the basic action 206 of "Ω-AA-3" starts.
[0106] In addition, in Figure 10 In the example shown in (b), Figure 10 the turn-on confirmation action 209 in (a) is changed to the turn-off confirmation action 211. Therefore, Figure 10 The record shown in (b) indicates that if the switch SW-1 becomes turned off, then the basic action 206 of "Ω-AA-2" ends and the basic action 206 of "Ω-AA-3" starts.
[0107] Reasons for being able to generate a control program in machine language based on the YOGO diagram:
[0108] As used previously Figure 3 As described in (b) above, if the operations of the automatic manufacturing machine 1 are recorded in the YOGO diagram 200, a control program in machine language that can be executed by the control computer 50 can be automatically generated by providing the YOGO diagram 200 to a dedicated compiler. The reasons why this can be achieved are as follows.
[0109] First, the YOGO diagram 200 describes the operations of the automatic manufacturing machine 1 by associating the basic operations of the actuators mounted on the automatic manufacturing machine 1 with the operations according to the basic operations (refer to Figures 8 to 10 ). In addition, the judgment of conditional branches based on branch conditions and the judgment of repetitive operations based on repetition conditions can also be considered based on logical operations. Here, for basic operations or operations according to basic operations, program components for implementing such operations can be prepared in advance. In addition, such program components can be described using a high-level programming language or a machine language.
[0110] Moreover, for programs that perform logical operations, programs that perform judgments based on branch conditions, and programs that perform judgments based on repetition conditions, since they are simple programs, they can be automatically generated. Therefore, when transforming the YOGO diagram 200 into a control program, first, by analyzing the YOGO diagram 200, the basic operations (and operations according to basic operations) recorded in the YOGO diagram 200 and the logical operations (or conditional judgments) that associate them are extracted in advance. Then, the basic operations (and operations according to basic operations) are replaced with the previously prepared program components, and these program components are combined through programs corresponding to the extracted logical operations (or conditional judgments). In this way, a control program described using a high-level programming language or a machine language can be automatically generated according to the YOGO diagram 200. In this embodiment, the following control program generation device 100 is used to generate the control program.
[0111] C. Control generation device 100 of this embodiment:
[0112] Figure 11 It is an explanatory diagram showing the functions of the control program generation device 100 of this embodiment. The control program generation device 100 of this embodiment can be implemented using a so-called personal computer.
[0113] As Figure 11As shown, the control program generation device 100 of this embodiment includes a YOGO diagram creation unit 101, a basic motion storage unit 102, a YOGO diagram reading unit 103, a YOGO diagram analysis unit 104, a control program generation unit 105, a control program output unit 106, and so on. In addition, these "units" are abstract concepts obtained by classifying the multiple functions that the control program generation device 100 should have in order to create a YOGO diagram 200 using the control program generation device 100 and automatically generate a control program based on the YOGO diagram 200. Therefore, it does not mean that the control program generation device 100 is formed by combining components corresponding to these "units". In fact, these "units" can also be implemented in the form of a program executed by a CPU, can also be implemented in the form of an electronic circuit obtained by combining an IC chip, an LSI, etc., and further, can be implemented in various forms such as a form in which these exist in combination.
[0114] The YOGO diagram creation unit 101 is connected to the monitor screen 100a, the keyboard 100b, the mouse pointer 100c, etc. A mechanical technician who has sufficient knowledge of the automatic manufacturing machine 1, etc., creates a YOGO diagram 200 as Figure 4 illustrated by operating the keyboard 100b and the mouse pointer 100c while watching the monitor screen 100a. As described above, the YOGO diagram 200 describes the actions of the automatic manufacturing machine 1 by combining the actions of multiple actuators mounted on the automatic manufacturing machine 1. During mechanical design, the mechanical design technician fully explored how to combine the actions of multiple actuators in order to achieve the actions of the automatic manufacturing machine 1. Therefore, it is possible to simply create the YOGO diagram 200 that describes the actions of the automatic manufacturing machine 1. Of course, if a mechanical technician has sufficient knowledge of the structure and actions of the automatic manufacturing machine 1, even if they are not the technician who designed the automatic manufacturing machine 1, they can also simply create the YOGO diagram 200.
[0115] In addition, as described previously using Figures 4 to 8 it is necessary to record the basic motion 206 (or the motion in accordance with the basic motion) in the YOGO diagram 200. Therefore, in the basic motion storage unit 102, the names of the actuators (or speakers, lights, switches, etc.) are stored in association with the basic motion 206 that can be executed by the actuators, etc.
[0116] Figure 12This is an explanatory diagram showing the correspondence between the names of actuators and the like and the basic actions 206. Such a correspondence is stored in the basic action storage unit 102. As shown in the figure, the basic actions 206 (including actions in accordance with the basic actions such as timing actions) that can be executed by the actuators and the like are stored in a state corresponding to the actuators and the like. For actuators and the like that can execute multiple basic actions and the like, each basic action 206 that can be executed is stored. In addition, for the basic actions 206 with parameters that can be specified, the parameters that can be specified are also stored. For example, in Figure 12 for the basic action 206 of "Ω-AA-1" displayed at the top, the content indicating that the parameter "A" can be specified is stored, and for the basic action 206 of "Ω-AA-3" which is the third from the top, the content indicating that the two parameters "A" and "B" can be specified is stored. In addition, for the basic action 206 of "Ω-AA-4" which is the fourth from the top, the content indicating that there are no parameters that can be specified is stored.
[0117] In addition, as Figure 12 shown, the program component name is also stored for each basic action 206. The program component name is the name of the program for implementing the basic action 206 (or the action in accordance with the basic action). Since the basic action and the action in accordance with the basic action are simple actions, the programs for implementing these actions are of small size and can be embedded as components in other larger programs. Therefore, in this specification, the programs for implementing these actions are expressed as "program components". The program component can be a program described in a high-level programming language or a program described in machine language.
[0118] As Figure 11 shown, the YOGO diagram creation unit 101 is connected to the basic action storage unit 102. Therefore, mechanical design engineers (or mechanical engineers) can refer to the [[ID=8 data stored in the basic action storage unit 102 when creating the YOGO diagram 200. Moreover, if a mechanical engineer has sufficient knowledge of the automatic manufacturing machine 1, they fully understand how to make the actuators act, so they can determine the basic action 206 from the names of the actuators and the like. And they can also easily determine the content specified by the parameters. Therefore, the YOGO diagram 200 can be simply created.
[0119] The YOGO graph reading unit 103 reads the YOGO graph 200 produced by the YOGO graph production unit 101 and outputs it to the YOGO graph analysis unit 104. In addition, in this embodiment, it is assumed that the YOGO graph 200 is also produced by the control program generation device 100. Correspondingly, the YOGO graph reading unit 103 reads the YOGO graph 200 from the YOGO graph production unit 101. In contrast, the YOGO graph 200 may be produced in advance by another computer and read by the YOGO graph reading unit 103.
[0120] The YOGO graph analysis unit 104 extracts the basic actions (and actions in accordance with the basic actions) described in the YOGO graph 200 and the logical operations (or conditional judgments) that associate them by analyzing the YOGO graph 200 received from the YOGO graph reading unit 103. Then, the result is output to the control program generation unit 105.
[0121] The control program generation unit 105 replaces the basic actions (and actions in accordance with the basic actions) described in the YOGO graph 200 with program components by referring to the correspondence between the basic actions 206 stored in the basic action storage unit 102 and the program components (refer to ). And, based on the logical operations (or conditional judgments) extracted from the YOGO graph 200, these program components are combined by executing programs such as logical operations. In this way, a control program can be generated according to the YOGO graph 200, so the generated control program is output to the control program output unit 106. In addition, the compiler 110 for generating the control program according to the YOGO graph 200 is implemented by the above-mentioned basic action storage unit 102, YOGO graph reading unit 103, YOGO graph analysis unit 104, and control program generation unit 105.
[0122] The control program output unit 106 writes the control program received from the control program generation unit 105 into the storage area of the control computer 50 of the automatic manufacturing machine 1 (refer to and ). As a result, the control computer 50 can control the operation of the automatic manufacturing machine 1 by controlling various actuators mounted on the automatic manufacturing machine 1 according to the control program.
[0123] In addition, the YOGO diagram reading unit 103 of the present embodiment corresponds to the "action diagram reading unit" of the present invention. Further, the YOGO diagram reading unit 103, the YOGO diagram analysis unit 104, and the control program generation unit 105 included in the control program generation device 100 of the present embodiment can also be considered as representing a method for generating a control program. Therefore, the YOGO diagram reading unit 103 of the present embodiment corresponds to the "action diagram reading process" of the present invention understood as a control program generation method, the YOGO diagram analysis unit 104 of the present embodiment corresponds to the "action diagram analysis process" of the present invention, and the control program generation unit 105 of the present embodiment corresponds to the "control program generation process" of the present invention. Further, the functions implemented by the YOGO diagram reading unit 103, the YOGO diagram analysis unit 104, and the control program generation unit 105 included in the control program generation device 100 of the present embodiment can also be understood as the functions of a program that uses a computer to implement a method for generating a control program for the automatic manufacturing machine 1. Therefore, the YOGO diagram reading unit 103 of the present embodiment corresponds to the "action diagram reading function" of the present invention understood as a program, the YOGO diagram analysis unit 104 of the present embodiment corresponds to the "action diagram analysis function" of the present invention, and the control program generation unit 105 of the present embodiment corresponds to the "control program generation function" of the present invention.
[0124] As described in detail above, if the actions of the automatic manufacturing machine 1 are described in advance by the YOGO diagram 200, the control program for controlling the automatic manufacturing machine 1 can be automatically generated by the control program generation device 100 processing the YOGO diagram 200. Therefore, it is not necessary for a programmer to create a control program, so that the time required for developing a new automatic manufacturing machine 1 can be significantly shortened (at least reduced to less than half), and it is not necessary to secure a programmer in advance. As a result, it becomes easier to introduce a new automatic manufacturing machine to the manufacturing site, and the requirements for labor saving in the industry can be fully met.
[0125] The control program generation device 100 of the present embodiment has been described above, but the present invention is not limited to the above-described embodiment and can be implemented in various ways without departing from the gist thereof.
[0126] For example, in the above-described embodiment, it was assumed that the YOGO diagram 200 was described by basic operations (or operations in accordance with basic operations). However, there are also cases where a component that performs complex operations with multiple degrees of freedom is purchased and the component is made to perform a specified operation, and then the component is used as an actuator of the automatic manufacturing machine 1. In such a case, the specified operation performed by the component may also be treated as an operation in accordance with a basic operation and entered as the basic operation 206 in the YOGO diagram 200. Even in such a case, if a program component corresponding to the basic operation 206 is prepared in advance, the control program generation device 100 can automatically generate a control program.
[0127] Description of Reference Numerals
[0128] 1: Automatic manufacturing machine; 2: Rail; 3: Conveying unit; 3a: Gripping shaft; 3b: Chuck; 4: Processing unit; 10 - 20: Actuator; 10d - 20d: Drive circuit; 50: Control computer; 100: Control program generation device; 101: YOGO diagram creation unit; 102: Basic operation storage unit; 103: YOGO diagram reading unit; 104: YOGO diagram analysis unit; 105: Control program generation unit; 106: Control program output unit; 110: Compiler; 200: YOGO diagram; 201: Separation line; 202: Trigger line; 203: Action line; 204: Starting point; 205: End point; 206: Basic operation; 209: Turn-on confirmation operation; 210: Switch determination information; 211: Turn-off confirmation operation.
Claims
1. A control program generation device (100) generates a control program for an automatic manufacturing machine (1) having a plurality of actuators. The control program generation device is characterized by comprising: A basic motion storage unit (102) stores, in correspondence, a basic motion representing the motion of each degree of freedom of the actuator and capable of setting parameters and a program component for implementing the basic motion; A motion diagram reading unit (103) reads a motion diagram (200), in which the motion of the automatic manufacturing machine is decomposed into a plurality of the basic motions, the parameters are set for the basic motions, and the end of the basic motions is associated with the start of other basic motions through logical operations, thereby describing the motion of the automatic manufacturing machine; A motion diagram analysis unit (104) extracts, by analyzing the motion diagram, a plurality of the basic motions included in the motion diagram and the logical operations associating the plurality of basic motions; and A control program generation unit (105) generates the control program for causing the automatic manufacturing machine to operate by combining the program components stored in the basic motion storage unit according to the motion diagram.
2. The control program generation device according to claim 1, wherein: The basic motion storage unit stores, in correspondence, at least one of the timing operation of a timer and the counting operation of a counter and a program component for implementing the timing operation or the counting operation, in addition to the basic motion; The motion diagram reading unit is capable of reading the motion diagram including at least one of the timing operation and the counting operation.
3. The control program generation device according to claim 1 or 2, wherein: The basic motion storage unit stores, in correspondence, at least one of the sound output operation of a speaker and the light emission operation of a lamp and a program component for implementing the sound output operation or the light emission operation, in addition to the basic motion; The motion diagram reading unit is capable of reading the motion diagram including at least one of the sound output operation and the light emission operation.
4. The control program generation device according to claim 1 or 2, wherein: The basic motion storage unit stores, in correspondence, the heating operation of a heater and a program component for implementing the heating operation, in addition to the basic motion; The motion diagram reading unit is capable of reading the motion diagram including the heating operation.
5. The control program generation device according to claim 1 or 2, wherein: The basic motion storage unit stores, in correspondence, a program component for implementing the basic motion through sequential control for the basic motion of the actuator controlled by sequential control; The basic motion storage unit stores, in correspondence, a program component for implementing the basic motion through servo control for the basic motion of the actuator controlled by servo control.
6. A control program generation method for generating a control program for an automatic manufacturing machine (1) having a plurality of actuators by a computer, the control program generation method being characterized by comprising: An operation diagram reading step (103) of reading an operation diagram (200), in which the operation of the automatic manufacturing machine is described using basic operations representing the operations of each degree of freedom of the actuator and having parameters set therein, and logical operations associating the end of one basic operation with the start of another basic operation; An operation diagram analysis step (104) of extracting, by analyzing the operation diagram, a plurality of the basic operations included in the operation diagram and the logical operations associating the plurality of basic operations; And A control program generation step (105) of converting the basic operations described in the operation diagram into the program components by referring to data (102) storing the correspondence between the basic operations and the program components for implementing the basic operations, and generating the control program for operating the automatic manufacturing machine by combining the program components according to the operation diagram.
7. A computer program product comprising a program for implementing, by a computer, a method for generating a control program for an automatic manufacturing machine (1) having a plurality of actuators, the program causing the computer to implement the following functions: An operation diagram reading function (103) of reading an operation diagram (200), in which the operation of the automatic manufacturing machine is described using basic operations representing the operations of each degree of freedom of the actuator and having parameters set therein, and logical operations associating the end of one basic operation with the start of another basic operation; An operation diagram analysis function (104) of extracting, by analyzing the operation diagram, a plurality of the basic operations included in the operation diagram and the logical operations associating the plurality of basic operations; and A control program generation function (105) of converting the basic operations described in the operation diagram into the program components by referring to data (102) storing the correspondence between the basic operations and the program components for implementing the basic operations, and generating the control program for operating the automatic manufacturing machine by combining the program components according to the operation diagram.
Citation Information
Patent Citations
Robot system and processing system, as well as method of manufacturing processed product
JP2011245602A
Machine tool
JP2018192570A
Control program generation device, control program generation method, and program
CN115023671A
Operation control device, operation control method, and program
CN115023672A
Sequence control method
EP1077396A1