Control system, control method and control device

The control system uses boundary lines and determination functions to accurately determine position reach in laser processing, addressing alignment issues in curved trajectories and ensuring correct laser activation.

JP7600743B2Active Publication Date: 2024-12-17OMRON CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021025589
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-02-19
Publication Date
2024-12-17
Estimated Expiration
2041-02-19

AI Technical Summary

Technical Problem

Existing laser processing systems struggle to accurately determine whether a specific position has been reached, particularly when the vehicle's coordinates do not align with the specified coordinates due to curved or interpolated trajectories, leading to incorrect laser activation.

Method used

A control system that sets boundary lines based on predefined areas and designated positions, using a determination function to check if the moving object crosses these lines, allowing for precise determination of reaching the specified position.

Benefits of technology

Enables accurate determination of reaching a designated position by using boundary lines, ensuring correct laser activation and preventing malfunctions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007600743000001
    Figure 0007600743000001
  • Figure 0007600743000002
    Figure 0007600743000002
  • Figure 0007600743000003
    Figure 0007600743000003
Patent Text Reader

Abstract

To provide a control system capable of determining if an object has reached a specific position or not through a simple method.SOLUTION: A control system is provided, comprising a movement control unit configured to control movement of a target object according to a preset movement trajectory, a storage unit configured to hold a borderline on a predefine area in association with a specified position, and a movement determination unit configured to determine whether or not the target object has reached the specified position. The movement determination unit determines whether or not the target object has crossed the border line and, if affirmative, determines that the target object has reached the specified position.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a control system, a control method, and a control device. [Background technology]

[0002] Conventionally, laser processing has been performed using a processing program using a control code. For example, Japanese Patent Laid-Open Publication No. 2-63692 (Patent Document 1) discloses a technique in which processing conditions are defined as parameters to control the output of a laser oscillator, the moving speed, etc. Specifically, this publication discloses a case in which the processing conditions are changed based on the distance from the start of movement. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2-63692 Summary of the Invention [Problem to be solved by the invention]

[0004] On the other hand, there has been a conventional method for determining whether a condition is satisfied by determining whether a specific position has been reached. However, when a coordinate is specified, if the coordinate is not passed, it is not possible to determine whether the condition is satisfied. Moreover, the above-mentioned prior art documents do not take such a problem into consideration at all.

[0005] One object of the present disclosure is to provide a control system, a control method, and a control device that are capable of determining, in a simple manner, whether or not a specific position has been reached. [Means for solving the problem]

[0006] A control system according to an example of the present disclosure includes a movement control unit that controls the movement of a moving object according to a preset movement trajectory, a storage unit that holds a boundary line on a predefined area in association with a designated position, and a movement determination unit that determines whether the moving object has reached the designated position. The movement determination unit determines whether the moving object has crossed the boundary line, and if it is determined that the moving object has crossed the boundary line, it determines that the moving object has reached the designated position. With this configuration, if it is determined that the moving object has crossed the boundary line, it can be determined that the designated position has been reached, and it is possible to determine whether a specific position has been reached in a simple manner.

[0007] The control system further includes a setting receiving unit that generates the boundary line in accordance with a user setting. With this configuration, the boundary line can be set by the user.

[0008] The boundary line is defined based on a point on the region and an angle of a line passing through the point. With this configuration, the boundary line can be easily set because it is defined based on the point and the angle of a line passing through the point.

[0009] The setting reception unit has a setting screen for generating a boundary line for the movement trajectory. The setting screen is capable of receiving input of a designated position, and displays a virtual boundary line dividing the movement trajectory that passes through the designated position in an operable manner. The setting reception unit receives an operation input for the virtual boundary line on the setting screen to generate the boundary line. With this configuration, the boundary line can be easily set using the setting screen.

[0010] The setting reception unit generates, as a boundary line, a straight line that is perpendicular to the movement trajectory and passes through the designated position in accordance with the input of the designated position. With this configuration, the boundary line is generated by the input of the designated position, so that it is possible to easily set the boundary line.

[0011] The movement determination unit calculates a determination function for the position of the moving object according to the boundary line. The movement determination unit determines whether the boundary line has been crossed based on whether the sign of the value of the determination function according to the position of the moving object is inverted. With this configuration, it is possible to determine whether the boundary line has been crossed in a simple manner.

[0012] The control system further includes an execution unit that executes a predetermined operation based on a result of the determination by the movement determination unit. With this configuration, it is possible to execute the predetermined operation using the result of the determination.

[0013] The predetermined operation is one of an operation of changing from a first state to a second state, an operation of changing from the second state to the first state, and an operation of maintaining the first and second states. With this configuration, the predetermined operation can be defined as a change in a plurality of states, which improves the degree of freedom in design.

[0014] A control method according to another example of the present disclosure includes a step of controlling the movement of a moving object according to a preset movement trajectory, and a step of judging whether the moving object has reached a designated position. The judging step judges whether the moving object has crossed a boundary line on a predefined area associated with the designated position, and judges that the moving object has reached the designated position when it is judged that the moving object has crossed the boundary line. According to this configuration, when it is judged that the boundary line has been crossed, it is possible to judge that the designated position has been reached, and it is possible to judge whether a specific position has been reached in a simple manner.

[0015] A control device according to yet another example of the present disclosure includes a movement control unit that controls the movement of a moving object according to a preset movement trajectory, a storage unit that holds a boundary line on a predefined area in association with a designated position, and a movement determination unit that determines whether the moving object has reached the designated position. The movement determination unit determines whether the moving object has crossed the boundary line, and if it is determined that the moving object has crossed the boundary line, it determines that the moving object has reached the designated position. With this configuration, if it is determined that the moving object has crossed the boundary line, it can be determined that the designated position has been reached, and it is possible to determine whether a specific position has been reached in a simple manner. Effect of the Invention

[0016] A control system, a control method, and a control device according to certain aspects of the present disclosure are capable of determining that a specified position has been reached when it is determined that a boundary line has been crossed, and are capable of determining in a simple manner whether a specific position has been reached. [Brief description of the drawings]

[0017] [Figure 1] FIG. 1 is a schematic diagram showing a configuration example of a control system 1 according to an embodiment. [Diagram 2] FIG. 1 is a schematic diagram showing an example of a main hardware configuration of a control system 1 according to an embodiment. [Diagram 3] 2 is a block diagram showing an example of a hardware configuration of a support device 40 constituting the control system 1 according to the embodiment. FIG. [Figure 4] 1 is a schematic diagram for explaining a problem that may arise in a related technique of a control system 1 according to an embodiment. FIG. [Diagram 5] FIG. 11 is another schematic diagram for explaining a problem that may arise in a related technique of the control system 1 according to the embodiment. [Figure 6] 13 is yet another schematic diagram for explaining a problem that may arise in a related technique of the control system 1 according to the embodiment. FIG. [Figure 7] FIG. 11 is another schematic diagram for explaining a problem that may arise in a related technique of the control system 1 according to the embodiment. [Figure 8] It is a schematic diagram for explaining a method of determining ON / OFF of the laser output of the control system 1 according to the embodiment. [Figure 9] It is a diagram showing an example of a specific example for explaining a method of determining ON / OFF of the laser output of the control system 1 according to the embodiment. [Figure 10] It is a diagram for explaining the setting of the boundary lines L1 and L2 according to the embodiment. [Figure 11] It is a diagram for explaining the control flow of the control system 1 according to the embodiment. [Figure 12] It is a diagram for explaining the setting screen of the support device 40 according to Modification Example 1 of the embodiment. [Figure 13] It is a diagram for explaining another setting screen according to Modification Example 1 of the embodiment. [Figure 14] It is a diagram for explaining the setting screen according to Modification Example 2 of the embodiment.

Mode for Carrying Out the Invention

[0018] Embodiments of the present disclosure will be described in detail with reference to the drawings. For the same or corresponding parts in the drawings, the same reference numerals are given and the description thereof will not be repeated.

[0019] <A. Application Example> First, an example of a scene to which the present disclosure is applied will be described.

[0020] FIG. 1 is a schematic diagram showing a configuration example of a control system 1 according to an embodiment. In FIG. 1, as a typical example, an example of a laser processing system is shown, but the applications to which the present disclosure is applied are not limited at all.

[0021]

[0022] ​For the laser processing of the workpiece 4, the irradiation position by the laser beam generated by the laser 30 is adjusted by adjusting the workpiece position with the XY stage 20. It is also possible to combine with a galvanometer mirror (not shown).

[0023] The control device 10 includes a main control unit 100, an axis interface unit 200, and a laser control unit 300.

[0024] The main control unit 100 corresponds to an arithmetic unit that executes an application program 110 (see FIG. 2). The application program 110 is arbitrarily created according to the mechanism to be controlled, the workpiece 4, etc. The execution result obtained by the main control unit 100 executing the application program 110 is used for generating control signals in the axis interface unit 200 and the laser control unit 300.

[0025] The axis interface unit 200 is connected to the XY stage 20 via a control line 52 and outputs a stage control signal 520 for driving the XY stage 20. The XY stage 20 includes a plate 22 on which the workpiece 4 is disposed, and servo motors 24 and 26 for driving the plate 22. In the example shown in FIG. 1, the servo motor 24 displaces the plate 22 in the X-axis direction, and the servo motor 26 displaces the plate 22 in the Y-axis direction. The stage control signal 520 from the axis interface unit 200 is given to servo drivers 23 and 25 (see FIG. 2) that drive the servo motors 24 and 26.

[0026] The laser control unit 300 is a kind of communication device. The laser control unit 300 is connected to the laser 30 via a control line 53 and outputs a laser control signal 530 for instructing on / off to the laser 30.

[0027] <B. Example of the main hardware configuration of the control system 1> Next, an example of a hardware configuration of the control system 1 according to the embodiment will be described.

[0028] 2 is a schematic diagram showing an example of a main hardware configuration of the control system 1 according to the embodiment. As described above, the control device 10 includes the main control unit 100, the axis interface unit 200, and the laser control unit 300.

[0029] The main control unit 100 includes, as its main components, a processor 102, a main memory 104, a storage 106, and a bus controller 112.

[0030] The storage 106 is composed of an SSD (Solid State Disk), a flash memory, etc. The storage 106 stores, for example, a system program 108 for providing a basic program execution environment, and an application program 110 that is arbitrarily created according to the workpiece 4. The storage 106 stores setting conditions and the like including the machining program of Fig. 4(B) described later.

[0031] The processor 102 is typically configured with a CPU (Central Processing Unit), an MPU (Micro-Processing Unit), etc. The processor 102 realizes overall control of the control system 1 by reading out a system program 108 and an application program 110 stored in a storage 106, expanding them in a main memory 104, and executing them.

[0032] The main control unit 100 is electrically connected to the axis interface unit 200 and the laser control unit 300 via an internal bus 114. The bus controller 112 mediates data communication via the internal bus 114.

[0033] Although a configuration example has been shown in which the necessary processing is provided by the processor 102 executing a program, some or all of the provided processing may be implemented using a dedicated hardware circuit (e.g., an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array)).

[0034] The axis interface unit 200 generates and outputs a stage control signal 520 that is provided to the servo driver 23 and the servo driver 25. More specifically, the axis interface unit 200 includes an axis control calculation section 210 and an output interface circuit 220.

[0035] The axis control calculation unit 210 generates commands to be given to the servo drivers 23 and 25 according to calculation values ​​(command values) calculated by the main control unit 100 executing the application program 110. The axis control calculation unit 210 is realized by a calculation circuit configured using, for example, a processor, an ASIC, an FPGA, etc.

[0036] The output interface circuit 220 corresponds to a signal output unit that outputs a stage control signal 520 according to the execution result of the application program 110. More specifically, the output interface circuit 220 generates a stage control signal 520 to be given to the servo driver 23 and the servo driver 25 according to a command generated by the axis control calculation unit 210. As the stage control signal 520, a signal obtained by modulating information such as a displacement amount, a speed, and an angular velocity in each control period by PWM (Pulse Width Modulation) may be used. That is, the output interface circuit 220 may generate the stage control signal 520 by modulating information to be transmitted by PWM. Alternatively, a signal obtained by modulating information such as a displacement amount, a speed, and an angular velocity as a pulse number may be used.

[0037] Note that the axis control arithmetic unit 210 and the output interface circuit 220 may be realized by a single ASIC.

[0038] The laser control unit 300 generates and outputs a laser control signal 530 to be applied to the laser 30. More specifically, the laser control unit 300 includes a laser control arithmetic unit 310 and an output interface circuit 314.

[0039] The laser control arithmetic unit 310 generates a command to be applied to the laser 30 according to an arithmetic value (command value) calculated by the main control unit 100 executing the application program 110. The laser control arithmetic unit 310 is realized by an arithmetic circuit configured using, for example, a processor, an ASIC, an FPGA, or the like.

[0040] The output interface circuit 314 generates a laser control signal 530 to be applied to the laser 30 according to the command generated by the laser control arithmetic unit 310. As the laser control signal 530, a signal having two levels of on / off may be used.

[0041] Note that the laser control arithmetic unit 310 and the output interface circuit 314 may be realized by a single ASIC.

[0042] <C. Hardware Configuration of Support Device 40> The support device 40 according to the embodiment is realized, for example, by executing a program using hardware (for example, a general-purpose personal computer) according to a general-purpose architecture. The support device 40 is connected to the control device 10. The support device 40 executes various settings of the laser processing system for the control device 10.

[0043] Fig. 3 is a block diagram showing an example of a hardware configuration of a support device 40 constituting a control system 1 according to an embodiment. With reference to Fig. 3, the support device 40 includes a processor 42 such as a CPU or an MPU, a main memory device 43, a secondary memory device 47, a local network controller 46, an input unit 44, and a display unit 45. These components are connected via a bus 41.

[0044] The processor 42 reads out various programs stored in the secondary storage device 47, deploys them in the main storage device 43, and executes them to realize various processes including a setting process, which will be described later.

[0045] The secondary storage device 47 is configured with, for example, a hard disk drive (HDD) or a flash solid state drive (SSD). The secondary storage device 47 typically stores a setting program 48, a simulation program 48#, and an OS 49, which are executed in the support device 40. The secondary storage device 47 may store necessary programs other than the programs shown in FIG.

[0046] Various programs executed by the support device 40 may be installed via a computer-readable recording medium, or may be installed by downloading from an arbitrary server on a network. In addition, the functions provided by the support device 40 according to the embodiment may be realized by using some of the modules provided by the OS.

[0047] A local network controller 46 controls the exchange of data with other devices over any network.

[0048] The input unit 44 is made up of a keyboard, a mouse, etc., and receives user operations. The display unit 45 is made up of a display, various indicators, a printer, etc., and outputs the processing results from the processor 42, etc.

[0049] Although the configuration example in which the necessary functions are provided by the processor 42 executing a program has been shown, some or all of these provided functions may be implemented using a dedicated hardware circuit (for example, an ASIC or an FPGA).

[0050] <D. Problem> Next, problems that may occur in the related art of the control system 1 according to the embodiment will be described.

[0051] FIG. 4 is a schematic diagram for explaining problems that may occur in the related art of the control system 1 according to the embodiment. Referring to FIG. 4(A), here, the case where the XY stage 20 moves the work position from the coordinates (0, 0) to the coordinates (100, 100) in the coordinate system defined by the XY coordinates is shown. An example of the case where laser processing is performed by the laser 30 in the section where the work position is from the coordinates (50, 50) to the coordinates (100, 100) is shown.

[0052] FIG. 4(B) is an example of a machining program (application program) described in so-called G-code. By instructing with G-code, it is possible to finely set the axis movement, coordinate setting, rotation of the XY stage 20, the machining method of the target workpiece, and the like. FIG. 4(C) is an example of the laser ON / OFF table used in the machining program. In this example, the case where the laser 30 is turned ON at the coordinates (50, 50) and the laser 30 is turned OFF at the coordinates (100, 100) is set.

[0053] FIG. 5 is another schematic diagram for explaining problems that may occur in the related art of the control system 1 according to the embodiment. Referring to FIG. 5, the trajectory data of the continuous time given by the G-code is converted into the trajectory data of the discrete time in the control device 10. Therefore, the control device 10 compares the coordinates of the work position at a certain time t (= n) with the coordinates of the work position at the next time t (= n + 1), and determines whether the specified coordinates (50, 50) have been crossed. When the control device 10 determines that the specified coordinates (50, 50) have been crossed, the control device 10 turns on the laser 30.

[0054] FIG. 6 is yet another schematic diagram for explaining a problem that may occur in the related art of the control system 1 according to the embodiment. As shown in FIG. 6, consider the case where the work position moves. Specifically, the trajectory when the work position turns back at the coordinates (50, 50) is shown. In this trajectory, the laser 30 is turned ON at the coordinates (50, 50). The trajectory data of the continuous time given by the G code may not cross the coordinates (50, 50) even if it crosses the coordinates (50, 50). Therefore, there is a problem that the laser 30 cannot be turned ON at the specified coordinates (50, 50).

[0055] FIG. 7 is another schematic diagram for explaining a problem that may occur in the related art of the control system 1 according to the embodiment. As shown in FIG. 7, the trajectory when the work position turns back at the coordinates (50, 50) is shown. Here, the case where the work position is interpolated by a curve instead of moving linearly as in FIG. 6 is shown. In this trajectory, the laser 30 is specified to be turned ON at the coordinates (50, 50). Since the trajectory data of the discrete time does not cross the coordinates (50, 50), there is a problem that the laser 30 cannot be turned ON at the specified coordinates (50, 50).

[0056] <E. Solution means> Next, a typical example of a solution means for solving the problems as described above will be described.

[0057] In the embodiment, as a determination method for the condition to be satisfied, it is determined in a simple manner whether or not a specific position has been reached.

[0058] Fig. 8 is a schematic diagram for explaining a method of determining whether the laser output of the control system 1 according to the embodiment is ON / OFF. As shown in Fig. 8, a case is shown in which the work position moves as shown by the dotted line. In this example, a boundary line L on the area is set in association with a specified position P. The boundary line L is a straight line that divides the trajectory data. The boundary line L is defined based on a point (position P) on the area and the angle of a straight line that passes through the point (position P).

[0059] The control system 1 determines whether the work position has moved and crossed the boundary line L. When the control system 1 determines that the work position has crossed the boundary line L, it determines that the work position has reached a specified position P. As a result, it executes an operation (turning on the laser output) that is preset in correspondence with the position P.

[0060] Fig. 9 is a diagram showing an example of a specific example illustrating a method of determining whether the laser output of the control system 1 according to the embodiment is ON / OFF. As shown in Fig. 9, a case is shown in which a boundary line L (y=x) is set for the coordinates (50,50) of a position P. The control system 1 determines whether the work position moves and crosses the boundary line L (y=x). When the control system 1 determines that the work position crosses the boundary line L (y=x), it determines that the work position has reached the specified position P. As a result, the control system 1 executes a preset operation (turning the laser output ON) corresponding to the position P.

[0061] 10A and 10B are diagrams illustrating the setting of the boundary lines L1 and L2 according to the embodiment. As shown in Fig. 10A, the boundary line L1 is expressed by the following equation in the XY coordinate system.

[0062] y=a(xx L )+y L Specifically, the boundary line L1 is defined by the slope a and the coordinates of the specified point (x L ,y L The user sets the slope a and the coordinates of the specified point (x L ,y L) to set the boundary line L1.

[0063] In this example, whether or not the boundary line L1 has been crossed can be determined using the determination function f(x, y) for the work position using the above formula.

[0064] f(x,y)=a(xx L )+y L -y In the embodiment, as an example, it is possible to determine whether or not a boundary line has been crossed by whether or not the sign of the value of the judgment function f(x, y) is inverted. The judgment function f(x, y) utilizes the fact that the sign of the value is inverted with respect to the boundary line L1.

[0065] If a is ∞, then f(x,y)=xx L The judgment is made by: Fig. 10B is an example of the laser ON / OFF table. In Fig. 10B, ON and OFF of the laser output associated with the boundary line are set. The laser ON / OFF table is stored in the storage 106.

[0066] Specifically, the coordinates and the inclination angle for setting the boundary line L are set in association with ON / OFF of the laser output.

[0067] Specifically, the laser output is set to ON in association with the boundary line L1 (coordinates (0,0), tilt angle 45°).

[0068] Laser output is set to OFF in association with boundary line L2 (coordinates (0, -100), tilt angle 0°).

[0069] The control system 1 determines whether the work position has moved and crossed the boundary line L1. If the control system 1 determines that the work position has crossed the boundary line L1, it determines that the work position has reached the specified coordinates (0,0). As a result, the control system 1 executes a preset operation (turning on the laser output) corresponding to the position (0,0).

[0070] Next, the control system 1 determines whether the work position has moved and crossed the boundary line L2. If the control system 1 determines that the work position has crossed the boundary line L2, it determines that the work position has reached the specified coordinates (0, -100). As a result, the control system 1 executes a preset operation (turning off the laser output) corresponding to the position (0, -100).

[0071] In this example, the case where the inclination angle is set as a parameter for setting the boundary line L has been described, but it is not limited to the inclination angle, and the value of the inclination a may be set, or any other value may be used as long as it is possible to set the boundary line L.

[0072] FIG. 11 is a diagram illustrating a control flow of the control system 1 according to the embodiment. 11, as an example, the control flow is a process of controlling the laser 30 in the main control unit 100. Specifically, the process is a process of controlling the XY stage 20 by the axis interface unit 200 and the laser 30 by the laser control unit 300 based on the processor 102 executing the application program 110. The processor 102 outputs a calculated value (command value) to the axis interface unit 200 based on the machining program (application program) described in so-called G code as described above. The axis interface unit 200 controls the XY stage 20 according to the calculated value (command value) from the main control unit 100 to move the work position according to a preset movement trajectory.

[0073] The main control unit 100 outputs a calculated value (command value) for controlling the laser 30 to the laser control unit 300 based on the calculated workpiece position and the laser ON / OFF table.

[0074] Specifically, the main control unit 100 sets a judgment function (step S2). The main control unit 100 sets the judgment function based on the laser ON / OFF table stored in the storage 106. As an initial state, the main control unit 100 sets the judgment function using the first top list of the laser ON / OFF table. For example, a judgment function f(x, y) according to the boundary line L1 (coordinates (0, 0), tilt angle 45°) described in FIG. 10(B) is set.

[0075] Next, the main control unit 100 detects the passage of time (t=n←n+1) (step S4). The passage of time corresponds to a control cycle, and the process is executed for each control cycle.

[0076] Next, the main control unit 100 calculates the command position (X[n], Y[n]), which is the work position (step S6). As described above, the work position is set based on the machining program (application program) written in G-code.

[0077] Next, the main control unit 100 calculates a judgment function value based on the command position (X[n], Y[n]) (step S7). Specifically, the judgment function value is calculated by inputting the command position (X[n], Y[n]) to the judgment function f(x, y).

[0078] Next, the main control unit 100 calculates the product of the calculated judgment function value and the sign prev of the previous judgment function value, and judges whether the calculation result is negative or not (step S8). That is, it judges whether the sign of the judgment function value has been inverted or not.

[0079] In step S8, the main control unit 100 calculates the product of the calculated judgment function value and the sign prev of the previous judgment function value, and if it determines that the calculation result is negative (YES in step S8), it executes output of the target list. That is, this is the case where the sign of the judgment function value is inverted, which corresponds to the case where the boundary line L is crossed.

[0080] Next, the main control unit 100 sets the next judgment function (step S10). Specifically, the main control unit 100 sets the judgment function based on the laser ON / OFF table. The main control unit 100 sets the judgment function using the next list in the laser ON / OFF table. For example, the main control unit 100 sets a judgment function f(x, y) according to the boundary line L2 (coordinates (0, -100), tilt angle 0°) described in FIG. 10(B).

[0081] Next, the main control unit 100 holds the sign prev of the calculated judgment function value (step S12).

[0082] Next, the main control unit 100 determines whether the program is completed (step S14).

[0083] When main control unit 100 determines that the program is completed (YES in step S14), it ends the process (END).

[0084] On the other hand, if main control unit 100 determines that the program is not completed (NO in step S14), it returns to step S4 and repeats the above processing.

[0085] On the other hand, in step S8, the main control unit 100 calculates the product of the calculated judgment function value and the sign prev of the previous judgment function value, and if it determines that the calculation result is not negative (NO in step S8), it skips steps S9 and S10 and proceeds to step S12. That is, this corresponds to a case where the sign of the judgment function value is not inverted and does not cross the boundary line L. Then, in step S12, the main control unit 100 holds the sign prev of the calculated judgment function value (step S12). Note that in the initial state, the sign prev is not set. Therefore, the main control unit 100 proceeds to step S12 and sets the sign prev.

[0086] Therefore, when the control system 1 uses the laser ON / OFF table of FIG. 10(B), it sets a judgment function according to the boundary line L1. Then, the control system 1 judges whether the work position moves and crosses the boundary line L1. When the control system 1 judges that the work position crosses the boundary line L1, it judges that the work position has reached the specified coordinates (0,0). As a result, the control system 1 executes a preset operation (turning on the laser output) corresponding to the position (0,0).

[0087] Next, when the control system 1 uses the laser ON / OFF table of Fig. 10(B), it sets a judgment function according to the boundary line L2. The control system 1 judges whether the work position moves and crosses the boundary line L2. When the control system 1 judges that the work position crosses the boundary line L2, it judges that the work position has reached the specified coordinates (0, -100). As a result, the control system 1 executes the operation (turning off the laser output) that is preset in correspondence with the position (0, -100).

[0088] This allows the control system 1 to determine in a simple manner whether or not a specific position has been reached as a method for determining whether a condition is satisfied by setting a boundary line on the area.

[0089] Note that although the control flow in FIG. 11 has been described for the case mainly executed in the main control unit 100, it may be executed using the main control unit 100 and the support device 40. Further, the support device 40 has a simulation program 48#, and it is also possible to virtually execute it in the support device 40 by executing the simulation program 48#.

[0090] <F. Other Embodiments> (Modification Example 1) In Modification Example 1 of the embodiment, an operation method for simply setting a boundary line will be described.

[0091] The laser ON / OFF table in the above embodiment is created by the user inputting coordinates, tilt angle, and ON / OFF of the laser output.

[0092] Specifically, the laser ON / OFF table may be created by using the support device 40 to input to the setting screen displayed on the display unit 45 of the support device 40. The setting screen is realized by the processor 42 executing the setting program 48.

[0093] The created laser ON / OFF table can be stored in the storage 106 of the main control unit 100 via the local network controller 46 of the support device 40. Further, the support device 40 can set or update the application program 110 stored in the storage 106 of the main control unit 100 by executing the setting program 48.

[0094] Fig. 12 is a diagram illustrating a setting screen of the support device 40 according to the first modified example of the embodiment. Referring to Fig. 12, a setting screen 400 for setting a boundary line of the support device 40 is shown. The setting screen 400 displays a trajectory Z of the work position that moves according to the execution result of the simulation program 48#. The trajectory Z is a trajectory obtained by calculating the movement of the work position by simulating it.

[0095] The setting screen 400 is provided so as to be capable of receiving input from the user, and in this example, is provided so as to enable setting using the input unit 44 such as a mouse.

[0096] Specifically, when creating a laser ON / OFF table, the user sets a designated point at an arbitrary position. The user designates a point at which the laser is to be turned on or off. As an example, a case is shown in which the user designates a point R on the locus Z displayed on the screen by clicking the mouse of the input unit 44 on the setting screen 400.

[0097] The setting screen 400 calculates and displays a virtual boundary line based on the input of the specified points. 13 is a diagram illustrating another setting screen according to the first modification of the embodiment. Referring to FIG 13, a setting screen 402 for setting a boundary line is shown.

[0098] When the support device 40 receives a user's input of a specified point on the setting screen 400, the support device 40 calculates a virtual boundary line based on the input of the specified point and displays it on the display unit 45.

[0099] Specifically, the support device 40 generates a straight line that is perpendicular to the locus Z and passes through the designated position as the virtual boundary line in accordance with the input of the designated position on the setting screen 400. In this example, when the support device 40 receives an input of a designated point R on the locus Z, the support device 40 generates a straight line that is perpendicular to the locus Z and passes through the designated point R as the virtual boundary line L3.

[0100] In this example, the virtual boundary line L3 is provided so that it can be operated. As an example, the setting screen 402 shows a virtual boundary line L3# in which the inclination of the virtual boundary line L3 is adjusted by a drag-and-drop operation performed by the user using the mouse of the input unit 44 or the like on the virtual boundary line L3 displayed on the screen.

[0101] Then, by performing a predetermined input operation on the set virtual boundary line, it is possible to set the laser output to ON or OFF.

[0102] This makes it possible to create a laser ON / OFF table according to the set virtual boundary line and laser output settings.

[0103] The setting screen according to the first modified example of the embodiment allows the user to easily set a boundary line via the setting screen. This makes it possible to easily create a laser ON / OFF table. In addition, in this example, a case has been described in which a virtual boundary line is generated based on the input of a specified point, and the user can adjust the virtual boundary line, but one boundary line may be set based on the input of a specified point. In this case, input of a tilt is not required, and the boundary line can be set with one action.

[0104] (Variation 2) In the second modification of the embodiment, another operation method for simply setting a boundary line using a laser will be described.

[0105] Fig. 14 is a diagram illustrating a setting screen according to the second modified example of the embodiment. Referring to Fig. 14(A), a setting screen 404 for setting a boundary line is shown.

[0106] When the support device 40 receives a user's input of a specified point on the setting screen 404 , the support device 40 calculates a boundary line based on the input of the specified point and displays it on the display unit 45 .

[0107] In this example, the workpiece position trajectory is a circular movement and then returns to the original position. For example, a case where the laser is turned on and off at a portion of the circular arc will be described. Specifically, the laser is turned on at position Q2, which is a portion of the circular arc, and turned off at position Q3.

[0108] In this case, as described above, the user can set a straight line that is perpendicular to the trajectory and passes through position Q2 as boundary line L4 by performing an input operation with position Q2 as a specified point. Then, the laser output at position Q2 is set to ON.

[0109] Furthermore, the user can set a straight line that is perpendicular to the trajectory and passes through position Q3 as boundary line L5 by performing an input operation with position Q3 as a specified point. Then, the laser output at position Q3 is set to OFF.

[0110] On the other hand, if a judgment function according to the boundary line L4 is set first, the work position will cross the boundary line L4 when it reaches position Q1. Therefore, there is a risk that the laser output will be turned ON due to crossing the boundary line L4.

[0111] Therefore, in the second modification of the embodiment, the state of the laser output can be set to a HOLD state in addition to ON or OFF.

[0112] The laser output state can be set to an operation of changing from laser output OFF (first state) to laser output ON (second state), an operation of changing from laser output ON (second state) to laser output OFF (first state), or an operation of maintaining laser output OFF (first state) and ON (second state).

[0113] Fig. 14(B) is a diagram illustrating a laser ON / OFF table according to the second modified example of the embodiment. As shown in Fig. 14(B), HOLD is set in addition to ON and OFF of the laser output associated with the boundary line.

[0114] Specifically, the coordinates and the inclination angle for setting the boundary line L are set in association with ON, OFF, and HOLD of the laser output.

[0115] As an example, the laser output HOLD is set in association with the boundary line L4 (position Q1, tilt angle 45°).

[0116] Next, the laser output is set to ON in association with the boundary line L4 (position Q2, tilt angle 45°).

[0117] Next, the laser output is set to OFF in association with boundary line L5 (position Q3, tilt angle 90°).

[0118] The control system 1 judges whether the work position moves and crosses the boundary line L4 according to the first list of the laser ON / OFF table. If the control system 1 judges that the work position crosses the boundary line L4, it judges that the work position has reached the position Q1, which is the specified coordinate. As a result, it executes the operation (HOLD (maintain) the laser output) preset in correspondence with the position Q1.

[0119] The control system 1 judges whether the work position moves and crosses the boundary line L4 according to the next list in the laser ON / OFF table. If the control system 1 judges that the work position crosses the boundary line L4, it judges that the work position has reached the position Q2, which is the specified coordinate. As a result, the control system 1 executes the operation (turning on the laser output) preset in correspondence with the position Q2.

[0120] The control system 1 determines whether the work position moves across the boundary line L5 according to the following list further to the laser ON / OFF table. When the control system 1 determines that the work position has crossed the boundary line L5, it determines that the work position has reached the position Q3 which is the specified coordinate. Thereby, the operation preset corresponding to the position Q3 (turning off the laser output) is executed.

[0121] Thereby, the control system 1 can avoid malfunction at inappropriate positions and can easily set the laser output.

[0122] That is, as the setting of the laser output state, by providing a laser output HOLD in addition to the laser output ON and the laser output OFF, the degree of freedom of setting is improved and efficient setting becomes possible.

[0123] <G. Advantages> According to the control system according to the embodiment, it is possible to determine whether a specific position has been reached in a simple manner.

[0124] <H. Supplementary Note> The embodiment as described above includes the following technical ideas.

[0125] [Configuration 1] A movement control unit (200) that controls the movement of a movement object according to a preset movement trajectory, A storage unit (106) that holds a boundary line on a region defined in advance in association with a specified position, A movement determination unit (102) that determines whether the movement object has reached the specified position, and The movement determination unit determines whether the movement object has crossed the boundary line, and when it is determined that the movement object has crossed the boundary line, determines that the specified position has been reached, a control system.

[0126] [Configuration 2] 2. The control system of claim 1, further comprising a setting receiver (40) for generating the boundary line according to a user setting.

[0127] [Configuration 3] 3. The control system of claim 1, wherein the boundary line is defined based on a point on the region and an angle of a line passing through the point.

[0128] [Configuration 4] the setting reception unit has a setting screen (400, 402, 404) for generating the boundary line for the movement trajectory, the setting screen is capable of accepting input of the designated position, and a virtual boundary line dividing the movement trajectory passing through the designated position is displayed in an operable manner; 3. The control system according to claim 2, wherein the setting reception unit receives an operation input for the virtual boundary line on the setting screen to generate the boundary line.

[0129] [Configuration 5] 3. The control system according to claim 2, wherein the setting reception unit generates, in accordance with an input of the designated position, a straight line that is perpendicular to the movement trajectory and passes through the designated position as the boundary line.

[0130] [Configuration 6] The movement determination unit is calculating a judgment function for the position of the moving object according to the boundary line; 2. The control system according to claim 1, wherein the control system judges whether the boundary line has been crossed based on whether a sign of a value of the judgment function according to the position of the moving object is inverted.

[0131] [Configuration 7] 2. The control system according to claim 1, further comprising an execution unit (300) that executes a predetermined operation based on a result of the determination by the movement determination unit.

[0132] [Configuration 8] 8. The control system of claim 7, wherein the predetermined action is one of an action of changing from a first state to a second state, an action of changing from the second state to the first state, or an action of maintaining the first and second states.

[0133] [Configuration 9] Controlling the movement of a moving object according to a preset movement trajectory; and a step (S8) of determining whether the moving object has reached a designated position; The determining step includes: It is determined whether the moving object crosses a boundary line on a predefined area associated with the specified position (S8); When it is determined that the moving object has crossed the boundary line, it is determined that the moving object has reached the specified position (S9).

[0134] [Configuration 10] A movement control unit (200) that controls the movement of a moving object according to a preset movement trajectory; A storage unit (106) for storing a boundary line on a predefined area in association with a specified position; a movement determination unit (102) for determining whether the object to be moved has reached the designated position; The movement determination unit is determining whether the moving object has crossed the boundary line; When it is determined that the moving object has crossed the boundary line, the control device determines that the moving object has reached the specified position.

[0135] The embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present disclosure is defined by the claims, not the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]

[0136] 1 control system, 10 control device, 20 XY stage, 22 plate, 23, 25 servo driver, 24, 26 servo motor, 30 laser, 40 support device, 41 bus, 42, 102 processor, 43 main memory, 44 input section, 45 display section, 46 local network controller, 47 secondary memory, 48 setting program, 52, 53 control line, 100 main control unit, 104 main memory, 106 storage, 108 system program, 110 application program, 112 bus controller, 114 internal bus, 200 axis interface unit, 210 axis control calculation section, 220, 314 output interface circuit, 300 laser control unit, 310 laser control calculation section.

Claims

1. A movement control unit that controls the movement of the moving object according to a preset movement trajectory; a storage unit for storing a boundary line on a predefined region in association with a specified position; a movement determination unit that determines whether the object to be moved has reached the designated position; The movement determination unit is determining whether the moving object has crossed the boundary line; When it is determined that the moving object has crossed the boundary line, it is determined that the moving object has reached the designated position; a setting receiving unit that generates the boundary line according to a user setting, the setting reception unit has a setting screen for generating the boundary line for the movement trajectory, the setting screen is capable of accepting input of the designated position, and a virtual boundary line dividing the movement trajectory passing through the designated position is displayed in an operable manner; The setting reception unit receives an operation input for the virtual boundary line on the setting screen and generates the boundary line.

2. The control system of claim 1 , wherein the boundary line is defined based on a point on the region and an angle of a line passing through the point.

3. A control system as described in claim 1, wherein the setting reception unit generates a straight line that is perpendicular to the movement trajectory and passes through the specified position as a boundary line in accordance with the input of the specified position.

4. The movement determination unit, calculating a judgment function for the position of the moving object according to the boundary line; The control system according to claim 1 , further comprising: determining whether the boundary line has been crossed based on whether a sign of the value of the judgment function according to the position of the moving object is inverted.

5. A control system as described in claim 1, further comprising an execution unit that executes a predetermined operation based on the judgment result of the movement judgment unit.

6. A control system as described in claim 5, wherein the specified operation is one of an operation of changing from a first state to a second state, an operation of changing from the second state to the first state, or an operation of maintaining the first and second states.

7. A step of controlling the movement of a moving object according to a preset movement trajectory; determining whether the moving object has reached a designated position; The determining step includes: determining whether the moving object crosses a boundary line on a predefined area associated with the specified position; When it is determined that the moving object has crossed the boundary line, it is determined that the moving object has reached the designated position; generating said boundary line according to user settings; The step of generating a boundary line includes: displaying a setting screen for generating the boundary line for the movement trajectory; a step of allowing the setting screen to receive input of the designated position and operably displaying a virtual boundary line dividing the movement trajectory passing through the designated position; and receiving an operation input for the virtual boundary line on the setting screen to generate the boundary line.

8. A movement control unit that controls the movement of a moving object according to a preset movement trajectory; a storage unit for storing a boundary line on a predefined region in association with a specified position; a movement determination unit that determines whether the object to be moved has reached the designated position; The movement determination unit is determining whether the moving object has crossed the boundary line; When it is determined that the moving object has crossed the boundary line, it is determined that the moving object has reached the designated position; a setting receiving unit that generates the boundary line according to a user setting, the setting reception unit has a setting screen for generating the boundary line for the movement trajectory, the setting screen is capable of accepting input of the designated position, and a virtual boundary line dividing the movement trajectory passing through the designated position is displayed in an operable manner; The setting reception unit receives an operation input for the virtual boundary line on the setting screen and generates the boundary line.

Citation Information

Patent Citations

  • Numerical controller for laser beam machine

    JP1990063692A

  • Robot controlling device

    JP1999138476A

  • Laser beam marker device

    JP2000225478A

  • Robot control apparatus, robot control method, and robot system

    JP2012096307A