The present disclosure relates to the field of robotic control applied to automated painting, and in particular to a method for printing an image onto a surface using a robot-carried printhead.
Pixel printing is the dispensing of one or more paint colors onto selected areas of a plane or curved surface, to produce an image. Images which are wider than the printhead are produced by printing multiple parallel image strips, which are generated under an assumption that the printhead follows corresponding reference paths over the surface. In an optimal execution, the actual path of the printhead follows the reference path. Due to wear, mechanical inaccuracies, suboptimal position sensors or incomplete controllability of the printhead's motion, however, path deviations from the reference path have to be expected. In unfortunate cases, they will produce alignment errors in the printed image, such as visible gaps or overlaps.
DE102010004496 discloses a robot with a print head and a method for controlling print head matrices and correcting trajectory deviations. A three-dimensional path deviation between a desired path of the printhead and an actual path is detected during productive operation, by means of an integrated path-detecting sensor. If a deviation is found, the printhead matrix is controlled as a function of this deviation.
One objective of the present disclosure is to propose method and devices by which deviations from the intended printhead path can be compensated. It is particularly interesting to provide such compensation when the printhead is carried by a robot arm. A further objective is to compensate path deviations without a need to replace existing robot equipment or modify the equipment permanently.
At least some of these objectives are achieved by the invention as defined by the independent claims. The dependent claims relate to advantageous embodiments of the invention.
In a first aspect of the invention, there is provided a method of printing an image onto a surface using a printhead carried by a robot arm. The image may be monochrome or comprise multiple colors. The method is directed to the case where an image which exceeds the predetermined print width w of the printhead is to be printed. If the image can be printed by a single pass of the printhead, deviations from the reference printhead path will displace the printed image but generally do not produce visible defects of the type discussed above. In a next step, the image is split into at least two image strips, each contained within a reduced print width wo which is less than the predetermined print width, and associated printhead paths are generated. In response to detecting a deviation from the printhead paths when the robot arm is fed with a first control signal, the image strips are modified to compensate the detected deviation by applying a local lateral shift. Preferably, while the deviation is detected during a dry run, the first control signal is equivalent to a future control signal that is to be used during productive operation, i.e., printing runs.
Conceptually, the image strips may be understood as pixel patterns in a local reference frame centered at a point on the printhead, where, for each longitudinal position y, pixels are active only in an area whose width is the reduced print width wo. The inactive pixels, which occupy a total width of w−w0, also form part of image strips. Before any lateral shift has been applied, the inactive pixels may represent two edges that have equal widths wL=wR=(w−w0)/2. The lateral shift does not alter the values of the active pixels but moves them to the left (or the right), as needed. To carry out a lateral shift of d units, the width wR of the right (left) edge is increased and the width wL of the left (right) edge is shrunk by this amount:
The area with the active pixels fits within the print width w as long as 2|d|≤w−w0. If the edges with inactive pixels are initiated with unequal widths wL≠wR, a larger shift in one of the directions may be tolerated, in extreme cases up to w−w0.
Compared with the background art reviewed above, where path deviations are detected during productive operation, the first aspect of the present invention enables more efficient compensation of systematic (or non-aleatoric) errors, related to wear, mechanical inaccuracies, suboptimal position sensors or incomplete controllability of the printhead's motion. Systematic errors tend to repeat identically for every run, though possibly overlaid with process noise and aleatoric errors. Thus, it is advantageous to detect the systematic error component accurately in a preliminary run and derive a compensation (local lateral shift) that is fit to be applied in all productive runs. Indeed, an operator has a reasonable chance to discover whether the sensing of the printhead position is accurate during the preliminary run (and take appropriate action), but it would be a tedious task to monitor the accuracy throughout productive operation and check for failures and incidents. The preliminary run may be a dry run or a printing run.
Another advantage associated with the present invention is that accurate printhead positioning, which is useful during the preliminary run, is merely optional in productive operation. Accordingly, even a robot arm that lacks high-accuracy position sensors can be used with the present compensation method, namely, if the path deviation is sensed using a detachable highly accurate position sensor. Besides, a single detachable position sensor can be used with multiple robot arms, which limits capital investment. As used herein, a position sensor is “detachable” if those sensor components which must be arranged at the printhead during sensing—this may include active or passive components—can be separated nondestructively from the printhead after sensing has ended. Alternatively, contactless position sensing, such as by a camera system, can be used.
In a second aspect of the present invention, there is provided a controller adapted to control a printhead carried by a robot arm to print an image onto a surface. The controller comprises a first interface configured to accept image data and a position sensor signal, a second interface configured to output a printhead control signal, and processing circuitry configured to execute the above method.
The invention further relates to a computer program containing instructions for causing a computer, or the controller in particular, to carry out the above method. The computer program may be stored or distributed on a data carrier. As used herein, a “data carrier” may be a transitory data carrier, such as modulated electromagnetic or optical waves, or a non-transitory data carrier. Non-transitory data carriers include volatile and non-volatile memories, such as permanent and non-permanent storage media of magnetic, optical or solid-state type. Still within the scope of “data carrier”, such memories may be fixedly mounted or portable.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to “a/an/the element, apparatus, component, means, step, etc.” are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order described, unless explicitly stated.
Aspects and embodiments are now described, by way of example, with reference to the accompanying drawings, on which:
The aspects of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, on which certain embodiments of the invention are shown. These aspects may, however, be embodied in many different forms and should not be construed as limiting; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and to fully convey the scope of all aspects of the invention to those skilled in the art. Like numbers refer to like elements throughout the description.
A controller 210 for controlling the printhead 230 is provided. In the embodiment shown in
The example controller 210 in
The position sensor's 232 tolerance is preferably less than the robot arm's 220 tolerance. In some embodiments, the tolerance of the position sensor 232 is 0.1 mm or less. These embodiments may be suitable for printing images on surfaces that have a total extent of the order of 0.1 m, 1 m or 10 m. Moreover, a position sensor 232 with a tolerance of 0.1 mm or less is also meaningful to use with a robot arm 220 whose tolerance is 0.5 mm or more.
The controller 210 further comprises a second interface 214 which is configured to output a printhead control signal. In the multifunctional embodiment shown in
In
Returning to
In a second step 112, to enable the printhead 230 to print the image A, the image A is split into at least two image strips which are each contained within a reduced print width w0 and associated printhead paths are generated. The reduced print width w0 is less than the print width w of the printhead 230. It is noted that the criterion as to whether splitting is needed refers to the print width w, but the width of the image strips is the reduced print width w0 or less.
To illustrate the effects of this step 112,
In a third step 114 of the method 100, a deviation from the printhead paths 1, 2, 3 is detected while the robot arm is fed with a first control signal. The first control signal may order the robot arm 220 to move the printhead 230 along the paths 1, 2, 3. The third step 114 may be performed during a dry run but could also be performed during a printing run, including productive operation.
The detection of the deviation is straightforward for a plane surface 290. If the surface 290 is curved, the deviation at a point of the surface 290 may detected in the tangent plane at that point. In the tangent plane, the deviation detection is additionally restricted to the transverse direction, i.e., the deviation shall be orthogonal to the printhead path.
In a fourth step 116, the image strips are modified to compensate the detected deviation by applying a local lateral shift. In the running example, the first and third image strips A1, A3 are not in need of modification since no deviation from the first and third printhead paths 1, 3 was detected. For the second image strip A2, however, it is suitable to apply a local lateral shift, variable over the length of the path 2, which cancels the deviation. An aim of the compensation is to make the pixel pattern of the second image strip A2 end up at or near its intended location on the surface 290. The local lateral shift may for example be the negative of the difference function, −d2(y).
In further developments of the fourth step 116, a deviation from one printhead path k can be compensated more efficiently and/or less intrusively by not only modifying 116.1 the associated image strip Ak but also modifying 116.2 one or both adjacent image strips Ak±1. This may for example enable compensation of relatively large deviations. As
will locally be close to zero. In the mentioned developments of the fourth step 116, therefore, the compensation of a deviation is distributed across several image strips, by shifting the first image strip A1 by a constant D; shifting the second image strip A2 by D−d2(y) units; and shifting the third image strip A3 by D units. By choosing D such that
such joint shifting of the image strips can ensure that wR>0 for all y, though at the price of displacing the printed image A on the surface 290 by D units.
In still other embodiments of the fourth step 116, the detected deviations for all the printhead paths 1, 2, 3 are considered jointly. For example, the compensations can be found by solving a system of equations. Separate systems of equations can be formulated and solved for different longitudinal segments of the printhead paths 1, 2, 3, wherein a smoothness condition (patching condition) between consecutive segments may be applied. Alternatively or additionally, the modified image strips are obtained by solving an optimization problem using an objective function which takes into account the detected deviations and which penalizes large local lateral shifts and/or poor alignment of image strips.
In an optional further step 118 of the method 100, the modified image strips are printed onto the surface 290 while the robot arm 220 is fed with a control signal that is equivalent to the first control signal. Step 118 may be performed in productive operation. Since it is reasonable to assume that the systematic (non-aleatoric) component of the printhead's 230 deviation from the printhead paths 1, 2, 3 will repeat in a near-identical fashion, an efficient and near-complete compensation can be expected.
The aspects of the present disclosure have mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2021/069760 | 7/15/2021 | WO |