Orbit creation method and orbit creation apparatus
The method and device address printhead wobble by calculating and evaluating trajectories to improve print quality by minimizing wobble, enhancing the printing process.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- SEIKO EPSON CORP
- Filing Date
- 2022-06-10
- Publication Date
- 2026-04-28
AI Technical Summary
The vibration of a robot arm during inkjet printhead movement can cause wobble, leading to a decrease in print quality when moving along different paths and trajectories.
A method and device for creating trajectories that minimize inkjet printhead wobble by calculating and evaluating candidate trajectories based on robot arm, liquid discharge head, and printing conditions, displaying these trajectories with their evaluation values, and allowing user selection.
The method and device effectively reduce printhead wobble, improving print quality by selecting optimal trajectories.
Smart Images

Figure 0007852392000004 
Figure 0007852392000005 
Figure 0007852392000006
Abstract
Description
Technical Field
[0001] The present invention relates to a method for creating a trajectory and a trajectory creation device.
Background Art
[0002] There is known a three-dimensional object printing device that moves an inkjet print head by combining the operations of a plurality of movable parts and performs printing on the surface of a three-dimensional object. For example, Patent Document 1 discloses a device having a robotic arm having a plurality of movable parts, an inkjet print head attached to the tip of the robotic arm, and a controller that controls the movement of the robotic arm. The controller controls the movement of the robotic arm so that the inkjet print head passes through a series of scanning paths. In order to move the inkjet print head along one scanning path, there are a plurality of options for controlling the movement of the robotic arm. For example, when the relative position of the print target with respect to the robotic arm is different, it is necessary to move the inkjet print head along different paths accordingly. Also, depending on the speed and acceleration at which the inkjet print head is moved on the path, there can be a plurality of trajectories for one path.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] When moving an inkjet printhead linearly along a scanning path by combining the movements of multiple movable parts, the vibration of the robot arm may increase depending on the path and trajectory. Increased vibration of the robot arm can cause wobble in the inkjet printhead, resulting in a decrease in print quality. Therefore, finding a trajectory that minimizes inkjet printhead wobble is a challenge. [Means for solving the problem]
[0005] The trajectory creation method according to an application example of the present invention is: A method for creating the trajectory of a liquid ejection head when printing on an object using a liquid ejection head that ejects liquid onto the object and a robot arm that changes the relative position of the liquid ejection head with respect to the object, An information acquisition step in which information about the robot arm, information about the liquid discharge head, information about the target object, the printing conditions, and the printing data are acquired as trajectory calculation information, Based on the trajectory calculation information, a plurality of candidate trajectories are calculated, and an evaluation value acquisition step is performed to obtain an evaluation value including the amount of wobble of the robot arm for each candidate trajectory. A trajectory display step in which multiple candidate trajectories and the evaluation value are displayed on a display unit, A trajectory selection step involves selecting one of several candidate trajectories, It has.
[0006] The trajectory creation device according to an application example of the present invention is: A device for creating the trajectory of the liquid ejection head when printing on an object using a liquid ejection head that ejects liquid onto the object and a robot arm that changes the relative position of the liquid ejection head with respect to the object, A trajectory generation unit calculates a plurality of candidate trajectories based on trajectory calculation information including information on the robot arm, information on the liquid discharge head, information on the target object, printing conditions, and printing data. For each of the candidate trajectories, an evaluation value acquisition unit acquires an evaluation value including the amount of wobble of the robot arm, A display control unit that displays multiple candidate trajectories and the evaluation values on a display unit, An input receiving unit that receives input to select one of several candidate trajectories, It has. [Brief explanation of the drawing]
[0007] [Figure 1] This is a perspective view showing a printing apparatus having a track creation device according to the first embodiment. [Figure 2] Figure 1 is a block diagram showing the configuration of the printing apparatus. [Figure 3] Figure 2 is a schematic diagram illustrating the function of the route generation unit that creates route data Dc. [Figure 4] Figure 2 is a schematic diagram showing multiple route candidates created by the route generation unit. [Figure 5] Figure 2 is a schematic diagram showing multiple route candidates created by the route generation unit. [Figure 6] This graph shows an example of the effect of the timing at which the angular acceleration of the rotation axis reaches its extreme value on the amount of wobble of the robot arm. [Figure 7] This graph shows an example of the effect of the timing at which the angular acceleration of the rotation axis reaches its extreme value on the amount of wobble of the robot arm. [Figure 8] This is a flowchart illustrating a printing method, including a trajectory creation method, according to the first embodiment. [Figure 9] Figure 8 is a flowchart illustrating the process for obtaining evaluation values. [Figure 10] This is an example of the user interface displayed on the display unit during the trajectory display process shown in Figure 8. [Figure 11] Figure 8 is a flowchart illustrating the printing process. [Figure 12] This is a block diagram showing the configuration of a printing apparatus having a track creation device according to the second embodiment. [Figure 13]This is a flowchart for explaining a printing method including a trajectory creation method according to the second embodiment.
Embodiments for Carrying out the Invention
[0008] Hereinafter, the trajectory creation method and trajectory creation apparatus of the present invention will be described in detail based on the embodiments shown in the accompanying drawings.
[0009] 1. First Embodiment First, a printing apparatus having a trajectory creation apparatus according to the first embodiment and a printing method including the trajectory creation method will be described.
[0010] 1.1. Outline of the Printing Apparatus FIG. 1 is a perspective view showing a printing apparatus 100 having a trajectory creation apparatus 10 according to the first embodiment. In FIG. 1, three axes orthogonal to each other are taken as the X-axis, Y-axis, and Z-axis. Also, one direction along the X-axis is referred to as the X1 direction, and the direction opposite to the X1 direction is referred to as the X2 direction. Similarly, the directions opposite to each other along the Y-axis are referred to as the Y1 direction and the Y2 direction. Also, the directions opposite to each other along the Z-axis are referred to as the Z1 direction and the Z2 direction. The X-axis, Y-axis, and Z-axis are the coordinate axes of a base coordinate system set in the space where the object W and the base 210 described later are installed.
[0011] The object W shown in FIG. 1 has a printing surface WF. In FIG. 1, the object W is a cylinder having a central axis parallel to the X-axis. And the curved surface which is the side surface of the cylinder is the printing surface WF. Note that the shape, size, installation posture, etc. of the object W are not limited to the example shown in FIG. 1 and are arbitrary.
[0012] The printing apparatus 100 shown in FIG. 1 includes a robot 200, a liquid ejection head unit 300, a liquid storage unit 400, a supply flow path 500, a robot controller 600, and an external device 700. Among these, the trajectory creation apparatus 10 according to the first embodiment is configured by the robot controller 600 and the external device 700.
[0013] Robot 200 is an example of a movement mechanism that changes the position and orientation of the liquid discharge head unit 300 relative to the object W. In the example shown in Figure 1, robot 200 is a so-called 6-axis vertical articulated robot. Specifically, robot 200 has a base 210 and a robot arm 220.
[0014] The base 210 is a platform that supports the robot arm 220. In the example shown in Figure 1, the base 210 is fixed to a mounting surface such as a floor facing the Z1 direction by screws or the like. Note that the mounting surface to which the base 210 is fixed is not limited to the example shown in Figure 1, and may be a surface facing any direction, such as a wall, ceiling, or a surface of a movable trolley.
[0015] The robot arm 220 is a 6-axis robot arm having a base end attached to a base frame 210 and an end that changes position and orientation three-dimensionally relative to the base end. Specifically, the robot arm 220 has arms 221, 222, 223, 224, 225, and 226, which are connected in this order. The number of arms that the robot arm 220 has may be five or fewer, or seven or more.
[0016] Arm 221 is connected to the base 210 via a joint 231 so as to be rotatable around pivot axis J1. Arm 222 is connected to arm 221 via a joint 232 so as to be rotatable around pivot axis J2. Arm 223 is connected to arm 222 via a joint 233 so as to be rotatable around pivot axis J3. Arm 224 is connected to arm 223 via a joint 234 so as to be rotatable around pivot axis J4. Arm 225 is connected to arm 224 via a joint 235 so as to be rotatable around pivot axis J5. Arm 226 is connected to arm 225 via a joint 236 so as to be rotatable around pivot axis J6.
[0017] In the example shown in Figure 1, when the base 210 is considered a type of arm, the joints 231 to 236 are mechanisms that connect one of two adjacent arms so that it can rotate relative to the other. Although not shown, each of the joints 231 to 236 is provided with a drive mechanism that rotates one of two adjacent arms relative to the other. The drive mechanism includes, for example, a motor that generates a driving force for rotation, a reduction gear that reduces and outputs the driving force, and an encoder such as a rotary encoder that detects the angle of rotation, etc. Note that the drive mechanism corresponds to the arm drive mechanism 230 shown in Figure 2, which will be described later.
[0018] The pivot axis J1 is an axis perpendicular to the mounting surface (not shown) to which the base 210 is fixed. The pivot axis J2 is an axis perpendicular to the pivot axis J1. The pivot axis J3 is an axis parallel to the pivot axis J2. The pivot axis J4 is an axis perpendicular to the pivot axis J3. The pivot axis J5 is an axis perpendicular to the pivot axis J4. The pivot axis J6 is an axis perpendicular to the pivot axis J5.
[0019] Furthermore, regarding these pivot axes, "perpendicular" includes not only cases where the angle between the two pivot axes is exactly 90°, but also cases where the angle between the two pivot axes is deviated by approximately ±5° from 90°. Similarly, "parallel" includes not only cases where the two pivot axes are exactly parallel, but also cases where one of the two pivot axes is tilted relative to the other by approximately ±5°.
[0020] A liquid discharge head unit 300 is attached to the tip of the robot arm 220, i.e., arm 226, as an end effector.
[0021] The liquid ejection head unit 300 includes a liquid ejection head 310 that ejects ink, which is an example of a liquid, toward an object W, and a printer controller 340 that controls the operation of the liquid ejection head 310. In this embodiment, the liquid ejection head unit 300 also includes a pressure regulating valve 320 that adjusts the pressure of the ink supplied to the liquid ejection head 310. The liquid ejection head 310 is fixed in position and orientation relative to the arm 226.
[0022] The liquid ejection head 310 will be described in detail later. The printer controller 340 outputs a drive pulse PD to drive the liquid ejection head 310 based on the control signal SI output from the external device 700. Note that the placement of the printer controller 340 is not limited to the liquid ejection head unit 300.
[0023] The pressure regulating valve 320 is a valve mechanism that opens and closes in accordance with the pressure of the ink in the liquid ejection head 310. This opening and closing maintains the pressure of the ink in the liquid ejection head 310 at a negative pressure within a predetermined range. This stabilizes the ink meniscus formed in the nozzle of the liquid ejection head 310.
[0024] The liquid storage unit 400 is a container for storing ink. The liquid storage unit 400 is, for example, a bag-shaped ink pack made of a flexible film. The ink stored in the liquid storage unit 400 is, for example, an ink containing a coloring agent such as a dye or pigment. The type of ink stored in the liquid storage unit 400 is not limited to ink containing a coloring agent; for example, it may be an ink containing a conductive material such as metal powder. The ink may also have curing properties such as UV curing. If the ink has curing properties such as UV curing, for example, a UV irradiation mechanism is installed in the liquid discharge head unit 300.
[0025] In the example shown in Figure 1, the liquid reservoir 400 is fixed to a wall, ceiling, or column, etc., so that it is always positioned in the Z1 direction relative to the liquid dispensing head 310. That is, the liquid reservoir 400 is positioned vertically above the movement range of the liquid dispensing head 310. Therefore, ink can be supplied from the liquid reservoir 400 to the liquid dispensing head 310 with a predetermined pressure without the need for a pump or other mechanism.
[0026] The liquid reservoir 400 may be installed vertically below the liquid dispensing head 310. In this case, for example, ink can be supplied from the liquid reservoir 400 to the liquid dispensing head 310 at a predetermined pressure using a pump.
[0027] The supply channel 500 is a channel that supplies ink from the liquid reservoir 400 to the liquid discharge head 310. A pressure regulating valve 320 is provided in the middle of the supply channel 500. Therefore, even if the positional relationship between the liquid discharge head 310 and the liquid reservoir 400 changes, fluctuations in the ink pressure inside the liquid discharge head 310 can be reduced.
[0028] The supply channel 500 is divided into an upstream channel 510 and a downstream channel 520 by a pressure regulating valve 320. That is, the supply channel 500 has an upstream channel 510 that connects the liquid storage section 400 and the pressure regulating valve 320, and a downstream channel 520 that connects the pressure regulating valve 320 and the liquid discharge head 310. The upstream channel 510 and the downstream channel 520 are each composed of, for example, the internal space of a pipe.
[0029] The robot controller 600 controls the operation of the robot 200 and the liquid ejection head unit 300. The robot controller 600 will be described in detail below along with the electrical configuration of the printing apparatus 100.
[0030] The external device 700 is, for example, a personal computer (PC). The external device 700 is connected to the robot controller 600 and transmits and receives information.
[0031] 1.2. Orbit Creation Device Figure 2 is a block diagram showing the configuration of the printing apparatus 100 shown in Figure 1.
[0032] As shown in Figure 2, the printing apparatus 100 has a track creation device 10 which consists of a robot controller 600 and an external device 700. However, the track creation device according to the present invention may have a different configuration.
[0033] 1.2.1. Robot Controller The robot controller 600 includes an arm control unit 610, a path generation unit 620, a trajectory generation unit 630, and a memory unit 640. These functional units of the robot controller 600 are realized by hardware equipped with a processor, memory, and an external interface. An example of a processor is a CPU (Central Processing Unit). An example of memory is semiconductor memory, either or both of the following: volatile memory such as RAM (Random Access Memory) and non-volatile memory such as ROM (Read Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), and PROM (Programmable ROM). An example of an external interface is a digital input / output port such as USB (Universal Serial Bus) and an Ethernet (registered trademark) port. The above functional units of the robot controller 600 operate by causing the processor to execute the program PG1 stored in the memory unit 640.
[0034] Furthermore, the processor may use a programmable logic device such as an FPGA (field-programmable gate array) instead of a CPU, or in addition to a CPU.
[0035] Furthermore, some or all of the functional components of the robot controller 600 may be implemented by an external device 700 connected to the robot controller 600, or by other external devices connected to the robot controller 600 via a network such as a LAN (Local Area Network) or the Internet.
[0036] The memory unit 640 stores information about the robot arm 220 (arm information Da), information about the liquid ejection head 310 (print head information Dh), information about the object W to be printed (object information Dw), and printing conditions (printing conditions Dp1, Dp2), etc. The path generation unit 620 generates path data Dc. Furthermore, the trajectory generation unit 630 generates trajectory data Do.
[0037] The arm control unit 610 controls the drive of the robot 200 based on various information. Specifically, the arm control unit 610 generates a control signal Sk based on drive information D1 and trajectory data Do from the arm drive mechanism 230 of the robot 200. The control signal Sk is input to the arm drive mechanism 230. Based on the control signal Sk, the arm drive mechanism 230 controls the drive of the motor so that the liquid discharge head 310 is in the desired position and orientation.
[0038] Arm information Da indicates the number of rotation axes of the robot arm 220, the length of the arm (link length), the arrangement of the rotation axes, the installation direction of the rotation axes, etc.
[0039] The print head information Dh includes information such as the position and orientation of the liquid ejection head 310 relative to the robot arm 220, the number of nozzles on the liquid ejection head 310, the arrangement of the nozzles, the number of ink colors ejected by the nozzles, and the resolution of the nozzles.
[0040] Object information Dw is information indicating the position and orientation of object W. Object information Dw is information such as CAD (computer-aided design) data showing the 3D shape of object W, mapped to the aforementioned base coordinate system.
[0041] The printing condition Dp1 consists of the initial settings for the scanning direction (printing direction), scanning speed (printing speed), and scanning acceleration (printing acceleration) of the liquid ejection head 310 during printing. These can be any values that are provided as initial settings in advance.
[0042] The printing condition Dp2 is information indicating the shape of the area to be printed on the printing surface WF. For example, if the printing surface WF is an arc and printing is to be performed on a part of that arc, the printing condition Dp2 may include the starting angle at which the liquid ejection head 310 starts moving during printing, the radius of the area to be printed, and the central angle of the area to be printed.
[0043] The arm information Da, print head information Dh, object information Dw, and printing conditions Dp1 are pre-entered into the robot controller 600. Printing conditions Dp2 are generated according to the print data Img produced by the external device 700, and are therefore entered into the external device 700 by the user before printing. The entered printing conditions Dp2 are output to the robot controller 600 and stored in the storage unit 640. The print data Img is information indicating a two-dimensional or three-dimensional image to be printed on the print surface WF.
[0044] The path data Dc is information indicating the path that the liquid discharge head 310 should take. The path is the sequence of positions and orientations of the liquid discharge head 310 in the base coordinate system. The path data Dc is generated by the path generation unit 620, which will be described later.
[0045] Trajectory data Do is information indicating the trajectory that the liquid discharge head 310 should follow. A trajectory is a path expressed with time as a parameter. Therefore, trajectory data Do can be calculated using path data Dc and printing conditions Dp1. Trajectory data Do is generated by the trajectory generation unit 630, which will be described later.
[0046] The correspondence between the drive information D1 and the position and orientation of the liquid discharge head 310 is acquired in advance through calibration or the like and stored in the memory unit 640. The arm control unit 610 acquires information regarding the position and orientation of the liquid discharge head 310 based on the drive information D1 and the aforementioned correspondence. Then, the arm control unit 610 uses the position and orientation information to control the liquid discharge head 310 so that it is in the desired position and orientation. The robot 200 or the liquid discharge head unit 300 may also have a displacement sensor or the like (not shown). In this case, the arm control unit 610 may use information from the displacement sensor to appropriately adjust the control signal Sk so that the distance between the liquid discharge head 310 and the surface of the object W is maintained within a predetermined range.
[0047] The path generation unit 620 generates path data Dc. The path data Dc is generated by acquiring trajectory calculation information including arm information Da, print head information Dh, object information Dw, printing conditions Dp1 and Dp2, and printing data Img, and is performed based on this information. Specifically, the path generation unit 620 creates multiple candidate paths for the liquid ejection head 310 by changing the position and orientation of the object W included in the object information Dw, and the printing direction included in the printing conditions Dp1. The path generation unit 620 also creates path data Dc corresponding to each candidate.
[0048] Figure 3 is a schematic diagram illustrating the function of the route generation unit 620 shown in Figure 2, which creates route data Dc.
[0049] In the example shown in Figure 3, the object W is a cylinder, and the printing surface WF is the side surface of the cylinder. In this case, the liquid ejection head 310 needs to move in a circular motion along the printing surface WF. Therefore, the object information Dw includes, for example, the center coordinates (x,y,z) of the object W and the orientation (u,v,w) of the object W. The printing condition Dp1 includes the printing direction d. Furthermore, the printing condition Dp2 includes the starting angle a when the liquid ejection head 310 starts moving during printing, the radius r of the printing area relative to the printing surface WF, and the central angle θ of the printing area. The center coordinates (x,y,z) of the object W are the coordinates of the center of the object W in the base coordinate system. The orientation (u,v,w) of the object W is the orientation expressed as rotation around the X axis, rotation around the Y axis, and rotation around the Z axis.
[0050] Figures 4 and 5 are schematic diagrams showing multiple candidate paths created by the path generation unit 620 in Figure 2, respectively. Note that the liquid discharge head 310 is not shown in Figures 4 and 5.
[0051] In the example shown in Figure 4, four candidate paths, indicated by solid arrows, are shown by varying at least one of the Y and Z coordinates of the center of the object W. Furthermore, Figure 4 also shows four candidate paths, indicated by dashed arrows, pointing in the opposite direction to the solid arrows, by varying the scanning direction (printing direction d) of the liquid discharge head 310. Therefore, a total of eight candidate paths are shown in Figure 4. In this case, the path generation unit 620 creates path data Dc for each of the eight candidate paths.
[0052] In the example shown in Figure 5, the orientation of the object W is rotated 90° around the Z-axis from the orientation of the object W shown in Figure 4. In Figure 5, with the orientation of the object W set in this way, three candidate paths are shown by solid arrows by changing the center coordinates of the object W. In addition, Figure 5 also shows three candidate paths indicated by dashed arrows, which point in the opposite direction to the solid arrows, by changing the scanning direction (printing direction d) of the liquid discharge head 310. Therefore, a total of six candidate paths are shown in Figure 5. In this case, the path generation unit 620 creates path data Dc for each of the six candidate paths.
[0053] The trajectory generation unit 630 generates trajectory data Do. The generation of trajectory data Do is performed based on the path data Dc and the printing conditions Dp1. Specifically, the trajectory generation unit 630 creates multiple candidate trajectories for the liquid ejection head 310 by changing the printing speed and printing acceleration included in the printing conditions Dp1. The trajectory generation unit 630 also creates trajectory data Do corresponding to each candidate. The creation of trajectory data Do is performed by associating the path data Dc with the printing speed and printing acceleration selected by the trajectory generation unit 630.
[0054] The memory unit 640 stores the aforementioned program PG1, arm information Da, print head information Dh, object information Dw, and printing conditions Dp1 and Dp2.
[0055] 1.2.2.External equipment The external device 700 includes a simulator unit 710, a display control unit 720, a display unit 730, an input unit 740, an input receiving unit 750, a print control unit 760, a print data generation unit 770, and a storage unit 780. These functional units of the external device 700 are realized by hardware comprising a processor, memory, and an external interface. An example of a processor is a CPU. An example of memory is a semiconductor memory that is either volatile memory such as RAM, or non-volatile memory such as ROM, EEPROM, or PROM, or both. An example of an external interface is a digital input / output port such as USB, or an Ethernet® port. The processor executes the program PG2 stored in the storage unit 780, thereby operating the above-mentioned functional units of the external device 700.
[0056] The simulator unit 710 simulates how the robot 200 would behave when it is operated based on candidate trajectories created by the robot controller 600. Simulation involves moving the robot 200 in a virtual space based on the candidate trajectories and calculating the rotation angle, angular velocity, angular acceleration, etc., of each rotation axis. The simulator unit 710 shown in Figure 2 also includes an evaluation value acquisition unit 714.
[0057] In this embodiment, the evaluation value acquisition unit 714 has a function to calculate an evaluation value that evaluates in advance the effect of the robot 200's movement on the printing result. The evaluation value acquisition unit 714 acquires arm information Da, print head information Dh, object information Dw, printing conditions Dp1, Dp2, and printing data Img as trajectory calculation information. The evaluation value acquisition unit 714 then calculates an evaluation value based on this trajectory calculation information. This evaluation value is a value that includes the amount of vibration of the robot arm 220, calculated by simulation. The amount of vibration of the robot arm 220, that is, the vibration amplitude of the tip of the robot arm 220, affects the amount of vibration of the liquid discharge head 310, and as a result, affects the printing result. The evaluation value calculated by the evaluation value acquisition unit 714 is such that a smaller value indicates a better printing result, and a larger value indicates a worse printing result. The evaluation value acquisition unit 714 calculates an evaluation value for each candidate trajectory.
[0058] Specifically, the calculation of evaluation values includes a calculation that converts each parameter affecting the printing result into an evaluation value based on the simulation results, and a calculation that sums the evaluation values obtained for each parameter. Parameters that affect the printing result include, for example, (1) the number of rotation axes driven by the robot arm 220, (2) the extreme values of angular acceleration during rotation, and (3) the timing at which the angular acceleration reaches its extreme value.
[0059] (1) The number of rotation axes driven in the robot arm 220 refers to the number of rotation axes that need to be driven when performing a simulation to move the liquid discharge head 310 along the candidate trajectories. The smaller this number, the smaller the amount of vibration of the robot arm 220 can be, and the lower the evaluation value can be. Therefore, the evaluation value acquisition unit 714 may have a function to calculate the evaluation value according to the number of rotation axes driven in the robot arm 220. Table 1 below shows examples of evaluation values when six rotation axes are driven (6-axis operation) and when three rotation axes are driven (3-axis operation). In 3-axis operation, the amount of vibration of the robot arm 220 is smaller compared to 6-axis operation, so the evaluation value can also be lower, as shown in Table 1.
[0060] [Table 1]
[0061] In 3-axis operation, the number of driven pivot axes is limited, thus restricting the paths the liquid discharge head 310 can move along. The paths shown in Figure 4 are examples of paths where 3-axis operation is possible. Specifically, all eight paths shown in Figure 4 are paths within a plane (YZ plane) that satisfies X=0. Therefore, when moving the liquid discharge head 310 along the eight paths shown in Figure 4, it is only necessary to operate the three pivot axes J2, J3, and J5, thus enabling 3-axis operation.
[0062] On the other hand, the six paths shown in Figure 5 are examples of paths where 3-axis movement is impossible, that is, paths where 6-axis movement is required. Specifically, all six paths shown in Figure 5 are paths in a plane that does not satisfy X=0. Therefore, when moving the liquid discharge head 310 along the six paths shown in Figure 5, it is necessary to operate all six axes.
[0063] In this way, by incorporating the number of driven rotation axes into the evaluation value, it is possible to obtain an evaluation value that can evaluate the printing results with greater accuracy. For this reason, in the case of a vertical articulated arm with four or more rotation axes, such as the robot arm 220, it is preferable to impose a constraint that limits the number of driven rotation axes to three or less, if the path allows.
[0064] (2) The extreme values of angular acceleration during rotation refer to the absolute values of the maximum or minimum values of angular acceleration for each rotation axis when performing a simulation to move the liquid discharge head 310 along the candidate trajectories. The smaller the extreme values of angular acceleration, the smaller the amount of vibration of the robot arm 220 can be, and the smaller the evaluation value can be. Also, in the robot arm 220, the closer the rotation axis is to the base 210, the greater the influence of the extreme values of angular acceleration on the amount of vibration. Therefore, the evaluation value acquisition unit 714 may have a function to calculate the evaluation value using a weighting coefficient that is weighted according to the information of the robot arm 220. Specifically, the rotation axis closer to the base 210 has a greater influence on the amount of vibration of the robot arm 220 than the rotation axis further from the base 210. Therefore, as shown in Table 2 below, a weighting coefficient is used that is larger for rotation axes closer to the base 210 and smaller for rotation axes further from the base 210.
[0065] [Table 2]
[0066] The evaluation value acquisition unit 714 calculates the evaluation value by multiplying the extreme values of the angular acceleration of each rotation axis by the weighting coefficients shown in Table 2. For example, if the maximum value of the angular acceleration of rotation axis J1 is 100 [deg / s] 2 If ], the evaluation value due to the angular acceleration of the pivot axis J1 is calculated using the weighting coefficients shown in Table 2, with the formula 100 × 10 = 1000. Also, the maximum value of the angular acceleration of the pivot axis J6 is 500 [deg / s]. 2 In this case, the evaluation value due to the angular acceleration of the pivot axis J6 is calculated using the formula 500 × 1 = 500. This allows both the angular acceleration of each pivot axis and the position of each pivot axis to be considered, making it possible to obtain an evaluation value that can reproduce the printing result with greater accuracy.
[0067] (3) The timing at which angular acceleration takes an extreme value refers to the timing at which the angular acceleration of each rotation axis takes a maximum or minimum value when performing a simulation of moving the liquid ejection head 310 along the candidate trajectory, during the period in which ink is ejected from the liquid ejection head 310 and printing is performed (printing period). Even if the liquid ejection head 310 is moving, if printing is not being performed, there is no problem even if the liquid ejection head 310 vibrates due to the angular acceleration taking an extreme value. On the other hand, if the liquid ejection head 310 vibrates due to the angular acceleration taking an extreme value during or before the printing period, the printing result may deteriorate. Therefore, the evaluation value acquisition unit 714 may have a function to calculate an evaluation value using a weighting coefficient that is weighted according to the relationship between the printing period and the timing at which angular acceleration takes an extreme value. Specifically, as shown in Table 3 below, if the angular acceleration takes an extreme value before the printing period and in the range close to immediately after the start of printing (a range of 0% to 60% of the printing period based on the printing start time), a relatively large weighting coefficient is set. On the other hand, even during the printing period, if the angular acceleration reaches an extreme value in the range close to the end of printing (between 60% and 100% of the printing period relative to the printing start time), or after the printing period, a relatively small weighting coefficient is set.
[0068] [Table 3]
[0069] The evaluation value acquisition unit 714 calculates the evaluation value by multiplying the extreme values of the angular acceleration of each pivot axis by the weighting coefficients shown in Table 3. For example, if the angular acceleration of the pivot axis is 100 [deg / s] before the printing period... 2 When a local maximum value is reached, the evaluation value attributable to the angular acceleration of the pivot axis is calculated using the weighting coefficients shown in Table 3, with the formula 100 × 5 = 500. This allows both the angular acceleration of each pivot axis and the timing at which the angular acceleration reaches its extreme value to be considered, enabling the determination of an evaluation value that can more accurately assess the printing results.
[0070] Figures 6 and 7 are graphs illustrating examples of the effect of the timing at which the angular acceleration of the rotation axis reaches its extreme value on the amount of vibration of the robot arm 220. Figures 6 and 7 show the time evolution of the angular acceleration of the rotation axes J2, J3, and J5 when the robot arm 220 is operated in three axes. Figure 6 is a graph of the three-axis operation when the tip of the robot arm 220 is moved in the direction toward the base 210. Figure 7 is a graph of the three-axis operation when the tip of the robot arm 220 is moved in the direction toward away from the base 210. Each path corresponds to the printing surface WF shown in Figure 3. The amount of vibration of the robot arm 220 was measured using a laser displacement meter under the conditions of a printing speed of 63.5 mm / s and a printing acceleration of 635 mm / s.
[0071] In Figure 6, there are two points P1 and P2 where the absolute value of the angular acceleration of the rotation axis is greater than the value at the time before and after. Of these, point P1 has a greater angular acceleration than point P2, so point P1 is the extremum in Figure 6. Figure 6 shows the robot arm 220 starting to move from point P1 and stopping at point P2. Therefore, in Figure 6, the timing when the angular acceleration of the rotation axis reaches its extremum is at the beginning of the period in which the robot arm 220 is moving. In this case, the amount of vibration of the robot arm 220 is relatively large throughout the entire period of movement. Therefore, it is thought that the accuracy of the printing result will decrease if printing is performed during this period of movement.
[0072] In contrast, Figure 7 also shows two points, P1 and P2, where the angular acceleration of the rotation axis is greater than that of the preceding and succeeding time points. Of these, point P2 has a greater angular acceleration than point P1, so point P2 is the extremum in Figure 7. Figure 7 shows the robot arm 220 starting to move from point P1 and stopping at point P2. Therefore, in Figure 7, the timing when the angular acceleration of the rotation axis reaches its extremum is at the end of the period in which the robot arm 220 is moving. In this case, the amount of vibration of the robot arm 220 is relatively small throughout the entire movement period. Therefore, it is thought that printing during this movement period can relatively improve the accuracy of the printing results.
[0073] Based on the measurement results of the amount of vibration shown in Figures 6 and 7, it can be said that it is desirable for the angular acceleration of the rotation axis to not reach its extreme value before or during the printing period.
[0074] The display control unit 720 has the function of controlling the operation of the display unit 730 and displaying arbitrary information on the display unit 730. The display unit 730 has the function of displaying information to inform the user. Examples of the display unit 730 include a liquid crystal display device.
[0075] The input unit 740 has the function of allowing the user to input arbitrary information. Examples of the input unit 740 include a keyboard, mouse, touch panel, etc. The input receiving unit 750 has the function of controlling the operation of the input unit 740 and receiving the information entered into the input unit 740.
[0076] The print control unit 760 has a function to output a control signal SI that controls the operation of the printer controller 340 based on the print data. The control signal SI includes, for example, a digital signal for specifying the operating state of the piezoelectric element 311 of the liquid ejection head 310 (described later), a timing signal for defining the driving timing of the piezoelectric element 311, and so on.
[0077] The print data generation unit 770 has the function of creating print data Img. Print data Img is information that indicates a two-dimensional or three-dimensional image to be printed on the print surface WF.
[0078] The memory unit 780 stores the program PG2, print data Img, etc. The memory unit 780 may also store at least some of the information stored by the aforementioned memory unit 640.
[0079] 1.3.Printing method Next, a printing method including a track creation method according to the first embodiment will be described.
[0080] Figure 8 is a flowchart illustrating a printing method including a track creation method according to the first embodiment.
[0081] The trajectory creation method shown in Figure 8 includes an information acquisition step S102, an evaluation value acquisition step S104, a trajectory display step S106, a trajectory selection step S108, and a printing step S110. Each step will be described in order below.
[0082] 1.3.1. Information acquisition process In the information acquisition process S102, the trajectory creation device 10 acquires arm information Da, print head information Dh, object information Dw, printing conditions Dp1 and Dp2, and printing data Img as trajectory calculation information.
[0083] Of these, arm information Da, print head information Dh, object information Dw, and printing conditions Dp1 are pre-entered by the user and stored in the storage unit 640 of the robot controller 600.
[0084] Furthermore, the user inputs the print conditions Dp2 and print data Img into the external device 700. The external device 700 outputs the input print conditions Dp2 and print data Img to the robot controller 600.
[0085] 1.3.2. Evaluation Value Acquisition Process In the evaluation value acquisition process S104, the trajectory creation device 10 calculates multiple trajectory candidates based on the trajectory calculation information. The trajectory creation device 10 also calculates an evaluation value for each trajectory candidate, which includes the amount of wobble of the robot arm 220. An evaluation value including the amount of wobble refers to the amount of wobble itself or a value obtained by performing an arbitrary calculation on the amount of wobble. In this embodiment, as described above, the evaluation value acquisition unit 714 calculates the evaluation value including the amount of wobble. By calculating such evaluation values, it is possible to quantitatively evaluate multiple trajectory candidates.
[0086] Figure 9 is a flowchart illustrating the evaluation value acquisition process S104 shown in Figure 8. The evaluation value acquisition process S104 is further divided into several steps, and as shown in Figure 9, it has steps S202, S204, S206, S208, S210, and S212.
[0087] In step S202, the path generation unit 620 calculates several candidate paths through which the liquid discharge head 310 will pass. For example, as shown in Figures 4 and 5, if the object W is a cylinder and the printing surface WF is the side surface of the cylinder, the path through which the liquid discharge head 310 will pass can be defined by the starting angle a when the liquid discharge head 310 starts moving during printing, the radius r and central angle θ of the printing area relative to the printing surface WF, the center coordinates (x,y,z), orientation (u,v,w) of the object W, and the printing direction d. In this case, within the range in which the robot arm 220 can operate, different candidate paths can be calculated by changing at least one of the following: the starting angle a, the center coordinates (x,y,z), the orientation (u,v,w), and the printing direction d. The path generation unit 620 generates path data Dc corresponding to each candidate. These parameters are appropriately changed depending on the shape of the object W, etc.
[0088] In step S204, the simulator unit 710 determines whether the robot arm 220 can operate according to the calculated path candidates based on the path data Dc. If there is an operable path, the process proceeds to step S206. If there is no operable path, printing is terminated. In this case, if necessary, the display unit 730 may be configured to display a message indicating that there is no operable path.
[0089] In step S206, a first loop is initiated, repeating steps S208 and S210 for all paths that were determined to be operable in step S204.
[0090] In step S208, the trajectory generation unit 630 calculates several candidate trajectories through which the liquid discharge head 310 will pass. The trajectory can be defined by path data Dc, printing speed, and printing acceleration. Therefore, by changing at least one of the printing speed and printing acceleration, different candidate trajectories can be calculated. The trajectory generation unit 630 generates trajectory data Do corresponding to each candidate.
[0091] In step S210, a second loop is initiated, repeating step S212 for all the trajectories calculated in step S208.
[0092] In process S212, the evaluation value acquisition unit 714 calculates the amount of wobble of the robot arm 220 for each candidate trajectory, and also calculates an evaluation value that includes the amount of wobble. With the above steps completed, the evaluation value acquisition process S104 is finished.
[0093] 1.3.3.Trajectory display process In the trajectory display process S106, the trajectory creation device 10 displays multiple trajectory candidates and the calculated evaluation values on the display unit 730. In the trajectory display process S106, evaluation values may be displayed for all trajectory candidates, but for example, based on the aforementioned evaluation values, a predetermined number or less may be extracted from those with lower evaluation values, i.e., those evaluated as having high print results, and only the selected trajectory candidates and their evaluation values may be displayed. This allows the user to easily identify trajectory candidates with good evaluation values.
[0094] Figure 10 shows an example of the user interface displayed on the display unit 730 during the trajectory display process S106 shown in Figure 8.
[0095] The dialog box 732 shown in Figure 10 displays three candidate trajectories as recommended trajectories, sorted from lowest to highest evaluation value. Each candidate trajectory has a radio button 734, which accepts user selection via an input device 740 such as a mouse. The dialog box 732 also has a selection button 735. When the selection button 735 is pressed via an input device 740 such as a mouse, one trajectory is selected.
[0096] Furthermore, Figure 10 shows the candidate trajectories represented by the numbers 1 to 3. These numbers, for example, have hyperlinks associated with them. When a hyperlink is selected via the input unit 740, such as a mouse, the display content of the display unit 730 changes so that trajectory display screens 736, 737, and 738, which show the simulation results of the candidate trajectories, are displayed.
[0097] The trajectory display screen 736 shows the simulation results for the first trajectory candidate. This screen displays, for example, the position and orientation of the liquid discharge head 310 at the start and end points of the trajectory, the time required from the start of operation from the home position of the robot arm 220 to the completion of printing, and the position and orientation of the object W. These items contain useful information for the user when selecting a trajectory, and therefore it is preferable to display them. The trajectory display screens 737 and 738 also show the simulation results for the second and third trajectory candidates, similar to the trajectory display screen 736. Note that in Figure 10, for illustrative purposes, all trajectory display screens 736, 737, and 738 are shown simultaneously.
[0098] 1.3.4. Orbital Selection Process In the trajectory selection process S108, the user is prompted to select one of several trajectory candidates. Specifically, in the dialog box 732 displayed on the display unit 730, with one of the three radio buttons 734 selected, the user is prompted to press the selection button 735 via an input unit 740 such as a mouse. This selects one trajectory from the multiple trajectory candidates. In other words, the trajectory creation device 10 creates the trajectory for the liquid ejection head 310 for printing.
[0099] 1.3.5.Printing process In the printing process S110, the liquid discharge head 310 is moved along the trajectory created by the trajectory creation method, and printing is performed on the printing surface WF of the object W.
[0100] Figure 11 is a flowchart illustrating the printing process S110 shown in Figure 8. The printing process S110 is further divided into several steps, and as shown in Figure 11, it has steps S302, S304, and S306.
[0101] In step S302, the position and orientation of the object W are displayed on the display unit 730. This allows the user to more accurately adjust the position and orientation of the actual object W to be printed in accordance with the displayed content.
[0102] In step S304, the system accepts an operation to start printing. For example, the display unit 730 displays a user interface, and the system accepts an operation to start printing via an input unit 740 such as a mouse.
[0103] In process S306, the robot controller 600 and the external device 700 start printing in response to the operation to start printing. As a result, ink is ejected from the liquid ejection head 310 while the liquid ejection head 310 is moved relative to the robot, and printing is performed.
[0104] 2. Second Embodiment Next, a printing apparatus having a track creation device and a printing method including a track creation method according to the second embodiment will be described.
[0105] Figure 12 is a block diagram showing the configuration of a printing apparatus 100A having a track creation device 10A according to the second embodiment.
[0106] The second embodiment will be described below, focusing on the differences from the first embodiment, and similar matters will be omitted from the description. In the figures according to this embodiment, components similar to those in the first embodiment are denoted by the same reference numerals.
[0107] The second embodiment is the same as the first embodiment, except that the method for obtaining evaluation values is different. In the first embodiment, the amount of vibration of the robot arm 220 is calculated based on a simulation, and the evaluation value acquisition unit 714 calculates an evaluation value based on the calculated amount of vibration. In contrast, in the second embodiment, the amount of vibration of the robot arm 220 is measured, and the evaluation value acquisition unit 714A calculates an evaluation value based on the measured amount of vibration.
[0108] The printing apparatus 100A shown in Figure 12 includes a trajectory creation device 10A and a vibration sensor 330 provided on the liquid discharge head unit 300. The vibration sensor 330 detects the amplitude of vibrations generated in the robot arm 220. Examples of the vibration sensor 330 include a displacement sensor, an angular velocity sensor, and an acceleration sensor.
[0109] Furthermore, the trajectory creation device 10A has an evaluation value acquisition unit 714A. The evaluation value acquisition unit 714A measures the amount of vibration of the robot arm 220 based on the detection value of the vibration sensor 330. The evaluation value acquisition unit 714A then acquires an evaluation value that includes the measured amount of vibration of the robot arm 220.
[0110] Figure 13 is a flowchart illustrating a printing method including a track creation method according to the second embodiment.
[0111] The printing method according to the second embodiment includes an evaluation value acquisition step S104A, as shown in Figure 13. The evaluation value acquisition step S104 calculates an evaluation value based on the measured amount of vibration of the robot arm 220.
[0112] Specifically, first, the robot arm 220 is actually moved according to several candidate trajectories. Printing is not required at this stage. Then, during the process of actually moving the robot arm 220, the vibration sensor 330 detects a value Sb. Based on this, the evaluation value acquisition unit 714A can measure the amount of vibration when the robot arm 220 is moved according to each candidate trajectory, based on the vibration sensor 330's detected value Sb, and acquire an evaluation value that includes the amount of vibration. The measured amount of vibration is highly likely to faithfully reproduce the amount of vibration when printing is performed. Therefore, the evaluation value acquired by the evaluation value acquisition unit 714A includes the measured amount of vibration, which can contribute to creating trajectories that yield more reliable and accurate printing results.
[0113] On the other hand, in the first embodiment described above, the amount of vibration can be calculated and an evaluation value can be obtained without actually moving the robot arm 220. Therefore, the time and effort required to obtain the evaluation value can be reduced, thereby improving efficiency.
[0114] 3. Effects of each embodiment As described above, the trajectory creation method according to each embodiment is a method for creating the trajectory of a liquid ejection head 310 when printing on an object W using a liquid ejection head 310 that ejects liquid onto an object W and a robot arm 220 that changes the relative position of the liquid ejection head 310 with respect to the object W. This trajectory creation method includes an information acquisition step S102, evaluation value acquisition steps S104 and S104A, a trajectory display step S106, and a trajectory selection step S108. In the information acquisition step S102, information on the robot arm 220 (arm information Da), information on the liquid ejection head 310 (print head information Dh), information on the object W (object information Dw), printing conditions (printing conditions Dp1 and Dp2), and printing data (printing data Img) are acquired as trajectory calculation information. In the evaluation value acquisition steps S104 and S104A, multiple trajectory candidates are calculated based on the trajectory calculation information, and an evaluation value including the amount of wobble of the robot arm 220 is acquired for each trajectory candidate. In the trajectory display step S106, the multiple trajectory candidates and the evaluation values are displayed on the display unit 730. In the trajectory selection step S108, one of the multiple trajectory candidates is selected.
[0115] According to the trajectory creation method described above, evaluation values including the amount of vibration of the robot arm 220 are obtained for multiple trajectory candidates, and the multiple trajectory candidates are displayed on the display unit 730 along with the evaluation values, thereby supporting the user in selecting an appropriate trajectory. In other words, since the evaluation value including the amount of vibration of the robot arm 220 affects the printing result, displaying it together with the trajectory candidates contributes to the easy selection of an appropriate trajectory. Then, by selecting an appropriate trajectory and performing printing according to the selected trajectory, good printing results, that is, highly accurate printing results, can be easily obtained.
[0116] Furthermore, the trajectory display process S106 includes the operation of extracting candidates to be displayed on the display unit 730 from among multiple candidate trajectories, according to the evaluation value.
[0117] With this configuration, it becomes possible to extract candidates with small evaluation values from among multiple candidate orbits. Such candidates have a high probability of yielding good printing results. Therefore, by including the above-described operation in the orbit display process S106, highly accurate printing results can be easily obtained.
[0118] Furthermore, the trajectory display process S106 includes the operation of calculating an evaluation value for pre-evaluating the printing result using a weighting coefficient and displaying it on the display unit 730. The weighting coefficient is a coefficient weighted according to the information of the robot arm 220 (arm information Da).
[0119] The arm information Da includes the arrangement of the rotation axis of the robot arm 220, which affects the amount of vibration of the liquid discharge head 310. Therefore, the weighting coefficient is weighted according to the arm information Da, and by calculating the evaluation value using this weighting coefficient, the arm information Da can be reflected in the evaluation value. This makes it possible to further improve the reliability of the evaluation value and create a trajectory that yields more accurate printing results.
[0120] Furthermore, in each embodiment, it is preferable that the robot arm 220 comprises a plurality of arms 221 to 226 (links) and joints 231 to 236 that have pivot axes J1 to J6 and connect the arms to each other. And it is preferable that the aforementioned weighting coefficients are weighted according to the angular acceleration of these pivot axes J1 to J6.
[0121] The angular acceleration of the rotation axes J1 to J6 affects the amount of wobble of the robot arm 220. Therefore, the weighting coefficient is weighted according to the angular acceleration, and by calculating the evaluation value using this weighting coefficient, the angular acceleration can be reflected in the evaluation value. This can further improve the reliability of the evaluation value and create a trajectory that yields more accurate printing results.
[0122] Furthermore, in each embodiment, it is preferable that the weighting coefficients described above are weighted according to the relationship between the printing period and the timing at which the angular acceleration reaches its extreme value.
[0123] The relationship between the printing period and the timing of the angular acceleration reaching its extreme value affects the printing result. Therefore, the weighting coefficients are weighted according to the aforementioned relationship, and by calculating the evaluation value using these weighting coefficients, the aforementioned relationship can be reflected in the evaluation value. This increases the reliability of the evaluation value and makes it possible to create a trajectory that yields more accurate printing results.
[0124] Furthermore, in each embodiment, it is preferable that the track display step S106 includes the operation of displaying the time required for printing (printing time) on the display unit 730.
[0125] The printing time contains useful information for the user when selecting a track. Therefore, by displaying the printing time on the display unit 730, the user can select a more appropriate track.
[0126] Furthermore, in each embodiment, the robot arm 220 preferably comprises a plurality of arms 221 to 226 (links) and joints 231 to 236 that have rotation axes J1 to J6 and connect the arms, and is a vertical multi-joint arm with four or more rotation axes. In this case, it is preferable that the trajectory calculation information includes a constraint that limits the number of rotation axes to three or less.
[0127] This reduces the number of rotating axes to be driven, and consequently, the evaluation values, including the amount of wobble of the robot arm 220, can be reduced. As a result, it is possible to create a trajectory that yields more accurate printing results.
[0128] Furthermore, in each embodiment, the object W includes a curved printing surface WF. The printing in the printing process S110 is performed on the printing surface WF.
[0129] For printing on a curved printing surface WF, the printing method including the trajectory creation method according to this embodiment is more effective, and printing costs can be easily reduced.
[0130] Furthermore, the trajectory creation devices 10 and 10A according to each embodiment are devices that create the trajectory of a liquid ejection head 310 when printing on an object W using a liquid ejection head 310 that ejects liquid onto an object W and a robot arm 220 that changes the relative position of the liquid ejection head 310 with respect to the object W. The trajectory creation device 10 has a trajectory generation unit 630, evaluation value acquisition units 714 and 714A, a display control unit 720, and an input receiving unit 750. The trajectory generation unit 630 calculates a plurality of trajectory candidates based on trajectory calculation information including information on the robot arm 220 (arm information Da), information on the liquid ejection head 310 (print head information Dh), information on the object W (object information Dw), printing conditions (printing conditions Dp1 and Dp2), and printing data (printing data Img). The evaluation value acquisition units 714 and 714A acquire an evaluation value for each trajectory candidate, including the amount of vibration of the robot arm 220. The display control unit 720 displays multiple trajectory candidates and evaluation values on the display unit 730. The input receiving unit 750 receives input to select one of the multiple trajectory candidates.
[0131] With the trajectory creation device 10 described above, evaluation values including the amount of vibration of the robot arm 220 are calculated for multiple trajectory candidates, and the multiple trajectory candidates are displayed on the display unit 730 along with the evaluation values, thereby supporting the user in selecting an appropriate trajectory. In other words, since the evaluation value including the amount of vibration of the robot arm 220 affects the printing result, displaying it together with the trajectory candidates contributes to the easy selection of an appropriate trajectory. Then, by selecting an appropriate trajectory and performing printing according to the selected trajectory, good printing results, that is, highly accurate printing results, can be easily obtained.
[0132] Although the trajectory creation method and trajectory creation apparatus according to the present invention have been described above based on the illustrated embodiments, the present invention is not limited thereto.
[0133] For example, the trajectory creation method according to the present invention may have additional steps for any purpose added to the above embodiment. Furthermore, the trajectory creation apparatus according to the present invention may have each part of the above embodiment replaced with any component having a similar function, or may have additional components added to the above embodiment. [Explanation of Symbols]
[0134] 10...Trajectory creation device, 10A...Trajectory creation device, 100...Printing device, 100A...Printing device, 200...Robot, 210...Base, 220...Robot arm, 221...Arm, 222...Arm, 223...Arm, 224...Arm, 225...Arm, 226...Arm, 230...Arm drive mechanism, 231...Joint, 232...Joint, 233...Joint, 234...Joint, 235...Joint, 236...Joint, 300...Liquid discharge head unit, 310...Liquid discharge head, 311...Piezoelectric element, 320...Pressure regulating valve 330...Vibration sensor, 340...Printer controller, 400...Liquid storage unit, 500...Supply channel, 510...Upstream channel, 520...Downstream channel, 600...Robot controller, 610...Arm control unit, 620...Path generation unit, 630...Trajectory generation unit, 640...Storage unit, 700...External device, 710...Simulator unit, 714...Evaluation value acquisition unit, 714A...Evaluation value acquisition unit, 720...Display control unit, 730...Display unit, 732...Dialog box, 734...Radio buttons, 735...Selection buttons, 736 ...Trajectory display screen, 737...Trajectory display screen, 738...Trajectory display screen, 740...Input unit, 750...Input reception unit, 760...Print control unit, 770...Print data generation unit, 780...Storage unit, D1...Drive information, Da...Arm information, Dc...Path data, Dh...Print head information, Do...Trajectory data, Dp1...Printing conditions, Dp2...Printing conditions, Dw...Object information, Img...Print data, J1...Rotating axis, J2...Rotating axis, J3...Rotating axis, J4...Rotating axis, J5...Rotating axis, J6...Rotating axis, PD...Drive pulse, PG1...Prog Ram, PG2...Program, S102...Information acquisition process, S104...Evaluation value acquisition process, S104A...Evaluation value acquisition process, S106...Trajectory display process, S108...Trajectory selection process, S110...Printing process, S202...Process, S204...Process, S206...Process, S208...Process, S210...Process, S212...Process, S302...Process, S304...Process, S306...Process, Sb...Detected value, SI...Control signal, Sk...Control signal, W...Object, WF...Printing surface, a...Starting angle, d...Printing direction, r...Radius, θ...Central angle
Claims
1. A method for creating the trajectory of a liquid ejection head when printing on an object using a liquid ejection head that ejects liquid onto the object and a robot arm that changes the relative position of the liquid ejection head with respect to the object, An information acquisition step in which information about the robot arm, information about the liquid discharge head, information about the target object, the printing conditions, and the printing data are acquired as trajectory calculation information, Based on the trajectory calculation information, a plurality of candidate trajectories are calculated, and an evaluation value acquisition step is performed to obtain an evaluation value including the amount of wobble of the robot arm for each candidate trajectory. A trajectory display step in which multiple candidate trajectories and the evaluation value are displayed on a display unit, A trajectory selection step involves selecting one of several candidate trajectories, A method for creating a trajectory, characterized by having the following features.
2. The trajectory creation method according to claim 1, wherein the trajectory display step includes the operation of extracting candidates to be displayed on the display unit from a plurality of candidate trajectories according to the evaluation value.
3. The trajectory creation method according to claim 1 or 2, wherein the trajectory display step includes the operation of calculating the evaluation value using weighting coefficients weighted according to the information of the robot arm and displaying it on the display unit.
4. The robot arm comprises a plurality of links and joints having a pivot axis that connects the links, The trajectory creation method according to claim 3, wherein the weighting coefficient is weighted according to the angular acceleration of the pivot axis.
5. The trajectory creation method according to claim 4, wherein the weighting coefficient is weighted according to the relationship between the period during which the printing is performed and the timing at which the angular acceleration takes an extreme value.
6. The trajectory creation method according to claim 1 or 2, wherein the trajectory display step includes an operation to display the time required for printing on the display unit.
7. The robot arm comprises a plurality of links and joints having pivot axes that connect the links, and is a vertical multi-joint arm with four or more pivot axes. The trajectory creation method according to claim 1 or 2, wherein the trajectory calculation information includes a constraint condition that limits the number of rotation axes to three or less.
8. The aforementioned object includes a curved surface, The method for creating a track according to claim 1 or 2, wherein the printing is performed on the curved surface.
9. A device for creating the trajectory of the liquid ejection head when printing on an object using a liquid ejection head that ejects liquid onto the object and a robot arm that changes the relative position of the liquid ejection head with respect to the object, A trajectory generation unit calculates a plurality of candidate trajectories based on trajectory calculation information including information on the robot arm, information on the liquid discharge head, information on the target object, printing conditions, and printing data. For each of the candidate trajectories, an evaluation value acquisition unit acquires an evaluation value including the amount of wobble of the robot arm, A display control unit that displays multiple candidate trajectories and the evaluation values on a display unit, An input receiving unit that receives input to select one of several candidate trajectories, A trajectory creation device characterized by having the following features.
Citation Information
Patent Citations
A4 axis optimization method of six-axis robot under three-dimensional printing
CN115229784A
Route search method, route evaluation method, route search system, control device, robot, and program
JP2014087875A
Device and method for carrying out printing on three-dimensional object
JP2014111307A
Robot, control method for robot, program, and route creation device
JP2015037818A
System, and method for manufacture and control of system
JP2018075709A