US 3809865 A
In a conventional computer terminal device for printing out data from a digital computer, a type vehicle having straight line characters of varying slopes and intercepts which is easily adapted to replace or fit over the conventional alphanumeric ball, cylinder or type-track vehicle, for printing a straight line approximation of graphical information. The information from which the graph is derived, already available in the computer, is operated upon by a stored program to cause the type vehicle to print, for each data point, a straight line segment conveying optimum information with respect to the position and waveform derivatives to provide a continuous plot of output data.
Description (OCR text may contain errors)
United States Patent 1191 1111 3,809,865
Dimeo May 7, 1974 COMPUTER TERMINAL PLOTTING cal Disclosure Bulletin, Vol. 13, No. 2, July I970, pp.
APPARATUS AND METHOD 458-459.
 Inventor: Frank N. DlMeo, Philadelphia, Pa.
 Assignee: Academic Associates, Inc., Primary Examiner-Malcolm A, Morrison Audubon, Pa. Assistant Examiner.lerry Smith  Filed: an. 27, 1972 Attorney, Agent, or FrrmPaul & Paul  Appl. No; 221,237
Related US. Application Data  Continuation-impart of Ser. No. 79,907, Oct. 12,
 ABSTRACT In a conventional computer terminal device for printing out data from a digital computer, a type vehicle  Cl 235/151 101/399 ga having straight line characters of varying slopes and 1 Int 0 G06 15/20 intercepts which is easily adapted to replace or fit over 58 Field of Search 1. 444/1; 340/1725; 178/30, t z f i" h l i i t g z j g f 17s/34-3s- 235/151 151.22- 101/39s-399 401 F P"" 5 mg P non of graplncal Information. The mformauon from References Cited which the graph is derived, already available in the computer, is operated upon by a stored program to UNITED STATES PATENTS cause the type vehicle to print, for each data point, a
3,267,852 8/1966 Gordon 101/399 straight line segment conveying optimum information 3.444.31 5/1969 Artz et aI.--- 173/30 with respect to the position and waveform derivatives 3,467,233 9/1959 .lablonski 1. 178/34 X to provide a Continuous plot f output data OTHER PUBLICATIONS D. E. Fisk, Control For Digital Plotter, IBM Techni- 7 Claims, 4 Drawing Figures PATENTEDHAY 7 I974 SHEET 1D? 2 INVENTOR.
Frank N. DiMeo M V W ATTORNEYS PATENTEDW H914 3.809.865
SHEET 2 BF 2 INVENTOR. Frank N. Di Meo Y pal WM ATTORNEYS.
COMPUTER TERMINAL PLOTTING APPARATUS AND METHOD CROSS REFERENCE TO RELATED APPLICATION This is a Continuation In Part application of applicant's application Ser. No. 79,907, filed Oct. l2, I970, having the same title and now abandoned.
BACKGROUND OF THE INVENTION A. Field of the Invention This invention lies in the field of computer peripheral equipment and, more particularly, computer output terminals for presenting graphical information.
B. Description of the Prior Art In many present day applications involving digital computers, there is an urgent need for graphical presentation of data which has been compiled in tabular form by the computer. In some scientific applications, the information is converted from digital to analog signals, the analog signals driving continuous wave plotters which provide continuous plots of graphical information. However, whether the user employs a separate digital to analog converter and a separate plotter, or such equipment is combined in one output terminal, this approach is extremely expensive and not justified for the routine computer user.
An alternate approach to printout of computer data in graphical form is to use a conventional alphanumeric output terminal such as a teletype machine, Selectric typewriter, or high speed line printer, using any one of the characters available as a data point, and positioning these data points by the use of the spacing mechanisms ofthe output printer. Such technique, while commonly used, has severe limitations, particularly where more than one curve is to be represented on a given plot. None of the alphanumeric characters normally available is adequate to represent a curve of changing slope. Further, each character field is spaced horizontally on any given line, and is spaced vertically from line to line, with the result that the data points which represent only position information, are considerably spread out and present a very poor resolution graph. This result is particularly frustrating in many applications inasmuch as the computer, in the course of compiling the tabular information which is to be presented in graphical form, has compiled considerably more information with respect to both position and derivative than the output printer is able to accommodate. There thus is essentially no middle ground in the present art between the extremely poor resolution standard printer, designed only for alphanumeric printouts. and the very expensive analog plotting terminals.
SUMMARY OF THE INVENTION It is an object of this invention to provide an easily installed hardware modification of an existing character printout terminal in order to adapt such terminal for good resolution printing of graphical information.
It is a further object of this invention to provide simple mechanical means for computer controlled printout of straight line segments incorporating derivative, position and intercept data to produce a straight line approximation curve of data generated by a digital computer.
It is a further object of this invention to provide a method for printing a straight line approximation graph of information held within a digital computer.
It is a further object of this invention to provide simple and reliable apparatus and a method for using such apparatus which overcome the disadvantages of the prior art and fulfill a long felt need for an inexpensive means of direct printout of digital information in high resolution graphical form.
Accordingly, the invention provides a character vehicle adaptable to a conventional printout device, such vehicle having a plurality of raised characters of a straight line segment form, each character having distinct position and slope information, the characters occupying character fields such that there is no spacing horizontally or vertically between adjacent character fields on the printout, and a method of converting tabular information in digital form into corresponding signals to control the sequence of typing of such straight line segments so as to produce a continuous graph of such tabulated digital data. In operation, the computer user replaces a conventional alphanumeric character vehicle with the straight line segment vehicle for printout of the curve, or fits over or otherwise attaches the straight line segment vehicle to the alphanumeric vehicle, and the computer is operated by a sub-routine program which constitutes the software for investigating the digital information and controlling the curve printout. The computer controls the actuation of the type vehicle so as to cause it to print successive straight line segments which constitute the curve.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. la is a diagrammatic representation of a cylinder adaptable for use on teletype machines, and having straight line characters;
FIG. lb is a diagrammatic representation of a ball type character vehicle adaptable for use on typewriter outputs, and having straight line segment characters;
FIG. 2 is a diagrammatic representation of a graphi cal character field showing an arrangement of 64 different straight line and dot characters;
FIG. 3 is a diagrammatic representation of a conventional printout produced by a conventional alphanumerical printout device, with a high resolution curve provided by this invention superimposed thereon.
DESCRIPTION OF THE PREFERRED EMBODIMENT Referring now to FIG. la, a diagrammatic illustration is shown of a cylinder for use on teletype machines, the cylinder being of suitable geometric proportions to be readily adapted to existing machines. The surface of the cylinder supports raised characters 40 of a straight line segment form as illustrated in the drawing. The cylinder is constructed with an inner diameter permitting it to be placed firmly over the alphanumeric cylinder of a conventional teletype. Alternately, the user may replace the alphanumeric cylinder with one of the same diameter. For purposes of illustration, the cylinder is broken up into character fields by dashed lines, each character field containing a straight line segment having a given position and slope within its character field. Such raised straight line segments replace the normal alphanumeric characters which are utilized in conventional printout devices.
Referring now to FIG. 1b, a ball type character vehicle is'shown, again illustrated with character fields designated by dashed lines, each character field having the straight line segment character therein. It is to be noted that other hardware adaptations embodying this invention may be utilized, even though not illustrated here. For instance, one type of line printer utilizes a belt-like type track which is continuously driven past the printer hammers. Such type track, which normally contains raised alphanumeric characters, may be replaced with a corresponding type track having raised straight line segment characters. In general, this invention may be practiced with any printing device having a character vehicle, wherein the alphanumeric character vehicle may be replaced with a straight line segment character vehicle of the same geometrical form, or adapted by sliding the straight line segment vehicle over the alphanumeric vehicle.
Referring now to FIG. 2, 64 possible characters are illustrated within one character field. The actual number of characters which can be utilized in the practice of this invention will depend upon the equipment being used, and a choice of 64 characters is made simply to illustrate the principle involved. As seen in FIG. 2, 61 straight line characters are shown, each straight line character representing different position and/or slope information. The choice of the straight line segment to be utilized is made upon an examination by the computer of the digital information representing the point to be represented and adjacent points, from which digital information the appropriate straight line character can be chosen which optimally represents position and slope data.
Since the ideal output format is a continuous line graph, the character field is chosen so that there is no horizontal or vertical spacing, and the entire character field is utilized by the straight line segment characters. Thus, in referring to FIG. 2, the rectangle within which the line segments are enclosed illustrates the entire character field, comparable to one of the character fields shown by the dashed lines in FIGS. la and lb. FIG. 2 illustrates the use of 64 characters, consisting of 61 straight line segments each ofa unique position and slope, plus three "dot" characters. The dots may be employed if the curve to be represented enters and leaves via the same side of the field. In that instance, the dots may be used to indicate the extent of the excursion of the curve into the character field. It is to be emphasized that many different modes of operation may be utilized in accordance with the constraints applied by the equipment being used. Not only the number of characters may be varied, but the form of the characters may be varied. For instance, some of the straight line segments may be replaced by arcuate segments to provide a better approximation of the graph within a given character field. In addition, dotted line or dashed line segments, or the like, may be used in place of straight line segments, a feature which may be incorporated where it is desired to print out a number of curves on the same graph and to provide for differ entiation of the curves.
Referring now to FIG. 3, the difference between the prior art practice with conventional line printers and the practice of this invention is illustrated. The dashed lines illustrate conventional alphanumeric character fields 5], such fields having horizontal spaces between adjacent characters, and having vertical spaces between adjacent lines. FIG. 3 illustrates a curve printout using conventional character fields and the character 0. By contrast, this invention utilizes a larger character field 52, as shown by the solid lines, such character fields extending such that there is no spacing between adjacent character fields of the printout in either the horizontal or vertical directions. Corresponding to the graph comprised of the character 0 placed in the conventional alphanumeric fields, a graph 53 derived from the apparatus and method of this invention is illustrated showing straight line segments, each segment filling one full character field 52. As is readily seen, the straight line segment graph is considerably neater and more understandable, in addition to providing more accurate information.
In operation, the computer operates on input data in accordance with a program written to obtain information in tabular form. For example, the computer may be programmed to calculate the trajectory of a missile in terms of initial thrust conditions, gravitational forces, etc. The computer calculates position information at predetermined time intervals, e.g., every sec ond, storing in memory such position information as a function of time corresponding to each I second time interval throughout the desired time range. For purposes of simplicity in this example, it is assumed that the position information is in terms of distance from a given point, so that only one dimension as a function of time need be considered. If a normal printout of such information is made, it is in tabular form, a different numerical distance being printed out for each corresponding one second time interval. Alternately, the computer user may program a printout using a conventional line printer or terminal output device. In such a printout, each alphanumeric character field on a given line corresponds to a given time interval. However, presuming that range is plotted as a function of time, the line spacing of the printout device determines the resolution with which the range can be plotted. For a given time interval, corresponding to a given column of alphanumeric character fields, an alphanumeric character must be placed in the center of one given line, thus considerably compromising the resolution of the curve. By contrast, in the practice of this invention, the computer can select the optimum character which most closely reflects both the position and slope of the curve within the given field. For example, corresponding to a given time interval for which the computer has already calculated position data, the computer may be programmed to compare this position with the position for the next prior time interval and the next subsequent time interval, and calculate therefrom an approximation of the slope of the curve through such time interval. In this way, the computer derives both position and slope information, which forms the basis for selecting the best of the 64 illustrated character segments to be chosen within any given character field. After thus computing the desired character segment for a given time interval, the computer is programmed to proceed to the next time interval, and make similar calculations, again selecting the optimum character field and optimum character segment for representation of the tabular data. In thus proceeding through the tabular data, the computer generates digital information from which the curve may be plotted. It is to be noted that, as is the practice in the computer art, the curve may be plotted out as the program progresses, or, more efficiently, the
plotting instructions may be stored in memory or on auxiliary memory such as magnetic tape, for later printout through the printout device.
Different constraints may be imposed in writing the program by which the computer operates on the tabular data in order to determine the chosen characters for printout of the curve. For example, if a continuous curve is desired, the intercept of each character may be made the starting intercept of each subsequent character. To illustrate, curve A in FIG. 2 terminates at intercept B. The computer is programmed such that the next chosen character is one of the nine line segments eminating from intercept C, such that the subsequent and the prior segments would be continuous at a common point.
Although the practice of this invention has been illustrated by discussion of the plotting of a curve which proceeds unilaterally on a time sequence basis, it is noted that the method may be used for plots such as helical patterns, root locus, etc., where the curve may have a plurality of points corresponding to any given horizontal or vertical coordinate. For example, in using an output terminal which cannot back space and/or back line feed, a circular plot could not be constructed single character by single character by proceeding unilaterally in a given direction across the graph. In such cases, the program is modified to first calculate all printout characters, and then to cause the printout terminal to print one or more characters on each line, progressing from line to line until the total curve is plotted. in the same manner, a plurality of curves may be plot ted in one printing. Of course, if the terminal may be back spaced and back lined, such operations may be incorporated into the print-out program.
The practice of this invention is illustrated in the following examples.
EXAMPLE l A standard typewriter instrument is used as the output printing device, for printing data on command from a digital computer. The standard alphanumerical ball is replaced with the line segment ball as shown in FIG. 1b. The desired printout is that of an x-y plot of tabular information contained within the memory of the digital computer. A subroutine is stored within the computer memory for analyzing the tabular data and generating control signals sent to the typewriter, to properly space the typewriter and cause the chosen line segment to be printed, corresponding to each data point.
The typewriter, with the line segment ball adaptation, is capable of printing any one of 6] line segments, or three dot characters. Each line segment or dot charac ter printout is made within a character field having a horizontal, or side to side width, equal to the horizontal character spacing of the typewriter, and a vertical, or line to line width, defined by the line spacing of the typewriter, the character fields being contiguous such that there is no overlapping between adjacent character fields. The computer retrieves the first data point from the tabulated data in memory, and, from the x-y location of such data point, generates electrical signals which are communicated to and drive the typewriter horizontally along the first line to the position of that character field wherein such first data point is contained, when plotted with a pre-determined scale on the typewriter printout paper. An optimum slope representing the slope of the graph at such first data point is determined by calculating the differential slope between such first data point and the next, or second data point, and comparing such calculated slope with the 61 available straight line segments. The straight line segment closest to the calculated slope is selected, and a corresponding electrical signal is communicated to the typewriter to cause it to print such selected segment within the chosen character field. The typewriter is then spaced to the next line, and the above process is repeated.
EXAMPLE 2 The same procedure is followed as was followed in Example l, up to and including termination of printout of the first line segment. In operating on the second data point, the character field is chosen in the same manner, i.e., the .t-y information is used to shift the typewriter horizontally to the character field containing such x-y position. ln determining the chosen line segment, or dot, for the second character, the trailing intercept of the prior line segment is used as a constraint. Thus, the trailing intercept of the prior line segment limits, to a limited number of the total 6! available line segments, that line segment which can be chosen. The slope is calculated as the x-y slope be tween such intercept point and the next subsequent, or third, data point, and the respective line segment is then chosen which has its leading intercept coinciding with the trailing intercept of the prior line segment, and has the closest slope to the calculated slope. The typewriter is then spaced to the next line, and the same procedure is repeated, until all of the data is printed out.
EXAMPLE 3 The same procedure as followed in Example 1 is utilized, incorporating the steps of calculating the slope between the given data point and the prior data point, and averaging this slope with the calculated slope between the given data point and the next succeeding data point, to determine the slope associated with the given data point.
From the above examples, it is apparent that many different subroutines may be utilized for determining the appropriate line segment corresponding to a given data point. Any manner of programming the computer to calculate, from the tabular data, an optimum slope corresponding to a given data point, is within the spirit and scope of this invention.
As used in this specification and the claims appended hereto, the term character field defines the position on the type vehicle, as well as on the printout, within which the straight line segments are positioned. The character fields are contiguous, meaning that they have common boundaries with adjacent fields, without spac ing or overlap. The straight line segments are seen to fill the character fields, in that they extend from one boundary to another, the ends of each segment being at or on a boundary.
There is presented below, in Table l, a listing of a computer program for operating on stored data, selecting optimum straight line character segments, and causing sequential printout of such segments so as to provide a straight line segment curve of the data. The program calls for the information which is to be presented as a curve, from either external storage (cards,
tape, etc.) or from the computer's own memory. The computer selects the proper straight line segments which best fit the information in storage for each data increment. in order to make best use of the physical size of the output format, scaling of the information is first considered. It is seen that the listing calls for a printout of normal alphanumeric characters, it being understood that when the straight line segment vehicle of this invention is used in place of a conventional al- IPROGRAM STANDARJuPAGCS=5uE lT=5uFUL1ST NAME:
phanumeric vehicle, the output is in the desired straight line segment form.
It is understood that the program illustrated in this listing is illustrative only, and for the purpose of a presenting a complete disclosure of this invention. It is noted that other programs, or routines, incorporating logical variations of the one shown here, may be composed by those skilled in the art, and be within the scope of this invention.
IDBST. KENNETH I- 1. Computer apparatus for printing out data in graphical form, comprising:
a type vehicle having a plurality of raised characters of a straight line segment form, each such character being positioned on the printing surface of said vehicle within a separate character field, such character fields being of uniform size and contiguous to adjacent fields, each straight line character having a distinct combination of position and slope and having each end thereof at a boundary of its character field, whereby said characters may be printed out under control of a computer so as to provide a substantially continuous straight line segment graph of said data.
2. The apparatus as described in claim 1 wherein said type vehicle is adapted to attach to a conventional al phanumeric character vehicle.
3. The apparatus as described in claim 1 wherein said type vehicle has a cylindrical form, with said raised characters rising from said cylindrical surface.
4. The apparatus as described in claim 1 wherein said type vehicle is a spherical ball, with said raised characters rising from said spherical surface, and said com puter terminal apparatus is a typewriter.
5. The apparatus as described in claim 1 wherein said type vehicle contains a plurality of raised characters other than said straight line characters.
6. The apparatus as described in claim I further comprising a digital computer and computer terminal equipment having said type vehicle mounted thereon, wherein said digital computer contains data in tabular form consisting of a plurality of data points, and a stored subroutine for selecting characters on said type vehicle which represent position and slope information corresponding to respective data points, and for controlling said terminal apparatus to print out such selected characters, whereby to provide a graph of said tabular data.
7. The apparatus as described in claim 1, further comprising:
a. computer terminal equipment controllable by a digital computer and containing said type vehicle;
b. digital computer means, operably connected to said computer terminal equipment;
c. digital storage means for storing a plurality of data points;
d. said computer means being programmed to select character fields on the data printout corresponding to the coordinate positions of said respective data points;
e. said computer being programmed to select, from said plurality of straight line characters, a straight line character corresponding to the coordinate position and slope of said graph for each respective data point;
f. said computer means being programmed to generate control signals representing said selected character fields and said selected straight line characters; and,
g. said control signals, when operably connected to said computer terminal equipment, causing the printing of said selected characters in said selected character fields to produce said straight line segment graph representing said data points.
a a: w a