Abstract:
A printer-plotter system is provided having a single horizontally movable, print-plot head comprising geometrically arranged thermal resistor elements which are processor-controlled for plotting continuous multi-directional line segments and for printing, while plotting, upper and lower case alphanumeric characters and punctuation characters in four orthogonal directions. Characters are printed in 5-columns-by-7-rows dot matrix form, with neighboring dots partly overlapping each other in order to impart a continuous or drawn appearance rather than a discontinuous dot appearance to the printed characters. The geometric arrangement of the head elements also provides for varying the width of line segments plotted along selected orthogonal directions.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates generally to printer-plotter systems and, more particularly, to dot-matrix thermal printer-plotters. Thermal printer-plotters are known which have thermal resistive elements (dots) arranged in matrix form, each column and each row of matrix having multiple resistive elements. 
     However, to form the vertical portion of a character, the column elements of the matrix are sometimes energized simultaneously. This often results in non-uniformity of contrast between portions of the character formed by a given number of the matrix elements energized simultaneously and other portions of the character formed by a different number of simultaneously energized elements. This non-uniformity in contrast is caused by parasitic losses, such as are produced by a battery return lead and resistance, which reduce the amount of powder supplied to each element as a function of the number of simultaneously energized elements. 
     To avoid this problem of non-uniformity in contrast associated with simultaneously energized elements, a printer-plotter with individually energizable print and plot elements is needed. Also, for purposes of compactness and simplicity, the elements should be arranged in a single print-plot head in such a manner that, to print a selected character, the same elements may be used to print the character in one direction as to print the character in other directions. 
     SUMMARY OF THE INVENTION 
     According to the illustrated preferred embodiment of the present invention, a print-plot system is provided having a central processing unit (CPU), a memory unit containing a stored program, and a printer-plotter unit with a print-plot head. The print-plot head comprises ten geometrically-arranged thermal resistive elements, one of which is used to plot lines and nine of which are used to print upper and lower case alphanumeric characters in four orthogonal directions, under program control. 
     The geometric arrangement of the character - printing elements enables these elements to be individually energized when printing a character, thereby eliminating the problem of non-uniformity of contrast associated with simultaneously energized contiguous printing elements. Any of the printing elements may be energized simultaneously with the plotting element in order to print characters while plotting selected line segments. The arrangement of the elements also diminishes the dot appearance of the printed characters and improves character appearance by printing the dots in slightly overlapped fashion. Furthermore, the arrangement of the elements provides for varying the thickness of a character or orthogonal line segments by selectively energizing one or more individual elements. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of the printer-plotter system of the present invention. 
     FIG. 2 is a combined perspective view and block diagram illustrating the printer-plotter and controller of the system of FIG. 1. 
     FIG. 3 is a top view of the elements of the print-plot head employed in the system of FIG. 1. 
     FIG. 4 is a diagrammatic illustration of elements of the print-plot head of FIG. 3 used to print a character. 
     FIG. 5 is a logic flow diagram of a routine stored in a ROM of the system of FIG. 1, illustrating one mode of operation of the system. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     FIG. 1 shows a printer-plotter system having a logic unit 11 and a printer-plotter unit 13. The logic unit 11 comprises an input unit 15 such as a keyboard, optical reader or magnetic tape device for entering data into the system, a read-write memory (RWM) unit 17, a read-only memory (ROM) unit 19 having a stored routine, a processing unit 21 and a print-plot controller 23. The processing unit 21 stores the data from input unit 15 into RWM 17, processes the stored data under control of the ROM routine, and applies the processed data via controller 23 to printer-plotter 13 for plotting and printing. 
     FIG. 2 shows the printer-plotter 13 comprising a web or paper drive unit 25, a print-plot head 27 engaging the web, and a coordinate actuator or head drive unit 29 for moving the print-plot head 27. The paper drive unit 25 includes a stepper motor 33 coupled to a platen 35 for moving paper 31 forward (from +Y to -Y) or rearward (from -y to +y). The head drive unit 29 includes a head motor coupled to head 27 by means of a guide wire 39 for moving the head 27 from left to right (from -x to +x) or from right to left (from +x to -x). FIG. 2 also shows print-plot controller 23 comprising a head position controller/driver 41, a paper position controller/driver 43, and a head power controller/driver 45. Upon application of a signed, binary value from processor 21 to head position controller/driver 41 (the sign of the binary value specifying the direction of movement of the head 27 and the magnitude of the binary value indicating the number of steps that the head 27 is to be moved), the controller/driver 41 converts the signed binary value to two signals with a +90° phase delay between the two signals when the sign is negative, and to two signals with -90° phase delay between the signals when the sign is positive, and applies the two signals to head motor 37. Head motor 37 moves head 27 a distance corresponding to the number of cycles of the signals, in the direction from -x to +x when the applied signals are out of phase by +90°, and from +x to -x when the applied signals are out of phase by -90°. In similar manner, a signed binary value applied by processor 21 to paper position controller/driver 43 causes controller/driver 43 to apply two signals with +90° or -90° phase delay between them to stepper motor 33. Stepper motor 33 rotates a sprocketed portion of platen 35, moving paper 31 a distance corresponding to the number of cycles of the applied signals. Paper 31 is moved forward (+y to -y) when the signals applied to motor 33 are out of phase by + 90°, and moved rearward (-y to +y) when the signals applied to motor 33 are out of phase by -90°. A binary pattern of ten bits is applied, in parallel, by processor 21 to head power controller/driver 45 specifying the thermal elements of head 27 that are to be energized. 
     FIG. 3 shows a top view of the thermal resistive elements of head 27. (In an alternative embodiment of the present invention the thermal elements of the head may be arranged along a single diagonal.) Seven elements are used for printing upper and lower case characters, at least two elements are used for printing punctuation characters, and one element 47 is used to plot lines. For example, when the head 27 is moved from left (-x) to right (+x), to print upper and lower case characters E and e, thermal elements E1, E2, E3, E4, E5, E6 and E7 are used, to print a lower case character with a &#34;descending portion&#34; such as &#34;p&#34;, elements E3, E4, E5, E6, E7, E8 and E9 are used, and to print a punctuation mark such as a comma, elements E7, E8 and E9 are used. Each printing element partly overlaps its neighboring element in a column-wise and row-wise fashion as indicated by reference numerals 49 and 51 of FIG. 3. This overlapping arrangement permits the printing of contiguous, partly-overlapping dots, forming characters having a non-dot-like appearance. The elements are connected to twelve leads, one lead being a ground lead 53 common to elements E1-E9, nine lead being conductor leads 57-63, 65 and 69-75, each connected to one of the nine elements E1-E9, and one grounded lead 55 and one conductor lead 67 connected to plot element 47. The twelve lead to the head 27 are, in turn, connected to head power controller/driver 45 of printer-plotter controller 23 via a flexible cable 77. Processor 21, under control of the routine shown in FIG. 5 and Table 2 following, moves the head 27 or paper 31, or both, to a selected position and applies a binary pattern to head 27, energizing selected elements to plot a point or to print one or more points as part of a character. 
     FIG. 4 shows the elements E1-E7 used to print the character &#34;E,&#34; and the particular move or position of the head (p1 being a first position, p2 being a second position, and so on) at which each element is energized. The elements E8 and E9 are not used to print portions of the E, instead, these two elements are used to print punctuation marks and the lower portions of lower-case characters when such characters are oriented in the same direction as the E. For example ##STR1## means that at an initial positioning of head 27 element E6 is energized to form a portion of character E,  means that at the next positioning of the head (i.e., at head position two), element E3 is energized to form another portion of the E,  means that at head position seven, elements E4 and E7 are energized to form two other portions of the E, and so on. Note that at head position three, elements E8 is in position for forming a punctuation character or lower portion of a lower-case character (if such a character were needed) and, hence, is not energized to form a portion of the E. Table 1 shows the elements used to print upper-case character &#34;P,&#34; punctuation character &#34;,&#34; and lower-case character &#34;p.&#34; 
     
                                           TABLE 1__________________________________________________________________________                          Element used                          to form                                 Element used Example                  character                                 to formOrienta- of   Character            Direction                   Direction                          in order                                 descendertion of character      orienta-            of     of     of use,                                 portioncharac- orienta-      tion  head move-                   paper  from left                                 (in orderter   tion (Cartesian            ment   movement                          to right                                 of use)__________________________________________________________________________First P,   + y to - y            - x to + x                   No movement                          E6,E3,E5,E2,                                 E9,E8orthogonal                     E7,E4,E1Second      - y to + y            + x to - x                   No movement                          E4,E7,E5,E8,                                 E1,E2orthogonal                            E3,E6,E9Third      - x to + x            No movement                   + y to - y                          E1,E2,E3,E4,                                 E6,E9orthogonal                     E5,E7,E8Fourth      + x to - x            No movement                   - y to + y                          E9,E8,E7,E6,                                 E4,E1orthogonal                     E5,E3,E2First P    + y to - y            - x to + x                   No movement                          E9,E6,E3,E8,                                 Noneorthogonal                     E5,E7,E4__________________________________________________________________________ 
    
     A flow chart of the operations performed by processor 21 under control of the routine stored in ROM 19 (FIG. 1) is shown in FIG. 5. Each block of the flow chart represents an operation performed by processor 21. For a given sequence of input data received and stored by logic unit 11, or generated by processor 21 (pursuant to calculation operation) and stored in RWM 17 for plotting and printing, the print-plot routine as shown by block 77 accesses the first data word to be plotted, positions the paper and head as shown by blocks 79 and 81, and plots the contents of the accessed data word. As shown by block 83, plotting is achieved by applying the accessed data to head power controller/driver 45 (FIG. 2) where the data is used to gate power from a power supply 105 to plot element 47 of head 27. Following the plotting operation as block 85 shows, a test is made to determine if printing is to be performed. If no printing is to be performed (indicated by a print flag not having been preset), control is transferred to block 101. If a print flag has been present indicating that character data are to be printed, the orthogonal orientation of the character is determined as shown by blocks 87 and 89, and head 27 or paper 31 is moved to a selected coordinate as shown by blocks 93 and 91, causing selected elements of the head to occupy selected positions over the paper 31 corresponding to the data word to be printed. To accomplish the head and paper movement indicated by blocks 93 and 91, for a given character orientation determined from blocks 87 and 89, signed binary values are applied to head-position and paper-position controller/drivers 41, 43. Bit patterns (dot patterns in binary form) of alphanumeric characters printable by the system are pre-stored in word groups in ROM 19, each word group containing the dot (bit) pattern corresponding to one character. For a given character stored in RWM 17, the group of words from ROM 19 containing the dot pattern corresponding to the stored character are accessed. This access operation is shown by block 95, after which the contents of each word are applied to head power controller/driver 45 (FIG. 2) as shown by block 97. As shown by gates 103 and power supply 105 of FIG. 2, the contents of each dot-pattern word serve to gate power from power supply 105 to those elements of the head for which there is a matching &#34;1&#34; bit in the dot-pattern. As block 99 shows, after each dot-pattern word is provided, control is returned to blocks 95 and 97 for successive dot-pattern words to be output. When all of the dot-pattern words (preselected for annotating a plotted data value) have been printed, control is transferred to block 101 which, in turn, returns control to block 77 if additional data values remain to be plotted, or terminates the print-plot operation if no data values remain to be plotted. To plot lines having a selected thickness, a plot element 47 of selected size may be used, or individual elements may be energized selectively to produce, along a selected orthogonal direction, a line made up of a desired number of contiguous dots. To print characters having a selected thickness, selected dot patterns may be used. Table 2 shows a listing of the individual instructions of the print-plot routine. ##SPC1##