(57)【要約】【課題】  駆動機構の刺繍枠の移動方向に応じて、刺繍模様を縫製する角度を変更するミシンを提供する。【解決手段】  ミシン１０１は、記憶部６４に記憶された刺繍データ２００に基づいて、刺繍模様９９を縫製する際にかかる縫製時間ｔｏｔａｌＴｉｍｅを算出する第１算出手段Ｓ２１と、第１算出手段Ｓ２１によって算出された刺繍模様９９を縫製する際にかかる縫製時間ｔｏｔａｌＴｉｍｅに基づいて、刺繍模様９９を縫製する相対的な角度ｒ０を決定する第１決定手段Ｓ２１と、第１決定手段Ｓ２１によって決定された相対的な角度ｒ０に基づいて、刺繍枠１０９Ｂを第１方向Ｘ及び第２方向Ｙに夫々移動させる第１移動機構及び第２移動機構を駆動して刺繍模様９９を縫製する第１縫製手段Ｓ２３、Ｓ１７と、を備える。【選択図】図８
2015006284.tif 000002
【特許請求の範囲】
【請求項１】
記憶部に記憶された刺繍データに基づいて、刺繍枠を第１方向及び第１方向と直交する第２方向に夫々移動させる第１移動機構及び第２移動機構を駆動させて刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値を算出する第１算出手段と、
前記第１算出手段によって算出された前記刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値に基づいて、前記第１方向又は前記第２方向に対する前記刺繍模様を縫製する相対的な角度を決定する第１決定手段と、
前記第１決定手段によって決定された前記第１方向又は第２方向に対する前記刺繍模様を縫製する相対的な角度を、前記刺繍模様の前記刺繍データに対応付けて前記記憶部に記憶させる記憶制御手段と、
を備えることを特徴とする刺繍データ処理装置。
【請求項２】
前記第１算出手段は、
複数の異なる角度の各角度における前記刺繍模様を縫製する際にかかる縫製時間を算出する第２算出手段を含み、
前記第１決定手段は、
前記第２算出手段によって算出された各角度における前記刺繍模様を縫製する際にかかる前記縫製時間を比較する比較手段と、
前記比較手段によって各角度における縫製時間を比較した結果、縫製時間が最も短い相対的な角度を決定する第２決定手段と、
を含むことを特徴とする請求項１に記載の刺繍データ処理装置。
【請求項３】
前記第２算出手段は、
各角度における前記刺繍データに含まれる複数の針落ち点のうちの縫製順が連続する２つの針落ち点の間の距離に基づいて、２つの針落ち点の間を移動して１つの縫目を形成する１縫目形成時間を算出する第３算出手段と、
前記第３算出手段によって算出された１縫目形成時間を合算して、前記刺繍模様を縫製する際にかかる縫製時間を算出する第４算出手段と、
を含むことを特徴とする請求項２に記載の刺繍データ処理装置。
【請求項４】
前記第３算出手段は、
縫製順が連続する２つの針落ち点の間の距離及び方向に基づいて、２つの針落ち点の間において前記第１移動機構が前記刺繍枠を前記第１方向に移動させる第１移動量を算出する第５算出手段と、
縫製順が連続する２つの針落ち点の間の距離及び方向に基づいて、２つの針落ち点の間において前記第２移動機構が前記刺繍枠を前記第２方向に移動させる第２移動量を算出する第６算出手段と、
前記第１移動量が、前記第２移動量より大きいか否かを判断する第１判断手段と、
前記第１判断手段が前記第１移動量は前記第２移動量より大きいと判断したことに応じて、前記第１移動量を移動させる移動時間に針棒を一往復させる時間を加算して、１縫目形成時間を算出する第１加算手段と、
前記第１判断手段が前記第１移動量は前記第２移動量より小さいと判断したことに応じて、前記第２移動量を移動させる移動時間に針棒を一往復させる時間を加算して、１縫目縫製時間を算出する第２加算手段と、
を含むことを特徴とする請求項３に記載の刺繍データ処理装置。
【請求項５】
前記第１算出手段は、
前記刺繍データに含まれる複数の針落ち点のうち縫製順が連続する２つの針落ち点の間を結ぶ線と前記第１方向とがなす角度を算出する第７算出手段と、
前記第７算出手段によって算出された縫製順が連続する２つの針落ち点の間を結ぶ線と前記第１方向とがなす角度に基づいて、縫製時間に寄与する値を算出する第８算出手段と、
を含むことを特徴とする請求項１に記載の刺繍データ処理装置。
【請求項６】
前記第８算出手段は、
縫製順が連続する２つの針落ち点の間を結ぶ線と前記第１方向とがなす角度が連続して同じ角度となる針落ち点の連続数を縫製時間に寄与する値として算出し、
前記第１決定手段は、
前記第８算出手段が算出した前記針落ち点の連続数が所定の基準数より大きいか否かを判断する第２判断手段と、
前記第２判断手段は、前記連続数が所定の基準数より大きいと判断したことに応じて、連続して同じとなる前記角度を前記刺繍模様と前記第１方向との相対的な角度として決定する第３決定手段と、
を含むことを特徴とする請求項５に記載の刺繍データ処理装置。
【請求項７】
刺繍枠を第１方向に移動させる第１移動機構と、
前記刺繍枠を前記第１方向に直交する第２方向に移動させ、前記第１移動機構と同時に駆動可能な第２移動機構と、
記憶部に記憶された刺繍データに基づいて、前記第１移動機構及び前記第２移動機構を駆動させて刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値を算出する第１算出手段と、
前記第１算出手段によって算出された前記刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値に基づいて、前記第１方向又は前記第２方向に対する前記刺繍模様を縫製する相対的な角度を決定する第１決定手段と、
前記第１決定手段によって決定された前記相対的な角度に基づいて、前記第１移動機構及び前記第２移動機構を駆動して前記刺繍模様を縫製する第１縫製手段と、
を備えることを特徴とするミシン。
【請求項８】
前記刺繍枠が回転可能であるか否かを判断する第３判断手段をさらに備え、
前記第１縫製手段は、
前記第３判断手段が、前記刺繍枠が回転可能であると判断したことに応じて、前記刺繍枠を前記第１決定手段によって決定された前記相対的な角度に回転させる枠回転制御手段と、
前記枠回転制御手段によって前記刺繍枠を回転させた後に、前記刺繍データに従って、前記第１移動機構及び前記第２移動機構を駆動して前記刺繍枠を移動させて前記刺繍模様を縫製する第２縫製手段と、
を含むことを特徴とする請求項７に記載のミシン。
【請求項９】
前記第１縫製手段は、
前記第３判断手段が、前記刺繍枠が回転不能であると判断したことに応じて、前記刺繍データの各針落ち点を前記第１決定手段によって決定された前記相対的な角度に回転させる模様回転制御手段と、
前記模様回転制御手段によって回転された前記刺繍データの各針落ち点に従って、前記第１移動機構及び前記第２移動機構を駆動して前記刺繍枠を移動させて縫製する第３縫製手段と、
を含むことを特徴とする請求項８に記載のミシン。
【請求項１０】
記憶部に記憶された刺繍データに基づいて、刺繍枠を第１方向及び第１方向と直交する第２方向に夫々移動させる第１移動機構及び第２移動機構を駆動させて刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値を算出する第１算出ステップと、
前記第１算出ステップによって算出された前記刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値に基づいて、前記第１方向又は前記第２方向に対する前記刺繍模様を縫製する相対的な角度を決定する第１決定ステップと、
前記第１決定ステップによって決定された前記第１方向又は第２方向に対する前記刺繍模様を縫製する相対的な角度を、前記刺繍模様の前記刺繍データに対応付けて前記記憶部に記憶させる記憶制御ステップと、
をコンピュータに実行させることを特徴とする刺繍データ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、刺繍データ処理装置、ミシン、及び刺繍データ処理プログラムに関する。
【背景技術】
【０００２】
従来から、刺繍枠を備えるミシンが知られている。
【０００３】
特許文献１に、加工布を保持する刺繍枠をＸ方向及びＹ方向に移動させる駆動手段と、刺繍枠を回転させる駆動手段とを備えたミシンが開示されている。例えば、特許文献１に記載のミシンは、円形の刺繍枠をＸ方向に移動させるＸ軸駆動モータを含むＸ軸駆動手段と、刺繍枠をＹ方向に移動させるＹ軸駆動モータを含むＹ軸駆動手段とを備えている。また、刺繍枠、Ｘ軸駆動手段、及びＹ軸駆動手段は、円環プレート上に搭載される。円環プレートは、ミシンに取付けられた台座によって回転可能に支持され、θ軸駆動モータを含むθ軸駆動手段によって回転駆動される。刺繍枠は、各駆動モータによって、Ｘ方向及びＹ方向に移動すると共に回転することで、刺繍模様を所望の角度で加工布に縫製することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平３−１９３０９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、刺繍模様によっては、刺繍枠の移動方向に対して縫製する角度を変更すると、縫製時間が変わる場合がある。一例として、刺繍模様としてアルファベットのＩの字を選び、これをサテン縫いにより縫製する場合を想定する。ここで、模様Ｉの大きさは、横方向の長さをＬｘとし、縦方向の長さをＬｙとする。つまり、Ｌｘはサテン縫いの幅であり、Ｌｙはサテン縫いの長さである。そして、模様ＩをＸ方向に対して傾けることなく縫製する場合、１針毎に、刺繍枠をＸ方向に移動量Ｌｘだけ移動させる必要がある。一方で、模様ＩをＸ方向に対して４５°傾けて縫製する場合、模様Ｉの幅方向を縫製するときのＸ方向及びＹ方向の１針毎の刺繍枠の移動量は、夫々、約Ｌｘ／√２（＝約０．７Ｌｘ）でよい。このように、模様ＩをＸ方向に対して４５°傾けて縫製する方が、模様ＩをＸ方向に対して傾けないで縫製するときよりも、刺繍枠のＸ方向の移動量が小さくなる。そして、刺繍枠のＹ方向の移動は、Ｘ方向の移動と同時に行われるので、結局、模様ＩをＸ方向に対して４５°傾けて縫製する方が、模様ＩをＸ方向に対して傾けないで縫製するときよりも、縫製時間が短くなる。しかしながら、従来のミシンでは、縫製時間を優先する為に刺繍模様を傾けて縫製すること、即ち、刺繍枠の移動方向に対する刺繍模様を縫製する角度と、縫製時間との関連性については特に考慮されてはいなかった。
【０００６】
本開示は、上記の事情に鑑みてなされたものであり、駆動機構の刺繍枠の移動方向に応じて、刺繍模様を縫製する角度を変更する刺繍データ処理装置、ミシン、及び刺繍データ処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本開示の一側面は、記憶部に記憶された刺繍データに基づいて、刺繍枠を第１方向及び第１方向と直交する第２方向に夫々移動させる第１移動機構及び第２移動機構を駆動させて刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値を算出する第１算出手段と、前記第１算出手段によって算出された前記刺繍模様を縫製する際にかかる縫製時間、又は前記縫製時間に寄与する値に基づいて、前記第１方向又は前記第２方向に対する前記刺繍模様を縫製する相対的な角度を決定する第１決定手段と、前記第１決定手段によって決定された前記第１方向又は第２方向に対する前記刺繍模様を縫製する相対的な角度を、前記刺繍模様の前記刺繍データに対応付けて前記記憶部に記憶させる記憶制御手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本開示の一側面は、縫製時間、又は縫製時間に寄与する値に基づいて、相対的な角度を決定し、刺繍データに対応付けて記憶部に記憶させることができる。ミシンは、記憶部に記憶された刺繍データ及び当該刺繍データに対応付けて記憶された相対的な角度を読み出して、刺繍模様の縫製を実行する。相対的な角度に基づいて、刺繍枠、又は刺繍模様を回転させることにより、同一の刺繍模様を縫製するために要する縫製時間を短くすることができる。
【図面の簡単な説明】
【０００９】
【図１】ミシン１０１の斜視図。
【図２】刺繍枠１０９の分解斜視図。
【図３】刺繍枠１０９の内部構成を示す斜視図。
【図４】刺繍枠１０９Ｂの平面図。
【図５】ミシン１０１の電気的構成を示すブロック図。
【図６】ＥＥＰＲＯＭ６４のデータ構成図。
【図７】刺繍データ２００の縫製データＰｊの座標を示す図。
【図８】刺繍処理プログラム６２１を示すフローチャート。
【図９】縫製時間が最も短い刺繍模様９９の角度を算出する処理Ｓ２１を示すフローチャート。
【図１０】角度ｒにおける縫製時間ｔｏｔａｌＴｉｍｅを算出する処理Ｓ４３を示すフローチャート。
【図１１】１縫目形成時間ｃｕｒＴｉｍｅを算出する処理Ｓ６５を示すフローチャート。
【図１２】枠回転刺繍データ６００に変換する処理Ｓ２７を示すフローチャート。
【図１３】刺繍枠１０９を回転させて縫製する処理Ｓ２９を示すフローチャート。
【図１４】刺繍模様９９の縫製手順を示す図。
【発明を実施するための形態】
【００１０】
以下、本発明を具体化したミシン１０１の実施形態について、説明する。
【００１１】
図１に示す様に、ミシン１０１は、ベッド部１１と、脚柱部１２と、アーム部１３と、頭部１４と、を備える。ベッド部１１は、ミシン１０１の土台部である。ベッド部１１は、加工布１００が載置可能な平面を有する。脚柱部１２は、ベッド部１１から延びる。アーム部１３は、ベッド部１１に対向して脚柱部１２から延びる。
【００１２】
本実施形態における方向について定義する。脚柱部１２がベッド部１１から延びる方向を、上方向とし、上方向の反対方向を下方向とする。アーム部１３が脚柱部１２から延びる方向を、左方向とし、左方向の反対方向を右方向とする。左右方向と上下方向とに直交する方向を、前後方向とする。
【００１３】
ミシン１０１で刺繍模様の縫製が行われる場合、加工布１００を保持する刺繍枠１０９が刺繍枠移動装置１９に装着される。刺繍枠１０９は、ベッド部１１及び刺繍枠移動装置１９本体の上側に配置される。刺繍枠１０９を移動させる刺繍枠移動装置１９は、ベッド部１１に着脱可能である。刺繍枠移動装置１９は、ベッド部１１の左方に装着される。刺繍枠移動装置１９は、刺繍枠１０９をＸ方向及びＹ方向に移動させる。
【００１４】
なお、ミシン１０１は、刺繍枠１０９以外に、大きさ、又は形状が異なる複数種類の刺繍枠を備えている。ミシン１０１は、刺繍枠移動装置１９に装着された刺繍枠の種類に応じて、刺繍枠の内側に縫製可能領域を設定する。一例として、刺繍枠１０９Ｂを図４に示す。刺繍枠１０９Ｂは、内枠９１Ｂと外枠９４Ｂとで加工布１００を挟持して保持する周知構成のものであり、詳しい説明は省略する。刺繍枠１０９Ｂは、刺繍枠１０９と同様に、刺繍枠移動装置１９に装着が可能である。以下の説明では、便宜上、刺繍枠１０９を用いて説明する。
【００１５】
刺繍枠移動装置１９は、前後方向に延びるキャリッジカバー３５を備える。キャリッジカバー３５は、刺繍枠移動装置１９の本体上部に設けられる。Ｙ軸移動機構が、キャリッジカバー３５の内部に設けられる。Ｙ軸移動機構は、キャリッジをミシン１０１の前後方向であるＹ方向に移動させる。刺繍枠１０９は、キャリッジに着脱可能である。従って、Ｙ軸移動機構は、刺繍枠１０９をＹ方向に移動させる。
【００１６】
刺繍枠１０９が装着される装着部３５１は、キャリッジの右方に設けられる。装着部３５１は、キャリッジカバー３５の右側面より右方に突出している。装着部３５１は、図２に示す刺繍枠１０９に設けられた取付部９４２と対応するように前後方向に長い。刺繍枠１０９に設けられた取付部９４２が、装着部３５１に装着される。図５に示すミシン側コネクタ部３５２は、装着部３５１の後部に設けられる。ミシン側コネクタ部３５２は、刺繍枠１０９に設けられた枠側コネクタ部９４４に対して電気的に接続可能である。ミシン側コネクタ部３５２は、凹型のコネクタである。ミシン側コネクタ部３５２は、凸型の枠側コネクタ部９４４と接続される部位を前方に向けて配置させる。
【００１７】
Ｘ軸移動機構は、刺繍枠移動装置１９の本体内に設けられる。Ｘ軸移動機構（図示せず）は、キャリッジ、Ｙ軸移動機構、及びキャリッジカバー３５をＸ方向、即ちミシン１０１の左右方向に移動させる。刺繍枠１０９は、キャリッジに着脱可能である。従って、Ｘ軸移動機構は、刺繍枠１０９をＸ方向に移動させる。
【００１８】
Ｘ軸移動機構とＹ軸移動機構は、同時に駆動可能である。ミシン１０１は、Ｘ軸移動機構とＹ軸移動機構とは、夫々、図５に示すＸ軸モータ８３及びＹ軸モータ８４によって駆動される。刺繍枠１０９がＸ方向及びＹ方向に移動されながら、図１に示す針棒６及び釜機構を駆動させる。このようにして、ミシン１０１は、刺繍枠１０９に保持された加工布１００に対して所望の刺繍模様を縫製する縫製動作を実行する。
【００１９】
液晶ディスプレイ１５は、脚柱部１２の前面に設けられる。液晶ディスプレイ１５は、縦長長方形状である。液晶ディスプレイ１５は、複数種類の模様、各種の機能を実行させるコマンド名、各種のメッセージ等、様々な項目の画像を表示する。タッチパネル２６は、液晶ディスプレイ１５の前面に設けられる。タッチパネル２６は、液晶ディスプレイ１５の画面をユーザが視認可能なよう透明である。ユーザが液晶ディスプレイ１５に表示された項目に対応するタッチパネル２６の部位を、指や専用のタッチペンを用いて触れることにより、縫製したい模様や実行すべきコマンドを選択することができる。
【００２０】
縫製開始・停止スイッチ２１は、アーム部１３の前面下部に設けられる。縫製開始・停止スイッチ２１は、ミシン１０１の運転を開始又は停止させる。縫製開始・停止スイッチ２１が押されると、ミシン１０１は、縫製開始又は停止の指令を指示する。
【００２１】
針棒６は、頭部１４の下部に設けられる。縫針７は、針棒６の下端部に装着される。
【００２２】
図２を参照して、刺繍枠１０９について説明する。刺繍枠１０９は、内枠９１、中枠９２、及び外枠９４を含む。内枠９１、中枠９２、及び外枠９４は、円形の枠形状である。中枠９２が、内枠９１の外周に配置される。外枠９４が、中枠９２の外周に配置される。刺繍枠１０９は、内枠９１と中枠９２との間で加工布１００を狭持する。中枠９２は、外枠９４に対して回転可能な構成を有する。
【００２３】
内枠９１は、円形の枠部９１１を備える。枠部９１１は、内枠９１の中心軸線が延びる方向である軸方向及び径方向に厚みを有する。内枠９１は、枠部９１１の直径を調整可能な調整部９１５を備える。ユーザは、内枠９１の直径を、内枠９１と中枠９２との間で挟持する加工布１００の布厚に応じて調整する。調整部９１５は、分断部９１６、一対のネジ装着部９１７、及び調整ネジ９１８を備える。
【００２４】
分断部９１６は、内枠９１の枠部９１１の周方向の一部が、軸方向に亘って分断された部位である。一対のネジ装着部９１７は、分断部９１６の両側の上部に設けられ、外側に突出して相対向する。孔部９１７１，９１７２が、一対のネジ装着部９１７に設けられる。孔部９１７１、９１７２は、ネジ装着部９１７が対向する面に直交する方向に貫通する。ネジ穴が形成されたナット（図示せず）が、２つの孔部９１７１，９１７２のうち一方の孔部９１７２に埋設される。
【００２５】
調整ネジ９１８は、ユーザが指で摘んで回転させる径大な頭部９１８１と、頭部９１８１から一体的に延びる径小の軸部９１８３とを有する。雄ネジ部９１８２が、軸部９１８３の先端寄りの部位に形成される。細溝９１８４が、軸部９１８３の頭部９１８１側寄りの部位に形成される。調整ネジ９１８は、軸部９１８３が孔部９１７１を貫通し、孔部９１７２に埋設されたナットのネジ穴と雄ネジ部９１８２が螺合するようにネジ装着部９１７に装着される。止め輪９１８５は、軸部９１８３の細溝９１８４に嵌入される。止め輪９１８５は、調整ネジ９１８を、孔部９１７１がある側のネジ装着部９１７に回転可能且つ軸方向に移動不能に保持する。
【００２６】
中枠９２は、円形の枠部９２１を備える。円形の枠部９２１は、内枠９１の枠部９１１の外径よりも大きい内径を有する。中枠９２の枠部９２１が内枠９１の枠部９１１の径方向外側に着脱されることで、中枠９２が内枠９１に着脱される。大歯車９３４が、中枠９２の枠部９２１の下端部に形成される。大歯車９３４は、中枠９２の枠部９２１の外周面の全周に亘って形成された歯車である。大歯車９３４は、図３に示す小歯車９４８に噛合される。
【００２７】
フランジ部９２９が、枠部９２１の外周側面における軸方向の中央部、且つ大歯車９３４の上側に設けられる。フランジ部９２９は、枠部９２１の全周に亘って径方向外側に向けて突出する。支持部９３６が、枠部９２１の下端の内周側面に設けられる。支持部９３６は、枠部９２１の全周に亘って径方向内側に向けて突出する。支持部９３６は、内枠９１の下端面を支持する部位である。
【００２８】
外枠９４は、円形の枠部９４１を備える。支持部９４６が、枠部９４１の下端の内周側面に設けられる。支持部９４６は、枠部９４１の全周に亘って径方向内側に向けて突出する。支持部９４６が中枠９２の下端面を支持することによって、枠部９４１が中枠９２を保持する。
【００２９】
図３を参照して、刺繍枠１０９の取付部９４２について説明する。取付部９４２は、枠部９４１の径方向外側に設けられる。取付部９４２は、円形の枠部９４１の接線方向と略平行に延びる。取付部９４２は、装着部３５１に着脱可能に構成される。
【００３０】
枠側コネクタ部９４４は、取付部９４２の接線方向一端側に設けられる。枠側コネクタ部９４４は、凸型のコネクタである。枠側コネクタ部９４４は、凹型のミシン側コネクタ部３５２と接続される部位を接線方向一端側に向けて配置される。取付部９４２が装着部３５１に取り付けられると同時に、枠側コネクタ部９４４がミシン側コネクタ部３５２に連結されて電気的に接続される。枠側コネクタ部９４４は、導電線９４５を介してモータ９４７に電気的に接続される。
【００３１】
また、図４に示す刺繍枠１０９Ｂは、刺繍枠１０９の取付部９４２と同様の形状をなす取付部９４２Ｂが設けられている。しかしながら、刺繍枠１０９Ｂは、枠側コネクタ部を有していない。
【００３２】
図３に示す様に、収納部９４３は、枠部９４１と取付部９４２との間に設けられる。収納部９４３は、モータ９４７を収納する。収納部９４３は、枠部９４１と取付部９４２とを連結する。収納部９４３は、箱状である。
【００３３】
モータ９４７は、回転軸９４９を下方に向けて、収納部９４３に配設される。小歯車９４８は、回転軸９４９の下端に固定される。小歯車９４８の径は、中枠９２の大歯車９３４の径より小さい。小歯車９４８は、大歯車９３４と噛合している。モータ９４７が駆動されて小歯車９４８が回転すると、大歯車９３４が回転する。これによって、外枠９４に対して中枠９２が回転する。中枠９２が回転することで、中枠９２と内枠９１に挟持された加工布１００が回転される。
【００３４】
図５を参照して、ミシン１０１の電気的構成について説明する。ミシン１０１の制御部６０は、ＣＰＵ６１、ＲＯＭ６２、ＲＡＭ６３、ＥＥＰＲＯＭ６４、及び入出力インターフェイス６５を備え、これらはバス６７により相互に接続される。ＲＯＭ６２は、ＣＰＵ６１が刺繍処理を実行するための刺繍処理プログラム６２１、及び各種データを記憶する。刺繍処理プログラム６２１は、刺繍データを処理する刺繍データ処理プログラム６２２を含む。ＥＥＰＲＯＭ６４は、ミシン１０１が刺繍縫製を実行するための複数の刺繍データを記憶する。具体的には、ＥＥＰＲＯＭ６４は、刺繍データ２００と、座標回転刺繍データ５００と、枠回転刺繍データ６００と、を少なくとも備える。本実施形態では、ミシン１０１は、刺繍データ処理装置として機能する。
【００３５】
縫製開始・停止スイッチ２１、タッチパネル２６、駆動回路７２、７５、８５、８６、及び８８が、入出力インターフェイス６５に電気的に接続される。駆動回路７２は、ミシンモータ７９を駆動する。駆動回路７５は、液晶ディスプレイ１５を駆動する。駆動回路８５及び８６は、刺繍枠１０９を移動させるＸ軸モータ８３及びＹ軸モータ８４を夫々駆動する。駆動回路８８は、ミシン側コネクタ部３５２に電気的に接続されており、枠側コネクタ部９４４及び導電線９４５を介して刺繍枠１０９に設けられたモータ９４７を駆動する。ＣＰＵ６１は、モータ９４７を制御して、中枠９２を回転させることができる。
【００３６】
図６を参照して、刺繍データ２００について説明する。刺繍データ２００は、加工布１００に刺繍するためのデータである。刺繍データ２００は、縫製データＰＪ、及び縫製終了データを含む。縫製データＰＪ、及び縫製終了データの各々は、変数ｉに対応付けられる。変数ｉは、刺繍データ２００の各データの処理を行う順序を示す変数である。なお、刺繍データ２００は、刺繍枠１０９の回転を指示する枠回転指示データＲｋと、色替えを指示する色替指示データと、縫製停止を指示する縫製停止データと、を含んでも良い。枠回転指示データＲｋは、外枠９４に対する中枠９２の角度に刺繍枠１０９を回転させることを指示するデータである。縫製データＰＪは、縫針７が加工布１００に刺さる位置に対し、Ｘ軸移動機構及びＹ軸移動機構によって、刺繍枠１０９を一針毎にＸ方向及びＹ方向に移動させる為の座標データである。座標データで示される位置を、以下、針落ち点と称する。縫製終了データは、刺繍データの終了を示すデータである。枠回転指示データＲｋは、中枠９２を回転させることを指示する角度データである。
【００３７】
図７を参照して、刺繍データ２００の縫製データＰｊについて説明する。縫製データＰｊは、Ｘ、Ｙ座標で表される。ミシン１０１では、刺繍枠の種類に応じて設定される縫製可能領域の中心点を刺繍座標系の原点Ｕ（Ｘ，Ｙ）＝（０，０）とする。刺繍データ２００は、刺繍枠１０９がミシン１０１に装着された場合、ミシン１０１は、内枠９１内の回転中心を中心とする円形の領域を縫製可能領域として設定する。本実施形態においては、内枠９１内の回転中心を原点とする。刺繍座標系では、ミシン１０１の左右方向がＸ軸方向と一致し、ミシン１０１の前後方向がＹ軸方向と一致する。ミシン１０１の左から右方向に向かう方向がＸ軸の＋方向、前から後に向かう方向がＹ軸の＋方向である。また、Ｘ軸の＋側が「０°」のラインであり、「０°」のラインに対して刺繍枠１０９を上から見て反時計回り方向が「＋」、時計回り方向が「−」である。刺繍データ２００は、マスクデータである。マスクデータは、刺繍模様９９の全体を包含し且つ大きさが最小となる矩形のデータである。刺繍模様９９の中心は、例えば、マスクデータの中心座標Ｕである。本実施形態においては、刺繍座標系の原点Ｓ（Ｘ，Ｙ）＝マスクデータの中心座標Ｕとする。
【００３８】
図６に示す刺繍データ２００の縫製データＰ１〜Ｐ２５０は、図７に示す「Ａ」の刺繍模様９９を縫製するためのデータである。「Ａ」の刺繍模様９９は、左傾斜部分「／」と、右傾斜部分「＼」と、横直線部分「―」との３つのブロックからなる。縫製データＰ１〜Ｐ２５０は、「Ａ」の左傾斜部分「／」を示す縫製データＰ１〜Ｐ１００、「Ａ」の右傾斜部分「＼」を示す縫製データＰ１０１〜Ｐ２００、及び「Ａ」の横直線部分「―」を示す縫製データＰ２０１〜Ｐ２５０からなる。３つのブロックは、サテン縫いで縫製される。
【００３９】
［刺繍処理］
図８を参照して、刺繍処理について説明する。刺繍処理は、ミシン１０１のＣＰＵ６１によって実行される。例えば、ユーザがタッチパネル２６に触れ、縫製する模様として刺繍模様９９を選択した場合、ＣＰＵ６１は、ＲＯＭ６２から刺繍処理プログラム６２１を読み出し、刺繍処理を実行する。フローチャートに示す各ステップは、ＣＰＵ６１の処理を示す。
【００４０】
Ｓ１１では、ＣＰＵ６１は、ＥＥＰＲＯＭ６４からユーザが選択した刺繍模様９９を縫製するために刺繍データ２００を読み出す。
【００４１】
Ｓ１３では、ＣＰＵ６１は、刺繍枠が回転可能か否かを判断する。具体的には、ＣＰＵ６１は、ミシン１０１の装着部３５１のミシン側コネクタ部３５２と、刺繍枠１０９の枠側コネクタ部９４４とが電気的に接続されているか否かを判断する。ここで、刺繍枠１０９ではなく刺繍枠１０９Ｂが装着部３５１に装着されているときには、ミシン側コネクタ部３５２と枠側コネクタ部９４４とが電気的に接続されていない場合となる。ＣＰＵ６１は、ミシン側コネクタ部３５２と枠側コネクタ部９４４とが電気的に接続されていると判断した場合、即ち刺繍枠１０９が装着部３５１に装着されている場合（Ｓ１３：ＹＥＳ）、Ｓ２５に処理を進める。ＣＰＵ６１は、ミシン側コネクタ部３５２と枠側コネクタ部９４４とが電気的に接続されていないと判断した場合、即ち刺繍枠１０９Ｂが装着部３５１に装着されている場合（Ｓ１３：ＮＯ）、Ｓ１５に処理を進める。
【００４２】
Ｓ１５では、ＣＰＵ６１は、縫製時間を短くする処理を行うか否かを判断する。具体的には、ＣＰＵ６１は、液晶ディスプレイ１５にユーザが縫製時間を短くする処理を行うか否かを選択する画面を表示させる。ユーザがタッチパネル２６に触れ、ＣＰＵ６１が、縫製時間を短くする処理を行う選択をしたことを検出したことに応じて（Ｓ１５：ＹＥＳ）、Ｓ１９に処理を進める。ＣＰＵ６１が、縫製時間を短くする処理を行わない選択をしたことを検出したことに応じて（Ｓ１５：ＮＯ）、Ｓ１７に処理を進める。
【００４３】
Ｓ１９では、ＣＰＵ６１は、縫製時間が最も短い角度ｒ０が既に算出されているか否かを判断する。具体的には、ＣＰＵ６１は、ＲＡＭ６３に記憶される最小時間ｍｉｎＴｉｍｅ＝９９９であるか否かを判断する。ＣＰＵ６１は、最小時間ｍｉｎＴｉｍｅ＝９９９であると判断したことに応じて（Ｓ１９：ＮＯ）、Ｓ２１に処理を進める。ＣＰＵ６１は、最小時間ｍｉｎＴｉｍｅ＝９９９ではないと判断したことに応じて（Ｓ１９：ＹＥＳ）、Ｓ２３に処理を進める。
【００４４】
Ｓ２１、Ｓ２３を処理するために、ＣＰＵ６１は、ＲＯＭ６２から刺繍データ処理プログラム６２２を読み出し、刺繍データ処理を実行する。本実施形態では、刺繍データ処理は、Ｓ２１、及びＳ２３を含む。
【００４５】
Ｓ２１では、ＣＰＵ６１は、縫製時間が最も短い角度ｒ０を算出する処理を実行する。具体的には、ＣＰＵ６１は、ＥＥＰＲＯＭ６４に記憶された刺繍データ２００に基づいて、刺繍枠１０９ＢをＸ方向及びＹ方向に夫々移動させるＸ軸移動機構及びＹ軸移動機構を駆動させて刺繍模様９９を縫製する際にかかる縫製時間を算出する。そして、ＣＰＵ６１は、刺繍模様９９を縫製する際にかかる縫製時間に基づいて、Ｘ方向に対する刺繍模様９９を縫製する相対的な角度としての縫製時間が最も短い角度ｒ０を決定する。Ｓ２１における相対的な角度とは、刺繍模様９９の縫製データＰｊのＸ、Ｙ座標（針落ち点）を回転させる角度である。
【００４６】
Ｓ２３では、ＣＰＵ６１は、縫製データＰｊのＸ，Ｙ座標を縫製時間が最も短い角度ｒ０に回転させて、刺繍データ２００に対応付けて座標回転刺繍データ５００としてＥＥＰＲＯＭ６４に記憶させる。具体的には、ＣＰＵ６１は、Ｓ１３で刺繍枠が回転不能であると判断したことに応じて、縫製データＰｊのＸ，Ｙ座標を刺繍模様９９の中心Ｕを回転中心としてＳ２１によって決定された縫製時間が最も短い角度ｒ０に回転させる。また、ＣＰＵ６１は、Ｓ１９で縫製時間が最も短い角度ｒ０が既に算出されていると判断したことに応じて、縫製データＰｊのＸ，Ｙ座標を、刺繍模様９９の中心Ｕを回転中心として既に算出された縫製時間が最も短い角度ｒ０に回転させる。具体的には、刺繍データ２００のマスクデータの中心座標Ｕ（０，０）を回転中心として、縫製時間が最も短い角度ｒ０回転させる。詳細には、ＣＰＵ６１は、縫製データＰ１（Ｘ１，Ｙ１）〜Ｐ２５０（Ｘ２５０，Ｙ２５０）を、縫製データＱ１（Ｘ１’，Ｙ１’）〜Ｑ２５０（Ｘ２５０’，Ｙ２５０’）に変換する。元の座標値をＸ，Ｙ、変換後の座標値をＸ’，Ｙ’とすると、以下の数式により変換される。
Ｘ’＝Ｘｃｏｓ（ｒ０）−Ｙｓｉｎ（ｒ０）・・・（１）
Ｙ’＝Ｘｓｉｎ（ｒ０）＋Ｙｃｏｓ（ｒ０）・・・（２）
【００４７】
ＣＰＵ６１は、縫製データＰｊのＸ，Ｙ座標を、角度ｒ０回転させた刺繍データを、図６に示す座標回転刺繍データ５００としてＥＥＰＲＯＭ６４に記憶させる。ＣＰＵ６１は、Ｓ２３終了後、Ｓ１７へ処理を進める。なお、刺繍模様９９の回転は、刺繍模様９９の中心以外の、例えば刺繍模様９９の左上の頂点を回転中心として回転させてもよい。
【００４８】
Ｓ１７では、ＣＰＵ６１は、通常縫製処理を実行する。通常縫製とは、刺繍枠を回転させずにＸ軸移動機構及びＹ軸移動機構を駆動して刺繍枠を移動させて縫製することである。即ち、通常縫製は、刺繍枠１０９Ｂを使用して縫製することである。具体的には、Ｓ１５で、ＣＰＵ６１が縫製時間を短くする処理を行うと判断した場合、ＣＰＵ６１は、Ｓ２３によって回転された座標回転刺繍データ５００の各針落ち点に従って、通常縫製を実行する。一方、Ｓ１５で、ＣＰＵ６１が縫製時間を短くする処理を行わないと判断した場合、ＣＰＵ６１は、予めＥＥＰＲＯＭ６４に記憶されている刺繍データ２００の各針落ち点に従って、通常縫製処理を実行する。ＣＰＵ６１は、通常縫製処理を指令する制御信号を出力する。通常縫製処理とは、刺繍枠１０９Ｂを回転させず、Ｘ軸モータ８３及びＹ軸モータ８４を駆動させて刺繍模様９９を縫製する処理である。従って、ＣＰＵ６１は、通常縫製処理を実行するために、座標回転刺繍データ５００、又は刺繍データ２００に基づいて、駆動回路７２、８５、８６に制御信号を出力する。ＣＰＵ６１は、Ｓ１７終了後、刺繍処理プログラム６２１を終了する。
【００４９】
一方、回転可能な刺繍枠１０９が装着部３５１に装着されている場合（Ｓ１３：ＹＥＳ）には、Ｓ２５に処理を進める。Ｓ２５では、ＣＰＵ６１は、ＥＥＰＲＯＭ６４に枠回転刺繍データ６００が記憶されているか否かを判断する。ＣＰＵ６１は、ＥＥＰＲＯＭ６４に枠回転刺繍データ６００が記憶されていると判断したことに応じて（Ｓ２５：ＹＥＳ）、Ｓ２９へ処理を進める。ＣＰＵ６１は、ＥＥＰＲＯＭ６４に枠回転刺繍データ６００が記憶されていないと判断したことに応じて（Ｓ２５：ＮＯ）、Ｓ２７へ処理を進める。
【００５０】
Ｓ２７を処理するために、ＣＰＵ６１は、ＲＯＭ６２から刺繍データ処理プログラム６２２を読み出し、刺繍データ処理を実行する。Ｓ２７では、ＣＰＵ６１は、刺繍データ２００を枠回転刺繍データ６００に変換する処理を実行する。詳細には、ＣＰＵ６１は、ＥＥＰＲＯＭ６４に記憶された刺繍データ２００に基づいて、刺繍枠１０９をＸ方向及びＹ方向に夫々移動させるＸ軸移動機構及びＹ軸移動機構を駆動させて刺繍模様９９を縫製する際にかかる縫製時間に寄与する値ｎＳｔを算出する。そして、ＣＰＵ６１は、刺繍模様９９を縫製する際にかかる縫製時間に寄与する値ｎＳｔに基づいて、Ｘ方向に対する刺繍模様９９を縫製する相対的な角度を決定する。Ｓ２７における相対的な角度とは、刺繍模様９９の縫製データＰｊの針落ち点と刺繍枠１０９を回転させる角度である。さらに、ＣＰＵ６１は、Ｘ方向に対する刺繍模様９９を縫製する相対的な角度を、刺繍模様９９の刺繍データ２００に対応付けて枠回転刺繍データ６００としてＥＥＰＲＯＭ６４に記憶させる。なお、縫製時間に寄与する値ｎＳｔについては後述する。
【００５１】
Ｓ２９では、ＣＰＵ６１は、枠回転刺繍データ６００に基づいて、縫製時間が最短となる角度に刺繍枠１０９を回転させて刺繍模様９９を縫製する。ＣＰＵ６１は、Ｓ１３にて刺繍枠１０９が回転可能であると判断したことに応じて、刺繍枠１０９をＳ２７によって決定された相対的な角度αに回転させる。具体的には、ＣＰＵ６１は、枠回転刺繍データ６００に基づいて、縫製時間が最短となる角度αに刺繍枠１０９を回転させて刺繍縫製９９を縫製する。ＣＰＵ６１は、Ｓ２９終了後、刺繍処理プログラム６２１を終了する。
【００５２】
［縫製時間が最も短い角度ｒ０の算出］
図９を参照して、縫製時間が最も短い刺繍模様９９の角度ｒ０を算出する処理Ｓ２１について詳細に説明する。ＣＰＵ６１は、Ｓ２１の処理を開始すると、図９に示すＳ４１へ処理を進める。
【００５３】
Ｓ４１では、ＣＰＵ６１は、角度ｒ、最小時間ｍｉｎＴｉｍｅを初期化する。具体的には、ＣＰＵ６１は、ＲＡＭ６３の角度ｒに初期値としての０°を記憶させる。さらに、ＣＰＵ６１は、ＲＡＭ６３の最小時間ｍｉｎＴｉｍｅに通常の縫製時間より十分大きい縫製時間として９９９［ｓ］を記憶させる。最小時間ｍｉｎＴｉｍｅは、最も短い縫製時間を算出するための比較対象である。
【００５４】
Ｓ４３では、ＣＰＵ６１は、角度ｒにおける縫製時間を算出する処理を実行する。具体的には、ＣＰＵ６１は、複数の異なる角度０°〜３５９°の各角度ｒにおける刺繍模様９９を縫製する際にかかる縫製時間を算出する。具体的には、ＣＰＵ６１は、角度ｒにおける縫製時間ｔｏｔａｌＴｉｍｅを算出し、ＲＡＭ６３に記憶させる。
【００５５】
Ｓ４５では、ＣＰＵ６１は、Ｓ４３によって算出された各角度ｒにおける刺繍模様９９を縫製する際にかかる縫製時間ｔｏｔａｌＴｉｍｅを最小時間ｍｉｎＴｉｍｅと比較する。具体的には、ＣＰＵ６１は、角度ｒにおける縫製時間ｔｏｔａｌＴｉｍｅが最小時間ｍｉｎＴｉｍｅより小さいか否かを判断する。ＣＰＵ６１は、縫製時間ｔｏｔａｌＴｉｍｅが最小時間ｍｉｎＴｉｍｅより小さいと判断したことに応じて（Ｓ４５：ＹＥＳ）、Ｓ４７に処理を進める。ＣＰＵ６１は、縫製時間ｔｏｔａｌＴｉｍｅが最小時間ｍｉｎＴｉｍｅより大きいと判断したことに応じて（Ｓ４５：ＮＯ）、Ｓ４９に処理を進める。
【００５６】
Ｓ４７では、ＣＰＵ６１は、最小時間ｍｉｎＴｉｍｅに縫製時間ｔｏｔａｌＴｉｍｅを代入する。
【００５７】
Ｓ４８では、ＣＰＵ６１は、Ｓ４５によって各角度ｒにおける縫製時間を比較した結果、縫製時間が最も短い角度ｒ０を決定する。具体的には、ＣＰＵ６１は、縫製時間ｔｏｔａｌＴｉｍｅが最小時間ｍｉｎＴｉｍｅより小さいと判断したことに応じて、縫製時間が最も短い角度ｒ０に角度ｒを代入する。ＣＰＵ６１は、Ｓ４８終了後、Ｓ４９へ処理を進める。
【００５８】
Ｓ４９では、ＣＰＵ６１は、角度ｒを１°加算する。
【００５９】
Ｓ５１では、ＣＰＵ６１は、角度ｒが３６０°であるか否かを判断する。ＣＰＵ６１は、角度ｒが３６０°であると判断したことに応じて（Ｓ５１：ＹＥＳ）、縫製時間が最も短い刺繍模様９９の角度ｒ０を算出する処理Ｓ２１を終了し、図８のＳ２３へ処理を進める。ＣＰＵ６１は、角度ｒが３６０°ではないと判断したことに応じて（Ｓ５１：ＮＯ）、Ｓ４３へ処理を戻す。このように、ＣＰＵ６１は、角度ｒを１°ずつ変更しながら、縫製時間が最短となる刺繍模様９９の角度ｒ０を算出する。
【００６０】
［角度ｒにおける縫製時間の算出］
図１０を参照して、角度ｒにおいて縫製時間ｔｏｔａｌＴｉｍｅを算出する処理Ｓ４３について詳細に説明する。ＣＰＵ６１は、Ｓ４３の処理が開始された後、図１０に示すＳ６１へ処理を進める。
【００６１】
Ｓ６１では、ＣＰＵ６１は、角度ｒにおける最初の針落ち点から最後の針落ち点まで縫製する時間として縫製時間ｔｏｔａｌＴｉｍｅ、変数ｉ、ｊを初期化する。具体的には、ＣＰＵ６１は、縫製時間ｔｏｔａｌＴｉｍｅに０、変数ｉに１、変数ｊに１を代入する。変数ｉは、刺繍データ２００のデータ番号を示す数である。変数ｊは、縫製データＰｊのデータ番号を示す数である。
【００６２】
Ｓ６３では、ＣＰＵ６１は、ｉ番目のデータは、縫製データであるか否かを判断する。ＣＰＵ６１は、ｉ番目のデータは縫製データであると判断したことに応じて（Ｓ６３：ＹＥＳ）、Ｓ６５へ処理を進める。ＣＰＵ６１は、ｉ番目のデータは縫製データではないと判断したことに応じて（Ｓ６３：ＮＯ）、Ｓ６４へ処理を進める。
【００６３】
Ｓ６４では、ＣＰＵ６１は、ｉ番目のデータが、縫製終了データであるか否かを判断する。ＣＰＵ６１は、ｉ番目のデータが縫製終了データであると判断したことに応じて（Ｓ６４：ＹＥＳ）、角度ｒにおける縫製時間を算出する処理Ｓ４３を終了し、図９のＳ４５へ処理を戻す。ＣＰＵ６１は、ｉ番目のデータが縫製終了データではないと判断したことに応じて（Ｓ６４：ＮＯ）、Ｓ６９へ処理を進める。
【００６４】
Ｓ６５では、ＣＰＵ６１は、各角度ｒにおける刺繍データ２００の縫製データＰ１〜Ｐ２５０に従う複数の針落ち点のうちの縫製順が連続する２つの針落ち点の間の距離に基づいて、連続する２つの針落ち点の間を移動して１つの縫目を形成するのに要する１縫目形成時間ｃｕｒＴｉｍｅを算出する。１縫目形成時間ｃｕｒＴｉｍｅは、具体的には、ｊ番目の縫製データＰＪに従う針落ち点からｊ＋１番目の縫製データＰＪ＋１に従う針落ち点に刺繍枠１０９Ｂが移動して、２つの針落ち点の間に１つの縫目を形成する際に要する時間ｃｕｒＴｉｍｅである。
【００６５】
Ｓ６７では、ＣＰＵ６１は、Ｓ６５によって算出された１縫目形成時間ｃｕｒＴｉｍｅを合算して、刺繍模様９９を縫製する際にかかる縫製時間ｔｏｔａｌＴｉｍｅを算出する。具体的には、ＣＰＵ６１は、縫製時間ｔｏｔａｌＴｉｍｅに、ｊ番目の縫製データＰＪに従う針落ち点からｊ＋１番目の縫製データＰＪ＋１に従う針落ち点に移動して１縫目形成時間ｃｕｒＴｉｍｅを加算する。
【００６６】
Ｓ６８では、ＣＰＵ６１は、刺繍データ２００のすべての縫製データを処理するために、変数ｊに１を加算する。ＣＰＵ６１は、Ｓ６８終了後、Ｓ６９へ処理を進める。
【００６７】
Ｓ６９では、ＣＰＵ６１は、刺繍データ２００のすべてのデータを処理するために、変数ｉに１を加算する。ＣＰＵ６１は、Ｓ６９終了後、Ｓ６３へ処理を戻す。
【００６８】
［１縫目形成時間ｃｕｒＴｉｍｅの算出］
図１１を参照して、縫製データＰＪに従う針落ち点から縫製データＰＪ＋１に従う針落ち点まで移動して１つの縫目を形成するのに要する１縫目形成時間ｃｕｒＴｉｍｅを算出する処理Ｓ６５について詳細に説明する。ＣＰＵ６１は、Ｓ６５の処理が開始された後、図１１に示すＳ７１へ処理を進める。
【００６９】
Ｓ７１では、ＣＰＵ６１は、ｊ番目の縫製データＰｊ（Ｘｊ，Ｙｊ）、ｊ＋１番目の縫製データＰｊ＋１（Ｘｊ＋１，Ｙｊ＋１）をＥＥＰＲＯＭ６４から読み出す。
【００７０】
Ｓ７３では、ＣＰＵ６１は、刺繍模様９９の縫製データＰｊに従う針落ち点から縫製データＰｊ＋１
に従う針落ち点までの距離、及び縫製データＰｊに従う針落ち点から縫製データＰｊ＋１に従う針落ち点に向かう方向に基づいて、縫製データＰｊ、Ｐｊ＋１に従う２つの針落ち点の間においてＸ軸移動機構が刺繍枠１０９ＢをＸ方向に移動させるＸ方向の移動量を算出する。Ｘ方向の移動量とは、ｊ番目の縫製データＰｊの針落ち点からｊ＋１番目の縫製データＰｊ＋１の針落ち点までＸ方向に移動した量である。具体的には、Ｘ方向の移動量は、｜Ｘｊ＋１―Ｘｊ｜である。
【００７１】
Ｓ７５では、ＣＰＵ６１は、刺繍模様９９の縫製データＰｊに従う針落ち点から縫製データＰｊ＋１
に従う針落ち点までの距離、及び縫製データＰｊに従う針落ち点から縫製データＰｊ＋１に従う針落ち点に向かう方向に基づいて、縫製データＰｊ、Ｐｊ＋１に従う２つの針落ち点の間においてＹ軸移動機構が刺繍枠１０９ＢをＹ方向に移動させるＹ方向の移動量を算出する。Ｙ方向の移動量とは、ｊ番目の縫製データＰｊの針落ち点からｊ＋１番目の縫製データＰｊ＋１の針落ち点までＹ方向に移動した量である。具体的には、Ｙ方向の移動量は、｜Ｙｊ＋１―Ｙｊ｜である。
【００７２】
Ｓ７７では、ＣＰＵ６１は、縫製データＰｊ、Ｐｊ＋１に従う２つの針落ち点の間において、Ｓ７３によって算出されたＸ方向の移動量が、Ｓ７５によって算出されたＹ方向の移動量より大きいか否かを判断する。具体的には、ＣＰＵ６１は、｜Ｘｊ＋１―Ｘｊ｜が｜Ｙｊ＋１―Ｙｊ｜より大きいか否かを判断する。ＣＰＵ６１は、｜Ｘｊ＋１―Ｘｊ｜が｜Ｙｊ＋１―Ｙｊ｜より大きいと判断したことに応じて（Ｓ７７：ＹＥＳ）、Ｓ７９に処理を進める。ＣＰＵ６１は、｜Ｘｊ＋１―Ｘｊ｜が｜Ｙｊ＋１―Ｙｊ｜より小さいと判断したことに応じて（Ｓ７７：ＮＯ）、Ｓ８１に処理を進める。
【００７３】
Ｓ７７で、ＣＰＵ６１は、Ｘ方向の移動量はＹ方向の移動量より大きいと判断したことに応じて、Ｓ７９では、ＣＰＵ６１は、距離ｄに｜Ｘｊ＋１―Ｘｊ｜を代入する。ＣＰＵ６１は、Ｓ７９終了後、Ｓ８３へ処理を進める。
【００７４】
Ｓ７７で、ＣＰＵ６１は、Ｘ方向の移動量はＹ方向の移動量より小さいと判断したことに応じて、Ｓ８１では、距離ｄに｜Ｙｊ＋１―Ｙｊ｜を代入する。ＣＰＵ６１は、Ｓ８１終了後、Ｓ８３へ処理を進める。
【００７５】
Ｓ８３では、ＣＰＵ６１は、刺繍枠１０９Ｂを距離ｄ移動させる時間に縫針７を装着する針棒６が上下方向に一往復する時間を加算して、１縫目形成時間ｃｕｒＴｉｍｅとしてＲＡＭ６３に記憶させる。ＣＰＵ６１は、Ｓ８３終了後、１縫目形成時間ｃｕｒＴｉｍｅを算出する処理Ｓ６５を終了し、図１０のＳ６７へ処理を進める。
【００７６】
距離ｄ移動させる時間は、以下の数式に従って算出される。
（距離ｄ移動させる時間）＝（距離ｄ）／（Ｘ軸移動機構又はＹ軸移動機構の速度）
【００７７】
なお、本実施形態においては、Ｘ軸移動機構及びＹ軸移動機構は、同時に駆動可能である。Ｘ軸移動機構によって移動される刺繍枠１０９Ｂの移動速度と、Ｙ軸移動機構によって移動される刺繍枠１０９Ｂの移動速度とは、同じ速度である。また、刺繍枠１０９Ｂの速度は、例えば、１００［ｍｍ／ｓ］であるとする。また、また、縫針７を装着する針棒６が上下方向に一往復するのに要する時間は、ミシンモータ７９の回転速度、即ちミシン１０１の縫製速度に依存するが、説明を簡単にする為に、一定の値であるとする。一定の値は、例えば０．１［ｓ］である。
【００７８】
ここで、例えば、刺繍枠１０９Ｂを、座標Ｖ１から座標Ｖ３まで移動させる場合を考える。座標Ｖ１と座標Ｖ３との距離は、距離ｄであるとし、座標Ｖ１は（０，０）、座標Ｖ３は（１０，２０）であるとする。上述のように、Ｘ軸移動機構及びＹ軸移動機構は同時に駆動されることにより、刺繍枠１０９Ｂは、座標Ｖ１（０，０）から、まず、座標Ｖ２（１０，１０）に向かって移動する。その後、Ｘ軸移動機構の駆動が停止される一方、Ｙ軸移動機構のみが引続き駆動される。このため、刺繍枠１０９Ｂは、座標Ｖ２（１０，１０）から座標Ｖ３（１０，２０）に移動する。このように、刺繍枠１０９Ｂを移動させる時間は、Ｘ方向とＹ方向の夫々の移動距離において、長い方の移動距離のみを考慮すればよい。この場合、刺繍枠１０９Ｂを距離ｄ移動させる時間は、距離ｄ＝２０［ｍｍ］／速度１００［ｍｍ／ｓ］＝０．２［ｓ］である。従って、縫製時間ｃｕｒＴｉｍｅ＝０．２＋０．１＝０．３［ｓ］となる。
【００７９】
［枠回転刺繍データ６００への変換］
図１２を参照して、枠回転刺繍データ６００に変換する処理Ｓ２７について詳細に説明する。ＣＰＵ６１は、Ｓ２７の処理が開始された後、図１２に示すＳ９１へ処理を進める。
【００８０】
Ｓ９１では、ＣＰＵ６１は、変数ｉ、ｊ、ｋ、基準角度α、基準角度β、回転開始位置Ｉｄｘ、及び連続数ｎＳｔを初期化する。具体的には、ＣＰＵ６１は、変数ｉ、ｊ、ｋ、及び連続数ｎＳｔにそれぞれ１を代入し、基準角度α、β、及び回転開始位置Ｉｄｘにそれぞれ０を代入する。変数ｉは、刺繍データ２００のデータ番号を示す数である。変数ｊは、縫製データＰｊのデータ番号を示す数である。変数ｋは、刺繍模様９９を縫製する間に刺繍枠１０９を回転させる回数である。基準角度αは、縫製データＰｊに従う針落ち点と縫製データＰｊ−１に従う針落ち点とがなす線分の角度である。基準角度βは、縫製データＰｊに従う針落ち点と縫製データＰｊ−１に従う針落ち点とがなす線分の角度である。基準角度βは、基準角度αの比較対象として、基準角度αを算出した後に算出される。回転開始位置Ｉｄｘは、刺繍枠１０９を回転させるデータ番号を示す数である。連続数ｎＳｔは、縫製順が連続する２つの針落ち点の間を結ぶ線とＸ方向とがなす角度αが連続して同じ角度となる数である。
【００８１】
Ｓ９３では、ＣＰＵ６１は、ＥＥＰＲＯＭ６４から刺繍データ２００を読み出す。
【００８２】
Ｓ９５では、ＣＰＵ６１は、ｉ番目のデータが、縫製終了データか否かを判断する。ＣＰＵ６１は、ｉ番目のデータが、縫製終了データであると判断したことに応じて（Ｓ９５：ＹＥＳ）、Ｓ２７を終了し、図８のＳ２９へ処理を進める。ＣＰＵ６１は、ｉ番目のデータが、縫製終了データではないと判断したことに応じて（Ｓ９５：ＮＯ）、Ｓ９７へ処理を進める。
【００８３】
Ｓ９７では、ＣＰＵ６１は、ｉ番目のデータが、縫製データか否かを判断する。ＣＰＵ６１は、ｉ番目のデータが、縫製データであると判断したことに応じて（Ｓ９７：ＹＥＳ）、Ｓ１０１へ処理を進める。ＣＰＵ６１は、ｉ番目のデータが、縫製データではないと判断したことに応じて（Ｓ９７：ＮＯ）、Ｓ９９へ処理を進める。
【００８４】
Ｓ９９では、ＣＰＵ６１は、基準角度α、回転開始位置Ｉｄｘ、及び連続数ｎＳｔを初期化する。具体的には、ＣＰＵ６１は、連続数ｎＳｔに１を代入し、基準角度α、及び回転開始位置Ｉｄｘのそれぞれに０を代入する。ＣＰＵ６１は、Ｓ９９終了後、Ｓ１０５へ処理を進める。
【００８５】
Ｓ１０５では、刺繍データ２００のすべてのデータを処理するために、刺繍データ２００のデータの番号を示す変数ｉに１を加算する。ＣＰＵ６１は、Ｓ１０５終了後、Ｓ９５へ処理を戻す。
【００８６】
Ｓ１０１では、ＣＰＵ６１は、回転開始位置Ｉｄｘが０か否かを判断する。ＣＰＵ６１は、回転開始位置Ｉｄｘが０であると判断したことに応じて（Ｓ１０１：ＹＥＳ）、Ｓ１０３へ処理を進める。ＣＰＵ６１は、回転開始位置Ｉｄｘが０ではないと判断したことに応じて（Ｓ１０１：ＮＯ）、Ｓ１０９へ処理を進める。
【００８７】
Ｓ１０３では、ＣＰＵ６１は、回転開始位置Ｉｄｘに変数ｊを代入する。ＣＰＵ６１は、Ｓ１０３終了後、Ｓ１０７へ処理を進める。
【００８８】
Ｓ１０７では、ＣＰＵ６１は、刺繍データ２００のすべての縫製データＰｊを処理するために、縫製データＰｊのデータ番号を示す変数ｊに１を加算する。ＣＰＵ６１は、Ｓ１０７終了後、Ｓ１０５へ処理を戻す。
【００８９】
Ｓ１０９では、ＣＰＵ６１は、基準角度αは、０か否かを判断する。ＣＰＵ６１は、基準角度αは、０であると判断したことに応じて（Ｓ１０９：ＹＥＳ）、Ｓ１１１へ処理を進める。ＣＰＵ６１は、基準角度αは、０ではないと判断したことに応じて（Ｓ１０９：ＮＯ）、Ｓ１１３へ処理を進める。
【００９０】
Ｓ１１１では、ＣＰＵ６１は、刺繍データ２００の縫製データの縫製順が連続する２つの針落ち点の間を結ぶ線とＸ方向とがなす角度を算出する。具体的には、ＣＰＵ６１は、ｊ番目の縫製データＰｊに従う針落ち点とｊ−１番目の縫製データＰｊ−１に従う針落ち点とがなす線分の角度を基準角度αに代入する。ＣＰＵ６１は、Ｓ１１１終了後、Ｓ１０７へ処理を戻す。
【００９１】
Ｓ１１３では、ＣＰＵ６１は、ｊ番目の縫製データＰｊに従う針落ち点とｊ−１番目の縫製データＰｊ−１に従う針落ち点とを結ぶ線分の角度を基準角度βに代入する。
【００９２】
Ｓ１１５では、ＣＰＵ６１は、基準角度βと基準角度αとがほぼ同じか否かを判断する。ＣＰＵ６１は、基準角度βと基準角度αとがほぼ同じと判断したことに応じて（Ｓ１１５：ＹＥＳ）、Ｓ１２１へ処理を進める。ＣＰＵ６１は、基準角度βと基準角度αとが同じではないと判断したことに応じて（Ｓ１１５：ＮＯ）、Ｓ１２３へ処理を進める。「ほぼ同じ」とは、例えば、±５°程度の所定の誤差を許容する。
【００９３】
Ｓ１２１では、ＣＰＵ６１は、Ｓ１１１によって算出された連続する２つの針落ち点の間を結ぶ線とＸ方向とがなす角度αに基づいて、縫製時間に寄与する値を算出する。具体的には、ＣＰＵ６１は、連続する２つの針落ち点の間を結ぶ線とＸ方向とがなす角度αが連続して同じ角度となる連続数ｎＳｔを縫製時間に寄与する値として算出する。連続数ｎＳｔを算出するために、ＣＰＵ６１は、連続数ｎＳｔに１を加算する。ＣＰＵ６１は、Ｓ１２１終了後、Ｓ１０７へ処理を戻す。
【００９４】
Ｓ１２３では、ＣＰＵ６１は、Ｓ１２１が算出した連続数ｎＳｔが基準数ＳＳｔより大きいか否かを判断する。ＣＰＵ６１は、連続数ｎＳｔが基準数ＳＳｔより大きいと判断したことに応じて（Ｓ１２３：ＹＥＳ）、Ｓ１２４へ処理を進める。ＣＰＵ６１は、連続数ｎＳｔが基準数ＳＳｔより小さいと判断したことに応じて（Ｓ１２３：ＮＯ）、Ｓ１０７へ処理を戻す。基準数ＳＳｔは、刺繍枠１０９を回転させる角度が大きくても、刺繍模様９９の縫製時間を短縮することができるように予め設定された数である。例えば、基準数ＳＳｔ＝２０とするが、適宜設定すればよい。
【００９５】
Ｓ１２４では、ＣＰＵ６１は、Ｓ１２３で連続数ｎＳｔが基準数ＳＳｔより大きいと判断したことに応じて、連続して同じとなる角度αを刺繍模様９９とＸ方向との相対的な角度αｋとして決定する。具体的には、ＣＰＵ６１は、角度αｋにαを代入する。
【００９６】
Ｓ１２５では、ＣＰＵ６１は、刺繍データ２００のうち、回転開始位置Ｉｄｘ番目のデータとして枠回転指示データＲｋを追加する。枠回転指示データＲｋは、枠回転指示コードと、角度αｋと、を含む。ＣＰＵ６１は、刺繍データ２００に枠回転指示データＲｋを追加したデータを、枠回転刺繍データ６００としてＥＥＰＲＯＭ６４に記憶させる。具体的には、ｉ＝１番目のデータに枠回転指示データＲ１を枠回転刺繍データ６００として記憶させる。
【００９７】
Ｓ１２７では、ＣＰＵ６１は、Ｉｄｘ＋１番目からｊ番目の縫製データＰＩｄｘ＋１〜Ｐｊを基準角度αに回転させたデータに変換する。具体的には、Ｉｄｘ＋１＝２、ｊ＝１０１の場合、刺繍データ２００の縫製データＰ１〜Ｐ１００を刺繍枠１０９の回転中心Ｓを中心として角度α１に回転させた縫製データＴ１〜Ｔ１００に変換する。同様の処理を繰り返し、ＣＰＵ６１は、刺繍データ２００の縫製データＰ１０１〜Ｐ２５０を、枠回転刺繍データ６００の枠回転指示データＲ２、縫製データＴ１０１〜Ｔ２００、枠回転指示データＲ３、縫製データＴ２０１〜Ｔ２５０に変換する。
【００９８】
Ｓ１２８では、ＣＰＵ６１は、回転開始位置Ｉｄｘにｊを代入する。ＣＰＵ６１は、連続数ｎＳｔを初期化する。ＣＰＵ６１は、基準角度αに基準角度βを代入する。ＣＰＵ６１は、Ｓ１２８終了後、Ｓ１２９へ処理を進める。
【００９９】
Ｓ１２９では、ＣＰＵ６１は、刺繍模様９９を縫製する間の刺繍枠１０９の回転回数をカウントするために、回転回数を示す変数ｋに１を加算する。ＣＰＵ６１は、Ｓ１２９終了後、Ｓ１０７へ処理を戻す。
【０１００】
［刺繍枠１０９を回転して縫製する処理］
図１３を参照して、刺繍枠１０９を回転して縫製する処理Ｓ２９について詳細に説明する。ＣＰＵ６１は、Ｓ２９の処理が開始された後、図１３に示すＳ１３１へ処理を進める。
【０１０１】
Ｓ１３１では、ＣＰＵ６１は、変数ｉを初期化する。具体的には、ＣＰＵ６１は、変数ｉに１を代入する。
【０１０２】
Ｓ１３２では、ＣＰＵ６１は、ＥＥＰＲＯＭ６４から枠回転刺繍データ６００を読み出す。
【０１０３】
Ｓ１３３では、ＣＰＵ６１は、枠回転刺繍データ６００のｉ番目のデータは、枠回転指示データか否かを判断する。ＣＰＵ６１は、ｉ番目のデータは、枠回転指示データであると判断したことに応じて（Ｓ１３３：ＹＥＳ）、Ｓ１３５へ処理を進める。ＣＰＵ６１は、ｉ番目のデータは、枠回転指示データではないと判断したことに応じて（Ｓ１３３：ＮＯ）、Ｓ１３９へ処理を進める。
【０１０４】
Ｓ１３５では、Ｓ１３３でｉ番目のデータは、枠回転指示データであると判断したことに応じて、刺繍枠１０９をＳ２７によって決定された相対的な角度に回転させる。即ち、ＣＰＵ６１は、刺繍枠１０９を枠回転指示データＲｋに記憶される基準角度αｋに回転させる。具体的には、ＣＰＵ６１は、枠回転刺繍データ６００のｉ番目のデータに対応する枠回転指示データＲｋを読み出す。ＣＰＵ６１は、読み出した枠回転指示データＲｋの基準角度αｋと現在の角度との差分量だけ、外枠９４のモータ９４７を回転させる。また、特開２０１３―７０８７５号公報に記載のように、刺繍枠１０９に取り付けられた標識に基づいて、外枠９４に対する中枠９２の現在の角度を検出し、検出された角度と基準角度αｋとの差分の回転量、モータ９４７を回転させるようにしてもよい。
【０１０５】
Ｓ１３７では、ＣＰＵ６１は、枠回転刺繍データ６００のすべてのデータを処理するために、刺繍データ６００のデータ番号を示す変数ｉに１を加算する。ＣＰＵ６１は、Ｓ１３７終了後、Ｓ１３３へ処理を戻す。
【０１０６】
Ｓ１３９では、ＣＰＵ６１は、枠回転刺繍データ６００のｉ番目のデータは、縫製データか否かを判断する。ＣＰＵ６１は、ｉ番目のデータは、縫製データであると判断したことに応じて（Ｓ１３９：ＹＥＳ）、Ｓ１４１へ処理を進める。ＣＰＵ６１は、ｉ番目のデータは、縫製データではないと判断したことに応じて（Ｓ１３９：ＮＯ）、Ｓ１４３へ処理を進める。
【０１０７】
Ｓ１４１では、ＣＰＵ６１は、Ｓ１３５で刺繍枠１０９を回転させた後に、刺繍データ６００の縫製データＴｊに従って、Ｘ軸移動機構及びＹ軸移動機構を駆動して刺繍枠１０９を移動させて縫製する。具体的には、刺繍枠１０９をｊ番目の縫製データＰｊの針落ち点に移動させる制御信号を駆動回路８５、８６に向けて出力する。ＣＰＵ６１からの制御信号を受け付けて、各駆動回路８５、８６は、Ｘ軸モータ８３及びＹ軸モータ８４をｊ−１番目の縫製データＰｊ−１の針落ち点からｊ番目の縫製データＰｊの針落ち点に移動させるための回転量、回転させる。さらに、ＣＰＵ６１は、１つの縫目を形成する制御信号を駆動回路７２に出力する。ＣＰＵ６１からの制御信号を受け付けて、駆動回路７２は、針棒６を一往復させる分だけ、ミシンモータ７９を回転させる。ＣＰＵ６１は、Ｓ１４１終了後、Ｓ１３７へ処理を戻す。
【０１０８】
Ｓ１４３では、ＣＰＵ６１は、ｉ番目のデータが、縫製終了データか否かを判断する。ＣＰＵ６１は、ｉ番目のデータが、縫製終了データであると判断したことに応じて（Ｓ１４３：ＹＥＳ）、刺繍枠１０９を回転して縫製する処理Ｓ２９を終了し、図８に示す刺繍処理を終了する。ＣＰＵ６１は、ｉ番目のデータが、縫製終了データではないと判断したことに応じて（Ｓ１４３：ＮＯ）、Ｓ１３７へ処理を戻す。
【０１０９】
［刺繍模様９９の縫製手順］
図１４を参照して、「Ａ」形状を有する刺繍模様９９を、刺繍枠１０９を回転させて刺繍する処理Ｓ２９について具体的に説明する。ＣＰＵ６１は、変数ｉを初期化して、ＥＥＰＲＯＭ６４から枠回転刺繍データ６００を読み出す。前述したように、「Ａ」の刺繍模様９９は、左傾斜部分「／」と、右傾斜部分「＼」と、横直線部分「―」との３つのブロックからなり、夫々サテン模様で縫製される。以下、左傾斜部分「／」を第１ブロック２１０、右傾斜部分「＼」を第２ブロック２２０、横直線部分「―」を第３ブロック２３０と称す。
【０１１０】
縫製データＴ１〜Ｔ１００からなる第１ブロック２１０は、＋８０°の角度に延びている。ここで、刺繍枠１０９を所定距離だけ移動させる場合に、最も短時間で移動させることができる角度は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動する＋４５°である。従って、現在の角度が０°であるため、ｉ＝１番目のデータである枠回転指示データＲ１の基準角度α１は、４５°―８０°＝―３５°である。
【０１１１】
ｉ＝１の場合、Ｓ１３３では、ＣＰＵ６１は、枠回転刺繍データ６００のｉ＝１番目のデータが枠回転指示データＲ１であるため、Ｓ１３５へ処理を進める。Ｓ１３５では、枠回転指示データＲ１の基準角度α１＝−３５°であるため、刺繍枠１０９を刺繍枠１０９の中心Ｓを回転中心として−３５°回転させる。Ｓ１３７では、ＣＰＵ６１は、変数ｉ＝１に１を加算し、変数ｉ＝２となる。
【０１１２】
ｉ＝２の場合、Ｓ１３３では、ＣＰＵ６１は、枠回転刺繍データ６００の２番目のデータは枠回転指示データではなく（Ｓ１３３：ＮＯ）、縫製データであるため（Ｓ１３９：ＹＥＳ）、Ｓ１４１へ処理を進める。Ｓ１４１では、ＣＰＵ６１は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動させて刺繍枠１０９をＸ方向に対して４５°の角度に移動させて、縫製データＴ１を縫製する。Ｓ１３７では、ＣＰＵ６１は、変数ｉ＝２に１を加算し、変数ｉ＝３となる。以下、縫製データＴ２〜Ｔ１００まで、Ｓ１３３、Ｓ１３９、Ｓ１４１、Ｓ１３７を繰り返し、第１ブロック２１０を縫製する。
【０１１３】
縫製データＴ１０１〜Ｔ２００からなる第２ブロック２２０は、−１１５°の角度に延びている。ここで、刺繍枠１０９を所定距離だけ移動させる場合に、最も短時間で移動させることができる角度は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動する＋４５°である。従って、現在の角度が角度α１＝−３５°であるため、ｉ＝１０２番目のデータである枠回転指示データＲ２の基準角度α２は、―３５°＋｛４５°―（―１１５°）｝＝＋１２５°である。
【０１１４】
ｉ＝１０２の場合、Ｓ１３３では、ＣＰＵ６１は、枠回転刺繍データ６００のｉ＝１０２番目のデータが枠回転指示データＲ２であるため、Ｓ１３５へ処理を進める。Ｓ１３５では、枠回転指示データＲ２の基準角度α２＝＋１２５°であるため、刺繍枠１０９の中心Ｓを回転中心として刺繍枠１０９を＋１２５°に回転させる。
【０１１５】
ｉ＝１０３〜２０２の場合、Ｓ１４１では、ＣＰＵ６１は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動させて刺繍枠１０９を４５°の角度に移動させて、第２ブロック２２０を縫製する。
【０１１６】
縫製データＴ２０１〜Ｔ２５０からなる第３ブロック２３０は、＋１２５°の角度に延びている。ここで、刺繍枠１０９を所定距離だけ移動させる場合に、最も短時間で移動させることができる角度は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動する＋４５°である。従って、現在の角度が角度α２＝＋１２５°であるため、ｉ＝２０３番目のデータである枠回転指示データＲ３の基準角度α３は、＋１２５°＋｛４５°―１２５°｝＝＋４５°である。
【０１１７】
ｉ＝２０３の場合、Ｓ１３３では、ＣＰＵ６１は、枠回転刺繍データ６００のｉ＝２０３番目のデータが枠回転指示データＲ３であるため、Ｓ１３５へ処理を進める。Ｓ１３５では、枠回転指示データＲ３の基準角度α３＝＋４５°であるため、刺繍枠１０９の中心Ｓを回転中心として刺繍枠１０９を＋４５°回転させる。
【０１１８】
ｉ＝２０４〜２５３の場合、Ｓ１３３では、ＣＰＵ６１は、Ｘ軸移動機構及びＹ軸移動機構を同時に駆動させて刺繍枠１０９を４５°の角度に移動させて、第３ブロック２３０を縫製する。このようにして、刺繍模様９９が縫製される。
【０１１９】
［本実施形態の効果］
刺繍枠１０９Ｂをミシン１０１に装着した場合を考える。Ｓ２１では、ＣＰＵ６１は、刺繍模様９９を縫製する際の刺繍模様の角度ｒ（角度ｒは０°〜３５９°）における縫製時間を夫々算出し、算出された各縫製時間を比較することにより、最短時間で縫製できる刺繍模様の角度を決定することができる。その結果、ミシン１０１は、決定された角度で刺繍模様を縫製することによって、刺繍模様を最短の縫製時間で縫製することができる。
【０１２０】
Ｘ軸移動機構及びＹ軸移動機構は同時に駆動可能である。また、Ｘ軸移動機構によって移動される刺繍枠１０９Ｂの移動速度と、Ｙ軸移動機構によって移動される刺繍枠１０９Ｂの移動速度は、同じである。従って、Ｓ８３では、ＣＰＵ６１は、針落ち点間の刺繍枠１０９Ｂの移動方向であるＸ方向及びＹ方向のうちいずれか長い方の距離ｄを算出するだけで、１縫目形成時間ｃｕｒＴｉｍｅを算出することができる。
【０１２１】
刺繍枠１０９をミシン１０１に装着した場合を考える。刺繍枠１０９を回転させる角度が大きく、刺繍枠１０９を最も短時間で移動させることができる＋４５°の角度で縫製する針落ち点の連続数ｎＳｔが少ない場合には、刺繍枠１０９を回転させない方が縫製時間が短くなることもある。従って、Ｓ１２３で連続数ｎＳｔが基準数ＳＳｔより大きいか否かを判断することによって、刺繍枠１０９を回転させて縫製時間を短くできる場合のみ、刺繍枠１０９を回転させる。
【０１２２】
以上のように、刺繍模様９９の縫製に要する縫製時間を短くする方法は、刺繍枠を回転させる方法と、刺繍模様９９の縫製データを回転させる方法がある。刺繍枠１０９を回転させる場合、縫製途中で角度を変更できるため、刺繍模様９９の縫製データを回転させる方法よりも縫製時間を更に短くすることができる。従って、Ｓ１３では、刺繍枠が回転可能であると判断した場合、ミシン１０１は、刺繍枠１０９を回転させる方法を実行する。その結果、ミシン１０１は、更に短い縫製時間で、刺繍模様９９を縫製することができる。
【０１２３】
［変形例］
本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の形態で実施することができる。
【０１２４】
Ｓ１２３では、ＣＰＵ６１は、縫製時間に寄与する値としての連続数ｎＳｔが基準数ＳＳｔより大きいか否かを判断することによって、刺繍枠１０９を回転させる角度αｋを決定した。しかしながら、縫製時間に寄与する値は、各針落ち点間の距離又は方向であってもよい。
【０１２５】
また、ＣＰＵ６１は、刺繍枠１０９を回転させるのに要する時間を考慮して、刺繍枠１０９を回転させる角度αｋを決定してもよい。刺繍枠１０９を回転させるのに要する時間を算出するために、ＣＰＵ６１は、現在の刺繍枠１０９の角度から、刺繍枠１０９を角度αｋに回転させる時間を算出する。次に、ＣＰＵ６１は、刺繍枠１０９を角度αｋに回転させた後の、連続数ｎＳｔ個のＩｄｘからｊ番目の縫製データの針落ち点を縫製する時間を算出する。そして、ＣＰＵ６１は、刺繍枠１０９を角度αｋに回転させるのに要する時間と、Ｉｄｘ番目からｊ番目の縫製データの針落ち点を縫製する時間とを加算した時間を、刺繍枠１０９を回転させた場合の時間として算出する。さらに、ＣＰＵ６１は、刺繍枠１０９を回転させずに、元の角度でＩｄｘからｊ番目の針落ち点を縫製した時間を、刺繍枠１０９を回転させない場合の時間として算出する。このようにして、ＣＰＵ６１は、刺繍枠１０９を回転させた場合の時間と、刺繍枠１０９を回転させない場合の時間と、を比較し、刺繍枠１０９を回転させるか否かを決定する。
【０１２６】
ＣＰＵ６１は、Ｓ１３にて刺繍枠が回転可能であった場合、刺繍枠を回転させて刺繍模様９９を縫製する処理を実行したが、刺繍模様９９を回転させて刺繍模様９９を縫製する処理を実行してもよい。
【０１２７】
本実施形態は、本縫いミシン１０１であったが、多針ミシンであってもよい。
【０１２８】
ＣＰＵ６１が、ＲＯＭ６２に記憶された刺繍処理プログラム６２１を実行することで、ミシン１０１では、各種の機能が実現される。ＣＰＵ６１は、ミシン１０１が備える各種の機能手段となる制御部として特定することもできる。なお、刺繍処理プログラム６２１は、ミシン１０１の工場出荷時にＲＯＭ６２に書き込まれる。ＲＯＭ６２は、コンピュータで読み取り可能な記憶装置の一例である。ＲＯＭ６２の代わりに、例えば、ＨＤＤ，ＲＡＭなどが記憶装置として利用されて良い。また、この場合の記憶装置は、非一時的な記憶媒体であってよい。非一時的な記憶媒体は、データを記憶する時間の長さに関わらず、データを留めておくことが可能なものである。また、刺繍処理プログラム６２１は、外部のサーバ等の記憶媒体に保存されていてもよい。刺繍処理プログラム６２１がサーバに記憶される場合、刺繍処理プログラム６２１は、接続インターフェースを介して外部のサーバなどからダウンロードされ、ＲＯＭ６２に適宜記憶される。この場合、刺繍処理プログラム６２１は、コンピュータで読み取り可能な一時的な記憶媒体（例えば、伝送信号）として、外部のサーバなどからミシン１０１に送信される。ミシン１０１が、刺繍データ処理装置として機能していたが、例えばミシン１０１の外部のデバイスであるパーソナルコンピュータ又は携帯端末を刺繍データ処理装置として機能させてもよい。また、刺繍データ処理プログラム６２２は、コンピュータとしてのミシン１０１に刺繍データ処理を実行させていたが、ミシン１０１の外部のデバイスであるコンピュータとしてのＰＣに刺繍データ処理を実行させてもよい。
【０１２９】
本実施形態では、刺繍模様９９の縫製時間を算出する手段と、縫製時間が最も短い刺繍模様９９の角度を決定する手段と、縫製時間が最も短い角度を記憶させる手段と、をＣＰＵ６１が実行するソフトウェアにより実現したが、各手段をハードウェアにより実現してもよい。
【０１３０】
〔本発明と実施例との対応関係〕
本実施形態におけるＥＥＰＲＯＭ６４は、本発明における記憶部の一例である。
本実施形態における刺繍データ２００、座標回転刺繍データ５００、及び枠回転刺繍データ６００は、本発明における刺繍データの一例である。
本実施形態における刺繍模様９９は、本発明における刺繍模様の一例である。
本実施形態における刺繍枠１０９、１０９Ｂは、本発明における刺繍枠の一例である。
本実施形態におけるＸ方向、Ｙ方向は、順に本発明における第１方向、第２方向の一例である。
本実施形態におけるＸ軸移動機構、Ｙ軸移動機構は、順に本発明における第１移動機構、第２移動機構の一例である。
本実施形態における縫製時間ｔｏｔａｌＴｉｍｅは、本発明における「刺繍模様を縫製する際にかかる縫製時間」の一例である。
本実施形態における連続数ｎＳｔは、本発明における縫製時間に寄与する値の一例である。
本実施形態における縫製時間が最も短い角度ｒ０、及び角度αｋは、本発明における相対的な角度の一例である。
本実施形態における角度ｒは、本発明における複数の異なる角度の一例である。
本実施形態における１縫目形成時間ｃｕｒＴｉｍｅは、本発明における１縫目形成時間の一例である。
本実施形態におけるＸ方向の移動量｜Ｘｊ＋１―Ｘｊ｜、Ｙ方向の移動量｜Ｙｊ＋１―Ｙｊ｜は、順に本発明における第１移動量、第２移動量の一例である。
本実施形態におけるミシン１０１は、本発明における刺繍データ処理装置、及びミシンの一例である。
本実施形態における角度αは、本発明における「２つの針落ち点の間を結ぶ線と第１方向とがなす角度」の一例である。
本実施形態における連続数ｎＳｔは、本発明における針落ち点の連続数の一例である。
本実施形態における基準数ＳＳｔは、本発明における所定の基準数の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１７、Ｓ２９は、本発明における第１縫製手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ２１、Ｓ２７は、本発明における第１算出手段、第１算出ステップの一例である。
本実施形態におけるＣＰＵ６１、及びＳ２１、Ｓ２７は、本発明における第１決定手段、第１決定ステップの一例である。
本実施形態におけるＣＰＵ６１、及びＳ２３は、本発明における模様回転制御手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ２３、Ｓ１２５、Ｓ１２７は、本発明における記憶制御手段、記憶制御ステップの一例である。
本実施形態におけるＣＰＵ６１、及びＳ４３は、本発明における第２算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ４５は、本発明における比較手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ４８は、本発明における第２決定手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ６５は、本発明における第３算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ６７は、本発明における第４算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ７３は、本発明における第５算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ７５は、本発明における第６算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ７７は、本発明における第１判断手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ７９、Ｓ８３は、本発明における第１加算手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ８１、Ｓ８３は、本発明における第２加算手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１１１は、本発明における第７算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１２１は、本発明における第８算出手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１２３は、本発明における第２判断手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１２４は、本発明における第３決定手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１３は、本発明における第３判断手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１３５は、本発明における枠回転制御手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１４１は、本発明における第２縫製手段の一例である。
本実施形態におけるＣＰＵ６１、及びＳ１７は、本発明における第３縫製手段の一例である。
本実施形態における刺繍データ処理プログラム６２２は、本発明における刺繍データ処理プログラムの一例である。
【符号の説明】
【０１３１】
１０１  ミシン
１０９  刺繍枠  
【図１】
2015006284.tif 000003
【図２】
2015006284.tif 000004
【図３】
2015006284.tif 000005
【図４】
2015006284.tif 000006
【図５】
2015006284.tif 000007
【図６】
2015006284.tif 000008
【図７】
2015006284.tif 000009
【図８】
2015006284.tif 000010
【図９】
2015006284.tif 000011
【図１０】
2015006284.tif 000012
【図１１】
2015006284.tif 000013
【図１２】
2015006284.tif 000014
【図１３】
2015006284.tif 000015
【図１４】
2015006284.tif 000016