WO2006044599A2 - Printing system architecture - Google Patents

Printing system architecture Download PDF

Info

Publication number
WO2006044599A2
WO2006044599A2 PCT/US2005/036936 US2005036936W WO2006044599A2 WO 2006044599 A2 WO2006044599 A2 WO 2006044599A2 US 2005036936 W US2005036936 W US 2005036936W WO 2006044599 A2 WO2006044599 A2 WO 2006044599A2
Authority
WO
WIPO (PCT)
Prior art keywords
print
image data
workpiece
data
printing
Prior art date
Application number
PCT/US2005/036936
Other languages
French (fr)
Other versions
WO2006044599A3 (en
Inventor
Deane A. Gardner
Original Assignee
Fujifilm Dimatix, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujifilm Dimatix, Inc. filed Critical Fujifilm Dimatix, Inc.
Priority to CN2005800432127A priority Critical patent/CN101189622B/en
Priority to JP2007536915A priority patent/JP5027664B2/en
Priority to EP05809003A priority patent/EP1810127A2/en
Priority to KR1020077008688A priority patent/KR101187385B1/en
Publication of WO2006044599A2 publication Critical patent/WO2006044599A2/en
Publication of WO2006044599A3 publication Critical patent/WO2006044599A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/021Adaptations for printing on specific media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/10Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers
    • G06K15/102Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers using ink jet print heads

Definitions

  • This disclosure relates to printing systems.
  • image data When an image such as a picture or a page of text is to be printed, image data generally is translated by a computer system from one format into another format understandable by a printer and then relayed to a print buffer associated with the printer.
  • the print buffer receives the translated image data and stores at least a portion of the image data for subsequent printing by the printer.
  • printers include multiple discrete print elements (e.g., an inkjet nozzle in an inkjet print module).
  • the print elements can be deployed to print selected components of the image. For example, selected print elements can be deployed to print at selected locations on a workpiece. As another example, in color printing, selected print elements can be deployed to print selected colors.
  • Control electronics can coordinate the printing of images by deploying the print elements to print image data from the print buffer.
  • the print elements in a printer can be arranged in groups called print modules.
  • the print elements in a module can be grouped according to the deployment of the constituent elements. For example, print elements that print at a selected array of positions can be grouped in a print module. As another example, print elements that print the same color (at a selected array of positions) can be grouped into a print module.
  • the following disclosure relates to systems and techniques for printing.
  • a method for synchronously printing an image on a workpiece involves receiving image data at a location that is remote from a print head, arranging the received image data according to physical parameters of the print head to be used to print the image data on the workpiece, and sensing the speed of the workpiece on a workpiece conveyor relative to the print head.
  • the method also involves detecting the position of the workpiece on a workpiece conveyor, forming a packet of image data, and sending the packet of image data to the print head.
  • the method includes using the receipt of the packet of image data as a trigger to cause the image data at the print head to be printed substantially immediately on the workpiece.
  • One aspect of the image data being printed substantially immediately on the workpiece may involve printing image data substantially at an instant at which the image data arrives at the print head.
  • the image data can be received at the print head and latched, and the latched image data can be printed on the workpiece when a subsequent image data packet arrives at the print head.
  • the subsequent image data packet arriving at the print head can cause the latched image data to be printed on the workpiece.
  • the subsequent image data packet arriving at the print head can be a next subsequent image data packet.
  • a receipt of a subsequent image data packet other than the next subsequent image data packet can cause the latched data to be printed on the workpiece.
  • the arranging, sensing, detecting, and forming may be order-independent, and two or more of the receiving, arranging, sensing, detecting, forming, sending, and using may be performed at least partially in parallel.
  • the method may involve translating the image data into a format that is understandable by a printer.
  • the packet of image data may be formed by a data pump.
  • the packet of image data can be sent to the print head at a data rate sufficient to minimize gaps and white spaces when printing.
  • Image data for the data pump can be received from a Peripheral Component Interconnect-type bus of a host computer.
  • a number of print elements on the print head can be associated according to a physical column of associated print nozzles.
  • the physical column of associated print nozzles is configured to function logically independently of other physical columns of associated print nozzles on the print head.
  • Another implementation describes a method that involves detecting a position of a workpiece relative to a print head with multiple print elements, dividing image data that represents an image into portions according to a configuration of print elements on the printing head, and communicating along an optical communication path the divided image data to the print elements.
  • the method also involves synchronizing a timing of printing the image on the workpiece by the print elements with the detected position of the workpiece.
  • the synchronization may involve using the communication of the divided image data as a trigger to cause the printing of the image substantially immediately as the data arrives at the print elements.
  • the method may also include allocating the divided image data to different memory locations.
  • the allocation of the divided image data to different memory locations can involve allocating the divided image data to individual memory buffers and/or allocating the divided image data to an individual memory buffer dedicated to selected print elements.
  • the timing of the printing can include timing the arrival of the divided image data at the print elements based on the position of the workpiece.
  • the timing of the arrival of the divided image data can include introducing a delay into the optical communication path.
  • the introduction of the delay into the optical communication path may involve programming a direct memory access device to delay the direct memory access, transmission, and printing of the first portion of the divided image data.
  • a print system with a collection of print elements arranged to span a print area, and a workpiece conveyor to move a workpiece through the print area.
  • the print system has a detector to detect a position of the workpiece in the print area, and control electronics to instruct the collection of print elements to print an image on the workpiece substantially immediately when the collection of print elements receive the instruction through an optical communication path.
  • the control electronics may include a transceiver to send the instruction to the collection of print elements.
  • the collection of print elements may be a collection of inkjet print elements.
  • the system may have a data processing device to perform operations in accordance with logic with a set of machine-readable instructions. The operations can include a division of a collection of image data into portions according to the arrangement of print elements on a print head.
  • the system may also include a collection of memory locations to store the divided portions of image data, and a timing element to time the printing of the image data portions according to the arrangement of print elements on a print head.
  • Another implementation described here involves a printing apparatus with a first set of electronics to send image data to a second set of electronics on a print head, in which each set of electronics includes multiple components to enable high-speed printing on a workpiece.
  • the printing apparatus has an optical cable connection to connect the first and second sets of electronics.
  • Each set of electronics includes an optical connection interface.
  • the printing apparatus has a triggering device to cause the image data to be printed substantially immediately on the workpiece as the image data from the first set of electronics arrives at the second set of electronics.
  • a complexity of design of the first set of electronics can be greater than a complexity of design of the second set of electronics.
  • the triggering device can be configured to enable synchronous printing of image data on the workpiece as the image data arrives at the second set of electronics.
  • the second set of electronics can be physically separated or physically remote from the first set of electronics.
  • image data is sent to the print head assembly at the precise time the print element association is to deposit ink on the workpiece to generate a high-quality image on the workpiece. Poor image quality on the workpiece can be avoided by substantially eliminating excessive pauses or gaps when receiving the image data for the print head assembly. Transmission of image data to the print head assembly can serve as a trigger that causes the image data to be printed substantially immediately as the data arrives at the print head assembly.
  • the printing system can be a scalable architecture that can print images at high image data rates.
  • the printing system also can be implemented with lower cost hardware and design effort.
  • the primary printing electronics can be implemented on a personal computer (PC) (e.g., a single-board computer card) and connected through a Peripheral Component Interconnect (PCI) on a host computer.
  • PC personal computer
  • PCI Peripheral Component Interconnect
  • the high-speed characteristics of PC memory e.g., RAM
  • the disclosed architecture enables the print head assembly to be controlled by a relative small number of components, each being processed at relatively low speeds.
  • a data pump can send image data to a print head assembly at high data rates to enable just-in-time printing of images on the workpieces as the workpieces move along a workpiece conveyor. Because the amount of memory can be reduced on the print head assembly, the print head assembly may be implemented at a lower cost. The type of memory used on the print head assembly may also be implemented at a lower cost. In one implementation, memory for the print head assembly can be field programmable gate array (FPGA) integrated circuit (IC), which is programmed to control the print head electronics. As a result, the costs and engineering design efforts to implement the print head assembly may be reduced due to little or no buffering of high speed image data at the print head assembly.
  • FPGA field programmable gate array
  • the data rate of image data sent to the print head assembly can be scaled by having multiple data pumps connected to a single host computer.
  • the system may be scalable in having multiple computers to operate in parallel to deliver higher image data rates to the print head assembly.
  • each computer may have at least one PC card of control electronics connected to the PCI slot of the computer.
  • the system may also offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the print head assembly in a number of configurations, including adding multiple FGPAs to the print assembly. Because the system can handle high bandwidths of image data, the system can provide just-in-time printing of high resolution images at high conveyor speeds, large-size images at high conveyor speeds, and/or multi-color and grayscale images at high conveyor speeds.
  • Image data that represents an image to be printed can be divided according to the deployment of associations of print elements in a printer.
  • the divided image data can be stored at different memory locations, depending on the deployment of the print element associations.
  • the different memory locations can be individual memory buffers.
  • the memory buffers can be part of associated queues of like memory buffers.
  • the data pump can receive the image data from the different memory locations.
  • Each physical column of associated print modules can function logically independently from the others, so that printing on the workpiece can be continuous and substantially without printing gaps.
  • the data pump can facilitate just-in-time, synchronous transmission of image data from the host PC without the need for buffering or additional robust or powerful logic at the print head assembly.
  • Additional data pumps can be added to the host computer to scale to higher resolutions and/or to increase bandwidth requirements.
  • Additional parallel host computers can be added to the system to further scale printing operations.
  • bit manipulation does not have to be performed in the hardware of the print head assembly to achieve real-time printing of images.
  • the system can facilitate software bit manipulation, so bit manipulation can be performed at high data rates, and engineering and material costs can be reduced.
  • FIG. 1 shows a block diagram of a printing system.
  • FIGS . 2 and 3 illustrate an arrangement of printer elements in the printing system of FIG. 1.
  • FIG. 4 schematically illustrates the deployment of print elements with relative shifts in lateral position.
  • FIG. 5 schematically illustrates the serial printing of an image on different workpieces.
  • FIG. 6 is a flowchart of a process for the serial printing of an image on different workpieces.
  • FIGS. 7, 8, and 9 illustrate implementations of the division of image data according to the deployment of associated print elements.
  • FIG. 10 shows a schematic representation of an implementation of a printing system.
  • FIG. 11 is a flowchart of a process for synchronized printing on a workpiece.
  • FIG. 12 schematically illustrates a data pump.
  • FIG. 13 schematically illustrates a packet of image data generated by the data pump.
  • FIG. 14 shows exemplary specifications for the data pump.
  • FIG. l is a block diagram of a print system 100.
  • Print system 100 includes a workpiece conveyor 105 and a printer housing 110.
  • Workpiece conveyor 105 produces relative motion between a series of workpieces 115, 120, 125, 130, 135, 140, 145 and printer housing 110.
  • workpiece conveyor 105 conveys workpieces 115, 120, 125, 130, 135, 140, 145 in a direction D across a face 150 of printer housing 110.
  • Workpiece conveyor 105 can include a stepper or continuous motor that moves a roller, a belt, or other element that can retain workpieces 115, 120, 125, 130, 135, 140, 145 during conveyance.
  • Workpieces 115, 120, 125, 130, 135, 140, 145 can be any of a number of different substrates upon which system 100 is to print.
  • workpieces 115, 120, 125, 130, 135, 140, 145 can be paper, cardboard, microelectronic devices, or foodstuffs.
  • Printer housing 110 houses a workpiece detector 155.
  • Workpiece detector 155 can detect the position of one or more workpieces 115, 120, 125, 130, 135, 140, 145.
  • workpiece detector 155 can be a laser/photodetector assembly that detects the passage of edges of workpieces 115, 120, 125, 130, 135, 140, 145 across a certain point on face 150.
  • control electronics 160 Located remotely from the printer housing 110 are control electronics 160.
  • the control electronics 160 interface with the printer housing 110 by a cable 195 (e.g., an optical cable) and minimal electronics 190.
  • Control electronics 160 control the performance of print operations by system 100.
  • Control electronics 160 can include one or more data processing devices that perform operations in accordance with the logic of a set of machine-readable instructions.
  • Control electronics 160 may be, for example, a personal computing system that runs image processing software and software for controlling printing at the printer housing 110.
  • Print image buffer 165 is one or more data storage devices that store image data for printing by print elements.
  • print image buffer 165 can be a collection of random access memory (RAM) devices.
  • Print image buffer 165 can be accessed by control electronics 160 to store and retrieve image data.
  • the control electronics 160 interface with the printer housing 110 via the cable 195 and minimal electronics 190.
  • the control electronics 160 can send data across the cable 195, and the minimal electronics 190 can receive that data for printing at the printer housing 110.
  • the control electronics 160 may have special circuitry (e.g., a data pump, as described in more detail in reference to FIG. 10, that can receive and/or retrieve image data from print image buffers, store the image data, and enable print elements at a printing device to receive image data in time to deposit ink on the corresponding image locations on workpieces as they are moving along a conveyor) for generating data to send to the printer housing 110.
  • a data pump as described in more detail in reference to FIG. 10
  • the minimal electronics 190 may be, for example, a field-programmable gate array that includes a microprocessor, transceiver, and minimal memory.
  • the minimal electronics 190 may be connected to the printer housing 110 such that the minimal electronics 190 can be disconnected easily should the printer housing 110 and/or hardware in the printer housing 110 be changed. For example, if the printer housing 110 is replaced with a newer printer housing containing newer printing modules, the minimal electronics 190 can be disconnected from the older printer housing 110 and connected to the newer printer housing.
  • the printing of an image is divided between the control electronics 160 and the minimal electronics 190 such that the control electronics performs image processing and controls printing, whereas the minimal electronics 190 receives data received via the cable 195 and uses that data to cause firing of print elements at the printer housing 110.
  • image data may be converted to jetmap image data, which may include dividing the image data into multiple image queues of image buffers as part of the process of converting to jetmap image data (as described in more detail later); delays may be inserted into image data (e.g., inserting delays corresponding to a deployment of print element associations); and image data may be sent (e.g., encoding data packets of image data and sending by a receiver) at an appropriate time by the control electronics 160; whereas, the minimal electronics 190 may merely receive the image data (e.g., decode image data packets sent across the cable 195) and relay the image data such that the image data is printed on a workpiece (e.g., cause firing of inkjet nozzles according to the image data).
  • image data may be converted to jetmap image data, which may include dividing the image data into multiple image queues of image buffers as part of the process of converting to jetmap image data (as described in more detail later); delays may be inserted into image data (e.g., insert
  • the control electronics 160 may synchronize printing of an image at the printer housing 110. Following the previous example, the control electronics 160 may synchronize the printing of an image by receiving an indication of a leading edge of a workpiece and sending image data across the cable 195 to cause the printing of an image at the printer housing 110.
  • the control electronics 160 can send image data to the printer housing 110 at high data rates to enable "just-in-time” printing of images on the workpieces as the workpieces move along the workpiece conveyor 105.
  • transmission of image data to the printer housing 110 can serve as a trigger that causes the image data in a packet to be printed "substantially immediately” as the data arrives at the printer housing 110.
  • the image data may not be stored on a storage component on the printer housing prior to printing the image data, but can be printed as the data arrives at the printer housing.
  • Just-in-time printing may also refer to printing image data substantially at an instant at which the image data arrives at the printer housing.
  • data received at the printer housing is stored in one or more latches, and new or subsequent data that is being received at the printer housing can serve as a trigger to print the latched data.
  • the data received at the printer housing is stored in a latch until the subsequent data arrives at the printer housing, and the subsequent data arriving at the printer housing can serve as a trigger to print the data that has been latched.
  • the data, subsequent data, and latched data may be received and/or stored at the printer housing in the form of an image data packet.
  • the subsequent data arriving at the printer housing is the next subsequent data.
  • the subsequent data arriving at the printer housing is subsequent data other than the next subsequent data, such as subsequent data arriving after the next subsequent data. Because the image data is being printed at such a high-data rate, the data printed from latched data can also refer to data being printed "substantially immediately" as the data is arriving at the printer housing.
  • the printer housing 110 may be implemented at a lower cost.
  • the type of memory used on the printer housing 110 may also be implemented at a lower cost.
  • the type of memory implemented on the printer housing 110 is part of a field- programmable gate array (FPGA) integrated circuit (IC) that may be part of the minimal electronics 190.
  • FPGA field- programmable gate array
  • the costs and engineering design efforts to implement the printer housing 110 may also be reduced due to little or no buffering of high speed image data at the printer housing 110.
  • the system 100 may offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the printer housing 110 in a number of configurations, including, for example, a configuration with multiple FGPAs at the printer housing 110, each of which may implement the minimal electronics 190 and interface with one or more data pumps using one or more cables.
  • FIGS. 2 and 3 illustrate the arrangement of print modules and print elements on housing 110.
  • FIG. 2 shows housing 110 from the side
  • FIG. 3 shows housing 110 from below.
  • Housing 110 includes a collection of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 on face 150.
  • Print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 each include one or more print elements.
  • print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can each include a linear array of inkjet nozzles.
  • Print modules 205, 305 are arranged laterally along a column 320.
  • Print module 210 is arranged along a column 325.
  • Print modules 215, 310 are arranged laterally along a column 330.
  • Print module 220 is arranged along a column 335.
  • Print modules 225, 315 are arranged laterally along a column 340.
  • Print module 230 is arranged along a column 345. This arrangement of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 along columns 325, 330, 335, 340, 345 spans an effective print area 235 on face 150.
  • Effective print area 235 has a longitudinal width W that spans from the print elements in print modules 205, 305 to the print elements in print module 230.
  • Print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations to print selected components of an image.
  • print modules 205, 210, 305 can be deployed in a first print element association to print a first color across the entire lateral expanse of a substrate moving across face 150
  • print modules 215, 220, 310 can be deployed in a second print element association to print a second color across the entire lateral expanse
  • print modules 225, 230, 315 can be deployed in a third print element association to print a third color across the entire lateral expanse.
  • the group of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations based on the columnar position of the constituent print elements in the modules.
  • a first print element association can include modules 205, 305 deployed so that their constituent print elements are arranged in a single column.
  • a second print element association can include only print module 210.
  • Modules 215, 310 can form a third association. Associations four, five, and six include modules 220, 225 and 315, and 230, respectively.
  • the group of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations based on the lateral position of the constituent print elements in the modules.
  • a first print element association can include modules 205, 210, 305 deployed so that their constituent print elements are shifted in lateral position relative to the print elements in modules 215, 220, 310 and to the print elements in modules 225, 230, 315.
  • a second print element association can include print modules 215, 220, 310 deployed so that their constituent print elements are shifted in lateral position relative to the print elements in modules 205, 210, 305 and to the print elements in modules 225, 230, 315.
  • Modules 225, 230, 315 can form a third association.
  • the relative shifts in position can be smaller than the lateral spacing of the print elements in the modules to, in net effect, decrease the lateral spacing between print elements on housing 110 and thereby effectively increase the resolution at which an image can be printed.
  • groups of print modules can be deployed in print element associations based on the lateral expanses covered by the print modules.
  • a first print element association can include modules 205, 305, 215, 310, 225, 315 deployed to cover the laterally outer expanses of a workpiece.
  • a second print element association can include print modules 210, 220, 230 deployed to cover the laterally central expanses of a workpiece.
  • groups of print elements can be deployed in print element associations based on a combination of these and other factors. For example, groups of print elements can be deployed in a print element association based on their printing the color cyan on an outer extent of a workpiece. As another example, groups of print modules can be deployed in a print element association based on their constituent print elements printing at certain lateral positions on the laterally outer expanses of a workpiece.
  • Each print element association can have a dedicated memory location in print image buffer 165 (shown in FIG. 1) in that the association prints image data that once resided in the memory location.
  • print image buffer 165 is a collection of queues of individual buffers
  • each print element association can have an individual, dedicated queue of buffers.
  • FIG. 4 schematically illustrates a deployment of print elements with relative shifts in lateral position.
  • the illustrated portion of housing 110 includes print modules 205, 215, 225.
  • Print module 205 includes an array of print elements 405 laterally separated from one another by a distance L.
  • Print module 215 includes an array of print elements 410 laterally separated from one another by a distance L.
  • Print module 225 includes an array of print elements 415 laterally separated from one another by a distance L.
  • Print elements 405 are shifted relative to the lateral position of print elements 410 by a shift distance S.
  • Print elements 405 are shifted relative to the lateral position of print elements 415 by shift distance S.
  • Print elements 410 are shifted relative to the lateral position of print elements 415 by shift distance S.
  • Shift distance S is smaller than distance L, and the net effect of the relative lateral shifts between print elements 405, print elements 410, and print elements 415 is to decrease the overall lateral spacing between print elements on face 150 of housing 110.
  • FIG. 5 schematically illustrates the serial printing of an image 500 on two or more different workpieces using print system 100.
  • a series ofworkpieces 120, 125, 130, 135, 140 is conveyed across effective print area 235 on face 150 of printer housing 110 for printing.
  • Image 500 can be serially printed in that image 500 can be printed sequentially on workpieces 120, 125, 130, 135, 140 (i.e., the same image is printed, in succession, on various workpieces).
  • Workpieces 120, 125, 130, 135, 140 each have a longitudinal width W2. Workpiece width W2 is smaller than width W of effective print area 235. A leading edge of workpiece 120 is separated from a trailing edge of workpiece 125 by separation distance SEP. A leading edge of workpiece 125 is separated from a trailing edge of workpiece 130 by separation distance SEP. A leading edge of workpiece 130 is separated from a trailing edge of workpiece 135 by separation distance SEP. A leading edge of workpiece 135 is separated from a trailing edge of workpiece 140 by separation distance SEP. The separation distance SEP may be smaller than width W of effective print area 235. The separation distance SEP may be zero. As such, both workpiece 130 and workpiece 135 may be positioned in effective print area 235 simultaneously and be printed on at the same time.
  • FIG. 6 includes flowcharts of processes 650, 655, 660 for the serial printing of an image on two or more different workpieces using a single effective print area.
  • Processes 650, 655, 660 can be performed in whole or in part by a data processing apparatus and/or circuitry configured to exchange data with a buffer and control printing by print elements.
  • processes 650, 655, 660 can be performed by control electronics 160 using input received from workpiece conveyor 105 and workpiece detector 155.
  • process 650 may be performed by software operating in the control electronics 160 and the processes 655 and 660 may be performed by a data pump.
  • the processes of 650, 655, and 660 are separate to indicate that they can be performed concurrently and/or independently of each other.
  • the system performing the process 650 receives image data at 605.
  • the image data can be a stand-alone collection of data regarding an individual image.
  • the image data can be a graphic image format (gif) file, a joint photographic experts group (jpeg) file, PostScript, Printer Command Language (PCL), or other image data collection.
  • the system can then translate and divide the received image data according to a deployment of associated print elements at 610.
  • the image data can be translated before it is divided, divided before it is translated, or translated and divided as part of the same process.
  • the translation of image data can include, for example, a conversion of image data into a format understandable by a printing device, such as bitmap raster data, and a further conversion of the bitmap raster data into jetmap data.
  • Converting bitmap raster image data into jetmap data involves taking an input bitmap, which is arranged in an order corresponding to a geographic order used by the bitmap image format, and rearranging the bitmap raster image data to correspond to physical locations of the print elements. It may also involve dividing the image data as part of the process of converting the bitmap raster image data to jetmap data (i.e., the jetmap data is divided into image buffers corresponding print element associations).
  • the process at 610 may include converting jpeg formatted image data to bitmap formatted image data, and then converting the bitmap formatted image data into jetmap image data as image buffers corresponding to print element associations.
  • image data may be converted directly to jetmap data without first converting to an intermediary format.
  • the division of image data according to the deployment of associated print elements can include the identification of portions of the image data that are to be printed by an association of print elements based on the deployment of the association.
  • FIG. 7 illustrates one implementation of the division of image data representing an image 700 according to a deployment of print element associations.
  • Image 700 includes a cyan line 705, a magenta line 710, and a yellow line 715.
  • Cyan line 705 is printable by an association of print elements deployed to print cyan.
  • Magenta line 710 is printable by an association of print elements deployed to print magenta.
  • Yellow line 715 is printable by an association of print elements deployed to print yellow.
  • Image 725 includes cyan line 705 and is thus printable by an association of print elements deployed to print cyan.
  • Image 730 includes yellow line 715 and is thus printable by an association of print elements deployed to print yellow.
  • Image 735 includes magenta line 710 and is thus printable by an association of print elements deployed to print magenta.
  • the image data representing images 725, 730, 735 are the result of a division of data representing image 700 according to the deployment of associations of print elements to print different colors.
  • Image portion 800 includes collections of pixel rows 805, 810, 815. Pixel rows 805, 810, 815 each include a longitudinal row of pixels. Pixel rows 805 are laterally shifted relative to the position of pixel rows 810 by a shift distance S.
  • Pixel rows 805 are laterally shifted relative to the position of pixel rows 815 by shift distance S.
  • Pixel rows 810 are laterally shifted relative to the position of pixel rows 815 by shift distance S.
  • Shift distance S (and hence the lateral resolution of the printed imaged) is determined by the overall lateral spacing between print elements.
  • each pixel row 805, 810, 815 can be printed by an individual print element.
  • a single print element 405 can print a single pixel row 805
  • a single print element 410 can print a single pixel row 810
  • a single print element 415 can print a single pixel row 815.
  • the image data representing image portion 800 is divided (indicated by arrows 820)
  • three individual collections of data representing image portions 825, 830, 835 are formed.
  • Image portion 825 includes pixel rows 805 and is thus printable by a first array of print elements separated by a lateral distance L.
  • Image portion 830 includes pixel rows 810 and is thus printable by a second array of print elements separated by a lateral distance L.
  • Image portion 835 includes pixel rows 815 and is thus printable by a third array of print elements separated by a lateral distance L. The print elements in these arrays are shifted in lateral position relative to one another.
  • the image data representing image portions 825, 830, 835 are the result of a division of data representing image portion 800 according to the deployment of associations of print elements to print at different lateral positions.
  • FIG. 9 illustrates another implementation of a division of image data representing an image 900 according to a deployment of print element associations.
  • Image 900 includes a single line 905 that spans the entire lateral expanse of image 900.
  • Image 915 includes two outer line portions 925 and is thus printable by an association of print elements deployed toward the outside of a workpiece.
  • outer line portions 925 may be printable by an association that includes print modules 205, 305, by an association that includes print modules 215, 310, or by an association that includes print modules 225, 315 (FIG. 3).
  • Image 920 includes a central line portion 930 and is thus printable by an association of print elements deployed toward the center of a workpiece.
  • central line portion 930 may be printable by an association that includes print module 210, by an association that includes print module 220, or by an association that includes print module 230 (FIG. 3).
  • the image data representing images 915, 920 are the result of a division of data representing image 900 according to the deployment of associations of print elements to print different lateral expanses.
  • the system performing process 650 allocates the image data portions that result from a division to respective image queues at 615.
  • the allocation results in each buffer of image data being allocated to a respective queue.
  • each buffer of image data corresponds to an association of print elements at a printing device.
  • a set of buffers corresponds to a set of image data to be printed by the print element associations.
  • the buffers of image data, which were generated at 610, are queued in queues, with each queue corresponding to a print element association.
  • each image queue corresponding to a print element association if there are eight image queues, each image queue corresponding to a print element association, then a set of buffers of image data that correspond to the first print element association may be allocated to the first image queue, a set of buffers of image data that correspond to the second print element association may be allocated to the second image queue, and so on.
  • the memory locations where the image queues and the buffers are located can be dedicated to the storage of image data for printing by a specific print element association. For example, the memory locations may be blocked off from memory management by an operating system and the memory locations may be accessible by a data pump using direct memory access.
  • the queues for the buffers of image data may be first in first out queues (i.e., FIFO queues).
  • the system performing process 650 determines whether the system should update the locations indicating where the print image buffers (i.e., buffers of image data) are located. For example, the system might update locations at one or more data pumps. In that example, the data pumps can store a location indicating where print buffers are located at each of the image queues so the data pumps are able to access each of the memory devices where the buffers are located and retrieve image data. If, at 620, the system determines that the locations should be updated, the locations are updated with references to the buffers at 625. Otherwise, image data is received at 605 and the process continues. Also, the process continues at 605 if updated locations are not needed at 620. In some implementations, the process of 650 may stop, for example, if there are no more images to receive (e.g., no more images to print), or if the image queues are full.
  • a data pump may retrieve buffers of image data. In that example, the data pump is able to identify the proper buffers because the locations of the buffers may be updated at the data pump at 625.
  • a sufficient amount of image data for one impression of an association of print elements may be retrieved.
  • image data may be retrieved from each of the image queues.
  • portions of image data representing a portion of a single impression may be retrieved.
  • portions of image data representing several impressions may be retrieved.
  • a queue such as a FIFO queue, may store image data (e.g., sets of buffers of image data).
  • image data e.g., sets of buffers of image data.
  • positional delays are added to selected portions of image data.
  • the delays are up front delays that align image data with the associations of print elements to which respective portions of image data correspond.
  • the extent of the up front delay can be determined based on the deployment of the print element association to which image data corresponds. For example, a minimal positional delay or no delay at all may be inserted into image data that corresponds to a print element association near the entry of workpieces across an effective print area, whereas a larger positional delay may be inserted into image data that corresponds to a print element association near the exit of workpieces across an effective print area.
  • the positional delays correspond to the position of print element associations (or rather, the separation distance between print element associations), the positional delays may differ depending on a type of print head assembly that contains the print element associations. In any case, the positional delays may be a fixed delay(s) for a particular print head assembly and the delays may be measured in an amount corresponding to an amount of print lines.
  • Inserting an up front delay into image data can be performed in a number of different ways. For example, an appropriate amount of null "placeholder" data can be inserted before and after the image data portions that result from a division of image data.
  • the upfront delay can be introduced into a data communication path between a memory location and print elements.
  • a data pump may be aligned such that the data pump can insert different upfront delays for different portions of image data at different memory locations.
  • Image data with delays may be sent to a printing device at 637.
  • image data with delays may be added to a queue (e.g., a first in first out queue) prior to sending the data to a printing device.
  • the process at 655 may continue at the process of 627 after image data is sent at 637.
  • the process at 655 may stop after image data is sent at 637 for various reasons. For example, if all image data packets have been sent by a data pump, the data pump may determine at 627 that the system should no longer be printing (i.e., determine not to start or continue printing). In some implementations, empty data image packets may be sent, effectively causing no ink to be deposited on a workpiece.
  • the system can identify the entry of a leading edge of a workpiece to an effective print area of a print system at 640.
  • the entry of the leading edge can be identified using a workpiece detector (such as workpiece detector 155 (FIG. I)).
  • the further progress of the workpiece across the effective print area can be followed by sensing the speed of the workpiece, e.g., by measuring the speed of a workpiece conveyor (such as workpiece conveyor 105 (FIG. I)) using a rolling encoder.
  • the print system performing process 660 can commence printing of the workpiece at 645.
  • the printing of the workpiece can include relaying image data that has been divided according to the deployment of the print element association.
  • the image data can be relayed from a memory location to the appropriate print element association.
  • the relaying can be driven by a central data processing device, such as a central data processing device in control electronics 160.
  • the relaying can be done on a firing-by- firing basis.
  • a signal may be sent to the system performing the process of 655 (e.g., a data pump) to start printing, causing a relaying of image data to a printing device.
  • one or more workpieces may be positioned beneath the effective print area at the same time. As such, more than one workpiece may be available for serial printing.
  • FIG. 5 One example of this situation is illustrated in FIG. 5, where the separation distance SEP between workpieces is smaller than width W of effective print area 235, and, both workpiece 130 and workpiece 135 are positioned beneath effective print area 235 and available to be printed in series.
  • the system performing process 660 can also identify the entry of the leading edge of a next workpiece at 640.
  • the entry of the leading edge can be identified using a workpiece detector (such as workpiece detector 155 (FIG. I)).
  • the progress of both an initial workpiece and the next workpiece across the effective print area can be followed by sensing the speed of the workpieces, e.g., by measuring the speed of a workpiece conveyor (such as workpiece conveyor 105 (FIG. I)).
  • Printing on both workpieces can continue as the initial workpiece and the next workpiece continue to progress across the effective print area.
  • the effective print area has a longitudinal width that is greater than the sum of the width of a next workpiece and twice the separation distance between workpieces
  • an initial workpiece, the next workpiece, and yet another workpiece may be positioned beneath the effective print area at the same time.
  • three workpieces may be available for printing in series.
  • the system performing process 660 can identify the leading edge of another "next workpiece" at 640 before stopping printing on an initial workpiece. Otherwise, the system can stop printing on the initial workpiece before identifying the leading edge of another "next workpiece” at 640.
  • image data may be divided based on associations of print modules.
  • print element associations may be split across a single print module. For example, if each print module in a print system includes two rows of print elements, image data may be divided by the rows of print elements. Thus, a space between workpieces may be reduced to zero.
  • the systein(s) performing processes shown in FIG. 6 can calculate the positional delay required between print element associations (rather than having a fixed delay).
  • the memory locations can be dedicated to specific print element associations. For example, individual buffers can store image data for printing by individual print element associations. The system performing processes shown in FIG.
  • FIG. 6 shows a schematic representation of an implementation of a print system 1000.
  • System 1000 includes workpiece conveyor 1005, a printer housing 1010, a workpiece detector 1055, and control electronics 1060.
  • Workpiece conveyor 1005 conveys workpieces 1020, 1025, 1030, 1035 in a direction D across an effective print area 1040 of printer housing 1010.
  • Workpiece conveyor 1005 includes an encoder 1007 that senses the speed of workpieces 1020, 1025, 1030, 1035. Encoder 1007 also generates a signal that encodes the sensed speed and relays the signal to control electronics 1060.
  • Workpiece detector 1055 is an optical sensor that detects the position of one or more workpieces 1020, 1025, 1030, 1035, and generates trigger signals (such as trigger signals 1056 and 1057) based upon that detection.
  • Printer housing 1010 includes a collection of print modules arranged laterally along a series of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018. This arrangement of print modules spans an effective print area 1040. Each group of print modules deployed along each of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 constitutes a print element association. As examples, print modules 1091, 1093, 1095 constitute a print element association along column 1018, and print modules 1092, 1094 constitute a print element association along column 1017. [0086] Control electronics 1060 controls the performance of print operations by system 1000. Control electronics 1060 includes a collection of print image buffers 1065.
  • Control electronics 1060 can access the print image buffers in collection 1065 to store and retrieve image data.
  • there are eight print image buffers in collection 1065 and each print image buffer is dedicated to a print element association arranged along one of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018.
  • print image buffers 1066, 1067, 1068, 1069 may correspond to the print element associations arranged along columns 1015, 1016, 1017, 1018, respectively.
  • each print element association prints image data only from the associated print image buffer.
  • Control electronics 1060 also includes a data pump 1070.
  • a “data pump” refers to a functional component, e.g., implemented in hardware, software, programmable logic or a combination thereof, that processes data and transmits it to one or more printing devices for printing.
  • the data pump can refer to a direct memory access (DMA) device.
  • the data pump 1070 is positioned along the data communication path between the print element associations and their dedicated print image buffers in collection 1065.
  • the data pump 1070 can receive and store image data from each print image buffer in collection 1065.
  • the data pump 1070 is programmable by control electronics 1060 to delay the communication of information from the print image buffers in collection 1065 to the print element associations.
  • control electronics 1060 can divide image data according to the deployment of print element associations in effective print area 1040. Control electronics 1060 can also allocate the divided image data to an appropriate print image buffer in collection 1065.
  • workpiece detector 1055 detects the leading edge of workpiece 1035 and generates trigger signal 1056. Based on receipt of trigger signal 1056, control electronics 1060 can program data pumps 1070 with positional delays 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078.
  • Delay 1071 delays the communication of image data from a first print image buffer in collection 1065 to the print element association arranged along column 1011.
  • Delay 1072 delays the communication of image data from a second print image buffer in collection 1065 to the print element association arranged along column 1012.
  • Delays 1073, 1074, 1075, 1076, 1077, 1078 delay the communication of image data from respective print image buffers in collection 1065 to the print element associations arranged along columns 1013, 1014, 1015, 1016, 1017, 1018.
  • the print element associations arranged along columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 successively print.
  • the data pump 1070 dumps image data to the appropriate receiver electronics at the print element associations arranged along columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 (i.e., the data pump 1070 causes the image data to be transmitted to the printing device).
  • the dumped image data identifies print elements that are to fire for the instantaneous position of workpiece 1035 in effective print area 1040 (the identification of print elements may be implicit; e.g., an ordering of image data in a data packet in a format corresponding to an order of print elements and/or print element associations at a printing device). Data for successive firings can be loaded from print image buffers in collection 1065 to the data pump 1070 during firings.
  • workpiece 1030 can be conveyed by workpiece conveyor 1005 to enter effective print area 1040.
  • Workpiece detector 1055 detects the leading edge of workpiece 1030 and generates trigger signal 1057. Based on receipt of trigger signal 1057, control electronics 1060 may cause the data pump 1070 to insert delays 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086.
  • Delay 1079 delays the communication of image data from a first print image buffer in collection 1065 to the print element association arranged along column 1011.
  • Delay 1080 delays the communication of image data from a second print image buffer in collection 1065 to the print element association arranged along column 1012.
  • Delays 1081, 1082, 1083, 1084, 1085, 1086 delay the communication of image data from respective print image buffers in collection 1065 to the print element associations arranged along columns 1013, 1014, 1015, 1016, 1017, 1018. Alternatively, delays may already be inserted into image data and the trigger signal may cause the sending of image data by the data pump 1070.
  • the data pump 1070 dumps image data to the appropriate receiver electronics for the print element and workpieces 1035, 1030 are printed at the same time.
  • Image data for each workpiece may differ. For example, if two workpieces were to have two different images printed upon them, different image data representing different images would be used to print on each workpiece. hi that example, two sets of image data may be gathered at a data pump.
  • a first set of image data may correspond to a first image (e.g., a print line of an image of a frog) and a second set of image data may correspond to a second image (e.g., three print lines of an image of an apple).
  • Gathering the image data may include taking image data from image queues and/or generating a data packet that comprises the first and second sets of image data.
  • the gathered image data may be provided to the print element associations by sending a data packet to the printing device that includes the print element associations (e.g., a data packet include the print line of the image of the frog and the three print lines of the image of the apple).
  • a first portion of the print buffers may store the first set of image data corresponding to the first image (e.g., the print line of the image of the frog) and a second portion of the print buffers (e.g., print buffers 1067, 1068, 1069) may store the second set of image data corresponding to the second image (e.g., the three print lines of the image of the apple).
  • a first set of print elements corresponding to the first set of print buffers can print the first image (e.g., the print line of the image of the frog) and a second set of print elements corresponding to the second set of buffers (e.g., the print elements in the associations of print elements along columns 1016, 1017, 1018) can print the second image (e.g., the three print lines of the image of the apple).
  • different print elements print two images at substantially a same time (e.g., print elements along the columns 1015, 1016, 1017, 1018 may fire at substantially a same time).
  • the image data for each workspace may represent the same image.
  • the same image may be continually printed on multiple workpieces. hi that example, if two workpieces are printed at substantially a same time, different portions of the same image may reside in different sets of print buffers such that different print elements print different portions of the same image.
  • a same workpiece may be printed on with different sets of image data.
  • the process of printing images on a workpiece is synchronized with the entry of a new workpiece in the print area.
  • data pump 1070 dumps image data to the print head assembly at the precise time the print element association is to deposit ink on the workpiece to generate a high-quality image on the workpiece. Poor image quality on the workpiece is avoided due to no undue pauses or gaps when receiving the image data for the print head assembly.
  • the printing system 1000 can be a scalable architecture that can print images at high image data rates.
  • the control electronics 1060 can be implemented on a personal computer (PC) card that is connected into a Peripheral Component Interconnect (e.g., a PCI-type interconnection system) in the personal computer.
  • PC personal computer
  • Peripheral Component Interconnect e.g., a PCI-type interconnection system
  • the high-speed characteristics of PC memory e.g., RAM
  • the data pump 1070 can send image data to the print head assembly at high data rates to enable just-in-time printing of images on the workpieces as the workpieces move along the conveyor. Because the amount of memory can be reduced on the print head assembly, the print head assembly may be implemented at a lower cost. The type of memory used on the print head assembly may also be implemented at a lower cost. In one implementation, the type of memory implemented on the print head assembly is a floating ⁇ point gate array (FPGA) integrated circuit (IC). The costs and engineering design efforts to implement the print head assembly may also be reduced due to little or no buffering of high speed image data at the print head assembly.
  • FPGA floating ⁇ point gate array
  • the data rate of image data sent to the print head assembly can be scaled.
  • a personal computer may have multiple PC cards of control electronics 1060 for the print head assembly by having each PC card of control elections 1060 connected into a PCI slot of the computer.
  • two-sided newspaper printing may require 2 Gb/s of image data to be sent to the print head assembly to enable just-in-time printing of an image on a workpiece.
  • the data pump 1070 for each of the control electronics 1060 is able to send around 1 Gb/s of image data to the print head assembly then 2 data pumps can be connected in parallel in corresponding PCI slots to deliver the 2 Gb/s for just- in-time printing of the two-sided newspaper image.
  • each PC card of control electronics 1060 may have an optical connection to the print head assembly.
  • the top and bottom sides of the workpiece can receive 1 color printed on each side.
  • the system 1000 may be scalable in having multiple computers to operate in parallel to deliver higher image data rates to the print head assembly.
  • each computer may have at least one PC card of control electronics 1060 connected to the PCI slot of the computer.
  • four parallel computers, each containing two PCB cards of control electronics 1060, can offer 8Gbps aggregate bandwidth, which can be enough to print four colors on each of the two sides of a newspaper in real time.
  • the system 1000 may offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the print head assembly in a number of configurations, including adding multiple FGPAs to the print assembly.
  • the system 1000 can handle high bandwidths of image data, the system 1000 can provide just-in-time printing of high resolution images at high conveyor speeds, large-size images (e.g., wide and/or long images) at high conveyor speeds, and/or multi-color and grayscale images at high conveyor speeds.
  • large-size images e.g., wide and/or long images
  • multi-color and grayscale images at high conveyor speeds.
  • FIG. 11 shows is a flowchart of a process for synchronized printing on a workpiece using the system 1000 of FIG. 10.
  • the system 1000 receives the image data at 605.
  • the image data may be received into a personal computer having a PC card with a data pump 1070 in the control electronics 1060 of the PC card.
  • the system 1000 can translate and divide the received image data according to the deployment of the associated print elements on the print assembly at 610.
  • the image data can be translated before it is divided or can be divided before being translated.
  • the system 1000 can allocate the image data portions that result from a division to different memory locations, such as individual print buffers at 615.
  • a workpiece may be conveyed into the print area at 1105.
  • a workpiece is not limited to be conveyed into the print area only at 1105, but may occur at other times, such as before 615 or 610.
  • the process of printing the received image on the workpiece is synchronized with the system 1000 detecting that the workpiece has entered the print area at 1170.
  • the detection for this process utilizes the encoder 1007 to sense the speed of the workpiece across the conveyor at 1110.
  • the encoder 1007 encodes a signal with information for the sensed speed and relays the encoded signal to control electronics 1060.
  • the optical sensor 1055 detects the position of the workpiece and generates a signal to send to the data pump 1070 in the control electronics 1060 to facilitate synchronous printing on the workpiece.
  • the data pump 1070 fetches image data according to the deployment of printing element associations at 1120.
  • the image data fetched by the data pump 1070 may be from the print image buffers 1065 of the PC.
  • the data pump 1070 is not limited to fetching image data from the computer's different memory locations through the PCI slot at 1120, but rather may fetch image data at a time between 1125 and 1130.
  • the data pump 1070 receives delay information for the associated columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, and 1018.
  • the delay information that is delivered to the data pump through the PCI slot may be delay values that are pre-programmed or fixed and are generated by an application software.
  • the delay values may represent the physical distance between the associated columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, and 1018 of print elements on the print head assembly. For example, if a print head assembly has four columns of associated columns with an inch of distance between each column, the first four delay values can represent an inch worth of scan line information. So, the physical design of the associated print element columns can determine the delay values.
  • the data pump 1070 is not limited to receive delay information at 1125, but may receive delay information at a time prior to 1125.
  • the data pump arranges each column of data in time according to each column' s delay value.
  • the delay values are used by multiple state machines in the data pump to correctly arrange the image data into logical scan lines.
  • the data pump serializes the data from each column into a data packet at 1130 and sends the serialized data to the print head assembly across a communication channel at 1135.
  • the communication channel uses an optical fiber connection.
  • the optical fiber may transmit image data at a rate of 1.25 Gb/s.
  • the communication channel may utilize a copper cable connection.
  • each scan line data packet at 1137 can serve as a trigger that causes the image data in the packet to be printed substantially immediately as the data arrives at the print head assembly.
  • the electronics on the print head assembly receives the data packet sent over the communication channel and deserializes the data packet at 1140.
  • the deserialized image data is allocated to the associated print elements on the print head assembly at 1145, and the image is printed on the workpiece at 1150.
  • data received at the print head assembly is stored in one or more latches, and new (additional) data that is being received at the print head can serve as a trigger to print the latched data.
  • FIG. 12 schematically illustrates a data pump 1200.
  • the data pump 1200 represents a hardware architecture for assembling the scan line data packets to send to the print head assembly.
  • the data pump 1200 includes circuitry and components on a PC board that plugs into the PCI or PCI-X (Peripheral Component Interconnect Extended) or equivalent slot of the host computer.
  • the data pump 1200 includes a parallel array of separate state machines 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254, one for each logical image queue. Each image queue can correspond to a separate physical column of associated print elements. [00109] Each state machine can have a corresponding delay input that is configured to correctly arrange the image data into logical scan lines.
  • Each state machine 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 fetches image data from the host computer's PCI bus.
  • the outputs of the read state machines are fed into a serializer 1266 that feeds the communication interface 1276 in the correct data order such that the appropriate image data is sent to the print head assembly at the correct timing.
  • the serializer 1266 creates a packet of image data to travel to the print head assembly. Transmission of each scan line data packet can serve as a trigger that causes the image data in the packet to be printed substantially immediately as the data arrives at the print head assembly.
  • the data received at the print head assembly is stored in a latch until new data arrives at the print head assembly.
  • the new data arriving at the print head assembly can serve as a trigger to print the data that has been latched.
  • an eight-column architecture for the data pump is used in which each of the physical columns of associated print elements function logically independently from the others, so that printing on the workpiece can be substantially continuous and without printing gaps.
  • the schematic shows how the eight different delay values 1220, 1224, 1228, 1232, 1236, 1240, 1248, and 1252 serve as input delay values for the eight different state machines 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 that read image data from the eight different buffers (1065 in FIG. 10) in the PC's memory space.
  • the state machines are responsible for gathering image data from the PC out of a buffer 1065 that is specific to each state machine.
  • the state machines gather image data that is temporally spaced in time, so that corresponding print columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 each can print an image (or part of an image) on the workpiece at the correct time.
  • the delay values 1220, 1224, 1228, 1232, 1236, 1240, 1248, and 1252 for the input of each corresponding state machine 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 are preprogrammed by application software.
  • the delay values are fixed values that represent the physical distance between the columns of associated print elements on the print head assembly.
  • the state machine 1222 for column 1 fetches and processes the image data from the PCI bus after being delayed by delay value Dl 1220.
  • delay Dl is completed and state machine 1226 for column 2 fetches and processes the image data from the PCI bus after being delayed by delay value D2 1224.
  • the process continues until all of the state machines send image data to the serializer 1266.
  • the state machine 1222 for column 1 fetches and processes new image data from the PCI bus after being delayed by delay value Dl 1220.
  • the state machines' fetching of data from the computer's PCI bus may be done ahead of time into a FIFO memory or an equivalent memory to minimize the effects of computer bus latency on the printing.
  • the data pump 1200 can facilitate just-in- time, synchronous transmission of image data from the host PC without the need for buffering or synchronizing logic at the print head assembly. Additional data pumps can be added to the host computer to scale to higher resolutions and/or to increase bandwidth requirements. Because each of the physical columns of associated print elements function logically independently from each other, bit manipulation does not have to be performed in the hardware of the print head assembly to achieve real-time printing of images with varying amounts of non-printed area between each image. The system can facilitate software bit manipulation, so bit manipulation can be performed at high data rates, and engineering and material costs can be reduced. [00114] FIG. 13 schematically illustrates a packet of image data generated by the data pump.
  • the scan line data packet 1305 includes information to be used by the print head assembly.
  • the packet 1305 has a start of frame (SOF) 1310 and setup data 1313 for the print head assembly.
  • the setup data 1313 may specify an operating mode on the print head assembly (e.g., forward direction or reversion direction).
  • the image data 1314-1328 for each column include a number of bytes that depends on the number of elements in the print column.
  • the image data for column 1 can have a number of bytes that depends on the number of print elements in column 1.
  • PH 1 represents print element 1 for column 1
  • PH 2 represents print element 2 for column 1
  • PH 5 represents print element 5 for column 1.
  • CRC 1330 is the cyclic redundancy check, a 32-bit number that is generated from the data being sent so that the receiving electronics can verify that the entire data packet was sent correctly. The last word is the End of Frame 1332 to complete the data packet.
  • the packet 1305 is sent from the serializer 1266 to the communication interface 1276 on the data pump 1200 that converts the electronic signals to light signals to send to the optical fiber connection.
  • the image data can be received by receiving hardware on the print head assembly.
  • the receiving hardware can include an optical transceiver and logic to receive the light signal and convert the light signal into electronic signals.
  • the receiving hardware also may include a deserializer to deserialize the data, and a decoder to decode the fiber transmission protocol.
  • the image data can then be sent to the corresponding print element electronics to turn on or turn off the individual ink nozzles.
  • FIG. 14 shows exemplary specifications for the data pump.
  • the data pump can have more than one type of hardware interface with the communication channel to the print assembly.
  • One type of hardware interface can use PCI-X and optical fiber 1405 (for industrial or high-bandwidth applications) to send print data and control information to the print head assembly at data rates 1430 over lGb/s.
  • Another type of hardware interface is a PCI copper-cable interface 1410 having an image bandwidth capability 1430 of around 96Mbit/s.
  • the bus type 1415 for the optical fiber data pump is PCI-X and the bus type for the copper cable data pump is PCI.
  • the data pump can carry synchronous image data to the print head assembly, as well as lower-speed control data and tending or monitoring data.
  • the control communication channels may be transparent to the high speed image data, and may be protocol-independent.
  • the data pump's external interface 1420 for the optical fiber and the copper cable can differ, with the optical fiber having a duplex optical fiber, and the copper cable having a 50- conductor Flat Flexible Cable (FFC).
  • the optical fiber and the copper cable versions can have the same hardware control inputs 1425.
  • Both the optical fiber version and the copper-cable version can operate the printing system in various printing modes 1445: triggered, free-running, forward scanning, and reverse scanning.
  • Triggered mode can be used in printing images onto discrete, individual workpieces using a hardware trigger signal to initiate each image print.
  • Free-running mode can provide printing of a continuous run of images, with programmable white spaces between each printed image.
  • Forward and reverse scanning modes can provide printing in the forward or reverse directions. In one implementation, a single image may be printed for the forward or reverse scanning mode. In another implementation, multiple images may be printed while the system is in the forward or reverse scanning mode.
  • the printing modes may also be mixed, so a reverse trigger mode or a reverse free-running mode may be utilized.
  • the data pump can service a print head assembly with one to eight logically independent columns of printing elements, with up to 5120 nozzles per column.
  • This configuration can allow the use of large print head assemblies of 720dpi (dots per inch) to be constructed with approximately 32 to 64 jet modules with 304 print elements each that can be fed by a single optical fiber.
  • the size of the print head assembly may be determined as a function of the nozzle count multiplied by the maximum firing frequency of the nozzles, as well as the 1.25 Gb/s data rate.
  • the frequency of the printing jets may operate in a range of around 4OkHz.
  • several data pumps may be plugged into one PC motherboard and operated in parallel to provide higher bandwidths for larger print head assemblies.
  • several PCs with data pumps may be operated in parallel to utilize large print head assemblies at low cost.
  • Each column of print elements can be independently provided with image data over the optical fiber or copper cable to allow continuous image printing, with little or no white space between images, and without a hardware bitmap-to-jetmap converter. Instead, the bitmap-to-jetmap conversion can be performed in real time by software running on the PC.

Abstract

Systems and techniques for printing on a workpiece. In one implementation, a print system (100) has a collection of print elements arranged to span a print area, a workpiece conveyor (105) to move a workpiece (115, 120) through the print area, and a detector (155) to detect a position of the workpiece in the print area. The print system also has control electronics (160) to instruct the collection of print elements to print an image on the workpiece substantially immediately when the collection of print elements receive the instruction through an optical communication path.

Description

PRINTING SYSTEM ARCHITECTURE
BACKGROUND
[0001] This disclosure relates to printing systems.
[0002] When an image such as a picture or a page of text is to be printed, image data generally is translated by a computer system from one format into another format understandable by a printer and then relayed to a print buffer associated with the printer. The print buffer receives the translated image data and stores at least a portion of the image data for subsequent printing by the printer.
[0003] Many printers include multiple discrete print elements (e.g., an inkjet nozzle in an inkjet print module). The print elements can be deployed to print selected components of the image. For example, selected print elements can be deployed to print at selected locations on a workpiece. As another example, in color printing, selected print elements can be deployed to print selected colors. Control electronics can coordinate the printing of images by deploying the print elements to print image data from the print buffer. [0004] The print elements in a printer can be arranged in groups called print modules. The print elements in a module can be grouped according to the deployment of the constituent elements. For example, print elements that print at a selected array of positions can be grouped in a print module. As another example, print elements that print the same color (at a selected array of positions) can be grouped into a print module.
SUMMARY
[0005] The following disclosure relates to systems and techniques for printing. In one implementation, described is a method for synchronously printing an image on a workpiece. The method involves receiving image data at a location that is remote from a print head, arranging the received image data according to physical parameters of the print head to be used to print the image data on the workpiece, and sensing the speed of the workpiece on a workpiece conveyor relative to the print head. The method also involves detecting the position of the workpiece on a workpiece conveyor, forming a packet of image data, and sending the packet of image data to the print head. The method includes using the receipt of the packet of image data as a trigger to cause the image data at the print head to be printed substantially immediately on the workpiece. [0006] One aspect of the image data being printed substantially immediately on the workpiece may involve printing image data substantially at an instant at which the image data arrives at the print head. In another aspect of the image data being printed substantially immediately on the workpiece, the image data can be received at the print head and latched, and the latched image data can be printed on the workpiece when a subsequent image data packet arrives at the print head. The subsequent image data packet arriving at the print head can cause the latched image data to be printed on the workpiece. The subsequent image data packet arriving at the print head can be a next subsequent image data packet. Alternatively, a receipt of a subsequent image data packet other than the next subsequent image data packet can cause the latched data to be printed on the workpiece.
[0007] In another aspect of the method, the arranging, sensing, detecting, and forming may be order-independent, and two or more of the receiving, arranging, sensing, detecting, forming, sending, and using may be performed at least partially in parallel. The method may involve translating the image data into a format that is understandable by a printer. The packet of image data may be formed by a data pump. The packet of image data can be sent to the print head at a data rate sufficient to minimize gaps and white spaces when printing. Image data for the data pump can be received from a Peripheral Component Interconnect-type bus of a host computer. In one aspect, a number of print elements on the print head can be associated according to a physical column of associated print nozzles. The physical column of associated print nozzles is configured to function logically independently of other physical columns of associated print nozzles on the print head.
[0008] Another implementation describes a method that involves detecting a position of a workpiece relative to a print head with multiple print elements, dividing image data that represents an image into portions according to a configuration of print elements on the printing head, and communicating along an optical communication path the divided image data to the print elements. The method also involves synchronizing a timing of printing the image on the workpiece by the print elements with the detected position of the workpiece. [0009] The synchronization may involve using the communication of the divided image data as a trigger to cause the printing of the image substantially immediately as the data arrives at the print elements. The method may also include allocating the divided image data to different memory locations. The allocation of the divided image data to different memory locations can involve allocating the divided image data to individual memory buffers and/or allocating the divided image data to an individual memory buffer dedicated to selected print elements. The timing of the printing can include timing the arrival of the divided image data at the print elements based on the position of the workpiece. The timing of the arrival of the divided image data can include introducing a delay into the optical communication path. The introduction of the delay into the optical communication path may involve programming a direct memory access device to delay the direct memory access, transmission, and printing of the first portion of the divided image data.
[0010] Also described is a print system with a collection of print elements arranged to span a print area, and a workpiece conveyor to move a workpiece through the print area. The print system has a detector to detect a position of the workpiece in the print area, and control electronics to instruct the collection of print elements to print an image on the workpiece substantially immediately when the collection of print elements receive the instruction through an optical communication path.
[0011] The control electronics may include a transceiver to send the instruction to the collection of print elements. The collection of print elements may be a collection of inkjet print elements. The system may have a data processing device to perform operations in accordance with logic with a set of machine-readable instructions. The operations can include a division of a collection of image data into portions according to the arrangement of print elements on a print head. The system may also include a collection of memory locations to store the divided portions of image data, and a timing element to time the printing of the image data portions according to the arrangement of print elements on a print head. [0012] Another implementation described here involves a printing apparatus with a first set of electronics to send image data to a second set of electronics on a print head, in which each set of electronics includes multiple components to enable high-speed printing on a workpiece. The printing apparatus has an optical cable connection to connect the first and second sets of electronics. Each set of electronics includes an optical connection interface. The printing apparatus has a triggering device to cause the image data to be printed substantially immediately on the workpiece as the image data from the first set of electronics arrives at the second set of electronics.
[0013 ] In one aspect, a complexity of design of the first set of electronics can be greater than a complexity of design of the second set of electronics. The triggering device can be configured to enable synchronous printing of image data on the workpiece as the image data arrives at the second set of electronics. The second set of electronics can be physically separated or physically remote from the first set of electronics. [0014] The described print systems and techniques can be implemented to realize one or more of the following advantages. The process of printing images on a workpiece is synchronized with the entry of a new workpiece in the print area of a printer. When a leading edge of a new workpiece is detected, image data is sent to the print head assembly at the precise time the print element association is to deposit ink on the workpiece to generate a high-quality image on the workpiece. Poor image quality on the workpiece can be avoided by substantially eliminating excessive pauses or gaps when receiving the image data for the print head assembly. Transmission of image data to the print head assembly can serve as a trigger that causes the image data to be printed substantially immediately as the data arrives at the print head assembly.
[0015] The printing system can be a scalable architecture that can print images at high image data rates. The printing system also can be implemented with lower cost hardware and design effort. The primary printing electronics can be implemented on a personal computer (PC) (e.g., a single-board computer card) and connected through a Peripheral Component Interconnect (PCI) on a host computer. The high-speed characteristics of PC memory (e.g., RAM) can be used to reduce the amount of memory needed for the print head assembly. Moreover, the disclosed architecture enables the print head assembly to be controlled by a relative small number of components, each being processed at relatively low speeds. [0016] A data pump can send image data to a print head assembly at high data rates to enable just-in-time printing of images on the workpieces as the workpieces move along a workpiece conveyor. Because the amount of memory can be reduced on the print head assembly, the print head assembly may be implemented at a lower cost. The type of memory used on the print head assembly may also be implemented at a lower cost. In one implementation, memory for the print head assembly can be field programmable gate array (FPGA) integrated circuit (IC), which is programmed to control the print head electronics. As a result, the costs and engineering design efforts to implement the print head assembly may be reduced due to little or no buffering of high speed image data at the print head assembly. [0017] In one implementation, the data rate of image data sent to the print head assembly can be scaled by having multiple data pumps connected to a single host computer. In another implementation, the system may be scalable in having multiple computers to operate in parallel to deliver higher image data rates to the print head assembly. In this implementation, each computer may have at least one PC card of control electronics connected to the PCI slot of the computer. The system may also offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the print head assembly in a number of configurations, including adding multiple FGPAs to the print assembly. Because the system can handle high bandwidths of image data, the system can provide just-in-time printing of high resolution images at high conveyor speeds, large-size images at high conveyor speeds, and/or multi-color and grayscale images at high conveyor speeds.
[0018] Image data that represents an image to be printed can be divided according to the deployment of associations of print elements in a printer. The divided image data can be stored at different memory locations, depending on the deployment of the print element associations. The different memory locations can be individual memory buffers. The memory buffers can be part of associated queues of like memory buffers. The data pump can receive the image data from the different memory locations. Each physical column of associated print modules can function logically independently from the others, so that printing on the workpiece can be continuous and substantially without printing gaps. The data pump can facilitate just-in-time, synchronous transmission of image data from the host PC without the need for buffering or additional robust or powerful logic at the print head assembly. Additional data pumps can be added to the host computer to scale to higher resolutions and/or to increase bandwidth requirements. Additional parallel host computers can be added to the system to further scale printing operations.
[0019] Because each of the physical columns of associated print modules function logically independently from the others, bit manipulation does not have to be performed in the hardware of the print head assembly to achieve real-time printing of images. The system can facilitate software bit manipulation, so bit manipulation can be performed at high data rates, and engineering and material costs can be reduced.
[0020] The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages of the invention will be apparent from the description and drawings, and from the claims.
DESCRIPTION OF DRAWINGS
[0021] FIG. 1 shows a block diagram of a printing system.
[0022 ] FIGS . 2 and 3 illustrate an arrangement of printer elements in the printing system of FIG. 1.
[0023] FIG. 4 schematically illustrates the deployment of print elements with relative shifts in lateral position.
[0024] FIG. 5 schematically illustrates the serial printing of an image on different workpieces.
[0025] FIG. 6 is a flowchart of a process for the serial printing of an image on different workpieces.
[0026] FIGS. 7, 8, and 9 illustrate implementations of the division of image data according to the deployment of associated print elements.
[0027] FIG. 10 shows a schematic representation of an implementation of a printing system.
[0028] FIG. 11 is a flowchart of a process for synchronized printing on a workpiece.
[0029] FIG. 12 schematically illustrates a data pump.
[0030] FIG. 13 schematically illustrates a packet of image data generated by the data pump.
[0031] FIG. 14 shows exemplary specifications for the data pump.
[0032] Like reference symbols in the various drawings indicate like elements.
DETAILED DESCRIPTION
[0033 ] FIG. l is a block diagram of a print system 100. Print system 100 includes a workpiece conveyor 105 and a printer housing 110. Workpiece conveyor 105 produces relative motion between a series of workpieces 115, 120, 125, 130, 135, 140, 145 and printer housing 110. In particular, workpiece conveyor 105 conveys workpieces 115, 120, 125, 130, 135, 140, 145 in a direction D across a face 150 of printer housing 110. Workpiece conveyor 105 can include a stepper or continuous motor that moves a roller, a belt, or other element that can retain workpieces 115, 120, 125, 130, 135, 140, 145 during conveyance. Workpieces 115, 120, 125, 130, 135, 140, 145 can be any of a number of different substrates upon which system 100 is to print. For example, workpieces 115, 120, 125, 130, 135, 140, 145 can be paper, cardboard, microelectronic devices, or foodstuffs. [0034] Printer housing 110 houses a workpiece detector 155. Workpiece detector 155 can detect the position of one or more workpieces 115, 120, 125, 130, 135, 140, 145. For example, workpiece detector 155 can be a laser/photodetector assembly that detects the passage of edges of workpieces 115, 120, 125, 130, 135, 140, 145 across a certain point on face 150.
[0035] Located remotely from the printer housing 110 are control electronics 160. The control electronics 160 interface with the printer housing 110 by a cable 195 (e.g., an optical cable) and minimal electronics 190. Control electronics 160 control the performance of print operations by system 100. Control electronics 160 can include one or more data processing devices that perform operations in accordance with the logic of a set of machine-readable instructions. Control electronics 160 may be, for example, a personal computing system that runs image processing software and software for controlling printing at the printer housing 110.
[0036] Located within the control electronics 160 is a print image buffer 165. Print image buffer 165 is one or more data storage devices that store image data for printing by print elements. For example, print image buffer 165 can be a collection of random access memory (RAM) devices. Print image buffer 165 can be accessed by control electronics 160 to store and retrieve image data.
[0037] The control electronics 160 interface with the printer housing 110 via the cable 195 and minimal electronics 190. The control electronics 160 can send data across the cable 195, and the minimal electronics 190 can receive that data for printing at the printer housing 110. The control electronics 160 may have special circuitry (e.g., a data pump, as described in more detail in reference to FIG. 10, that can receive and/or retrieve image data from print image buffers, store the image data, and enable print elements at a printing device to receive image data in time to deposit ink on the corresponding image locations on workpieces as they are moving along a conveyor) for generating data to send to the printer housing 110. The minimal electronics 190 may be, for example, a field-programmable gate array that includes a microprocessor, transceiver, and minimal memory. The minimal electronics 190 may be connected to the printer housing 110 such that the minimal electronics 190 can be disconnected easily should the printer housing 110 and/or hardware in the printer housing 110 be changed. For example, if the printer housing 110 is replaced with a newer printer housing containing newer printing modules, the minimal electronics 190 can be disconnected from the older printer housing 110 and connected to the newer printer housing. [0038] The printing of an image is divided between the control electronics 160 and the minimal electronics 190 such that the control electronics performs image processing and controls printing, whereas the minimal electronics 190 receives data received via the cable 195 and uses that data to cause firing of print elements at the printer housing 110. Thus, for example, image data may be converted to jetmap image data, which may include dividing the image data into multiple image queues of image buffers as part of the process of converting to jetmap image data (as described in more detail later); delays may be inserted into image data (e.g., inserting delays corresponding to a deployment of print element associations); and image data may be sent (e.g., encoding data packets of image data and sending by a receiver) at an appropriate time by the control electronics 160; whereas, the minimal electronics 190 may merely receive the image data (e.g., decode image data packets sent across the cable 195) and relay the image data such that the image data is printed on a workpiece (e.g., cause firing of inkjet nozzles according to the image data). The control electronics 160 may synchronize printing of an image at the printer housing 110. Following the previous example, the control electronics 160 may synchronize the printing of an image by receiving an indication of a leading edge of a workpiece and sending image data across the cable 195 to cause the printing of an image at the printer housing 110.
[0039] The control electronics 160 can send image data to the printer housing 110 at high data rates to enable "just-in-time" printing of images on the workpieces as the workpieces move along the workpiece conveyor 105. In one implementation of just-in-time printing, transmission of image data to the printer housing 110 can serve as a trigger that causes the image data in a packet to be printed "substantially immediately" as the data arrives at the printer housing 110. In this implementation, the image data may not be stored on a storage component on the printer housing prior to printing the image data, but can be printed as the data arrives at the printer housing. Just-in-time printing may also refer to printing image data substantially at an instant at which the image data arrives at the printer housing.
[0040] In another implementation of just-in-time printing, data received at the printer housing is stored in one or more latches, and new or subsequent data that is being received at the printer housing can serve as a trigger to print the latched data. In this implementation, the data received at the printer housing is stored in a latch until the subsequent data arrives at the printer housing, and the subsequent data arriving at the printer housing can serve as a trigger to print the data that has been latched. The data, subsequent data, and latched data may be received and/or stored at the printer housing in the form of an image data packet. In one case, the subsequent data arriving at the printer housing is the next subsequent data. Alternatively, the subsequent data arriving at the printer housing is subsequent data other than the next subsequent data, such as subsequent data arriving after the next subsequent data. Because the image data is being printed at such a high-data rate, the data printed from latched data can also refer to data being printed "substantially immediately" as the data is arriving at the printer housing.
[0041] Because the printer housing 110 has minimal electronics 190 and a reduced amount of memory, the printer housing 110 may be implemented at a lower cost. The type of memory used on the printer housing 110 may also be implemented at a lower cost. In one implementation, the type of memory implemented on the printer housing 110 is part of a field- programmable gate array (FPGA) integrated circuit (IC) that may be part of the minimal electronics 190. The costs and engineering design efforts to implement the printer housing 110 may also be reduced due to little or no buffering of high speed image data at the printer housing 110. The system 100 may offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the printer housing 110 in a number of configurations, including, for example, a configuration with multiple FGPAs at the printer housing 110, each of which may implement the minimal electronics 190 and interface with one or more data pumps using one or more cables.
[0042] FIGS. 2 and 3 illustrate the arrangement of print modules and print elements on housing 110. In particular, FIG. 2 shows housing 110 from the side, whereas FIG. 3 shows housing 110 from below.
[0043] Housing 110 includes a collection of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 on face 150. Print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 each include one or more print elements. For example, print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can each include a linear array of inkjet nozzles.
[0044] Print modules 205, 305 are arranged laterally along a column 320. Print module 210 is arranged along a column 325. Print modules 215, 310 are arranged laterally along a column 330. Print module 220 is arranged along a column 335. Print modules 225, 315 are arranged laterally along a column 340. Print module 230 is arranged along a column 345. This arrangement of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 along columns 325, 330, 335, 340, 345 spans an effective print area 235 on face 150. Effective print area 235 has a longitudinal width W that spans from the print elements in print modules 205, 305 to the print elements in print module 230. [0045] Print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations to print selected components of an image. For example, print modules 205, 210, 305 can be deployed in a first print element association to print a first color across the entire lateral expanse of a substrate moving across face 150, print modules 215, 220, 310 can be deployed in a second print element association to print a second color across the entire lateral expanse, and print modules 225, 230, 315 can be deployed in a third print element association to print a third color across the entire lateral expanse.
[0046] As another example, the group of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations based on the columnar position of the constituent print elements in the modules. For example, a first print element association can include modules 205, 305 deployed so that their constituent print elements are arranged in a single column. A second print element association can include only print module 210. Modules 215, 310 can form a third association. Associations four, five, and six include modules 220, 225 and 315, and 230, respectively. Forming associations of print elements in this columnar manner allows the printing of back-to-back dissimilar images with variable but small or nonexistent non-printed area between finished image areas, relative to longitudinal width W, without need for complex real-time adjustments in image data. [0047] As another example, the group of print modules 205, 210, 215, 220, 225, 230, 305, 310, 315 can be deployed in print element associations based on the lateral position of the constituent print elements in the modules. For example, a first print element association can include modules 205, 210, 305 deployed so that their constituent print elements are shifted in lateral position relative to the print elements in modules 215, 220, 310 and to the print elements in modules 225, 230, 315. A second print element association can include print modules 215, 220, 310 deployed so that their constituent print elements are shifted in lateral position relative to the print elements in modules 205, 210, 305 and to the print elements in modules 225, 230, 315. Modules 225, 230, 315 can form a third association. The relative shifts in position can be smaller than the lateral spacing of the print elements in the modules to, in net effect, decrease the lateral spacing between print elements on housing 110 and thereby effectively increase the resolution at which an image can be printed. [0048] As another example, groups of print modules can be deployed in print element associations based on the lateral expanses covered by the print modules. For example, a first print element association can include modules 205, 305, 215, 310, 225, 315 deployed to cover the laterally outer expanses of a workpiece. A second print element association can include print modules 210, 220, 230 deployed to cover the laterally central expanses of a workpiece. [0049] As another example, groups of print elements can be deployed in print element associations based on a combination of these and other factors. For example, groups of print elements can be deployed in a print element association based on their printing the color cyan on an outer extent of a workpiece. As another example, groups of print modules can be deployed in a print element association based on their constituent print elements printing at certain lateral positions on the laterally outer expanses of a workpiece. [0050] Each print element association can have a dedicated memory location in print image buffer 165 (shown in FIG. 1) in that the association prints image data that once resided in the memory location. For example, when print image buffer 165 is a collection of queues of individual buffers, each print element association can have an individual, dedicated queue of buffers.
[0051] FIG. 4 schematically illustrates a deployment of print elements with relative shifts in lateral position. The illustrated portion of housing 110 includes print modules 205, 215, 225. Print module 205 includes an array of print elements 405 laterally separated from one another by a distance L. Print module 215 includes an array of print elements 410 laterally separated from one another by a distance L. Print module 225 includes an array of print elements 415 laterally separated from one another by a distance L.
[0052] Print elements 405 are shifted relative to the lateral position of print elements 410 by a shift distance S. Print elements 405 are shifted relative to the lateral position of print elements 415 by shift distance S. Print elements 410 are shifted relative to the lateral position of print elements 415 by shift distance S. Shift distance S is smaller than distance L, and the net effect of the relative lateral shifts between print elements 405, print elements 410, and print elements 415 is to decrease the overall lateral spacing between print elements on face 150 of housing 110.
[0053 ] FIG. 5 schematically illustrates the serial printing of an image 500 on two or more different workpieces using print system 100. A series ofworkpieces 120, 125, 130, 135, 140 is conveyed across effective print area 235 on face 150 of printer housing 110 for printing. Image 500 can be serially printed in that image 500 can be printed sequentially on workpieces 120, 125, 130, 135, 140 (i.e., the same image is printed, in succession, on various workpieces).
[0054] Workpieces 120, 125, 130, 135, 140 each have a longitudinal width W2. Workpiece width W2 is smaller than width W of effective print area 235. A leading edge of workpiece 120 is separated from a trailing edge of workpiece 125 by separation distance SEP. A leading edge of workpiece 125 is separated from a trailing edge of workpiece 130 by separation distance SEP. A leading edge of workpiece 130 is separated from a trailing edge of workpiece 135 by separation distance SEP. A leading edge of workpiece 135 is separated from a trailing edge of workpiece 140 by separation distance SEP. The separation distance SEP may be smaller than width W of effective print area 235. The separation distance SEP may be zero. As such, both workpiece 130 and workpiece 135 may be positioned in effective print area 235 simultaneously and be printed on at the same time.
[0055] System 100 has partially printed image 500 on both workpiece 130 and workpiece 135. Such serial printing of image 500 on two or more different workpieces using a single effective print area speeds the throughput of workpieces in system 100. [0056] FIG. 6 includes flowcharts of processes 650, 655, 660 for the serial printing of an image on two or more different workpieces using a single effective print area. Processes 650, 655, 660 can be performed in whole or in part by a data processing apparatus and/or circuitry configured to exchange data with a buffer and control printing by print elements. In system 100, processes 650, 655, 660 can be performed by control electronics 160 using input received from workpiece conveyor 105 and workpiece detector 155. Within the control electronics 160, different processes may be performed by different parts of the system 100. For example, the process 650 may be performed by software operating in the control electronics 160 and the processes 655 and 660 may be performed by a data pump. The processes of 650, 655, and 660 are separate to indicate that they can be performed concurrently and/or independently of each other.
[0057] The system performing the process 650 receives image data at 605. The image data can be a stand-alone collection of data regarding an individual image. For example, the image data can be a graphic image format (gif) file, a joint photographic experts group (jpeg) file, PostScript, Printer Command Language (PCL), or other image data collection. [0058] The system can then translate and divide the received image data according to a deployment of associated print elements at 610. The image data can be translated before it is divided, divided before it is translated, or translated and divided as part of the same process. The translation of image data can include, for example, a conversion of image data into a format understandable by a printing device, such as bitmap raster data, and a further conversion of the bitmap raster data into jetmap data. Converting bitmap raster image data into jetmap data involves taking an input bitmap, which is arranged in an order corresponding to a geographic order used by the bitmap image format, and rearranging the bitmap raster image data to correspond to physical locations of the print elements. It may also involve dividing the image data as part of the process of converting the bitmap raster image data to jetmap data (i.e., the jetmap data is divided into image buffers corresponding print element associations). As an example, the process at 610 may include converting jpeg formatted image data to bitmap formatted image data, and then converting the bitmap formatted image data into jetmap image data as image buffers corresponding to print element associations. In an alternative implementation, image data may be converted directly to jetmap data without first converting to an intermediary format.
[0059] The division of image data according to the deployment of associated print elements can include the identification of portions of the image data that are to be printed by an association of print elements based on the deployment of the association.
[0060] FIG. 7 illustrates one implementation of the division of image data representing an image 700 according to a deployment of print element associations. Image 700 includes a cyan line 705, a magenta line 710, and a yellow line 715. Cyan line 705 is printable by an association of print elements deployed to print cyan. Magenta line 710 is printable by an association of print elements deployed to print magenta. Yellow line 715 is printable by an association of print elements deployed to print yellow.
[0061] When the image data representing image 700 is divided (indicated by arrows 720), three individual collections of data representing images 725, 730, 735 are formed. Image 725 includes cyan line 705 and is thus printable by an association of print elements deployed to print cyan. Image 730 includes yellow line 715 and is thus printable by an association of print elements deployed to print yellow. Image 735 includes magenta line 710 and is thus printable by an association of print elements deployed to print magenta. Thus, the image data representing images 725, 730, 735 are the result of a division of data representing image 700 according to the deployment of associations of print elements to print different colors. [0062] FIG. 8 illustrates another implementation of the division of image data (namely, image data representing a portion of an image 800) according to a deployment of print element associations. In particular, a division according to a deployment of print elements with relative shifts in lateral position is illustrated. The shifts in the lateral position of print elements can correspond to the lateral shifts S between print elements 405, print elements 410, and print elements 415 in the implementation of housing 110 shown in FIG. 4. [0063] Image portion 800 includes collections of pixel rows 805, 810, 815. Pixel rows 805, 810, 815 each include a longitudinal row of pixels. Pixel rows 805 are laterally shifted relative to the position of pixel rows 810 by a shift distance S. Pixel rows 805 are laterally shifted relative to the position of pixel rows 815 by shift distance S. Pixel rows 810 are laterally shifted relative to the position of pixel rows 815 by shift distance S. Shift distance S (and hence the lateral resolution of the printed imaged) is determined by the overall lateral spacing between print elements.
[0064] When a workpiece is moved longitudinally across an array of print elements, each pixel row 805, 810, 815 can be printed by an individual print element. For example, when image portion 800 is printed using the implementation of housing 110 shown in FIG. 4, a single print element 405 can print a single pixel row 805, a single print element 410 can print a single pixel row 810, and a single print element 415 can print a single pixel row 815. [0065] When the image data representing image portion 800 is divided (indicated by arrows 820), three individual collections of data representing image portions 825, 830, 835 are formed. Image portion 825 includes pixel rows 805 and is thus printable by a first array of print elements separated by a lateral distance L. Image portion 830 includes pixel rows 810 and is thus printable by a second array of print elements separated by a lateral distance L. Image portion 835 includes pixel rows 815 and is thus printable by a third array of print elements separated by a lateral distance L. The print elements in these arrays are shifted in lateral position relative to one another. Thus, the image data representing image portions 825, 830, 835 are the result of a division of data representing image portion 800 according to the deployment of associations of print elements to print at different lateral positions. [0066] FIG. 9 illustrates another implementation of a division of image data representing an image 900 according to a deployment of print element associations. Image 900 includes a single line 905 that spans the entire lateral expanse of image 900. [0067] When the image data representing image 900 is divided (indicated by arrows 910), two individual collections of data representing images 915, 920 are formed. Image 915 includes two outer line portions 925 and is thus printable by an association of print elements deployed toward the outside of a workpiece. For example, outer line portions 925 may be printable by an association that includes print modules 205, 305, by an association that includes print modules 215, 310, or by an association that includes print modules 225, 315 (FIG. 3).
[0068] Image 920 includes a central line portion 930 and is thus printable by an association of print elements deployed toward the center of a workpiece. For example, central line portion 930 may be printable by an association that includes print module 210, by an association that includes print module 220, or by an association that includes print module 230 (FIG. 3). Thus, the image data representing images 915, 920 are the result of a division of data representing image 900 according to the deployment of associations of print elements to print different lateral expanses.
[0069] Returning to FIG. 6, the system performing process 650 allocates the image data portions that result from a division to respective image queues at 615. In other words, the allocation results in each buffer of image data being allocated to a respective queue. In general, each buffer of image data corresponds to an association of print elements at a printing device. Similarly, a set of buffers corresponds to a set of image data to be printed by the print element associations. The buffers of image data, which were generated at 610, are queued in queues, with each queue corresponding to a print element association. For example, if there are eight image queues, each image queue corresponding to a print element association, then a set of buffers of image data that correspond to the first print element association may be allocated to the first image queue, a set of buffers of image data that correspond to the second print element association may be allocated to the second image queue, and so on. The memory locations where the image queues and the buffers are located can be dedicated to the storage of image data for printing by a specific print element association. For example, the memory locations may be blocked off from memory management by an operating system and the memory locations may be accessible by a data pump using direct memory access. The queues for the buffers of image data may be first in first out queues (i.e., FIFO queues). [0070] At 620, the system performing process 650 determines whether the system should update the locations indicating where the print image buffers (i.e., buffers of image data) are located. For example, the system might update locations at one or more data pumps. In that example, the data pumps can store a location indicating where print buffers are located at each of the image queues so the data pumps are able to access each of the memory devices where the buffers are located and retrieve image data. If, at 620, the system determines that the locations should be updated, the locations are updated with references to the buffers at 625. Otherwise, image data is received at 605 and the process continues. Also, the process continues at 605 if updated locations are not needed at 620. In some implementations, the process of 650 may stop, for example, if there are no more images to receive (e.g., no more images to print), or if the image queues are full.
[0071] A determination is made as to whether printing should start or continue at 627. If not, the process continues at 627. If so, at 630, image data may be retrieved from buffers in the image queues. For example, a data pump may retrieve buffers of image data. In that example, the data pump is able to identify the proper buffers because the locations of the buffers may be updated at the data pump at 625. A sufficient amount of image data for one impression of an association of print elements may be retrieved. Thus, image data may be retrieved from each of the image queues. In alternative implementations, portions of image data representing a portion of a single impression may be retrieved. Similarly, portions of image data representing several impressions may be retrieved. In those implementations, a queue, such as a FIFO queue, may store image data (e.g., sets of buffers of image data). [0072] At 635, positional delays are added to selected portions of image data. The delays are up front delays that align image data with the associations of print elements to which respective portions of image data correspond. Thus, the extent of the up front delay can be determined based on the deployment of the print element association to which image data corresponds. For example, a minimal positional delay or no delay at all may be inserted into image data that corresponds to a print element association near the entry of workpieces across an effective print area, whereas a larger positional delay may be inserted into image data that corresponds to a print element association near the exit of workpieces across an effective print area. Because the positional delays correspond to the position of print element associations (or rather, the separation distance between print element associations), the positional delays may differ depending on a type of print head assembly that contains the print element associations. In any case, the positional delays may be a fixed delay(s) for a particular print head assembly and the delays may be measured in an amount corresponding to an amount of print lines.
[0073] Inserting an up front delay into image data can be performed in a number of different ways. For example, an appropriate amount of null "placeholder" data can be inserted before and after the image data portions that result from a division of image data. As another example, the upfront delay can be introduced into a data communication path between a memory location and print elements. For example, a data pump may be aligned such that the data pump can insert different upfront delays for different portions of image data at different memory locations. Image data with delays may be sent to a printing device at 637. In alternative implementations, image data with delays may be added to a queue (e.g., a first in first out queue) prior to sending the data to a printing device. The process at 655 may continue at the process of 627 after image data is sent at 637. In some implementations, the process at 655 may stop after image data is sent at 637 for various reasons. For example, if all image data packets have been sent by a data pump, the data pump may determine at 627 that the system should no longer be printing (i.e., determine not to start or continue printing). In some implementations, empty data image packets may be sent, effectively causing no ink to be deposited on a workpiece.
[0074] The system can identify the entry of a leading edge of a workpiece to an effective print area of a print system at 640. The entry of the leading edge can be identified using a workpiece detector (such as workpiece detector 155 (FIG. I)). The further progress of the workpiece across the effective print area can be followed by sensing the speed of the workpiece, e.g., by measuring the speed of a workpiece conveyor (such as workpiece conveyor 105 (FIG. I)) using a rolling encoder.
[0075] When the workpiece is appropriately positioned, the print system performing process 660 can commence printing of the workpiece at 645. The printing of the workpiece can include relaying image data that has been divided according to the deployment of the print element association. The image data can be relayed from a memory location to the appropriate print element association. The relaying can be driven by a central data processing device, such as a central data processing device in control electronics 160. The relaying can be done on a firing-by- firing basis. In the processes shown in the flowcharts of FIG. 6, a signal may be sent to the system performing the process of 655 (e.g., a data pump) to start printing, causing a relaying of image data to a printing device. [0076] As the workpiece moves across the effective print area, different print elements can be triggered by the same trigger signal to fire at the same instant. Alternatively, different print elements can be staggered to fire at different instants. Regardless of when the actual firing of individual elements occurs, the elements in the effective print area are printing on the initial workpiece at the same time.
[0077] In a print system where the effective print area has a longitudinal width that is greater than the separation distance to the next workpiece, one or more workpieces may be positioned beneath the effective print area at the same time. As such, more than one workpiece may be available for serial printing. One example of this situation is illustrated in FIG. 5, where the separation distance SEP between workpieces is smaller than width W of effective print area 235, and, both workpiece 130 and workpiece 135 are positioned beneath effective print area 235 and available to be printed in series.
[0078] In such a print system, the system performing process 660 can also identify the entry of the leading edge of a next workpiece at 640. The entry of the leading edge can be identified using a workpiece detector (such as workpiece detector 155 (FIG. I)). The progress of both an initial workpiece and the next workpiece across the effective print area can be followed by sensing the speed of the workpieces, e.g., by measuring the speed of a workpiece conveyor (such as workpiece conveyor 105 (FIG. I)).
[0079] Printing on both workpieces can continue as the initial workpiece and the next workpiece continue to progress across the effective print area. When the effective print area has a longitudinal width that is greater than the sum of the width of a next workpiece and twice the separation distance between workpieces, an initial workpiece, the next workpiece, and yet another workpiece may be positioned beneath the effective print area at the same time. As such, three workpieces may be available for printing in series. In this case, the system performing process 660 can identify the leading edge of another "next workpiece" at 640 before stopping printing on an initial workpiece. Otherwise, the system can stop printing on the initial workpiece before identifying the leading edge of another "next workpiece" at 640.
[0080] In some implementations, image data may be divided based on associations of print modules. In some implementations, print element associations may be split across a single print module. For example, if each print module in a print system includes two rows of print elements, image data may be divided by the rows of print elements. Thus, a space between workpieces may be reduced to zero. [0081] In some implementations, the systein(s) performing processes shown in FIG. 6 can calculate the positional delay required between print element associations (rather than having a fixed delay). The memory locations can be dedicated to specific print element associations. For example, individual buffers can store image data for printing by individual print element associations. The system performing processes shown in FIG. 6 can control a data pump or other hardware device to extract data from memory locations at the appropriate point in time to properly place image data on a workpiece on which the image data is to be printed. [0082 ] Although the processes of FIG. 6 are shown as being composed of a certain number and type of processes, additional and/or different processes can be used instead. For example, in the process of 655, rather than continually determining whether to continue or start printing at 627, the system performing the process of 655 may start printing when started and stop printing when the system decides to stop printing, only to start printing when called on again. Similarly, the processes need not be performed in the order depicted, or by the components that were discussed to have performed certain processes. [0083] FIG. 10 shows a schematic representation of an implementation of a print system 1000. System 1000 includes workpiece conveyor 1005, a printer housing 1010, a workpiece detector 1055, and control electronics 1060.
[0084] Workpiece conveyor 1005 conveys workpieces 1020, 1025, 1030, 1035 in a direction D across an effective print area 1040 of printer housing 1010. Workpiece conveyor 1005 includes an encoder 1007 that senses the speed of workpieces 1020, 1025, 1030, 1035. Encoder 1007 also generates a signal that encodes the sensed speed and relays the signal to control electronics 1060. Workpiece detector 1055 is an optical sensor that detects the position of one or more workpieces 1020, 1025, 1030, 1035, and generates trigger signals (such as trigger signals 1056 and 1057) based upon that detection. [0085] Printer housing 1010 includes a collection of print modules arranged laterally along a series of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018. This arrangement of print modules spans an effective print area 1040. Each group of print modules deployed along each of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 constitutes a print element association. As examples, print modules 1091, 1093, 1095 constitute a print element association along column 1018, and print modules 1092, 1094 constitute a print element association along column 1017. [0086] Control electronics 1060 controls the performance of print operations by system 1000. Control electronics 1060 includes a collection of print image buffers 1065. Control electronics 1060 can access the print image buffers in collection 1065 to store and retrieve image data. In the configuration shown in FIG. 10, there are eight print image buffers in collection 1065, and each print image buffer is dedicated to a print element association arranged along one of columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018. For example, print image buffers 1066, 1067, 1068, 1069 may correspond to the print element associations arranged along columns 1015, 1016, 1017, 1018, respectively. In particular, each print element association prints image data only from the associated print image buffer. [0087] Control electronics 1060 also includes a data pump 1070. A "data pump" refers to a functional component, e.g., implemented in hardware, software, programmable logic or a combination thereof, that processes data and transmits it to one or more printing devices for printing. In one implementation, the data pump can refer to a direct memory access (DMA) device. The data pump 1070 is positioned along the data communication path between the print element associations and their dedicated print image buffers in collection 1065. The data pump 1070 can receive and store image data from each print image buffer in collection 1065. The data pump 1070 is programmable by control electronics 1060 to delay the communication of information from the print image buffers in collection 1065 to the print element associations.
[0088] In operation, control electronics 1060 can divide image data according to the deployment of print element associations in effective print area 1040. Control electronics 1060 can also allocate the divided image data to an appropriate print image buffer in collection 1065.
[0089] As workpiece 1035 is conveyed by workpiece conveyor 1005 to enter effective print area 1040, workpiece detector 1055 detects the leading edge of workpiece 1035 and generates trigger signal 1056. Based on receipt of trigger signal 1056, control electronics 1060 can program data pumps 1070 with positional delays 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078. Delay 1071 delays the communication of image data from a first print image buffer in collection 1065 to the print element association arranged along column 1011. Delay 1072 delays the communication of image data from a second print image buffer in collection 1065 to the print element association arranged along column 1012. Delays 1073, 1074, 1075, 1076, 1077, 1078 delay the communication of image data from respective print image buffers in collection 1065 to the print element associations arranged along columns 1013, 1014, 1015, 1016, 1017, 1018.
[0090] As workpiece 1035 is conveyed by workpiece conveyor 1005 across effective print area 1040, the print element associations arranged along columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 successively print. In particular, as workpiece 1035 is advanced one scan line across effective print area 1040, the data pump 1070 dumps image data to the appropriate receiver electronics at the print element associations arranged along columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 (i.e., the data pump 1070 causes the image data to be transmitted to the printing device). The dumped image data identifies print elements that are to fire for the instantaneous position of workpiece 1035 in effective print area 1040 (the identification of print elements may be implicit; e.g., an ordering of image data in a data packet in a format corresponding to an order of print elements and/or print element associations at a printing device). Data for successive firings can be loaded from print image buffers in collection 1065 to the data pump 1070 during firings.
[0091] While workpiece 1035 is still being printed, workpiece 1030 can be conveyed by workpiece conveyor 1005 to enter effective print area 1040. Workpiece detector 1055 detects the leading edge of workpiece 1030 and generates trigger signal 1057. Based on receipt of trigger signal 1057, control electronics 1060 may cause the data pump 1070 to insert delays 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086. Delay 1079 delays the communication of image data from a first print image buffer in collection 1065 to the print element association arranged along column 1011. Delay 1080 delays the communication of image data from a second print image buffer in collection 1065 to the print element association arranged along column 1012. Delays 1081, 1082, 1083, 1084, 1085, 1086 delay the communication of image data from respective print image buffers in collection 1065 to the print element associations arranged along columns 1013, 1014, 1015, 1016, 1017, 1018. Alternatively, delays may already be inserted into image data and the trigger signal may cause the sending of image data by the data pump 1070.
[0092] As workpiece 1030 is conveyed by workpiece conveyor 1005 into effective print area 1040, the print element associations arranged along columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 print upon workpieces 1030, 1025. In particular, as workpieces 1035, 1030 are advanced one scan line, the data pump 1070 dumps image data to the appropriate receiver electronics for the print element and workpieces 1035, 1030 are printed at the same time. [0093] Image data for each workpiece may differ. For example, if two workpieces were to have two different images printed upon them, different image data representing different images would be used to print on each workpiece. hi that example, two sets of image data may be gathered at a data pump. A first set of image data may correspond to a first image (e.g., a print line of an image of a frog) and a second set of image data may correspond to a second image (e.g., three print lines of an image of an apple). Gathering the image data may include taking image data from image queues and/or generating a data packet that comprises the first and second sets of image data. The gathered image data may be provided to the print element associations by sending a data packet to the printing device that includes the print element associations (e.g., a data packet include the print line of the image of the frog and the three print lines of the image of the apple). When the two workpieces are printed at substantially the same time, a first portion of the print buffers (e.g., print buffer 1066) may store the first set of image data corresponding to the first image (e.g., the print line of the image of the frog) and a second portion of the print buffers (e.g., print buffers 1067, 1068, 1069) may store the second set of image data corresponding to the second image (e.g., the three print lines of the image of the apple). A first set of print elements corresponding to the first set of print buffers (e.g., the print elements in the association of print elements along column 1015) can print the first image (e.g., the print line of the image of the frog) and a second set of print elements corresponding to the second set of buffers (e.g., the print elements in the associations of print elements along columns 1016, 1017, 1018) can print the second image (e.g., the three print lines of the image of the apple). As such, different print elements print two images at substantially a same time (e.g., print elements along the columns 1015, 1016, 1017, 1018 may fire at substantially a same time). [0094] Or, the image data for each workspace may represent the same image. For example, the same image may be continually printed on multiple workpieces. hi that example, if two workpieces are printed at substantially a same time, different portions of the same image may reside in different sets of print buffers such that different print elements print different portions of the same image.
[0095] Although not shown, in addition to using different sets of print elements to print different portions of image data on different workpieces, a same workpiece may be printed on with different sets of image data. [0096] The process of printing images on a workpiece is synchronized with the entry of a new workpiece in the print area. When a leading edge of a new workpiece is detected, and the control electronics is notified of the new workpiece, data pump 1070 dumps image data to the print head assembly at the precise time the print element association is to deposit ink on the workpiece to generate a high-quality image on the workpiece. Poor image quality on the workpiece is avoided due to no undue pauses or gaps when receiving the image data for the print head assembly.
[0097] In one implementation, the printing system 1000 can be a scalable architecture that can print images at high image data rates. The control electronics 1060 can be implemented on a personal computer (PC) card that is connected into a Peripheral Component Interconnect (e.g., a PCI-type interconnection system) in the personal computer. The high-speed characteristics of PC memory (e.g., RAM) can be used to reduce an amount of memory for the print head assembly.
[0098] The data pump 1070 can send image data to the print head assembly at high data rates to enable just-in-time printing of images on the workpieces as the workpieces move along the conveyor. Because the amount of memory can be reduced on the print head assembly, the print head assembly may be implemented at a lower cost. The type of memory used on the print head assembly may also be implemented at a lower cost. In one implementation, the type of memory implemented on the print head assembly is a floating¬ point gate array (FPGA) integrated circuit (IC). The costs and engineering design efforts to implement the print head assembly may also be reduced due to little or no buffering of high speed image data at the print head assembly.
[0099] In one implementation, the data rate of image data sent to the print head assembly can be scaled. For example, a personal computer may have multiple PC cards of control electronics 1060 for the print head assembly by having each PC card of control elections 1060 connected into a PCI slot of the computer. For instance, two-sided newspaper printing may require 2 Gb/s of image data to be sent to the print head assembly to enable just-in-time printing of an image on a workpiece. If the data pump 1070 for each of the control electronics 1060 is able to send around 1 Gb/s of image data to the print head assembly then 2 data pumps can be connected in parallel in corresponding PCI slots to deliver the 2 Gb/s for just- in-time printing of the two-sided newspaper image. In this example, each PC card of control electronics 1060 may have an optical connection to the print head assembly. In one implementation, the top and bottom sides of the workpiece can receive 1 color printed on each side.
[00100] In another implementation, the system 1000 may be scalable in having multiple computers to operate in parallel to deliver higher image data rates to the print head assembly. In this implementation, each computer may have at least one PC card of control electronics 1060 connected to the PCI slot of the computer. In one example, four parallel computers, each containing two PCB cards of control electronics 1060, can offer 8Gbps aggregate bandwidth, which can be enough to print four colors on each of the two sides of a newspaper in real time. The system 1000 may offer scalable transmission of high bandwidth, synchronous, just-in-time image data to the print head assembly in a number of configurations, including adding multiple FGPAs to the print assembly. Because the system 1000 can handle high bandwidths of image data, the system 1000 can provide just-in-time printing of high resolution images at high conveyor speeds, large-size images (e.g., wide and/or long images) at high conveyor speeds, and/or multi-color and grayscale images at high conveyor speeds.
[00101] FIG. 11 shows is a flowchart of a process for synchronized printing on a workpiece using the system 1000 of FIG. 10. The system 1000 receives the image data at 605. The image data may be received into a personal computer having a PC card with a data pump 1070 in the control electronics 1060 of the PC card.
[00102] The system 1000 can translate and divide the received image data according to the deployment of the associated print elements on the print assembly at 610. The image data can be translated before it is divided or can be divided before being translated. The system 1000 can allocate the image data portions that result from a division to different memory locations, such as individual print buffers at 615. A workpiece may be conveyed into the print area at 1105. A workpiece is not limited to be conveyed into the print area only at 1105, but may occur at other times, such as before 615 or 610.
[00103 ] The process of printing the received image on the workpiece is synchronized with the system 1000 detecting that the workpiece has entered the print area at 1170. The detection for this process utilizes the encoder 1007 to sense the speed of the workpiece across the conveyor at 1110. The encoder 1007 encodes a signal with information for the sensed speed and relays the encoded signal to control electronics 1060. The optical sensor 1055 detects the position of the workpiece and generates a signal to send to the data pump 1070 in the control electronics 1060 to facilitate synchronous printing on the workpiece. [00104] The data pump 1070 fetches image data according to the deployment of printing element associations at 1120. The image data fetched by the data pump 1070 may be from the print image buffers 1065 of the PC. The data pump 1070 is not limited to fetching image data from the computer's different memory locations through the PCI slot at 1120, but rather may fetch image data at a time between 1125 and 1130.
[00105] At 1125 , the data pump 1070 receives delay information for the associated columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, and 1018. The delay information that is delivered to the data pump through the PCI slot may be delay values that are pre-programmed or fixed and are generated by an application software. The delay values may represent the physical distance between the associated columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, and 1018 of print elements on the print head assembly. For example, if a print head assembly has four columns of associated columns with an inch of distance between each column, the first four delay values can represent an inch worth of scan line information. So, the physical design of the associated print element columns can determine the delay values. The data pump 1070 is not limited to receive delay information at 1125, but may receive delay information at a time prior to 1125.
[00106] The data pump arranges each column of data in time according to each column' s delay value. The delay values are used by multiple state machines in the data pump to correctly arrange the image data into logical scan lines. The data pump serializes the data from each column into a data packet at 1130 and sends the serialized data to the print head assembly across a communication channel at 1135. In one implementation, the communication channel uses an optical fiber connection. The optical fiber may transmit image data at a rate of 1.25 Gb/s. In another implementation, the communication channel may utilize a copper cable connection.
[00107] Transmission of each scan line data packet at 1137 can serve as a trigger that causes the image data in the packet to be printed substantially immediately as the data arrives at the print head assembly. The electronics on the print head assembly receives the data packet sent over the communication channel and deserializes the data packet at 1140. The deserialized image data is allocated to the associated print elements on the print head assembly at 1145, and the image is printed on the workpiece at 1150. In one implementation, data received at the print head assembly is stored in one or more latches, and new (additional) data that is being received at the print head can serve as a trigger to print the latched data. [00108] FIG. 12 schematically illustrates a data pump 1200. The data pump 1200 represents a hardware architecture for assembling the scan line data packets to send to the print head assembly. The data pump 1200 includes circuitry and components on a PC board that plugs into the PCI or PCI-X (Peripheral Component Interconnect Extended) or equivalent slot of the host computer. The data pump 1200 includes a parallel array of separate state machines 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254, one for each logical image queue. Each image queue can correspond to a separate physical column of associated print elements. [00109] Each state machine can have a corresponding delay input that is configured to correctly arrange the image data into logical scan lines. Each state machine 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 fetches image data from the host computer's PCI bus. The outputs of the read state machines are fed into a serializer 1266 that feeds the communication interface 1276 in the correct data order such that the appropriate image data is sent to the print head assembly at the correct timing. The serializer 1266 creates a packet of image data to travel to the print head assembly. Transmission of each scan line data packet can serve as a trigger that causes the image data in the packet to be printed substantially immediately as the data arrives at the print head assembly. In one implementation, the data received at the print head assembly is stored in a latch until new data arrives at the print head assembly. In this implementation, the new data arriving at the print head assembly can serve as a trigger to print the data that has been latched.
[00110] In the implementation shown in FIG. 12, an eight-column architecture for the data pump is used in which each of the physical columns of associated print elements function logically independently from the others, so that printing on the workpiece can be substantially continuous and without printing gaps. The schematic shows how the eight different delay values 1220, 1224, 1228, 1232, 1236, 1240, 1248, and 1252 serve as input delay values for the eight different state machines 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 that read image data from the eight different buffers (1065 in FIG. 10) in the PC's memory space. The state machines are responsible for gathering image data from the PC out of a buffer 1065 that is specific to each state machine. The state machines gather image data that is temporally spaced in time, so that corresponding print columns 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018 each can print an image (or part of an image) on the workpiece at the correct time. [00111] The delay values 1220, 1224, 1228, 1232, 1236, 1240, 1248, and 1252 for the input of each corresponding state machine 1222, 1226, 1230, 1234, 1238, 1242, 1250, 1254 are preprogrammed by application software. In this implementation, the delay values are fixed values that represent the physical distance between the columns of associated print elements on the print head assembly.
[00112 ] In one implementation, the state machine 1222 for column 1 fetches and processes the image data from the PCI bus after being delayed by delay value Dl 1220. As the output from state machine 1222 for column 1 is sent into the serializer 1266, delay Dl is completed and state machine 1226 for column 2 fetches and processes the image data from the PCI bus after being delayed by delay value D2 1224. The process continues until all of the state machines send image data to the serializer 1266. When the scan line data packet from the data pump is sent to the print head assembly, the process begins again, and the state machine 1222 for column 1 fetches and processes new image data from the PCI bus after being delayed by delay value Dl 1220. The state machines' fetching of data from the computer's PCI bus may be done ahead of time into a FIFO memory or an equivalent memory to minimize the effects of computer bus latency on the printing.
[00113] The data pump 1200 can facilitate just-in- time, synchronous transmission of image data from the host PC without the need for buffering or synchronizing logic at the print head assembly. Additional data pumps can be added to the host computer to scale to higher resolutions and/or to increase bandwidth requirements. Because each of the physical columns of associated print elements function logically independently from each other, bit manipulation does not have to be performed in the hardware of the print head assembly to achieve real-time printing of images with varying amounts of non-printed area between each image. The system can facilitate software bit manipulation, so bit manipulation can be performed at high data rates, and engineering and material costs can be reduced. [00114] FIG. 13 schematically illustrates a packet of image data generated by the data pump. The scan line data packet 1305 includes information to be used by the print head assembly. The packet 1305 has a start of frame (SOF) 1310 and setup data 1313 for the print head assembly. The setup data 1313 may specify an operating mode on the print head assembly (e.g., forward direction or reversion direction). The image data 1314-1328 for each column include a number of bytes that depends on the number of elements in the print column. For example, the image data for column 1 can have a number of bytes that depends on the number of print elements in column 1. PH 1 represents print element 1 for column 1, PH 2 represents print element 2 for column 1, and PH 5 represents print element 5 for column 1. CRC 1330 is the cyclic redundancy check, a 32-bit number that is generated from the data being sent so that the receiving electronics can verify that the entire data packet was sent correctly. The last word is the End of Frame 1332 to complete the data packet. [00115] The packet 1305 is sent from the serializer 1266 to the communication interface 1276 on the data pump 1200 that converts the electronic signals to light signals to send to the optical fiber connection. On the other end of the optical fiber connection, the image data can be received by receiving hardware on the print head assembly. The receiving hardware can include an optical transceiver and logic to receive the light signal and convert the light signal into electronic signals. The receiving hardware also may include a deserializer to deserialize the data, and a decoder to decode the fiber transmission protocol. The image data can then be sent to the corresponding print element electronics to turn on or turn off the individual ink nozzles.
[00116] FIG. 14 shows exemplary specifications for the data pump. The data pump can have more than one type of hardware interface with the communication channel to the print assembly. One type of hardware interface can use PCI-X and optical fiber 1405 (for industrial or high-bandwidth applications) to send print data and control information to the print head assembly at data rates 1430 over lGb/s. Another type of hardware interface is a PCI copper-cable interface 1410 having an image bandwidth capability 1430 of around 96Mbit/s. The bus type 1415 for the optical fiber data pump is PCI-X and the bus type for the copper cable data pump is PCI.
[00117] The data pump can carry synchronous image data to the print head assembly, as well as lower-speed control data and tending or monitoring data. The control communication channels may be transparent to the high speed image data, and may be protocol-independent. The data pump's external interface 1420 for the optical fiber and the copper cable can differ, with the optical fiber having a duplex optical fiber, and the copper cable having a 50- conductor Flat Flexible Cable (FFC). The optical fiber and the copper cable versions can have the same hardware control inputs 1425.
[00118] Both the optical fiber version and the copper-cable version can operate the printing system in various printing modes 1445: triggered, free-running, forward scanning, and reverse scanning. Triggered mode can be used in printing images onto discrete, individual workpieces using a hardware trigger signal to initiate each image print. Free-running mode can provide printing of a continuous run of images, with programmable white spaces between each printed image. Forward and reverse scanning modes can provide printing in the forward or reverse directions. In one implementation, a single image may be printed for the forward or reverse scanning mode. In another implementation, multiple images may be printed while the system is in the forward or reverse scanning mode. The printing modes may also be mixed, so a reverse trigger mode or a reverse free-running mode may be utilized. [00119] In the example configurations specified in FIG. 14, the data pump can service a print head assembly with one to eight logically independent columns of printing elements, with up to 5120 nozzles per column. This configuration can allow the use of large print head assemblies of 720dpi (dots per inch) to be constructed with approximately 32 to 64 jet modules with 304 print elements each that can be fed by a single optical fiber. The size of the print head assembly may be determined as a function of the nozzle count multiplied by the maximum firing frequency of the nozzles, as well as the 1.25 Gb/s data rate. In one aspect, the frequency of the printing jets may operate in a range of around 4OkHz. In one implementation, several data pumps may be plugged into one PC motherboard and operated in parallel to provide higher bandwidths for larger print head assemblies. In another implementation, several PCs with data pumps may be operated in parallel to utilize large print head assemblies at low cost.
[00120] Each column of print elements can be independently provided with image data over the optical fiber or copper cable to allow continuous image printing, with little or no white space between images, and without a hardware bitmap-to-jetmap converter. Instead, the bitmap-to-jetmap conversion can be performed in real time by software running on the PC.
[00121] A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, the sequences in FIG. 11 may be described in an order other than shown (e.g., the optical sensor may detect the position of the workpiece (block 1115) before the encoder senses the speed of the workpiece (block 1110)). The number of state machines and delay components may vary from the amount shown in FIG 12. In another example, the exemplary data rates of the PC bus (1415) may vary from those shown in FIG. 14. [00122] Accordingly, other implementations are within the scope of the following claims.

Claims

WHAT IS CLAIMED IS:
1. A method for synchronously printing an image on a workpiece, the method comprising: receiving image data at a location that is remote from a print head; arranging the received image data according to physical parameters of the print head to be used to print the image data on the workpiece; sensing the speed of the workpiece on a workpiece conveyor relative to the print head; detecting the position of the workpiece on a workpiece conveyor; forming a packet of image data; sending the packet of image data to the print head; and using the receipt of a packet of image data as a trigger to cause image data at the print head to be printed substantially immediately on the workpiece.
2. The method in accordance with claim 1, wherein the image data being printed substantially immediately on the workpiece comprises printing image data substantially at an instant at which the image data arrives at the print head.
3. The method in accordance with claim 1 , wherein the image data being printed substantially immediately on the workpiece comprises: receiving the image data at the print head; latching the received image data; and printing the latched image data on the workpiece when a subsequent image data packet arrives at the print head.
4. The method in accordance with claim 3, wherein the subsequent image data packet arriving at the print head causes the latched image data to be printed on the workpiece.
5. The method in accordance with claim 4, wherein the subsequent image data packet arriving at the print head is a next subsequent image data packet.
6. The method in accordance with claim 3, wherein a receipt of a subsequent image data packet other than a next subsequent image data packet causes the latched data to be printed on the workpiece.
7. The method in accordance with claim 1, wherein the arranging, sensing, detecting, and forming are order-independent.
8. The method in accordance with claim 1, wherein two or more of the receiving, arranging, sensing, detecting, forming, sending, and using are to be performed at least partially in parallel.
9. The method in accordance with claim 1, further comprising translating the image data into a format understandable by a printer.
10. The method in accordance with claim 1, wherein the packet of image data is formed by a data pump.
11. The method in accordance with claim 1, wherein the packet of image data is sent to the print head at a data rate sufficient to minimize gaps and white spaces when printing.
12. The method in accordance with claim 1, wherein the image data is received from a Peripheral Component Interconnect-type bus of a host computer.
13. The method in accordance with claim 1, wherein a plurality of print elements on the print head are associated according to a physical column of associated print nozzles.
14. The method in accordance with claim 13, wherein the physical column of associated print nozzles is configured to function logically independently of other physical columns of associated print nozzles on the print head.
15. A method comprising: detecting a position of a workpiece relative to a print head comprising a plurality of print elements; dividing image data representing an image into portions according to a configuration of print elements on the printing head; communicating along an optical communication path the divided image data to the print elements; and synchronizing a timing of printing the image on the workpiece by the print elements with the detected position of the workpiece.
16. The method in accordance with claim 15, wherein the synchronizing comprises using the communication of the divided image data as a trigger to cause the printing of the image substantially immediately as the data arrives at the print elements.
17. The method in accordance with claim 15, further comprising allocating the divided image data to different memory locations.
18. The method in accordance with claim 17, wherein allocating the divided image data to different memory locations comprises allocating the divided image data to individual memory buffers.
19. The method in accordance with claim 17, wherein allocating the divided image data to individual memory buffers comprises allocating the divided image data to an individual memory buffer dedicated to selected print elements.
20. The method in accordance with claim 15, wherein timing the printing comprises timing the arrival of the divided image data at the print elements based on the position of the workpiece.
21. The method in accordance with claim 20, wherein timing the arrival of the divided image data comprises introducing a delay into the optical communication path.
22. The method in accordance with claim 21, wherein introducing the delay into the optical communication path comprises programming a direct memory access device to delay the arrival of the first portion of the divided image data.
23. A print system comprising: a collection of print elements arranged to span a print area; a workpiece conveyor configured to move a workpiece through the print area; a detector to detect a position of the workpiece in the print area; and control electronics configured to instruct the collection of print elements to print an image on the workpiece substantially immediately when the collection of print elements receive the instruction through an optical communication path.
24. The print system in accordance with claim 23, wherein the control electronics comprise a transceiver to send the instruction to the collection of print elements.
25. The print system in accordance with claim 23, wherein the collection of print elements comprises a collection of inkjet print elements.
26. The print system in accordance with claim 23, further comprising a data processing device configured to perform operations in accordance with logic comprising a set of machine- readable instructions, the operations including a division of a collection of image data into portions according to the arrangement of print elements on a print head.
27. The print system in accordance with claim 26, further comprising a collection of memory locations configured to store the divided portions of image data.
28. The print system in accordance with claim 27, further comprising a timing element configured to time the printing of the image data portions according to the arrangement of print elements on a print head.
29. A printing apparatus, comprising: a first set of electronics to send image data to a second set of electronics on a print head, wherein each set of electronics comprises multiple components to enable high-speed printing on a workpiece; an optical cable connection to connect the first and second sets of electronics, wherein each set of electronics comprises an optical connection interface; and a triggering device to cause the image data to be printed substantially immediately on the workpiece as the image data from the first set of electronics arrives at the second set of electronics.
30. The printing apparatus of claim 29, wherein a complexity of design of the first set of electronics is greater than a complexity of design of the second set of electronics.
31. The printing apparatus of claim 29, wherein the triggering device is configured to enable synchronous printing of image data on the workpiece as the image data arrives at the second set of electronics.
32. The printing apparatus of claim 29, wherein the second set of electronics is physically separated from the first set of electronics.
PCT/US2005/036936 2004-10-15 2005-10-12 Printing system architecture WO2006044599A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN2005800432127A CN101189622B (en) 2004-10-15 2005-10-12 Printing system architecture
JP2007536915A JP5027664B2 (en) 2004-10-15 2005-10-12 Print system architecture
EP05809003A EP1810127A2 (en) 2004-10-15 2005-10-12 Printing system architecture
KR1020077008688A KR101187385B1 (en) 2004-10-15 2005-10-12 Printing system architecture

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/966,205 2004-10-15
US10/966,205 US7722147B2 (en) 2004-10-15 2004-10-15 Printing system architecture

Publications (2)

Publication Number Publication Date
WO2006044599A2 true WO2006044599A2 (en) 2006-04-27
WO2006044599A3 WO2006044599A3 (en) 2008-01-31

Family

ID=36119405

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/036936 WO2006044599A2 (en) 2004-10-15 2005-10-12 Printing system architecture

Country Status (6)

Country Link
US (1) US7722147B2 (en)
EP (1) EP1810127A2 (en)
JP (1) JP5027664B2 (en)
KR (1) KR101187385B1 (en)
CN (1) CN101189622B (en)
WO (1) WO2006044599A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009066957A (en) * 2007-09-14 2009-04-02 Konica Minolta Ij Technologies Inc Print unit and inkjet recording device
JP2009066955A (en) * 2007-09-14 2009-04-02 Konica Minolta Ij Technologies Inc Print unit and inkjet recording device
US8251471B2 (en) 2003-08-18 2012-08-28 Fujifilm Dimatix, Inc. Individual jet voltage trimming circuitry
IT202000032066A1 (en) * 2020-12-23 2022-06-23 Projecta Eng Srl METHOD IMPLEMENTED USING COMPUTERS FOR INKJET PRINTING AND RELATED EQUIPMENT

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7722147B2 (en) 2004-10-15 2010-05-25 Fujifilm Dimatix, Inc. Printing system architecture
US7911625B2 (en) 2004-10-15 2011-03-22 Fujifilm Dimatrix, Inc. Printing system software architecture
US8085428B2 (en) 2004-10-15 2011-12-27 Fujifilm Dimatix, Inc. Print systems and techniques
US8068245B2 (en) * 2004-10-15 2011-11-29 Fujifilm Dimatix, Inc. Printing device communication protocol
US7907298B2 (en) 2004-10-15 2011-03-15 Fujifilm Dimatix, Inc. Data pump for printing
US8823969B1 (en) * 2004-10-18 2014-09-02 Kla-Tencor Corporation Image processing architecture
US8199342B2 (en) * 2004-10-29 2012-06-12 Fujifilm Dimatix, Inc. Tailoring image data packets to properties of print heads
US7556327B2 (en) * 2004-11-05 2009-07-07 Fujifilm Dimatix, Inc. Charge leakage prevention for inkjet printing
US8289538B2 (en) * 2007-03-28 2012-10-16 Moore Wallace North America, Inc. Systems and methods for managing print jobs
US8184304B2 (en) * 2007-11-19 2012-05-22 Moore Wallace North America, Inc. System and method of operating a raster image processor
US8564808B2 (en) * 2007-12-18 2013-10-22 R. R. Donnelley & Sons Company Systems and methods for processing of variable documents
JP5485987B2 (en) 2008-06-06 2014-05-07 フジフィルム ディマティックス, インコーポレイテッド Object detection for printing
US20100110467A1 (en) * 2008-11-06 2010-05-06 Coniglio Paul A System and Method of Rasterizing PDF Files using Multiple Processors
US8395798B2 (en) * 2010-07-15 2013-03-12 Fujifilm Dimatix, Inc. Printing objects using a rolling buffer
US8403447B1 (en) 2011-09-13 2013-03-26 Fujifilm Dimatix, Inc. Fluid jetting with delays
JP6201611B2 (en) * 2013-10-10 2017-09-27 富士ゼロックス株式会社 Image forming apparatus and program
JP6078177B1 (en) * 2016-01-05 2017-02-08 富士ゼロックス株式会社 Image output apparatus, image output system, and image output program
GB2569090B (en) 2017-09-25 2021-03-10 Xaar Technology Ltd Method, apparatus and circuitry for droplet deposition

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408590A (en) * 1991-12-09 1995-04-18 Domino Amjet, Inc. Direct ink drop interface board
US5825375A (en) * 1994-03-04 1998-10-20 Diagraph Corporation Ink jet system with serial data printheads
WO2001013328A1 (en) * 1999-08-16 2001-02-22 Marconi Data Systems Inc. Print engine control system

Family Cites Families (122)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5341130A (en) * 1976-09-28 1978-04-14 Hitachi Ltd Recording unit
US4486739A (en) 1982-06-30 1984-12-04 International Business Machines Corporation Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code
US4563689A (en) 1983-02-05 1986-01-07 Konishiroku Photo Industry Co., Ltd. Method for ink-jet recording and apparatus therefor
US4887100A (en) 1987-01-10 1989-12-12 Am International, Inc. Droplet deposition apparatus
GB8829567D0 (en) 1988-12-19 1989-02-08 Am Int Method of operating pulsed droplet deposition apparatus
ATE116908T1 (en) 1989-10-10 1995-01-15 Xaar Ltd PRINTING PROCESS WITH MULTIPLE TONES.
US5512922A (en) 1989-10-10 1996-04-30 Xaar Limited Method of multi-tone printing
GB9010289D0 (en) 1990-05-08 1990-06-27 Xaar Ltd Drop-on-demand printing apparatus and method of manufacture
JPH0475129A (en) * 1990-07-18 1992-03-10 Canon Inc Character output device
GB9021677D0 (en) 1990-10-05 1990-11-21 Xaar Ltd Method of testing multi-channel array pulsed droplet deposition apparatus
GB9022662D0 (en) 1990-10-18 1990-11-28 Xaar Ltd Method of operating multi-channel array droplet deposition apparatus
GB9025706D0 (en) 1990-11-27 1991-01-09 Xaar Ltd Laminate for use in manufacture of ink drop printheads
GB9100613D0 (en) 1991-01-11 1991-02-27 Xaar Ltd Reduced nozzle viscous impedance
GB9100614D0 (en) 1991-01-11 1991-02-27 Xaar Ltd Ink composition
US5359350A (en) 1991-06-14 1994-10-25 Ricoh Company, Ltd. Method of driving ink jet printing head
GB9113023D0 (en) 1991-06-17 1991-08-07 Xaar Ltd Multi-channel arrary droplet deposition apparatus and method of manufacture thereof
GB9202434D0 (en) 1992-02-05 1992-03-18 Xaar Ltd Method of and apparatus for forming nozzles
US5648806A (en) 1992-04-02 1997-07-15 Hewlett-Packard Company Stable substrate structure for a wide swath nozzle array in a high resolution inkjet printer
JPH06113143A (en) * 1992-09-25 1994-04-22 Canon Inc Picture processing system
JP3237685B2 (en) 1992-11-05 2001-12-10 セイコーエプソン株式会社 Ink jet recording device
JP3029165B2 (en) 1992-12-04 2000-04-04 キヤノン株式会社 Ink jet recording device
US5361420A (en) 1993-03-30 1994-11-08 C & P Products Protective head gear for wrestlers
US5668579A (en) 1993-06-16 1997-09-16 Seiko Epson Corporation Apparatus for and a method of driving an ink jet head having an electrostatic actuator
GB9316605D0 (en) 1993-08-10 1993-09-29 Xaar Ltd Droplet deposition apparatus and method of manufacture
GB9318985D0 (en) 1993-09-14 1993-10-27 Xaar Ltd Passivation of ceramic piezoelectric ink jet print heads
JP3503656B2 (en) 1993-10-05 2004-03-08 セイコーエプソン株式会社 Drive unit for inkjet head
GB9321786D0 (en) 1993-10-22 1993-12-15 Xaar Ltd Droplet deposition apparatus
GB9400036D0 (en) 1994-01-04 1994-03-02 Xaar Ltd Manufacture of ink jet printheads
US6123405A (en) 1994-03-16 2000-09-26 Xaar Technology Limited Method of operating a multi-channel printhead using negative and positive pressure wave reflection coefficient and a driving circuit therefor
US5903754A (en) 1994-06-21 1999-05-11 Microsoft Corporation Dynamic layered protocol stack
GB9417445D0 (en) 1994-08-30 1994-10-19 Xaar Ltd Coating, coating composition and method of forming coating
US5604771A (en) 1994-10-04 1997-02-18 Quiros; Robert System and method for transmitting sound and computer data
GB9421395D0 (en) 1994-10-24 1994-12-07 Xaar Ltd Ink jet ink composition
JP3222697B2 (en) * 1994-11-08 2001-10-29 株式会社沖データ Print data transmission method
JP3488528B2 (en) 1994-12-26 2004-01-19 京セラミタ株式会社 Head drive device for inkjet recording device
DE69629016T2 (en) 1995-02-08 2004-05-27 Xaar Technology Ltd. INK JET INK COMPOSITION
US5604711A (en) 1995-05-19 1997-02-18 Cypress Semiconductor, Corporation Low power high voltage switch with gate bias circuit to minimize power consumption
GB9515337D0 (en) 1995-07-26 1995-09-20 Xaar Ltd Pulsed droplet deposition apparatus
JP2873192B2 (en) * 1995-09-22 1999-03-24 サンクス株式会社 Work system
GB9521673D0 (en) 1995-10-23 1996-01-03 Xaar Ltd Ink jet printer dispersion inks
US5984448A (en) 1995-11-21 1999-11-16 Citizen Watch Co., Ltd. Circuit for driving ink-jet head and method of driving the same
GB9523926D0 (en) 1995-11-23 1996-01-24 Xaar Ltd Operation of pulsed droplet deposition apparatus
US5676475A (en) * 1995-12-15 1997-10-14 Encad, Inc. Smart print carriage incorporating circuitry for processing data
GB9601049D0 (en) 1996-01-18 1996-03-20 Xaar Ltd Methods of and apparatus for forming nozzles
JPH09231035A (en) * 1996-02-21 1997-09-05 Ricoh Co Ltd Data transfer system
GB9605547D0 (en) 1996-03-15 1996-05-15 Xaar Ltd Operation of droplet deposition apparatus
JP3156055B2 (en) 1996-03-18 2001-04-16 ザール テクノロジー リミテッド Grayscale level interpolation
CN1191936C (en) 1996-04-23 2005-03-09 萨尔技术有限公司 Droplet deposition apparatus
JP3349891B2 (en) 1996-06-11 2002-11-25 富士通株式会社 Driving method of piezoelectric ink jet head
JPH1016211A (en) 1996-07-05 1998-01-20 Seiko Epson Corp Ink jet recorder
JP3667001B2 (en) 1996-09-06 2005-07-06 キヤノン株式会社 Image processing apparatus and method
EP1332876B1 (en) 1996-09-09 2006-03-22 Seiko Epson Corporation Ink jet printer and ink printing method
GB9622177D0 (en) 1996-10-24 1996-12-18 Xaar Ltd Passivation of ink jet print heads
US6088050A (en) 1996-12-31 2000-07-11 Eastman Kodak Company Non-impact recording apparatus operable under variable recording conditions
US5997124A (en) 1997-03-12 1999-12-07 Raster Graphics Inc. Method and apparatus for drop volume normalization in an ink jet printing operation
WO1998046432A1 (en) * 1997-04-16 1998-10-22 Seiko Epson Corporation Method of driving ink jet recording head
WO1998047710A1 (en) 1997-04-18 1998-10-29 Seiko Epson Corporation Ink-jet head and ink-jet recorder mounted with it
JP2940542B2 (en) 1997-05-07 1999-08-25 セイコーエプソン株式会社 Driving waveform generating apparatus and driving waveform generating method for ink jet print head
AU7440398A (en) 1997-05-15 1998-12-08 Xaar Technology Limited Operation of droplet deposition apparatus
GB9802871D0 (en) 1998-02-12 1998-04-08 Xaar Technology Ltd Operation of droplet deposition apparatus
GB9713872D0 (en) 1997-07-02 1997-09-03 Xaar Ltd Droplet deposition apparatus
US6352328B1 (en) 1997-07-24 2002-03-05 Eastman Kodak Company Digital ink jet printing apparatus and method
US5975672A (en) 1997-07-24 1999-11-02 Eastman Kodak Company Ink jet printing apparatus and method accommodating printing mode control
DE69820636T2 (en) 1997-08-22 2004-11-11 Xaar Technology Ltd. PRINTER PRODUCTION METHOD
ES2210805T3 (en) 1997-09-04 2004-07-01 Xaar Technology Limited EMPTY DRUM FOR DUPLEX PRINTER AND PRINTER.
GB9719071D0 (en) 1997-09-08 1997-11-12 Xaar Ltd Drop-on-demand multi-tone printing
US6102513A (en) 1997-09-11 2000-08-15 Eastman Kodak Company Ink jet printing apparatus and method using timing control of electronic waveforms for variable gray scale printing without artifacts
JP4026948B2 (en) * 1997-09-29 2007-12-26 キヤノン株式会社 Network system, device, device control method, and storage medium
US6572221B1 (en) 1997-10-10 2003-06-03 Xaar Technology Limited Droplet deposition apparatus for ink jet printhead
AU755025B2 (en) 1997-11-28 2002-11-28 Sony Corporation Apparatus and method for driving recording head for ink-jet printer
JPH11202691A (en) * 1998-01-07 1999-07-30 Canon Inc Device and method for image forming
US6046822A (en) 1998-01-09 2000-04-04 Eastman Kodak Company Ink jet printing apparatus and method for improved accuracy of ink droplet placement
GB9802210D0 (en) 1998-02-02 1998-04-01 Xaar Technology Ltd Ink jet printer ink
GB9805038D0 (en) 1998-03-11 1998-05-06 Xaar Technology Ltd Droplet deposition apparatus and method of manufacture
US6276772B1 (en) 1998-05-02 2001-08-21 Hitachi Koki Co., Ltd. Ink jet printer using piezoelectric elements with improved ink droplet impinging accuracy
JPH11353146A (en) 1998-06-09 1999-12-24 Nec Corp Printing system
GB2338927B (en) 1998-07-02 2000-08-09 Tokyo Electric Co Ltd A driving method of an ink-jet head
GB2338928B (en) 1998-07-02 2000-08-09 Tokyo Electric Co Ltd A driving method of an ink-jet head
JP2000103089A (en) 1998-07-31 2000-04-11 Seiko Epson Corp Printer and printing method
JP3309806B2 (en) 1998-07-31 2002-07-29 富士通株式会社 Ink jet recording apparatus and ink jet recording method
JP2000076035A (en) * 1998-08-28 2000-03-14 Ricoh Co Ltd Print job controller
GB9820755D0 (en) 1998-09-23 1998-11-18 Xaar Technology Ltd Drop on demand ink jet printing apparatus
US5951978A (en) 1998-12-10 1999-09-14 Tatko Biotech, Inc. Microorganisms for improving plant productivity
JP3394717B2 (en) * 1999-02-10 2003-04-07 株式会社沖データ Data transfer system
DE60026759T2 (en) 1999-06-04 2006-09-28 Canon K.K. Ink jet recording head and ink jet recording device
JP3669210B2 (en) 1999-06-25 2005-07-06 セイコーエプソン株式会社 Inkjet recording device
AUPQ228699A0 (en) 1999-08-18 1999-09-09 Champion Forms Pty Ltd Multi-layer continuous paper printer
JP2001242674A (en) * 2000-02-29 2001-09-07 Canon Inc Image forming device
JP2001334706A (en) * 2000-05-26 2001-12-04 Sharp Corp Device for color imaging
JP2002019178A (en) * 2000-07-11 2002-01-23 Ricoh Co Ltd Led writing unit
US6845886B2 (en) 2000-08-23 2005-01-25 Paul Henry Valve for dispensing two liquids at a predetermined ratio
JP2002094364A (en) 2000-09-19 2002-03-29 Toshiba Tec Corp Drive method for capacitive element and driver
JP3754896B2 (en) 2001-02-06 2006-03-15 キヤノン株式会社 Inkjet recording apparatus and inkjet recording method
US20020186393A1 (en) 2001-06-11 2002-12-12 Pochuev Denis A. Document printing using format-specific translation modules
JP2003001879A (en) 2001-06-20 2003-01-08 Canon Aptex Inc Recording system, recording device, and recording method
JP3714894B2 (en) 2001-09-13 2005-11-09 大日本スクリーン製造株式会社 Image recording apparatus and image recording system including image recording apparatus
US6685297B2 (en) 2001-09-24 2004-02-03 Xerox Corporation Print head alignment method, test pattern used in the method, and a system thereof
US7575315B2 (en) 2001-10-30 2009-08-18 Hewlett-Packard Development Company, L.P. Multiple print unit configurations
TW508309B (en) 2001-11-08 2002-11-01 Benq Corp Compact printhead and method of delivering ink to the printhead
JP2003159856A (en) * 2001-11-29 2003-06-03 Sato Corp Printing control unit
JP2003165263A (en) * 2001-12-03 2003-06-10 Olympus Optical Co Ltd Image recorder
US6752482B2 (en) 2002-02-01 2004-06-22 Seiko Epson Corporation Device and method for driving jetting head
US6565191B1 (en) 2002-02-11 2003-05-20 Lexmark International, Inc. Method of color shingling to reduce visible printing defects
JP2003320652A (en) * 2002-05-07 2003-11-11 Nichiha Corp Printer for construction board
JP2004021459A (en) * 2002-06-14 2004-01-22 Canon Inc Printer controller device with self-diagnostic function
WO2004002094A1 (en) 2002-06-25 2003-12-31 Lockheed Martin Corporation Method to increase the hamming distance between frame delimiter symbol and data symbols of a mbnb line code
JP2004042305A (en) * 2002-07-09 2004-02-12 Konica Minolta Holdings Inc Printer
GB0217248D0 (en) 2002-07-25 2002-09-04 Willett Int Ltd Device and method
JP3797300B2 (en) 2002-08-30 2006-07-12 セイコーエプソン株式会社 Inkjet printer head drive device
JP2004122637A (en) * 2002-10-03 2004-04-22 Canon Inc Image processing device, inkjet recording device, and control method for image processing device
US7573603B2 (en) 2002-10-11 2009-08-11 Avago Technologies Fiber Ip (Singapore) Pte. Ltd. Image data processing
US6796636B2 (en) 2002-12-17 2004-09-28 Lexmark International, Inc. Two shot molded inkjet printhead lid for laser welding
JP2005061614A (en) 2003-07-25 2005-03-10 Ntn Corp Thrust needle roller bearing
WO2005108095A2 (en) 2004-04-30 2005-11-17 Dimatix, Inc. Droplet ejection apparatus
JP2006095767A (en) 2004-09-28 2006-04-13 Fuji Photo Film Co Ltd Image forming device
US7907298B2 (en) 2004-10-15 2011-03-15 Fujifilm Dimatix, Inc. Data pump for printing
US7722147B2 (en) 2004-10-15 2010-05-25 Fujifilm Dimatix, Inc. Printing system architecture
US8085428B2 (en) 2004-10-15 2011-12-27 Fujifilm Dimatix, Inc. Print systems and techniques
US7911625B2 (en) 2004-10-15 2011-03-22 Fujifilm Dimatrix, Inc. Printing system software architecture
US8068245B2 (en) 2004-10-15 2011-11-29 Fujifilm Dimatix, Inc. Printing device communication protocol
US8199342B2 (en) 2004-10-29 2012-06-12 Fujifilm Dimatix, Inc. Tailoring image data packets to properties of print heads
US7234788B2 (en) 2004-11-03 2007-06-26 Dimatix, Inc. Individual voltage trimming with waveforms

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408590A (en) * 1991-12-09 1995-04-18 Domino Amjet, Inc. Direct ink drop interface board
US5825375A (en) * 1994-03-04 1998-10-20 Diagraph Corporation Ink jet system with serial data printheads
WO2001013328A1 (en) * 1999-08-16 2001-02-22 Marconi Data Systems Inc. Print engine control system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8251471B2 (en) 2003-08-18 2012-08-28 Fujifilm Dimatix, Inc. Individual jet voltage trimming circuitry
JP2009066957A (en) * 2007-09-14 2009-04-02 Konica Minolta Ij Technologies Inc Print unit and inkjet recording device
JP2009066955A (en) * 2007-09-14 2009-04-02 Konica Minolta Ij Technologies Inc Print unit and inkjet recording device
IT202000032066A1 (en) * 2020-12-23 2022-06-23 Projecta Eng Srl METHOD IMPLEMENTED USING COMPUTERS FOR INKJET PRINTING AND RELATED EQUIPMENT
WO2022137155A1 (en) * 2020-12-23 2022-06-30 Projecta Engineering Srl Computer-implementated method for inkjet printing and related equipment

Also Published As

Publication number Publication date
JP2008516803A (en) 2008-05-22
CN101189622B (en) 2012-08-29
JP5027664B2 (en) 2012-09-19
US7722147B2 (en) 2010-05-25
US20060082814A1 (en) 2006-04-20
KR20070065384A (en) 2007-06-22
CN101189622A (en) 2008-05-28
WO2006044599A3 (en) 2008-01-31
EP1810127A2 (en) 2007-07-25
KR101187385B1 (en) 2012-10-02

Similar Documents

Publication Publication Date Title
US8259334B2 (en) Data pump for printing
JP5027664B2 (en) Print system architecture
KR101187389B1 (en) Tailoring image data packets to properties of print heads
EP1810223B1 (en) Print systems and techniques
US8403447B1 (en) Fluid jetting with delays
US7874630B2 (en) Recording system having a plurality of controllers arranged respectively for a plurality of recording heads
JP3936016B2 (en) How to print document images
US8068253B2 (en) Recording apparatus
JP5057548B2 (en) Image data transfer apparatus and image data transfer method

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200580043212.7

Country of ref document: CN

AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007536915

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 1020077008688

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2005809003

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2005809003

Country of ref document: EP