以下、本発明を図面に基づいて詳細に説明する。
図1は本発明に係る電子回路の印刷方法の実施に用いる電子回路の印刷装置の一実施の形態の要部を示す図である。
この電子回路の印刷装置は、版胴(P)1とゴム胴(B)2と平台(テーブル)3とを備えたフラットベッドタイプの印刷機(平台印刷機)100と、この印刷機100に対して設けられた平台印刷制御装置200とを備えている。
印刷機100において、版胴1およびゴム胴2は回転可能に支持されており、テーブル3には所定の位置に被印刷物4がセットされ、版胴1にはテーブル3上の被印刷物4に電子回路を印刷するための版が装着されている。被印刷物4は、1枚のフィルムであり、1度目の回路が印刷されている。
この印刷機100では、版胴1からゴム胴2にインキが転写され、このインキが転写されたゴム胴2がテーブル3に降ろされ、このテーブル3に降ろされたゴム胴2が回転しながら図示右方向に移動することによって、被印刷物4への電子回路(2度目の回路)の印刷が行われる。
被印刷物4は、同じ印刷機100で1度目の回路を印刷し、乾燥させた後、絶縁膜をその上に塗布した状態で、再度この印刷機100にセットされている。すなわち、被印刷物4には前処理工程で、1度目の回路の印刷や絶縁膜の塗布が行われている。
また、本実施の形態では、この被印刷物4への2度目の回路の印刷を行う前の前処理工程において、1度目の回路の印刷と同時に、図2に示すように、被印刷物4に4つのレジスタマークRM1(第1のレジスタマーク)を印刷している。
この例では、ゴム胴2が移動する方向を被印刷物4の天地方向(Y方向)とし、この天地方向と直交する方向を被印刷物4の左右方向(X方向)とし、被印刷物4の左側の天地方向に離れた位置に1対のレジスタマークRM1L1とRM1L2を、被印刷物4の右側の天地方向に離れた位置に1対のレジスタマークRM1R1とRM1R2を、1度目の回路の印刷と同時に印刷している。
また、本実施の形態では、1度目の回路が印刷された被印刷物4への2度目の回路の印刷を行う際、この2度目の回路の印刷と同時に、図3に示すように、被印刷物4に4つのレジスタマークRM2(第2のレジスタマーク)を印刷するものとしている。この例では、被印刷物4の左側の天地方向に離れた位置に1対のレジスタマークRM2L1とRM2L2を、被印刷物4の右側の天地方向に離れた位置に1対のレジスタマークRM2R1とRM2R2を、2度目の回路の印刷と同時に印刷するようにしている。
なお、図1〜3においては、1度目の回路が印刷された被印刷物4(2度目の回路の印刷前の被印刷物4)を符号4Aで示し、2度目の回路が印刷された被印刷物4(2度目の回路の印刷後の被印刷物4)を符号4Bで示し、両者を区別している。
この例において、第1のレジスタマークRM1は円形とし、第2のレジスタマークRM2は×印としているが、このような形のマークに限られるものではない。また、第1のレジスタマークRM1は、必ずしも1度目の回路の印刷と同時に印刷されたものでなくてもよく、後から塗布されたようなものであっても構わない。また、第2のレジスタマークRM1についても、2度目の回路の印刷と同時に付加されていればよく、塗布されたようなものであっても構わない。
なお、本発明でいう1対の第1の基準マークは、2度目の回路の印刷と同時に被印刷物4の天地方向に離れた位置に印刷された第2のレジスタマークRM2の対(RM2L1とRM2L2との対、RM2R1とRM2R2との対)に相当し、1対の第2の基準マークは、1度目の回路の印刷と同時に被印刷物4の天地方向に離れた位置に印刷された第1のレジスタマークRM1(RM1L1とRM1L2との対、RM1R1とRM1R2との対)の対に相当する。以下、第1のレジスタマークRM1を第1レジスタマークと呼び、第2のレジスタマークRM2を第2レジスタマークと呼ぶ。
また、この印刷機100には、テーブル3上の被印刷物4を挾んでゴム胴2とは反対側の位置に、2つのカメラ210(210L,210R)が設けられている。
第1のカメラ210L(以下、左カメラと呼ぶ)は、テーブル3上の被印刷物4の1対の第1レジスタマークRM1L1とRM1L2および第2レジスタマークRM2L1とRM2L2の印刷位置に対応して設けられており、後述するように、テーブル3上の被印刷物4の上面を天地方向に移動して、第1のマーク位置PM1において第1レジスタマークRM1L1および第2レジスタマークRM2L1を含む領域を撮像し、第2のマーク位置PM2において第1レジスタマークRM1L2および第2レジスタマークRM2L2を含む領域を撮像する。
第2のカメラ210R(以下、右カメラと呼ぶ)は、テーブル3上の被印刷物4の1対の第1レジスタマークRM1R1とRM1R2および第2レジスタマークRM2R1とRM2R2の印刷位置に対応して設けられており、後述するように、テーブル3上の被印刷物4の上面を天地方向に移動して、第1のマーク位置PM1において第1レジスタマークRM1R1および第2レジスタマークRM2R1を含む領域を撮像し、第2のマーク位置PM2において第1レジスタマークRM1R2および第2レジスタマークRM2R2を含む領域を撮像する。
図4に平台印刷制御装置200の要部のブロック図を示す。平台印刷制御装置200は、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、入力装置204、表示器205、出力装置(FDドライブ、プリンタ等)206、印刷準備開始スイッチ207、印刷開始スイッチ208、印刷終了後のティーチングスイッチ209,カメラ210(左カメラ210L、右カメラ210R)、カメラ移動用モータ211、カメラ移動用モータドライバ212、カメラ移動用モータ用ロータリエンコーダ213、カメラ位置検出用カウンタ214、D/A変換器215、カメラの原点位置検出器216、版胴駆動用モータ217、版胴駆動用モータドライバ218、版胴駆動用モータ用ロータリエンコーダ219、版胴回転位相検出用カウンタ220、D/A変換器221を備えている。
また、ゴム胴駆動用モータ222、ゴム胴駆動用モータドライバ223、ゴム胴駆動用モータ用ロータリエンコーダ224、ゴム胴回転位相検出用カウンタ225、D/A変換器226、ゴム胴天地方向移動用モータ227、ゴム胴天地方向移動用モータドライバ228、ゴム胴天地方向移動用モータ用ロータリエンコーダ229、ゴム胴天地方向位置検出用カウンタ230、D/A変換器231、ゴム胴の天地方向の原点位置検出器232、ゴム胴昇降用エアシリンダ233、ゴム胴昇降用エアシリンダ用バルブ234、インキ装置235、胴着脱装置236、メモリ237、入出力インターフェイス(I/O,I/F)238−1〜238−16を備えている。
この平台印刷制御装置200において、CPU201は、インターフェイス238−1〜238−16を介して与えられる各種入力情報を得て、RAM203やメモリ237にアクセスしながら、ROM202に格納されたプログラムに従って動作する。
カメラ移動用モータ用ロータリエンコーダ213は、カメラ移動用モータ211の所定回転角毎にクロックパルスを発生して、カメラ移動用モータドライバ212およびカメラ位置検出用カウンタ214に出力する。また、カメラ移動用モータ用ロータリエンコーダ213は、カメラ移動用モータ211の所定回転角度位置毎にゼロパルスを発生して、カメラ位置検出用カウンタ214にゼロパルスを出力する。カメラ移動用モータ211は、テーブル3上の被印刷物4の上面を天地方向に、左カメラ210Lと右カメラ210Rとを同時に移動させる。カメラの原点位置検出器216は、左カメラ210Lと右カメラ210Rとを同時に移動させる際の最初の位置を原点位置として検出する。
版胴駆動用モータ用ロータリエンコーダ219は、版胴駆動用モータ217の所定回転角毎にクロックパルスを発生して、版胴駆動用モータドライバ218および版胴回転位相検出用カウンタ220に出力する。また、版胴駆動用モータ用ロータリエンコーダ219は、版胴駆動用モータ217の所定回転角度位置毎にゼロパルスを発生して、版胴回転位相検出用カウンタ220にゼロパルスを出力する。
ゴム胴駆動用モータ用ロータリエンコーダ224は、ゴム胴駆動用モータ222の所定回転角毎にクロックパルスを発生して、ゴム胴駆動用モータドライバ223およびゴム胴回転位相検出用カウンタ225に出力する。また、ゴム胴駆動用モータ用ロータリエンコーダ224は、ゴム胴駆動用モータ222の所定回転角度位置毎にゼロパルスを発生して、ゴム胴回転位相検出用カウンタ225にゼロパルスを出力する。
ゴム胴天地方向移動用モータ用ロータリエンコーダ229は、ゴム胴天地方向移動用モータ227の所定回転角毎にクロックパルスを発生して、ゴム胴天地方向移動用モータドライバ228およびゴム胴天地方向位置検出用カウンタ230に出力する。また、ゴム胴天地方向移動用モータ用ロータリエンコーダ229は、ゴム胴天地方向移動用モータ227の所定回転角度位置毎にゼロパルスを発生して、ゴム胴天地方向位置検出用カウンタ230にゼロパルスを出力する。ゴム胴の天地方向の原点位置検出器232は、ゴム胴2を天地方向に移動させる際の最初の位置を原点位置として検出する。
図5〜図12にメモリ237の内容を分割して示す。メモリ237にはメモリM1〜M77が設けられる。メモリM1にはカメラ移動用モータの回転速度Vcが記憶されている。メモリM2にはカメラ位置検出用カウンタのカウント値が記憶される。メモリM3にはカメラの現在位置PCMRが記憶される。メモリM4には第1のマーク位置PM1が記憶されている。メモリM5にはカウント値Yが記憶される。メモリM6にはカウント値Xが記憶される。メモリM7には左のカメラの第1のマーク位置PM1における撮像データが記憶される。メモリM8にはカメラ(左右のカメラ)の左右方向の画素数aが記憶されている。メモリM9にはカメラ(左右のカメラ)の天地方向の画素数bが記憶されている。メモリM10には第2のマーク位置PM2が記憶されている。
メモリM11には右のカメラの第1のマーク位置PM1における撮像データが記憶される。メモリM12には左のカメラの第2のマーク位置PM2における撮像データが記憶される。メモリM13には右のカメラの第2のマーク位置PM2における撮像データが記憶される。メモリM14にはカウント値Nが記憶される。メモリM15にはカウント値Mが記憶される。メモリM16には第1レジスタマークの画素データが記憶されている。メモリM17には第1レジスタマークの左右方向の画素数cが記憶されている。メモリM18には第1レジスタマークの天地方向の画素数dが記憶されている。メモリM19には左の第1のマーク位置PM1における第1レジスタマークの測定位置(M1x1L,M1y1L)が記憶される。メモリM20には左の第2のマーク位置PM2における第1レジスタマークの測定位置(M1x2L,M1y2L)が記憶される。
メモリM21には第1のマーク位置PM1における第1レジスタマークのY方向の基準位置M1y1rが記憶されている。メモリM22には左の第1のマーク位置PM1における第1レジスタマークのY方向のずれ量ΔM1y1Lが記憶される。メモリM23には左の第1レジスタマーク間の距離LM1Lが記憶される。メモリM24には右の第1のマーク位置PM1における第1レジスタマークの測定位置(M1x1R,M1y1R)が記憶される。メモリM25には右の第2のマーク位置PM2における第1レジスタマークの測定位置(M1x2R,M1y2R)が記憶される。メモリM26には右の第1のマーク位置PM1における第1レジスタマークのY方向のずれ量ΔM1y1Rが記憶される。メモリM27には第1のマーク位置PM1における第1レジスタマークのY方向のずれ量ΔY1(ΔM1y1)が記憶される。メモリM28には右の第1レジスタマーク間の距離LM1Rが記憶される。メモリM29には第1レジスタマーク間の距離の平均値LM1が記憶される。メモリM30には第1レジスタマーク間の基準距離LM1rが記憶されている。
メモリM31には第1レジスタマーク間の伸縮率η1が記憶される。メモリM32には基準の印刷開始位置PRTSTが記憶されている。メモリM33には補正された印刷開始位置PRTST’が記憶される。メモリM34には印刷長さlが記憶されている。メモリM35には補正された印刷長さl’が記憶される。メモリM36には印刷終了位置PRTENDが記憶される。メモリM37にはゴム胴の基準回転速度VBrが記憶されている。メモリM38には印刷中のゴム胴の回転速度VBpが記憶される。メモリM39には版胴の基準回転速度VPrが記憶されている。メモリM40には版胴回転位相検出用カウンタのカウント値が記憶される。
メモリM41には版胴の現在の回転位相φRが記憶される。メモリM42には版胴の印刷開始位置φSTが記憶されている。メモリM43には版胴の印刷終了位置φENDが記憶されている。メモリM44にはゴム胴回転位相検出用カウンタのカウント値が記憶される。メモリM45にはゴム胴の現在の回転位相ψRが記憶される。メモリM46にはゴム胴の印刷開始位置ψSTが記憶されている。メモリM47にはゴム胴の印刷終了位置ψENDが記憶されている。メモリM48にはゴム胴の移動開始位置ψMSTが記憶されている。メモリM49にはゴム胴の天地方向の移動速度vBMが記憶されている。メモリM50にはゴム胴の天地方向位置と回転位相による位相偏差の補正の完了の有無を示す値が記憶される。
メモリM51にはゴム胴の天地方向位置検出用カウンタのカウント値が記憶される。メモリM52にはゴム胴の現在の天地方向位置PBMRが記憶される。メモリM53には補正したゴム胴の現在の天地方向位置PBMR’が記憶される。メモリM54にはゴム胴の天地方向−あるべきゴム胴の回転位相変換テーブルが記憶されている。メモリM55にはあるべきゴム胴の回転位相ψmが記憶される。メモリM56にはゴム胴の現在の回転位相差ΔψRが記憶される。メモリM57にはゴム胴の現在の回転位相差ΔψRの絶対値が記憶される。メモリM58にはゴム胴の回転位相差の許容値αが記憶されている。メモリM59にはゴム胴の現在の回転位相差−回転速度の補正値変換テーブルが記憶されている。メモリM60には回転速度の補正値ΔVが記憶される。
メモリM61には補正したゴム胴の回転速度VBr’が記憶される。メモリM62には第2レジスタマークの画素データが記憶されている。メモリM63には第2レジスタマークの左右方向の画素数eが記憶されている。メモリM64には第2レジスタマークの天地方向の画素数fが記憶されている。メモリM65には左の第1のマーク位置PM1における第2レジスタマークの測定位置(M2x1L,M2y1L)が記憶される。メモリM66には左の第2のマーク位置PM2における第2レジスタマークの測定位置(M2x2L,M2y2L)が記憶される。メモリM67には第1のマーク位置PM1における第2レジスタマークのY方向の基準位置M2y1rが記憶されている。メモリM68には左の第1のマーク位置PM1における第2レジスタマークのY方向のずれ量ΔM2y1Lが記憶される。メモリM69には左の第2レジスタマーク間の距離LM2Lが記憶される。メモリM70には右の第1のマーク位置PM1における第2レジスタマークの測定位置(M2x1R,M2y1R)が記憶される。
メモリM71には右の第2のマーク位置PM2における第2レジスタマークの測定位置(M2x2R,M2y2R)が記憶される。メモリM72には右の第1のマーク位置PM1における第2レジスタマークのY方向のずれ量ΔM2y1Rが記憶される。メモリM73には第1のマーク位置PM1における第2レジスタマークのY方向のずれ量の平均値ΔM2y1が記憶される。メモリM74には第1のマーク位置PM1における第2レジスタマークのY方向のずれ量ΔY2が記憶される。メモリM75には右の第2レジスタマーク間の距離LM2Rが記憶される。メモリM76には第2レジスタマーク間の距離の平均値LM2が記憶される。メモリM77には第2レジスタマーク間の伸縮率η2が記憶される。
〔平台印刷制御装置の動作〕
次に、この電子回路の印刷装置における平台印刷制御装置200の動作について、図13〜図65のフローチャートを用いて説明する。
なお、以下の動作において、平台印刷制御装置200のCPU201は、演算により求めた各種データのメモリMへの書き込みやメモリMからの各種データの読み込みなどを必要に応じて行うが、ここでは説明が煩雑となることを避けるために、またメモリMの名称やそのメモリM中に付記した記号などからも明らかであるので、メモリMへのリードライト動作の説明を省略する場合もある。
〔印刷の準備〕
本実施の形態では、初期設定として、メモリM74に「ゼロ」を上書きする(図13:ステップS101)。すなわち、第1のマーク位置PM1における第2レジスタマークのY方向のずれ量ΔY2をΔY2=0とする。また、メモリM77に「1」を上書きする(ステップS102)。すなわち、第2レジスタマーク間の伸縮率η2をη2=1とする。そして、図1に示したように、前処理工程で1度目の回路が印刷された被印刷物4Aをテーブル3上にセットし、印刷準備開始スイッチ207をオンとする。
〔レジスタマークの撮像〕
平台印刷制御装置200のCPU201は、印刷準備開始スイッチ207がオンとされると(ステップS103のYES)、メモリM1からカメラ移動用モータの回転速度Vcを読み込み(ステップS104)、カメラ移動用モータドライバ212に正転指令およびカメラ移動用モータの回転速度VcをD/A変換器215を介して出力する(ステップS105)。これにより、カメラ移動用モータ211が回転速度Vcで正転し、図1(図2)に示された最初の位置を原点位置として、左カメラ210Lおよび右カメラ210Rがテーブル3上を左方向へ同時に移動する。
CPU201は、この左カメラ210Lおよび右カメラ210Rの移動中、カメラ位置検出用カウンタ214のカウント値を読み込み(ステップS106)、このカメラ位置検出用カウンタ214のカウント値より左カメラ210Lおよび右カメラ210Rの現在位置PCMRを演算し(ステップS107)、メモリM4から第1のマーク位置PM1を読み込み(ステップS108)、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第1のマーク位置PM1に達したか否かを確認する(ステップS109)。
CPU201は、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第1のマーク位置PM1に達したことを確認すると(ステップS109のYES)、カメラ移動用モータドライバ212に停止指令を出力して(ステップS110)、左カメラ210Lおよび右カメラ210Rの移動を停止する。そして、左カメラ210Lおよび右カメラ210Rに撮像指令を出力し(ステップS111)、テーブル3にセットされている被印刷物4上の第1レジスタマークRM1L1を含む領域を左カメラ210Lで撮像し、被印刷物4上の第1レジスタマークRM1R1を含む領域を右カメラ210Rで撮像する。
そして、CPU201は、左カメラ210Lに撮像データの送信指令を送り(図14:ステップS112)、この送信指令に応じて左カメラ210Lから撮像データが送られてくると(ステップS113のYES)、メモリM5中のカウント値Yを1とし(ステップS114)、メモリM6中のカウント値Xを1とし(ステップS115)、カウント値X,Yで特定される画素位置の左カメラ210Lからの撮像データをメモリM7の(X,Y)のアドレス位置に書き込む(ステップS116)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS117)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS118)、ステップS119でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS116〜S119の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS119のYES)、メモリM5中のカウント値Yに1を加算し(ステップS120)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS121)、ステップS122でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS115〜S122の処理動作を繰り返す。
これにより、メモリM7中に、第1のマーク位置PM1における左カメラ210Lからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図66(a)に示すように、被印刷物4Aの第1レジスタマークRM1L1を含む撮像データがa×bの画素の撮像データとしてメモリM7中に記憶される。
なお、メモリM16には、図66(b)に示すように、第1レジスタマークRM1のc×dの画素データがパターンマッチング用のデータとして記憶されている。また、カメラの天地方向は被印刷物4Aの天地方向と同方向とされ、カメラの左右方向は被印刷物4Aの左右方向と同方向とされている。
次に、CPU201は、右カメラ210Rに撮像データの送信指令を送り(図15:ステップS123)、この送信指令に応じて右カメラ210Rから撮像データが送られてくると(ステップS124のYES)、メモリM5中のカウント値Yを1とし(ステップS125)、メモリM6中のカウント値Xを1とし(ステップS126)、カウント値X,Yで特定される画素位置の右カメラ210Rからの撮像データをメモリM11の(X,Y)のアドレス位置に書き込む(ステップS127)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS128)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS129)、ステップS130でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS127〜S130の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS130のYES)、メモリM5中のカウント値Yに1を加算し(ステップS131)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS132)、ステップS133でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS126〜S133の処理動作を繰り返す。
これにより、メモリM11中に、第1のマーク位置PM1における右カメラ210Rからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図67(a)に示すように、被印刷物4Aの第1レジスタマークRM1R1を含む撮像データがa×bの画素の撮像データとしてメモリM11中に記憶される。
次に、CPU201は、メモリM1からカメラ移動用モータの回転速度Vcを読み込み(図16:ステップS134)、カメラ移動用モータドライバ212に逆転指令およびカメラ移動用モータの回転速度VcをD/A変換器215を介して出力する(ステップS135)。これにより、カメラ移動用モータ211が回転速度Vcで逆転し、図1(図2)において第1のマーク位置PM1に停止していた左カメラ210Lおよび右カメラ210Rが、テーブル3上を右方向へ同時に移動する。
CPU201は、この左カメラ210Lおよび右カメラ210Rの移動中、カメラ位置検出用カウンタ214のカウント値を読み込み(ステップS136)、このカメラ位置検出用カウンタ214のカウント値より左カメラ210Lおよび右カメラ210Rの現在位置PCMRを演算し(ステップS137)、メモリM10から第2のマーク位置PM2を読み込み(ステップS138)、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第2のマーク位置PM2に達したか否かを確認する(ステップS139)。
CPU201は、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第2のマーク位置PM2に達したことを確認すると(ステップS139のYES)、左カメラ210Lおよび右カメラ210Rに撮像指令を出力し(ステップS140)、被印刷物4A上の第1レジスタマークRM1L2を含む領域を左カメラ210Lで撮像し、被印刷物4A上の第1レジスタマークRM1R2を含む領域を右カメラ210Rで撮像する。
そして、CPU201は、左カメラ210Lに撮像データの送信指令を送り(ステップS141)、この送信指令に応じて左カメラ210Lから撮像データが送られてくると(ステップS142のYES)、メモリM5中のカウント値Yを1とし(ステップS143)、メモリM6中のカウント値Xを1とし(図17:ステップS144)、カウント値X,Yで特定される画素位置の左カメラ210Lからの撮像データをメモリM12の(X,Y)のアドレス位置に書き込む(ステップS145)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS146)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS147)、ステップS148でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS145〜S148の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS148のYES)、メモリM5中のカウント値Yに1を加算し(ステップS149)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS150)、ステップS151でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS144〜S151の処理動作を繰り返す。
これにより、メモリM12中に、第2のマーク位置PM2における左カメラ210Lからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図68(a)に示すように、被印刷物4Aの第1レジスタマークRM1L2を含む撮像データがa×bの画素の撮像データとしてメモリM12中に記憶される。
次に、CPU201は、右カメラ210Rに撮像データの送信指令を送り(ステップS152)、この送信指令に応じて右カメラ210Rから撮像データが送られてくると(ステップS153のYES)、メモリM5中のカウント値Yを1とし(図18:ステップS154)、メモリM6中のカウント値Xを1とし(ステップS155)、カウント値X,Yで特定される画素位置の右カメラ210Rからの撮像データをメモリM13の(X,Y)のアドレス位置に書き込む(ステップS156)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS157)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS158)、ステップS159でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS156〜S159の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS159のYES)、メモリM5中のカウント値Yに1を加算し(ステップS160)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS161)、ステップS162でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS155〜S162の処理動作を繰り返す。
これにより、メモリM13中に、第2のマーク位置PM2における右カメラ210Rからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図69(a)に示すように、被印刷物4Aの第1レジスタマークRM1R2を含む撮像データがa×bの画素の撮像データとしてメモリM13中に記憶される。
そして、CPU201は、左カメラ210Lおよび右カメラ210Rの移動を続け、カメラの原点位置検出器216が左カメラ210Lおよび右カメラ210Rの原点位置(最初の位置)への復帰を検知すると(ステップS163のYES)、カメラ移動用モータドライバ212に停止指令を送り(ステップS164)、左カメラ210Lおよび右カメラ210Rの移動を停止させる。
〔パターンマッチングによる第1レジスタマークの位置の検出〕
次に、CPU201は、メモリM5中のカウント値Yを1とし(図19:ステップS165)、メモリM6中のカウント値Xを1とし(ステップS166)、メモリM14中のカウント値Nを1とし(ステップS167)、メモリM15中のカウント値Mを1とする(ステップS168)。
そして、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データを読み込み(ステップS169)、メモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データを読み込み(ステップS170)、この読み込んだメモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS171、図66(a),(b)参照)。
ここで、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していなければ(ステップS169のNO)、その時の(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの左のカメラ210Lの第1のマーク位置の撮像データのいずれかの画素データが第1レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第1のマーク位置PM1の左の第1レジスタマークRM1L1が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図20:ステップS172)、メモリM8中のカメラの左右方向の画素数aとメモリM17中の第1レジスタマークの左右方向の画素数cとを読み込み(ステップS173,S174)、ステップS175でカウント値Xが「a−c+1」を超えるまで、ステップS167〜S175の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−c+1」を超えれば(ステップS175のYES)、左のカメラ210Lの第1のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS176)、メモリM9中のカメラの天地方向の画素数bとメモリM18中の第1レジスタマークの天地方向の画素数dとを読み込み(ステップS177,S178)、ステップS179でカウント値Yが「b−d+1」を超えるまで、ステップS166〜S179の処理動作を繰り返す。
この処理動作中、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していることが確認されると(図19:ステップS171のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図21:ステップS181)、メモリM17から第1レジスタマークの左右方向の画素数cを読み込み(ステップS182)、ステップS183でカウント値Mが第1レジスタマークの左右方向の画素数cを超えるまで、ステップS169〜S183の処理動作を繰り返す。
カウント値Mが第1レジスタマークの左右方向の画素数cを超えると(ステップS183のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS184)、メモリM18から第1レジスタマークの天地方向の画素数dを読み込み(ステップS185)、ステップS186でカウント値Nが第1レジスタマークの天地方向の画素数dを超えるまで、ステップS168〜S186の処理動作を繰り返す。
このようにして、CPU201は、メモリM7中のa×bの画素の撮像データ(左の第1のマーク位置の撮像データ)に対してメモリM16中のc×dの第1レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第1レジスタマークの天地方向の画素数dを超えると(ステップS186のYES)、メモリM7中のa×bの画素の撮像データの(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの範囲にメモリM16中のc×dの第1レジスタマークの画素データが含まれていたと判断する。すなわち、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中に第1レジスタマークRM1(RM1L1)が含まれていたと判断する。
なお、ステップS179でカウント値Yが「b−d+1」を超えた場合には(ステップS179のYES)、左のカメラ210Lの第1のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中には第1レジスタマークRM1(RM1L1)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS180)。
CPU201は、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中に第1レジスタマークRM1L1が含まれていたと判断すると(ステップS186のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS187)、その読み込んだカウント値Xより第1レジスタマークRM1L1のX方向の測定位置M1x1Lを演算し、メモリM19中のX方向のアドレス位置に書き込む(ステップS188)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS189)、その読み込んだカウント値Yより第1レジスタマークRM1L1のY方向の測定位置M1y1Lを演算し、メモリM19中のY方向のアドレス位置に書き込む(ステップS190、図66(c)参照)。
尚、レジスタマークRM1L1のX方向の測定位置M1x1Lは、左カメラ210Lが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M1y1Lは、第1のマーク位置PM1とカウント値Yから求められる。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図22:ステップS191)、メモリM6中のカウント値Xを1とし(ステップS192)、メモリM14中のカウント値Nを1とし(ステップS193)、メモリM15中のカウント値Mを1とする(ステップS194)。
そして、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データを読み込み(ステップS195)、メモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データを読み込み(ステップS196)、この読み込んだメモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS197、図68(a),(b)参照)。
ここで、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していなければ(ステップS197のNO)、その時の(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの左のカメラ210Lの第2のマーク位置の撮像データのいずれかの画素データが第1レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第2のマーク位置PM2の左の第1レジスタマークRM1L2が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図23:ステップS198)、メモリM8中のカメラの左右方向の画素数aとメモリM17中の第1レジスタマークの左右方向の画素数cとを読み込み(ステップS199,S200)、ステップS201でカウント値Xが「a−c+1」を超えるまで、ステップS193〜S201の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−c+1」を超えれば(ステップS201のYES)、左のカメラ210Lの第2のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS202)、メモリM9中のカメラの天地方向の画素数bとメモリM18中の第1レジスタマークの天地方向の画素数dとを読み込み(ステップS203,S204)、ステップS205でカウント値Yが「b−d+1」を超えるまで、ステップS192〜S205の処理動作を繰り返す。
この処理動作中、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していることが確認されると(図22:ステップS197のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図24:ステップS207)、メモリM17から第1レジスタマークの左右方向の画素数cを読み込み(ステップS208)、ステップS209でカウント値Mが第1レジスタマークの左右方向の画素数cを超えるまで、ステップS195〜S209の処理動作を繰り返す。
カウント値Mが第1レジスタマークの左右方向の画素数cを超えると(ステップS209のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS210)、メモリM18から第1レジスタマークの天地方向の画素数dを読み込み(ステップS211)、ステップS212でカウント値Nが第1レジスタマークの天地方向の画素数dを超えるまで、ステップS194〜S212の処理動作を繰り返す。
このようにして、CPU201は、メモリM12中のa×bの画素の撮像データ(左の第2のマーク位置の撮像データ)に対してメモリM16中のc×dの第1レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第1レジスタマークの天地方向の画素数dを超えると(ステップS212のYES)、メモリM12中のa×bの画素の撮像データの(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの範囲にメモリM16中のc×dの第1レジスタマークの画素データが含まれていたと判断する。すなわち、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中に第1レジスタマークRM1(RM1L2)が含まれていたと判断する。
なお、ステップS205でカウント値Yが「b−d+1」を超えた場合には(ステップS205のYES)、左のカメラ210Lの第2のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中には第1レジスタマークRM1(RM1L2)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS206)。
CPU201は、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中に第1レジスタマークRM1L2が含まれていたと判断すると(ステップS212のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS213)、その読み込んだカウント値Xより第1レジスタマークRM1L2のX方向の測定位置M1x2Lを演算し、メモリM20中のX方向のアドレス位置に書き込む(ステップS214)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS215)、その読み込んだカウント値Yより第1レジスタマークRM1L2のY方向の測定位置M1y2Lを演算し、メモリM20中のY方向のアドレス位置に書き込む(ステップS216、図68(c)参照)。
尚、レジスタマークRM1L2のX方向の測定位置M1x2Lは、左カメラ210Lが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M1y2Lは、第2のマーク位置PM2とカウント値Yから求められる。
そして、CPU201は、メモリM19のY方向のアドレス位置より第1のマーク位置PM1における第1レジスタマークRM1L1のY方向の測定位置M1y1Lを読み込み(図25:ステップS217)、またメモリM21から第1のマーク位置PM1における第1レジスタマークRM1のY方向の基準位置M1y1rを読み込み(ステップS218)、第1のマーク位置PM1における第1レジスタマークRM1L1のY方向の測定位置M1y1Lから第1のマーク位置PM1における第1レジスタマークRM1のY方向の基準位置M1y1rを減算し、第1のマーク位置PM1における第1レジスタマークRM1L1のY方向のずれ量ΔM1y1Lを求め(図66(c)参照)、この求めた第1レジスタマークRM1L1のY方向のずれ量ΔM1y1LをメモリM22に書き込む(ステップS219)。
また、CPU201は、メモリM19のY方向のアドレス位置より第1のマーク位置PM1における第1レジスタマークRM1L1のY方向の測定位置M1y1Lを読み込み(ステップS220)、メモリM20のY方向のアドレス位置より第2のマーク位置PM2における第1レジスタマークRM1L2のY方向の測定位置M1y2Lを読み込み(ステップS221)、第1のマーク位置PM1における第1レジスタマークRM1L1のY方向の測定位置M1y1Lより第2のマーク位置PM2における第1レジスタマークRM1L2のY方向の測定位置M1y2Lを減算して左の第1レジスタマーク間の距離LM1Lを求め(図70(a)参照)、この求めた左の第1レジスタマーク間の距離LM1LをメモリM23に書き込む(ステップS222)。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図26:ステップS223)、メモリM6中のカウント値Xを1とし(ステップS224)、メモリM14中のカウント値Nを1とし(ステップS225)、メモリM15中のカウント値Mを1とする(ステップS226)。
そして、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データを読み込み(ステップS227)、メモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データを読み込み(ステップS228)、この読み込んだメモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS229、図67(a),(b)参照)。
ここで、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していなければ(ステップS229のNO)、その時の(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの右のカメラ210Rの第1のマーク位置の撮像データのいずれかの画素データが第1レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第1のマーク位置PM1の右の第1レジスタマークRM1R1が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図27:ステップS230)、メモリM8中のカメラの左右方向の画素数aとメモリM17中の第1レジスタマークの左右方向の画素数cとを読み込み(ステップS231,S232)、ステップS231でカウント値Xが「a−c+1」を超えるまで、ステップS225〜S233の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−c+1」を超えれば(ステップS233のYES)、右のカメラ210Rの第1のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS234)、メモリM9中のカメラの天地方向の画素数bとメモリM18中の第1レジスタマークの天地方向の画素数dとを読み込み(ステップS235,S236)、ステップS237でカウント値Yが「b−d+1」を超えるまで、ステップS224〜S237の処理動作を繰り返す。
この処理動作中、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していることが確認されると(図26:ステップS229のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図28:ステップS239)、メモリM17から第1レジスタマークの左右方向の画素数cを読み込み(ステップS240)、ステップS241でカウント値Mが第1レジスタマークの左右方向の画素数cを超えるまで、ステップS227〜S241の処理動作を繰り返す。
カウント値Mが第1レジスタマークの左右方向の画素数cを超えると(ステップS241のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS242)、メモリM18から第1レジスタマークの天地方向の画素数dを読み込み(ステップS243)、ステップS244でカウント値Nが第1レジスタマークの天地方向の画素数dを超えるまで、ステップS226〜S244の処理動作を繰り返す。
このようにして、CPU201は、メモリM11中のa×bの画素の撮像データ(右の第1のマーク位置の撮像データ)に対してメモリM16中のc×dの第1レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第1レジスタマークの天地方向の画素数dを超えると(ステップS244のYES)、メモリM11中のa×bの画素の撮像データの(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの範囲にメモリM16中のc×dの第1レジスタマークの画素データが含まれていたと判断する。すなわち、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中に第1レジスタマークRM1(RM1R1)が含まれていたと判断する。
なお、ステップS237でカウント値Yが「b−d+1」を超えた場合には(ステップS237のYES)、右のカメラ210Rの第1のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中には第1レジスタマークRM1(RM1R1)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS238)。
CPU201は、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中に第1レジスタマークRM1R1が含まれていたと判断すると(ステップS244のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS245)、その読み込んだカウント値Xより第1レジスタマークRM1R1のX方向の測定位置M1x1Rを演算し、メモリM24中のX方向のアドレス位置に書き込む(ステップS246)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS247)、その読み込んだカウント値Yより第1レジスタマークRM1R1のY方向の測定位置M1y1Rを演算し、メモリM24中のY方向のアドレス位置に書き込む(ステップS248、図67(c)参照)。
尚、レジスタマークRM1R1のX方向の測定位置M1x1Rは、右カメラ210Rが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M1y1Rは、第1のマーク位置PM1とカウント値Yから求められる。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図29:ステップS249)、メモリM6中のカウント値Xを1とし(ステップS250)、メモリM14中のカウント値Nを1とし(ステップS251)、メモリM15中のカウント値Mを1とする(ステップS252)。
そして、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データを読み込み(ステップS253)、メモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データを読み込み(ステップS254)、この読み込んだメモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS255,図69(a),(b)参照)。
ここで、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していなければ(ステップS255のNO)、その時の(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの右のカメラ210Rの第2のマーク位置の撮像データのいずれかの画素データが第1レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第2のマーク位置PM2の右の第1レジスタマークRM1R2が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図30:ステップS256)、メモリM8中のカメラの左右方向の画素数aとメモリM17中の第1レジスタマークの左右方向の画素数cとを読み込み(ステップS257,S258)、ステップS259でカウント値Xが「a−c+1」を超えるまで、ステップS251〜S259の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−c+1」を超えれば(ステップS259のYES)、右のカメラ210Rの第2のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS260)、メモリM9中のカメラの天地方向の画素数bとメモリM18中の第1レジスタマークの天地方向の画素数dとを読み込み(ステップS261,S262)、ステップS263でカウント値Yが「b−d+1」を超えるまで、ステップS250〜S263の処理動作を繰り返す。
この処理動作中、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM16中の(M,N)のアドレス位置の第1レジスタマークの画素データとが一致していることが確認されると(図29:ステップS255のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図31:ステップS265)、メモリM17から第1レジスタマークの左右方向の画素数cを読み込み(ステップS266)、ステップS267でカウント値Mが第1レジスタマークの左右方向の画素数cを超えるまで、ステップS253〜S267の処理動作を繰り返す。
カウント値Mが第1レジスタマークの左右方向の画素数cを超えると(ステップS267のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS268)、メモリM18から第1レジスタマークの天地方向の画素数dを読み込み(ステップS269)、ステップS270でカウント値Nが第1レジスタマークの天地方向の画素数dを超えるまで、ステップS252〜S270の処理動作を繰り返す。
このようにして、CPU201は、メモリM13中のa×bの画素の撮像データ(右の第2のマーク位置の撮像データ)に対してメモリM16中のc×dの第1レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第1レジスタマークの天地方向の画素数dを超えると(ステップS270のYES)、メモリM13中のa×bの画素の撮像データの(X、Y)のアドレスから(X+c−1、Y+d−1)のアドレスまでの範囲にメモリM16中のc×dの第1レジスタマークの画素データが含まれていたと判断する。すなわち、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中に第1レジスタマークRM1(RM1R2)が含まれていたと判断する。
なお、ステップS263でカウント値Yが「b−d+1」を超えた場合には(ステップS263のYES)、右のカメラ210Rの第2のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中には第1レジスタマークRM1(RM1R2)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS264)。
CPU201は、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中に第1レジスタマークRM1R2が含まれていたと判断すると(ステップS270のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS271)、その読み込んだカウント値Xより第1レジスタマークRM1R2のX方向の測定位置M1x2Rを演算し、メモリM25中のX方向のアドレス位置に書き込む(ステップS272)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS273)、その読み込んだカウント値Yより第1レジスタマークRM1R2のY方向の測定位置M1y2Rを演算し、メモリM25中のY方向のアドレス位置に書き込む(ステップS274、図69(c)参照)。
尚、レジスタマークRM1R2のX方向の測定位置M1x2Rは、右カメラ210Rが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M1y2Rは、第2のマーク位置PM2とカウント値Yから求められる。
そして、CPU201は、メモリM24のY方向のアドレス位置より第1のマーク位置PM1における第1レジスタマークRM1R1のY方向の測定位置M1y1Rを読み込み(図32:ステップS275)、またメモリM21から第1のマーク位置PM1における第1レジスタマークRM1のY方向の基準位置M1y1rを読み込み(ステップS276)、第1のマーク位置PM1における第1レジスタマークRM1R1のY方向の測定位置M1y1Rから第1のマーク位置PM1における第1レジスタマークRM1のY方向の基準位置M1y1rを減算し、第1のマーク位置PM1における第1レジスタマークRM1R1のY方向のずれ量ΔM1y1Rを求め(図67(c)参照)、この求めた第1レジスタマークRM1R1のY方向のずれ量ΔM1y1RをメモリM26に書き込む(ステップS277)。
〔第1のマーク位置における第1レジスタマークのY方向のずれ量の算出〕
そして、CPU201は、メモリM22より左の第1のマーク位置PM1における第1レジスタマークRM1L1のY方向のずれ量ΔM1y1Lを読み込み(ステップS278)、この読み込んだ左の第1のマーク位置PM1における第1レジスタマークRM1L1のY方向のずれ量ΔM1y1LにメモリM26に書き込まれている右の第1のマーク位置PM1における第1レジスタマークRM1R1のY方向のずれ量ΔM1y1Rを加算し、この左の第1のマーク位置PM1における第1レジスタマークRM1L1のY方向のずれ量ΔM1y1Lと右の第1のマーク位置PM1における第1レジスタマークRM1R1のY方向のずれ量ΔM1y1Rとの合計値を2で除算して、左右の第1のマーク位置PM1における第1レジスタマークRM1の平均値ΔM1y1を求め(ΔM1y1=(ΔM1y1L+ΔM1y1R)/2)、この求めた左右の第1のマーク位置PM1における第1レジスタマークRM1の平均値ΔM1y1を第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1としてメモリM27に書き込む(ステップS279、図70(a),(b),(c)参照)。
〔第1レジスタマーク間の距離の算出〕
また、CPU201は、メモリM24のY方向のアドレス位置より第1のマーク位置PM1における第1レジスタマークRM1R1のY方向の測定位置M1y1Rを読み込み(ステップS280)、メモリM25のY方向のアドレス位置より第2のマーク位置PM2における第1レジスタマークRM1R2のY方向の測定位置M1y2Rを読み込み(図30:ステップS281)、第1のマーク位置PM1における第1レジスタマークRM1R1のY方向の測定位置M1y1Rより第2のマーク位置PM2における第1レジスタマークRM1R2のY方向の測定位置M1y2Rを減算して右の第1レジスタマーク間の距離LM1Rを求め(図70(b)参照)、この求めた右の第1レジスタマーク間の距離LM1RをメモリM28に書き込む(ステップS282)。
そして、CPU201は、メモリM23から左の第1レジスタマーク間の距離LM1Lを読み込み(ステップS283)、この読み込んだ左の第1レジスタマーク間の距離LM1LにメモリM28に書き込まれている右の第1レジスタマーク間の距離LM1Rを加算すると共に、この左の第1レジスタマーク間の距離LM1Lと右の第1レジスタマーク間の距離LM1Rとの合計値を2で除算して、左右のレジスタマーク間の距離の平均値LM1を求め(LM1=(LM1L+LM1R)/2)、この求めた左右のレジスタマーク間の距離の平均値LM1を天地方向に離れた1対の第1レジスタマーク間の距離としてメモリM29に書き込む(ステップS284、図70(a),(b),(d)参照)。
〔第1レジスタマーク間の伸縮率の算出〕
そして、CPU201は、メモリM30から第1レジスタマーク間の基準距離LM1rを読み込み(ステップS285)、メモリM29に書き込まれている天地方向の1対のレジスタマーク間の距離(左右の第1レジスタマーク間の距離の平均値)LM1を第1レジスタマーク間の基準距離LM1rで除算し、その除算結果を天地方向に離れた1対の第1レジスタマーク間の伸縮率η1(η1=LM1/LM1r)としてメモリM31に書き込む(ステップS286、図70(e)参照)。
〔印刷〕
CPU201は、この印刷の準備の終了後、印刷開始スイッチ208がオンとされると(図34:ステップS287のYES)、メモリM32から基準の印刷開始位置PRTSTを読み込む(ステップS288)。この基準の印刷開始位置PRTSTは、図71に示すように、テーブル3にセットされる被印刷物4Aに対する基準の印刷開始位置として予め定められている。
そして、CPU201は、メモリM27から第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1を読み込み(ステップS289)、メモリM74に書き込まれている第1のマーク位置PM1における第2レジスタマークRM2のY方向のずれ量ΔY2を読み込み(ステップS290)、ステップS288で読み込んだ基準の印刷開始位置PRTSTに第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1および第1のマーク位置PM1における第2レジスタマークRM2のY方向のずれ量ΔY2を加算して補正された印刷開始位置PRTST’を求め、メモリM33に書き込む(ステップS291)。この場合、第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1は先のステップS279(図32)においてΔY1=ΔM1y1として求められており、第1のマーク位置PM1における第2レジスタマークRM2のY方向のずれ量ΔY2は先のステップS101(図13)においてΔY2=0とされている。したがって、この場合、補正された印刷開始位置PRTST’は、ステップS279で求められた第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1のみを基準の印刷開始位置PRTSTに加算して補正した位置として得られる。
次に、CPU201は、メモリM34から被印刷物4Aに対して定められている印刷長さlを読み込み(ステップS292)、メモリM31から第1レジスタマーク間の伸縮率η1を読み込み(ステップS293)、メモリM77から第2レジスタマーク間の伸縮率η2を読み込み(ステップS294)、印刷長さlに第1レジスタマーク間の伸縮率η1および第2レジスタマーク間の伸縮率η2を乗算し、補正された印刷長さl’(l’=l×η1×η2)を求め、メモリM35に書き込む(ステップS295)。この場合、第1レジスタマーク間の伸縮率η1は先のステップS286(図33)においてη1=LM1/LM1rとして求められており、第2レジスタマーク間の伸縮率η2は先のステップS102(図13)においてη2=1とされている。したがって、この場合、補正された印刷長さl’は、ステップS286で求められた第1レジスタマーク間の伸縮率η1のみを印刷長さlに乗算して補正した長さとして得られる。
そして、CPU201は、メモリM33から補正された印刷開始位置PRTST’を読み込み(ステップS296)、補正された印刷開始位置PRTST’に補正された印刷長さl’を加算して印刷終了位置PRTENDを求め、その求めた印刷終了位置PRTENDをメモリM36に書き込む(ステップS297)。
また、CPU201は、メモリM37からゴム胴の基準回転速度VBrを読み込み(図35:ステップS298)、メモリM31から第1レジスタマーク間の伸縮率η1を読み込み(ステップS299)、メモリM77から第2レジスタマーク間の伸縮率η2を読み込み(ステップS300)、ゴム胴の基準回転速度VBrに第1レジスタマーク間の伸縮率η1の逆数および第2レジスタマーク間の伸縮率η2の逆数を乗算して印刷中のゴム胴の回転速度VBpを求め(VBp=VBr×1/η1×1/η2)、この求めた印刷中のゴム胴の回転速度VBpをメモリM38に書き込む(ステップS301)。この場合、第1レジスタマーク間の伸縮率η1は先のステップS286(図33)においてη1=LM1/LM1rとして求められており、第2レジスタマーク間の伸縮率η2は先のステップS102(図13)においてη2=1とされている。したがって、この場合、印刷中のゴム胴の回転速度VBpは、ステップS286で求められた第1レジスタマーク間の伸縮率η1の逆数をゴム胴の基準回転速度VBrに乗算して調整した速度として得られる。
〔版胴へのインキの供給〕
そして、CPU201は、メモリM39から版胴の基準回転速度VPrを読み込み(ステップS302)、この読み込んだ版胴の基準回転速度VPrを版胴駆動用モータドライバ218にD/A変換器221を介して出力する(ステップS303)。これにより、版胴1が基準回転速度VPrで回転し始める。
CPU201は、版胴1を基準回転速度VPrで回転させた状態で、インキ装置235にインキ供給開始指令を出力する(ステップS304)。これにより、インキ装置235から版胴1にインキが供給され始める。
CPU201は、このインキ装置235からの版胴1へのインキの供給中、版胴回転位相検出用カウンタ220よりカウント値を読み込み(ステップS305)、この読み込んだ版胴回転位相検出用カウンタ220のカウント値より版胴の現在の回転位相φRを演算し(ステップS306)、メモリM42より版胴の印刷開始位置φSTを読み込み(ステップS307)、版胴の現在の回転位相φRが版胴の印刷開始位置φSTに達したか否かを確認する(ステップS308)。
そして、CPU201は、版胴の現在の回転位相φRが版胴の印刷開始位置φSTに達したことを確認すると(ステップS308のYES)、版胴回転位相検出用カウンタ220よりカウント値を読み込み(図36:ステップS309)、この読み込んだ版胴回転位相検出用カウンタ220のカウント値より版胴の現在の回転位相φRを演算し(ステップS310)、メモリM43より版胴の印刷終了位置φENDを読み込み(ステップS306)、版胴の現在の回転位相φRが版胴の印刷終了位置φENDに達したか否かを確認する(ステップS312)。
CPU201は、版胴の現在の回転位相φRが版胴の印刷終了位置φENDに達したことを確認すると(ステップS312のYES)、版胴駆動用モータドライバ218に停止指令を出力すると共に(ステップS313)、インキ装置235にインキ供給停止指令を出力する(ステップS314)。これにより、版胴1の印刷開始位置φSTから印刷終了位置φENDまでの区間にインキが供給され、このインキが供給された状態で版胴1の回転が停止される。
〔版胴からゴム胴へのインキの転写〕
次に、CPU201は、メモリM37からゴム胴の基準回転速度VBrを読み込み(ステップS315)、その読み込んだゴム胴の基準回転速度VBrをゴム胴駆動用モータドライバ223にD/A変換器226を介して出力する(ステップS316)。これにより、ゴム胴2がゴム胴の基準回転速度VBrで回転し始める。この時、ゴム胴2は、版胴1には接触していない。
CPU201は、ゴム胴2を基準回転速度VBrで回転させた後、ゴム胴回転位相検出用カウンタ225よりカウント値を読み込み(図37:ステップS317)、この読み込んだゴム胴回転位相検出用カウンタ225のカウント値よりゴム胴の現在の回転位相ψRを演算し(ステップS318)、メモリM46よりゴム胴の印刷開始位置ψSTを読み込み(ステップS319)、ゴム胴の現在の回転位相ψRがゴム胴の印刷開始位置ψSTに達したか否かを確認する(ステップS320)。
そして、CPU201は、ゴム胴の現在の回転位相ψRがゴム胴の印刷開始位置ψSTに達したことを確認すると(ステップS320のYES)、胴着脱装置236に着指令を出力し(ステップS321)、ゴム胴2を版胴1に接触させる。そして、CPU201は、メモリM39から版胴の基準回転速度VPrを読み込み(ステップS322)、その読み込んだ版胴の基準回転速度VPrを版胴駆動用モータドライバ218にD/A変換器221を介して出力する(ステップS323)。これにより、版胴1が基準回転速度VPrで回転し始め、版胴1からのインキがゴム胴2に転写され始める。
版胴1からゴム胴2へインキを転写している間、CPU201は、ゴム胴回転位相検出用カウンタ225よりカウント値を読み込み(図38:ステップS324)、この読み込んだゴム胴回転位相検出用カウンタ225のカウント値よりゴム胴の現在の回転位相ψRを演算し(ステップS325)、メモリM47よりゴム胴の印刷終了位置ψENDを読み込み(ステップS326)、ゴム胴の現在の回転位相ψRがゴム胴の印刷終了位置ψENDに達したか否かを確認する(ステップS327)。
そして、CPU201は、ゴム胴の現在の回転位相ψRがゴム胴の印刷終了位置ψENDに達したことを確認すると(ステップS327のYES)、胴着脱装置236に脱指令を出力し(ステップS328)、ゴム胴2を版胴1から離す。すなわち、胴抜きを行う。これにより、ゴム胴2の印刷開始位置ψSTから印刷終了位置ψENDまでの区間に、版胴1からのインキが転写される。
〔ゴム胴の下降〕
CPU201は、版胴1からのゴム胴2へのインキの転写を終えると、版胴駆動用モータドライバ218に停止指令を出力し(ステップS329)、版胴1の回転を停止させる。そして、ゴム胴回転位相検出用カウンタ225よりカウント値を読み込み(図39:ステップS330)、この読み込んだゴム胴回転位相検出用カウンタ225のカウント値よりゴム胴の現在の回転位相ψRを演算し(ステップS331)、メモリM48よりゴム胴の移動開始位置ψMSTを読み込み(ステップS332)、ゴム胴の現在の回転位相ψRがゴム胴の移動開始位置ψMSTに達したか否かを確認する(ステップS333)。
そして、CPU201は、ゴム胴の現在の回転位相ψRがゴム胴の移動開始位置ψMSTに達したことを確認すると(ステップS333のYES)、ゴム胴昇降用エアシリンダ用バルブ234に下降指令を出力する(ステップS334)。これにより、ゴム胴昇降用エアシリンダ233が作動し、ゴム胴2がテーブル3に降ろされる(図72参照)。
〔ゴム胴の天地方向への移動〕
次に、CPU201は、メモリM49からゴム胴の天地方向移動速度vBMを読み込み(ステップS335)、ゴム胴天地方向移動用モータドライバ228に正転指令およびゴム胴の天地方向移動速度vBMをD/A変換器231を介して出力する(ステップS336)。これにより、ゴム胴2が回転しながら天地方向の下流側へ、すなわちテーブル4上の被印刷物4Aのある方向へ、天地方向移動速度vBMで移動し始める。
次に、CPU201は、メモリM50にゴム胴の天地方向位置と回転位相による位相偏差の補正が完了していないことを示す値として「2」を書き込む(図40:ステップS337)。そして、このゴム胴2の天地方向の下流側への移動中、ゴム胴の天地方向位置検出用カウンタ230よりカウント値を読み込み(ステップS338)、この読み込んだゴム胴の天地方向位置検出用カウンタ230のカウント値よりゴム胴の現在の天地方向位置PBMRを演算してメモリM52に書き込むと共に(ステップS339)、メモリM33から補正された印刷開始位置PRTST’を読み込み(ステップS340)、ステップS339で演算したゴム胴の現在の天地方向位置PBMRが補正された印刷開始位置PRTST’に達したか否かを確認する(ステップS341)。
〔ゴム胴の回転位相の調整〕
CPU201は、ステップS341においてゴム胴の現在の天地方向位置PBMRの補正された印刷開始位置PRTST’への到達が確認されるまでの間、ステップS342(図41)〜S362(図42)の処理動作を繰り返す。このステップS342〜S362の処理ではゴム胴の回転位相の調整を行う。このゴム胴の回転位相の調整は次のようにして行われる。
CPU201は、メモリM52からゴム胴の現在の天地方向位置PBMRを読み込み(図41:ステップS342)、メモリM27から第1のマーク位置における第1レジスタマークのY方向のずれ量ΔY1を読み込み(ステップS343)、メモリM74から第1のマーク位置における第2レジスタマークのY方向のずれ量ΔY2を読み込み(ステップS344)、ゴム胴の現在の天地方向位置PBMRに第1のマーク位置における第1レジスタマークのY方向のずれ量ΔY1および第1のマーク位置における第2レジスタマークのY方向のずれ量ΔY2を加算して、補正したゴム胴の現在の天地方向位置PBMR’を求め、この求めた補正したゴム胴の現在の天地方向位置PBMR’をメモリM53に書き込む(ステップS345)。
そして、メモリM54からゴム胴の天地方向位置−あるべきゴム胴の回転位相変換用テーブルを読み込み(ステップS346)、この読み込んだゴム胴の天地方向位置−あるべきゴム胴の回転位相変換用テーブルを用いて、補正したゴム胴の現在の天地方向位置PBMR’より、あるべきゴム胴の回転位相ψmを求める(ステップS347)。
そして、CPU201は、ゴム胴回転位相検出用カウンタ225よりカウント値を読み込み(ステップS348)、この読み込んだゴム胴回転位相検出用カウンタ225のカウント値よりゴム胴の現在の回転位相ψRを求める(ステップS349)。そして、ステップS347で求めたあるべきゴム胴の回転位相ψmよりゴム胴の現在の回転位相ψRを減算し、ゴム胴の現在の回転位相差ΔψRを求め、この求めた現在の回転位相差ΔψRをメモリM56に書き込む(ステップS350)。
次に、CPU201は、ステップS350で求めたゴム胴の現在の回転位相差ΔψRよりゴム胴の現在の回転位相差ΔψRの絶対値を求め(ステップS351)、メモリM58よりゴム胴の回転位相差の許容値αを読み込み(ステップS352)、ゴム胴の現在の回転位相差ΔψRの絶対値がゴム胴の回転位相差の許容値α以下であるか否かを確認する(図42:ステップS353)。
ここで、ゴム胴の現在の回転位相差ΔψRの絶対値がゴム胴の回転位相差の許容値α以下でなければ(ステップS353のNO)、CPU201は、メモリM59よりゴム胴の現在の回転位相差−回転速度の補正値変換テーブルを読み込み(ステップS354)、またメモリM56よりゴム胴の現在の回転位相差ΔψRを読み込み(ステップS355)、ゴム胴の現在の回転位相差−回転速度の補正値変換テーブルを用いてゴム胴の現在の回転位相差ΔψRより回転速度の補正値ΔVを求める(ステップS356)。
そして、CPU201は、メモリM37よりゴム胴の基準回転速度VBrを読み込み(ステップS357)、ゴム胴の基準回転速度VBrに回転速度の補正値ΔVを加算し、補正したゴム胴の回転速度VBr’を求め(ステップS358)、この求めた補正したゴム胴の回転速度VBr’をゴム胴駆動用モータドライバ223にD/A変換器226を介して出力し(ステップS359)、ステップS338(図40)に戻って、同様動作を繰り返す。
これにより、ゴム胴2の回転速度が調整され、ゴム胴の現在の回転位相差ΔψRの絶対値がゴム胴の回転位相差の許容値α以下に合わせ込まれるようになる。
そして、ゴム胴の現在の回転位相差ΔψRの絶対値がゴム胴の回転位相差の許容値α以下になると(図42:ステップS353のYES)、CPU201は、メモリM37よりゴム胴の基準回転速度VBrを読み込み(ステップS360)、この読み込んだゴム胴の基準回転速度VBrをゴム胴駆動用モータドライバ223にD/A変換器226を介して出力し(ステップS361)、メモリM50にゴム胴の天地方向位置と回転位相による位相偏差の補正が完了したことを示す値として「1」を書き込む(ステップS362)。
CPU201は、ゴム胴の現在の天地方向位置PBMRが補正された印刷開始位置PRTST’へ達するまで、このステップS342〜S362の処理動作を繰り返すが、ステップS353においてゴム胴の現在の回転位相差ΔψRの絶対値がゴム胴の回転位相差の許容値α以下にならない場合には、ステップS360〜S362への処理には進まない。この場合、メモリM50にはゴム胴の天地方向位置と回転位相による位相偏差の補正が完了していないことを示す値として「2」が書き込まれたままとなる。
CPU201は、ゴム胴の現在の天地方向位置PBMRが補正された印刷開始位置PRTST’へ達したことを確認すると(図40:ステップS341のYES)、メモリM50に書き込まれている値を読み込み(ステップS363)、メモリM50に書き込まれている値が「1」であるか否かを確認する(図43:ステップS364)。ここで、メモリM50に書き込まれている値が「1」でなければ(ステップS364のNO)、表示器205にエラーを表示するが(ステップS377)、メモリM50に書き込まれている値が「1」であれば(ステップS364のYES)、ゴム胴の天地方向位置と回転位相による位相偏差の補正が完了した状態にあると判断する。
CPU201は、ゴム胴の天地方向位置と回転位相による位相偏差の補正が完了した状態にあると判断すると(ステップS364のYES)、メモリM38から印刷中のゴム胴の回転速度VBpを読み込み(ステップS365)、その読み込んだ印刷中のゴム胴の回転速度VBpをゴム胴駆動用モータドライバ223にD/A変換器226を介して出力する(ステップS366)。これにより、ゴム胴2が印刷中のゴム胴の回転速度VBpで回転し始める(図73参照)。すなわち、補正された印刷開始位置PRTST’から、印刷中のゴム胴の回転速度VBpで回転しながら、ゴム胴2が天地方向の下流側へ移動し、テーブル3上の被印刷物4Aに対して回路(2度目の回路)の印刷が行われて行く。
そして、CPU201は、ゴム胴の天地方向位置検出用カウンタ230よりカウント値を読み込み(ステップS367)、この読み込んだゴム胴の天地方向位置検出用カウンタ230のカウント値よりゴム胴の現在の天地方向位置PBMRを演算し(ステップS368)、メモリM36から印刷終了位置PRTENDを読み込み(ステップS369)、ゴム胴の現在の天地方向位置PBMRが印刷終了位置PRTENDに達したか否かを確認する(ステップS370)。
CPU201は、ゴム胴の現在の天地方向位置PBMRが印刷終了位置PRTENDに達したことを確認すると(ステップS370のYES)、ゴム胴駆動用モータドライバ223に停止指令を出力し(図41:ステップS371)、ゴム胴2の回転を停止させる(図74参照)。そして、ゴム胴昇降用エアシリンダ用バルブ234に上昇指令を出力し(ステップS372)、ゴム胴2をテーブル3から上昇させる(図75参照)。
そして、CPU201は、メモリM49からゴム胴の天地方向移動速度vBMを読み込み(ステップS373)、ゴム胴天地方向移動用モータドライバ228に逆転指令およびゴム胴の天地方向移動速度vBMをD/A変換器231を介して出力する(ステップS374)。これにより、ゴム胴2が回転を停止した状態で天地方向の上流側、すなわち版胴1が位置している側に向かって、天地方向移動速度vBMで移動し始める。
このゴム胴2の天地方向の上流側への移動により、ゴム胴の天地方向の原点位置検出器232がオンとなると(ステップS375のYES)、すなわちゴム胴1が移動を開始する前の最初の位置(原点位置)に戻ると、ゴム胴天地方向移動用モータドライバ228に停止指令を出力する(ステップS376)。これにより、ゴム胴2の天地方向への移動が停止する(図76参照)。
これにより、第1のマーク位置PM1における第2レジスタマークのY方向のずれ量ΔY2をΔY2=0として、第2レジスタマーク間の伸縮率η2をη2=1として、1度目の回路が印刷されている被印刷物4Aへの回路(2度目の回路)の印刷が行われ、図3に示されるような4つの第2レジスタマークRM2が同時に印刷された最初の被印刷物4Bが得られる。
〔印刷終了後のティーチング〕
オペレータは、このようにして4つの第2レジスタマークRM2が同時に印刷された被印刷物4ABを得た後、印刷終了後のティーチングスイッチ209をオンとする。
平台印刷制御装置200のCPU201は、印刷終了後のティーチングスイッチ209がオンとされると(図45:ステップS377のYES)、メモリM1からカメラ移動用モータの回転速度Vcを読み込み(ステップS378)、カメラ移動用モータドライバ212に正転指令およびカメラ移動用モータの回転速度VcをD/A変換器215を介して出力する(ステップS379)。これにより、カメラ移動用モータ211が回転速度Vcで正転し、図3に示された最初の位置を原点位置として、左カメラ210Lおよび右カメラ210Rがテーブル3上を左方向へ同時に移動する。
CPU201は、この左カメラ210Lおよび右カメラ210Rの移動中、カメラ位置検出用カウンタ214のカウント値を読み込み(ステップS380)、このカメラ位置検出用カウンタ214のカウント値より左カメラ210Lおよび右カメラ210Rの現在位置PCMRを演算し(ステップS381)、メモリM4から第1のマーク位置PM1を読み込み(ステップS382)、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第1のマーク位置PM1に達したか否かを確認する(ステップS383)。
CPU201は、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第1のマーク位置PM1に達したことを確認すると(ステップS383のYES)、カメラ移動用モータドライバ212に停止指令を出力して(ステップS384)、左カメラ210Lおよび右カメラ210Rの移動を停止する。そして、左カメラ210Lおよび右カメラ210Rに撮像指令を出力し(ステップS385)、テーブル3にセットされている被印刷物4B上の第2レジスタマークRM2R1を含む領域を左カメラ210Lで撮像し、被印刷物4B上の第2レジスタマークRM2R1を含む領域を右カメラ210Rで撮像する。
そして、CPU201は、左カメラ210Lに撮像データの送信指令を送り(図46:ステップS386)、この送信指令に応じて左カメラ210Lから撮像データが送られてくると(ステップS387のYES)、メモリM5中のカウント値Yを1とし(ステップS388)、メモリM6中のカウント値Xを1とし(ステップS389)、カウント値X,Yで特定される画素位置の左カメラ210Lからの撮像データをメモリM7の(X,Y)のアドレス位置に書き込む(ステップS390)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS391)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS392)、ステップS393でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS390〜S393の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS393のYES)、メモリM5中のカウント値Yに1を加算し(ステップS394)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS395)、ステップS396でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS389〜S396の処理動作を繰り返す。
これにより、メモリM7中に、第1のマーク位置PM1における左カメラ210Lからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図77(a)に示すように、被印刷物4Bの第2レジスタマークRM2L1を含む撮像データがa×bの画素の撮像データとしてメモリM7中に記憶される。なお、メモリM62には、図77(b)に示すように、第2レジスタマークRM2のe×fの画素データがパターンマッチング用のデータとして記憶されている。
次に、CPU201は、右カメラ210Rに撮像データの送信指令を送り(図47:ステップS397)、この送信指令に応じて右カメラ210Rから撮像データが送られてくると(ステップS398のYES)、メモリM5中のカウント値Yを1とし(ステップS399)、メモリM6中のカウント値Xを1とし(ステップS400)、カウント値X,Yで特定される画素位置の右カメラ210Rからの撮像データをメモリM11の(X,Y)のアドレス位置に書き込む(ステップS401)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS402)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS403)、ステップS404でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS401〜S404の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS404のYES)、メモリM5中のカウント値Yに1を加算し(ステップS405)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS406)、ステップS407でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS400〜S407の処理動作を繰り返す。
これにより、メモリM11中に、第1のマーク位置PM1における右カメラ210Rからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図78(a)に示すように、被印刷物4Bの第2レジスタマークRM2R1を含む撮像データがa×bの画素の撮像データとしてメモリM11中に記憶される。
次に、CPU201は、メモリM1からカメラ移動用モータの回転速度Vcを読み込み(図48:ステップS408)、カメラ移動用モータドライバ212に逆転指令およびカメラ移動用モータの回転速度VcをD/A変換器215を介して出力する(ステップS409)。これにより、カメラ移動用モータ211が回転速度Vcで逆転し、図3において第1のマーク位置PM1に停止していた左カメラ210Lおよび右カメラ210Rが、テーブル3上を右方向へ同時に移動する。
CPU201は、この左カメラ210Lおよび右カメラ210Rの移動中、カメラ位置検出用カウンタ214のカウント値を読み込み(ステップS410)、このカメラ位置検出用カウンタ214のカウント値より左カメラ210Lおよび右カメラ210Rの現在位置PCMRを演算し(ステップS411)、メモリM10から第2のマーク位置PM2を読み込み(ステップS412)、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第2のマーク位置PM2に達したか否かを確認する(ステップS413)。
CPU201は、左カメラ210Lおよび右カメラ210Rの現在位置PCMRが第2のマーク位置PM2に達したことを確認すると(ステップS413のYES)、左カメラ210Lおよび右カメラ210Rに撮像指令を出力し(ステップS414)、被印刷物4B上の第2レジスタマークRM2L2を含む領域を左カメラ210Lで撮像し、被印刷物4B上の第2レジスタマークRM2R2を含む領域を右カメラ210Rで撮像する。
そして、CPU201は、左カメラ210Lに撮像データの送信指令を送り(ステップS415)、この送信指令に応じて左カメラ210Lから撮像データが送られてくると(ステップS416のYES)、メモリM5中のカウント値Yを1とし(ステップS417)、メモリM6中のカウント値Xを1とし(図49:ステップS418)、カウント値X,Yで特定される画素位置の左カメラ210Lからの撮像データをメモリM12の(X,Y)のアドレス位置に書き込む(ステップS419)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS420)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS421)、ステップS422でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS419〜S422の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS422のYES)、メモリM5中のカウント値Yに1を加算し(ステップS423)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS424)、ステップS425でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS418〜S425の処理動作を繰り返す。
これにより、メモリM12中に、第2のマーク位置PM2における左カメラ210Lからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図79(a)に示すように、被印刷物4Bの第2レジスタマークRM2L2を含む撮像データがa×bの画素の撮像データとしてメモリM12中に記憶される。
次に、CPU201は、右カメラ210Rに撮像データの送信指令を送り(ステップS426)、この送信指令に応じて右カメラ210Rから撮像データが送られてくると(ステップS427のYES)、メモリM5中のカウント値Yを1とし(図50:ステップS428)、メモリM6中のカウント値Xを1とし(ステップS429)、カウント値X,Yで特定される画素位置の右カメラ210Rからの撮像データをメモリM13の(X,Y)のアドレス位置に書き込む(ステップS430)。
そして、CPU201は、メモリM6中のカウント値Xに1を加算し(ステップS431)、メモリM8中のカメラの左右方向の画素数aを読み込み(ステップS432)、ステップS433でカウント値Xがカメラの左右方向の画素数aを超えるまで、ステップS430〜S433の処理動作を繰り返す。
そして、カウント値Xがカメラの左右方向の画素数aを超えれば(ステップS433のYES)、メモリM5中のカウント値Yに1を加算し(ステップS434)、メモリM9中のカメラの天地方向の画素数bを読み込み(ステップS435)、ステップS436でカウント値Yがカメラの天地方向の画素数bを超えるまで、ステップS429〜S436の処理動作を繰り返す。
これにより、メモリM13中に、第2のマーク位置PM2における右カメラ210Rからのa×bの画素の撮像データが記憶されるものとなる。ここでは、図80(a)に示すように、被印刷物4Bの第2レジスタマークRM2R2を含む撮像データがa×bの画素の撮像データとしてメモリM13中に記憶される。
そして、CPU201は、左カメラ210Lおよび右カメラ210Rの移動を続け、カメラの原点位置検出器216が左カメラ210Lおよび右カメラ210Rの原点位置(最初の位置)への復帰を検知すると(ステップS437のYES)、カメラ移動用モータドライバ212に停止指令を送り(ステップS438)、左カメラ210Lおよび右カメラ210Rの移動を停止させる。
〔パターンマッチングによる第2レジスタマークの位置の検出〕
次に、CPU201は、メモリM5中のカウント値Yを1とし(図51:ステップS439)、メモリM6中のカウント値Xを1とし(ステップS440)、メモリM14中のカウント値Nを1とし(ステップS441)、メモリM15中のカウント値Mを1とする(ステップS442)。
そして、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データを読み込み(ステップS443)、メモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データを読み込み(ステップS444)、この読み込んだメモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS445、図77(a),(b)参照)。
ここで、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していなければ(ステップS445のNO)、その時の(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの左のカメラ210Lの第1のマーク位置の撮像データのいずれかの画素データが第2レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第1のマーク位置PM1の左の第2レジスタマークRM2L1が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図52:ステップS446)、メモリM8中のカメラの左右方向の画素数aとメモリM63中の第2レジスタマークの左右方向の画素数eとを読み込み(ステップS447,S448)、ステップS449でカウント値Xが「a−e+1」を超えるまで、ステップS441〜S449の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−e+1」を超えれば(ステップS449のYES)、左のカメラ210Lの第1のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS450)、メモリM9中のカメラの天地方向の画素数bとメモリM64中の第2レジスタマークの天地方向の画素数fとを読み込み(ステップS451,S452)、ステップS453でカウント値Yが「b−f+1」を超えるまで、ステップS440〜S453の処理動作を繰り返す。
この処理動作中、メモリM7中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していることが確認されると(図51:ステップS445のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図53:ステップS455)、メモリM63から第2レジスタマークの左右方向の画素数eを読み込み(ステップS456)、ステップS457でカウント値Mが第2レジスタマークの左右方向の画素数eを超えるまで、ステップS443〜S457の処理動作を繰り返す。
カウント値Mが第2レジスタマークの左右方向の画素数eを超えると(ステップS457のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS458)、メモリM64から第2レジスタマークの天地方向の画素数fを読み込み(ステップS459)、ステップS460でカウント値Nが第2レジスタマークの天地方向の画素数fを超えるまで、ステップS442〜S460の処理動作を繰り返す。
このようにして、CPU201は、メモリM7中のa×bの画素の撮像データ(左の第1のマーク位置の撮像データ)に対してメモリM62中のe×fの第2レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第2レジスタマークの天地方向の画素数fを超えると(ステップS460のYES)、メモリM7中のa×bの画素の撮像データの(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの範囲にメモリM62中のe×fの第2レジスタマークの画素データが含まれていたと判断する。すなわち、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中に第2レジスタマークRM2(RM2L1)が含まれていたと判断する。
なお、ステップS453でカウント値Yが「b−f+1」を超えた場合には(ステップS453のYES)、左のカメラ210Lの第1のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中には第2レジスタマークRM2(RM2L1)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS454)。
CPU201は、左カメラ210Lが撮像した第1のマーク位置PM1における画像の中に第2レジスタマークRM2L1が含まれていたと判断すると(ステップS460のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS461)、その読み込んだカウント値Xより第2レジスタマークRM2L1のX方向の測定位置M2x1Lを演算し、メモリM65中のX方向のアドレス位置に書き込む(ステップS462)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS463)、その読み込んだカウント値Yより第2レジスタマークRM2L1のY方向の測定位置M2y1Lを演算し、メモリM65中のY方向のアドレス位置に書き込む(ステップS464、図77(c)参照)。
尚、レジスタマークRM2L1のX方向の測定位置M2x1Lは、左カメラ210Lが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M2y1Lは、第1のマーク位置PM1とカウント値Yから求められる。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図54:ステップS465)、メモリM6中のカウント値Xを1とし(ステップS466)、メモリM14中のカウント値Nを1とし(ステップS467)、メモリM15中のカウント値Mを1とする(ステップS468)。
そして、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データを読み込み(ステップS469)、メモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データを読み込み(ステップS470)、この読み込んだメモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS471、図79(a),(b)参照)。
ここで、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していなければ(ステップS471のNO)、その時の(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの左のカメラ210Lの第2のマーク位置の撮像データのいずれかの画素データが第2レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第2のマーク位置PM2の左の第2レジスタマークRM2L2が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図55:ステップS472)、メモリM8中のカメラの左右方向の画素数aとメモリM63中の第2レジスタマークの左右方向の画素数eとを読み込み(ステップS473,S474)、ステップS475でカウント値Xが「a−e+1」を超えるまで、ステップS467〜S475の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−e+1」を超えれば(ステップS475のYES)、左のカメラ210Lの第2のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS476)、メモリM9中のカメラの天地方向の画素数bとメモリM64中の第2レジスタマークの天地方向の画素数fとを読み込み(ステップS477,S478)、ステップS479でカウント値Yが「b−f+1」を超えるまで、ステップS466〜S479の処理動作を繰り返す。
この処理動作中、メモリM12中の(X+M−1、Y+N−1)のアドレス位置の左カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していることが確認されると(図54:ステップS471のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図56:ステップS481)、メモリM63から第2レジスタマークの左右方向の画素数eを読み込み(ステップS482)、ステップS483でカウント値Mが第2レジスタマークの左右方向の画素数eを超えるまで、ステップS469〜S483の処理動作を繰り返す。
カウント値Mが第2レジスタマークの左右方向の画素数eを超えると(ステップS483のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS484)、メモリM64から第2レジスタマークの天地方向の画素数fを読み込み(ステップS485)、ステップS486でカウント値Nが第2レジスタマークの天地方向の画素数fを超えるまで、ステップS468〜S486の処理動作を繰り返す。
このようにして、CPU201は、メモリM12中のa×bの画素の撮像データ(左の第2のマーク位置の撮像データ)に対してメモリM62中のe×fの第2レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第2レジスタマークの天地方向の画素数fを超えると(ステップS486のYES)、メモリM12中のa×bの画素の撮像データの(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの範囲にメモリM62中のe×fの第2レジスタマークの画素データが含まれていたと判断する。すなわち、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中に第2レジスタマークRM2(RM2L2)が含まれていたと判断する。
なお、ステップS479でカウント値Yが「b−f+1」を超えた場合には(ステップS479のYES)、左のカメラ210Lの第2のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中には第2レジスタマークRM2(RM2L2)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS480)。
CPU201は、左カメラ210Lが撮像した第2のマーク位置PM2における画像の中に第2レジスタマークRM2L2が含まれていたと判断すると(ステップS486のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS487)、その読み込んだカウント値Xより第2レジスタマークRM2L2のX方向の測定位置M2x2Lを演算し、メモリM66中のX方向のアドレス位置に書き込む(ステップS488)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS489)、その読み込んだカウント値Yより第2レジスタマークRM2L2のY方向の測定位置M2y2Lを演算し、メモリM66中のY方向のアドレス位置に書き込む(ステップS490、図79(c)参照)。
尚、レジスタマークRM2L2のX方向の測定位置M2x2Lは、左カメラ210Lが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M2y2Lは、第2のマーク位置PM2とカウント値Yから求められる。
そして、CPU201は、メモリM65のY方向のアドレス位置より第1のマーク位置PM1における第2レジスタマークRM2L1のY方向の測定位置M2y1Lを読み込み(図57:ステップS491)、またメモリM67から第1のマーク位置PM1における第2レジスタマークRM2のY方向の基準位置M2y1rを読み込み(ステップS492)、第1のマーク位置PM1における第2レジスタマークRM2L1のY方向の測定位置M2y1Lから第1のマーク位置PM1における第2レジスタマークRM2のY方向の基準位置M2y1rを減算し、第1のマーク位置PM1における第2レジスタマークRM2L1のY方向のずれ量ΔM2y1Lを求め(図77(c)参照)、この求めた第2レジスタマークRM2L1のY方向のずれ量ΔM2y1LをメモリM68に書き込む(ステップS493)。
また、CPU201は、メモリM65のY方向のアドレス位置より第1のマーク位置PM1における第2レジスタマークRM2L1のY方向の測定位置M2y1Lを読み込み(ステップS494)、メモリM66のY方向のアドレス位置より第2のマーク位置PM2における第2レジスタマークRM2L2のY方向の測定位置M2y2Lを読み込み(ステップS495)、第1のマーク位置PM1における第2レジスタマークRM2L1のY方向の測定位置M2y1Lより第2のマーク位置PM2における第2レジスタマークRM2L2のY方向の測定位置M2y2Lを減算して左の第2レジスタマーク間の距離LM2Lを求め(図81(a)参照)、この求めた左の第2レジスタマーク間の距離LM2LをメモリM69に書き込む(ステップS496)。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図58:ステップS497)、メモリM6中のカウント値Xを1とし(ステップS498)、メモリM14中のカウント値Nを1とし(ステップS499)、メモリM15中のカウント値Mを1とする(ステップS500)。
そして、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データを読み込み(ステップS501)、メモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データを読み込み(ステップS502)、この読み込んだメモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS503、図78(a),(b)参照)。
ここで、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していなければ(ステップS503のNO)、その時の(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの右のカメラ210Rの第1のマーク位置の撮像データのいずれかの画素データが第2レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第1のマーク位置PM1の右の第1レジスタマークRM2R1が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図59:ステップS504)、メモリM8中のカメラの左右方向の画素数aとメモリM63中の第2レジスタマークの左右方向の画素数eとを読み込み(ステップS505,S506)、ステップS507でカウント値Xが「a−e+1」を超えるまで、ステップS499〜S507の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−e+1」を超えれば(ステップS507のYES)、右のカメラ210Rの第1のマーク位置の撮像データの左右方向の端を越えたことになるので、PU201は、メモリM5中のカウント値Yに1を加算し(ステップS508)、メモリM9中のカメラの天地方向の画素数bとメモリM64中の第2レジスタマークの天地方向の画素数fとを読み込み(ステップS509,S510)、ステップS511でカウント値Yが「b−f+1」を超えるまで、ステップS498〜S511の処理動作を繰り返す。
この処理動作中、メモリM11中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していることが確認されると(図58:ステップS503のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図60:ステップS513)、メモリM63から第2レジスタマークの左右方向の画素数eを読み込み(ステップS514)、ステップS515でカウント値Mが第2レジスタマークの左右方向の画素数eを超えるまで、ステップS501〜S515の処理動作を繰り返す。
カウント値Mが第2レジスタマークの左右方向の画素数eを超えると(ステップS515のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS516)、メモリM64から第2レジスタマークの天地方向の画素数fを読み込み(ステップS517)、ステップS518でカウント値Nが第2レジスタマークの天地方向の画素数fを超えるまで、ステップS500〜S518の処理動作を繰り返す。
このようにして、CPU201は、メモリM11中のa×bの画素の撮像データ(右の第1のマーク位置の撮像データ)に対してメモリM62中のe×fの第2レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第2レジスタマークの天地方向の画素数fを超えると(ステップS518のYES)、メモリM11中のa×bの画素の撮像データの(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの範囲にメモリM62中のe×fの第2レジスタマークの画素データが含まれていたと判断する。すなわち、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中に第2レジスタマークRM2(RM2R1)が含まれていたと判断する。
なお、ステップS511でカウント値Yが「b−f+1」を超えた場合には(ステップS511のYES)、右のカメラ210Rの第1のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中には第2レジスタマークRM2(RM2R1)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS512)。
CPU201は、右カメラ210Rが撮像した第1のマーク位置PM1における画像の中に第2レジスタマークRM2R1が含まれていたと判断すると(ステップS518のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS519)、その読み込んだカウント値Xより第2レジスタマークRM2R1のX方向の測定位置M2x1Rを演算し、メモリM70中のX方向のアドレス位置に書き込む(ステップS520)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS521)、その読み込んだカウント値Yより第2レジスタマークRM2R1のY方向の測定位置M2y1Rを演算し、メモリM70中のY方向のアドレス位置に書き込む(ステップS522、図78(c)参照)。
尚、レジスタマークRM2R1のX方向の測定位置M2x1Rは、右カメラ210Rが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M2y1Rは、第1のマーク位置PM1とカウント値Yから求められる。
次に、CPU201は、メモリM5中のカウント値Yを1とし(図61:ステップS523)、メモリM6中のカウント値Xを1とし(ステップS524)、メモリM14中のカウント値Nを1とし(ステップS525)、メモリM15中のカウント値Mを1とする(ステップS526)。
そして、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データを読み込み(ステップS527)、メモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データを読み込み(ステップS528)、この読み込んだメモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の画素データとが一致しているか否かを確認する(ステップS529,図80(a),(b)参照)。
ここで、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していなければ(ステップS529のNO)、その時の(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの右のカメラ210Rの第2のマーク位置の撮像データのいずれかの画素データが第2レジスタマークの画素データと異なり、(X、Y)のアドレスから始まる範囲に第2のマーク位置PM2の右の第1レジスタマークRM2R2が無いことになるので、CPU201は、メモリM6中のカウント値Xに1を加算し(図62:ステップS530)、メモリM8中のカメラの左右方向の画素数aとメモリM63中の第2レジスタマークの左右方向の画素数eとを読み込み(ステップS531,S532)、ステップS533でカウント値Xが「a−e+1」を超えるまで、ステップS525〜S533の処理動作を繰り返す。
この処理動作中、カウント値Xが「a−e+1」を超えれば(ステップS533のYES)、右のカメラ210Rの第2のマーク位置の撮像データの左右方向の端を越えたことになるので、CPU201は、メモリM5中のカウント値Yに1を加算し(ステップS534)、メモリM9中のカメラの天地方向の画素数bとメモリM64中の第2レジスタマークの天地方向の画素数fとを読み込み(ステップS535,S536)、ステップS537でカウント値Yが「b−f+1」を超えるまで、ステップS524〜S537の処理動作を繰り返す。
この処理動作中、メモリM13中の(X+M−1、Y+N−1)のアドレス位置の右カメラの画素データとメモリM62中の(M,N)のアドレス位置の第2レジスタマークの画素データとが一致していることが確認されると(図61:ステップS529のYES)、CPU201は、メモリM15中のカウント値Mに1を加算し(図63:ステップS539)、メモリM63から第2レジスタマークの左右方向の画素数eを読み込み(ステップS540)、ステップS541でカウント値Mが第2レジスタマークの左右方向の画素数eを超えるまで、ステップS527〜S541の処理動作を繰り返す。
カウント値Mが第2レジスタマークの左右方向の画素数eを超えると(ステップS541のYES)、CPU201は、メモリM14中のカウント値Nに1を加算し(ステップS542)、メモリM64から第2レジスタマークの天地方向の画素数fを読み込み(ステップS543)、ステップS544でカウント値Nが第2レジスタマークの天地方向の画素数fを超えるまで、ステップS526〜S544の処理動作を繰り返す。
このようにして、CPU201は、メモリM13中のa×bの画素の撮像データ(右の第2のマーク位置の撮像データ)に対してメモリM62中のe×fの第2レジスタマークの画素データのパターンマッチングを行い、カウント値Nが第2レジスタマークの天地方向の画素数fを超えると(ステップS544のYES)、メモリM13中のa×bの画素の撮像データの(X、Y)のアドレスから(X+e−1、Y+f−1)のアドレスまでの範囲にメモリM62中のe×fの第2レジスタマークの画素データが含まれていたと判断する。すなわち、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中に第2レジスタマークRM2(RM2R2)が含まれていたと判断する。
なお、ステップS537でカウント値Yが「b−f+1」を超えた場合には(ステップS537のYES)、右のカメラ210Rの第2のマーク位置の撮像データの天地方向の端を越えたことになり、CPU201は、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中には第2レジスタマークRM2(RM2R2)が含まれていなかったと判断し、表示器205にエラー表示を行う(ステップS538)。
CPU201は、右カメラ210Rが撮像した第2のマーク位置PM2における画像の中に第2レジスタマークRM2R2が含まれていたと判断すると(ステップS544のYES)、その時のメモリM6中のカウント値Xを読み込み(ステップS545)、その読み込んだカウント値Xより第2レジスタマークRM2R2のX方向の測定位置M2x2Rを演算し、メモリM71中のX方向のアドレス位置に書き込む(ステップS546)。また、その時のメモリM5中のカウント値Yを読み込み(ステップS547)、その読み込んだカウント値Yより第2レジスタマークRM2R2のY方向の測定位置M2y2Rを演算し、メモリM71中のY方向のアドレス位置に書き込む(ステップS548、図80(c)参照)。
尚、レジスタマークRM2R2のX方向の測定位置M2x2Rは、右カメラ210Rが設けられた左右方向位置とカウント値Xから求められ、Y方向の測定位置M2y2Rは、第2のマーク位置PM2とカウント値Yから求められる。
そして、CPU201は、メモリM70のY方向のアドレス位置より第1のマーク位置PM1における第2レジスタマークRM2R1のY方向の測定位置M2y1Rを読み込み(図64:ステップS549)、またメモリM67から第1のマーク位置PM1における第2レジスタマークRM2のY方向の基準位置M2y1rを読み込み(ステップS550)、第1のマーク位置PM1における第2レジスタマークRM2R1のY方向の測定位置M2y1Rから第1のマーク位置PM1における第2レジスタマークRM2のY方向の基準位置M2y1rを減算し、第1のマーク位置PM1における第2レジスタマークRM2R1のY方向のずれ量ΔM2y1Rを求め(図78(c)参照)、この求めた第2レジスタマークRM2R1のY方向のずれ量ΔM2y1RをメモリM72に書き込む(ステップS551)。
〔第1のマーク位置における第2レジスタマークのY方向のずれ量の算出〕
そして、CPU201は、メモリM68より左の第1のマーク位置PM1における第2レジスタマークRM2L1のY方向のずれ量ΔM2y1Lを読み込み(ステップS552)、この読み込んだ左の第1のマーク位置PM1における第2レジスタマークRM2L1のY方向のずれ量ΔM2y1LにメモリM72に書き込まれている右の第1のマーク位置PM1における第2レジスタマークRM2R1のY方向のずれ量ΔM2y1Rを加算し、この左の第1のマーク位置PM1における第2レジスタマークRM2L1のY方向のずれ量ΔM2y1Lと右の第1のマーク位置PM1における第2レジスタマークRM2R1のY方向のずれ量ΔM2y1Rとの合計値を2で除算して、左右の第1のマーク位置PM1における第2レジスタマークRM2の平均値ΔM2y1を求め(ΔM2y1=(ΔM2y1L+ΔM2y1R)/2)、この求めた左右の第1のマーク位置PM1における第2レジスタマークRM2の平均値ΔM2y1をメモリM73に書き込む(ステップS553)。
そして、メモリM27から第1のマーク位置PM1の第1レジスタマークRM1のY方向のずれ量ΔY1(ΔM1y1)を読み込み(ステップS554)、第1のマーク位置PM1における第2レジスタマークRM2の平均値ΔM2y1より第1のマーク位置PM1の第1レジスタマークRM1のY方向のずれ量ΔY1(ΔM1y1)を減算し、第1のマーク位置の第2レジスタマークRM2のY方向のずれ量ΔY2(ΔY2=ΔM2y1−ΔM1y1)を求め、その求めた第1のマーク位置の第2レジスタマークRM2のY方向のずれ量ΔY2をメモリM74に書き込む(ステップS555、図81(a),(b),(c)参照)。
〔第2レジスタマーク間の距離の算出〕
また、CPU201は、メモリM70のY方向のアドレス位置より第1のマーク位置PM1における第2レジスタマークRM2R1のY方向の測定位置M2y1Rを読み込み(図65:ステップS556)、メモリM71のY方向のアドレス位置より第2のマーク位置PM2における第2レジスタマークRM2R2のY方向の測定位置M2y2Rを読み込み(ステップS557)、第1のマーク位置PM1における第2レジスタマークRM2R1のY方向の測定位置M2y1Rより第2のマーク位置PM2における第2レジスタマークRM2R2のY方向の測定位置M2y2Rを減算して右の第2レジスタマーク間の距離LM2Rを求め(図81(b)参照)、この求めた右の第2レジスタマーク間の距離LM2RをメモリM75に書き込む(ステップS558)。
そして、CPU201は、メモリM69から左の第2レジスタマーク間の距離LM2Lを読み込み(ステップS559)、この読み込んだ左の第2レジスタマーク間の距離LM2LにメモリM75に書き込まれている右の第2レジスタマーク間の距離LM2Rを加算すると共に、この左の第2レジスタマーク間の距離LM2Lと右の第2レジスタマーク間の距離LM2Rとの合計値を2で除算して、左右のレジスタマーク間の距離の平均値LM2を求め(LM2=(LM2L+LM2R)/2)、この求めた左右のレジスタマーク間の距離の平均値LM2を天地方向の1対の第2レジスタマーク間の距離としてメモリM76に書き込む(ステップS560、図81(a),(b),(d)参照)。
〔第2レジスタマーク間の伸縮率の算出〕
そして、CPU201は、メモリM29から第1レジスタマーク間の距離(左右の第1レジスタマーク間の距離の平均値)LM1を読み込み(ステップS561)、メモリM76に書き込まれている第2レジスタマーク間の距離(左右の第2レジスタマーク間の距離の平均値)LM2を第1レジスタマーク間の距離LM1で除算し、その除算結果を天地方向に離れた1対の第2レジスタマーク間の伸縮率η2(η2=LM2/LM1)としてメモリM77に書き込む(ステップS562、図81(e)参照)。
〔次の印刷〕
オペレータは、このようにして印刷終了後のティーチングを行った後、被印刷物4B(2度目の回路が印刷された被印刷物4)に替えて、次の被印刷物4A(1度目の回路が印刷されている被印刷物4)をテーブル3上にセットして(図1,図2参照)、印刷準備開始スイッチ207をオンとする(ステップS103(図13))。
すると、平台印刷制御装置200のCPU201は、この印刷準備開始スイッチ207のオンを確認して(図13:ステップS103のYES)、前述と同様にして、「レジスタマークの撮像」、「パターンマッチングによる第1レジスタマークの位置の検出」、「第1のマーク位置における第1レジスタマークのY方向のずれ量の算出」、「第1レジスタマーク間の距離の算出」、「第1レジスタマーク間の伸縮率の算出」を行い、テーブル3上にセットされている被印刷物4Aから第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1(ΔM1y1)を求めてメモリM27に書き込み、第1レジスタマーク間の伸縮率η1(η1=LM1/LM1r)を求めてメモリM31に書き込む。
そして、この印刷の準備の終了後、印刷開始スイッチ208がオンとされると(図34:ステップS287のYES)、CPU201は、前述と同様にして、テーブル3上にセットされている次の被印刷物4Aに対して2度目の回路の印刷を行う。この2度目の回路の印刷に際して、CPU201は、メモリM27に書き込まれている今回の被印刷物4Aから求めた第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1だけではなく、前回の被印刷物4Bから求めた第1のマーク位置PM1における第2レジスタマークRM2のY方向のずれ量ΔY2を用いる。また、メモリM31に書き込まれている今回の被印刷物4Aから求めた第1レジスタマーク間の伸縮率η1だけではなく、前回の被印刷物4Bから求めた第2レジスタマーク間の伸縮率η2を用いる。
すなわち、ステップS291(図34)において、基準の印刷開始位置PRTSTに第1のマーク位置PM1における第1レジスタマークRM1のY方向のずれ量ΔY1および第1のマーク位置PM1における第2レジスタマークRM2のY方向のずれ量ΔY2を加算して補正された印刷開始位置PRTST’を求め、ステップS295(図34)において、印刷長さlに第1レジスタマーク間の伸縮率η1および第2レジスタマーク間の伸縮率η2を乗算し、補正された印刷長さl’(l’=l×η1×η2)を求める。また、ステップS301(図35)において、ゴム胴の基準回転速度VBrに第1レジスタマーク間の伸縮率η1の逆数および第2レジスタマーク間の伸縮率η2の逆数を乗算して印刷中のゴム胴の回転速度VBpを求め(VBp=VBr×1/η1×1/η2)、ステップS345(図41)において、ゴム胴の現在の天地方向位置PBMRに第1のマーク位置における第1レジスタマークのY方向のずれ量ΔY1および第1のマーク位置における第2レジスタマークのY方向のずれ量ΔY2を加算して、補正したゴム胴の現在の天地方向位置PBMR’を求める。
このようにして、本実施の形態では、前処理工程で1度目の回路の印刷が行われている被印刷物4Aへの2度目の回路の印刷が行われ、2度目の回路の印刷では、今回の被印刷物4Aの第1レジスタマークRM1のY方向のずれ量ΔY1と前回の被印刷物4Bの第2レジスタマークRM2のY方向のずれ量ΔY2とに応じて印刷開始位置が調整されるだけではなく、第1レジスタマークスRM1間の距離LM1より求められた今回の被印刷物4Aの印刷される前までの伸縮率η1と、第2レジスタマークスRM2間の距離LM2より求められた前回の被印刷物4Bの印刷された区間の伸縮率η2とに応じて、2度目の回路を印刷する際(2度目の回路の印刷時)のゴム胴2の回転速度が調整されるものとなり、1度目に印刷された回路と2度目に印刷された回路との位置が正確に合わせられるものとなる。
なお、上述した実施の形態では、ゴム胴2を天地方向に移動させるようにしたが、被印刷物4Aがセットされているテーブル3を天地方向に移動させるようにしてもよい。
また、上述した実施の形態では、前処理工程において、被印刷物4Aの左右に天地方向に離れた1対の第1レジスタマークRM1を印刷するようにしたが、図82(a)に示すように、被印刷物4Aの中央にも天地方向に離れた1対の第1レジスタマークRM1(RM1c1,RM1c2)を印刷するなどしてもよく、図82(b)に示すように、被印刷物4Aの中央にだけ天地方向に離れた1対の第1レジスタマークRM1(RM1c1,RM1c2)を印刷するようにしてもよい。被印刷物4Bに印刷する1対の第2レジスタマークRM2についても同様である。
被印刷物4Aの中央にだけ天地方向に離れた1対の第1レジスタマークRM1や第2レジスタマークRM2を印刷するようにすると、第1レジスタマークRM1および第2レジスタマークRM2を含む領域を撮像するカメラが1つで済み、平台印刷制御装置200での処理も簡略化される。
〔実施の形態の拡張〕
以上、実施の形態を参照して本発明を説明したが、本発明は上記の実施の形態に限定されるものではない。本発明の構成や詳細には、本発明の技術思想の範囲内で当業者が理解し得る様々な変更をすることができる。