Abstract:
An input device for sewing machines is disclosed which reads from a memory circuit an original sewing pattern which has been already stored, enlarging or reducing the coordinate data of the original sewing pattern in a desired scale, and prepare the coordinate data of sewing points between the flexing points thus obtained by enlargement or reduction in accordance with a desired stitch length data or stitch number data. The input device is adapted to convert the coordinate data of the original sewing pattern to the coordinate data calculated with the central point of a crank member of a work holder with the crank member as the origin and enlarge or reduce the coordinate data of the flexing points other than the starting point and the ending point of sewing in a desired scale, when the original sewing pattern is for a work holder with a crank member.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to an input device for sewing machines which performs program control of sewing patterns and, more particularly, to an input device which uses sewing patterns previously stored in a memory to input patterns similar to the stored sewing patterns. 
     A sewing machine has been heretofore known which sews in desired patterns by moving a work holder for holding a workpiece by means of a pulse motor in accordance with corresponding coordinate data which have previously been stored in a memory such as magnetic tape, magnetic card and floppy. However, a sewing machine of this type has not been capable of making from sewing patterns which have already been stored in a memory sewing patterns similar to the stored sewing patterns. Therefore, this type of a sewing machine is disadvantageous in that when the similar patterns are to be inputted, these patterns must be drawn on a digitizer by means of an indicating pen or must be drawn on a CRT by means of a light pen. Furthermore, when this type of a sewing machine is used to sew applique or emblems on a workpiece, a so-called work holder with a crank or force transmitting member is used. This type of a sewing machine is disadvantageous in that the use of this work holder with a crank or force transmitting member requires a certain relationship between the crank member of the work holder and the starting point of sewing or the end point of sewing which may complicate the preparation of sewing patterns. 
     SUMMARY OF THE INVENTION 
     It is therefore an object of the present invention to provide an input device which can make from sewing patterns previously stored in a memory sewing patterns similar to the stored sewing patterns so that the efficiency of preparation of similar sewing patterns is improved with the accuracy of the patterns maintained, even when a sewing machine with a work holder with a crank or force transmitting member is used. 
     The above and other objects of the present invention will become more apparent from the following detailed description and examples. 
     The present invention provides a means for reading original sewing patterns which have already been stored, a means for enlarging or reducing coordinate data of flexing points along the original sewing patterns in a desired scale, and a means for preparing coordinate data of sewing points between these flexing points in accordance with desired sewing length data. Furthermore, a sewing machine with a work holder with a crank or force transmitting member is further provided with a means for enlarging or reducing coordinate data of flexing points other than the starting point of sewing and the end point of sewing in a desired scale by converting the coordinate data of the original sewing patterns into coordinate patterns calculated with the center of the crank member as the origin. 
     The input device of the present invention is adapted to read original sewing patterns which have already been stored, enlarge or reduce the coordinate data of the flexing points along the patterns thus read in a desired scale, and prepare coordinate data of sewing points between these flexing points thus modified in accordance with a desired sewing length data or needle number data. In a sewing machine with a work holder with a crank or force transmitting member, the input device is adapted to enlarge or reduce coordinate data of flexing points other than the starting point of sewing and the end point of sewing in a desired scale by converting the coordinate data of the original sewing patterns into coordinate patterns calculated with the center of the crank member as the origin. 
     Therefore, the input device of the present invention is effective in that it can automatically make sewing patterns similar to the original sewing patterns without drawing the similar patterns on a digitizer or CRT, that it provides a remarkably improved efficiency of preparation of sewing patterns, and that it enables a sewing machine with a work holder with a crank member to automatically make sewing patterns similar to the original patterns. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     In the accompanying drawings, there are shown illustrative embodiments of the invention from which these and other of its objectives, novel features, and advantages will be readily apparent. 
     In the drawings: 
     FIG. 1 is a block diagram of essential parts of an embodiment of the present invention; 
     FIGS. 2 and 3 are flowcharts of the embodiment of FIG. 1; 
     FIG. 4 FIGS. 5(a) to 5(c) and FIG. 6 are diagrams showing the operation of the embodiment of FIG. 1. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     One embodiment of the present invention will be described hereinafter with reference to the accompanying drawings. FIG. 1 is a block diagram illustrating essential parts of an embodiment of the present invention. The embodiment of FIG. 1 is mainly composed of a console 1 and a control portion 2. That is, the console 1 is connected to a control circuit 4 in the control portion 2 through an interface 3. The control circuit 4 preferably comprises a microprocessor. Also connected to the control circuit 4 are a read only memory circuit 5 in which various programs have been stored, a writable memory circuit 6 in which sewing patterns have been stored, and arithmetic logical circuits 7, 8 and 11. 
     FIGS. 2 and 3 show flowcharts of the device of FIG. 1. FIG. 4, FIGS. 5(a) to 5(c) and FIG. 6 show the operation of the device of FIG. 1. 
     The operation making of sewing patterns similar to the original by an embodiment of the present invention having the above arrangement will be illustrated hereinafter. In operation, a read key 9 of the console 1 is operated. This causes the control circuit 4 to select a read mode 10 from the memory circuit 5. The control circuit 4 controls the operation in accordance with the program thus selected. A pattern number key 12 is then operated to input pattern number of an original sewing pattern 13 (FIGS. 4 and 6) on the basis of which similar sewing patterns will be prepared. An X multiplication key 15 and a Y multiplication key 16 are operated to input magnification scales in the X axis and Y axis directions of the original sewing pattern 13. A needle number variation key 18 is operated to increase or decrease the number of needles to be used in sewing or a sewing length variation key 19 is operated to increase or decrease the length of stitch to be sewn. Once the above operation is completed, an operation key 21 is operated. This causes the control circuit 4 to access the address of the memory circuit 6 corresponding to the pattern number and read the original sewing pattern 13. 
     The operation of enlargement (or reduction) of sewing patterns without a work holder with a crank member will be described hereinafter with reference to FIG. 4, and FIGS. 5(a) to 5(c). Under this condition, the control circuit 4 determines from the data of the original sewing pattern 13 that the data does not use a work holder with a crank member (block 23 of FIG. 2). If the original sewing pattern 13 is not for a work holder with a crank member, the coordinate data of flexing points A 1 , A 2 , A 3  and A 4  of the original sewing pattern 13 are enlarged (or reduced) in accordance with the X multiplication scale and Y multiplication scale (block 24 of FIG. 2). The term &#34;flexing point&#34; as used herein is defined as follows. That is, a straight line is represented by one end and the other end thereof. An arc of a circle is represented by one end and the other end thereof and one point located along the arc therebetween. When points are imputted, the points themselves are inputted as flexing points. In this example, the X multiplication scale and the Y multiplication scale each is 2. Therefore, the coordinate data of the flexing points A 1 , A 2 , A 3  and A 4  are extended to B 1 , B 2 , B 3  and B 4 , respectively, with the origin 20 as center of the pattern as shown in FIG. 4. It is then determined which is selected stitch number variation mode or sewing length variation mode (block 25 of FIG. 2). If stitch number variation mode is selected, the stitch length of the sewing pattern similar to the original sewing pattern 13 is equal to that of the original sewing pattern 13. Accordingly, the arithmetic logical circuit 7 performs the following operation (block 26 of FIG. 2) which will be described with reference to FIGS. 5(a) and 5(b). The distance between the flexing points B 1  and B 2  of the sewing pattern similar to the original sewing pattern is first calculated. The distance B 1  and B 2  is divided by the stitch length of the original sewing pattern 13 (hereinafter referred to as &#34;stitch length C&#34;) to calculate the number of stitches to be used. If the number of stitches thus calculated is not an integer, fractions of 0.5 and over are counted as a unit and everything else is trunkcated to correct the number of stitches to be used between B 1  and B 2 . The distance B 1  -B 2  is divided by the correct stitch number to calculate correct stitch length. The stitch length thus calculated is defined as a stitch length between B 1  and the next sewing point b 0 . The coordinate data of the sewing point b 0  is calculated from the stitch length. Then, the distance b 0  -B 2  is calculated. The distance b 0  -B 2  is divided by the above correct stitch number less one. With the quotient as stitch length b 0  -b 1 , the coordinate data of the sewing point b 1  is calculated. The coordinate data of the subsequent sewing points b 2  to b 6  are similarly calculated. The coordinate data of the final sewing point B 2  is calculated in accordance with the above X and Y multiplication scales. The coordinate data of other sewing points are similarly calculated. Thus, a sewing pattern 27 similar to the original pattern 13 is automatically prepared. 
     On the other hand, if stitch length variation mode has been inputted, stitch length variation mode is identified at block 25 of FIG. 2. If the stitch length variation is defined as twice the stitch length C of the original sewing pattern 13, the stitch length of the sewing pattern similar to the original sewing pattern 13 is twice that of the original sewing pattern 13. With this result, the arithmetic logical circuit 8 performs the following operation (block 28 of FIG. 2) which will be described hereinafter with reference to FIGS. 5(a) and 5(c). The coordinate data of the flexing points B 1  and B 2  are first calculated in the same manner as described above. In order to determine the sewing point b 0  &#39;, the relative coordinate data between the flexing point A 1  and the next sewing point a 0  of the original sewing pattern 13 (movement from the point A 1  to the point a 0 , i.e. ΔX 1  and ΔY 1 ) are each doubled in accordance with the above stitch length variation data. In the present example, the relative coordinate data ΔY 1  of the sewing point a 0  is zero, and only the relative coordinate data ΔX 1  is doubled. With these relative coordinate data (2ΔX 1 , 0) and the coordinate data of the flexing point B 1 , the coordinate data of the next sewing point b 0  &#39; is calculated. The coordinate data of the following sewing point b 1  &#39; is similarly calculated in accordance with the coordinate data of the sewing point b 0  &#39; and the relative coordinate data (2ΔX 2 , 0). The coordinate data of the sewing point b 2  &#39; is similarly calculated. Finally, the coordinate data of the sewing point B 2  is defined as that of the flexing point B 2 . 
     The operation for enlargement (or reduction) of sewing patterns with a work holder with reversion member will be described hereinafter with reference to FIG. 6. 
     In a sewing machine having a work holder with a crank member as shown by reference number 35 in FIG. 6, the starting point α and the ending point β of a sewing pattern must be positioned within the reversing area of the crank member 36. Therefore, if the coordinate data of the flexing points C 2  to C 5  of the original sewing pattern 13 are enlarged (or reduced) in the X and Y scales as described above with the origin 37 of the original sewing pattern 13 as center, the original sewing pattern 13 is enlarged as shown by reference number 38. Thus, the starting point α and the ending point β are out of the reversing area of the crank member 36. This requires that the coordinate data of the starting point α and the ending point β be left unmodified when a sewing pattern similar to the original is prepared. 
     Supposing now that the control circuit 4 determines that the above pattern is for a work holder with a crank member (block 23 of FIG. 2), the arithmetic logical circuit 11 performs the following operations. That is, the central point of the enlargement (or reduction) by the X and Y miltiplication scales is selected as the central point 0 of the crank or force transmitting member 36 of the work holder 35. The coordinate data of the point 0 has been previously stored with the point 37 as the origin (0, 0). In the present example, the point 0 has been stored as being (0, γ). Since the coordinate data (X, Y) of the flexing points C 2  to C 5  of the original sewing pattern 13 have been previously stored with the point 37 as the origin, they are each converted to the coordinate data calculated with the point 0 as the origin. That is, the operation (Y-γ) is performed for the Y coordinate data of the flexing points of the original sewing pattern 13 (block 40 of FIG. 2). At this time, the control circuit 4 identifies the coordinate data showing the first sewing point of the original sewing pattern 13 as the starting point α of sewing and the coordinate data showing the final sewing point of the original sewing pattern 13 as the ending point β of sewing and prohibits the conversion of the coordinate data of these points α and β. 
     The operations by the X and Y multiplication scales are performed for the coordinate data of the flexing points C 2  to C 5  thus obtained (block 41 of FIG. 2). Also at this time, the control circuit 4 prohibits the operations on the starting point α of sewing and the ending point β of sewing. This causes the flexing points C 2  to C 5  to be extended to D 2  to D 5 . Operations are then performed for the coordinate data D 2  to D 5  of the flexing points D 2  to D 5  thus obtained by multiplication such that they are converted to the coordinate data calculated with the point 37, with which the work holder with reversion the crank member is actually controlled, as the origin. That is, operations 2 (Y-γ)+γ are performed so that γ is added to the Y coordinate data of the flexing points 2 (Y-γ) thus obtained by multiplication (block 42 of FIG. 2). As a result, the coordinate data of the flexing points C 2  to C 5  are multiplied to D 2  to D 5 , respectively, as shown in FIG. 6 without changing the starting point α and the ending point β of sewing. 
     Under this condition, it is determined in the same manner as described above if stitch number variation mode or stitch length variation mode is selected (block 43 of FIG. 2). If stitch number variation mode is inputted, the coordinate data of the stitch points between the starting point α and the next flexing point D 2 , between the flexing point D 2  and the flexing point D 3 , between the flexing point D 3  and the flexing point D 4 , between the flexing point D 4  and the flexing point D 5 , which is immediately followed by the ending point β, and between the flexing point D 5  and the ending point are calculated in the same manner as used in the operations of block 26 to automatically prepare sewing pattern 27 similar to the original sewing pattern (block 44 of FIG. 2). At this time, the coordinate data of the starting point α and the ending point β are the same as that of the original sewing pattern 13. 
     On the other hand, if stitch length variation mode is inputted, the block 43 of FIG. 2 identifies the stitch length variation mode. Then, the same stitch length variation mode operations as described above are performed by the arithmetic logical circuit 8 in the same manner as used in the block 28 (block 45 of FIG. 2). During the operations, the control circuit 4 determines which the flexing point in question is in the range of between the starting point α and the next flexing point D 2  and between the flexing point D 5  and the ending point β, or the rest of the ranges (block 46 of FIG. 2). Supposing that the control circuit 4 determines the flexing point in question is in the former ranges, the same stitch number variation mode operations as shown in the block 26 are performed by the arithmetic logical circuit 7 using the starting point α and the flexing point D 2 . Similarly, the control circuit 4 causes the stitch number variation mode operation to be performed by the arithmetic logical circuit 7 using the flexing point D 5  and the ending point β (block 44 of FIG. 2). 
     If a sewing pattern of the work holder with a crank member is enlarged (or reduced), operations as shown in FIG. 3 may be performed. That is, the operations as shown in the blocks 40 and 41 are performed to determine the flexing points D 2  to D 5  as obtained by multiplication in FIG. 6 (blocks 40 and 41 of FIG. 3). The same operations as performed in the blocks 43 to 46 of FIG. 2 are then performed for the coordinate data of the flexing points D 2  to D 5  with the point 0 as the origin (block 43 to 46 of FIG. 3). The coordinate data of the sewing pattern 27 similar to the original sewing pattern which has been obtained by multiplication with the point 0 as the origin are converted in the same manner as used in the block 42 of FIG. 2 to the coordinate data calculated with the point 37 as the origin (block 42 of FIG. 3). 
     Once the sewing pattern 27 similar to the original sewing pattern 13 is prepared, write key 47 is operated to select the write mode 48, and the pattern number key 12 is operated to determine the pattern number of the sewing pattern 27. Under this condition, the operation key 21 is operated. This causes the similar sewing pattern 13 to be stored as coordinate data in the address of the memory circuit 6 corresponding to the pattern number thus determined (block 49 of FIG. 2). In the present example, the memory circuit 6 comprises a floppy which is withdrawn from the input device and then set in the read portion of the sewing machine so that data stored therein are read. 
     Although the invention has been described in its preferred form with a certain degree of particularity, it is understood that the present disclosure of the preferred form has been changed in the details of construction and the combination and arrangement of parts may be restored to without departing from the spirit and the scope of the invention as hereinafter claimed.