This application claims priority from Japanese Patent Application No. 2021-117784 filed on Jul. 16, 2021. The entire content of the priority application is incorporated herein by reference.
There is known an embroidery data processing apparatus configured to set a character having a character shape desired by a user as an embroidery pattern.
An embroidery data processing apparatus includes a reading unit, a display unit, and a selection unit. The reading unit reads a plurality of embroidery data corresponding to inputted character code and character code standard. The display unit displays, on a display screen, a first embroidery shape image and a second embroidery shape image which is an embroidery shape different from the first embroidery shape image. The user sets, as an embroidery pattern, a desired embroidery shape among a plurality of embroidery shapes having different embroidery shapes displayed on the display screen.
The embroidery data processing apparatus requires a dedicated application for generating image data for displaying a preview image and generating embroidery data.
In view of the foregoing, an example of an object of this disclosure is to provide an embroidery data generation system, a storage medium storing a terminal program, and a storage medium storing an apparatus program configured to improve convenience for users when generating embroidery data for sewing an embroidery pattern with an embroidery machine.
According to one aspect, this specification discloses an embroidery data generation system. The embroidery data generation system includes a terminal apparatus and an embroidery data generation apparatus. The embroidery data generation apparatus is configured to generate embroidery data for sewing an embroidery pattern with an embroidery machine. The terminal apparatus and the embroidery data generation apparatus are connected to each other via a network so as to communicate with each other. The terminal apparatus including a terminal communication interface configured to communicate with the embroidery data generation apparatus, an input device configured to input information, a display configured to display an image, and a terminal controller configured to control the terminal communication interface and the display. The terminal controller is configured to: acquire a generation condition of the embroidery data inputted via the input device; transmit the acquired generation condition to the embroidery data generation apparatus via the terminal communication interface; and control the display to display a preview image indicating an embroidery finish of the embroidery pattern based on image data transmitted from the embroidery data generation apparatus. The embroidery data generation apparatus includes an apparatus communication interface configured to communicate with the terminal apparatus, and an apparatus controller configured to control the apparatus communication interface. The apparatus controller is configured to: receive the generation condition transmitted from the terminal apparatus via the apparatus communication interface; generate the embroidery data for sewing the embroidery pattern based on the received generation condition; generate the image data for displaying the preview image on the display of the terminal apparatus based on the received generation condition; and transmit the generated image data to the terminal apparatus having transmitted the generation condition.
According to another aspect, this specification also discloses a non-transitory computer-readable storage medium storing a set of program instructions for a terminal apparatus including an input device, a terminal communication interface, and a display. The set of program instructions, when executed by a controller of the terminal apparatus, causes the terminal apparatus to perform: acquiring a generation condition of embroidery data for sewing an embroidery pattern with an embroidery machine, the generation condition being inputted via the input device; transmitting the acquired generation condition to an embroidery data generation apparatus via the terminal communication interface; and controlling the display to display a preview image indicating an embroidery finish of the embroidery pattern based on image data transmitted from the embroidery data generation apparatus.
According to still another aspect, this specification also discloses a non-transitory computer-readable storage medium storing a set of program instructions for an embroidery data generation apparatus including an apparatus communication interface. The set of program instructions, when executed by a controller of the embroidery data generation apparatus, causes the embroidery data generation apparatus to perform: receiving a generation condition of embroidery data for sewing an embroidery pattern with an embroidery machine, the generation condition being received from a terminal apparatus via the apparatus communication interface; based on the received generation condition, generating image data for displaying a preview image indicating an embroidery finish of the embroidery pattern on a display of the terminal apparatus; transmitting the generated image data to the terminal apparatus having transmitted the generation condition; and generating the embroidery data for sewing the embroidery pattern based on the received generation condition.
An embodiment of this disclosure will be described with reference to the drawings. As shown in
The generation apparatus 1 includes a CPU 11, a ROM 12, a RAM 13, a memory 14, and a communication interface 15. The CPU 11 performs control of the generation apparatus 1. The CPU 11 is electrically connected to the ROM 12, the RAM 13, the memory 14, and the communication interface 15 via a bus 16. The ROM 12 stores a boot program, BIOS, and so on. The RAM 13 stores temporary data. The memory 14 is a non-volatile memory such as an HDD and an SSD. The memory 14 stores various setting values necessary for executing a generation process described later. The communication interface 15 is an interface for connecting the generation apparatus 1 to a network 5. The CPU 11 performs transmission and reception of data with other apparatuses (for example, the terminal apparatus 2 and the sewing machine 3) connected to the network 5 via the communication interface 15.
The terminal apparatus 2 includes a CPU 21, a ROM 22, a RAM 23, a memory 24, a communication interface 25, and an input-output interface 27. The CPU 21 performs control of the terminal apparatus 2. The CPU 21 is electrically connected to the ROM 22, the RAM 23, the memory 24, the communication interface 25, and the input-output interface 27 via a bus 26. The ROM 22 stores a boot program, BIOS, and so on. The RAM 23 stores temporary data. The memory 24 is a non-volatile memory. The memory 24 stores various setting values necessary for executing a terminal process described later. The communication interface 25 is an interface for connecting the terminal apparatus 2 to the network 5. The CPU 21 performs transmission and reception of data with other apparatuses (for example, the generation apparatus 1 and the sewing machine 3) connected to the network 5 via the communication interface 25. The input-output interface 27 is connected to a display 28 and an input device 29. The display 28 is, for example, a liquid crystal display. The input device 29 is, for example, a touch panel and is used for inputting various instructions.
The sewing machine 3 includes a main-body portion 31, a needle-bar case 32, a spindle motor 76, a needle-bar case motor 77, a plurality of needle bars 33, a needle-bar drive mechanism 35, a cylinder bed 36, a throat plate 37, a movement mechanism 38, an operation interface 45, a pair of left and right thread-spool bases 49, and a thread path 52. The main-body portion 31 supports the needle-bar case 32 movably in a left-right direction. The spindle motor 76 and the needle-bar case motor 77 are accommodated inside the main-body portion 31. The needle-bar case motor 77 is configured to move the needle-bar case 32 in the left-right direction. A plurality of needle bars 33 and the needle-bar drive mechanism 35 are provided inside the needle-bar case 32. The sewing machine 3 in this example includes ten needle bars 33. Each of the ten needle bars 33 extends in a vertical direction and is disposed at an equal interval in the left-right direction. A sewing needle 34 is attached to a lower end of the needle bar 33. The needle-bar drive mechanism 35 is constituted to slide the drive needle-bar 33 in the plurality of needle bars 33, which will be described later, in the vertical direction in accordance with rotation of the spindle motor 76. The cylinder bed 36 extends cylindrically in the front-rear direction below the needle-bar case 32. At a distal end part of the cylinder bed 36, a hook and a hook drive mechanism (not shown) are provided. The hook drive mechanism drives the hook to rotate. The throat plate 37 is a plate with a rectangular shape on a plan view, provided on an upper surface of the cylinder bed 36. A needle hole penetrating in the vertical direction is formed in the throat plate 37. Among the plurality of needle bars 33, the needle bar 33 disposed at a drive position immediately above the needle hole formed in the throat plate 37 is the drive needle bar 33.
The movement mechanism 38 is provided below the needle-bar case 32. The movement mechanism 38 includes a holder 39, an X-motor 41, and a Y-motor 42. The holder 39 detachably supports one of a plurality of types of embroidery frames including an embroidery frame 44. The embroidery frame 44 detachably holds an object to be sewn (a sewn object). The sewn object is a worked cloth, for example. The movement mechanism 38 moves the embroidery frame 44 attached to the holder 39 to a position indicated by a specific XY coordinate system (embroidery coordinate system) by using the X-motor 41 and the Y-motor 42 as driving sources. An X-direction and a Y-direction of the embroidery coordinate system correspond to the left-right direction and the front-rear direction of the sewing machine 3, respectively.
The operation interface 45 is provided on the right of the main-body portion 31. The operation interface 45 includes a liquid crystal display (LCD) 46, a touch panel 47, and a start-stop switch 48. The touch panel 47 is provided on a surface of the LCD 46. The start-stop switch 48 is used when start or stop of sewing is instructed.
The pair of left and right thread-spool bases 49 are provided on a rear surface side of the upper surface of the main-body portion 31. On each of the thread-spool bases 49, a plurality of spool pins 50 are provided. The spool pin 50 supports a thread spool 51. A needle thread 56 is supplied from the thread spool 51 installed on the thread-spool base 49. The needle thread 56 is supplied to an eye hole of the sewing needle 34 attached to the lower end of the needle bar 33 via the thread path 52. The thread path 52 includes a thread guide 53, a thread tensioner 54, and a thread take-up 55.
A controller 60 of the sewing machine 3 includes a CPU 61, a ROM 62, a RAM 63, a memory 64, an input-output interface 66, and a communication interface 67. The CPU 61 is connected to the ROM 62, the RAM 63, the memory 64, the input-output interface 66, and the communication interface 67 via a bus 65. Drive circuits 71 to 75, the touch panel 47, and the start-stop switch 48 are connected to the input-output interface 66. The memory 64 is a non-volatile storage device. The memory 64 stores various set values required for execution of a machine process which will be described later.
The spindle motor 76 is connected to the drive circuit 71. The drive circuit 71 drives the spindle motor 76 in accordance with a control signal from the CPU 61. With the driving of the spindle motor 76, the needle-bar drive mechanism 35 is driven through a spindle (not shown) of the sewing machine 3, and the drive needle-bar 33 is vertically moved. The needle-bar case motor 77 is connected to the drive circuit 72. The drive circuit 72 drives the needle-bar case motor 77 in accordance with the control signal from the CPU 61 and moves the needle-bar case 32 in the left-right direction with respect to the main-body portion 31. The X-motor 41 is connected to the drive circuit 73. The Y-motor 42 is connected to the drive circuit 74. The drive circuits 73 and 74 drive the X-motor 41 and the Y-motor 42, respectively, in accordance with the control signal from the CPU 61. With the driving of the X-motor 41 and the Y-motor 42, the embroidery frame 44 attached to the movement mechanism 38 is moved in the left-right direction (X-direction) and the front-rear direction (Y-direction) by a movement amount according to the control signal. The drive circuit 75 displays an image on the LCD 46 in accordance with the control signal from the CPU 61. The communication interface 67 connects the sewing machine 3 to the network 5. The CPU 61 executes transmission and reception of data with other apparatuses (the generation apparatus 1 and the terminal apparatus 2, for example) connected to the network 5 via the communication interface 67.
An operation of the sewing machine 3 will be described in brief. Due to movement of the needle-bar case 32 in the left-right direction, one of the ten needle bars 33 is selected as the drive needle bar 33. In the sewing machine 3, the needle-bar drive mechanism 35 and the hook mechanism are driven with movement of the embroidery frame 44 in the X-direction and the Y-direction by the movement mechanism 38. As a result, an embroidery pattern is sewn to the sewn object held at the embroidery frame 44 by the sewing needle 34 attached to the drive needle bar 33.
By referring to
The terminal process executed by the terminal apparatus 2 will be described. The CPU 21 of the terminal apparatus 2 reads out a terminal program stored in the storage portion 24 to the RAM 23 when an instruction to start the terminal process is obtained from the user after the power is turned ON. The CPU 21 executes the terminal process having the following steps in accordance with the instructions contained in the terminal program read out to the RAM 23. Various data obtained in a process of the terminal process are stored in the RAM 23 as appropriate.
As shown in
As shown in
The CPU 21 determines whether an input of any one of the fields 811, 812, 82, 831, and 832 has been detected based on a detection result of the input device 29 (S14). If the input of the generation condition is detected (S14: YES), the CPU 21 acquires the generation condition of the embroidery data inputted via the input device 29 (S15). In a case where the generation condition is inputted as in the input screen 80 shown in
If the input of the generation condition is not detected (S14: NO) or subsequent to S15, the CPU 21 determines whether a key press on the key 86 has been detected based on the detection result of the input device 29 (S16). If a key press on the key 86 is not detected (S16: NO), the CPU 21 returns the processing to S14. If a key press on the key 86 is detected (S16: YES), the generation condition of the embroidery pattern acquired in S15 is transmitted to the generation apparatus 1 via the communication interface 25 (S17). As shown in the data 78 in
When the image data and the ID are received (S18: YES), the CPU 21 displays a preview image 88 showing embroidery finish of the embroidery pattern on the display 28 as shown in
When the change instruction is not detected (S20: NO), the CPU 21 determines whether the key 87 has been pressed based on the detection result of the input device 29 (S21). If a key press on the key 87 is not detected (S21: NO), the CPU 21 returns the processing to S20. If a key press on the key 87 is detected (S21: YES), the CPU 21 transmits, to the sewing machine 3, a public key request which requests generation and transmission of a public key for encrypting embroidery data (S22). As an algorithm for generating the public key, a publicly known algorithm may be employed as appropriate. As the algorithm for generating the public key, an optional method may be employed from RSA, DES (Data Encryption Standard), and ECC (Elliptic Curve Cryptograph), for example. The sewing machine 3 in this example generates the public key by using a 256-bit elliptic curve cryptograph (NIST P-256) stipulated by NIST.
As shown in
If the transmission destination is not the sewing machine 3 (S25: NO), the CPU 21 determines whether embroidery data transmitted from the generation apparatus 1 in response to the transmission request has been received (S26). In S26 of the system 4 in this example, the CPU 21 receives the public key of the generation apparatus 1 and falsification detection information, in addition to the encrypted embroidery data. If the embroidery data has not been received (S26: NO), the CPU 21 waits until the embroidery data is received. When the embroidery data is received (S26: YES), the CPU 21 transmits the embroidery data received in S26 to the sewing machine 3 (S27). The CPU 21 in this example transmits, in addition to the encrypted embroidery data, the public key of the generation apparatus 1 and the falsification detection information to the sewing machine 3. The CPU 21 ends the terminal process here. Though not shown, if the embroidery data has not been received (S26: NO) and an error transmitted from the generation apparatus 1 is received, the CPU 21 displays an error message on the display 28 and then ends the terminal process.
Next, a generation process executed by the CPU 11 of the generation apparatus 1 will be described. The CPU 11 of the generation apparatus 1 reads out an apparatus program stored in the memory 14 to the RAM 13 when the power is turned ON. The CPU 11 executes the apparatus process having the following steps in accordance with instructions included in the apparatus program read out to the RAM 13. Various data obtained in the apparatus process are stored in the RAM 13 as appropriate.
As shown in
The CPU 11 determines whether the data 78 including the authentication token 781 and the generation condition 782 transmitted from the terminal apparatus 2 has been received via the communication interface 15 (S33). If the data 78 has not been received (S33: NO), the CPU 11 waits until the data 78 is received. When the data 78 is received (S33: YES), the CPU 11 performs usage authentication of the terminal apparatus 2 by using the authentication token 781 transmitted from the terminal apparatus 2 (S34). As an authentication method, a publicly-known method may be employed as appropriate in accordance with a type of the authentication token 781. The CPU 11 determines whether the authentication of the terminal apparatus 2 is successful in S34 (S35). If the authentication is not successful (S35: NO), as shown in
When the authentication is successful (S35: YES), the CPU 11 generates embroidery data for sewing the embroidery pattern based on the generation condition received in S33 (S36). As a method of generating the embroidery data based on the generation condition, a publicly-known method may be set as appropriate. The CPU 11 identifies the shape and the size of the embroidery pattern based on the font type, the font size, the character strings on the first line and the second line included in the generation condition and generates coordinate data included in the embroidery data. The CPU 11 generates thread color data included in the embroidery data based on the thread color included in the generation condition. The CPU 11 generates image data for displaying a preview image on the display 28 of the terminal apparatus 2 based on the generation condition received in S33 (S37). The CPU 11 in this example generates the image data based on the embroidery data generated in S36. For example, the CPU 11 generates the image data by connecting points indicated by the coordinate data by line segments indicated by the thread colors in the sewing sequence. The background of the image data may be set as appropriate. For example, the image data may be image data through which the background of the image data is transparent or may be image data which is an image in which the background shows a particular color, pattern or the sewn object. As described above, the CPU 11 in this example executes an embroidery data generation process (S36) and an image data generation process (S37) when the usage authentication is successful in the authentication process in S34 (S35: YES).
The CPU 11 transmits, to the terminal apparatus 2, the data for displaying the preview image on the display 28 based on the image data generated in S37, the ID assigned to the image data, and the size information of the embroidery pattern (S38). The data for displaying the preview image on the display 28 may be the image data itself or a URL of the image data, for example. The ID may be information for identifying the image data and is expressed by alphanumeric characters, for example. When the usage authentication is successful in S34, the CPU 11 stores, in the memory 14, the generation condition 782 of the embroidery pattern received in the condition reception process in S33 in association with the authentication token 781 (S39). As shown in the data 79 in
As shown in
The CPU 11 transmits the generated embroidery data to the apparatus specified by the terminal apparatus 2 which transmitted the generation condition (S45). In response to reception of the transmission request transmitted from the terminal apparatus 2, the CPU 11 in this example transmits the embroidery data encrypted in S44, the public key of the generation apparatus 1, and the falsification detection information to the apparatus specified by the terminal apparatus 2 which transmitted the generation condition. The apparatus specified by the terminal apparatus 2 is the terminal apparatus 2 or the sewing machine 3. The CPU 11 determines whether a particular time has elapsed from the time indicated by the time information 793 stored in S39 (S46). The particular time may be set in advance and may be 24 hours, for example. If the particular time has not elapsed (S46: NO), the CPU 11 returns the processing to S40. If the particular time has elapsed (S46: YES), the CPU 11 deletes the data stored in S39 from the memory 14 (S47). In the generation apparatus 1, the processing in S47 prevents the data 79 from being continuously stored in the memory 14, which suppresses tightness of the data capacity of the memory 14. The CPU 11 ends the apparatus process here.
Next, the machine process executed by the CPU 61 of the sewing machine 3 will be described. When the CPU 61 of the sewing machine 3 acquires an instruction to start the machine process from the user after the power was turned ON, the CPU 61 reads out the sewing machine program stored in the memory 64 to the RAM 63. The CPU 61 executes the machine process having the following steps in accordance with the instruction included in the sewing machine program read out to the RAM 63. Various data acquired in the processing of the machine process are stored in the RAM 63 as appropriate.
As shown in
The CPU 61 determines whether the encrypted embroidery data has been received, the encrypted embroidery data being generated by the generation apparatus 1 and transmitted from the generation apparatus 1 or the terminal apparatus 2 (S4). If the encrypted embroidery data has not been received (S4: NO), the CPU 61 waits until the encrypted embroidery data is received. If the encrypted embroidery data is received (S4: YES), the CPU 61 verifies the signature of the public key received in S4 by using the public key received in S4 and determines whether the verification of the signature is successful (S5). If the verification of the signature is not successful (S5: NO), the encrypted embroidery data is invalidated (S9), an error message is displayed on the LCD 46 and then the machine process is ended. The process of invalidating the embroidery data is a process of deleting the encrypted embroidery data, for example. The process of invalidating the embroidery data may be a process of ending the machine process after displaying the error message without performing sewing based on the embroidery data. If the verification of the signature is successful (S5: YES), the CPU 61 executes a decrypting process of decrypting the acquired encrypted embroidery data by using the secret key (S6). The CPU 61 in this example generates a common key by ECDH and IV by using the public key of the generation apparatus 1 and the secret key of the sewing machine 3. The CPU 61 decrypts the encrypted embroidery data by AES128GCM by using the generated common key and the IV. The CPU 61 nullifies the secret key and the signature of the sewing machine 3 stored in the memory 64 after generating the common key.
The CPU 61 determines whether the decrypted embroidery data satisfies the particular usage condition (S7). The usage condition may be set as appropriate. The usage condition may be a condition that a verification result using the GCM authentication tag is successful, for example. If the verification result using the GCM authentication tag is successful, it indicates that the JSON parameter associated with the embroidery data has not been falsified. Thus, the CPU 61 in this example determines that the embroidery data has not been falsified if the verification result using the GCM authentication tag is successful. If the embroidery data does not satisfy the particular usage condition (S7: NO), the CPU 61 executes an invalidation process of invalidating the embroidery data (S9) and ends the machine process after displaying an error message on the LCD 46. The invalidation process is a process of deleting the decrypted embroidery data, for example. If the usage condition is satisfied (S7: YES), the CPU 61 executes a sewing process of sewing the embroidery pattern based on the decrypted embroidery data (S8). The CPU 61 selects one needle bar 33 corresponding to the thread spool 51 of the thread color indicated by the thread color data as the drive needle bar 33 among the ten needle bars 33 by movement of the needle-bar case 32 in the left-right direction. The CPU 61 drives the movement mechanism 38, the needle-bar drive mechanism 35, and the hook mechanism in accordance with the coordinate data and sews the embroidery pattern to the sewn object held by the embroidery frame 44 with the sewing needle 34 attached to the drive needle bar 33. Subsequently to S8 or S9, the CPU 61 ends the machine process here.
In the above embodiment, the system 4, the generation apparatus 1, the terminal apparatus 2, the sewing machine 3, and the network 5 are examples of the embroidery data generation system, the embroidery data generation apparatus, the terminal apparatus, the sewing machine, and the network, respectively. The CPU 11, the memory 14, and the communication interface 15 are examples of the apparatus controller, the memory, and the apparatus communication interface, respectively. The CPU 21, the communication interface 25, the display 28, and the input device 29 are examples of the terminal controller, the terminal communication interface, the display, and the input device, respectively. The CPU 61 is an example of a sewing machine controller. The process of S15 is an example of the condition acquisition process. The process of S17 is an example of the condition transmission process. The process of S19 is an example of the display control process. The process of S33 is an example of the condition reception process. The process of S36 is an example of the embroidery data generation process. The process of S37 is an example of the image data generation process. The process of S38 is an example of the image data transmission process. The process of S45 is an example of the embroidery data transmission process. The process of S24 is an example of the request transmission process. The process of S39 is an example of the memory control process. The process of S17 is an example of the token transmission process. The process of S34 is an example of the authentication process. The process of S39 is an example of the memory control process. The process of S40 is an example of the key reception process. The process of S44 is an example of the encryption process. The process of S6 is an example of the decryption process. The process of S9 is an example of the invalidation process.
In the system 4 of the above embodiment, the terminal apparatus 2 and the generation apparatus 1 that generates embroidery data for sewing an embroidery pattern on the sewing machine 3 are connected to the network 5 so as to communicate with each other. The terminal apparatus 2 includes the communication interface 25, the input device 29, and the CPU 21. The communication interface 25 communicates with the generation apparatus 1. The input device 29 inputs information. The display 28 displays an image. The CPU 21 controls the communication interface 25 and the display 28. The CPU 21 executes the condition acquisition process (S15), the condition transmission process (S17), and the display control process (S19). In the processing of S15, the CPU 21 acquires the embroidery data generation condition inputted via the input device 29. In the processing of S17, the CPU 21 transmits the acquired embroidery pattern generation condition to the generation apparatus 1 via the communication interface 25. In the processing of S19, the CPU 21 displays a preview image showing the embroidery finish of the embroidery pattern on the display 28 based on the image data transmitted from the generation apparatus 1. The embroidery data generation apparatus 1 includes the communication interface 15 and the CPU 11. The communication interface 15 communicates with the terminal apparatus 2. The CPU 11 controls the communication interface 15. The CPU 11 executes the condition reception process (S33), the embroidery data generation process (S36), the image data generation process (S37), and the image data transmission process (S38). In the processing of S33, the CPU 11 receives the generation condition transmitted from the terminal apparatus 2 via the communication interface 15. In S36, the CPU 11 generates embroidery data for sewing the embroidery pattern based on the received generation condition. In the processing of S37, the CPU 11 generates image data for displaying the preview image on the display 28 of the terminal apparatus 2 based on the received generation condition. In the processing of S38, the CPU 11 transmits the generated image data to the terminal apparatus 2 that has transmitted the generation condition.
In the system 4, since the terminal apparatus 2 does not generate image data of the preview image of an embroidery pattern and does not generate embroidery data, the terminal apparatus 2 does not require an application for generating the image data and the embroidery data. Inputting the embroidery data generation condition and viewing the preview image are performed on the terminal apparatus 2, and the image data and the embroidery data are generated on the generation apparatus 1. Thus, the apparatuses for performing processes are separated, which simplifies processing performed by the application required on the terminal apparatus 2. The system 4 improves the convenience of the user when generating embroidery data for sewing an embroidery pattern on the sewing machine 3, compared with the conventional system. In the system 4, since the terminal apparatus 2 displays the input screen 80 based on the front-end delivery transmitted from the generation apparatus 1, no application for generating data for displaying the input screen 80 is required.
The CPU 11 of the generation apparatus 1 executes the embroidery data transmission process of transmitting the generated embroidery data to the apparatus specified by the terminal apparatus 2 that has transmitted the generation condition (S45). This enables the system 4 to transmit the embroidery data to the apparatus specified by the terminal apparatus 2.
After executing the display control process (S19), the CPU 21 of the terminal apparatus 2 executes the request transmission process of transmitting an embroidery data transmission request to the generation apparatus 1 (S24). In response to receiving the transmission request transmitted from the terminal apparatus 2, the CPU 11 of the generation apparatus 1 executes the embroidery data transmission process. Thus, in the system 4, the embroidery data is transmitted to the apparatus specified by the terminal apparatus 2 only when the transmission request is transmitted from the terminal apparatus 2. The system 4 avoids transmitting the embroidery data when it is not necessary to transmit the embroidery data to the apparatus specified by the terminal apparatus 2, such as when it is desired to modify the generation condition.
The generation apparatus 1 includes the memory 14. The CPU 21 executes the token transmission process of transmitting the authentication token 781 to the generation apparatus 1 before executing the display control process (S17). The CPU 11 executes the authentication process (S34) and the storage control process (S39). In the processing of S34, the CPU 11 uses the authentication token 781 transmitted from the terminal apparatus 2 to perform usage authentication of the terminal apparatus 2. In the processing of S39, when the usage authentication is successful in S34 (S35: YES), the CPU 11 stores, in the memory 14, the embroidery pattern generation condition 782 received in the condition reception process in association with the authentication token 781. When the usage authentication is successful in S34 (S35: YES), the CPU 11 executes the image data generation process (S37). In the embroidery data generation process, in response to determining that the usage authentication is successful in the authentication process and that the generation condition has been received, the CPU 11 generates embroidery data based on the generation condition stored in the memory 14. Thus, by executing the authentication process, the system 4 restricts an apparatus other than the terminal apparatus 2 that has transmitted the generation condition from illegally accessing the generation apparatus 1 and using the image data and the embroidery data generated based on the generation condition.
The system 4 includes the sewing machine 3. The CPU 11 of the generation apparatus 1 executes the key reception process (S40) and the encryption process (S44). In the processing of S40, the CPU 11 receives the public key generated by the sewing machine 3 using the private key. In the processing of S44, the CPU 11 encrypts, by using the received public key, the embroidery data generated in the embroidery data generation process. In the processing of S45, the CPU 11 transmits the encrypted embroidery data to the apparatus specified by the terminal apparatus 2 that has transmitted the generation condition. The sewing machine 3 includes the CPU 61. The CPU 61 acquires the encrypted embroidery data generated by the generation apparatus 1 (S4), and executes the decryption process of decrypting the acquired encrypted embroidery data by using the private key (S6). In the system 4, only the sewing machine 3 having generated the public key is able to decrypt the encrypted embroidery data, which prevents the embroidery data from being duplicated or stolen.
When the embroidery data does not satisfy a particular usage condition (S7: NO), the CPU 61 of the sewing machine 3 executes the invalidation process of invalidating the embroidery data (S9). The system 4 prevents the sewing machine 3 from sewing an embroidery pattern based on embroidery data that does not satisfy the usage condition.
While the invention has been described in conjunction with various example structures outlined above and illustrated in the figures, various alternatives, modifications, variations, improvements, and/or substantial equivalents, whether known or that may be presently unforeseen, may become apparent to those having at least ordinary skill in the art. Accordingly, the example embodiments of the disclosure, as set forth above, are intended to be illustrative of the invention, and not limiting the invention. Various changes may be made without departing from the spirit and scope of the disclosure. Therefore, the disclosure is intended to embrace all known or later developed alternatives, modifications, variations, improvements, and/or substantial equivalents. Some specific examples of potential alternatives, modifications, or variations in the described invention are provided below:
This disclosure may be implemented in various embodiments, for example, a computer-readable medium storing a terminal program, a computer-readable medium storing an apparatus program, an embroidery data generation method executed by the apparatus controller of the embroidery data generation apparatus, an embroidery data generation method executed by the terminal controller of the embroidery data terminal apparatus, and so on. The embroidery data generation apparatus 1 may be the sewing machine 3. In this case, the system 4 utilizes the application for generating embroidery data of the sewing machine 3, and the processes of encrypting the embroidery data and transmitting the embroidery data may be omitted.
(A) The configuration of the sewing machine 3 may be changed as appropriate. The sewing machine 3 may be an industrial sewing machine or a household embroidery machine as long as the sewing machine 3 is capable of sewing embroidery. In a case where the sewing machine 3 is a multi-needle sewing machine, the number of needle bars 33 may be appropriately changed. The configuration of the terminal apparatus 2 may be appropriately changed, and may be, for example, a PC, a smartphone, and so on. The display 28 of the terminal apparatus 2 may be any display as long as it can display an image, and may be, for example, an organic EL display, a plasma display, a plasma tube array display, an electronic paper display using electrophoresis and so on. The input device 29 of the terminal apparatus 2 may be a keyboard, a mouse, a joystick, and so on, in addition to/instead of the touch panel.
(B) The program including commands for executing the processes of
(C) Each step of the apparatus process is not limited to the example executed by the CPU 11, and a part or the entirety may be executed by another electronic device (for example, ASIC). Similarly, each step of the terminal process is not limited to the example executed by the CPU 21, and a part or the entirety may be executed by another electronic device. Each step of the machine process is not limited to the example executed by the CPU 61, and a part or the entirety may be executed by another electronic device. Each step of the apparatus process, the terminal process, and the machine process may be executed by a plurality of electronic devices (for example, a plurality of CPUs) in a distributed manner. In the apparatus process, the terminal process, and the machine process, the order of each step may be changed, steps may be omitted, and additions may be made as necessary. The following changes may be made to the apparatus process, the terminal process, and the machine process as appropriate.
As in a first modification shown in
As to the generation condition, the type, number, input method, and so on may be appropriately changed according to the type of the embroidery pattern. The embroidery pattern may be a graphic pattern, or may be a pattern representing a photograph, an illustration, and so on. In a case where the embroidery pattern is a character (letter) pattern, the generation condition may be an arbitrary number of conditions selected from the group of character string, thread color, typeface, character size, character spacing, line spacing, tilt, alignment condition, vertical/horizontal writing, and thread density. The alignment condition includes, for example, left alignment, right alignment, horizontal center alignment, top alignment, bottom alignment, and vertical center alignment. In this case, the left-right direction and the vertical direction correspond to the X direction and the Y direction of the embroidery coordinate system, respectively. In a case where the embroidery pattern is a graphic pattern, the generation condition may be, for example, an arbitrary number of conditions selected from the group of thread color, stitch type, and thread density. The stitch types include, for example, tatami-mat stitches and satin stitches.
As in a second modification shown in
The generation apparatus 1 of the second modification may store, for example, for each of the plurality of sewn objects, the information on the embroidery area, the image representing the sewn object, and the information on the sewn object in association with one another in the memory 14. The information on the embroidery area includes, for example, the arrangement in the sewn object, the size, the inclination with respect to the reference, and so on. In this case, in S32, the generation apparatus 1 may transmit a front-end delivery for displaying, on the input screen 90, information on the embroidery area of the sewn object specified by the terminal apparatus 2 among the plurality of sewn objects. The CPU 21 of the terminal apparatus 2 may display the input screen 90 based on the front-end delivery transmitted from the generation apparatus 1 (S13). The CPU 21 of the second modification transmits a plurality of generation conditions of the embroidery pattern acquired in S15 to the generation apparatus 1 via the communication interface 25 (S17). In the image data generation process of S37, the CPU 11 of the generation apparatus 1 generates image data for displaying the second image 102 on the display 28, based on each of the plurality of generation conditions received in S33 (S37). The second image 102 is an image in which the preview image 88, 103 is arranged in the embroidery area that is set for the sewn object, in the first image 89 represented by the image data stored in the memory 14. In the system 4 of the second modification, the generation condition is set for each of the plurality of embroidery areas, which improves the convenience of the user when generating embroidery data according to the plurality of generation conditions. In a case where the generation condition is set for each of the plurality of embroidery areas, or where the generation condition is set for a plurality of sewn objects, the plurality of generation conditions may be inputted to the terminal apparatus 2 in a CSV format.
In the system 4, a part or all of the process for encrypting the embroidery data and the process for improving security (S22 to S24, S1 to S3, S41, 42, S44, S5, S6) may be omitted or changed. For example, the terminal apparatus 2 may perform a process for acquiring a public key from the sewing machine 3 before transmitting the generation condition, and transmit the public key acquired from the sewing machine 3 to the generation apparatus 1 together with the generation condition (S17). In this case, the generation apparatus 1 may encrypt the generated embroidery data using the public key received from the terminal apparatus 2, without receiving the transmission request.
The usage condition of S7 may not be set or may be changed as appropriate. The usage condition may be the number of times an embroidery pattern is sewn based on embroidery data, or may be the period after the embroidery data is decrypted. The number of times may be set to any number of one or more. The usage condition may be set in the generation apparatus 1 according to the request from the terminal apparatus 2 and the embroidery data. The usage condition may be the same regardless of the request from the terminal apparatus 2 and the embroidery data. The usage condition may be set by the terminal apparatus 2 or the sewing machine 3. The invalidation process may be appropriately changed according to the usage condition. For example, in a case where the usage condition sets an upper limit of the number of uses, the sewing machine 3 may execute the sewing process based on the embroidery data, then increment the number of uses with the initial value set to 0, determine whether the number of uses exceeds the upper limit, and delete the embroidery data when the number of times of uses exceeds the upper limit, thereby performing the invalidation process. The usage condition may be changed according to condition data transmitted together with the embroidery data. The condition data is a flag, for example. When the flag is TRUE, the CPU 61 of the sewing machine 3 may delete the embroidery data after the sewing process, thereby invalidating the embroidery data. When the flag is FALSE, the CPU 61 may store the embroidery data in the memory 64 of the sewing machine 3 without deleting the embroidery data after the sewing process. In this case, when the flag is TRUE, the number of sewing operations based on the embroidery data is limited to one, and when the flag is FALSE, the number of sewing operations is unlimited.
The terminal apparatus 2 may omit the process of transmitting the transmission request to the generation apparatus 1. In this case, the generation apparatus 1 may transmit the generated embroidery data to the apparatus specified by the terminal apparatus 2 when transmitting the image data, without receiving the transmission request. The terminal apparatus 2 may omit the process of transmitting the authentication token 781. In this case, the generation apparatus 1 may omit the processes of S34 and S35.
Number | Date | Country | Kind |
---|---|---|---|
2021-117784 | Jul 2021 | JP | national |