Abstract:
A home knitting machine is provided with electronic control means which function pursuant to patterning instructions on a program card and in response to the operation of control devices by an operator causing needle actuators on the carriage of the machine to be selectively operated and fabric knitted in a prescribed manner on the machine. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The invention relates to automatic knitting machinery and has particular application to home knitting machines which can be programmed to produce prescribed patterns on a fabric. 
     2. Description of the Prior Art 
     Automated home knitting machines are now well known and are exemplified by the machines of the following Patents and applications: 
     U.s. pat. No. 3,885,405 -- issued May 27, 1975 
     French Pat. No. 2,212,830 -- Reg. July 23, 1972 
     Japanese Application No. 85853, laid open Nov. 13, 1973 
     Although such machines can be programmed to produce various patterns in knitted fabric, there are a variety of desirable control functions pertaining to the formation of patterned fabric which the existing machines can not be programmed to perform automatically. Furthermore, existing machines do not permit the operator to exercise a large measure of control over the knitting of the fabric after the initial programming. 
     SUMMARY OF THE INVENTION 
     In order to remedy the deficiencies of the prior art machines, electronic control means are provided in a home knitting machine enabling the machine to perform automatically a variety of control functions which an operator may prescribe by suitably marking a program card to be read by the machine and/or by operating various control instrumentalities, preferably located on the carriage of the machine, and enabling the operator after the machine has been programmed to exercise easily close control over the knitting of fabric on the machine. 
     More particularly, the machine of the invention is rendered capable of reading and executing instructions which an operator may prescribe by marking the card, including instructions defining a design configuration for fabric to be knit on the machine, size delineating instructions for a unit design area to be formed repetitively in the fabric, instructions specifying that each unit design area be expanded an integral number of times, either horizontally or vertically or in both directions in the fabric, instructions directing that in conjunction with the unit design areas, mirror images thereof also be formed in courses or wales or in both courses and wales of the fabric, and an instruction directing a particular number of wales to be knit as selvedge without the design configuration at opposite side edges of the fabric. The machine is also provided with switches which offer an operator an alternative to the use of certain instructions on the program card. With such switches he can cause the machine to expand the unit design areas, produce mirror images, knit a selected number of wales of selvedge, invert the design configuration and background specified on the card, reverse the left-right orientation of a design configuration as prescribed on the program card and repeat a design row in fabric being knit. In addition, the machine is adapted to execute supplementary and/or modifying instructions in response to the actuation of switch means by an operator including instructions specifying the placement of a pattern between the side edges of a fabric to be knit on the machine, and an instruction directing the formation of selvedge in punch lace fabric with both the yarn and thread used in knitting the punch lace construction. 
     The machine includes a liquid crystal display which provides an operator with meaningful information enabling him to better control the knitting of designs and to prevent defects due to operating error. The display informs an operator of the row of the program card being knit, of the number of times a given row has been selected for vertical multiplication, of the fact that the machine has been readied for automatic knitting before a card has been read properly where such is the case, of a failure by the operator to select a particular needle for a wale corresponding to an end column of a designated unit design area on the program card, and of the condition of the power supply.

Description:
DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a perspective view of the machine of the invention; 
     FIG. 2 is a top plan view of the carriage of the machine; 
     FIG. 3 is a face view of a program card for the machine; 
     FIG. 4 is a face view of a display provided on the carriage of the machine; 
     FIG. 5 is a somewhat diagrammatic bottom plan view of the carriage showing needle actuating cams arranged for fair-isle knitting; 
     FIG. 6 is a view similar to FIG. 5 showing the camming arranged for punch-lace knitting; 
     FIG. 7 is an enlarged somewhat schematic fragmentary bottom plan view of the carriage showing an electromagnetic needle actuator and associated needle-butt detector; 
     FIG. 8 is a view taken on the plane of the line 8--8 of FIG. 7; 
     FIG. 9 is a schematic view in perspective of the pulse generator of the machine; 
     FIG. 10 (A and B) are diagrams showing the signal outputs of components of the pulse generator; 
     FIG. 11 is a block diagram showing the principal components of the machine and indicating their interrelationship; 
     FIG. 12 (A, B and C) are circuit diagrams showing electronic components of the card reader of the machine; 
     FIG. 12D is a schematic representation indicating the location on the program card of strobe signals with respect to ruled columns in the design area of the card; 
     FIG. 13 is a circuit diagram showing a digital adapter and thresholding circuit components associated with the reader; 
     FIG. 14A is a circuit diagram showing the electronic components of needle butt circuitry; 
     FIG. 14B is a wave shape diagram illustrating the operation of the circuitry of FIG. 14A; 
     FIGS. 15A and 15B are diagrams showing electronic drive components for the liquid crystal display on the machine; 
     FIG. 15C is a wave shape diagram illustrating the operation of the circuitry of FIG. 15A; 
     FIG. 16A is a diagram showing actuator duty cycle and time-out circuitry; 
     FIG. 16B is a wave shape diagram illustrating the operation of the circuitry of FIG. 16A; 
     FIG. 17A is a circuit diagram showing the interface between the computer and input/output circuitry; 
     FIG. 17B is a truth table for the Off-Program-Knit switch of the machine; 
     FIG. 18 is a circuit diagram showing a voltage level comparator; 
     FIG. 19 is a listing of computer subprograms and subroutines; 
     FIGS. 20 through 47 are flow diagrams; and 
     FIGS. 48 and 49 is a glossary of terms used in the flow charts of FIGS. 20 through 47. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The present invention is embodied in preferred form in the machine of the drawings and is an integral part thereof along with other inventions which are the subject of copending applications bearing Ser. Nos. 627,173, 627,178 and 627,446 respectively, all filed on Oct. 30, 1975. Referring to FIGS. 1 and 2 of the drawings, reference characters 10 and 12 designate the bed and carriage respectively of such home knitting machine. The carriage is slidably mounted on a guide rail 14 affixed to the bed, and includes handles 16 and 18 which an operator may grasp and utilize to move the carriage back and forth on the bed. Knitting needles 20 are slidably supported in side by side relation in the bed 10 as shown. The carriage includes needle actuating camming hereinafter described and includes left and right electromagnetic actuators 22 and 24 respectively by means of which the needles may be caused to enter one or another of alternate cam paths and knit a single yarn, two different yarns, or a yarn and thread into fabric in a prescribed manner. 
     A general purpose minicomputer 26, of Texas Instrument Co. P/N Model 960A, programmed as hereinafter indicated, is provided for controlling the needle actuators 22 and 24 pursuant to instructions on a program card 28 as detected by a reader 30 located on the carriage and/or the condition of various electrical switches also located on the carriage. As shown, the computer 26 connects by a multi-wired cable 32 with an input-output box 34 and the input-output box connects by another such cable 36 with the carriage 12. Cable 36 extends through a slot 38 in a table 40 which supports the bed 10 on one side of the slot 38 and a compartmentalized housing 42 for accessories on the other side. The cable 36 is of such length as to permit it to move freely with the carriage 12 as the carriage is moved along the bed. The input-out box includes an input power line 44 and a switch 46 by means of which power supplied over line 44 may be connected to or disconnected from the carriage. Power is supplied to the computer 26 over line 48. 
     Electrical switches located on the carriage and operatively connected to the computer 26 via input output box 34 include an O.P.K. switch 50, needle one switch 52, motifing switch 53, automatic and row repeat switch 54, row advance 56, row descent switch 58, design inversion switch 60, left-right reverse switch 62 and check-digit switch 63. A pulse generator 64 mounted on the carriage for rotation in timed relation to movement of the carriage and a liquid crystal display 66 on the carriage also operatively connect with the computer 26 via the input-output box 34. 
     The O.P.K. switch 50 is a three position switch which an operator of the machine may move into one position (O) to turn the machine off, another position (P) to put the machine in a PROGRAM MODE, and still another position (K) to place the machine in a KNIT MODE. The switch remains in whatever position it is placed until moved again. Motifing switch 53 is a three position switch similar to switch 50 and has an off position (O) as well as two motifing positions (M+) and (M-). The automatic and row repeat switch 54 is movable into either of two positions (A or R). Design inversion switch 60 and left-right reverse switch 62 are also two position switches. Each of the switches 54, 60 and 62 remains in whatever position it is placed until moved again. The other switches, that is, needle one switch 52, row advance switch 56, row descent switch 58 and check digit switch 63 are on-off switches which remain on only so long as they are depressed. The motifing switch 53, automatic and row repeat switch 54, design inversion switch 60, row advance switch 56, row descent switch 58 and left-right reverse switch 62 are dual function switches in that each serves one purpose when the machine is in the KNIT MODE and another purpose when the machine is in the PROGRAM MODE. 
     A stand 68, centrally located with respect to ends of the needle bed 10 is provided with yarn guides 70 and 72, and with tension devices 74 and 76 enabling one yarn, two yarns or a yarn and thread to be fed in a controlled fashion to the needles of the machine and to be knit into fabric. 
     Program card 28 which may be best seen in FIG. 3, is used to instruct the computer concerning the manner in which fabric is to be knit on the machine. As shown, the card includes mutually perpendicular lines which define a design area of rectangles 78 that extend in numbered columns (1 through 36) and numbered rows (1 through 20). The rectangles 78 correspond to stitches and the numbered columns and numbered rows to wales and courses respectively which may be knit in a fabric pursuant to instructions on the card. Preferably the width and height of each rectangle 78 are such as to substantially correspond to the width and height of a typical stitch. The card includes two rows of strobe markings 80 (strobe A) and 82 (strobe B), a row of size delineating ellipses 84 aligned with the numbered columns 2 through 36, and a column of size delineating ellipses 86 aligned with the numbered rows all as shown in the drawing. In addition the card includes a column of ellipses 88 in association with symbolically expressed textless instructions, that is, the ellipses 88a, 88b, 88c and 88d having to do with selvedge, mirror imaging, horizontal multiplication and vertical multiplication, respectively. 
     The reader 30 includes a thumb wheel 90 by means of which the program card may be easily moved through the device after having been inserted in the entrance slot 92 on the carriage. As will be explained hereinafter in more detail, the reader is adapted to detect, as the card moves through it, the strobe marks on the card and any marks made on it by an operator in particular rectangles in the design area or in particular ellipses outside the design area. 
     As previously noted, the pulse generator rotates in timed relation to movement of the carriage 12. The device (FIG. 9) includes photo-interrupter modules 94 and 96 in association with a toothed disc 98 affixed on one end of a shaft 100. Each module includes a light emitting diode (LED) on one side of the disc 98 and a phototransistor on the other side as shown for the module 94 at 102 and 104 respectively and for module 96 at 106 and 108 respectively. A toothed pulley 110 is affixed to the shaft 100 and a timing belt 111 connects the toothed pulley with a pinion 112 which is rotatable in the carriage and meshes with a rack 114 on the bed 10 of the machine (FIG. 2). As the carriage 12 is moved on the bed, pinion 112 is rotated by reason of its engagement with the rack 114 and the timing belt 111 is caused to drive pulley 110 and shaft 100. Disc 98 is rotated by shaft 100 in synchronism with the carriage and equally spaced teeth 116 on the wheel intermittently interrupt light between the LED and phototransistor in each of the photointerrupter modules causing the modules to produce output pulses. Modules 94 and 96 are so located and the number of teeth 116 on disc 98 is such as to cause module 94 to produce a pulse (FIG. 10A) each time the carriage passes from one needle area of the bed to the next, and module 96 to produce pulses (FIG. 10B) which lead the pulses from module 94 by 90° when the carriage is moved in one direction (to the right) and which lag the pulses from module 94 by 90° when the carriage is moved in the other direction (to the left). 
     The liquid crystal display 66 (FIG. 4) is comprised of a background plane 118 and fourteen segments which may be turned on selectively to provide meaningful indications to an operator of the knitting machine. One such segment in the shape of the numeral two is located at the left end of the display, and another of the segments, formed as the unit integer is located next to it. Two segments, one in the shape of an arrow pointing upward and the other also in the shape of an arrow but pointing downward, are located at the right end of the display. Four vertically aligned rectangularly shaped elements which define three of the segments (the two centrally located elements being electrically connected to constitute one segment) are located next to the arrows, and seven segments, selected combinations of which can represent any number from zero to nine, are disposed between the three segments formed by the four vertically aligned rectangular elements and the single segment formed as the unit integer. 
     Needle actuating camming is provided in conjunction with the left and right needle actuators 22 and 24, and left and right butt detectors 118 and 120 on the underside of the carriage 12 (FIGS. 5, 6 and 2). Such camming which is symmetrical about the transverse center line of the carriage includes fixed left and right separator cams 122 and 124, knit cams 123 and 125, fixed center cams 126 and 128, fixed upper elongated guide cam 130, fixed left and right elongated lower guide cams 132 and 134, free floating left and right check cams 136 and 138, spring biased left and right gate cams 140 and 142, left and right fair-isle gate cams 144 and 146 adjustable by cam lever 148, left and right knit-tuck gate cams 150 and 152 adjustable by the cam lever 148, left and right knit-in cams 154 and 156 also adjustable by cam lever 148, and russel cams 158 and 160 adjustable by cam levers 162 and 164 all as embodied in Model 321 of a home knitting machine sold by The Singer Co. under its registered trademark &#34;Memo-Matic.&#34; 
     The camming is shown in FIG. 5 with the adjustable cams in positions enabling the camming in conjunction with suitably controlled actuators 22 and 24 to cause the needles 20 as the carriage traverses the bed of the machine to move in a well known manner suited to Fair-Isle knitting wherein two yarns 166 and 168 of different colors are knitted into a pattern. Alternate paths as selectively determined for the needles by the actuators pursuant to instructions specified by an operator of the machine prescribe the particular form of the pattern. The alternate paths for movement of the carriage 12 in the direction indicated as determinable by the one actuator 24 appear at 170 and 172. 
     In FIG. 6 the camming is shown with the adjustable cams disposed to enable the camming in conjunction with suitably controlled actuators 22 and 24 to cause the needles, as the carriage is moved back and forth on the bed, to knit Punch Lace, in a well known manner, into a pattern prescribed by the operator of the machine with a wool or synthetic yarn 174 and nylon thread 176. Alternate paths for needles through the camming in FIG. 6 as selectively determinable by actuator 24 during movement in one direction is shown at 180 and 182. 
     With the adjustable cams disposed for either Fair-Isle Knitting or Punch Lace knitting and with the actuators 22 and 24 out of action (i.e. in the absence of control signals to these devices) all needles are caused to follow one path through the camming as the carriage 12 is moved in one direction or another along the bed 10 (in FIG. 5, path 170 for the direction indicated; and in FIG. 6, path 180 which is the same as path 170). The needles in both instances are caused to move in the bed in the same way and Stockinet knitting is performed in a manner well known. 
     Butt detector 120 as may be best seen in FIG. 7 includes a contact element 184 mounted in a fixed cam 186 and another contact element 188 in the form of a spring which in addition to serving as a contact, functions as a biasing means for a side cam 190. The butts 20a of needles 20 passing between cams 186 and 190 successively bridge the gap between contact elements 184 and 188 thereby closing an open circuit between them and causing a signal to be transmitted to the computer 26. Butt detector 118 is similar to and functions in the same manner as butt detector 120. 
     The width of a fabric to be knitted is defined prior to knitting by an operator positioning those needles which are to be on the fabric in one or more positions on the bed as required for the knitting of the particular cloth such that they can be influenced by the camming in the carriage as it is moved back and forth across the bed, and positioning those needles at opposite end portions of the bed which are to be off the fabric in positions such that can not be acted upon by the camming in the carriage. For automatic pattern knitting the way in which the needles to be on the fabric are preliminarily disposed is always such that as the carriage is moved on the bed no more than two such needles in succession can pass by the leading butt detector before a needle butt enters the device and is detected. Therefore, regardless of the type of pattern knitting no more than three needle spaces can be traversed by the carriage without a signal from a butt detector before it is certain that the butt detector has reached the end of the fabric. The computer 26 takes note of the absence of three butt detector signals during automatic pattern knitting and causes the actuator to operate so as to cause needles, beginning with the first of a number of needles to enter the actuator 24 in advance of the first of the three needles missing the butt detector, to knit a plurality of like stitches as selvedge. Cam lever 148 (FIG. 2) which is used in adjusting the carriage camming for Punch Lace knitting closes a switch 191 when moved into its Punch lace position and causes a signal to be transmitted to the computer 26 effective to provide for the formation of selvedge with both the wool or synthetic yarn and thread (174 and 176 respectively in FIG. 6) used in this type of knitting rather than with the thread alone. One, two or three selvedge stitches as prescribed by the operator may be knit at each edge of the fabric with the machine as shown and described herein. 
     Needle selector 24 (FIGS. 7 and 8) includes a permanent magnet 192 fastened against the upper limb 194 of a C-shaped channel of magnetic material having a lower limb 196. The upper and lower limbs 194 and 196 of the channel define a gap 198 which diverges toward the left as viewed in FIG. 7 and presents north and south magnetic poles as indicated. A hole 200 formed in the upper limb 194 adjacent to the narrowest portion of the gap 198 reduces the strength of the upper or north pole of the opposed magnetic poles as developed by the permanent magnet 192. A magnetizable core 202 is attached to limb 194 and a coil 204 is provided about the core. 
     Needle butts 20a moving through the selector 24 are attracted in the narrowest part of gap 198 to the north pole on the upper limb 194 or the south pole on lower limb 196 depending upon whether or not coil 204 is energized. A deenergized coil causes a needle butt to be drawn to the lower or south pole against limb 196 and to thereafter continue along the limb because of the divergence of the poles. However an energized coil produces a strong electromagnetic pole on the core 202 at the upper limb 194 of the same polarity as that produced by the permanent magnet on such limb and causes a needle butt in the gap 198 to be drawn to the north pole against limb 194. The needle butt thereafter travels along limb 194 because of the divergence of the poles. Needle selector 22 is constructed and functions in the same manner as needle selector 24. 
     The knitting machine of the invention is programmed for pattern knitting with the OPK switch 50 in the P position. The card 28 may be used to instruct the machine concerning the pattern to be knit or instructions may be obtained from a pattern pre-programmed into computer 26 by the operator flipping a switch 206 on the computer. The computer may, if desired, be preprogrammed to include a plurality of different patterns each of which may be specified for reproduction upon the operation of an appropriate switch. 
     Marks in the design area of the card and in ellipses outside the design area define a pattern to be knitted. A preprinted card defining the pattern could be used to instruct the machine but if the operator wishes to prescribe a pattern not preprinted on a card or not stored in the computer he must mark the card 30 with a pencil or other marker (preferably one leaving an erasable mark) as required for the pattern desired. 
     An operator marks out a design configuration of his own for reproduction in a fabric, as for example the duck on the card in FIG. 3, by selectively darkening rectangles in the design area as shown. Boundaries for a unit design area to be repetitively reproduced each with the design configuration is specified by the operator darkening one of the size delineating ellipses 84 adjacent to a selected numbered column and another one of the size delineating ellipses 86 adjacent a selected numbered row as in FIG. 3. If he inadvertently darkens more than one column aligned ellipse or more than one row aligned ellipse, only the one aligned with the lowest numbered column or row is given effect by the control electronics when the card is read. If no size delineating ellipse is darkened the ellipses adjacent column 36 and row 20 which are preprinted black serve to prescribe the boundaries of the unit design. 
     In addition to specifying a design configuration on the card and selecting size delineators, an operator may prescribe one, two or three wales to be knit as selvedge with like stitches by darkening one of the ellipses 88a, call for mirror imaging of the unit design horizontally or vertically or both by darkening one or both of the ellipses 88b, specify a two, three or four fold increase in the unit design horizontally by darkening one of the ellipses 88c, specify a two, three or four fold increase in the unit design vertically by darkening one of the ellipses 88d. The machine is capable of executing any combination of the instructions pertaining to mirror imaging, multiplication, or selvedge which are not inconsistent due to more than one of the ellipses 88a, 88c or 88d having been darkened. 
     Instructions on the card are imparted to the machine by feeding the card through the reader 30 with thumb wheel 90. The reader includes various light emitting diodes and phototransistors which are multiplexed into paired relationship as the card passes through the reader, and they serve to detect the presence of marks within the design area defining the design configuration and marks outside the design area whether imprinted on the card as in the case of strobe marks and the delineator marks adjacent row 21 and column 36, or marks added for the purpose of selecting one of the design options (selvedge, mirror imaging, multiplications). 
     Signals representing the instructions on the card pertaining to the pattern to be knitted as denoted by the marks in the rectangles and ellipses and detected by the reader in conjunction with associated circuitry are transmitted to the computer and retained in memory until recalled to control operation of the actuators 22 and 24 during the knitting of fabric. The manner in which the reader functions to detect markings reliably on the card and the manner in which the computer functions concerning such instructions and others is discussed in detail hereinafter. It is here merely noted that the reader is adapted to recognize reverse movements of the card and control the recording of signals in the computer accordingly so that it is not essential for an operator to painstakingly avoid all reverse movements while feeding a card through the reader, that the reader is further adapted to detect when a skewed card is fed into the reader, that the reader and computer are adapted to determine when a card is fed too fast through the reader for the accurate reading of instructions on the card, that the strobe markings on the card are arranged to maximize the permissable speed of the card, and that the reader and computer are adapted to determine the total number of dark marks on the card. 
     After the card has been read and while the machine is in the PROGRAM MODE an operator can: 
     1. Designate a particular needle (needle one) to form column 1 of the unit design on the program card; 
     2. Specify a motifing sequence; 
     3. Call for a reversal in the fabric of the left - right orientation of the unit design on the program card. 
     Such instructions can be prescribed singly or in combination in varying order. Also, the operations specified in 2 and 3 above can, if desired, be performed prior to the reading of a card. 
     The overall position of the pattern in fabric to be knit on the machine is determined by the needle one selection. The designation is made by the operator moving the carriage 12 to a position wherein its transverse center line is in alignment with a needle to be selected and then momentarily depressing the needle one switch 52. A motifing sequencing is prescribed by the operator moving the carriage across portions of the needle bed with motifing switch 53 in its M- position, the effect of which is to schedule those needles traversed while the switch is so positioned to knit background only and nothing of the design configuration on the program card. By traversing needles with switch 53 in the M+ position, the operator may at any time void any of the selections made with the switch in the M- position. A reversal in the fabric of the left - right orientation of the unit design as it appears on the card is prescribed by the operator setting the left - right reversing switch in its reversing position. 
     While the machine is in the PROGRAM MODE, the operator can utilize switches on the carriage to prescribe mirror imaging and/or multiplication not called for on the program card, or to override and change such option or options specified on the card. Switch 54 may be so used for horizontal mirror imaging, switch 60 for vertical mirror imaging, switch 58 for horizontal multiplication and switch 56 for vertical multiplication. Switches 54 and 60 which may have been left in the option selecting position prior to the time the O.P.K. switch was moved to the P position must be moved out of that position and returned to it to effect a selection. 
     A momentary depression of switch 58 causes the display 66 to show, with an appropriate number of its rectangular elements, the horizontal multiplication factor in the computer at that time and continued depression of the switch causes the display to cycle through the multiplication factors. When the switch is released, the multiplication factor in view at the time is retained on the display and that factor is programmed into the computer. A momentary depression of switch 56 causes the display to show an up arrow, and with its rectangular elements the vertical multiplication factor then in effect. Continued depression of the switch causes cycling on the display of the vertical multiplication factors any one of which may be selected for the computer and retained on the display by the operator releasing the switch when the factor appears. 
     After the machine has been programmed the operator must before proceeding to knit fabric move the O.P.K. switch 50 into the K-position to place the machine in the KNIT MODE. Assuming the machine was properly programmed the display 66 will be caused to show at least a 1 standing for row 1 on the design card and either the up or the down arrow when the switch is moved to the K position. If the machine was programmed for vertical mirror imaging the down arrow will show, otherwise the up arrow will be displayed. If the machine was programmed for vertical multiplication a single rectangle will also come into view, otherwise none appear. 
     Fabric is knit with the machine in the KNIT MODE by the operator moving the carriage back and forth across the bed to actuate the needles. The first course of fabric is knit pursuant to the instructions read from row 1 of the program card, and while the row is being knit the display shows the numeral 1 brought into view when the O.P.K. switch was moved into the K position. Thereafter, higher numbered rows on the card are knit sequentially without repetition up through the highest numbered row of the unit design as delineated on the card (row 15 in FIG. 3), provided the automatic and row repeat switch 54 is in its A position (normal position) and vertical multiplication was not prescribed. After the highest numbered row of the unit design has been knit the rows of the unit design are knit again beginning with row 1 unless vertical mirror imaging was programmed into the computer in which case the rows are knit downward from the highest numbered row of the unit design. After each new row is completed and the carriage has been reversed, as determined by the computer 26 in response to signals from the butt detectors 118 and 120, the display is updated to show the row being knit. The display shows a 1 C during movement of the carriage across the needle bed each time the transverse center line of carriage passes over the needle one position. 
     The operator can knit a design row out of sequence if he first selects the particular row he wishes to knit with the row advance switch 56 or row descent switch 58. These switches are so operable anytime the carriage is in the KNIT MODE provided the carriage is not in the midst of knitting a course of fabric. With the row advance switch depressed the display steps upwardly from the row showing, slowly at first and then more rapidly, and cycles through the unit design rows on the card. With the row descent switch depressed the display steps downwardly, initially at a slow pace, and then rapidly from the row showing, and cycles through the unit design rows. The operator selects the row he wishes to knit by releasing the row advance or row descent switch when the number of the row he wishes to knit appears. He can then knit the selected row by moving the carriage across the bed of the machine after which the unit design rows will again be knit sequentially as the operator continues to move the carriage on the machine reversing its direction at each end of the fabric, and the display will be updated accordingly to show the row being knit. A momentary depression of switch 56 or 58 causes the display to immediately step up or down one design course row. 
     The operator can cause a particular row to be knit repeatedly any number of times and the number of the row to be displayed during this process. This is accomplished by the operator moving the automatic and row repeat switch 54 into its R position and leaving it there until he has knit that row the desired number of times. 
     If vertical multiplication was perscribed, the machine knits each unit design row two, three or four times (as was specified for the multiplication factor) as the carriage 12 is moved back and forth across the bed 10, and the display is caused to show whether a row is being knit for the first, second, third or fourth time with a corresponding number of rectangles. The number of the particular design row being knit at any time is also in evidence on the display. 
     An operator can, by placing the design inversion switch 60 in the inverting position, reverse the design configuration and background of a unit design being knitted on the machine. He can, for example, change from knitting a black duck on a white background to knitting a white duck on a black background. 
     With the motifing switch 53 in an off position the unit design is knitted all across the fabric as the carriage is moved on the bed of the machine. However the operator may at any time, by placing the switch in the M+ or M- position, cause the motifing instructions (if any) presecribed in the PROGRAM MODE to be executed as the carriage is moved to knit fabric. With switch 53 placed in the M+ position and switch 60 in its inverting position design inversion is effected during knitting only in wales of the unit design. Design inversion is effected in all wales of the fabric with switch 53 in the M- position and switch 60 in its inverting position. 
     If selvedge stitches were presecribed on the program card, the number of wales designated for selvedge with no pattern are formed in fabric being knitted. If no selvedge was specified on the card and the operator wishes selvedge he may provide for it with switch 62, or if he wishes to change the number of wales of selvedge previously specified he may do so with this switch. Depression of switch 62 causes the number of wales (0, 1, 2 or 3) of selvedge in effect to appear on the display along with the up and the down arrow, and continued depression of the switch causes the display to slowly cycle through all the possible number of wales of selvedge. The operator selects a desired number of wales merely by moving the switch down until that number appears and then reversing it. 
     Various indications which may be caused to appear on the display 66 have already been mentioned. In addition the display is capable of indicating to the operator the occurrence of certain errors. If the check digit switch 63 is depressed at any time after a program card has been read either while the machine is in the PROGRAM MODE or in the KNIT MODE the display will show only the last digit of the total number of marks within the rectangles and ellipses which were detected by the reader as the card passed through it. A discrepancy between the number of such marks detected and the number on the card suggests to the operator that the card was misread, that he should make any corrections required, as for example, by erasing smudges or darkening some of the marks, and once again (with the machine in the PROGRAM MODE) feed the card through the reader. 
     When the operator switches the machine from the PROGRAM MODE to the KNIT MODE the letter E for error appears on the display if the program card was read too fast or moved through the reader in a skewed fashion. If the operator failed to make a needle one selection in the PROGRAM MODE, 1 E appears on the display when the O.P.K. switch is moved to the K position. Assuming the card was read properly, the display is caused to show 2 E when the machine is switch to the KNIT MODE if during the PROGRAM MODE an excessive number of design options for horizontal multiplication, vertical multiplication or for selvedge were prescribed. The actuators 22 and 24 will not operate and the machine can not knit patterns while any one of the error indications E, 1 E, or 2 E is in evidence on the display. Pattern knitting is possible only after the error is corrected by reprogramming. 
     While the machine is in the KNIT MODE the display is caused to flash if the power supply drops below a predetermined value somewhat greater than that required to operate the needle actuators 22 and 24 pursuant to programmed instructions. If the power drops further to a value no longer sufficient to operate the needle actuators the display shows a 0. 
     The operator may switch the machine from the KNIT MODE into the PROGRAM MODE at any time and prescribe some or all new instructions for the knitting of fabric. A new card may be fed into the reader, and/or one or more of the switches effective in the PROGRAM MODE may be operated to prescribe new instructions. Feeding a new card through the reader has the effect of prescribing anew all of the kinds of instructions which may be specified on a card. Instructions previously prescribed by the left - right reverse switch 62 or motifing switch 53 are not affected by the reading of a new card. However, if the operator desires he may use these switches as hereinbefore described to change such instructions. If a new card is fed through the reader or the operator changes the left - right multiplication instructions, left - right reverse instructions or left - right mirror imaging instructions, the old needle one selection is voided and needle one must be reselected. To reselect the old needle one, the operator need only move the transverse center line of the carriage across that needle while in the PROGRAM MODE. To select a new needle 1 he must align the transverse center line of the carriage with the needle to be selected and momentarily depress the needle one switch 52. 
     A simplified system block diagram of the electrical control portion of the subject knitting machine is shown in FIG. 11 wherein the carriage 12, described hereinabove in conjunction with FIG. 3 is shown in block diagram form. The programmed minicomputer 26, which is described hereinbelow in detail, interacts with the carriage 12 by means of an input-output box 34 (hereinafter referred to as the I/O box 34), bus 506, bus 508, bus 510, bus 512 and bus 514. 
     Signals generated at the carriage 12, such as by manipulation of the various switches, operation of the card reader 30 and/or by movement of the carriage 12 as described supra, are applied to the programmed minicomputer 26 by way of the bus 506, I/O box 34 and bus 508. As is described hereinbelow in detail, one or more of these signals may be modified within the I/O box 34 before being applied to the programmed computer 26. Not all inputs to the minicomputer 26 originate on the carriage. For example, an oscillator (not shown) located within the I/O box 34 provides a real time clock signal for the computer 26 on the bus 510 as will be apparent to those skilled in the art. However, the oscillator can just as well be located in the carriage 12. The signals generated by the computer 26 for controlling the subject knitting machine are applied to the various components of the carriage 12, such as the display 66, card reader 30, actuators 22 and 24 and the like, by way of the bus 512, I/O box 34 and bus 514. As is described hereinbelow in detail, various ones of these signals are acted upon or modified within the I/O box 34. 
     Before considering the programmed computer 26 in more detail, it will be beneficial to consider the various signals supplied to and provided by the computer 26. 
     As described supra in conjunction with FIGS. 9 and 10 photo-interrupter modules 94 and 96 provide two carriage position indicating signals in quadrature. Hereinafter the signal provided by module 94 will be referred to as PIP A and the signal provided by module 96 will be referred to as PIP B. As discussed above, these signals go through a complete cycle as the carriage 12 traverses each needle position 20. The programmed computer 26 in conjunction with circuits in the I/O box 34 utilizes these PIPer signals A and B to monitor the carriage 12 position on the needle bed 10 and to time the firing of the actuators 22 and 24 (FIG. 2). For example, as the carriage 12 is moved from left to right PIP A will go low while PIP B is high (FIG. 10). The programmed computer 26 senses these conditions to increment an up down counter or register (not shown) located therein to keep track of the carriage 12 location on the needle bed 10. Conversely, when the carriage is moved from right to left PIP A will go high while PIP B is high as shown by a perusal of FIG. 10. The programmed computer 26 will sense these conditions to decrement the counter or register (not shown) within the computer 26. When the subject knitting apparatus is first turned on, the computer 26 will assign the number zero to the then current carriage position and then increment or decrement this count as the carriage is moved to the right or left to keep track of the location of the carriage 12 on the needle bed 10 at all times. Incrementing or decrementing, i.e., updating of the carriage 12 position counter (not shown) within the computer 26 takes place when PIP A undergoes a transition and PIP B is low. Once the carriage 12 position counter (not shown) has been updated, the programmed computer 26 will determine if an actuator 22 or 24 is to be fired when the carriage 12 is in the current position on the needle bed 10. An actuator 22 or 24 is fired only when PIP B is high and PIP A undergoes a transition from high to low or low to high. To insure proper operation when patterning data is entered and when needle one is designated, it is necessary to adjust the position of the photo-interrupter modules 94 and 96 so that the carriage position counter (not shown) updates occur when the carriage 12 center is over a sinker; i.e., when the carriage 12 center is halfway between needle positions. 
     As described above, knitting design information is entered into the computer 26 by means of the card reader 30. As described above in conjunction with FIG. 3 strobe channels A and B are located at opposite sides of the program card 28. For purposes of clarity, those strobe channels are illustrated in FIG. 12D as being adjacent a single information row on the program card 28 in order to show their phase relationship and their location with respect to the various columns of information on the program card 28. As shown by FIG. 12D the strobe channels A and B comprise alternating black and white (card background) portions with the first black segment in strobe channel A being of extended length. Like the PIPer signals A and B discussed above, the strobe channels A and B are in quadrature; i.e., ninety degrees out of phase. Additionally, one complete strobe cycle is associated with each of the columns on the program card 28. 
     When moving from right to left as seen in FIG. 12D, strobe A will go from black to white while strobe B is black. Conversely, when moving from left to right, strobe A will go from white to black while strobe B is black. The programmed computer 26 can sense these changes to determine whether the program card 28 is passing through the card reader 30 or being withdrawn therefrom. In accordance with the present invention, as strobe A goes from black to white while strobe B is black the program card 28 information in the associated information column is read and a column count register (not shown) or a column up-down counter (not shown) within the computer 26 is incremented. Conversely, when strobe A goes from white to black while strobe B is black, the column count is decremented and no column information is read. The program card 28 information read time occurs during the white portion of strobe A. As illustrated in FIG. 12D, strobe A goes white over the far right hand portion of column one and extends well over the left portion of column 2. Because the strobe A and B sensing devices are located to the right of the card information sensing devices, as is described below in conjunction with FIG. 12A, the information sensing devices will be located in the left portion of column 1 when strobe A first goes from black to white and will be located in the right portion of column 1 when strobe A subsequently goes from white to black. The same is true of the remaining columns of the program card. 
     The electrical portion of the card reader 30 is illustrated in FIG. 12A as including 21 design information reading stations 534 - 574 corresponding to the 21 rows on the program card 28. As will be apparent, more or less than the twenty-one design information reading stations 534 - 574 can be utilized depending upon the layout of the program card 28. Located above and offset to the right of the design information reading stations 534 - 574 is a strobe B reading station 530, while located below the information reading stations and offset to the right is a strobe A reading station 532. The 23 illustrated reading stations 530 - 574 are activated by means of five light emitting diodes 520, 522, 524, 526 and 528 and five phototransistors 582, 584, 586, 588 and 590 which are interconnected by means of a plurality of light pipes to form a matrix. 
     Any one of the light emitting diodes (LED&#39;s) 520, 522, 524, 526 and 528 can be enabled by means of a signal supplied by the computer 26 appearing on leads 520.6, 522.6, 524.6, 526.6 or 528.6, respectively. Each of the first four of the light emitting diodes 520, 522, 524 and 526 are coupled to five consecutive reading stations by means of light pipes. For example, light emitting diode 520 is coupled to the first five reading stations 530 (strobe B), 534, 536, 538 and 540 by means of the light pipes 520.1, 520.2, 520.3, 520.4 and 520.5. The next light emitting diode 522 is coupled to the next five reading stations 542, 544 546, 548 and 550 by means of the light pipes 522.1, 522.2, 522.3, 522.4 and 522.5, respectively. The next two light emitting diodes 524 and 526 are connected to five consecutive reading stations in a like manner. Since a total of twenty-three reading stations are utilized, only three reading stations 572, 574 and 532 (strobe A) are associated with the fifth light emitting diode 528. 
     Any one of the phototransistors 582, 584, 586, 588 and 590 can be enabled by means of a signal supplied by the computer 26 appearing on leads 582.6, 584.6, 586.6, 588.6, or 590.6, respectively. The output signal from each phototransistor 582, 584, 586, 588 and 590 appearing on leads 582.7, 584.7, 586.7, 588.7, and 590.7 respectively, is connected to a common output lead 580, amplified by an amplifier 592 and applied to a comparator 596 (FIG. 13) by way of lead 594. Each of the phototransistors is coupled to a corresponding one of the five reading stations associated with each of the first four light emitting diodes 520, 522, 524 and 526 by means of a plurality of light pipes. For example, the first phototransistor 582 is coupled to the first reading station 530 (strobe B) associated with the light emitting diode 520, the first reading station 542 associated with the light emitting diode 522, the first reading station 552 associated with the light emitting diode 524, the first reading station 562 associated with the light emitting diode 526 and the first reading station 572 associated with the light emitting diode 528 by means of the light pipes 582.1, 582.2, 582.3, 582.4, and 582.5 respectively. In a like manner the second phototransistor 584 is coupled to the second reading station 534, 544, 554, 564, and 574 of each of the light emitting diodes 520, 522, 524, 526, and 528 respectively; with the third phototransistor 586 being coupled to the third reading station 536, 546, 556, 566 and 532 (strobe B) associated with each light emitting diode; the fourth phototransistor 588 being coupled to the fourth reading station 538, 548, 558 and 568 of the first four light emitting diodes and the fifth phototransistor 590 being coupled to the fifth reading station 540, 550, 560, 570 associated with the first four light emitting diodes. Since light emitting diode 528 has only three reading stations associated therewith, phototransistors 588 and 590 are not coupled thereto. For purposes of clarity in the drawing, the coupling of the light pipes to the appropriate reading stations for the second, third and fourth phototransistors 584, 586 and 588 is not illustrated. 
     As will now be apparent, enabling one of the phototransistors 582, 584, 586, 588 or 590 and enabling one of the light emitting diodes 520, 522, 524, 526 and 528 will result in only one of the reading stations 530 - 574 being read out. For example, enabling phototransistor 590 and light emitting diode 522 will cause a read out from reading station 550 while enabling phototransistor 590 and light emitting diode 526 will cause a read out from reading station 570. In accordance with the present invention, the strobe channels B and A on the program card will be sequentially sampled under control of the computer 26 by sequentially enabling phototransistor 582 -- light emitting diode 520 and phototransistor 586 -- light emitting diode 528. When design information is read out, the information reading stations 534 - 574 will be enabled in sequence under control of the computer 26 during the time that strobe A is white. As will now be apparent, operation of the reader causes a serial data train to appear on the output lead 594. 
     Before describing the computer 26 controlled card reader 30 in more detail, the digital adapter shown in FIG. 13 will be considered. The adapter includes a comparator 596 the output of which is coupled to the computer 26 by way of a lead 612. One input to the comparator 596 appears on the lead 598 as the output of a non-linear digital to analog conversion unit 600. The other input to the comparator 596 is the serial output from the phototransistors 582, 584, 586, 588 and 590 of FIG. 12A appearing on lead 594. The input to the digital to analog conversion unit 600 is a five bit binary number supplied by the computer 26 on leads 602, 604, 606, 608 and 610. In one embodiment of the present invention the digital to analog conversion unit 600 used a first digital to analog converter 603, the output of which was fed to the multiplying or scaling input 609 of a second analog converter 605 to produce a quadratic output input dependence. Furthermore, the original linear output of the first converter 603, the quadratic output of the second converter 605, and a constant voltage 611 were then summed in a suitable device 607 to give a parabolic approximation to the desired exponential dependence of the analog output to the digital input. In accordance with one embodiment of the present invention which was constructed, the digital to analog converters 603 and 605 were Motorola MC 1408 digital to analog converters. 
     The operation of the comparator 596 is such that a voltage level on lead 594 which is greater than that appearing on lead 598 causes the output on lead 612 to be low. However, as the voltage level appearing on lead 598 increases, such as by increasing the value of the binary number applied to the digital to analog conversion unit 600, the output on output lead 612 will go high when the voltage level on the lead 598 exceeds that appearing on lead 594. When this occurs, the computer 26 will store the current binary number. Any potential level thereafter appearing on lead 594 can be compared to this digitized value by applying this stored binary number produced by the previous level to the digital to analog conversion unit 600 and monitoring the output level on lead 612 which will indicate whether the current voltage level on lead 594 is greater or less than the previous level. The function of the digital adapter shown in FIG. 13 will become apparent from the description of the program card reader hereinbelow. 
     As is known to those skilled in the art, the input-output function of a digital to analog converter is linear. In one embodiment of the present invention, as described above, the input-output function was caused to be parabolic as a simple approximation to a preferable exponential function. 
     Briefly described, the opposite strobe channels A and B of the program card 28 are utilized by the card reader 30, under control of the computer 26, to determine the position of the program card within the card reader. Initially, however, when the program card is first entered into the card reader 30, two of the information channel reading stations are used to detect the presence of the program card edge. Two spaced apart reading stations are utilized to insure that the program card is properly located within the card reader before the card is adapted. Once the card edge is sensed, the computer 26, by means of the digital adapter of FIG. 13, will measure and record the signal level at the strobe A reading station 532, which is over the white border of the program card due to the strobe A reading station 532 being located to the right of the information reading stations 534 - 574 (FIG. 12A), i.e., located closer to the card entry location of the card reader than the information reading stations. The program card is printed such that when the extended length black portion (FIG. 12D) of strobe channel A is detected, the information channel reading stations 534 - 574 and strobe channel B reading station 530 are located over the white border of the program card (FIG. 3). The computer 26 by means of the digital adapter of FIG. 13, will measure and record the signal level for each information channel 534 - 574 and strobe B at the white border of the program card. Before being stored, each digital value is appropriately decreased to prevent smudges and erasures from being read as black marks. As the program card advances into the card reader 30, the computer 26 keeps track of the number of columns on the program card passing the information reading stations 534 - 574. Each time strobe A changes from black to white (FIG. 12D) the column count is incremented by the computer 26 and the information in each information row is read out in sequence and applied to the digital adapter of FIG. 13. If the reading from an information channel is sufficiently lower than the border reading previously recorded, the reading is recorded within the computer 26 as black; if not, it is recorded as white. Light smudges are thus read as white. The program card 28 is considered to have been read without error if all columns of information are read and stored in the computer 26 before the program card 28 is withdrawn from the card reader. 
     More specifically, when the subject knitting apparatus is placed into the PROGRAM MODE, a computer 26 selected reading station 574 (FIG. 12A) corresponding to row zero on the program card is enabled to read the &#34;black&#34; platen of the card reader 30. The platen is fabricated with depressions and/or coated to minimize the signals produced. The computer 26 will vary the binary number applied to the digital to analog conversion unit 600 (FIG. 13) until the voltage level on lead 598 to the comparator 596 equals that appearing on lead 594 supplied by information reading station 574. To insure that false background noise does not provide an erroneous indication, this binary number is increased by 2. For example, if a binary number of 20 is equivalent to the voltage level appearing on lead 594, the binary 20 is increased to binary 22 by the computer 26 to decrease the threshold sensitivity and binary twenty-two is stored within the computer 26. This process is repeated at information reading station 534 corresponding to row 20 on the program card 28. The computer 26 will then maintain reading station 574 enabled and the input to the digital to analog conversion unit 600 at the digitized value, i.e. a binary 22. Referring now to FIG. 12A, a program card 28 placed into the card reader will approach the reading stations 530-574 moving from right to left. When the edge of the card reaches the reading station 574 corresponding to information row zero on the program card, the voltage level appearing on lead 594 to the comparator will greatly increase, due to the white background of the program card 28, thereby changing the output level appearing on the lead 612 to the computer 26. This level change is recognized by the computer 26 as the program card 28 edge at the information reading station 574. The computer 26 then enables reading station 534 and applies its adapted digitized number to the digital to analog conversion unit 600. Detection of the edge of the program card 28 at reading station 534 is interpreted by the computer 26 as meaning that the program card 28 is properly located within the card reader 30 and the next step in reading of the program card can commence. 
     Since the strobe A and B reading stations 532 and 530, respectively, are offset to the right, as shown in FIG. 12A, they are now well over the white border portion of the program card. The computer 26 will now enable the strobe A reading station 532 by enabling light emitting diode 528 and phototransistor 586. The white background of the program card 28 adjacent to strobe A produces a corresponding voltage level on lead 594. The digital equivalent of this analog voltage level is determined as described above. The resulting digital number is decreased by two to make it slightly more difficult to see black; i.e., decreasing the threshold sensitivity of strobe channel A. The resulting binary number is stored in the computer 26. Strobe channel A has now been adapted. When monitoring strobe channel A, the stored binary number is recalled and applied to the comparator 596 lead 598 after conversion by the digital to analog conversion unit 600. A voltage level on lead 594 to the comparator 596 from strobe A reading station 532 produces a level output on lead 612 recognized by the computer 26 as &#34;white&#34; if the voltage level on lead 594 is greater than the level appearing on lead 598 and is recognized by the computer 26 as &#34;black&#34;  if it is less due to the resulting different level output on lead 612 (FIG. 13). The Strobe A reading station 532 remains active under control of the computer 26 until strobe A becomes black and this is sensed as described above. This corresponds to the left portion of the extended length black portion of strobe A (FIG. 12D) appearing at the reading station 532. At this time the computer 26 will check reading station 574 corresponding to row zero of the program card. If the reading is black, the program card 28 has been pulled out of the card reader 30 and the whole process will begin again. However, if the reading is white, the card is moving into the card reader and all the remaining reading stations 532 - 574 are well over the white border portion of the program card. The computer 26 will now sequentially adapt each information row on the program card, and strobe channel B in a manner as described above. Once this has been completed, the computer 26 will have stored therein the threshold adjusted adapted binary numbers for each strobe and information channel on the program card 28 which were obtained as discussed above. As described, these stored numbers are recalled by the computer 26 and applied to the adapter apparatus shown in FIG. 13 to read a particular row information as black or white. 
     The computer 26 will now monitor strobe channels A and B by sequentially enabling strobe reading stations 532 and 530 and determining whether they are black or white. When strobe A goes white (see FIG. 12D) the computer 26 will check if strobe B is also white. If it is, the computer 502 will recognize that the program card 28 is being pulled out of the card reader 30. If strobe B is black, however, the program card 28 is continuing through the card reader 30 and the computer 26 will increment the column count therein by one and begin to read the rows of information contained in the first column. This is done by the computer sequentially enabling the information reading stations 534 - 574 by enabling the appropriate light emitting diodes 520 - 528 and phototransistors 582 - 590. The stored adapted binary number for each channel is sequentially recalled to the ditital to analog conversion unit 600 and compared with the voltage level on lead 594 to determine whether the information is white or black. The data from each row in each column is stored in a memory (not shown) contained within the computer 26. The location of each row being read in the column is controlled by the computer 26 maintaining a row count therein. 
     After all the rows in the first column have been read and stored in the computer 26, the computer 26 will check strobe A; if it is white the column read is considered valid. If column A is black, however, the card 28 may have been traveling too fast through the card reader 30 (see FIG. 12D) and a flag is set by the computer 26 to abort the column read. This results in an error indication appearing on the display 66 at the conclusion of the card read operation as described above when appropriate switches are depressed. If the column read is successful, the computer 26 will continue to monitor strobe channels A and B. When strobe A goes white while strobe B is black, the column count will be incremented and the rows of information read and stored as described above. This process will continue until all of the columns of the program card 28 have been read. This will be recognized by the computer 26 by the column count therein being equal to the number of columns on the program card 28. During the reading of the last column on the program card 28, the computer 26 will check for any ambiguities that may be present in the design options selected. For example, only one of the horizontal magnification options can be selected at one time. Additionally, should an operator attempt to place the subject knitting apparatus into the knitting mode while a program card is being read, the computer 26 will recognize this error and cause an error indication to appear on the display 66 as well as turning off the left and right actuators 22 and 24. 
     A typical circuit for the light emitting diodes 520, 522, 524, 526 and 528 of FIG. 12A is shown in FIG. 12C wherein light emitting diode 526 is illustrated as being coupled between ground potential and the collector of a PNP transistor T1. Transistor T1 has its emitter coupled to a positive source of potential and its base coupled to the computer 26 controlled input lead 526.6 by means of a diode D1. In the absence of a negative potential on lead 526.6 from the computer 26, transistor T1 is nonconducting and light emitting diode 526 is disabled. The presence of a negative potential on lead 526.6 from the computer 26, however, causes transistor T1 to conduct which in turn enables the light emitting diode 526. 
     A typical circuit for the photo transistors 582, 584, 586, 588 and 590 of FIG. 12A is shown in FIG. 12B wherein phototransistor 586 is illustrated as having its collector coupled to a source of positive potential and its emitter coupled to ground potential by way of the collector-emitter of NPN transistor T3. The output of phototransistor 586 is coupled to the output lead 586.7 by means of a diode D2. The base of transistor T3 is coupled to ground by means of a resistor R1 and to the collector of a PNP transistor T2 which has its emitter coupled to a source of positive potential by way of a resistor R2 and its base coupled to the computer 26 controlled input lead 586.6 by way of a diode D3. In the presence of a negative potential on lead 586.6 from the computer 26, transistor T2 is conducting, which causes transistor T3 to be conducting, thereby back biasing diode D2 and passing any output from phototransistor 586 to ground. Accordingly, no signal will appear on output lead 586.7. In the absence of a negative potential on input lead 586.6 from the computer 26, however, transistor T2 will not conduct thereby rendering transistor T3 nonconducting such that diode D2 is no longer back biased and any output from the phototransistor 586 now appears on output lead 586.7 by way of the diode D2. 
     As described hereinabove, the location of each edge of a garment in the subject knitting apparatus is detected by means of butt detectors 118 and 120 (FIGS. 2,5,6, and 7). Electric circuitry located in the I/O box 34 and associated with the butt detector 120 is illustrated in FIG. 14A as including a first flip-flop FF1 which is coupled to the butt switch contacts by means of a lead 624. The input of a second flip-flop FF2 is coupled to the output of the first flip-flop FF1 by way of a lead 622 and the output of the second flip-flop FF2 is coupled to the programmed computer 26 by way of a lead 626. A clock signal is applied to each of the flip-flops FF1 and FF2 by means of a lead 620. Each of the flip-flops FF1 and FF2 may be a well known D type flip-flop. The clock signal on lead 620 is illustrated in FIG. 14B as the waveshape 628 and is obtained by AND gating the PIP B signal and an inverted PIP A signal when going from left to right. The time occurence of signals resulting from actuation of the butt switch 120 is illustrated in FIG. 14B by the vertical dashed lines 630. As shown the clock signal becomes high sometime after the but switch 120 actuation position is passed and will become low before a needle 20 can again contact the butt switch 120 at the next position. 
     Referring now to FIGS. 14A and 14B and assuming that the carriage 12 is moving from left to right, prior to detecting the edge of a garment in the knitting apparatus no signals appear on lead 624 so that both flip-flops FF1 and FF2 are reset by the first positive occurring clock signal 628. The resulting low output on lead 626 from the second flip-flop FF2 is recognized by the computer 26 as indicating that the edge of the garment has not yet been reached. When the edge of the garment is reached, a needle 20 butt will actuate the butt switch 120 causing a signal to appear on lead 624 that sets flip-flop FF1. The next positive occurring clock signal 628 will reset flip-flop FF1 which results in flip-flop FF2 being set thereby changing the output level on lead 626 from low to high. The computer 26 recognizes this level change as the edge of the garment being reached. A needle 20 in the next position will again cause the flip-flop FF1 to be set. The next positive clock signal 628 will again reset flip-flop FF1 and keep flip-flop FF2 set. The occurrence of a vacant needle position will result in flip-flop FF1 being reset when the next positive clock signal occurs which results in flip-flop FF2 being reset thereby changing the level on output lead 626 from high to low. The computer 26, however, will recognize the other edge of the garment as having been reached only upon three consecutive vacant needle positions being passed. 
     The circuitry for the other butt switch 118 for carriage travel from right to left is identical to that shown in FIGS. 14A and 14B with the exception that the reset signal is obtained by AND gating the PIP A and PIP B signals. 
     In order to give an indication to the computer 26 that electrical power is low or that electrical power is about to fail so that the computer 26 can take the necessary shut down steps or procedure, voltage level detecting circuits are located within the I/O box 34. One such circuit is illustrated in FIG. 18 as including a comparator 634 the output of which is coupled to the computer 26 by way of a lead 636. One input to the comparator on lead 642 is provided by a voltage reference 638, which may comprise a battery. The other input to the comparator 634 on lead 640 comprises an operating D.C. voltage the level of which is to be monitored by the comparator 634. As long as the potential on lead 640 is greater than the reference source 638, the potential on the output lead 636 is high which the computer 26 interprets as meaning that the operating potential on lead 640 is satisfactory. If the potential on lead 640 falls below that of the reference 638, output lead 636 goes low which is interpreted by the computer 26 as meaning that the monitored operating potential is unsatisfactory. For example, in one circuit the reference 638 magnitude is such that a lesser magnitude on lead 640 is interpreted by the computer 26 as meaning the monitored voltage level is low; in another circuit, however, the reference magnitude is even less such that a lesser magnitude on lead 640 is interpreted by the computer 26 as meaning that the monitored voltage source is about to fail. As will now be apparent, a separate comparator circuit is utilized for each operating voltage that is to be monitored, and the magnitude of the reference source 638 with respect to the desired magnitude of the monitored source is such as to indicate a low voltage condition or an impending power failure condition. 
     In accordance with one embodiment of the present invention which was constructed, the display 66 described hereinabove utilized liquid crystal elements. When a particular character or segment is to be displayed, the computer 26 will provide an enabling D.C. potential on an appropriate lead to the selected character or segment. As is apparent to those skilled in the art, a D.C. operating potential will ruin a liquid crystal display device in a relatively short time. In order to overcome this shortcoming, each liquid crystal display enabling signal provided by the computer 26 is converted into an AC signal. This is accomplished by the Exclusive OR circuit shown in FIG. 15A. There is an equivalent Exclusive OR circuit for each segment or character of the display and the circuits are located in the I/O box 34. One input to the Exclusive OR gate 646 appearing on input lead 652 is the liquid crystal enable signal supplied by the computer 26. This signal is shown in FIG. 15C by waveshape 654. The other input to the Exclusive OR gate 646 on lead 650 is the oscillator (not shown) signal supplied to the computer 26 as a real time clock. This signal is shown in FIG. 15C by waveshape 656 and is also supplied to one side of each liquid crystal character, or segment. This is shown in FIG. 15B wherein the oscillator signal 656 is applied to one side of a liquid crystal device 662 by way of lead 660. The output of the Exclusive OR gate 646 appears on lead 648 and is applied to the other side of the selected character or segment of the display 66 as shown in FIG. 15B. The output of the Exclusive OR gate 646 is shown as waveshape 658 in FIG. 15C. Referring now to FIGS. 15A, 15C and 15B, when the output 654 on lead 652 from the computer 26 is low, the oscillator signal 656 provides the only high input to the Exclusive OR gate 646. The output signal 658 on lead 648 for this condition is identical to the input signal 656 on lead 650 so that the signals on each input lead 660 and 648 to the liquid crystal device 662 are the same and the liquid crystal 662 is not turned on. When the computer 26 supplied signal 654 goes high, however, the Exclusive OR gate output 658 will go high only when the oscillator signal 656 is low. Accordingly, for this condition, the output signal 658 is 180° out of phase with the oscillator signal 656 such that an AC signal now appears across the liquid crystal device 662 for the duration of time that signal 654 is high thereby turning the liquid crystal device on for this time period. 
     When appropriate, the computer 26 will supply an arm signal for the actuator 22 or 24. Such an arm signal is illustrated as waveshape 666 in FIG. 16B. This signal 666 normally has a time duration equal to the time the carriage takes to traverse a needle position shown as time t0 through t4 FIG. 16B. In accordance with the present invention, however, the signal applied to the actuator 22 or 24 has a duty cycle of about 75 percent and will turn off if the carriage 12 is left in the same needle position greater than a predetermined time, such as 10 seconds, to prevent damage to the actuators. The circuit for accomplishing this for the right actuator 24 is shown in FIG. 16A as including an OR gate 678, three AND gates 690, 692 and 694 and two retrigerable one shot multivibrators 682 and 684 and is located in the I/O box 34. The output from the OR gate 678 is applied to the right actuator 24 by way of lead 680 and is illustrated in FIG. 16B as waveshape 676. The inputs to the OR gate 678 comprise the outputs of the three AND gates 690, 692 and 694. Each of the AND gates has four inputs. One input applied to each AND gate 690, 692 and 694 is the arm signal 666 supplied by the computer 26. Another input applied to each of the AND gates is the output of the second one shot 684 which is illustrated in FIG. 16B as waveshape 674. The input to the second one shot 684 is the output form the first one shot 682 which is illustrated in FIG. 16B as waveshape 672. PIP A signal, shown in FIG. 16B as waveshape 668, is applied to the input of the first one shot 682 and to the AND gate 690. The PIP A signal after being inverted by the inverter 698 is applied to AND gates 692 and 694. The PIP B signal, shown in FIG. 16B as waveshape 670, is applied to AND gate 694 and after inversion by the inverter 696 to AND gates 692 and 690. 
     Referring now to FIGS. 16A and 16B, the operation of the circuit of FIG. 16A is such that at time t0, the arm signal 666 occurs as PIP A 668 goes low, causing the output 672 of the first one shot 682 to go high for a short period of time. This in turn causes the output 674 of the second one shot 684 to go high. Since the second one shot 684 has a time out period of about 10 seconds, the output 674 of the second one shot 684 remains high. During the time period t0 to t1, PIP A 668 is low and PIP B 670 is high which results in only AND gate 694 being enabled for this time period and producing an input to the OR gate 678. During the time period t1 to t2, PIP A 668 remains low and PIP B 670 is also low, which results in only AND gate 692 being enabled for this time period and producing an input to the OR gate 678. During the time period t2 to t3, PIP A 668 is high and PIP B 670 is low, which results in only AND gate 690 being enabled for this time period and producing an input to the OR gate 678. During time period t3 to t4 both PIP A 668 and PIP B 670 are high. However, this will not enable any of the AND gates 690, 692 or 694. Accordingly, there is no input to the OR gate during this time period. As will now be apparent, the signal to the right actuator 24 will be present on lead 680 from the OR gate 678 only during the time period t0 through t3 or for three fourths of a needle position. The analysis set forth above assumes that the carriage 12 did not remain in the needle position for more than 10 seconds. If this were the case, the second one shot 684 would have timed out causing its output 674 on lead 686 to become low, thereby disabling each of the AND gates 690, 692 and 694 which in turn would prevent any output 676 from the OR gate 678 to the right actuator 24. 
     A circuit virtually identical to that shown in FIG. 16A is provided for the left actuator 22 and is also located within the I/O box 34. The left actuator circuit, however, replaces AND gate 694 which is enabled by PIP A 668 being low and PIP B 670 being high by an AND gate (not shown) which is enabled by PIP A being high and PIP B being high corresponding to time period t3 to t4. A person skilled in the art can readily arrange such a circuit in view of the description of the right actuator circuit described above. 
     The programmed computer 26 and the signal connections thereto are clearly illustrated in FIG. 17A. In accordance with the present invention, the computer 26 utilized was Texas Instruments Inc. Model 960A (Part # 226881-2) modified by having the following Texas Instruments Inc. Printed circuit boards added thereto: Internal CRU Expander (Texas Instruments Inc. Part # 226722-1), Data Input Module (Texas Instruments Inc. part # 217382-1) and data Output Module (Texas Instruments Inc. part No. 217380-1). The inputs to the computer 26 are shown on the left side of FIG. 17A while the outputs from the computer 26 are shown on the right side. The input and output pin numbers of the computer 26 are shown on the outside of the rectangle which represents the computer 26 while the communications registers which these pin numbers address are shown within the rectangle and adjacent their corresponding pin numbers. For example, input pin number 19 is coupled to communications register E10 while output pin number 19 is coupled to communications register E20. 
     As shown in FIG. 17A, the output of the 80 Hertz clock oscillator (not shown) within the I/O box 34 is applied to input pin 18. The circuit, such as that described in conjunction with FIG. 18, that will provide an indication that a monitored voltage level is low is coupled to input pin 17 while a similar circuit that provides an indication that a monitored voltage source is about to fail is coupled to input pin 16. The output from the card reader 30 appearing on the output lead 612 of the comparator 596 (FIG. 13) is coupled to input lead 15. The various operating switches associated with the knitting apparatus are coupled to input leads 3 through 14, 19 and 23 as shown. With the exception of the left 22 and right 24 butt switches, these operating switches are directly coupled to the input pins by way of the I/O box 34. The output from the butt switches 118 and 120 as described above, however, are applied to a butt detection circuit, such as that shown in FIGS. 14A and 14B, with the output from such a circuit for each butt switch 118 and 120 being coupled to input pins fourteen and thirteen. Although the OPK switch 50 described above has three positions, it comprises only two switch contacts 706 and 708 which are coupled to input pins 3 and 19 respectively. A truth table shown in FIG. 17B shows that when both switches 706 and 708 are closed, the knitting apparatus is off. When switch 706 is closed and switch 708 is open, the knitting apparatus is in the PROGRAM MODE and when both switches 706 and 708 are open the knitting apparatus is in the KNIT MODE. When closed, the switches 706 and 708 will provide ground potential on their input pins three and nineteen, respectively; while when open a five volt positive potential will appear on their associated input pins. This potential is generated by a &#34;pull up&#34; circuit (not shown) associated with each pin and located within the computer 26. The PIP A signal is coupled to input pin 20 and the PIP B signal is coupled to the input pin 21. Naturally, the computer 26 is also coupled to system ground through pins C-Z. 
     Referring now to the output signals of the computer 26, the left and right actuator arm signals are provided on output pins twenty four and twenty three, respectively. As discussed above, these signals are not applied directly to left and right actuators 22 and 24, respectively, but are first coupled to a circuit, such as that shown in FIGS. 16A and 16B. Output pin numbers nine through twenty two provide the various output signals needed to drive the display 66. The signals for actuating the four rectangles on the display appear on output pins 20, 21 and 22. The signal for actuating the up arrow on the display 66 appears on output pin 19 while the signal for actuating the down arrow appears on output pin 18. The number 2 on the display 66 is actuated by a signal on output pin 17 while the number &#34;one&#34;  on the display 66 is actuated by a signal on the output pin 16. The various segments of the seven segment portion of the display 66 are actuated by signals appearing on output pins 9, 10, 11, 12, 13, 14 and 15 respectively. As discussed above, these signals are not directly coupled to the display devices. Rather, each signal output is coupled to a circuit such as that shown in FIGS. 15A, 15C and 15B to convert the DC signal from the computer 26 into an AC signal. The 5 bit binary number supplied to the digital to analog converter 600 of FIG. 13 from the computer 26 appears on output pins 13, 14, 15, 16 and 17. The computer 26 supplied signals for enabling a selected one of the five light emitting diodes 520, 522, 524, 526 and 528 of the card reader 30 (FIG. 12A) appear on output pins 8, 9, 10, 11, and 12 while the computer 26 supplied signals for enabling a selected one of the five photo transistors 582, 584, 586, 588 and 590 appear on output pins 3, 4, 5, 6 and 7. As will now be apparent, output pins 9 through 17 are time shared by the display 66 and the card reader. 
     As will now be apparent, the objects, features and advantages of the present invention are obtained by the combination of the mechanical knitting apparatus described, the programmed computer 26 and the electrical interface coupled between the programmed computer 26 and the mechanical knitting apparatus. Attached hereto as an appendix is the detailed program listing used in the computer 26 to implement the present invention. As listed, the left most column shows program card numbers, the next column lists addresses located within the computer 26 followed in the next column by the contents of the addresses listed. Following columns list the operator neumonic followed by the operand neumonic. For a detailed explanation of the items of the program listing appended hereto, together with a system description of the internal organization of the computer 26, the programming system used, machine instructions and the like, reference is made to &#34;Model 960 A Computer Programmer&#39;s Reference Manual&#34; revised June 1, 1973, Manual No. 958360-9701 by Texas Instruments, Inc. the contents of which are incorporated herein by reference. 
     As an aid in understanding the appended program listing, FIGS. 19 through 49 relate to a detailed flow chart of the appended program listing. As shown by FIG. 19, the appended program listing includes three sub programs; i.e., Initialization, PROGRAM MODE and KNIT MODE; and at least eight sub-routines that are used in one or more of the three sub programs. The eight sub-routines include Program Pip Check, Knit Pip Check, Row Advance Forward, Row Advance Reverse, Read, Column Increment, Column Decrement and Adapt. As an aid in understanding and interpreting the various flow charts, FIGS. 48 and 49 contain a glossary of terms used in the flow charts. 
     It is to be well understood that the program flow charts shown in FIGS. 20 through 47, and much of the operational description contained hereinabove in conjunction with FIGS. 1 through 18, has been culled from the program as defined by the appended detailed program listing. Any deviation in the drawings or description contained herein from the system defined by the appended detailed program listing is inadvertent. Any such deviation or ambiguity is to be resolved by reference to the appended detailed program listing which is controlling as regards the operation of the knitting apparatus of this invention. 
     the Initialization sub program shown in the top left portion of FIG. 20 clears the various components of the system when the system is first turned on. For example, this sub program is used to initialize the computer 26 registers, reset the input-output lines, clear all flags, counters and the like. 
     As previously noted herein, in the Program Mode sub program (FIGS. 20 through 25), a program card 28 can be read, the needle one position selected, a motifing sequence entered by the motifing switch 53 and reversal of the design to be knitted from that shown on the program card. The first two operations are mandatory in that knitting will not occur unless they are accomplished, whereas the latter two operations are optional. Briefly described, the Program Mode subroutine begins by setting ClPOS to 200 to prevent a needle one position from being achieved by default after which the two channels (zero and 20) of the card reader 30 used to detect the edge of the program card 28 are adapted to the black background of the card reader 30 platen as described above. If auto design is selected, a preprogrammed design is automatically transferred to the active design memory region of the computer 26 after which checksum is operated and the various design options are decoded and checks made for knit design ambiguities (FIG. 3). If auto design is not selected, various carriage switch positions interrogated to determine whether there have been any changes from their initial positions. The detecting of the program card 28 and reading in of the design information therefrom will then occur as described hereinabove. 
     An integral part of the Program Mode sub program is the Program Pip Check (FIGS. 32 through 37) subroutine. While in the Program Mode sub program all service requirements present are carried out. However, throughout the Program Mode sub program, whenever conditions permit, a complete Program Pip Check sub routine will be carried out the general purpose of which is to monitor the various carriage 12 switch positions and the position of the carriage 12 on the needle bed 10, even while a program card is being read. The Program Pip Check sub routine will determine whether the carriage 12 position on the needle bed has changed, increase or decrease the absolute position count of the carriage 12 on the needle bed, check the current status of the motifing switches 53, the left-right reverse switch 62, the previous needle one position and whether a new needle one position is being selected. The current status of the OPK switch 50 and the row advance and row descent switches 56 and 58 are checked and the appropriate display enabled re design multiplication factor. The check digit switch 63 is monitored and the display 66 enabled, if necessary, and the status of the program card read in is checked. 
     Also an integral part of the Program Mode sub program is the Read sub routine (FIG. 43) wherein the data from each block of information on the program card is read and stored. Also an integral part of the Program Mode sub program is the Adapt sub routine (FIGS. 46 and 47) wherein the binary numbers are applied to the digital adapter of FIG. 13, to digitize the voltage levels from the card reader 30 information row reading stations as described above. In the main PROGRAM MODE a number is added or subtracted from the digitized number to compensate for background noise and the like. The strobe channels A and B are similarly digitally adapted. 
     In the Knit Mode sub programs (FIGS. 26 through 31), the design is knitted by controlling the actuators 22 and 24, the display 66 is operated and the various switches on the knitting apparatus are checked. Briefly described, the Knit Mode sub program first checks for errors. For example, if the program card 28 has not been read properly, the E on the display 66 will be illuminated, if conflicting design options have been selected 2E will be illuminated and if needle one has not been selected 1E will be illuminated. If there are no errors the machine will prepare to knit by noting the carriage 12 position on the needle bed 10, configure the display 66 to show the present status and begin to look for the garment edge. The location of the actuators 22 and 24 with respect to the center of the carriage 12 is determined, salvage is calculated, checks are made for jams, the knit algorithums are computed and the actuator 22 or 24 fired, and the salvage zone is checked upon leaving the garment. After leaving the garment, the row advance 56 and row descent 58 switches are checked and the row display 66 is increased or decreased. 
     Where possible throughout the Knit Mode sub program, a complete Knit Pip check sub routine (FIGS. 38 through 40) is carried out. Briefly described, this sub routine checks the present status of the OPK switch 50, the PIP A and PIP B signals to determine the location of the carriage 12 on the needle bed 10 and correspondingly increases or decreases the position count. The power low or power fail voltage indicating levels are checked and the display operated, if appropriate. The left right reverse switch 62 re selvedge is monitored and the selvedge count is displayed. The check digit is displayed if the check digit switch 63 is depressed and 1C on the display 66 is illuminated if the carriage is at the needle one position. 
     Before beginning a new knitting sequence when the new needle position is located to the right or to the left of the old needle position, it must be determined which column of program card 28 information is to be used. Factors which influence the result include the various design options such as multiplication factor, mirroring, inverse and the like. The correct column is determined by the Column Increment, and Column Decrement sub routines shown in FIGS. 44 and 45. 
     In a like manner, which row of program card 28 information is to be used for the next knitting sequence must also be determined. This is accomplished by the Row Advance Forward sub routine (FIG. 41) when a course is completed and the carriage reverses or when row advance is manually selected, and by Row Advance Reverse subroutine when row reverse is manually selected. 
     Although the invention has been described in its presently preferred form, it is to be understood that the present disclosure is by way of example only and that numerous changes in construction and in the combination and arrangement of parts may be resorted to without departing from the spirit and scope of the invention. In particular it should be noted that the Texas Instrument computer 26 shown and described herein is but one example of various general purpose computers that might be used for control purposes in the machine of the invention. It should also be noted that electronic control means in a form different from that of the computer 26 may be utilized to perform the control functions of the computer. If desired, one or more silicon chips adapted to perform all of the control functions of both the computer 26 and the I/O box 34 may be utilized in the machine.