US3702922A - Control system and code for a graphical plotting machine or like apparatus - Google Patents
Control system and code for a graphical plotting machine or like apparatus Download PDFInfo
- Publication number
- US3702922A US3702922A US837043A US3702922DA US3702922A US 3702922 A US3702922 A US 3702922A US 837043 A US837043 A US 837043A US 3702922D A US3702922D A US 3702922DA US 3702922 A US3702922 A US 3702922A
- Authority
- US
- United States
- Prior art keywords
- digital
- characters
- plot
- circuit means
- electrical signals
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/22—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using plotters
Definitions
- ABSTRACT A system for controlling a graphical plotting machine includes receiving output data from a computers central processing unit arranged in a new code format.
- the new code format significantly reduces the quantity of data and the time required for the datas transmission to a graphical plotting system in Obtaining a given plot from a graphical plotting machine. Incorporation of repeat and tacking control commands in the code structure makes this possible.
- This invention relates to a system and apparatus for controlling graphical plotting machines and like apparatus and, more particularly, to such a system wherein the quantity of data required to obtain a given plot and the time required for its transmission are significantly reduced.
- the data output by the computers central processing unit is fed via intermediary means to a plotter which is not physically or electronically connectedto the computer.
- the computer and plotter may be and often are many miles apart.
- the most common intermediary means in use today is the single-purpose magnetic tape playback unit.
- the central processing unit egests data at a very rapid rate to a conventional magnetic tape unit where the data is recorded on magnetic tape. The tape is then physically removed from the conventional unit and transferred to the playback unit where the data is digested for the plotter at a much slower rate than the one at which it was transferred to the tape.
- the data or plotter commands are arranged on the tape in serial binary characters of seven or nine bit width, such as is described, for example, in US. Pat. No. issued to A. K. Jennings et al. 3,l99,l I l..
- the binary characters are further arranged in groups of three with each character representing plotter movement in the X, Y, or 2 directions, respectively.
- .off-line operation proved satisfactory in operation, it added a significant amount to the overall cost of the data processing system, the saving of computer time notwithstanding.
- the cost of the playback unit were not quickly or readily recoverable by savings in computer time since thesev playback units were restricted to a singlepurpose use, for whichthere was too often a large amount of idle time.
- a control system and code for a graphical plotting machine whereby the output of a high speed digital data processing system is efficiently and rapidly digested by a graphical plotter. While the disclosed system is particularly suitable for an incremental graphical plotting machine and is so described, it can be employed to control other similar apparatus. This versatility is especially true of the code.
- the output data of the digital processing system which is arranged in a novel code format to be described in greater detail hereinafter, is transferred to a suitable data storage device. From there, the data is physically transferred to a controller where it is decoded. The resultant plot commands are then transferred to the plotter itself, in proper sequence, as regulated by control commands within the code.
- the output data of the digital processing system is transferred directly via the input/output channel to the controller for decoding. Operation in the background is also readily compatible with the present invention.
- the controller which acts as an intermediary between computer and plotter serves as the brain center for the control system. In response to code command stimuli, by means of appropriate logic and associated electronics, the controller dictates plotter movement.
- the controller is equally compatible with the input/output channel of the computer for on-line" operation, remote batch operation terminals, or a magnetic tape playback unit or equivalent data storage device for off-line operation. Also, as noted above, the control system and the controller are compatible with operation in the background.
- FIG. 1 is a simplified perspective view of a digital incremental graphical plotter which is especially suitable for operation in conjunction with a system embodying the present invention
- FIG. 2 is a graphical representation of the usual eight major vector plotter movements shown in solid lines and the possible tacking movements associated with each major vector movement shown in dashed lines according to the principles of the present invention
- FIGS. 3a and 3b are a combined block and logic diagram of a system embodying the present invention.
- FIGS. 4(0), 4(1)) and 4(0) are illustrations of three sample plots, which have been plotted in accordance with the principles of the present invention.
- FIG. 5 is an illustration of a portion of magnetic tape coded in accordance with the principles of the present invention.
- FIG. 1 illustrates a simplified perspective view of a digital incremental graphical plotter, generally designated by reference numeral 100.
- the plotter is any standard commercially available item which is particularly suitable for computer graphics.
- Currently available plotters of the type preferred, for example, include Model NumberDP-S, available from Houston Instrument Division of Bausch & Lomb Incorporated, which will quickly provide reproducible records of graphs, maps, charts and drawings, all annotated as desired, with either alphanumerics or arbitrary symbols or both.
- a plot 102 is generated on suitable recording paper 104 by movement of a pen 106 thereacross and/or by movement of the recording paper 104 under the pen 106.
- the recording paper 104 and pen 106 are moved in incremental lengths of 0.01 inches relative to orthogonal axes X and Y.
- Pen 106 is additionally movable either upwardly or downwardly as required in an axis, the Z axis, which is mutually perpendicular to both the X and Y axes.
- the pen 106 is secured, as shown in FIG. 1, to pen carriage 108 which is incrementally driven bidirectionally across the width, typically eleven inches, of the recording paper 104.
- Pen carriage 108 is driven by a stepper motor 110 and a pulley system, generally indicated by reference numeral 112. This yields movement in the Y axis.
- the recording paper 104 is incrementally moved bidirectionally under pen 106 by a stepper motor 114 and a gear train, generally indicated by reference numeral 116..
- the recording paper 104 in the particular type of plotter described, is moved from a rear station 118 to a forward station 120 and stored at each station by a fan-fold technique, as best seenin FIG. 1.
- the more conventional roll, chart and drum technique may also be employed to move the recording paper 104. Either technique is satisfactory and compatible with the present invention, although the fan-fold technique is preferred. Movement of the recording paper 104 from the rear station 118 to the front station 120 is termed a chart down movement and describes a positive X axis movement, +X. It follows, therefore, that a chart up movement of the recording paper 104 describes a negative movement, -X, in the X axis. The previously noted additional movement of pen 106 either upwardly or downwardly, +2 or Z respectively, is accomplished by activating or deactivating a solenoid (not shown) located within a pen housing 122.
- Actuation of the incremental stepper motors 1 and 114 and the solenoid is accomplished by signals emanating from the plotter electronics, generally indicated by reference numeral 124. These signals are caused by the logic modules and associated electronic circuitry (see FIG. 3) of controller 126 in a manner to be explained hereinafter in greater detail.
- the direction of positive movement in each of the three axes is indicated by the grouping of the three mutual perpendicular sagittal lines,. generally indicated by reference numeral 128.
- All plot lines are generated by using a series of incremental straight lines as segments of the longer lines.
- the incremental straight line segments can be drawn in either a positive or negative direction and parallel to either the X axis or the Y axis.
- the most common incremental line length for plotters of the type described is 0.01 inches, although other incremental lengths can be and are employed.
- Line increments can also be drawn at a 45 angle to either direction, as is shown in FIG. 2, by moving the paper and pen simultaneously at thesame rate.
- the incremental length of a line segment drawn at 45 is, of course, 0.01414 inches for the 0.01 inch incremental plotter. Combinations of these increments are then used to closely approximate any desired plot.
- FIGS. 3a and 3b are is a combination block and logic diagram of a system which embodies the present invention.
- the operation and general use of the digital incremental graphical plotter 100 have been explained above. It is to be understood that the plotter electronics of FIG. 1 are incorporated within block 124 in FIG. 3b and'are, consequently, not separately shown in FIGS. 3a or 3b. The role of the plotter electronics 124 will be hereinafter explained in greater detail.
- FIG. 3a At the left of FIG. 3a is a block 300, which is representative of a digital data storage device
- a magnetic tape playback unit preferably a magnetic tape playback unit.
- a multi-purpose playback unit is employed in the preferred embodiment of the present invention to assist in further reducing the above-noted penalty.
- Such a multi-purpose playback unit can be used as an output device from a digital data processing unit, receiving its input in the form of punched paper tape, magnetic tape, punched cards, or directly from the computer output channel. In'addition, it can be used as an input device for plotters, numeric control devices and other similar units.
- the playback unit can also be used to record data from a keyboard onto the various output devices, allowing, in particular, its use to prepare input data for digital computers on magnetic tape. It is, therefore, apparent that employment of such a versatile multi-purpose playback unit reduces idle time since it can be used to perform a number of tasks.
- the multi-purpose playback unit used has its own control and error detecting logic thereby effecting further savings.
- the unit described above is a commercially available item, for example, Model Number 700 on its equivalent available from Mohawk Data Sciences Corporation. Interposed between playback unit 300 of FIG. 3a and the incremental plotter 124 of FIG. 3b, is the controller 126 of FIG. 1.
- the highly efiicient novel code structure described and employed herein permits a rather, significant reduction, typically by a factor of 10 or more, in the number of binary characters required to produce a given plot.
- the efficiency of the novel code structure disclosed herein becomes dramatically clear. For example, there is illustrated in FIGS. 4(a), 4(b) and 4(0), samples of three plots which have been drawn by an incremental graphical plotter controlled by the system and employing the instructional code described herein.
- the complexity of the sample plot is commensurate with the degree of complexity of plots likely to be encountered in actual practice. For this reason, the following I figures are credible, meaningful and representative.
- the sample plot consists of alphanumerics, long lines and short lines, broken and continuous, straight and angled.
- the conventional three character code structure heretofore used in the art required approximately 126,000 characters plus synchronization intelligence to describe this plot.
- the conventional single character code required 42,000 plus synchronization intelligence to describe this plot.
- the novel code structure disclosed herein required only 1280 characters.
- a couplet of binary characters is used to describe the direction and length of a plot line, with the exception of the unitary up and down commands, +2 and -Z respectively, to the pen. These latter movements obviously require only one character each.
- the first binary character in the couplet preferably specifies direction and the second binary character specifies length, although the reverse sequence could be satisfactorily employed.
- the direction or plot command comprehends the usual incremental plotter movements of +X, +Y, --X, -Y, +X+Y, +X-Y, X+Y, -XY, and +2 and -Z or pen up and pen down.
- tacking plot commands which allow the plotter to more efficiently describe lines lying at angles not on the major vectors, are provided. This tacking procedure is illustrated in FIG. 2 where the usual plot commands have been depicted as solid line segments together with their possible associated tacking plot commands, which are shown as dashed line segments.. The' tacking plot commands will be fully discussed in a later paragraph.
- the code structure includes certain control commands. As stated above, two binary characters are mated to yield a couplet which defines the direction and total length of a plot line. Recalling that a plot line comprises a number of incremental steps, it is readily appreciated that the binary character following a particular plot command, the step command, merely specifies or defines the total number of incremental steps to be taken by the plotter. As is illustrated in the tabulation set forth below in Table I, the code structure provides 30 binary characters, each of which correspond to an equivalent arithmetical number of steps, from one to 30.
- the repeat command orders the plotter to repeat the immediately succeeding binary couplet.
- the order to repeat the immediately succeeding binary couplet can itself be repeated an appropriate number of times.
- any particular plot command provided for in the code structure can be repeated as many as 900 times although only four binary characters or two binary couplets are used.
- the tacking plot commands facilitate the plotting of lines which fall on other than one of the usual axes or major vectors.
- the eight major vectors are shown as solid lines, reference numerals 200 through 214 respectively, in FIG. 2.
- the possible tacking vectors, reference numerals 216 through 246 respectively, are shown as dashed lines in FIG. 2.
- Each tacking plot command has a corresponding binary character to which is coupled a step control command.
- the resultant tacking couplet when decoded for the plotter causes an initial plot to be made along or parallel to one of the eight major vectors, 200 through 214, for all but one of the number of steps specified in the step control command.
- the last step or line segment is then plotted along either of the mutually perpendicular vector components lying at +45 and -45 respectively, to that plot vector.
- the tacking plot command causes a tacking plot of one line segment only in the specified direction to be added to the initial plot line segrnent(s).
- the total length of the initial plot is determined by the step control command being one segment shorter than the number of steps specified. It is interesting to note that there is no need to tack in any direction other than the two directions indicated by the rectangular vector components of the initial plot segments.
- a repeat control command and a step control command can be coupled to the tacking plot command couplet to obtain a rather lengthy line using only four characters.
- a repeat control command and a step control command can be coupled to the tacking plot command couplet to obtain a rather lengthy line using only four characters.
- a binary character is also provided for in the code structure to indicate that all the information following it defines a block address wherein is stored certain information which may or may not be intended for the plotter.
- Binary characters are also provided for a start plot command and a stop plot command, the latter also serving as'a reset command.
- a fill command used to fill dead space in magnetic tape or other data storage devices, and a reserve command, which has been set aside to designate any appropriate control command which might be evolved in the future, complete the particular code structure disclosed herein. It should be noted that one track or channel in the code structure, the 13 channel, has been utilized as a quick indicator means for signaling that any binary character therein, equivalent to l or which is up", is a step command. It will be appreciated that many modifications could be made to the disclosed code structure without departing from the spirit and scope thereof. For this reason, the code structure tabulated below is merely exemplary of the versatility and potential of the present invention.
- novel code format disclosed herein can be used in other environments besides on-line batch operation such as, for example, off-line batch operation, remote batch operation and time sharing operation.
- tacking and repeat commands could be used in conjunction with scanning devices such as, .for example, cathode ray tubes where graphical displays are displayed and edited.
- tape unit 300 is assumed to have been properly loaded with.a reel of tape (not shown) coded in accordance with the present invention.
- tape unit 300 is connected to the routing logic 302 by a cable 301 comprising leads 303-308.
- the preferred embodiment and as shown in FIG-5 seven channel tape is employed with one of the channels, the C channel, being reserved-for parity use.
- the correlation between the remainder of the channels, as illustrated in FIG. 5, and leads 303-308 is set forth'below in Table 11.
- the tape unit preferred for use in the present system and most equivalent units employs a core memory (not shown) havinga capacity of from to binary characters, depending on the playback unit selected.
- Tape unit 300 has a core memory capacity of 80 characters, however any other convenient memory core character capacity would be acceptable. Consequently, each data block, in the preferred embodiment is of 80 character length.
- the first data block When loading a reel of tape in preparation to plot, the first data block must be manually loaded into the core memory to remove any data remaining from a preceding run. It wouldalso be possible to have the firstdata block entered automatically if that were desired. This feature, while not expressly provided for in the preferred embodiment, could be easily incorporated therein at an additional cost.
- the memory of tape unit 300 is now assumed to contain the first data block present on the loaded tape.
- the block address number of the first data block to be plotted is entered in the START BLOCK switches 310.
- the block address of the last block of data to be plotted is entered in the STOP BLOCK switches 312. If only one data block is to be plotted, its address is entered in both block address switches. If an entire tape is to be plotted, either the last block address on that tape or 999 is entered in the STOP BLOCK switches 312.
- Both sets of switches 310 and 312 are preferably the thumbwheel type and are each connected to a nixie tube display 311 and 313 respectively, which visually indicate the block addresses entered to the operator. Other suitable switching and visual display means could be employed, if desired.
- the controller 126 has two modes of operation, search mode and plot mode. Once the START BLOCK 310 and STOP BLOCK 312 switches have been appropriately set, the search mode is initiated by activating the SEARCH switch 314. Once in search mode, the tape units memory core is interrogated at high speed until the start block address set by the START BLOCK switches 310 is detected. At this point, the search mode is completed and the controller 126 is ready to cause plotting. Plotting would begin automatically at this point if a PLOT switch 315 had been switched at the same time that the SEARCH switch 314 was set. In the alternative, plotting will begin, once the search mode is completed, by switching the PLOT switch 315 after the starting data block has been detected. The sequence of operation of the search mode is as follows.
- the routing logic 302 begins to interrogate the tape reader 300.
- the command decode logic 318 is set into its proper state for the search mode. As shown in Table I, there is a specific binary character which corresponds to a block address code or control command. This particular binary character informs the command decode logic 318 that a block address will follow immediately thereafter. As shown in FIG. 5, each block address code is followed by three binary characters which correspond to the units, tens and hundreds digits of the block address.
- the routing logic 302 which differentiates between a control command or plot command and the step commands, forwards the block address code via lines 303a to 307a to the command decode logic 318.
- the command decode logic 318 When the block address code is received by the command decode logic 318, it sets line 319 appropriately to inform the block address search and comparison logic 320 that a block address will immediately follow. As a result, the binary numbers which correspond to the units, tens and hundreds digits of the block address appearing on lines 303c through 3060 are gated in to the block address search and comparison logic 320. Also fed thereto is the address of the starting block for the plot to be made via line 321 and the address of the last block via line 322. A comparison of the starting block address and the block address just detected is made. If the detected block address is less than the actual starting block address, the advance line. 323 is set to cause the tape unit control logic 330 to force further binary characters out of the memory core.
- the tape unit control logic 330 controls the flow of information to the system.
- a signal is sent down line 336 to the tape unit control logic 330 which causes it to send a signal to the tape units memory core via line 340.
- This signal causes a binary character to be advanced from the memory core.
- the command decode logic 318 also uses line 336 to advise the tape unit control logic 330 that a command received by it has been decoded and that the controller 126 is now ready for the next succeeding binary character.
- the tape unit forwards an appropriate signal via line 339 to inform the tape unit control logic 330 that the binary character has been advanced from the memory as requested.
- Controller 126 is now in the plot mode and will start plotting, clue to the action of the command decode logic 318, if the plot switch 315 had been actuated at the same time as the search switch 314 or as soon as plot switch 315 is actuated after the starting block address has been detected.
- a start plot signal is forwarded down line 407 to bistable flip-flop 342 in response to the start plot binary character which follows the block address, as illustrated in FIG. 5. This causes a switch of states on theoutput line 343 of the flip-flop 342, which also appropriately sets line 415, one input to gate 348 and the plot clock control and register 326.
- a plot command follows the start plot command as hereinafter explained.
- the repeat command will be discussed thereafter.
- the plot command is forwarded by the routing logic 302 via lines 303a through 307a to the command decode logic 318. There the command is decoded and the appropriate output line of the group 400 through 408 of the command decode logic 318 will receive a signal which reflects the command received.
- line 404 is switched to reflect the pen up command.
- a signal is also sent down line 336 to indicate that the command received by the command decode logic has been received and decoded.
- This command received and decoded signal on line 336 is sent each time a command is, in fact, received and decoded. Consequently, this particular step in the decode sequence need not be discussed further, although it is to be understood that such a signal is sent each time a command is decoded.
- the appropriate plot command is received by the command decode logic which causes paper 104 and/or lateral pen 106 movement, thereby moving pen 106 to the starting coordinates of the plot to be made.
- this plot command causes the command decode logic to send an appropriate signal down one of its output lines 400 through 412.
- the plot command is the binary character corresponding to +X, +Y and that the starting point of the plot is fifteen steps or increments removed from the starting point at which the pen 106 had been. Therefore, after the pen up command, there follows a binary couplet, the first character of which specifies the count or number of steps and the second character of which specifies direction.
- the controller 126 reacts to this couplet in the following manner.
- the .step command is forwarded to the step count memory register 324 via lines 303b through 307b where it remains until cleared by the next following step command. It then passes via lines 303b through 307b after setting the memory register to the plot clock control and register 326.
- the step command is received by the plot clock control and register, it outputs an appropriate signal on line 416 which causes gate 348 to output a signal to the plot clock 350 via line 352 which turns the plot clock 350 on.
- the plot or direction command which follows the step command has been forwarded during this time to the. command decode logic 318 which causes output lines 400 and 402 to be appropriately set, reflecting the +X, +Y plot command. Almost simultaneously, the plot clock 350 begins to clock out pulses at a predetermined uniform rate.
- the pulses outputed by plot clock 350 are forwarded via lines 351 and 414 to X gate 360, Y gate 361, gate 372, gate 374 and the plot clock control and count register 326.
- X gate 360, Y gate 361, gate 372, gate 374 and the plot clock control and count register 326 When the clock inputs to gates 372 and 374 are set by the clock pulses, one of these gates will switch depending upon the presence or absence of signal on lines 404 and 405. In this case, gate 372 will switch since line 404 has a signal thereupon reflecting the previous pen up command.
- One input to gates 364, 366, 368 and 370 is set by the outputs of X gate 360 and Y gate 361 which are always up in the plot mode, unless a tacking plot command is decodedas will be hereinafter explained.
- the plotter electronics 124 will cause the appropriate stepping motors to move the pen in the commanded direction.
- the plot clock 350 output to the plot clock control and register 326 causes the register to count backwards one unit or step for each clock pulse received. When the register 326 reaches zero on the last step, it removes the signal on line 416, which switches gate 348, shutting off the plot clock 350.
- the plot clock control and register 326 also outputs a last step signal on lines 333 and 413 simultaneously with the receipt of the last clock pulse. Finally, a steps complete signal is sent via line 354 to resume interrogation of the memory by the tape unit control logic 330.
- the plot clock 350 is turned off after 15 steps in the +X, +Y direction have been taken. This sequence can be repeated with pen up or pen down in any of the possible plot directions for as many increments as are needed.
- controller 126 operates in the following manner.
- the repeat command is received by the routing logic 302 and forwarded via lines 303a to 3070 to the command decode logic 318. Receipt of this particular command only causes a signal to be sent via line 406 from the command decode logic 318 to the plot clock control and register 326 and a repeat control and count register 328. This repeat signal inhibits the plot clock register 326 and also gates open the repeat register 328 so that it will accept the immediately following repeat count.
- the repeat command is followed by a step or repeat count which specifies the number of times a plot command and its associated step command are to be repeated. It will be appreciated that 450 steps can be specified in a number of ways, but in view of the previous example shall be specified now as a step command of 15 and a repeat command of 30. Consequently, immediately following the binary character representing the repeat command is one calling for 30 steps.
- This 30 step command is initially loaded into the step count memory register 324, as previously explained, and then forwarded to the plot clock control and register 326 where the repeat signal inhibits the register and also gates open the repeat control and count register 328 to accept the 30 step binary character.
- the command decode logic 318 upon receipt of the following plot command resets line 418 thereby enabling the plot clock control and register 326 and shutting off access therefrom to the repeat control and count register 328.
- This plot command also, as previously discussed, sets the appropriate output line, in this case lines 400 and 402, of the command decode logic 318.
- the immediately following step count binary character of l 5 is routed to the step count register memory 324 and then the plot clock control and register 326. Since it is not inhibited by line 418, the plot clock control and register causes the plot clock to start switching the appropriate plotter gates, again gates 364 and 368, to cause the command plot to occur.
- the last step signal is forwarded via line 333 to the repeat control and count register 328. This signal counts down register 328 by one step and also signals the step count memory register 324,
- Plot clock 350 of a type well known in the art, is adjustable so that the intervals between its output pulses can be either increased or decreased. This feature is especially helpful during a repeat command where relatively long plot lines in one direction are to be made.
- line 417 is automatically activated for repeat command periods to increase the plot clock 350 rate and thereby speedup the plotting rate.
- the clock rate is likewise decreased at the end of the repeat period. It is also possible, if desired, to manually adjust the clock rate via the slew up-slew down line 417.
- a tacking command is detected by the command decode logic 318, all but the very last step of the step counts coupled to this command are performed as previously described for the initial example notedabove, except that one of lines 409 to 412 is switched in accordance with the tacking command thereby controlling X gate 360 and Y gate 361.
- An example of the tacking operation is as follows. It is supposed that a +X +Y plot command is coupled to a 15 step count as in the previous examples, except that in this case the +X +Y command is a tacking command. It is further supposed that +X is the final step to be tacked to the +X +Y plot.
- Output lines 400 and 402 are again switched up to set the inputs to gates 364 and 368 appropriately.
- the X and Y gates, 360 and 361 respectively are also set appropriately so that gates 364 and 368 are switched on allowing signal flow to the plotter 100.
- the tacking control logic 344 in response to the last step signal received on line 413, shuts down Y gate 361 which turns off gate 368 resulting in a final incremental plot of +X only.
- the tacking plot command and its associated step count command can be coupled to a repeat and count couplet so that the tacking command can be repeated a number of times without repeating the tacking command each time. To make the tacking procedure clearer another example thereof is offered.
- a -X plot is contemplated for 15 steps and suppose further that -X +Y is to be tacked thereto as the final step.
- the controller 126 operates generally as previously described. This time output lines 401 and 402 of the command decode logic are appropriately switched. However, for the first 14 steps, only X gate 360 is left switched on by the tacking control logic 344 so that for this period only +X is plotted. On the fifteenth or last step, the tacking control logic 344, in
- tacking is accomplished by switching all the outputs of the command decode logic 400 through 403 in accordance with the plot direction of the initial and the tacked increments for the entire count and then gating the X and Y gates 360 and 361, via lines 409-412, on or off, as required.
- lines 400 and 402 were switched up for 15 counts
- X gate 360 switched on for 15 counts
- Y gate 361 switched on for only 14 counts.
- lines 401 and 402 were switched up for the entire count of 15 increments
- X gate 360 is switched on for the entire count
- Y gate 361 is switched on only for the last count when needed.
- a number of buffer amplifiers 365, 367, 369, 371, 373 and 375 are interposed between their respective corresponding plot gates 364, 366, 368, 370, 372 and 374 and the plotter 124. They serve to raise the level of the signal received from the plot gates to one compatible with the requirements of the plotter. Consequently, their amplification duties, if any, are a direct function of the particular type of plotter used.
- block address codes continue to cause the command decode logic to gate the immediately following block addresses into the block address search and comparison logic 320. These block addresses are continually compared to the stop block address present on line 322. During each stop block address comparison, the plot clock 350 is inhibited by means of an appropriate signal sent down line 323 to the plot clock control and register 326. When the address of the stop block is reached or the last block on the tape if 999 were originally switched in as the stopping block, a last block signal is forwarded on line 316 to the command decode logic 318.
- first circuit means for receiving the digital characters and including means for generating electrical signals as a function of the digital characters
- second circuit means receiving the electrical signals generated by the first circuit means for segregating the electrical signals corresponding to the digital control characters, the digital directional plot characters, the digital incremental step characters and the digital tacking characters;
- third circuit means receiving the electrical signals corresponding to the digital directional plot characters segregated by the second circuit means coupled to the graphical plotting machine for readying the graphical plotting machine for plotting in plot directions corresponding to the segregated, digital directional plot characters;
- fourth circuit means coupled to the third circuit means receiving the electrical signals, corresponding to the digital incremental step character's segregated by the second circuit means, for generating a train of equispaced electrical pulses corresponding in number to the number of incremental steps specified by the segregated digital incremental step characters and including means gating the generated pulses on the third circuit means for each pulse generated to enable the graphical plotting machine to plot in the direction specified by the digital directional plot characters for the number of incremental steps specified by the digital incremental step characters;
- fifth circuit means receiving the last pulse generated by the fourth circuit means for inhibiting as a function of the last pulse the generation of additional pulses in the last direction of plot;
- sixth circuit means receiving the segregated electrical signals corresponding to the digital control characters, the sixth circuit means coupled to the first, second, third and fourth circuit means for enabling and disenabling one or more of the first, second, third and fourth circuit means as a function of electrical signals corresponding to the digital control signals;
- seventh circuit means coupled to the second, third and fourth circuit means receiving the segregated electrical digital tacking signals and the last of the pulses generated by the fourth circuit means for gating on the third circuit means each time the last pulse corresponds to the digital incremental step character associated with an electrical digital tacking signal, including means responsive to the last mentioned gating to control the graphical plotting machine to plot in the direction specified by the corresponding digital tacking character for the last incremental step of the number of incremental steps specified by the digital incremental step character corresponding to the last mentioned digital tacking character.
- Apparatus for controlling a graphical plotting machine to plot a graphical representation comprising:
- a magnetic tape playback system including a tape coded with digital control characters, digital directional plot characters, digital incremental step characters, digital repeat characters associated with any digital incremental step character, and digital tacking characters, the digital tacking characters comprising digital directional plot and incremental step characters, the digital characters collectively representing data for a plot of the graphical representation to be made, the digital characters arranged on said tape in a predetermined sequence of data blocks, each of said data blocks being identifiable by a corresponding digital block address character on said first circuit means receiving the coded digital characters for generating electrical signals as a function of the digital characters and for incrementally adapparatus;
- third circuit means in the controller receiving said electrical signals generated by the first circuit means for segregating the electrical signals corresponding to said digital control characters, said digital directional plot characters, sad digital tacking characters, and said digital repeat characters from the electrical signals corresponding to said digital incremental step characters in the data block corresponding to the predetermined block address;
- fourth circuit means in the controller receiving the segregated electrical signals corresponding to said digital control characters, digital directional plot characters, digital tacking characters and digital repeat characters for decoding and segregating said electrical signals;
- sixth circuit means in the controller coupled to said fifth circuit means receiving the segregated electrical signals corresponding to said digital incremental step characters for generating, as a function of the digital incremental step characters, a train of equispaced pulses corresponding in number to the number of steps specified by each of said segregated electrical signals of each of the digital incremental step characters, said pulses gating on said fifth circuit means each time a pulse is generated so that said graphical plotting machine plots in the direction specified by the electrical signals of the respective decoded digital directional plot character for the number of incrementalsteps specified by said digital incremental step character;
- circuit means in the controller receiving the decoded electrical signals corresponding to said segregated electrical signals of the digital control characters coupled to said first, second, third, fifth and sixth circuit means for enabling and disenabling at least one of said first, second, third, fifth and sixth circuit means as a function of said decoded digital control electrical signals;
- ninth circuit means coupled to the fourth, fifth and sixth circuit means receiving the decoded and segregated electrical digital tacking signals and the last of the pulses generated by the sixth circuit means for gating on the fifth circuit means each time the last pulse corresponds to the digital step character associated v with a decoded electrical digital tacking signal, to control the graphical plotting machine to plot in the direction specified by the corresponding digital tacking character for the last incremental step of the number of incremental steps specified by the digital incremental step character corresponding to the last mentioned digital tacking character;
- Apparatus for controlling a graphical plotting machine to plot a graphical representation comprising:
- a magnetic tape playback system including a tape coded with digital control characters, digital directional plot characters, digital incremental step characters and digital tacking characters, the digital tacking characters comprising digital directional plot and incremental step characters, collectively representing data for a plot of the graphical representation to be made, the digital characters arranged on said tape in a predetermined sequence of data blocks, each of said data blocks being identifiable by a corresponding digital block address character on said tape;
- first circuit means receiving the coded digital characters for generating electrical signals as a function of the digital characters and for incrementally advancing the electrical signals corresponding to said digital characters into a controller included in the apparatus;
- third circuit means in the controller receiving said electrical signals generated by the first circuit means for segregating the electrical signals corresponding to said digital control characters, said digital directional plot characters and said digital tacking characters from the electrical signals corresponding to said digital incremental step characters in the data block corresponding to the predetermined block address;
- fourth circuit means in the controller receiving the segregated electrical signals corresponding to said digital control, digital directional plot and digital tacking characters for decoding and segregating said electrical signals;
- sixth circuit means in the controller coupled to said fifth circuit means receiving the segregated electrical signals corresponding to said digital incremental step characters for generating, as a function of the digital incremental step characters, a train of equispaced pulses corresponding in number to the number of steps specified by each of said segregated electrical signals of each of the digital incremental step characters, said pulses gating on said fifih circuit means each time a pulse is generated so that said graphical plotting machine plots in the direction specified by the electrical signals of the respective decoded digital directional plot character for the number of incremental steps specified by said digital incremental step character;
- circuit means in the controller receiving the decoded electrical signals corresponding to said segregated electrical signals of the digital control characters coupled to said first, second, third, fifth, and sixth circuit means for enabling and disenabling at least one of said first, second, third, fifth and sixth circuit means as a function of said decoded digital control electrical signals;
- j. ninth circuit means coupled to the fourth, fifth and sixth circuit means receiving the decoded and segregated electrical digital tacking signals and the last of the pulses generated by the sixth circuit means for gating on the fifth circuit means each time the last pulse corresponds to the digital step character associated with a decoded electrical digital tacking signal, to control the graphical plotting machine to plot in the direction specified by the corresponding digital tacking character for the last incremental step of the number of incremental steps specified by the digital incremental step character corresponding to the last mentioned digital tacking character.
- a method of coding and arranging digital characters in a bit stream for processing by a plot controller as plot, step, tacking and control digital commands for controlling a plotter to plot a graphical representation by plotting of increments in on-line, off-line and remote environments comprising the steps of:
- n is a positive integer in a bit stream for each of a number of plot commands for orthogonal directions +X, +X, +Y, Y and combination directions +X+Y, +X-Y, --X+Y and X-Y, each plot command corresponding to one of the directions; assigning still other digital characters of n bit width in a bit stream for each'of a number of step commands, each step command corresponding to a fixed number of increments;
- a method of coding and arranging digital characters in a bit stream for processing by a plot controller as plot, step, repeat and control digital commands for controlling a plotter to plot a graphical representation by plotting of increments in on-line, off-line and remote environments comprising the steps of:
- n is a positive integer in a bit stream for eachof a number of plot commands for orthogonal directions +X, X, +Y, Y and combination directions +X+Y, +XY, X-l-Y and X-Y, each plot command corresponding to one of the directions;
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US83704369A | 1969-06-27 | 1969-06-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
US3702922A true US3702922A (en) | 1972-11-14 |
Family
ID=25273354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US837043A Expired - Lifetime US3702922A (en) | 1969-06-27 | 1969-06-27 | Control system and code for a graphical plotting machine or like apparatus |
Country Status (4)
Country | Link |
---|---|
US (1) | US3702922A (fr) |
DE (1) | DE2031532A1 (fr) |
FR (1) | FR2053944A5 (fr) |
GB (1) | GB1323731A (fr) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3789200A (en) * | 1972-06-30 | 1974-01-29 | Ibm | Circle or arc generator for graphic display |
US3844461A (en) * | 1973-04-09 | 1974-10-29 | Gerber Scientific Instr Co | Precise indexing apparatus and method |
US4231659A (en) * | 1979-04-11 | 1980-11-04 | The Gerber Scientific Instrument Company | Method of making an overlay mask and a printing plate therefrom |
US4283732A (en) * | 1979-03-02 | 1981-08-11 | Hitachi, Ltd. | Recording system with inter-line space positioning means |
US4356632A (en) * | 1979-06-09 | 1982-11-02 | Koh-I-Noor Rapidograph, Inc. | Writing apparatus |
US4532521A (en) * | 1983-03-18 | 1985-07-30 | Brother Kogyo Kabushiki Kaisha | Recording apparatus |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3199111A (en) * | 1962-05-21 | 1965-08-03 | California Comp Products Inc | Graphical data recorder system |
US3293651A (en) * | 1962-10-04 | 1966-12-20 | Gerber Scientific Instr Co | X-y plotter |
US3297929A (en) * | 1965-12-27 | 1967-01-10 | Navigation Computer Corp | Tape programmed machine tool control system |
US3425038A (en) * | 1966-05-03 | 1969-01-28 | California Computer Products | Graphical display plotter |
US3434113A (en) * | 1966-08-08 | 1969-03-18 | California Computer Products | Methods and systems for providing graphical displays |
-
1969
- 1969-06-27 US US837043A patent/US3702922A/en not_active Expired - Lifetime
-
1970
- 1970-06-25 DE DE19702031532 patent/DE2031532A1/de active Pending
- 1970-06-26 FR FR7023884A patent/FR2053944A5/fr not_active Expired
- 1970-06-29 GB GB3131970A patent/GB1323731A/en not_active Expired
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3199111A (en) * | 1962-05-21 | 1965-08-03 | California Comp Products Inc | Graphical data recorder system |
US3293651A (en) * | 1962-10-04 | 1966-12-20 | Gerber Scientific Instr Co | X-y plotter |
US3297929A (en) * | 1965-12-27 | 1967-01-10 | Navigation Computer Corp | Tape programmed machine tool control system |
US3425038A (en) * | 1966-05-03 | 1969-01-28 | California Computer Products | Graphical display plotter |
US3434113A (en) * | 1966-08-08 | 1969-03-18 | California Computer Products | Methods and systems for providing graphical displays |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3789200A (en) * | 1972-06-30 | 1974-01-29 | Ibm | Circle or arc generator for graphic display |
US3844461A (en) * | 1973-04-09 | 1974-10-29 | Gerber Scientific Instr Co | Precise indexing apparatus and method |
US4283732A (en) * | 1979-03-02 | 1981-08-11 | Hitachi, Ltd. | Recording system with inter-line space positioning means |
US4231659A (en) * | 1979-04-11 | 1980-11-04 | The Gerber Scientific Instrument Company | Method of making an overlay mask and a printing plate therefrom |
US4356632A (en) * | 1979-06-09 | 1982-11-02 | Koh-I-Noor Rapidograph, Inc. | Writing apparatus |
US4532521A (en) * | 1983-03-18 | 1985-07-30 | Brother Kogyo Kabushiki Kaisha | Recording apparatus |
Also Published As
Publication number | Publication date |
---|---|
FR2053944A5 (fr) | 1971-04-16 |
DE2031532A1 (de) | 1971-01-07 |
GB1323731A (en) | 1973-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3346853A (en) | Control/display apparatus | |
US3844139A (en) | Installation for the control of knitting machines | |
US4435778A (en) | Method for editing spatially related data in an interactive text processing system | |
US3702922A (en) | Control system and code for a graphical plotting machine or like apparatus | |
US4051459A (en) | Stored program controlled typewriting/editing system | |
US4314330A (en) | Machine tool data system | |
US3540012A (en) | Crt display editing circuit | |
CA1094690A (fr) | Calculateur programmable | |
US3816723A (en) | Machine tool data system and method | |
US5126956A (en) | Method and apparatus for displaying segments of a ladder diagram which turn on an operator specified relay | |
US3753239A (en) | Data flow in a machine log system | |
US4247853A (en) | Alphanumeric CRT display system with means for storing positional data calculated during an initial scan | |
US3434113A (en) | Methods and systems for providing graphical displays | |
US3728684A (en) | Dynamic scanning algorithm for a buffered printer | |
US3924723A (en) | Centering of textual character fields about a point | |
US3142042A (en) | Apparatus for transferring data from punched cards to a memory device | |
US3781813A (en) | Machine log system | |
US2919431A (en) | Apparatus for the magnetic recording of data | |
US3042902A (en) | Information location apparatus | |
US3262100A (en) | Data processing apparatus | |
GB1145035A (en) | Printer carriage control | |
US3389241A (en) | System for reading information from intermixed binary and decimal cards | |
Tenner | A software system for the on-line measurement of bubble-chamber pictures | |
US3274563A (en) | Sorter system | |
Besant et al. | CADMAC II—A fully interactive computer aided design system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: AMETEK, INC., 410 PARK AVENUE, NEW YORK, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNOR:BAUSCH AND LOMB INCORPORATED, A CORP. OF NY;REEL/FRAME:004476/0363 Effective date: 19851025 |