Printing
09975349 ยท 2018-05-22
Assignee
Inventors
Cpc classification
B41J2/375
PERFORMING OPERATIONS; TRANSPORTING
International classification
B41J2/35
PERFORMING OPERATIONS; TRANSPORTING
B41J2/375
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A method for controlling a thermal printhead of a printer. The printhead comprises an array of printing elements. The method may comprise performing a plurality of printing operations, each printing operation comprising energization of one or more printing elements. A respective energization value is determined for each printing element based upon energizations of that printing element during said printing operations. A printhead control signal is generated for the printhead for a subsequent printing operation based upon the energization values of a predetermined subset of the printing elements.
Claims
1. A method for controlling a thermal printhead of a printer, the printhead comprising an array of printing elements, the method comprising: performing a plurality of printing operations, each printing operation comprising energisation of one or more printing elements; determining, for each printing element, a respective energisation value based at least in part upon whether or not that printing element was energized during said printing operations; generating a printhead control signal for the printhead for a subsequent printing operation based upon the energisation values of a predetermined subset of the printing elements; wherein the printhead control signal affects energisation of a plurality of printing elements across the entire printhead in the subsequent printing operation in a way that is the same for each of the plurality of printing elements.
2. A method according to claim 1, wherein the predetermined subset of the printing elements is a subset of spatially adjacent printing elements.
3. A method according to claim 1, wherein generating the printhead control signal comprises generating a first printhead control signal if said energisation values of the predetermined subset of printing elements satisfy a predetermined criterion and generating a second printhead control signal if said predetermined subset of printing elements do not satisfy the predetermined criterion.
4. A method according to claim 1, wherein said printhead control signal affects energy dissipated by the plurality of printing elements in the subsequent printing operation.
5. A method according to claim 1, wherein generating the printhead control signal comprises generating one or more timing signals controlling one or more times for which printing elements are energised in said subsequent printing operation.
6. A method according to claim 1, wherein determining an energisation value for a respective one of said printing elements comprises summing a plurality of energy values, each energy value being associated with one of said plurality of printing operations.
7. A method according to claim 1, wherein the method is carried out at a printer controller external of the printhead.
8. A method according to claim 7, wherein the printhead comprises a printhead controller and wherein the method further comprises, at the printhead controller, for each of a plurality of printing elements to be energised, determining a printing element control signal based upon energisation of one or more printing elements in a printing operation which precedes the subsequent printing operation.
9. A method according to claim 8, wherein said printing element control signal for a respective printing element is determined based upon energisation of the respective printing element in one or more preceding printing operations.
10. A method according to claim 9, wherein said printing element control signal for a respective printing element is further determined based upon energisation of one or more spatially adjacent printing elements in one or more preceding printing operations.
11. A method according to claim 8, wherein determining a printing element control signal comprises determining a time for which the printing element is to be energised in the subsequent printing operation.
12. A method according to claim 11, wherein determining the time for which the printing element is to be energised in the subsequent printing operation comprises selecting one of a plurality of times for which the printing element should be energised in the subsequent printing operation.
13. A method according to claim 12, wherein said plurality of times are specified by said printhead control signal.
14. A method according to claim 1, wherein generating the printhead control signal based upon the energisation values of the predetermined subset of printing elements comprises: obtaining first data indicating a relationship between a first energisation value and a first printhead control signal; processing said first data and said energisation values of the predetermined subset of printing elements to generate said printhead control signal.
15. A method according to claim 14, further comprising obtaining second data indicating a relationship between a second energisation value and a second printhead control signal; wherein processing said first data and said energisation values of the predetermined subset of printing elements comprises processing said second data such that said generated printhead control signal is based upon said first data and said second data.
16. A method according to claim 15, wherein said processing said first data, said second data and said energisation values of the predetermined subset of printing elements comprises: determining a relationship between said first energisation value, said second energisation value and said energisation values of the predetermined subset of printing elements; and generating said printhead control signal based upon said first printhead control signal and the second printhead control signal according to the determined relationship.
17. A method according to claim 1, wherein generating a printhead control signal based upon the energisation values of a predetermined subset of the printing elements comprises: determining a difference between the energisation values of the predetermined subset of the printing elements and a threshold value; and generating the printhead control signal based upon said determined difference.
18. A thermal printer controller comprising circuitry arranged to control a thermal printhead of a thermal printer, the printhead comprising an array of printing elements, the circuitry being arranged to control the thermal printer to carry out the operations of: performing a plurality of printing operations, each printing operation comprising energisation of one or more printing elements; determining, for each printing element, a respective energisation value based at least in part upon whether or not that printing element was energized during said printing operations; generating a printhead control signal for the printhead for a subsequent printing operation based upon the energisation values of a predetermined subset of the printing elements; wherein the printhead control signal affects energisation of a plurality of printing elements across the printhead in the subsequent printing operation in a way that is the same for each of the plurality of printing elements.
19. A thermal printer controller according to claim 18, wherein the circuitry comprises a memory storing processor readable instructions and a processor configured to read and execute instructions stored in said memory.
20. A thermal transfer printer comprising: first and second spool supports each being configured to support a spool of ribbon; and a ribbon drive configured to cause movement of ribbon from the first spool support to the second spool support; a printhead configured to selectively transfer ink from the ribbon to a substrate, a controller according to claim 18.
Description
(1) Embodiments of the invention are now described, by way of example, with reference to the accompanying drawings, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10) Referring to
(11) In a printing operation, ink carried on the ribbon 2 is transferred to a substrate 9 which is to be printed on. To effect the transfer of ink, the print head 7 is brought into contact with the ribbon 2. The ribbon 2 is also brought into contact with the substrate 9. The printhead 7 may be caused to move towards the ribbon 2 by movement of the printhead carriage 8, under control of the printer controller 10. The printhead 7 comprises printing elements 11 arranged in a one-dimensional linear array, which, when heated, whilst in contact with the ribbon 2, cause ink to be transferred from the ribbon 2 and onto the substrate 9. Ink will be transferred from regions of the ribbon 2 which correspond to (i.e. are aligned with) printing elements 11 which are heated. The array of printing elements 11 can be used to effect printing of an image on a substrate by selectively heating printing elements 11 which correspond to regions of the image which require ink to be transferred, and not heating printing elements 11 which require no ink to be transferred. Printing elements and regions of the printed image may be referred to as pixels.
(12) A two dimensional image may be printed by printing a series of lines, the printing of each line being referred to as a printing operation. Different printing elements within the array may be heated during the printing of each line (i.e. during each printing operation). Between the printing of each line, the printhead 7, ribbon 2, and substrate 9 are moved with respect to each other, such that the line printed on the substrate 9 from one printing operation is adjacent to the line printed by the next printing operation. In some embodiments this is achieved by moving the printhead 7 relative to the ribbon 2 and substrate 9 which remain stationary, while in other embodiments this is achieved by holding the printhead 7 stationary and moving the ribbon 2 and substrate 9 relative to the printhead 7.
(13) A barcode may be printed on a substrate by printing multiple lines, each of which provides a cross section of the whole barcode. Alternatively, where the barcode is printed in an orientation whereby bars of the barcode run generally parallel to the linear array of printing elements, each printing operation will print part of a bar of the barcode or else correspond to white space between adjacent bars of the bar code. Barcodes which are printed in such a way that bars of the barcode are generally parallel to the linear array of printing elements are referred to as ladder barcodes. The inventors have discovered that print quality of ladder barcodes is particularly susceptible to overheating of printing elements. The techniques described herein are intended to avoid printhead overheating. As such, the described techniques are useful in improving the print quality of ladder barcodes which is important given that barcodes are, of course, intend to be scanned by a scanning device and degradation of print quality can have an adverse impact on the accuracy with which barcodes can be read. That said, it will be appreciated that the techniques described herein are generally applicable and can be used to improve print quality of any image, particularly but not exclusively images including sizeable portions of continuous print (i.e. large black areas).
(14) In one embodiment, the printhead 7 comprises a one-dimensional linear array of 1280 printing elements 11. Each printing element 11 comprises a heating element and a switching arrangement capable of determining whether that printing element is energised in a particular printing operation.
(15) Referring to
(16)
(17) A clock signal 12 is provided on a clock line 12. Data 13 is provided on a data line 13 as serial binary data having 1280 bits, each bit of the data indicating whether a respective one of the 1280 printing elements is to be energised in a printing operation. In one embodiment a 1 or high signal indicates that a respective printing element should be energised while a 0 or low signal indicates that the respective printing element should not be energised. The data line passes through registers provided by printing element controllers 15 which together provide a shift register. When 1280 bits of data have been received, a low latch signal 14 on an active-low latch line 14 causes the received data to be transferred from the registers provided by the printing element controllers 15 to control logic within the printing element controllers 15. The printing element controllers 15 can each control a single printing element or alternatively, as is the case in the described embodiment, a single printing element controller can control a plurality of printing elements. In the described embodiment the four printing element controllers 15 each control 320 printing elements, and therefore each receive 320 bits of data when the low latch signal 14 is provided on the latch line 14, each bit of data indicating whether one of the printing elements under the control of that printing element controller 15 should be energised.
(18) During a printing operation a strobe signal 16 on an active-low strobe line 16 causes printing elements 11 to be energised. The duration of energisation is determined by the respective printing element controller 15 by selecting one of five active-low timing signals 17, 18, 19, 20, 21 respectively provided on a Cont_1 line 17, a Cont_2 line 18, a Cont_3 line 19, a Cont_4 line 20 and a Cont_5 line 21, the selected timing signal indicating the time for which a respective printing element should be energised. In this way the printing element controllers 15 can energise different ones of the printing elements 11 for different periods of time.
(19) The printhead comprises an active-high enable line 22 on which a high signal 22 is provided for the duration of a printing operation.
(20) In addition to the control signals described above the printhead also has two voltage connections 23, 24. A first voltage connection 23 provides a voltage supply to the printing elements 11. For example, the first voltage connection may be connected to a voltage of 24 volts. A second voltage connection 24 provides a voltage supply to the printing element controllers 15 and other elements of control logic within the printhead. Each of the first and second voltage connections 23, 24 is provided with a respective ground connection, a first ground connection 25 being associated with the first voltage connection 23 and a second ground connection 26 being associated with the second voltage connection 24.
(21) The printhead further comprises control logic 15a to which are connected the control signals 17, 18, 19, 20, 21 and connections 24, 25, 26. The control logic 15a is connected by connections to the printing element controllers 15.
(22) In operation, the printing element controllers 15 select a time for which a particular printing element should be energised by selecting between the timing signals provided on the lines 17, 18, 19, 20, 21. This selection is now described with reference to
(23) Where a printing element controller 15 is selecting an energisation time for a printing element A in a printing operation P.sub.n, the printing element controller 15 has regard to energisation of the printing element A in the two immediately preceding printing operations P.sub.n1 and P.sub.n2. The printing element controller 15 also has regard to the energisation of spatially adjacent printing elements B, C in the immediately preceding printing operation P.sub.n1. Depending upon the energisations of the printing elements A, B, C in this way one of the timing signals 17, 18, 19, 20, 21 is selected.
(24)
(25) A bottom row of each grid relates to printing operation P.sub.n, that being the printing operation for which the energisation time for the printing element A is being determined.
(26) Referring first to
(27) Referring to
(28) Referring to
(29) Referring to
(30) Referring to
(31) Referring back to
(32) As indicated above, the printer controller 10 controls the timing signals 17, 18, 19, 20, 21. Processing carried out to determine the timing signals is described below. It can be noted, however, that in some embodiments the printer controller 10 may determine that two or more of the timing signals 17, 18, 19, 20, 21 should have the same value. In one embodiment the printer controller 10 is arranged to provide a signal on the Cont_1 line 17 which is of equal duration to the strobe signal 16. This represents energisation of printing elements for a maximum possible time when the Cont_1 signal 17 is selected by one of the printing element controllers 15. Shorter timing signals of equal length are provided on the Cont_2 line 18 and Cont_3 line 19. A still shorter timing signal is provided on the Cont_4 line 20 and a shorter still timing signal is provided on the Cont_5 line 21. In one embodiment the Cont_1 signal 1 17 has a duration of 0.289 ms, while the Cont_5 signal has a duration of 0.126 ms.
(33) The printer controller 10 is responsible for generating the data signal 12 provided to the printhead on the data line 12. This indicates whether each printing element is energised in each printing operation. Based upon this data, the printer controller maintains an energisation value for each printing element and uses these energisation values to determine the times specified by each of the timing signals 17, 18, 19, 20, 21.
(34) In more detail,
(35) If, however it is determined at step S2 that the printing element was not energised in the current printing operation, processing passes to step S6 where the energisation value is reduced by an energy value E.sub.r. In one embodiment the energy value E.sub.r has a value of 3.
(36) Processing passes from each of steps S4, S5 and S6 to step S7 where processing waits for a next printing operation before returning to step S2.
(37) The processing of
(38)
(39) In one embodiment, where a plurality of thresholds are applied a first threshold has a value of 400, and a second threshold has a value of 650. If the energisation values 35 of all of the printing elements 11 in the spatially adjacent subset 34 exceed the first threshold, the timing signals 17, 18, 19, 20, 21 are all reduced to 95% of their maximum value. However, if the energisation values 35 of all of the printing elements 11 in the spatially adjacent subset 34 exceed the second threshold, the timing signals 17, 18, 19, 20, 21 are all reduced to 85% of their maximum value. It will be appreciated that any number of thresholds may be used. For example third and fourth thresholds having values greater than 650 may be applied. Where the energisation values 35 of all of the printing elements 11 in the spatially adjacent subset 34 exceed the third threshold the timing signals may be reduced to 75% of their maximum value. Where the energisation values 35 of all of the printing elements 11 in the spatially adjacent subset 34 exceed the fourth threshold the timing signals may be reduced to 65% of their maximum value. It will be appreciated that in some implementations only some of the timing signals 17, 18, 19, 20, 21 may be modified by the processing of
(40)
(41) In the stepped approach, the timing signals are initially generated for 100% of their nominal duration. If the energisation values of a particular subset of printing elements exceed a threshold T.sub.1 (e.g. 400), the timing signal duration is reduced to a first reduced timing signal duration D.sub.1 (e.g. 95%). If the energisation values of a particular subset of printing elements exceed a second threshold T.sub.2 (e.g. 650), the timing signal duration is reduced to a second reduced timing signal duration D.sub.2 (e.g. 85%). As described above, there may be several further energisation value thresholds T.sub.3, T.sub.4, etc., and several further reduced timing signal durations D.sub.3, D.sub.4, etc.
(42) In an alternative embodiment, rather than having distinct threshold values at which the duration of the timing signals is reduced by a step value, a gradual reduction in the duration of the time signals can be used. A gradual reduction in the duration of the timing signals allows more accurate control of the printing energy, and thus a closer approximation of the optimal printing energy O. A closer approximation of the optimal printing energy produces a more accurate control of darkness within a printed image.
(43) A gradual reduction in timing signal duration is shown by dashed line G. Once the energisation value reaches a first reduction onset threshold T.sub.R1, the timing signal duration is reduced at a predetermined rate R.sub.1 for every additional increase in the energisation value E. For example, the duration of the timing signals may be reduced by a predetermined amount for each increase in the energisation value above the first reduction onset threshold T.sub.R1.
(44) Further, in some embodiments, once a second reduction onset threshold T.sub.R2 has been exceeded, the timing duration is reduced at a second predetermined rate R.sub.2. Where an energisation value is between first and second reduction onset threshold T.sub.R1, T.sub.R2, the timing duration may be calculated by interpolating between a first timing duration at the first reduction onset threshold T.sub.R1 (such as, for example, 100%), and a second timing duration at the second reduction onset threshold T.sub.R2 (such as, for example, 90%). It will be appreciated that there may be several further reduction onset thresholds T.sub.R3, T.sub.R4 etc., and several further corresponding predetermined rates R.sub.3, R.sub.4, etc. It will further be appreciated that any of the predetermined rates R.sub.1-R.sub.4 may have the same value.
(45) In some embodiments there may be combination of a stepped reduction in printing energy and a gradual reduction in printing energy (i.e. in timing signal duration). For example a first timing signal duration (e.g. 100% of a nominal value) may be applied below a first energisation threshold (e.g. 50). When the energisation value is equal to the first energisation threshold, a first reduced timing signal duration (e.g. 90%) may be applied (i.e. there may be a step change at the first energisation threshold). Thereafter, the timing signal duration may be reduced gradually to a second reduced timing duration (e.g. 80%) when the energisation value is equal to a second energisation threshold (e.g. 150). That is, between the first and second energisation thresholds, the timing signal duration is reduced by an amount that is proportional to the difference between the energisation value and the first and second energisation thresholds. For example, if the energisation value is 70, which is 20% of the distance between the first and second energisation thresholds (which are 50 and 150 respectively), the timing duration is scaled to be 20% of the distance between the first reduced timing signal duration (90%) and the second reduced timing signal duration (80%), which results in a timing signal duration of 88% of the nominal timing signal duration. Once the energisation value of the subset of printing elements exceeds the second energisation threshold (e.g. 150), the timing signal duration remains at the second reduced timing signal duration (e.g. 80%).
(46) The reduction of the duration of the timing signals, as described above, allows more accurate control of the printing energy delivered to each printing element. This may be particularly beneficial when printing long images such as, for example, barcodes. Where a stepped approach is used, immediately before a step is made (e.g. a step between D.sub.1 and D.sub.2), and immediately after a step has been made, there may be a significant difference between the optimal printing energy and the actual printing energy supplied. This difference is illustrated in
(47) Each time the energisation value for each of the printing elements is updated (i.e. after each printing operation) the processing of
(48) While only a single predetermined subset of printing elements 11 is shown in
(49) In some applications it may be desirable to limit the subsets of printing elements 34 which are used in the processing of
(50) It can be appreciated from
(51) The processing of
(52) The preceding description has discussed reducing the energisation times where energisation values for all printing elements in the predetermined subset exceed some threshold. It will be appreciated, however, that in alternative embodiments the energisation times (indicated by the durations of the timing signals 17, 18, 19, 20, 21) may be reduced if the collective energisation values exceed a threshold or if a predetermined proportion of printing elements in the predetermined subset each exceed some threshold.
(53) It will further be appreciated that in some embodiments the energisation times may be reduced if the energisation value of a single printing element in the predetermined subset of printing elements exceeds a threshold (i.e. the threshold is applied to the maximum energisation value within the predetermined subset of printing elements). This results in a reduction in printing energy being applied based upon the printing elements which are at most risk of overheating.
(54) It will further be appreciated that in some embodiments different reductions may be applied to the durations of different ones of the timing signals 17, 18, 19, 20, 21. Furthermore, different thresholds may be applied to the energisation values at which durations of different ones of the timing signals 17, 18, 19, 20, 21 are adjusted.
(55) The energy values used in determination of the energisation values may be varied as processing proceeds depending upon a current relationship between the energisation values and one or more thresholds.
(56) It has been described with reference to
(57) Referring now to
(58) Each line of image data 51 is also processed by an energisation value calculator block 52 which maintains energisation values for each of the printing elements. The energisation values generated by the energisation value calculator block 52 are passed to a time determination block 53 which determines the lengths of timing signals 17, 18, 19, 20 and 21 respectively provided to the printhead 7 on timing lines 17, 18, 19, 20 and 21. The timing signals 17, 18, 19, 20 and 21 are then selected by the printing element controllers 15 in the manner described above.
(59) In this way, the printer controller 10 and the printhead 7 work together to determine energisation times for each of the printing elements, the printer controller 10 working to reduce the energisation times which may be selected by the printhead 7 where spatially adjacent printing elements all have energisation values which indicate that overheating of the printing elements is likely.
(60) It will be appreciated that while one method of printing element energisation control by printing element controller 15 is described above other methods are possible. For example, the printing element controller 15 may select from a larger or smaller number of timing signals than the five signals (17, 18, 19, 20, 21) described above with reference to
(61) Furthermore, the printing element controller 15 may select from a number of timing signals based upon the energisations of more than two previous printing operations (e.g. printing element control may be based upon printing operations P.sub.n1, P.sub.n2, and P.sub.n3, where printing operation P.sub.n3 is the printing operation immediately before printing operation P.sub.n2).
(62) In embodiments of the invention a further timing signal may be used which causes a printing element 11 to be energised for an additional length of time in dependence upon the energisation of a subsequent printing operation (i.e. energisation of the printing element 11 in the printing operation P.sub.n+1, where printing operation P.sub.n+1 is the printing operation after the current printing operation). This allows the printing element 11 to be pre-heated for the subsequent printing operation P.sub.n+1.
(63) Reference has been made in the preceding description to continuous timing signals (as shown in
(64) Reference has been made in the preceding description to the printer controller 10 and various functions have been attributed to the printer controller 10. It will be appreciated that the printer controller 10 can be implemented in any convenient way including as an application specific integrated circuit (ASIC), field programmable gate array (FPGA) or a microprocessor connected to a memory storing processor readable instructions, the instructions being arranged to control the printer and the microprocessor being arranged to read and execute the instructions stored in the memory. Furthermore, it will be appreciated that in some embodiments the printer controller 10 may be provided by a plurality of controller devices each of which is charged with carrying out some of the control functions attributed to the printer controller 10.
(65) In an alternative printing technique, a ribbon may be omitted. Rather than transferring ink onto a substrate to be printed upon, a thermal paper may be used as the target surface. Thermal paper will change color when exposed to a heat source. A printhead, such as that described above, may be caused to come into contact directly with the thermal paper, a region of paper changing color where a printing element was heated. Any techniques described with reference to a thermal transfer printer may therefore also be used to control a printhead in a thermal printer or in any form of printer in which a thermal printing element is used.
(66) While various embodiments have been described above it will be appreciated that these embodiments are for all purposes exemplary, not limiting. Various modifications can be made to the described embodiments without departing from the spirit and scope of the present invention.