本発明の実施形態を、図面を参照して説明する。図1から図3を参照して、移動部40が装着されたミシン1の物理的構成を説明する。図1の上下方向、右下側、左上側、左下側、及び右上側が、各々、移動部40が装着されたミシン1の上下方向、前方、後方、左方、及び右方である。ベッド部11及びアーム部13の長手方向がミシン1の左右方向である。脚柱部12が配置されている側が右側である。脚柱部12の伸長方向がミシン1の上下方向である。
図1に示すように、ミシン1は、ベッド部11、脚柱部12、アーム部13、及び頭部14を備える。ベッド部11は、左右方向に延びるミシン1の土台部である。脚柱部12は、ベッド部11の右端部から上方へ立設されている。アーム部13は、ベッド部11に対向して脚柱部12の上端から左方へ延びる。頭部14は、アーム部13の左先端部に連結する部位である。
ベッド部11は、その上面に針板(図示略)を備える。針板は、後述する縫針7が挿通可能な針穴3(図6、図7参照)を有する。ミシン1は、ベッド部11内に、図3に示す送り歯24、送り機構23、及び釜機構(図示略)等を備える。送り歯24は、刺繍縫製ではない通常の縫製時に、送り機構23によって駆動され、被縫製物を所定の移動量で移動させる。釜機構は、針板の下方において上糸(図示略)を下糸(図示略)に絡ませる。
脚柱部12の前面には、LCD15が設けられている。LCD15は、コマンド、イラスト、設定値、及びメッセージ等の様々な項目を含む画像を表示する。LCD15の前面側には、押圧された位置を検出可能なタッチパネル26が設けられている。ユーザが、指又はスタイラスペン(図示略)を用いてタッチパネル26の押圧操作を行うと、タッチパネル26は押圧位置を検出する。ミシン1の制御部2(図3参照)は、検出した押圧位置に基づき、画像中で選択された項目を認識する。以下、ユーザによるタッチパネル26の押圧操作を、パネル操作と言う。ユーザはパネル操作によって、縫製したい刺繍模様及び実行すべきコマンド等を選択できる。脚柱部12は、内部にミシンモータ33(図3参照)を備える。
アーム部13の上部には、開閉可能なカバー16が設けられている。図1は、カバー16が開かれた状態を示す。カバー16が閉じられた場合のカバー16の下方(つまり、アーム部13の内部)には、糸収容部18が設けられている。糸収容部18は、上糸が巻回された糸駒20を収容可能である。アーム部13内部には、左右方向に延びる主軸34(図3参照)が設けられている。主軸34は、ミシンモータ33により回転駆動される。アーム部13の前面左下部には、スタート/ストップスイッチ29を含む各種スイッチが設けられている。スタート/ストップスイッチ29は、ミシン1の運転を開始又は停止させる、即ち、縫製開始又は停止の指示を入力するのに使用される。
図2及び図3に示すように、頭部14には、縫製部30、押え棒8、及びプロジェクタ58等が設けられる。縫製部30は、針棒6を有し、針棒6を上下動させて被縫製物Cに縫目を形成するよう構成されている。針棒6は、針穴3の上方に位置する。針棒6の下端には、縫針7が着脱可能に装着される。縫製部30は更に、主軸34と、主軸34の回転により、針棒6を上下方向に駆動させる針棒上下動機構55とを有する。押え棒8の下端部には、押え足9が着脱可能に取り付けられる。押え足9は、押え棒8とともに、押え足9が被縫製物Cを押える下降位置と、下降位置から上方に退避した(被縫製物Cから離れた)上昇位置との間で移動可能である。押え足9は、針棒6の上下動と連動して、間欠的に被縫製物Cを下方へ押圧する。
プロジェクタ58は、ベッド部11に向けてカラー画像を投影するよう構成されている。プロジェクタ58は、筒状の筐体と、筐体内に収容された液晶パネル59、光源56(図3参照)、及び結像レンズ(図示略)とを備える。筐体は頭部14内の機枠に固定される。光源56はLEDである。液晶パネル59は、光源56からの光を変調し、投影画像を表す画像データに基づき、投影画像の画像光を形成する。結像レンズは、液晶パネル59によって形成された画像光を、ホルダ43に装着された刺繍枠50が保持する被縫製物C上に結像する。投影画像が投影される領域を投影領域RCという。投影領域RCは、針棒6の下方、つまり針穴3に対応する位置を含む。投影領域RCは、プロジェクタ58の取付位置、取付姿勢、結像レンズから被縫製物Cの上面までの距離等に応じて一意に定まる領域である。本例のプロジェクタ58は、被縫製物C(ベッド部11)に対して斜め上方から投影画像を投影するので、投影画像には画像の歪みを補正する処理がされる。本例のプロジェクタ58の投影領域RCの大きさ(例えば矩形領域の長辺と短辺とのドット数)は予めフラッシュメモリ84に記憶されている。
移動部40は、ミシン1のベッド部11に対して取り外し可能に装着される。被縫製物Cを保持する刺繍枠50を取り外し可能に装着するホルダ43を備え、ホルダ43を針棒6に対し移動させるよう構成されている。移動部40は、刺繍枠50を含む複数の刺繍枠の内から選択された1つを装着可能である。刺繍枠50は、第一枠51、第二枠52を備え、第一枠51と第二枠52とでシート状の被縫製物C(例えば、加工布)を挟持できる。移動部40は、本体部41及びキャリッジ42を備える。キャリッジ42は、ホルダ43、Y移動機構47、及びYモータ45を備える。ホルダ43は、キャリッジ42の右側面に設けられている。キャリッジ42が有するホルダ43は、刺繍枠50を着脱可能に装着する。Y移動機構47は、ホルダ43を前後方向(Y方向)に移動させる。Yモータ45は、Y移動機構47を駆動する。本体部41は、図3に示すX移動機構46及びXモータ44を内部に備える。X移動機構46は、キャリッジ42を左右方向(X方向)に移動させる。Xモータ44は、X移動機構46を駆動する。刺繍枠50を用いた刺繍縫製時には、移動部40は、キャリッジ42のホルダ43に装着された刺繍枠50を、固有のXY座標系(刺繍座標系)で示される位置に移動可能である。
図3を参照して、ミシン1の電気的構成を説明する。ミシン1は、CPU81、ROM82、RAM83、フラッシュメモリ84、及び入出力インターフェイス(I/O)85を備えている。CPU81はバス86を介して、ROM82、RAM83、フラッシュメモリ84、及び入出力I/O85と接続されている。
CPU81は、ミシン1の主制御を司り、ROM82に記憶された各種プログラムに従って、縫製に関わる各種演算及び処理を実行する。ROM82は、図示しないが、プログラム記憶エリアを含む複数の記憶エリアを備える。プログラム記憶エリアには、ミシン1を動作させるための各種プログラム(例えば、後述のメイン処理を実行させるためのプログラム)が記憶されている。
RAM83には、CPU81が演算処理した演算結果等を収容する記憶エリアが設けられる。フラッシュメモリ84には、ミシン1が各種処理を実行するための各種パラメータ等が記憶されている。フラッシュメモリ84は、ミシン1で縫製可能な刺繍模様を縫製するための模様データを、複数の刺繍模様の各々について記憶する。模様データは、色データと、座標データとを含む。色データは、刺繍模様の縫製に用いられる糸の色を示すデータである。座標データは、色データと対応付けられた、刺繍模様に含まれる縫目の形成位置(針落ち位置)を刺繍座標系の座標で示すデータである。即ち座標データは針落ち位置毎の複数の座標を表すデータ群を含む。フラッシュメモリ84は、更に、ホルダ43に装着可能な刺繍枠の種類と、縫製領域との対応を記憶する。縫製領域は、ミシン1のホルダ43に装着された刺繍枠の内側に設定される縫製可能な領域である。本例のフラッシュメモリ84は更に、刺繍座標系の座標と、プロジェクタ58の投影画像の座標系の座標とを対応付ける変数を記憶する。このためミシン1は、模様データに基づき、投影座標系の座標を特定する処理を実行可能である。入出力I/O85には、駆動回路91から96、タッチパネル26、スタート/ストップスイッチ29、プロジェクタ58の光源56、及び検出器35が接続されている。検出器35は、刺繍枠が移動部40に装着されたことを検出し、刺繍枠の種類に応じた検出結果を出力するよう構成されている。本例の検出器35は、複数の機械スイッチのONとOFFの組合せに応じて、刺繍枠の種類を検出する。光源56はCPU81からの制御信号に従って点灯し、液晶パネル59に表示される投影画像をベッド部11上で移動される被縫製物上に投影する。
駆動回路91には、ミシンモータ33が接続されている。駆動回路91は、CPU81からの制御信号に従って、ミシンモータ33を駆動する。ミシンモータ33の駆動に伴い、ミシン1の主軸34を介して針棒上下動機構55が駆動され、針棒6が上下動する。駆動回路92には、送り量調整モータ22が接続されている。駆動回路93は、CPU81からの制御信号に従ってLCD15を駆動することで、LCD15に画像を表示する。駆動回路94には、Xモータ44が接続されている。駆動回路95には、Yモータ45が接続されている。駆動回路94及び95は、各々、CPU81からの制御信号に従って、Xモータ44及びYモータ45を駆動する。Xモータ44及びYモータ45の駆動に伴い、制御信号に応じた移動量だけ、移動部40に装着されている刺繍枠50が左右方向(X方向)及び前後方向(Y方向)に移動する。駆動回路96は、CPU81からの制御信号に従ってプロジェクタ58の液晶パネル59を駆動し、液晶パネル59に投影画像を表示させる。
ミシン1の動作を簡単に説明する。刺繍枠50を用いた刺繍縫製時には、刺繍枠50が移動部40によってX方向及びY方向に移動される処理と併せて、針棒上下動機構55及び釜機構(図示略)が駆動される。これにより、針棒6に装着された縫針7によって、刺繍枠50に保持された被縫製物Cに対して刺繍模様が縫製される。
図4から図10を参照して、ミシン1のメイン処理を説明する。メイン処理では、ユーザからの指示に応じて、刺繍模様の縫製イメージを、プロジェクタ58により投影する処理が実行される。刺繍模様は、例えば、フラッシュメモリ84に記憶された複数種類の模様の中から、ユーザがパネル操作によって選択した模様である。メイン処理は、ユーザが刺繍模様を選択する指示を入力後、パネル操作によりメイン処理を開始する開始指示を入力した場合に起動される。制御部2は開始指示を検出すると、ROM82のプログラム記憶エリアに記憶されたメイン処理を実行するためのプログラムを、RAM83に読み出す。制御部2は、RAM83に読み出したプログラムに含まれる指示に従って、以下のステップを実行する。メイン処理を実行するのに必要な各種パラメータは、フラッシュメモリ84に記憶されている。メイン処理の過程で得られた各種データは、適宜RAM83に記憶される。具体例1として、ユーザにより図5の刺繍模様60が選択された後、開始指示が入力された場合について説明する。刺繍模様60は複数の色の糸で縫製される花束を表す模様である。刺繍模様60は縫製領域Rに収まるが、プロジェクタ58の投影領域RCよりも大きい模様である。具体例2として、ユーザにより図5の刺繍模様68が選択された後、開始指示が入力された場合について説明する。刺繍模様68は単一色の糸で縫製される、星型の図形と円状の図形とを組み合わせた模様である。刺繍模様68は投影領域RCに収まる模様である。具体例1に関するメイン処理と、具体例2に関するメイン処理とは各々異なるタイミングで実行されるが、説明を簡単にするために、並列に説明する。以下の説明では、制御部2の処理対象となる各種画像データを単に、画像又は投影画像と呼ぶ。刺繍枠50の移動は、押え足9が上昇位置に配置された状態で実行される。刺繍模様の縫製は、押え足9が下降位置に配置された状態で実行される。
図4に示すように、制御部2は、初期化処理を実行する(S1)。制御部2は、例えば、各種設定値を初期化する。制御部2は、ホルダ43に装着された刺繍枠50の内側に設定される、投影画像が投影される投影領域RCよりも大きい縫製領域Rを特定する(S2)。制御部2は、例えば、検出器35の出力値に基づき特定される刺繍枠50の種類と、フラッシュメモリ84に記憶された刺繍枠50の種類及び縫製領域の大きさとの対応とに基づき、縫製領域Rの大きさを取得する。縫製領域Rの大きさの取得方法は適宜変更されてよく、例えばユーザが入力した値が取得されてもよい。本例の縫製領域Rは刺繍座標系のX方向及びY方向に延びる矩形状であり、縫製領域Rの大きさは、刺繍座標系のX方向の長さと、Y方向の長さとで表される。
制御部2は選択された刺繍模様と、縫製領域Rに対する刺繍模様の配置とを特定する(S3)。制御部2は、具体例1では刺繍模様60を特定し、具体例2では刺繍模様68を特定する。縫製領域Rに対する刺繍模様の配置はユーザから指定されてもよいし、予め決められた位置でもよい。制御部2は、例えば、縫製領域Rに対する刺繍模様の配置を、縫製領域Rの中心と刺繍模様の中心とを一致させた位置に配置する。具体例1の刺繍模様60の中心66は、刺繍模様60を内包する最小矩形61の中心66ある。最小矩形61は点62から65を頂点とし、X方向及びY方向に延びる辺を有する。
制御部2は、LCD15を制御して、S3で特定した刺繍模様を縫製領域Rに配置した画像をLCD15に表示させる(S4)。図5(A)に示すように、具体例1について、制御部2は、LCD15を制御して、LCD15に画面70を表示する。画面70は模様表示欄71と、入力キー72から76、入力キー群77を含む。模様表示欄71は、縫製領域Rに対応する形状の表示領域を有し、縫製領域Rに対する刺繍模様60の配置を刺繍模様60の縫製イメージで示す。つまり、画面70の模様表示欄71には、縫製領域Rに対する刺繍模様60の配置が、縫製領域Rの中心と刺繍模様60の中心66とを一致させた位置に設定された縫製イメージが表示されている。入力キー72は、刺繍模様60の縫製イメージをプロジェクタ58で表示する指示を入力する場合に使用される。入力キー73は、縫製領域R上の点62から65の位置を順に針棒6の下方に配置する処理を実行する指示を入力する場合に使用される。入力キー74は、刺繍枠50を移動させながら、刺繍模様60の縫製イメージをプロジェクタ58で投影する指示を入力する場合に使用される。入力キー75は、刺繍模様60を所定の針数まで縫製した場合の縫製イメージをプロジェクタ58で投影する指示を入力する場合に使用される。入力キー76は、縫製開始の指示を入力する場合に使用される。入力キー群77は、縫製領域Rに対する刺繍模様60の配置を変更する指示を入力する場合に使用される。画面70は、刺繍模様60の大きさの変更、回転、色の変更等各種編集を指示する入力キーを備えてもよい。図示しないが具体例2についての画面は、具体例1の画面70と、模様表示欄71のみが異なる。図5(B)に示すように、具体例2の模様表示欄71には、縫製領域Rに対する刺繍模様68の配置に応じた、刺繍模様68の縫製イメージが表示される。
制御部2は、入力キー72の選択を検出した場合(S5:YES)、特定処理を実行する(S6)。特定処理は、投影領域RCの大きさに対する刺繍模様60の大きさに応じて、仮想的な縫製領域R内に、針棒6に対する刺繍枠50の位置を決定するための対象領域TRを設定するための処理である。対象領域TRは、刺繍枠50の内側の領域の内の、プロジェクタ58によって投影画像が投影される領域である。つまり、対象領域TRの大きさと形状とは、プロジェクタ58の投影領域RCの大きさと形状と同様である。本例のミシン1では、針棒6に対するプロジェクタ58の投影領域RCが略一定(つまり、一の位置)に設定されている。故にミシン1は、針棒6に対し刺繍枠50を移動させることで、プロジェクタ58によって投影画像が投影される投影領域RCの縫製領域R内の位置を変更できる。つまり、針棒6に対し刺繍枠50を移動させることで、投影領域RCと、縫製領域Rとの相対位置を変更できる。
図6に示すように、特定処理では、制御部2は、投影領域RC内に刺繍模様が収まるかを判断する(S61)。制御部2は、例えば、刺繍模様を内包する最小矩形と、投影領域RCの大きさとを比較して、投影領域RC内に刺繍模様が収まるかを判断する。具体例1では、投影領域RC内に刺繍模様60が収まらない(S61:NO)。この場合制御部2は、所定位置に対象領域TRを設定する(S62)。S6で実行される特定処理での所定位置は、適宜設定されればよく、例えば、対象領域TRの中心が、縫製領域Rの中心と一致する位置である。具体例2では、投影領域RC内に刺繍模様68が収まる(S61:YES)。この場合制御部2は、制御部2は、刺繍模様68全体が対象領域TR内に収まるように、対象領域TRを特定する(S63)。制御部2は、例えば、対象領域TRの基準点(例えば、中心)を、縫製領域Rに配置された刺繍模様68の基準点(例えば、中心)と一致する位置となるように、対象領域TRを特定する。S62又はS63の次に、制御部2は、移動部40を制御して、S62又はS63で設定された対象領域TRが投影領域RCと一致する位置(対象領域TRが、針棒6の下方に位置する所定位置)に刺繍枠50を移動させる(S64)。以上で特定処理を終了させ、処理をメイン処理に戻す。
図4のS6の次に制御部2は、S61と同様に、投影領域RC内にS2で特定された刺繍模様が収まるかを判断する(S8)。具体例1では、投影領域RC内に刺繍模様60が収まらないと判断され(S8:NO)、制御部2は、LCD15を制御して、縫製領域Rに対する対象領域TRの配置を表す図形Zと、縫製領域Rに対して配置された刺繍模様とを重ねた画像をLCD15に表示させる(S9)。
制御部2は、例えば、図5(A)の画面70に替えて画面80をLCD15に表示させ、縫製領域Rに対する対象領域TRの配置を表す図形ZをLCD15に表示させる。画面80は、模様表示欄71、入力キー群77、78、入力キー79、88を含む。模様表示欄71、入力キー群77は、画面70と同様である。画面70の模様表示欄71には、刺繍模様60を表す画像に重ねて図形Zが表示される。図形Zは、赤色の矩形枠状である。図形Zの大きさ及び形状は、対象領域TRの大きさ及び形状に対応し、模様表示欄71上の図形Zの配置は、縫製領域Rに対する対象領域TRの配置に対応する。入力キー群78は、投影画像の背景色を変更する指示を入力するキーである。本例のミシン1は、投影画像の背景色を、黒、灰色、及び白の中から選択可能であり、図5(A)の画面80は投影画像の背景色として白が選択されている状態を示す。入力キー79は、縫製領域Rに配置されている刺繍模様60に対する対象領域TRの配置を変更する指示の入力方法を切り替える指示を入力する場合に使用される。本例のミシン1は、刺繍模様に対する対象領域TRの配置を変更する変更指示を、2種類の方法の何れかで入力可能である。1つ目の方法は、縫製領域Rに配置されている刺繍模様60のLCD15上の位置を固定した状態で、LCD15上の図形Zの配置をパネル操作により変更する方法である。2つ目の方法は、図形ZのLCD15上の位置を固定した状態で、LCD15上の刺繍模様60の配置をパネル操作により変更する方法である。入力キー88は、プロジェクタ58により投影画像を投影する処理を終了し、画面70に戻る指示を入力する場合に使用される。
S8において、具体例2では、投影領域RC内に刺繍模様68が収まると判断され(S8:YES)、制御部2は、図示しないが画面80と同様の画面を表示する。ただし制御部2は、図5(B)の右図に示すように、図形Zを模様表示欄71に表示しない。投影領域RC内に刺繍模様が収まると判断される場合(S8:YES)、又はS9の処理の次に、制御部2は、縫製領域Rに対して配置された刺繍模様の内、対象領域TR内の刺繍模様を表す投影画像を生成する(S10)。具体例1の刺繍模様60は、投影領域RCよりも大きい。制御部2は、刺繍模様60の内の対象領域TR内に配置される部分を表す投影画像P1を生成する。刺繍模様60の内の投影画像P1に含まれる部分は、図5(A)の図形Zで囲まれる部分に対応する。具体例2の刺繍模様68は、投影領域RCよりも小さく、S63で刺繍模様68全体が対象領域TR内に収まるように、対象領域TRが設定されている。制御部2は、刺繍模様68全体を表す投影画像P2を生成する。
制御部2は、S64で刺繍枠50が移動された後、液晶パネル59を制御して、S10で生成された投影画像を、プロジェクタ58に投影させる(S11)。具体例1では、図7(A)に示すように、被縫製物Cに投影画像P1が投影される。具体例2では、図6(A)に示すように、被縫製物Cに投影画像P2が投影される。制御部2は、S64で刺繍枠50が移動された後を含む期間に、S10で生成された投影画像を、プロジェクタ58に投影させればよい。この為、制御部2は、S10で生成された投影画像を、プロジェクタ58に投影させた後、S62又はS63で特定された位置に刺繍枠50を移動させてもよい。
制御部2は、縫製領域Rの内の対象領域TRの配置を指定する指示を取得したかを判断する(S35)。制御部2は、画面80の模様表示欄71がパネル操作され、刺繍模様に対する対象領域TRの配置の変更された場合に、縫製領域Rの内の対象領域TRの配置を指定する指示を取得したと判断する。制御部2は、変更指示の入力方法に応じて、LCD15上の表示位置が固定された刺繍模様に対して、図形Zの表示位置を変更する指示を取得した場合(S35:YES)、又はLCD15上の表示位置が固定された図形Zに対して、刺繍模様の表示位置を変更する指示を取得した場合(S35:YES)、制御部2は、S35で取得された指示に基づき表示位置を変更した場合に、対象領域TRが縫製領域R内に収まるかを判断する(S36)。対象領域TRが縫製領域R内に収まらないと判断される場合に(S36:NO)、制御部2は対象領域TRを縫製領域R内に設定する。本例では制御部2は、対象領域TRが縫製領域R内に収まらないと判断される場合には、S35で取得された指示に基づき、刺繍模様と対象領域TRとの相対位置は変更せず、後述のS42を行う。制御部2は、対象領域TRが縫製領域R内に収まらないと判断される場合に(S36:NO)、S35で取得された指示に基づき、対象領域TRを縫製領域R内となる範囲で、刺繍模様と対象領域TRとの相対位置は変更してもよい。
図5(A)に示す具体例1において、画面80の実線で示す図形Zを、仮想線で示す図形Zの位置に移動するパネル操作が検出された場合(S35:YES)、対象領域TRが縫製領域R内に収まると判断され(S36:YES)、制御部2は、S35で取得された指示に基づき、対象領域TRを特定する(S37)。制御部2は、模様表示欄71に対する図形Zの位置に基づき、縫製領域R内の対象領域TRを特定する。制御部2は、移動部40を制御し、S37で設定された対象領域TRが投影領域RCと一致する位置に刺繍枠50を移動させる(S38)。制御部2はLCD15に表示する図形Zの位置を変更する画像を生成し、LCD15を制御して生成された画像をLCD15に表示させる(S39)。制御部2は、縫製領域Rに対して配置された刺繍模様60の内、S37で特定された対象領域TR内の刺繍模様60を表す投影画像P3を生成する(S40)。図7(B)に示すように、制御部2は、S38で刺繍枠50が移動された後、液晶パネル59を制御して、S40で生成された投影画像P3を、プロジェクタ58に投影させる(S41)。投影画像P3は、刺繍模様60の内の図5(A)の仮想線で示す図形Zで囲まれる部分を表す。図7(A)及び図7(B)に示すように、S35からS41の処理を実行する前と後とで、ベッド部11(針穴3)に対する投影画像の投影位置は変更されていないが、ベッド部11(針穴3)に対する刺繍枠50の位置及び投影画像が表す刺繍模様60の部分が変更されている。
制御部2は、画面80の入力キー88の選択を検出したかを判断し(S54)、入力キー88の選択を検出しない場合には(S54:NO)、処理をS35に戻す。入力キー88の選択が検出された場合には(S54:YES)、制御部2は、プロジェクタ58を制御して、プロジェクタ58による投影画像の投影を終了し(S55)、LCD15を制御して、画面70をLCD15に表示させた後、後述のS56の処理を実行する。
画面80表示中に、画面80の入力キー群77の選択が検出された場合(S35:NO、S42:YES)、制御部2は、S42で取得された指示に基づき、刺繍模様を移動した場合、刺繍模様が縫製領域R内に収まるかを判断する(S43)。刺繍模様が縫製領域R内に収まらないと判断される場合(S43:NO)、制御部2は刺繍模様を縫製領域R内に配置する。本例では制御部2は、S43で指示に基づき移動後の刺繍模様が縫製領域R内に収まらないと判断される場合には(S43:NO)、S42で取得された指示に基づき、刺繍模様と縫製領域Rとの相対位置は変更せず、後述のS48を行う。制御部2は、刺繍模様が縫製領域R内に収まらないと判断される場合に(S43:NO)、S43で取得された指示に基づき、刺繍模様を縫製領域R内となる範囲で刺繍模様と縫製領域Rとの相対位置を変更してもよい。
図5(B)に示す具体例2において、画面80の入力キー群77の選択が検出され、刺繍模様68が実線で示す初期位置に対し仮想線で示す位置に移動する指示が検出された場合(S42:YES)、刺繍模様68が縫製領域R内に収まると判断され(S43:YES)、制御部2は、S42で取得された指示に基づき、対象領域TRを特定する特定処理を実行する(S44)。図6に示すように、S44で実行される場合の特定処理では、投影領域RC内に刺繍模様68が収まると判断され(S61:YES)、制御部2は、刺繍模様68全体が対象領域TR内に収まるように、縫製領域Rに対する対象領域TRを特定する(S63)。S42で取得された指示により、縫製領域Rに対し、刺繍模様68の位置が移動されているので、刺繍模様68の移動に応じて、対象領域TRも変更される。制御部2は、S63で設定された対象領域TRに応じて、移動部40を制御し、対象領域TR例えば図6(A)に示す初期位置から、図6(B)に示す位置に刺繍枠50を移動する(S64)。制御部2は以上で特定処理を終了し、LCD15の模様表示欄71に表示する刺繍模様68の位置を変更する画像を生成し、LCD15を制御して生成された画像をLCD15に表示させる(S45)。制御部2は、縫製領域Rに対して配置された刺繍模様の内、S63で特定された対象領域TR内の刺繍模様68を表す投影画像を生成し(S46)、S64で刺繍枠50が移動された後、液晶パネル59を制御して、S40で生成された投影画像を、プロジェクタ58に投影させる(S47)。図6(A)及び図6(B)に示すように、S42からS47の処理を実行する前と後とで、ベッド部11(針穴3)に対する投影画像P2の投影位置及び投影画像P2が表す刺繍模様60の部分は変更されていないが、ベッド部11(針穴3)に対する刺繍枠50の位置は変更されている。
図5(A)に示す具体例1において、画面80の入力キー群77の選択が検出された場合のS61では、投影領域RC内に刺繍模様60が収まらないと判断され(S61:NO)、制御部2は、所定の位置に対象領域TRを設定する(S62)。S44で実行される場合のS62では、例えば、制御部2は、現在の対象領域TRの配置を変更しない。その場合S64では、制御部2は刺繍枠50を移動せずに、特定処理を終了する。
図5(A)に示す具体例1において、画面80の入力キー群78の選択が検出され、投影画像の背景色を白から黒に変更する指示が取得された場合(S35:NO、S42:NO、S48:YES)、制御部2は、投影画像中の背景色を指定する指示を取得する(S49)。制御部2は、S49で取得された背景色を用いて対象領域TR内の刺繍模様68を表す投影画像P4を生成し(S50)、液晶パネル59を制御してS50で生成された投影画像P4を投影する(S51)。図9に示すように、S51の処理により、背景色が白である投影画像P3から、背景色が黒である投影画像P4に変更される。
制御部2は画面80の入力キー79の選択を検出した場合(S35:NO、S42:NO、S48:NO、S52:YES)、現在設定されている変更指示の入力方法を、前述の2種類の方法の内の他の方法に変更する(S53)。1つ目の方法が設定された場合、制御部2は縫製領域Rに配置されている刺繍模様60のLCD15上の位置の変更を制限し、LCD15上の図形Zの配置の変更を許容する処理を実行する。2つ目の方法が設定された場合、制御部2は図形ZのLCD15上の位置の変更を制限し、LCD15上の刺繍模様60の配置の変更を許容する処理を実行する。入力キー79の選択を検出しない場合(S52:NO)、及びS47、S51、並びにS53の何れかの次に、制御部2は前述のS54を行う。
図4に示すメイン処理において、図5(A)に示す具体例1において、画面70の入力キー73の選択が検出された場合(S5:NO、S12:YES)、制御部2は、縫製領域R内に配置された刺繍模様60を内包する最小矩形61の4つの角部の縫製領域R内の位置を特定する(S13)。制御部2は、例えば、点62から65の刺繍座標系の座標を特定する。制御部2は、S13で特定された4つの角部の縫製領域R内の位置が順に針棒6の下方に位置するように刺繍枠50を移動させる場合の移動部40による刺繍枠50の移動経路を設定する(S14)。制御部2は、S13で特定された4つの角部を順に結ぶ最短の経路を移動経路に設定する。具体的には、図10(A)に示す如く、制御部2は点62を始点として、刺繍模様60の最小矩形61の辺を時計回りに点62から点65を順に結んだ移動経路M1を設定する。制御部2は、S14で設定された移動経路M1に応じて、移動部40を制御し、刺繍枠50を移動させる(S15)。制御部2は、移動部40を制御して、所定の速度で刺繍枠50を移動させ、S14で特定された移動経路M1上の点が順に針棒6の下方に配置させる処理を開始する。刺繍枠50を移動経路M1に沿って移動する処理は、針棒6の下方に移動経路M1の終点(つまり点65)が配置されるまで実行される。
制御部2は、駆動回路94、95の制御信号に基づき、刺繍枠50の現在の位置を特定する(S16)。制御部2は、刺繍枠50の現在の位置に対応する縫製領域R上の投影画像が投影される投影領域RCを、対象領域TRとして特定する(S17)。制御部2は、投影画像を生成中に刺繍枠50が移動されることを考慮して、対象領域TRを特定してもよい。制御部2は、S17で特定された対象領域TR内に配置された部分の刺繍模様60を表す投影画像を生成し(S18)、プロジェクタ58を制御して生成された投影画像を投影する(S19)。制御部2は、S16で特定された位置が、針棒6の下方に移動経路M1の終点が位置する位置かを判断する(S20)。終点ではない場合(S20:NO)、制御部2は処理をS16に戻す。終点である場合(S20:YES)、制御部2は刺繍枠50を移動する処理を停止する(S21)。S15からS21の処理により、ミシン1は、刺繍枠50を所定速度で移動させながら、縫製領域Rに対する刺繍模様の配置にあわせた投影画像を投影できる。
図5(A)に示す具体例1において、画面70の入力キー74の選択が検出された場合(S5:NO、S12:NO、S22:YES)、制御部2は、移動部40により刺繍枠50を針棒6に対して相対的に移動しながら、プロジェクタ58が投影画像を投影することで、刺繍模様60全体を縫製領域Rに対する刺繍模様60の配置に応じた位置に投影する場合の、刺繍枠50の移動経路を設定する(S23、S24)。具体的には、制御部2は、刺繍模様60の最小矩形61を特定し(S23)、刺繍模様60全体が対象領域TR内に順に収まるように刺繍枠50の最短の移動経路M2を設定する。最小矩形61のX方向の長さは、対象領域TRのX方向の長さ以下である。故に制御部2は、例えば、最小矩形61のX方向の中心と、対象領域TRのX方向の中心とを一致させ、最小矩形61の点62、65を結ぶ線分が、図10(B)の実線で示す対象領域TRの前端部に収まる位置から、最小矩形61の点63、64を結ぶ線分が、仮想線で示す対象領域TRの後端部に収まる位置まで、移動経路M2に沿って移動するように、移動経路M2を設定する。
制御部2は、S24で設定された移動経路M2に応じて、移動部40を制御し、刺繍枠50を移動させる(S15)。制御部2は、刺繍枠50の現在の位置を特定して(S16)、特定された現在の位置に応じた対象領域TRを特定する(S17)。制御部2は、S17で特定された対象領域TR内に配置された部分の刺繍模様60を表す投影画像を生成し(S18)、プロジェクタ58を制御して生成された投影画像を投影する(S19)。制御部2は、S16で特定された現在の位置が終点ではない場合(S20:NO)、処理をS16に戻す。現在の位置が終点である場合(S20:YES)、制御部2は刺繍枠50を移動する処理を停止する(S21)。
図5(A)に示す具体例1において、画面70の入力キー75の選択が検出された場合(S5:NO、S12:NO、S22:NO、S25:YES)、制御部2は、刺繍模様を縫製する場合の、縫製開始からの針数を指定する指示を取得する(S26)。針数は、例えば、数値で指定される。制御部2は、刺繍模様60を縫製するための模様データの内の座標データに基づき、S26で取得された針数に対応する縫製領域R上の針落ち位置を特定する(S27)。制御部2は、例えば、図10(C)の点Qの位置をS26で取得された針数に対応する縫製領域R上の針落ち位置として特定する。図10(C)で示すように、制御部2は、S27で特定された位置が、針棒6の下方に配置されるように、対象領域TRを特定する(S28)。制御部2は、S26で取得された針数まで縫製された場合に形成される縫目に対応する部分の模様を特定する(S29)。制御部2は、S26で取得された針数まで縫製された場合の部分模様として、例えば、図10(C)の部分模様67を特定する。部分模様67は刺繍模様60の一部である。制御部2は、移動部40を制御し、S27で特定された位置が、針棒6の下方に配置されるように、刺繍枠50を移動させる(S30)。制御部2は、縫製領域Rに対して配置された刺繍模様60の内、対象領域TR内に配置される、S29で特定された部分模様67を表す投影画像を生成し(S31)、液晶パネル59を制御して生成された投影画像を投影する(S32)。例えば、図10(D)に示す投影画像P5を投影する。
画面70の入力キー75の選択が検出されない場合(S25:NO)、S21又はS32の次に、制御部2は、縫製開始の指示を取得したかを判断する(S56)。制御部2は、画面70の入力キー76の選択が検出された場合、又はスタート/ストップスイッチ29への入力が検出された場合に、縫製開始の指示が入力されたと判断する。縫製開始の指示が取得されていない場合(S56:NO)、制御部2は、処理をS5に戻す。縫製開始の指示が取得された場合(S56:YES)、制御部2は、刺繍模様を、模様表示欄71に表示する配置で縫製するための模様データに従って、縫製部30及び移動部40を制御し、刺繍枠50に保持された被縫製物Cに刺繍模様を縫製する(S57)。制御部2は以上でメイン処理を終了する。
上記実施形態のミシン1において、ベッド部11、移動部40、針棒6、縫製部30、プロジェクタ58、及び制御部2は各々、ベッド部、移動部、針棒、縫製部、プロジェクタ、及び制御部の一例である。S2の処理を実行する制御部2は、本発明の縫製領域特定部の一例である。S3の処理を実行する制御部2は、本発明の模様特定部の一例である。S62、S63、S17、S28、S37の処理を実行する制御部2は、本発明の対象領域特定部の一例である。S64、S15、S30、S38の処理を実行する制御部2は、本発明の移動制御部の一例である。S10、S18、S31、S40、S46、S50の処理を実行する制御部2は、本発明の画像生成部の一例である。S11、S19、S32、S41、S47、S51の処理を実行する制御部2は、本発明の投影制御部の一例である。S35の処理を実行する制御部2は、本発明の指示取得部の一例である。S9の処理を実行する制御部2は、本発明の表示制御部の一例である。S49の処理を実行する制御部2は、本発明の色取得部の一例である。S13の処理を実行する制御部2は、本発明の角部特定部の一例である。S14の処理を実行する制御部2は、本発明の第一設定部の一例である。S24の処理を実行する制御部2は、本発明の第二設定部の一例である。S26の処理を実行する制御部2は、本発明の針数取得部の一例である。S27の処理を実行する制御部2は、本発明の位置特定部の一例である。S29の処理を実行する制御部2は、本発明の部分模様特定部の一例である。
上記実施形態のミシン1は、対象領域TRに応じた位置に刺繍枠50を移動させ、対象領域TR内の刺繍模様を表す投影画像を投影できる。故にミシン1は、刺繍枠50の内側に設定される縫製領域Rが、プロジェクタ58の投影領域RCよりも大きい場合であっても、縫製領域Rに対する刺繍模様の配置を表す画像を従来のミシンよりも適切に投影できる。
刺繍模様60は、投影領域RCよりも大きい。刺繍模様60の縫製イメージを投影する場合、制御部2は、刺繍模様60の内の対象領域TR内に配置される部分を表す投影画像を生成する(例えば、S10)。故にミシン1は縫製領域Rに配置された刺繍模様が投影領域RCよりも大きい場合にも対象領域TRに応じた位置に刺繍枠50を移動させ、対象領域TR内の刺繍模様の一部を表す投影画像を投影できる(例えば、S11)。
縫製領域Rの内の対象領域TRの配置を指定する指示を取得する(S35)。制御部2は、取得された指示に基づき、対象領域TRを特定する(S37)。ミシン1は、ユーザが指定する対象領域TRについて、縫製領域Rに対する刺繍模様の配置に応じて(S37)、刺繍模様を表す投影画像を投影できる(S41)。
ミシン1は、画像を表示するLCD15を備え、制御部2は、縫製領域Rに対する対象領域TRの配置を表す図形Zと、縫製領域Rに対して配置された刺繍模様とを重ねた画像を表示部に表示させる(S9)。制御部2は、図形Zに対する刺繍模様の相対的な配置を変更する変更指示を、対象領域TRを指定する指示として取得する(S35)。ユーザは、縫製領域Rに対する対象領域TRの配置と、プロジェクタ58によって投影されている投影画像との対応を、LCD15を参照することで容易に確認できる。ミシン1は、投影画像が刺繍模様の一部のみを表す場合に、刺繍模様のどの部分を表す投影画像が投影されているかを、LCD15に明示できる。
制御部2は、変更指示として、LCD15上の表示位置が固定された刺繍模様に対して、図形Zの表示位置を変更する指示を取得する(S35)。制御部2は、変更指示として、表示部上の表示位置が固定された図形Zに対して、刺繍模様の表示位置を変更する指示を取得する(S35)。変更指示の入力方法として、何れの方法が設定された場合にも、ミシン1によれば、ユーザはLCD15に表示された図形Zと刺繍模様との相対位置を変更する指示を、LCD15を参照しながら容易に入力できる。
制御部2は、刺繍模様が投影領域RCよりも小さい場合(S8:YES)、図形ZをLCD15に表示せず、刺繍模様全体が対象領域TR内に収まるように、対象領域TRを特定する(S63)。故にミシン1は、刺繍模様の大きさと投影領域RCの大きさとに応じて、図形ZをLCD15に表示するかを切り替えることができる。刺繍模様の大きさが投影領域RCの大きさよりも小さい場合、ミシン1は、投影領域RC内に刺繍模様全体を表す投影画像を投影できる。
制御部2は、S35で取得された指示に基づき、対象領域TRが縫製領域R内に収まらないと判断される場合に(S36:NO)、対象領域TRを縫製領域R内に設定する(S37)。ミシン1は、縫製領域R外となる部分を含む対象領域TRが設定されることを確実に抑制できる。
制御部2は、投影画像中の背景色を指定する指示を取得する(S49)。制御部2は、取得された指示に従い背景色を設定し、対象領域TR内に刺繍模様を表す投影画像を生成する(S50)。ミシン1は、投影画像の背景色を指示に基づき設定できる。ユーザは刺繍枠50に保持された被縫製物Cの色、素材等に応じて、視認しやすい背景色を指定することができる。
制御部2は、刺繍模様を内包する最小矩形の4つの角部の縫製領域R内の位置を特定する(S13)。制御部2は、S13で特定された4つの角部の縫製領域R内の位置が順に針棒6の下方に位置するように刺繍枠50を移動させる場合の移動部40による刺繍枠50の移動経路M1を設定する(S14)。制御部2は、設定された移動経路M1に応じて刺繍枠50を移動させる(S15)。制御部2は、刺繍枠50の現在の位置に応じて(S16)、対象領域TRを特定する(S17)。故にミシン1は、刺繍模様の最小矩形の4つの角部が順に針棒6の下方に位置するよう、刺繍枠50を移動させる場合に、刺繍枠50の位置に応じた刺繍模様を表す投影画像を表示できる。ユーザは投影画像が投影されない比べ、縫製領域Rに対して刺繍模様が配置される範囲及び縫製領域Rに対して刺繍模様がどのように配置されるかを確認しやすい。
制御部2は、移動部40により刺繍枠50を針棒6に対して相対的に移動しながら、プロジェクタ58が投影画像を投影することで、刺繍模様全体を縫製領域Rに対する刺繍模様の配置に応じた位置に投影する場合の、刺繍枠50の移動経路M2を設定する(S24)。制御部2は、S24で設定された移動経路M2に応じて刺繍枠50を移動させる。制御部2は、刺繍枠50の現在の位置に応じて(S16)、対象領域TRを特定する(S17)。ミシン1は移動部40により刺繍枠50を針棒6に対して相対的に移動しながら、プロジェクタ58が投影画像を投影することで、刺繍模様全体を縫製領域Rに対する刺繍模様の配置に応じた位置に投影できる。ユーザは、刺繍模様が投影領域RCよりも大きい場合であっても、刺繍模様の配置に応じた部分模様を表す画像を、実際に刺繍模様を縫製する被縫製物C上に投影させて、刺繍模様の配置及び仕上がりイメージを確認できる。
制御部2は、刺繍模様を縫製する場合の、縫製開始からの針数を指定する指示を取得する(S26)。制御部2は、取得された針数に対する縫製領域R上の位置を特定する(S27)。制御部2は、取得された針数まで縫製された場合に形成される縫目に対応する部分の模様を特定する(S29)。制御部2は、S27で特定された位置が、針棒6の下方に配置されるように、対象領域TRを特定する(S28)。制御部2は、移動部40を制御し、位置特定部によって特定された位置が、針棒6の下方に配置されるように、刺繍枠50を移動させる(S30)。制御部2は、縫製領域Rに対して配置された刺繍模様の内、対象領域TR内の配置される、S29で特定された部分模様を表す投影画像を生成する(S31)。故に、ミシン1は指定された針数に応じた部分模様を表す投影画像を、縫製領域Rに対する刺繍模様の配置に応じて投影できる。ミシン1は、ユーザが、指定された針数に応じた部分模様が、縫製領域R中のどの位置に縫製されるかを容易に確認できる投影画像を投影できる。
本発明のミシンは、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更が加えられてもよい。例えば、以下の変形が適宜加えられてもよい。
(A)刺繍枠を装着可能なミシン1の構成は適宜変更してよい。ミシン1は、工業用ミシン及び多針ミシンであってもよい。移動部40は、針棒6に対してホルダ43を相対的に第一方向と、第一方向に交差する方向に移動できればよい。移動部40は、ミシン1と一体に形成されてもよい。刺繍枠50の形状及び大きさは適宜変更されてよく、例えば、円状、楕円状等であってもよい。入力部は、タッチパネルの他、キーボード、マウス、及びジョイスティック等でもよい。表示部は、画像を表示可能であればよく、例えば、有機ELディスプレイ、プラズマディスプレイ、プラズマチューブアレイディスプレイ、電気泳動等を利用した電子ペーパーディスプレイ等でもよい。プロジェクタの取付位置、投影領域等は適宜変更されてよい。プロジェクタが表示可能な色は変更されてよい。本発明は各種形態で実現可能であり、例えば、ミシンプログラム、ミシンプログラムを記憶した非一時的コンピュータ可読媒体、及び投影方法等の形態で実現されてもよい。
(B)図4のメイン処理を実行させるための指令を含むプログラムは、制御部2がプログラムを実行するまでに、ミシン1の記憶機器に記憶されればよい。従って、プログラムの取得方法、取得経路及びプログラムを記憶する機器の各々は、適宜変更してもよい。制御部2が実行するプログラムは、ケーブル又は無線通信を介して、他の装置から受信し、フラッシュメモリ等の記憶装置に記憶されてもよい。他の装置は、例えば、PC、及びネットワーク網を介して接続されるサーバを含む。
(C)ミシン1のメイン処理の各ステップは、制御部2によって実行される例に限定されず、一部又は全部が他の電子機器(例えば、ASIC)によって実行されてもよい。メイン処理の各ステップは、複数の電子機器(例えば、複数のCPU)によって分散処理されてもよい。メイン処理の各ステップは、必要に応じて順序の変更、ステップの省略、及び追加が可能である。ミシン1上で稼動しているオペレーティングシステム(OS)等が、制御部2からの指令に基づきメイン処理の一部又は全部を行う態様も、本開示の範囲に含まれる。例えば、メイン処理に以下の(C-1)から(C-3)の変更が適宜加えられてもよい
(C-1)刺繍模様は、投影領域よりも小さくてもよい。刺繍模様は、縫製領域よりも大きくてもよい。縫製領域の内の対象領域の配置を指定する指示の取得方法は、ミシン1が備える入力部の構成等に応じて変更されてよい。表示部に表示される画面のレイアウト、入力キーの種類等は適宜変更されてよい。ミシン1は、入力キー72から75、79、及び入力キー群77、78の各々の選択が検出された場合の処理の一部又は全部を実行可能であってもよい。制御部2は、刺繍模様が対象領域内に収まるかによらず、同一の処理を実行してもよい。S49で取得可能な背景色の色は適宜変更されてよい。S36、S43の処理を適宜省略し、制御部2は、対象領域又は刺繍模様が縫製領域外となる位置に移動されることを許容してもよい。
(C-2)対象領域の配置を表す図形の表示方法は適宜変更されてよい。例えば、図形の色、図形を表す線の種類、太さ等は適宜変更されてよい。例えば、制御部2は、刺繍模様の対象領域内となる部分の明度を刺繍模様の対象領域外となる部分の明度よりも高くすることで、刺繍模様の対象領域内となる部分、刺繍模様の対象領域外となる部分とを区別可能に表示してもよい。
(C-3)S14、S24で設定される移動経路は最短経路でなくてもよい。例えば、制御部2は、S24において、縫製領域R全体が順に投影領域内になるように、移動経路を設定してもよい。制御部2は、S18において、投影領域RCのうち縫製領域R内となる領域のみに投影画像を投影してもよい。