本発明を実施するための実施形態について、図1〜図14を参考にして説明する。図1は、本発明の実施形態のミシン1の外観構造を示す正面図である。実施形態のミシン1は、模様縫いやフリーハンド刺繍などを行えるコンピュータミシンである。ミシン1の外観構造は、ベッド部11、脚柱部12、アーム部13、頭部14などで構成されている。ベッド部11の図中の右端から、脚柱部12が上向きに延在している。脚柱部12の上端からベッド部11に離隔並行して、アーム部13が図中の左方に延在している。アーム部13の図中の左端からベッド部11に向けて、頭部14が下向きに延在している。
ベッド部11には、針板112、送り歯113、及び釜が設けられている。ベッド部11の前面に、送り歯113の布送り機能をオン/オフ操作するドロップフィードレバー111が配設されている。ユーザがドロップフィードレバー111を右側に操作すると、送り歯113が上昇して布送り機能が働く。ユーザがドロップフィードレバー111を左側に操作すると、送り歯113が下降して布送り機能が働かなくなくなり、ユーザは自分で自由に縫製布を送ることができる。脚柱部12の下方寄りに、フットコントローラ15を電気接続するためのジャック121が配設されている。脚柱部12の上方寄りに、手回しでゆっくり縫製作業や試し縫いを行えるハンドホイール122が配設されている。
アーム部13の上面に、準備作業でボビンに下糸を巻くための下糸巻き軸131が立設されている。アーム部13の前面の中央上寄りに、3つの選択スイッチ132、133、134が上下に並んで配設されている。上側に配設された模様選択スイッチ132は、模様縫いの模様番号を設定するときに押下する。中間に配設された送り選択スイッチ133は、送り歯113の布送り量を固定値に設定するときに押下する。下側に配設された振れ幅選択スイッチ134は、針棒142の横方向の振れ幅を固定値に設定するときに押下する。各選択スイッチ132、133、134の左側には、それぞれ表示ランプ135、136、137が付設されている。各表示ランプ135、136、137は、押下された選択スイッチ132、133、134に対応していずれか1個だけが点灯する。
アーム部13の前面の振れ幅選択スイッチ134の下方に、+押しボタン及びー押しボタンを有する設定スイッチ138が配設されている。設定スイッチ138は、押下された選択スイッチ132、133、134のいずれかに対応して、模様番号、布送り量、及び振れ幅のいずれかの設定値を設定及び変更できる。ユーザが+押しボタンを押下すれば設定値は増加し、−押しボタンを押下すれば設定値は減少する。
アーム部13の前面の表示ランプ136の左側に、LED表示部139が配設されている。LED表示部139は、3組の7セグメントのLEDで構成されて3桁の数値を表示し、かつ、中央の桁の右側では小数点の点灯及び消灯が可能になっている。LED表示部139は、押下された選択スイッチ132、133、134のいずれかに対応して、模様番号、布送り量、及び振れ幅のいずれかの設定値を表示する。ユーザは、LED表示部139に表示された最新の設定値を確認しながら、設定スイッチ138を操作できる。図1の例では、模様選択スイッチ132が押下されて表示ランプ135が点灯し、模様番号184が設定されている。アーム部13の前面のLED表示部139の下方に、スライドボリウム13Aが配設されている。スライドボリウム13Aが右方に操作されると縫製速度が速くなり、左方に操作されると縫製速度が遅くなる。
頭部14の前面右下寄りに、縫製動作の起動及び停止を制御するスタート/ストップスイッチ141が設けられている。頭部14の下端からベッド部11に向けて下向きに、針棒142が上下動可能かつ横方向に揺動可能に立設されている。針棒142には、針止めねじ143を用いて縫製針144が装着されている(図2示)。さらに、頭部14の下端の針棒142の奥側からベッド部92に向けて下向きに、押え取付棒145が上下動可能に立設されている。押え取付棒145の下端には、縫製布を針板112に押圧する布押え146が固設されている。頭部14の後面右下寄りに、押え取付棒145を上げ下げ操作する押え上げレバー147が配設されている。
フットコントローラ15は、縫製速度や振れ幅などの調整対象を可変に設定するときなどに使用する。フットコントローラ15は、ベース151と、ベース151の上側で上下方向に揺動するペダル152とで構成されている。フットコントローラ15は、床面に載置され、ハーネス153を用いて脚柱部12のジャック121に着脱可能に電気接続される。ユーザは、フットコントローラ15のペダル152を足で踏み込んで操作する。ペダル152の踏み込み量は、電気信号に変換され、ハーネス153を介してミシン本体内のマイコン8(図5示)に伝送される。
図2は、実施形態のミシン1の内部構造を示す正面図である。ミシン1の内部構造は、図略の機枠、メインモータ2、下側駆動機構3、上側駆動機構4、布送り量調整モータ5、振れ幅調整モータ6、センサ部7、及び縫製動作を制御するマイコン8などで構成されている。本実施形態において、下側駆動機構3は、送り歯113及び釜を駆動する。また、上側駆動機構4は、昇降駆動部及び揺動駆動部を駆動して、針棒142を上下動させかつ横方向に揺動させる。
メインモータ2は、脚柱部12の内部に配置され、機枠に固設されている。メインモータ2は、出力軸にモータプーリ21を有し、モータプーリ21から回転駆動力を出力する。メインモータ2の出力回転数及び出力トルクは、マイコン8から制御される。メインモータ2の動作方式や構造は、特に限定されない。
上側駆動機構4は、脚柱部12からアーム部13を経由して頭部14までの内部に配設されている。上側駆動機構4は、上軸41、従動プーリ42、上側タイミングプーリ、昇降駆動部44、及び揺動駆動部などで構成されている。上軸41は、メインモータ2の回転駆動力を伝達する主軸である。上軸41は、アーム部13の内部で横方向に延在しており、機枠に設けられた図略の軸受けに回転自在に支持されている。上軸41の脚柱部12側の一端に、図示されない上側タイミングプーリ、従動プーリ42、及びハンドホイール122が記載した順番に並んで固設されている。従動プーリ42の径は、メインモータ2のモータプーリ21の径よりも大きい。従動プーリ42とモータプーリ21との間には、環状の駆動ベルト43が輪転するように掛けられている。これにより、メインモータ2から出力された回転駆動力は、減速されて上軸41に伝達される。また、上側タイミングプーリの径は、従動プーリ42の径よりも小さい。
上軸41の頭部14側の他端に、針棒142を昇降する昇降駆動部44が設けられている。昇降駆動部44は、針棒クランク45及びクランクロッド46からなる。針棒クランク45は、上軸41が偏心されて形成されている。針棒クランク45にはクランクロッド46の一端461が係合され、クランクロッド46の他端462は針棒142に係合している。針棒142は、図略の針棒腕により上下動可能に保持され(矢印Z方向)、かつ、布送り方向と直角な横方向に揺動可能に保持されている(矢印X方向)。上軸41が回転すると、クランクロッド46の一端461が回転駆動され、他端462が昇降駆動されて、針棒142が矢印Z方向に示されるように上下動する。
図2には示されていないが、針棒142を横方向に振る揺動駆動部が設けられている。揺動駆動部は、カム機構などを介して上軸41から駆動される。揺動駆動部の途中には、振れ幅調整用モータ6(図5示)が設けられている。振れ幅調整用モータ6は、針棒142の横方向(X方向)の振れ幅を可変に調整する振れ幅調整部に相当する。振れ幅調整用モータ6には、例えばステッピングモータを用いることができる。振れ幅調整用モータ6が針棒142の振れ幅を調整してよいのは、縫製針144が縫製布から抜けている幅駆動許可区間Waに限られている。なお、揺動駆動部は上軸41以外の駆動源で動作してもよいし、振れ幅調整部は振れ幅調整用モータ6以外のアクチュエータであってもよい。
下側駆動機構3は、脚柱部12からベッド部11までの内部に配設されている。下側駆動機構3は、下軸31、下側タイミングプーリ32などで構成されている。下軸31は、メインモータ2の回転駆動力を伝達する主軸である。下軸31は、ベッド部11の内部で横方向に延在しており、機枠に設けられた図略の軸受けに回転自在に支持されている。
下軸31の脚柱部12側の一端に、下側タイミングプーリ32が固設されている。下側タイミングプーリ32の径は、上軸41の上側タイミングプーリの径に一致している。下側タイミングプーリ32と上側タイミングプーリとの間には、環状の駆動ベルト33が輪転するように掛けられている。下側タイミングプーリ32及び上側タイミングプーリの外周面には歯が設けられ、駆動ベルト33の内周面にも歯が設けられており、歯同士が噛合するようになっている。また、駆動ベルト33を輪転経路の1箇所で内側に押圧するテンションプーリ34が設けられている。これにより、駆動ベルト33は、張力が確保されて、輪転するときに滑りが発生しない。メインモータ2から出力された回転駆動力は、上軸41を経由して下軸31に伝達される。上軸41及び下軸31は、互いに同期して等しい回転速度で回転する。
ベッド部11の下軸31の他端寄りの位置には、縫製布を送る送り歯113及び縫い目を形成する釜が配設されている。送り歯113は、カム機構などを介して下軸31から駆動される。送り歯113は、針板112の上面レベルを出入りしつつ前後方向に移動して、縫製布を前方に送る。送り歯113と下軸31との間には、布送り量調整用モータ5(図5示)が設けられている。布送り量調整用モータ5は、送り歯113の布送り量を可変に調整する布送り量調整部に相当する。布送り量調整用モータ5には、例えばステッピングモータを用いることができる。布送り量調整用モータ5が送り歯113の布送り量を調整してよいのは、縫製針144が縫製布に刺さっていて送り歯113が動作しない送り駆動許可区間Maに限られている。なお、布送り量調整部は、布送り量調整用モータ5以外のアクチュエータであってもよい。
釜は、針板112の下方に配設されており、カム機構などを介して下軸31から駆動される。釜は、例えば公知の垂直釜や水平釜としてよく、上糸と下糸とを係合させて縫い目を形成する。送り歯113及び釜の構成に特別な制約はなく、この部分については、従来技術の構成を適宜採用できる。
センサ部7は、上軸41の脚柱部12に近い位置に配設されている。センサ部7は、ロータリエンコーダ71、デコーダに相当する第1フォトセンサ75、及び第2デコーダに相当する第2フォトセンサ76を含んでいる。ロータリエンコーダ71、第1フォトセンサ75、及びマイコン8の機能が組み合わせられて、本発明の複合型回転角度センサ及び回転方向判定部が実現されている。また、ロータリエンコーダ71、第2フォトセンサ76、及びマイコン8の機能が組み合わせられて、本発明の回転速度センサが実現されている。
ロータリエンコーダ71は、薄い環状の部材である。図3は、ロータリエンコーダ71の詳細形状を示す部品図である。ロータリエンコーダ71の中央には、嵌合穴711が穿設されている。ロータリエンコーダ71の周縁には、複数の第1スリット72及び複数の第2スリット73が穿設されている。第1スリット72及び第2スリット73は、本発明の「円周上に配置した第1コード及び第2コード」に相当する。ロータリエンコーダ71の外径よりも小さな径の同心円周上に、複数の第3スリット74が穿設されている。第3スリット74は、本発明の「同心円周上に配置した第3コード」に相当する。図2に示されるように、ロータリエンコーダ71は、その嵌合穴711に上軸41が嵌入されて一体的に結合されており、上軸41と共に回転する。
第1フォトセンサ75は、発光部751及び受光部752からなる。発光部751は、ロータリエンコーダ71の周縁から少しだけ脚柱部12側に離隔して配置されている。受光部752は、ロータリエンコーダ71の周縁から少しだけヘッド部14側に離隔して配置されている。したがって、発光部751と受光部752とは、ロータリエンコーダ71の周縁を挟んで離隔対向している。発光部751は、ロータリエンコーダ71の第1スリット72及び第2スリット73に向けて、常に一定の光を照射する。受光部752は、第1スリット72及び第2スリット73を通過した光を検知し、信号変換を行って検知信号S1をマイコン8に出力する。受光部752は、光を検知している間はハイレベルの信号を出力し、光を検知しなくなるとローレベルの信号を出力する。
同様に、第2フォトセンサ76も、発光部761及び受光部762からなる。発光部761は、ロータリエンコーダ71の同心円周から少しだけ脚柱部12側に離隔して配置されている。受光部762は、ロータリエンコーダ71の同心円周から少しだけヘッド部14側に離隔して配置されている。したがって、発光部761と受光部762とは、ロータリエンコーダ71の同心円周を挟んで離隔対向している。発光部761は、ロータリエンコーダ71の第3スリット74に向けて、常に一定の光を照射する。受光部762は、第3スリット74を通過した光を検知し、信号変換を行って検知信号S2をマイコン8に出力する。受光部762は、光を検知している間はハイレベルの信号を出力し、光を検知しなくなるとローレベルの信号を出力する。
第1フォトセンサ75及び第2フォトセンサ76は、ともに上軸41の真上に配設されている。各発光部751、761及び各受光部761、762は、図略の取付部材を用いて、機枠の一部である固定部材79に固定されている。第1フォトセンサ75及び第2フォトセンサ76の定格及び仕様は、互いに等しくても異なっていてもよい。
図3で、ロータリエンコーダ71の中心Cから左方向に引いた半径線を基準線L0とする。ロータリエンコーダ71の位相角Aは、基準線L0で位相角A=0°と表記し、時計回りに増加するように表現する。上軸41がメインモータ2に回転駆動されると、ロータリエンコーダ71は図3の白抜き矢印Nに示される反時計回りの正回転方向Nに回転する。基準線L0が第1フォトセンサ75及び第2フォトセンサ76を通過する瞬間は、縫製針144が上昇してその先端が針板112から抜け出た直後に対応する。
図3に示されるように、ロータリエンコーダ71の外径よりも小さな径の同心円周上には、周方向の幅が等しい58個の第3スリット74が全周にわたり等角度間隔で穿設されている。一方、ロータリエンコーダ71の周縁には、複数の第1スリット72及び複数の第2スリット73がオーバーラップすることなく穿設されている。
詳述すると、位相角A=0°の基準線L0から位相角A≒155°の第1区分線L1までの区間は、前述した幅駆動許可区間Waになっている。この幅駆動許可区間Waの周縁に、周方向の幅が等しい25個の第1スリット72が等角度間隔で穿設されている。第1スリット72の単位角度あたりの配置個数は、第3スリット74の単位角度あたりの配置個数に一致している。第1スリット72の配置位相角は、第3スリット74の配置位相角度からずれ、かつ、ずれ量が正回転方向と逆回転方向とで非対称になっている。具体的に、第1スリット72は、周方向のスリット幅の1/4だけ第3スリット74よりも先行している(位相角Aの小さい方向にずれている、図6参照)。第1区分線L1から位相角A≒170°の第2区分線L2までの区間の周縁に、スリットは穿設されていない。
第2区分線L2から位相角A≒300°の第3区分線L3までの区間は、前述した送り駆動許可区間Maになっている。この送り駆動許可区間Maの周縁に、周方向の幅が等しい42個の第2スリット73が等角度間隔で穿設されている。第2スリット73の周方向のスリット幅は、第1スリット72のスリット幅の約半分である。第2スリット73の単位角度あたりの配置個数は、第1スリット72及び第3スリット74の単位角度あたりの配置個数の2倍になっている(図9参照)。奇数番目の第2スリット73の前縁は第3スリット74の配置位相角からずれている(図9参照)。奇数番目の第2スリット73の後縁、ならびに、偶数番目の第2スリット73の前縁及び後縁は、第3スリット74の配置位相角に重なっている(図9参照)。第3区分線L3から基準線L0までの区間の周縁に、スリットは穿設されていない。
図3に示されるように、幅駆動許可区間Wa内で基準線L0から時計回りに数えて17番目の第1スリット72aの前縁が上停止位置P1に相当する。また、送り駆動許可区間Ma内で第2区分線L2から時計回りに数えて22番目の第2スリット73aの前縁が下停止位置P2に相当する。上停止位置P1及び下停止位置P2は、縫製針144を停止させる好ましい位置である。マイコン8は、縫製動作を中断または終了するときの状況に応じて、縫製針144を上停止位置P1または下停止位置P2に停止させるようにメインモータ2を制御する。
ここで、図3に示されるように、基準線L0から上停止位置P1までの区間を区間1とする。以下、上停止位置P1から第1区分線L1までを区間2とし、第1区分線L1から第2区分線L2までを区間3とする。さらに、第2区分線L2から下停止位置P2までを区間4とし、下停止位置P2から第3区分線L3までを区間5とし、第3区分線L3から基準線L0までを区間6とする。
次に、縫製針144の高さ位置とロータリエンコーダ71の回転角度との関係について、時間軸上で説明する。図4は、縫製針144の高さ位置と第1及び第2フォトセンサ75、76の検知信号S1、S2との関係を模式的に示す図である。図4で、横軸は共通の時間軸であり、上段のグラフは縫製針144の高さ位置を示し、中段のグラフは第2フォトセンサ76の検知信号S2を示し、下段のグラフは第1フォトセンサ75の検知信号S1を示している。メインモータ2が一定の回転速度で上軸41及び下軸31を回転駆動するとき、縫製針144の高さ位置は、時間軸上で最高部分及び最低部分に丸みを有する三角波状に変化する。縫製針144が最高位置を通り過ぎて若干下降した位置が上停止位置P1である。また、縫製針144の最も下降した位置が下停止位置P2である。
第2フォトセンサ76の検知信号S2は、メインモータ2の回転速度、換言すればロータリエンコーダ71の回転速度に比例した周波数の矩形波になる。また、第1フォトセンサ75の検知信号S1は、ロータリエンコーダ71の回転角度に応じて、広幅の矩形波、狭幅の矩形波、及びローレベルと変化する。なお、図4では第1及び第2フォトセンサ75、76の検知信号S1、S2を定性的に見易くしたので、矩形波の波数はロータリエンコーダ71のスリット72、73、74の各スリット数に一致していないが、実際には両者は一致する。
次に、実施形態のミシン1の制御系について説明する。図5は、実施形態のミシン1の制御系を説明するブロック図である。ユーザによって選択スイッチ132、133、134や設定スイッチ138が操作されると、その操作情報はマイコン8に伝送される。マイコン8は、操作情報に基づいて内部処理や外部制御を行うとともに、LED表示部139の表示内容を更新する。ユーザによってスタート/ストップスイッチ141が操作されると、マイコン8は、メインモータ2を始動/停止制御して縫製動作を開始/終了する。ユーザによってフットコントローラ15が踏み込み操作されると、マイコン8は、そのときのフットコントローラ15の調整対象に応じて必要な制御を行う。
メインモータ2が始動されると、マイコン8は、第1フォトセンサ75及び第2フォトセンサ76から検知信号S1、S2を受け取る。次いで、マイコン8は、検知信号S1、S2に基づき幅駆動許可区間Waを判別して振れ幅調整モータ6を制御し、かつ、送り駆動許可区間Maを判別して布送り量調整モータ5を制御する。また、マイコン8は、検知信号S1、S2に基づき上停止位置P1及び下停止位置P2を認識して、メインモータ2の停止タイミングを制御する。
次に、マイコン8が第1フォトセンサ75及び第2フォトセンサ76の検知信号S1、S2を判別処理する詳細方法について説明する。マイコン8は、検知信号S1、S2がローレベルからハイレベルに立ち上がるエッジの直後、及び、検知信号S1、S2がハイレベルからローレベルに立ち下がるエッジの直後に判別処理を行う。以降では適宜、検知信号S1、S2のハイレベルを1と略記し、ローレベルを0と略記する。マイコン8は、エッジ連続カウンタ、組合せレジスタ、上停止位置カウンタ、下停止位置カウンタ、及び区間レジスタを判別処理に用いる。
エッジ連続カウンタは、区間3及び区間6を他の区間と判別するためのカウンタである。エッジ連続カウンタは、第2フォトセンサ76の検知信号S2のエッジの連続発生回数をカウントアップする。エッジ連続カウンタは、第1フォトセンサ75の検知信号S1のエッジを検知すると、連続発生回数をリセットする。組合せレジスタは、幅駆動許可区間Waと送り駆動許可区間Maを判別し、かつ、上軸41の回転方向を検知するためのレジスタである。組合せレジスタは、第1フォトセンサ75の検知信号S1の連続4回のエッジにおける両センサ75、76の検知信号S1、S2のレベル、すなわち合計8個のレベルを8ビットの値、あるいは2桁の十六進数の値で記憶する。組合せレジスタの値は、第1フォトセンサ75の検知信号S1のエッジが検知されるたびに逐次更新される。
上停止位置カウンタは、上停止位置P1を認識し、かつ、幅駆動許可区間Waを区間1と区間2とに区分するためのカウンタである。上停止位置カウンタは、第1スリット72によって発生する検知信号S1のエッジの回数をカウントアップする。下停止位置カウンタは、下停止位置P2を認識し、かつ、送り駆動許可区間Maを区間4と区間5とに区分するためのカウンタである。下停止位置カウンタは、第2スリット73によって発生する検知信号S1のエッジの回数をカウントアップする。区間レジスタは、判別された区間1から区間5までのいずれかひとつを保持するためのレジスタである。なお、区間6はスリット72、73、74の配置からは区間3と区別できないので、区間6は区間3として保持される。
図6は、マイコン8が幅駆動許可区間Waで行う判別処理の内容を概念的に説明する図である。図6で、環状のロータリエンコーダ71の一部が直線状に展開して表示されている(図9、図12も同様)。ロータリエンコーダ71の幅駆動許可区間Waには、第1スリット72及び第3スリット74が配置されている。図6で、便宜的にロータリエンコーダ71にハッチングを施しており、空白の矩形が第1スリット72及び第3スリット74を表している。ロータリエンコーダ71が正回転方向Nに回転して、エッジに相当する位置n1が第1フォトセンサ75に到達すると、第1フォトセンサ75の検知信号S1がハイレベル(1)からローレベル(0)に変化する。このとき、第2フォトセンサ76に第3スリット74が到達しており、検知信号S2はハイレベル(1)に維持される。マイコン8は、位置n1で変化した直後の検知信号S1(n1)=0、及び維持された検知信号S2(n1)=1を得る。
同様に、エッジに相当する位置n2が第1フォトセンサ75に到達すると、マイコン8は、ローレベル(0)からハイレベル(1)に変化した直後の検知信号S1(n2)=1、及び、既に第2フォトセンサ76で第3スリット74が無くなって変化した検知信号S2(n2)=0を得る。続いて、エッジに相当する位置n3が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(n3)=0、及び検知信号S2(n3)=1を得る。続いて、エッジに相当する位置n4が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(n4)=1、及び検知信号S2(n4)=0を得る。
マイコン8は、検知信号S1の連続4回のエッジで得られた検知信号S1、S2の4セットを組合せレジスタに記憶し、逐次更新する。図7は、ロータリエンコーダ71が正回転しているときに、幅駆動許可区間Waで得られる組合せレジスタの値を示す一覧表の図である。表中の値は8ビット表示された二進数である。表中の最上段の二進数は、前述した検知信号が並べられたものである。すなわち、二進数[01100110]は、検知信号S1(n1)=0、検知信号S2(n1)=1、検知信号S1(n2)=1、検知信号S2(n2)=0、検知信号S1(n3)=0、検知信号S2(n3)=1、検知信号S1(n4)=1、及び検知信号S2(n4)=0が順番に並べられた値である。
また、表中の2段目の二進数[10011001]は、ロータリエンコーダ71がさらに回転して、1エッジ分の2ビットの検知信号が末尾に追加され、先頭に位置する最旧の検知信号S1(n1)=0及び検知信号S2(n1)=1が削除されて更新された値である。さらに、3段目以降も逐次更新された値である。表中の3段目及び5段目の値は最上段の値に一致し、4段目の値は2段目の値に一致している。このように、ロータリエンコーダ71が正回転しているときに、幅駆動許可区間Waで得られる組合せレジスタの値は、二進数[01100110]と二進数[10011001]とが交互に発生する。
また、図6で、ユーザがハンドホイール122を手回ししてロータリエンコーダ71が逆回転方向Rに回転し、エッジに相当する位置r1が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(r1)=0、及び検知信号S2(r1)=0を得る。同様に、エッジに相当する位置r2が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(r2)=1、及び検知信号S2(r2)=1を得る。続いて、エッジに相当する位置r3が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(r3)=0、及び検知信号S2(r3)=0を得る。続いて、エッジに相当する位置r4が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(r4)=1、及び検知信号S2(r4)=1を得る。
図8は、ロータリエンコーダ71が逆回転しているときに、幅駆動許可区間Waで得られる組合せレジスタの値を示す一覧表の図である。表の見方は図7と同様である。表中の最上段、3段目、及び5段目の値は二進数[00110011]であり、2段目及び4段目の値は二進数[11001100]である。このように、ロータリエンコーダ71が逆回転しているときに、幅駆動許可区間Waで得られる組合せレジスタの値は、二進数[00110011]と二進数[11001100]とが交互に発生する。
ここで、ロータリエンコーダ71の正回転方向N及び逆回転方向Rで組合せレジスタの取り得る値が異なる。したがって、幅駆動許可区間Waの中で、マイコン8はロータリエンコーダ71の回転方向を判別できる。これが、複合型回転角度センサの回転方向判定部の機能である。また、マイコン8は、第1フォトセンサ75の検知信号S1の2回のエッジを検知することで、第1スリット72の1個分の回転を検知する。
図9は、マイコン8が送り駆動許可区間Maで行う判別処理の内容を概念的に説明する図である。ロータリエンコーダ71の送り駆動許可区間Maには、第2スリット73及び第3スリット74が配置されている。図9で、便宜的にロータリエンコーダ71にハッチングを施しており、空白の矩形が第2スリット73及び第3スリット74を表している。マイコン8が送り駆動許可区間Maで行う判別処理は幅駆動許可区間Waで行う判別処理と同様であるが、第1スリット72が第2スリット73に置き換わることで組合せレジスタの値が変化する。
すなわち、ロータリエンコーダ71が正回転方向Nに回転して、エッジに相当する位置m1が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(m1)=0、及び検知信号S2(m1)=1を得る。同様に、エッジに相当する位置m2が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(m2)=1、及び検知信号S2(m2)=0を得る。続いて、エッジに相当する位置n3が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(m3)=0、及び検知信号S2(m3)=1を得る。続いて、エッジに相当する位置m4が第1フォトセンサ75に到達すると、マイコン8は、検知信号S1(m4)=1、及び検知信号S2(n4)=1を得る。
この結果、組合せレジスタの値として図10の最上段に示される二進数[01100111]が得られる。図10は、ロータリエンコーダ71が正回転しているときに、送り駆動許可区間Maで得られる組合せレジスタの値を示す一覧表の図である。表中の各段の値は、ロータリエンコーダ71が回転して逐次更新された値を示している。図示されるように、ロータリエンコーダ71が正回転しているときに、送り駆動許可区間Maで得られる組合せレジスタの値は、二進数[01100111]、二進数[10011101]、二進数[01110110]、および二進数[11011001]の4種類が順番に繰返して発生する。
また、図9で、ユーザがハンドホイール122を手回ししてロータリエンコーダ71が逆回転方向Rに回転すると、組合せレジスタの値が変わってくる。図11は、ロータリエンコーダ71が逆回転しているときに、送り駆動許可区間Maで得られる組合せレジスタの値を示す一覧表の図である。図9のエッジに相当する4つの位置q1〜q4から得られる組合せレジスタの値は、図11の最上段に示される二進数[11001101]である。図示されるように、ロータリエンコーダ71が逆回転しているときに、送り駆動許可区間Maで得られる組合せレジスタの値は、二進数[11001101]、二進数[00110111]、二進数[11011100]、および二進数[01110011]の4種類が順番に繰返して発生する。
ここで、ロータリエンコーダ71の正回転方向N及び逆回転方向Rで組合せレジスタの取り得る値が異なる。したがって、送り駆動許可区間Maの中で、マイコン8はロータリエンコーダ71の回転方向を判別できる。これが、複合型回転角度センサの回転方向判定部の機能である。また、マイコン8は、第1フォトセンサ75の検知信号S1の2回のエッジを検知することで、第2スリット73の1個分の回転を検知する。
図12は、マイコン8が幅駆動許可期間Wa及び送り駆動許可区間Ma以外の区間で行う判別処理の内容を概念的に説明する図である。図3に示されるように、ロータリエンコーダ71の幅駆動許可期間Wa及び送り駆動許可区間Ma以外の区間として区間3及び区間6が該当する。区間3及び区間6では、図12に示されるように、ロータリエンコーダ71には第3スリット74のみが配置されている。したがって、第2フォトセンサ76は第3スリット74を検知して検知信号S2にはエッジが発生し、第1フォトセンサ75の検知信号S1にはエッジが発生しない。
このとき、マイコン8は、組合せレジスタの処理を行わず、第2フォトセンサ76の検知信号S2のエッジの連続発生回数をカウントアップする。例えば、図12でロータリエンコーダ71が正回転方向Nに回転して位置u1〜u4でそれぞれ検知信号S2のエッジが発生したときに、マイコン8は、エッジ連続カウンタの値を1ずつ増加させる(カウントアップする)。そして、検知信号S1のエッジが発生したときに、マイコン8は、エッジ連続カウンタの値をリセットする。
ここで、区間3及び区間6では検知信号S2のエッジが連続して発生するのに対して、幅駆動許可期間Wa及び送り駆動許可区間Maでは、検知信号S2の2つのエッジの間に必ず検知信号S1のエッジが発生する。したがって、マイコン8は、エッジ連続カウンタの値が2以上であれば、区間3及び区間6を他の区間と判別できる。また、エッジの発生状況だけでは区間3と区間6とを判別することはできないので、マイコン8は、区間6も区間3として区間レジスタに保持する。
区間3及び区間6以外では組合せレジスタの値が逐次更新され、ロータリエンコーダ71の幅駆動許可区間Waと送り駆動許可区間Maとでは組合せレジスタの取り得る値が異なる。したがって、マイコン8は、第1フォトセンサ75の検知信号S1のエッジを連続4回検知した時点で、幅駆動許可区間Wa及び送り駆動許可区間Maを確定できる。
また、マイコン8は、区間6に続いて2個の第1スリット72が第1フォトセンサ75を通過した位置、つまり図3の位置P3で幅駆動許可区間Waを確定できる。位置P3は、2番目の第1スリット72bの後縁である。マイコン8は、位置P3で幅駆動許可区間Waを確定した直後から、ロータリエンコーダ71が15個の第1スリット72分だけ回転したことで上停止位置P1を認識できる。なお、15個の第1スリット72の回転は、検知信号S1における30回のエッジの発生に置き換えて検知できる。さらに、マイコン8は、上停止位置P1を認識することにより、幅駆動許可区間Waを区間1と区間2とに区分して判別できる。
同様に、マイコン8は、区間3に続いて2個の第2スリット73が第1フォトセンサ75を通過した位置、つまり図3の位置P4で送り駆動許可区間Maを確定できる。位置P4は、2番目の第2スリット73bの後縁である。マイコン8は、位置P4で送り駆動許可区間Maを確定した直後から、ロータリエンコーダ71が20個の第2スリット73だけ回転したことで下停止位置P2を認識できる。なお、20個の第2スリット73の回転は、検知信号S1における40回のエッジの発生に置き換えて検知できる。さらに、マイコン8は、下停止位置P2を認識することにより、送り駆動許可区間Maを区間4と区間5とに区分して判別できる。
マイコン8は、上述したように区間1〜区間5を判別処理するために、図13及び図14に示される判別処理フローを実行する。図13は、第2フォトセンサ76の検知信号S2にエッジが発生したときに、マイコン8が実行する判別処理フローの図である。図14は、第1フォトセンサ75の検知信号S1にエッジが発生したときに、マイコン8が実行する判別処理フローの図である。エッジの発生はエッジ割り込み機能によってマイコン8に伝達され、マイコン8は、これをトリガとして判別処理を開始する。
図13のステップst1で第2フォトセンサ76の検知信号S2にエッジが発生すると、エッジ割り込みによりマイコン8は以降に説明する一連の判別処理を実行する。ステップst2で、エッジ連続カウンタをカウントアップする。次のステップst3で、エッジ連続カウンタが2以上か否かを調べ、2以上の場合はステップst4に進み、1以下の場合は何も行わず判別処理を終了する。ステップst4では、組合せレジスタをリセットして判別処理を終了する。
図14のステップst11で第1フォトセンサ75の検知信号S1にエッジが発生すると、エッジ割り込みによりマイコン8は以降に説明する一連の判別処理を実行する。ステップst12で、エッジ連続カウンタをリセットする。ステップst13で、組合せレジスタを更新する。次のステップst14で、組合せレジスタの値を調べ、図7に示されたいずれかの値であればステップst15に進み、図10に示されたいずれかの値であればステップst21に進み、それ以外であればステップst31に進む。
ステップst15からステップst19までは、幅駆動許可区間Waにおける判別処理である。ステップst15で、下停止位置カウンタをリセットする。ステップst16で、上停止位置カウンタをカウントアップする。次のステップst17で、上停止位置カウンタが30以上か否かを調査し、30未満であればステップst18に進み、30以上であればステップst19に進む。ステップst18では、区間レジスタに区間1をセットする。ステップst19では、区間レジスタに区間2をセットする。ステップst16〜ステップst19までの処理は、検知信号S1のエッジの発生回数に基づいて幅駆動許可区間Waを区間1と区間2とに区分する判別処理である。
ステップst21からステップst25までは、送り駆動許可区間Maにおける判別処理である。ステップst21で、上停止位置カウンタをリセットする。ステップst22で、下停止位置カウンタをカウントアップする。次のステップst23で、下停止位置カウンタが40以上か否かを調査し、40未満であればステップst24に進み、40以上であればステップst25に進む。ステップst24では、区間レジスタに区間4をセットする。ステップst25では、区間レジスタに区間5をセットする。ステップst22〜ステップst25までの処理は、検知信号S1のエッジの発生回数に基づいて送り駆動許可区間Maを区間4と区間5とに区分する判別処理である。
ステップst31では、区間レジスタに区間3をセットする。ステップst18、ステップst19、ステップst24、ステップst25、及びステップst31のいずれかで区間レジスタをセットすると、判別処理は終了する。
なお、マイコン8は、第2フォトセンサ76の検知信号S2のエッジを検知し、単位時間当たりのエッジ数から上軸41の回転速度、すなわち縫製速度を演算する。この機能は、本発明の回転速度センサに相当する。
次に、上述のように構成された実施形態のミシン1の動作及び作用について説明する。ユーザは、まず、電源を投入して、縫製動作に必要な模様番号などの設定や、半針縫いコマンドや一針縫いコマンドなどの設定を行う。次に、スタート/ストップスイッチ141を押すか、あるいはフットコントローラ15を踏み込むかすると、マイコン8は、メインモータ2を始動する。上軸41及び下軸31は正回転方向Nに回転し始め、同時にロータリエンコーダ71も正回転方向Nに回転し始める。
マイコン8は、メインモータ2を始動したときに、ロータリエンコーダ71の区間1〜区間5の判別処理を開始する。マイコン8は、幅駆動許可区間Waに相当する区間1または区間2を最初に判別したときに、振れ幅調整モータ6の原点処理を行う。また、マイコン8は、送り駆動許可区間Maに相当する区間4または区間5を最初に判別したときに、布送り量調整モータ5の原点処理を行う。
2つの原点処理を終了した後、マイコン8は、区間1を確定判別した瞬間に(図3の位置P3)、必要に応じて振れ幅調整モータ6を制御して振れ幅を調整する。また、マイコン8は、区間4を確定判別した瞬間に(図3の位置P4)、必要に応じて布送り量調整モータ5を制御して布送り量を調整する。振れ幅や布送り量を調整するときに長い調整時間が必要と推定される場合、マイコン8はメインモータ2の回転速度を減速あるいは一旦停止させることもある。
電源投入時に縫製針144が上停止位置P1にある場合、マイコン8は、最初に区間2を判別し、次いで区間3から区間4を判別する。このため、マイコン8は、上軸41が最初に半回転する間に位置P4及び下停止位置P2を認識できる。したがって、電源投入直後でも半針縫いコマンドに正確に対応できる。この後、マイコン8は、区間5から区間6(区間レジスタの内部では区間3)を経て区間1を判別する。このため、マイコン8は、上軸41が最初に1回転する間に位置P3及び上停止位置P1を認識できる。したがって、電源投入直後でも一針縫いコマンドに正確に対応できる。また、電源投入時に縫製針144が下停止位置P2にある場合でも、同様に、半針縫いコマンド及び一針縫いコマンドに正確に対応できる。
さらに、電源を停止している間にハンドコントローラ122が手回しされて縫製針144の初期位置が不特定になっていても、マイコン8は、メインモータ2により上軸41が回転駆動された最初の1回転で、遅滞なく振れ幅調整モータ6及び布送り量調整モータ5の原点処理を行うことができる。また、マイコン8は、縫製針144の初期位置に因らず、最初に区間3を通過したすぐ後に下停止位置P2を認識でき、最初に区間6を通過したすぐ後に上停止位置P1を認識できる。したがって、電源投入直後の縫製一針目から模様番号などの設定に対応して正確な縫製動作を行える。
実施形態のミシン1によれば、従来技術で必要とされていた3個のセンサを第1フォトセンサ75及び第2フォトセンサ76の2個に削減でき、センサに必要な取付構造部品や配線部品の部品点数も抑えられる。加えて、第1フォトセンサ75及び第2フォトセンサ76に対してロータリエンコーダ71が共用されて1個で済んでいる。また、第1フォトセンサ75及び第2フォトセンサ76は、汎用品を用いることができて、コスト低廉でかつ高精度である。これらの総合的な効果で、価格競争力に優れたミシン1を提供できる。
さらに、ロータリエンコーダ71が共用されているので、第1フォトセンサ75及び第2フォトセンサ76の間に生じ得る相対誤差が抑制されて検知精度が高められる。仮に、第1フォトセンサ75及び第2フォトセンサ76に別体のロータリエンコーダを用いると、上軸41のたわみなどに起因して相対誤差が発生しやすい。加えて、センサ部7は、回転方向判定部の機能を備えるので、ハンドホイール122をユーザが手回ししたときの回転方向を判定できる。
なお、センサ部7は、上軸41に代えて、下軸31に設けることもできる。また、ロータリエンコーダ71のコードとしてスリット、デコーダとしてフォトセンサ75、76を例示したが、これに限定されない。例えば、ロータリエンコーダの周方向にN磁極およびS磁極を交互に配置してコードとし、デコーダとして磁界センサを用いるようにしてもよい。その他、本発明は様々な応用や変形が可能である。