1. Technical Field
The present invention relates to a printing device, a control method of a printing device, and a storage medium.
2. Related Art
Printing devices (printers) that print by using a thermal head to apply heat energy to thermal paper used as the print medium or to hot melt ink are known from the literature. A problem with this type of printer is that when the print speed is fast and the print cycle short, it is difficult to sufficiently increase the temperature of the heat elements.
JP-A-2013-208737 addresses this problem with a printer that applies pulses selectively to the heat elements of the thermal head to produce heat, and enables high density printing by using heat elements that are short in the conveyance direction of the print medium and applying multiple pulses to the heat elements.
However, a voltage drop occurs when driving the heat elements due to such constraints as the capacity of the power supply circuit. The pulse width must therefore be adjusted with consideration for the voltage drop in order to control the temperature of the heat elements with high precision, and this creates a heavy data processing load.
The present invention enables controlling the temperature of the heat elements of the thermal head with high precision by means of a process with a light load on the processor.
One aspect of the invention is a printing device that prints on print media based on print data, and has: a thermal head having multiple heat elements with the heat elements arrayed in a direction perpendicular to the conveyance direction of the print medium; and a control unit that divides the thermal head into plural blocks and controls the energize timing of the heat elements in each block based on the number of heat elements energized among the heat elements of the thermal head.
Thus comprised, the printing device controls dividing the heat elements of the thermal head into plural blocks and the energize timing of the heat elements. As a result, a control method that suppresses the number of simultaneously energized heat elements by applying current in block units does not need to adjust the energize timing block by block, and control can be simplified. The processor load can therefore be reduced, delays from processing can be prevented, and throughput can be improved.
Preferably, the control unit divides the thermal head into plural blocks so that the difference in the number of heat elements that are energized in a first block and a second block included in the plural blocks is less than a specific value.
This aspect of the invention simplifies controlling the energize timing, and reduces the processor load.
Further preferably, the control unit segments the heat elements into blocks so that the difference in the heat output per unit time between the first block and the second block is less than a specific value.
This aspect of the invention further simplifies controlling the energize timing because the difference in heat output between blocks is small.
Further preferably, the printing device also has a battery; and the control unit segments the thermal head into blocks based on at least one of a voltage of the battery and a temperature of the battery.
Thus comprised, the heat elements can be grouped in blocks based on the condition of the battery.
In a printing device according to another aspect of the invention, the control unit segments the thermal head into blocks based on at least one of the voltage applied to the heat elements, the conveyance speed of the print medium, and the temperature of the heat elements.
Thus comprised, the heat elements can be grouped in blocks based on the energizing state of the heat elements.
Further preferably, the printing device also has a battery management unit that detects at least one of the remaining battery capacity and the ambient temperature of the battery; and a drive unit that applies pulse current to the heat elements in block units based on the current output of the battery.
Thus comprised, energizing the heat elements can be appropriately controlled and consistent printing is possible even when the amount of power supplied to the heat elements is limited by the capacity of the battery.
Further preferably, the control unit determines the number of blocks based on the detector output of the battery management unit, and the number of heat elements energized among the heat elements of the thermal head.
Thus comprised, energizing the heat elements can be appropriately controlled by a process with an even lower processor load.
In a printing device according to another aspect of the invention, the thermal head is a line head having heat elements equal to at least one dot line printed on the print medium; a line buffer stores at least one dot line of print data in dot line units; and the control unit identifies which of the heat elements of the thermal head are energized based on the print data stored in the line buffer.
Thus comprised, which of the heat elements in the line head are energized to print can be quickly determined, and the heat elements can be efficiently grouped into blocks. As a result, blocks can be created appropriately to the data to print, and high quality printing can be achieved.
Another aspect of the invention is a control method of a printing device having a thermal head with multiple heat elements arrayed in a direction perpendicular to the conveyance direction of the print medium, and printing on the print medium based on print data, including: controlling dividing the thermal head into plural blocks and controlling the energize timing of the heat elements in each block based on the number of heat elements energized among the heat elements of the thermal head.
Thus comprised, the printing device controls dividing the heat elements of the thermal head into plural blocks and the energize timing of the heat elements. As a result, a control method that suppresses the number of simultaneously energized heat elements by applying current in block units does not need to adjust the energize timing block by block, and control can be simplified. The processor load can therefore be reduced, delays from processing can be prevented, and throughput can be improved.
In a control method of a printing device according to another aspect of the invention, the printer preferably divides the thermal head into plural blocks so that the difference in the number of heat elements that are energized in a first block and a second block included in the plural blocks is less than a specific value.
This aspect of the invention simplifies controlling the energize timing, and reduces the processor load.
In a control method of a printing device according to another aspect of the invention, the printer segments the heat elements into blocks so that the difference in the heat output per unit time between the first block and the second block is less than a specific value.
This aspect of the invention further simplifies controlling the energize timing because the difference in heat output between blocks is small.
In a control method of a printing device according to another aspect of the invention, the printer also applies pulse current to the heat elements in block units based on the current output of the battery; and segments the thermal head into blocks based on at least one of a voltage of the battery and a temperature of the battery.
Thus comprised, energizing the heat elements can be appropriately controlled and consistent printing is possible even when the amount of power supplied to the heat elements is limited by the capacity of the battery.
In a control method of a printing device according to another aspect of the invention, the printer segments the heat elements of the thermal head into blocks based on at least one of the voltage applied to the heat elements, the conveyance speed of the print medium, and the temperature of the heat elements.
Thus comprised, the heat elements can be grouped in blocks based on the energizing state of the heat elements.
Another aspect of the invention is a program enabling a control unit that controls a printing device to execute the control method of the printing device described above.
The invention can also be embodied as a storage medium storing the program.
Other objects and attainments together with a fuller understanding of the invention will become apparent and appreciated by referring to the following description and claims taken in conjunction with the accompanying drawings.
A preferred embodiment of the present invention is described below with reference to the accompanying figures.
The printer 100 is a mobile printer that houses a battery 130 in a compact portable case, and operates with the battery 130 as the power supply.
The printer 100 has a control unit 110 that controls other parts of the printer 100. Connected to the control unit 110 are an interface 121, battery management unit 122, memory 125, line buffer 126, input unit 127, paper sensor 128, drive circuit 141, and drive circuit 142. The printer 100 also has a conveyance motor 132 driven by a drive circuit 141, and a thermal head 134 driven by a drive circuit 142.
As shown in
A paper roll 101 of thermal roll paper 102 is stored inside the cabinet (not shown in the figure) of the printer 100. The printer 100 has a platen 133 and thermal head 134 disposed above the conveyance path of the thermal roll paper 102.
The thermal head 134 applies heat energy to the printing surface of the thermal roll paper 102 to produce color and print text and images. The platen 133 is a cylindrical platen roller, is connected through a gear train not shown to the conveyance motor 132 (
The thermal roll paper 102 is delivered from the paper roll 101, and conveyed between the platen 133 and thermal head 134 in the conveyance direction indicated by arrow F in the figure by the torque from the platen 133. The thermal head 134 prints text and images on the thermal roll paper 102 as it is conveyed. The printed portion of the thermal roll paper 102 is then discharged from the paper exit not shown and cut using a manual cutter (not shown in the figure).
The thermal head 134 has multiple heat elements 136 arrayed on the side that contacts the thermal roll paper 102. As shown in
In the simplest example, one heat element 136 forms one dot on the thermal roll paper 102. For example, if the size of the print area in the sub-scanning direction CR is 2 inches, and there are 600 heat elements 136, the print resolution is 300 dpi (dots per inch). Text and images based on the print data are printed on the thermal roll paper 102 by the control unit 110 shown in
Referring again to
The memory 125 has a storage area for temporarily storing print data received by the control unit 110. The line buffer 126 is a storage area for rendering one dot-line of print data when the control unit 110 prints the print data.
The memory 125 and line buffer 126 are semiconductor memory devices in this example. The memory 125 and line buffer 126 may be configured using separate storage devices, or one or both of the memory 125 and line buffer 126 may be embodied using RAM of the control unit 110.
The data written to the line buffer 126 indicates whether or not the thermal head 134 forms a black dot for any particular dot that can be formed by the thermal head 134. Each of the heat elements 136 in this embodiment forms one dot. The data written to the line buffer 126 is therefore data determining whether or not a particular heat element 136 forms a black dot.
The input unit 127 is connected to switches on the operating panel (not shown in the figure) of the printer 100, for example. Each time a switch is operated, the input unit 127 generates and outputs an operating signal corresponding to the switch that was operated to the control unit 110.
The paper sensor 128 is an optical sensor that detects whether or not thermal roll paper 102 (
The drive circuit 141 is connected to the conveyance motor 132. The drive circuit 141 supplies drive current to the conveyance motor 132 and causes the conveyance motor 132 to turn as controlled by the control unit 110.
The conveyance motor 132 may be a stepper motor, in which case the drive circuit 141 outputs drive pulses and drive current to the conveyance motor 132 as controlled by the control unit 110.
By switching the voltage of the drive current supplied to the conveyance motor 132, the drive circuit 141 can make the conveyance motor 132 turn in a forward direction or a reverse direction. As a result, the thermal roll paper 102 can be conveyed in the conveyance direction F or the opposite of the conveyance direction F as controlled by the control unit 110.
The drive circuit 142 (drive unit) is connected to the thermal head 134. The drive circuit 142 energizes the individual heat elements 136 of the thermal head 134 as controlled by the control unit 110 to change the color of the thermal roll paper 102 at the desired positions in the range of dots that can be printed by the thermal head 134.
The battery management unit 122 is connected to the battery 130, and detects and outputs the voltage of the battery 130 to the control unit 110. The battery management unit 122 is connected to the ambient temperature detector 123. The ambient temperature detector 123 is a temperature detector disposed in the battery compartment (not shown in the figure) where the battery 130 is held, and may be a thermistor or thermocouple, for example. The battery management unit 122 detects the ambient temperature of the battery 130 by the ambient temperature detector 123 and outputs the detected value to the control unit 110. The timing at which the battery management unit 122 detects and outputs the temperature to the control unit 110 may be preset or controlled by the control unit 110.
The battery 130 may be a lithium ion storage battery or a nickel metal hydride storage battery, for example, and supplies power to the parts of the printer 100 shown in
The control unit 110 comprises CPU, ROM, RAM, and other peripheral circuits not shown, reads and runs a basic control program stored in ROM, and controls other parts of the printer 100. By running this basic control program, the control unit 110 functions as a print control unit 111 and current control unit 112.
The print control unit 111 processes print data using memory 125 and the line buffer 126, and controls the drive circuits 141, 142 to print text and images on the thermal roll paper 102. More specifically, the print control unit 111 stores print data received from the host computer 200 through the interface 121 to memory 125. The print control unit 111 then controls the drive circuit 141 and operates the conveyance motor 132 to convey the thermal roll paper 102. The print control unit 111 reads print data from the memory 125, and renders one dot line of data in the line buffer 126.
The current control unit 112 controls the drive circuit 142 based on the one dot line of data written to the line buffer 126 by the print control unit 111.
Control of the current control unit 112 and the operation whereby the drive circuit 142 energizes the heat elements 136 is described next.
Dot 105 in
The drive circuit 142 uses a segmented drive method that divides the heat elements 136 in one row of the thermal head 134 into blocks, and applies current pulses in block units. In the example shown in
As shown in
When the thermal head 134 is segmented into plural blocks, the current control unit 112 must output pulses so that there is no difference in the density of the dots 105 in different blocks. The current control unit 112 therefore controls the timing and pulse width of pulses P1 to P4 based on the number of heat elements 136 in the group of heat elements 136 in one block that produce heat (are energized), the number of blocks in the thermal head 134, and the temperature of the heat elements 136. The temperature of the heat elements 136 may be calculated or estimated from the time past since the previous pulse, or the temperature of the heat element 136 may be detected using a thermistor disposed to the thermal head 134.
In addition to the number of energized heat elements 136, the number of blocks, and the temperature of the heat elements 136, the current control unit 112 may also consider the remaining capacity of the battery 130 detected by the battery management unit 122 to control the timing and pulse width of the pulses P1 to P4. In this event, the current control unit 112 estimates how much power can be supplied to the battery 130 to control the timing and pulse width of the pulses P1 to P4.
Further alternatively, the current control unit 112 may also factor in the ambient temperature of the battery 130 detected by the ambient temperature detector 123 to control the timing and pulse width of the pulses P1 to P4. By factoring in the temperature detected by the ambient temperature detector 123, the timing and pulse width of the pulses P1 to P4 can be more appropriately controlled by also considering temperature characteristics related to the output of the battery 130.
By thus segmenting the thermal head 134 into plural blocks, and offsetting the timing when pulses are applied, good dots 105 can also be formed when the capacity of the battery 130 is low.
When segmenting the thermal head 134 into plural blocks the current control unit 112 in this embodiment of the invention determines the number of blocks and the beginning and end of each block. By the current control unit 112 determining the number of blocks and the location of each block based on at least one of the number of energized heat elements 136, the voltage of the battery 130, the temperature of the heat elements 136, and the temperature detected by the ambient temperature detector 123, the processor load for controlling the pulse timing and pulse width can be reduced.
As shown in
The difference in the number of heat elements 136 allocated to each block is preferably within a specific range. More specifically, the difference (Δn, a specific value) in the number of heat elements 136 in the block with the most energized heat elements 136 and the block with the fewest energized heat elements 136 is preferably within 10% of the number of heat elements 136 in the smallest block, more preferably within 5%, and even more preferably within 1%. If the number of heat elements 136 allocated to a block can be set in units of 1, the blocks are ideally grouped so that Δn is 1 or 0.
By thus creating the blocks, the difference in heat output per unit time in each block of the thermal head 134 will be within a specific range. Because the difference in heat output in each block is small, there is no need to control the pulse width and timing individually for each block, and processing can be simplified.
The current control unit 112 may also segment the thermal head 134 into heat elements 136 so that the difference in heat output per unit time in each block of the thermal head 134 will be less than a specific value. This specific value may be preset based on the difference in heat output per unit time in each block, for example. In this event, the current control unit 112 gets the difference in heat output per unit time in each block based on the boundary between blocks of the thermal head 134 and the number of heat elements 136 in each block. The current control unit 112 determines if the difference in heat output between the block with the greatest and the block with the lowest heat output per unit time is less than a specific value, and changes the boundary between blocks and the number of heat elements 136 if the difference is greater than or equal to the specific value. As a result, the thermal head 134 is segmented into blocks so that the difference in the heat output per unit time in each block is less than the specific value.
The specific value (ΔH) that is set for evaluating the heat output can be set referenced to the heat output of the block with the lowest heat output, or the average or median heat output per unit time of all blocks. More specifically, the specific value is preferably 10% of the reference, further preferably 5%, and yet further preferably 1%.
Because the difference in the heat output of the blocks is small, there is no need to individually control the pulse width and timing for each block, and processing is simplified. The specific value (ΔH) that is set for evaluating the heat output can also be set referenced to the rated heat output of the thermal head 134. In this case, the specific value is preferably 10% of the rated heat output, further preferably 5%, and yet further preferably 1%.
The specific values (Δn, ΔH, for example) that are preset for the difference in the number of heat elements 136 in each block, and the difference in the heat output per unit time of each block, may be stored in ROM (not shown in the figure) of the control unit 110, for example.
A more specific example is shown in
In the example in
In the example in
When the number of energized heat elements 136 allocated to each block is substantially equal as in this example, the width of pulses applied to each block, and the interval between pulses, can be the same as shown in
For comparison, an example in which the number of energized heat elements 136 varies block to block is described next.
In the example in
The number of segments in the thermal head 134, that is, the number of blocks, is determined based on the number of heat elements 136 the current control unit 112 energizes and the remaining capacity of the battery 130.
The amount of power that the battery 130 can supply depends on the remaining battery 130 capacity, and can be determined from the end voltages of the battery 130. In the settings in
The current control unit 112 counts (calculates) the number of energized heat elements 136 in the thermal head 134 based on the data in the line buffer 126. The current control unit 112 then gets the number of blocks by dividing the number of energized heat elements 136 by the number of simultaneously energized dots obtained from
While not shown in
The number of simultaneously energized dots may also be set based on the conveyance speed of the thermal roll paper 102. More specifically, the number of simultaneously energized dots may be set relationally to the battery 130 voltage and the conveyance speed of the thermal roll paper 102. This setting may also be related to the temperature detected by the ambient temperature detector 123. If the conveyance speed of the thermal roll paper 102 is fast, the drop in the drive voltage Vh of the heat elements 136 is preferably suppressed and the heat output per unit time of the heat elements 136 is increased. One method of setting the number of simultaneously energized dots based on the conveyance speed may divide the conveyance speed into three ranges, high, normal, and low, set the number of dots energized simultaneously when the conveyance speed is high lower than when the conveyance speed is normal, and set the number of simultaneously energized dots when the conveyance speed is low higher than when the conveyance speed is normal. This enables printing with good quality at different conveyance speeds even when the remaining battery 130 capacity is low.
When print data is sent from the host computer 200, the print control unit 111 gets and stores the print data in memory 125 (step S11). Next, the print control unit 111 reads data for one line of the print data from memory 125, and renders it in line buffer 126 (step S12).
Based on the data written to the line buffer 126, the current control unit 112 counts the number of energized heat elements 136 (number of dots) in the heat elements 136 of the thermal head 134 (step S13).
The current control unit 112 then determines the number of segments in the thermal head 134 and where to divide the segments based on the number of heat elements 136 counted, the battery 130 voltage detected by the battery management unit 122, and the number of simultaneously energized dots shown for example in
The printing operation is then executed by the print control unit 111 and current control unit 112 (step S15). In step S15, the print control unit 111 controls the drive circuit 141 to convey the thermal roll paper 102 while the current control unit 112 controls energizing the thermal head 134. The current control unit 112 drives the drive circuit 142 and outputs pulses to the heat elements 136 according to the data rendered in line buffer 126.
The print control unit 111 determines whether or not all lines of print data stored in memory 125 have been printed (step S16). If all lines were printed (step S16 returns YES), the process ends. If there is a line that has not been printed (step S16 returns NO), control goes to step S12 and the next line is printed.
As described above, the printer 100 according to this embodiment prints on thermal roll paper 102 based on print data. The printer 100 has a thermal head 134 with multiple heat elements 136 disposed in the sub-scanning direction CR perpendicular to the conveyance direction F of the thermal roll paper 102. The printer 100 also has a current control unit 112 that segments the thermal head 134 into plural blocks, and controls the timing for energizing the heat elements 136 block by block. The current control unit 112 segments the thermal head 134 into plural blocks based on the print data so that the difference in the number of energized heat elements 136 in a first block and a second block is within a specific range. As a result, a control method that suppresses the number of simultaneously energized heat elements 136 by applying current in block units does not need to adjust the energize timing block by block, and control can be simplified. The processor load can therefore be reduced, delays from processing can be prevented, and throughput can be improved.
Furthermore, because the current control unit 112 groups the heat elements 136 into blocks so that the difference in the heat output per unit time in a first block and a second block is within a specific range, the difference in heat output between blocks is small, and controlling the energize timing can be further simplified.
The current control unit 112 also groups the heat elements 136 into blocks based on at least one of the drive voltage applied to the heat elements 136, the conveyance speed of the thermal roll paper 102, and the temperature of the heat elements 136. As a result, the process of creating blocks of heat elements so that the difference in heat output in each block is small can be simplified.
The printer 100 also has a battery 130, and a battery management unit 122 that detects at least one of the remaining battery 130 capacity and the ambient temperature of the battery 130. The drive circuit 142 applies pulse current to the heat elements 136 in block units based on the current output of the battery 130. As a result, when the power that can be supplied to the heat element 136 is limited by the capacity of the battery 130, energizing the heat elements 136 can be appropriately controlled, enabling consistent printing.
The current control unit 112 also determines the number of blocks based on at least one of the remaining battery 130 capacity detected by the battery management unit 122 and the ambient temperature of the battery 130. As a result, controlling the pulse width and energize timing of the pulses applied to the heat elements 136 can be achieved by a process with a low processor load.
The current control unit 112 also determines the number of blocks based on the detector output of the battery management unit 122 and the number of energized heat elements 136. As a result, energizing the heat elements 136 can be appropriately controlled by a process with a low processor load.
The thermal head 134 is a line head having a number of heat elements 136 equal to at least one dot line printed on the thermal roll paper 102. The printer 100 has a line buffer 126 that stores print data for at least one dot line in dot line units. Based on the print data stored in the line buffer 126, the current control unit 112 determines which of the heat elements 136 in the thermal head 134 will be energized. As a result, the heat elements 136 of the thermal head 134 that will be energized can be quickly determined, and the heat elements 136 of the thermal head 134 can be efficiently divided into blocks. High quality printing can be achieved by creating blocks appropriately to the printed data.
The current control unit 112 in this embodiment of the invention may apply a sampling process to the print data stored in the line buffer 126. This sampling process is a process that reduces the number of dots in the print data for one dot line stored in the line buffer 126. By applying a sampling process, the current control unit 112 reduces the number of heat elements 136 energized based on the print data stored in the line buffer 126. By reducing the number of energized heat elements 136 through the sampling process, the number of blocks into which the current control unit 112 segments the thermal head 134 is reduced.
When the number of energized heat elements 136 is large relative to the number of simultaneously energized dots shown in
A specific example of processing by the current control unit 112 when the sampling process can be executed is described next.
After determining the number of blocks and the location of each block in the thermal head 134 in step S14 in
The invention is not limited to the embodiments described above, and can be modified and improved in many ways without departing from the scope of the accompanying claims.
For example, a thermal printer that uses thermal roll paper 102 as the print medium is described as an example of the printer 100 in the foregoing embodiment, but the print medium may be cut-sheet media cut to a fixed size or continuous sheet media. The sheet media may have a coated surface, and any desired specific form.
The foregoing embodiment describes a configuration that segments all heat elements 136 of the thermal head 134 into blocks for energizing control, but the invention can also be applied to implementations that limit the number of heat elements 136 that are used. More specifically, when printing on thermal roll paper 102 that is narrower than the printable width of the thermal head 134, the set of heat elements 136 that are used in the set of all heat elements 136 in the thermal head 134 may be limited to the size of the thermal roll paper 102. In this event, the current control unit 112 may segment only that subset of heat elements 136 that are used for printing into plural blocks for control.
The invention is also described above using an example in which the thermal head 134 has one line of heat elements 136 and one heat elements 136 forms one dot on the thermal roll paper 102, but the invention is not so limited. For example, the thermal head 134 may have plural lines of heat elements 136, and the current control unit 112 may control segmenting the heat elements 136 into plural blocks widthwise based on the print data for the number of lines in the thermal head 134. Furthermore, the invention can also be used when plural heat elements 136 form one dot on the thermal roll paper 102, in which case the current control unit 112 controls creating blocks and energizing based on the number of heat elements 136.
The invention can also be applied to multifunction devices having an internal print unit configured similarly to the printer 100 described above.
The function blocks shown in
The invention being thus described, it will be obvious that it may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended to be included within the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2014-139410 | Jul 2014 | JP | national |
2015-119990 | Jun 2015 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
4875056 | Ono | Oct 1989 | A |
5786842 | Awai | Jul 1998 | A |
20050219345 | Muto | Oct 2005 | A1 |
20100253758 | Mito | Oct 2010 | A1 |
20130258028 | Matsutani | Oct 2013 | A1 |
Number | Date | Country |
---|---|---|
07-223329 | Aug 1995 | JP |
07-314760 | Dec 1995 | JP |
08-25672 | Jan 1996 | JP |
2008-155563 | Jul 2008 | JP |
2013-208737 | Oct 2013 | JP |
Number | Date | Country | |
---|---|---|---|
20160001574 A1 | Jan 2016 | US |