Method and apparatus for printing postage

Abstract: Apparatus and method for printing in which print software (106) is decoupled from print data (116) such that print image data can change without impacting software (106). The decoupling can be performed using distributed architecture. Additionally, tables are used to decouple the print software from the print data.

Description: The present invention relates to apparatus and methods for printing in general and is applicable inter alia to a method and apparatus for printing postage. Traditional postage meters print an indicia on a mailpiece as evidence that postage has been paid. Traditional mechanical postage meters create the indicia using a platen or a rotary drum which is moved into contact with the mailpiece to imprint the indicia thereon. While traditional postage meters have performed admirably over time, they are limited by the need to replace the platen or rotary drum when significant changes to the indicia image are made. Electronic postage meters use modern digital technology to overcome the need to replace the platen or drum when changes are made to the indicia. Digital technology uses digital printheads to print postage indicia. Software drives the printheads to print indicia on the mailpieces. When an image is significantly changed, new software must be loaded into the digital postage meter. Thus, while the digital postage meters present advantages over traditional mechanical postage meters, in that they do not require replacement of parts in order to change the image, they do require changes to software in order to change the indicia image. Software changes, while more convenient to incorporate than hardware changes, can be problematic in that each time software is enhanced or changed, there is opportunity for new problems or "bugs" to be introduced into the software, thus affecting reliability. Additionally, software changes can be time consuming because they require reprogramming and testing. Printing postage indicia images using electronic postage meters, such as electronic postage meters incorporating ink jet printing technology, requires that the image be converted into a bit mapped image. The bit map contains a dot matrix pattern representative of the desired indicia. Individual print elements in the print head, in response to the bit mapped image, are either electronically stimulated or not stimulated to expel or not expel, respectively, drops of ink from a reservoir onto a mailpiece. As described in EP-A-0 772 162 and US-A-5,471,925, postage meters utilizing digital printing technology typically combine the fixed and variable image data into a complete bit map indicia image prior to printing. The image is conventionally combined by dedicating an electronic read-write memory (i.e., random access memory (RAM)) for use as temporary storage during the image element gathering stage. That is, while image data for the fixed and variable data are stored in a non-volatile memory (NVM), when an individual transaction takes place the postage meter microprocessor obtains the required variable and fixed data elements for that transaction from the non-volatile memory and combines and downloads the required variable image data into the electronic read-write memory as a bit map of the actual entire indicia to be printed, thereby using the RAM as temporary storage of the bit mapped image. The microprocessor then downloads the bit map image to the printhead for printing. However, since the variable image data changes from mailpiece to mailpiece, the microprocessor must edit the bit map image for every indicia printed. Editing an indicia bit map image significantly affects the performance and cost of the postage meter since it 1) takes time to do thereby reducing throughput; 2) requires a large amount of RAM; 3) demands the use of a high speed microprocessor; and 4) requires a large amount of additional code and associated memory to perform the editing function. Electronic postage meters utilizing RAM for storage of bitmap indicia image require reconfiguration when fixed portions of the indicia image are changed. The reconfiguration is performed by the manufacturer by hardcoding the changes into software. The meter vault is not removable and thus the meter cannot be reconfigured at a customer location; it must be retrieved from the customer and reconfigured at a manufacturing facility. Similarly, a different configuration and different software are used to print an indicia in a different language or different formats for post offices of various countries. Thus, a different meter must be built for each country of use. Other electronic postage meters utilizing NVM for instructions to create bitmaps do not have removable meters vaults. Thus, when an image needs to be changed, for instance, when a meter will be used in a different country, the meter cannot be easily replaced. One of the problems of the prior art is that the software needs revising when a different indicia format, such as a format for another country, needs to be printed. Another problem of the prior art is that the meter is not replaceable. Another problem of the prior art is that reconfiguration of the software cannot be performed at a customer site. According to a first aspect of the invention, there is provided a method of printing using a postage evidencing device comprising: (a) storing a data structure and data definitions in a nonvolatile memory, the data structure including data for generating a print image and creating a data message and the data definitions corresponding to the data for generating a print image; (b) retrieving the data structure and the data definitions from the nonvolatile memory; (c) processing with a microprocessor the data structure and data definitions to create the data message; (d) sending the data message to a printer control device, the control device capable of retrieving a corresponding image from the nonvolatile memory; (e) retrieving the image corresponding to the data message from the nonvolatile memory; (f) sending the image to a printing apparatus; and (g) printing the image with the printing apparatus. According to a second aspect of the invention, there is provided apparatus for carrying out the method of said first aspect, comprising a nonvolatile memory for storing data structures and data definitions for generating print images; a microprocessor for processing print data using print manager software and data providing software, the data-providing software for processing image data and data definitions to create a data message; a control device, the control device for retrieving an image corresponding to the data message from the nonvolatile memory; and a print apparatus for printing images; whereby the print manager software is operable to receive the data message from the data providing software and the control device is operable to retrieve corresponding print images from the nonvolatile memory and to send the print images to the print apparatus for printing. In one variant, the method is such that retrieving step (b) is performed with a first microprocessor; the data structure and data definitions are sent to a second microprocessor for processing into the data message; and processing step (c) is performed with the second microprocessor. Apparatus for carrying out this variant may comprise, according to another aspect, a print apparatus having: a nonvolatile memory for storing data structures and data definitions for generating print images; a first microprocessor for processing print data using print manager software; a control device, the control device for retrieving an image corresponding to the data message from the nonvolatile memory; and print heads for printing images; and a meter apparatus having a second microprocessor for processing image data and data definitions to create a data message using data providing software; the print manager software being operable to receive the data message from the data providing software and the control device being operable to retrieve corresponding print images from the nonvolatile memory and to send the print images to the printing heads. For a better understanding of the invention and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which: Fig. 1 is a block diagram of one embodiment of postage meter apparatus illustrating the flow of data in the printing process; Fig. 2 is a postage indicium illustrating the components of the indicium including background graphics, static graphics and debit command graphics; Fig. 3 is a flow chart illustrating the various steps for building indicia and nonindicia print images; Fig. 4a is a block diagram of the hardware components of the postage meter apparatus of one embodiment of the present invention; and Fig. 4b is a block diagram of the hardware components of the postage meter apparatus of one embodiment of the present invention and illustrating the distributed configuration along line a-a of Fig. 1. In describing the preferred embodiment of the present invention, reference will be made herein to Figs. 1-4 of the drawings in which like numerals refer to like features of the invention. Features of the invention are not necessarily shown to scale in the drawings. The following describes a printing method that allows the printer software to remain generic and the meter software to contain updates and reports without requiring updates to printer software. This is performed by partitioning the print function between the meter and the print head controller. Tables are also used to store image and font data formats. Also, the meter vault is removable, which facilitates easier changes to the meter data. In one embodiment, an apparatus for printing an image uses a distributed configuration, which includes a nonvolatile memory for storing data structures and data definitions for generating print images; a microprocessor in the print apparatus for processing print data using print manager software; a removable microprocessor in the meter for processing image data and data definitions to create a data message using data-providing software in the meter microprocessor; printing device comprising a print head controller which receives a bit map image corresponding to the data message from the non-volatile memory; whereby the print manager software in the printer microprocessor receives the data message from the data-providing software and retrieves corresponding print images or bit maps from the non-volatile memory and sends the bit maps to the printing device. The distributed configuration allows the meter to be replaced in order to provide different graphics. The image data and data definitions give the apparatus a flexible way of formatting a data message for printing. Therefore, image data and data definitions do not need to be changed when the meter is reconfigured for printing different graphics. In another embodiment, a postage meter device has one microprocessor which resides in the meter. The data providing software and the print manager software share the processing time. As in the distributed configuration, the meter is removable and may be replaced in order to provide different graphics, and the image data and data definitions do not need to be changed when the meter is reconfigured for printing different graphics. The table-driven, distributed configuration of the described embodiment of the present invention provides a flexible configuration for changing graphics and an efficient use of microprocessors and memory. Meter maintenance is easily performed by swapping the meter vault with a new meter vault. The print image may be changed without impacting software code. Printing is performed with efficient use of resources. The postage meter apparatus prints a variable combination of data fields. Figure 1 illustrates the flow of data in a print cycle of a postage meter apparatus 100. Postage meter apparatus 100 comprises a meter apparatus or vault 104 and a printer apparatus 102. An operating system provides print manager software 106 and data providing software 110. A data structure or field definition table 119 is retrieved from print image memory 116 by the print manager software 106. Print image memory 116 can be, for example, flash or non-volatile memory (NVM). The print image memory 116 is the specific memory in which graphics information is stored as field definition tables 119 and print images or bit maps 118. The print manager software 106 sends the field definition table 119 to the data providing software 110. The data providing software 110 builds a data message and sends the data message back to the print manager software 106 which send the corresponding image to the printing device 130 and prints an indicia, such as, for example, the indicia 200, illustrated in Fig. 2, or other image or document. Such other documents include, but are not limited to, test patterns and reports or any other image programmed into the print image memory 116. Application data to print 132 is in ASCII format data and may include any combination of date, zip code or postage amount, or other appropriate data. Figure 2 illustrates a postal indicium 200 prepared in accordance with an embodiment of the present invention. The postal indicium comprises static graphics, background graphics and debit command graphics. The background graphics comprise an eagle 212, a dollar sign 214, a phrase "mailed from zip code" 216 and a decimal point 218. The background graphics are stored as bit mapped images in the print image memory 116. Static graphics comprise a serial number 220 and a zip code 222 for which field definition tables are stored in print image memory 116. The debit command graphics of the indicia are printed from data messages which are built using field definition tables stored in the print image memory 116 and variable meter information which may be input by a user. For example, in the indicia of Fig. 2, debit command graphics comprise a postage amount 224, a date 226, and digital tokens 228, 230 and 232. Fig. 3 is a flowchart illustrating the various steps for building indicia and nonindicia print images for one embodiment of the postage meter apparatus 100. At step 300, the postage meter apparatus 100 is powered up. At step 301, message formatting data is sent to data providing software 110. At step 302, after power up of the postage meter apparatus 100, the field definition tables for the static graphics including the serial number 220 and the zip code 222 are received and processed by the data providing software 110 to create a data message corresponding to the static graphic elements. At step 304, the data message is received by print software and the software sets up the ASIC 402 and may be used to create an indicia unless it is overwritten by other information subsequently stored in ASIC 402. At step 306, a flag is set indicating storage of the static graphics in the ASIC 402. At step 308, it is determined whether an indicia print is being requested. If an indicia is to be printed, at step 310, the indicia is built from field definition tables stored in the print image memory 116 and from the static graphics portions stored in the ASIC 402. At step 312, the indicia is printed. At step 314 it is determined whether another image is to be printed. If another image is not to be printed, the process ends at step 328. If another image is to be printed, it is determined whether that image is an indicia image at step 316. If a nonindicia image is to be printed, at step 320, that image is built from the field definition tables. At step 322 the nonindicia image is stored in the ASIC 402, overwriting the static graphics previously stored in the ASIC 402 in step 304. At step 324, the flag is cleared indicating that the static graphics are no longer stored in the ASIC 402. At step 326, the nonindicia image is printed. If, after printing the nonindicia image, another image print is requested at step 314, and it is determined that that image is an indicia at step 316, it is determined whether the flag is set at step 318. If the flag is not set at step 318, steps 302 through 312 are repeated. If the flag is set at step 318, steps 310 through 312 are repeated. If, after printing another indicia at step 312 or other image at step 326, no other printing is requested, the process ends at step 328. Table 1 illustrates field definition tables for four example fields for the postage indicia illustrated in Fig.2. The example fields are postage 224, date 226, serial number 220 and zip code 222. The postage and date fields are debit command graphics fields which may be subject to user inputs. The serial number and zip code fields are static graphics fields which are built at power up of the meter, as illustrated in the flow chart of Fig. 3, and stored in the ASIC 402. The static graphic fields may require rebuilding subsequent to the printing of an image other than an indicia image, as illustrated at steps 302 through 306 in the flow chart of Fig. 3. The field definition tables of Table 1 are read from the print image memory 116 by print manager software 106 and sent to the data providing software 110 which processes the field definition tables, using data element definitions programmed into microprocessor 402 of Figs. 4a and 4b, and builds data messages, such as, for example, the corresponding data messages illustrated in Tables 2 and 3. Example data element definitions are illustrated in Table 4. A number of data element definitions can be programmed into microprocessor 402 so that the apparatus 100 can print corresponding fields. The number of data element definitions which may be programmed into microprocessor 402 is limited by the configuration of the microprocessor 402. Table 1 illustrates field definition tables and font tables for each field. For example, the postage field definition table at addresses M+2 through M+6 of the print image memory corresponds to the postage font table at addresses N+26 through N+27. Thus, when a data message is built using the field definition table and corresponding font table which are corresponding arrays of information, the data message provides information which directs the print head of Fig. 4 to print characters from corresponding bit mapped images stored in the print image memory 116. Tables 2 and 3 illustrate example data messages corresponding to the field definition table of Table 1. Table 2 illustrates debit command graphics data messages including postage of 32 cents and date of JAN 01 97. An "X" in the value column indicates a space to be positioned between characters in the printed indicia. Table 3 illustrates static graphics data messages including serial number PB1234567 and zip code 06926. The data messages of Table 2 and Table 3 correspond to the debit command graphics and static graphics illustrated in example indicia of Fig. 2. Figs. 4a and 4b are block diagrams illustrating various hardware configurations of the postage meter apparatus 100 hardware. In Fig. 4a, the postage meter apparatus 100 comprises meter apparatus 104 and printer apparatus 102. The meter apparatus 104 comprises control device or ASIC 408 which may be a column-by-column printing control ASIC (drawing engine 39) as disclosed in U.S. Patent No. 5,651,102 to Arsenault et al., titled MAIL HANDLING APPARATUS AND PROCESS FOR PRINTING AN IMAGE COLUMN-BY-COLUMN IN REAL TIME. Additionally, the meter apparatus 104 includes microprocessor 402, read only memory (ROM) 400, and print image memory 116. Printer apparatus 102 includes print heads 410 for printing images, reports and other information. The software, including data providing software 110 and print manager software 106 is stored in ROM 400 and executed by microprocessor 402. Fig. 4b illustrates an alternate embodiment with a distributed hardware. The configuration of the postage meter apparatus 100 comprises meter apparatus 104 and printer apparatus 102. In the distributed configuration, both the meter apparatus 104 and the printer apparatus 102 include microprocessors. The meter apparatus 104 comprises microprocessor 402 and ROM 400. The printer apparatus comprises microprocessor 402', ASIC 408 and print heads 410. The data providing software 110 is stored in ROM 400 associated with microprocessor 402 and print manager software 106 is stored in microprocessor 402'. Distributed refers to a system which has more than one processor. The distributed configuration could also be performed with multiple microprocessors in one portion of the postage meter apparatus 100, such as, for example, multiple microprocessors in the meter apparatus 104. Line a-a of Fig. 1 illustrates the division of the distributed configuration of Fig. 4b. The software 106 and 110 in the configuration of Fig. 4a performs similarly to that of the distributed configuration of Fig. 4b in that each program 106 and 110 is stored and run separately and microprocessor 402 processing time is shared between the programs. The configuration of Fig. 4a provides for image data to be stored in the meter apparatus 104 and such meter apparatus may be moved to other postage meter apparatus. The print head apparatus 102 processor cannot be removed and therefore, image data is not stored in the print head apparatus 102. Additionally, the use of the postage meter apparatus 104 for storage of graphic data facilitates efficient use of computing resources since sufficient memory is available in the ROM 400 of the postage meter apparatus 104. The advantage of the distributed configuration of Fig. 4b is that the meter can be replaced in order to provide different graphics. While the present invention has been particularly described in conjunction with a specific preferred embodiment, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art in light of the foregoing description. It is therefore contemplated that the appended claims will embrace any such alternatives, modifications and variations as falling within the true scope of the present invention.

Claims: A method of printing using a postage evidencing device comprising: (a) storing a data structure and data definitions in a nonvolatile memory (116), the data structure including data for generating a print image and creating a data message and the data definitions corresponding to the data for generating a print image; (b) retrieving the data structure and the data definitions from the nonvolatile memory (116); (c) processing with a microprocessor (402) the data structure and data definitions to create the data message; (d) sending the data message to a printer control device (408), the control device capable of retrieving a corresponding print image from the nonvolatile memory (116); (e) retrieving the print image corresponding to the data message from the nonvolatile memory (116); (f) sending the print image to a printing apparatus (102); and (g) printing the print image with the printing apparatus (102). A method of printing according to Claim 1, wherein: retrieving step (b) is performed with a first microprocessor (402'); the data structure and data definitions are sent to a second microprocessor (402) for processing into the data message; and processing step (c) is performed with the second microprocessor (402). The method as claimed in Claim 1 or 2, wherein the print image corresponding to the data message is a bit mapped image. The method as claimed in Claim 1, 2 or 3, wherein the data structure stored in nonvolatile memory (116) comprises arrays of corresponding field definition and font data. Apparatus for carrying out the method of Claim 1, comprising: a nonvolatile memory (116) for storing data structures and data definitions for generating print images; a microprocessor (402) for processing print data using print manager software (106) and data providing software (110), the data-providing software for processing image data and data definitions to create a data message; a printer control device (408), for retrieving a print image corresponding to the data message from the nonvolatile memory (116); and a print apparatus (102) for printing images; whereby the print manager software (106) is operable to receive the data message from the data providing software (110) and the control device (408) is operable to retrieve print images corresponding to the data message from the nonvolatile memory (116) and to send the print images to the print apparatus (102) for printing. Apparatus for carrying out the method of Claim 2, comprising: a print apparatus (102) having: a nonvolatile memory (116) for storing data structures and data definitions for generating print images; a first microprocessor (402') for processing print data using print manager software (106), a printer control device (408) for retrieving an image corresponding to the data message from the nonvolatile memory (116); and print heads (410) for printing images; and a meter apparatus (104) having a second microprocessor (402) for processing image data and data definitions to create a data message using data providing software (110), the print manager software (106) being operable to receive the data message from the data providing software (110) and the printer control device (408) being operable to retrieve print images corresponding to the data messages from the nonvolatile memory (116) and to send the print images to the printing heads (410). The apparatus as claimed in Claim 5 or 6, wherein the printer control device is an application specific integrated circuit. The apparatus as claimed in Claim 5, 6 or 7, wherein the image data includes bit mapped images. The apparatus as claimed in any one of Claims 5 to 8, wherein the data structure stored in nonvolatile memory (116) comprises arrays of corresponding field definition and font data. The apparatus as claimed in any one of Claims 5 to 9, wherein the microprocessor (102) for processing data-providing software (110) is removable from the apparatus, together with a ROM (400) containing an operating program for said microprocessor (102). A postage meter device comprising apparatus according to any one of Claims 5 to 10.

Inventors: DAVIES BRAD L, ZINK ANDREW R, DAVIES, BRAD L., ZINK, ANDREW R.
Applicants: PITNEY BOWES INC, PITNEY BOWES INC.
Application year: 1999
Main classification: G07B17
IPC codes: G07B17