(57)【要約】【課題】対象物に応じて印字条件をより柔軟に変更できる装置および方法を提供する。【解決手段】印字システム１００は、レーザマーカ１０と、ワークＷとレーザマーカ１０との間の相対位置を３以上の自由度で変化させることが可能なようにレーザマーカ１０を移動させるロボット２０と、制御プログラムを実行することによりレーザマーカ１０およびロボット２０を制御するコントローラ４０と、レーザマーカ１０によるワークＷへの印字のための印字パラメータを設定する第１の設定部５１と、印字パラメータと、ワークＷの三次元形状および位置に関する情報とに基づいて、コントローラ４０の制御プログラムを設定する第２の設定部５２とを備える。【選択図】図１
2020124854.tif 000002
【特許請求の範囲】
【請求項１】
対象物に印字を行うためのマーカと、
前記対象物と前記マーカとの間の相対位置を３以上の自由度で変化させることが可能なように前記マーカを移動させる、マーカ移動装置と、
制御プログラムを実行することにより前記マーカおよび前記マーカ移動装置を制御するコントローラと、
前記コントローラの内部または外部に設けられ、前記マーカによる前記対象物への印字のための印字パラメータを設定する第１の設定部と、
前記コントローラの内部または外部に設けられ、前記印字パラメータと、前記対象物の三次元形状および位置に関する情報とに基づいて、前記コントローラの前記制御プログラムを設定する第２の設定部とを備える、印字システム。
【請求項２】
前記印字パラメータは、前記対象物の個体識別情報を含み、
前記第１の設定部は、外部からの指示を受け付けることにより前記個体識別情報を設定する、請求項１に記載の印字システム。
【請求項３】
前記印字パラメータは、
前記対象物の基準位置に対する印字位置と、前記基準位置からの印字方向とを含む、請求項１または請求項２に記載の印字システム。
【請求項４】
前記第２の設定部は、さらに、
前記対象物の移動速度と、
前記マーカ移動装置の可動範囲と、
前記マーカ移動装置の三次元形状および前記マーカの三次元形状と、
前記マーカの印字可能距離の範囲と、
のうちの少なくとも１つの情報に基づいて、前記制御プログラムを設定する、請求項１から請求項３のいずれか１項に記載の印字システム。
【請求項５】
前記対象物の位置を計測するセンサを含み、
前記第２の設定部は、前記センサにより計測された前記対象物の位置に基づいて前記マーカの目標位置を決定する、請求項１から請求項４のいずれか１項に記載の印字システム。
【請求項６】
前記コントローラは、前記対象物と前記マーカとの間の前記相対位置を変化させながら段階的に印字を実行するように、前記マーカおよび前記マーカ移動装置を制御する、請求項１から請求項５のいずれか１項に記載の印字システム。
【請求項７】
前記第２の設定部は、前記対象物の前記三次元形状および前記位置の情報に基づいて、前記対象物に印字が可能であるかどうかを判定するように構成され、
前記印字システムは、
前記第２の設定部による判定の結果をユーザに通知する通知部をさらに備える、請求項４または請求項５に記載の印字システム。
【請求項８】
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記コントローラは、前記センサの計測結果および前記印字位置情報に基づいて、印字位置を調整するように、前記マーカおよび前記マーカ移動装置を制御する、請求項５に記載の印字システム。
【請求項９】
前記マーカは、レーザマーカである、請求項１から請求項８のいずれか１項に記載の印字システム。
【請求項１０】
対象物に印字を行うためのマーカ部と、
前記対象物と前記マーカ部との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカ部を移動させるマーカ移動部と、
制御プログラムを実行することにより前記マーカ部および前記マーカ移動部を制御する制御部とを備え、
前記制御部は、印字パラメータ、ならびに、前記対象物情報取得部により取得された前記対象物の前記三次元形状および前記位置に基づいて、前記対象物の所定の位置に印字が行われるように、前記マーカ部および前記マーカ移動部を制御する、印字装置。
【請求項１１】
マーカと、前記マーカと対象物との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカを移動させるマーカ移動装置と、コントローラとを備えた印字システムによる、印字方法であって、
前記対象物の三次元形状および位置に関する情報を取得するステップと、
印字パラメータを設定するステップと、
前記印字パラメータと、前記対象物の前記三次元形状および前記位置とに基づいて、前記コントローラの制御プログラムを設定するステップと、
前記制御プログラムを前記コントローラが実行することにより、前記マーカおよび前記マーカ移動装置を制御して前記対象物に印字するステップとを備える、印字方法。
【請求項１２】
前記印字するステップは、
前記対象物と前記マーカとの間の前記相対位置を変化させながら印字を行うことを繰り返すステップを含む、請求項１１に記載の印字方法。
【請求項１３】
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記対象物の三次元形状、前記対象物の位置および前記印字位置情報に基づいて前記マーカおよび前記マーカ移動装置を制御して印字位置を調整するステップを含む、請求項１１に記載の印字方法。
【請求項１４】
コントローラに、
対象物の三次元形状および位置に関する情報を取得するステップと、
印字パラメータと、前記対象物の前記三次元形状および前記位置とに基づいて、マーカと、前記マーカと前記対象物との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカを移動させるマーカ移動装置とを制御して、前記対象物に印字するステップとを実行させる、プログラム。
【請求項１５】
前記印字するステップは、
前記対象物と前記マーカとの間の前記相対位置を変化させながら印字を行うことを繰り返すステップを含む、請求項１４に記載のプログラム。
【請求項１６】
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記印字するステップは、
前記対象物の三次元形状、前記対象物の位置および前記印字位置情報に基づいて前記マーカおよび前記マーカ移動装置を制御して印字位置を調整するステップを含む、請求項１４に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印字システム、印字装置、印字方法およびプログラムに関する。
【背景技術】
【０００２】
対象物の表面に文字、記号、コード等を印字する装置が知られている。たとえば特開２０１６−３６８４０号公報（特許文献１）は、ワークの表面上でレーザビームを走査させることにより、ワークの表面の所定の印字予定位置に所望のキャラクタを印字するレーザ印字装置を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−３６８４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
対象物の種類あるいは材料が変更されたときには、たとえば印字の位置あるいは印字面の高さといったような印字条件を変更する必要が生じうる。このような変更を実現するために、印字装置を改造あるいは変更する可能性がある。装置の改造が不要である場合にも、ソフトウェアの設定を変更する必要が生じる可能性がある。したがって、印字条件の設定を変更するために費用および工数を要するという課題がある。
【０００５】
本発明の目的は、対象物に応じて印字条件をより柔軟に変更できる装置および方法を提供することである。
【課題を解決するための手段】
【０００６】
本開示の一例では、印字システムは、対象物に印字を行うためのマーカと、対象物とマーカとの間の相対位置を３以上の自由度で変化させることが可能なようにマーカを移動させる、マーカ移動装置と、制御プログラムを実行することによりマーカおよびマーカ移動装置を制御するコントローラと、コントローラの内部または外部に設けられ、マーカによる対象物への印字のための印字パラメータを設定する第１の設定部と、コントローラの内部または外部に設けられ、印字パラメータと、対象物の三次元形状および位置に関する情報とに基づいて、コントローラの制御プログラムを設定する第２の設定部とを備える。
【０００７】
この開示によれば、マーカは、マーカ移動装置によって、対象物との間の相対位置を３以上の自由度で変化させることができる。したがって、対象物のさまざまな位置に印字を行うことができる。さらに、マーカ自体の印字可能範囲よりも広い範囲で印字を行うことができる。あるいは静止した対象物だけでなく移動する対象物にも印字を行うことができる。コントローラの制御プログラムを設定することにより、このような印字のための条件を設定することができる。制御プログラムは、印字パラメータと、対象物の三次元形状および位置に関する情報とにより設定可能である。したがって、装置を改造することなく印字条件を変更することができる。
【０００８】
なお、「印字」とは、対象物に、文字、記号、図形、コード等を付すことを意味する。
上述の開示において、印字パラメータは、対象物の個体識別情報を含む。第１の設定部は、外部からの指示を受け付けることにより個体識別情報を設定する。
【０００９】
この開示によれば、対象物の所望の位置に個体識別情報を付すことができる。
上述の開示において、印字パラメータは、対象物の基準位置に対する印字位置と、基準位置からの印字方向とを含む。
【００１０】
この開示によれば、対象物の所望の位置において任意の方向に印字を行うことができる。
【００１１】
上述の開示において、第２の設定部は、さらに、対象物の移動速度と、マーカ移動装置の可動範囲と、マーカ移動装置の三次元形状およびマーカの三次元形状と、マーカの印字可能距離の範囲と、のうちの少なくとも１つの情報に基づいて、制御プログラムを設定する。
【００１２】
この開示によれば、対象物が移動する場合において、マーカあるいはマーカ移動装置と、対象物との衝突あるいは干渉を回避しながら、対象物に印字を行うことができる。
【００１３】
上述の開示において、印字システムは、対象物の位置を計測するセンサを含む。第２の設定部は、センサにより計測された対象物の位置に基づいてマーカの目標位置を決定する。
【００１４】
この開示によれば、マーカの目標位置をセンサの計測結果に基づいて決定することができるので、マーカを目標位置に移動させて、対象物に印字を行うことができる。したがって対象物の所定の印字位置に印字が可能である。
【００１５】
上述の開示において、コントローラは、対象物とマーカとの間の相対位置を変化させながら段階的に印字を実行するように、マーカおよびマーカ移動装置を制御する。
【００１６】
この開示によれば、印字位置を変化させながら段階的に印字を行うことができる。たとえば対象物の表面に起伏がある場合、あるいは、対象物の表面が曲面である場合には、印字面とマーカとの距離が一定ではない。このような場合、印字面とマーカとの距離が一定であるとの前提でワークに印字を行うと、印字の品質が劣化する可能性がある。しかし、段階的に印字を行うことにより、常に望ましい印字条件で印字を行うことができる。したがって印字品質の低下を抑えることができる。
【００１７】
上述の開示において、第２の設定部は、対象物の三次元形状および位置の情報に基づいて、対象物に印字が可能であるかどうかを判定するように構成される。印字システムは、第２の設定部による判定の結果をユーザに通知する通知部をさらに備える。
【００１８】
この開示によれば、実際の印字に先立って、対象物に印字が可能かどうかをユーザが知ることができる。
【００１９】
上述の開示において、印字パラメータは、冗長性をもつ印字位置情報を含む。コントローラは、センサの計測結果および印字位置情報に基づいて、印字位置を調整するように、マーカおよびマーカ移動装置を制御する。
【００２０】
この開示によれば、印字位置において印字が不可と判定される場合であっても、他の印字位置において、印字が可能であることが期待できる。したがって、対象物への印字が可能となる確率を高めることができる。対象物の印字可能な位置に印字が行われるよう、センサの計測結果および印字位置情報に基づいて、マーカおよびマーカ移動装置を制御することができる。したがって、たとえば複雑な形状を有する対象物において、印字を可能とすることができる。
【００２１】
上述の開示において、マーカは、レーザマーカである。
この開示によれば、レーザマーカを用いた印字において、対象物に応じて印字条件を柔軟に変更することができる。これにより利便性に優れたレーザマーカを提供できる。
【００２２】
本開示の一例では、印字装置は、対象物に印字を行うためのマーカ部と、対象物とマーカ部との間の相対位置を３以上の自由度で変化させることが可能なようにマーカ部を移動させるマーカ移動部と、制御プログラムを実行することによりマーカ部およびマーカ移動部を制御する制御部とを備え、制御部は、印字パラメータ、ならびに、対象物情報取得部により取得された対象物の三次元形状および位置に基づいて、対象物の所定の位置に印字が行われるように、マーカ部およびマーカ移動部を制御する。
【００２３】
この開示によれば、マーカ部は、マーカ移動部によって、対象物との間の相対位置を３以上の自由度で変化させることができる。制御部の制御プログラムを設定することにより、このような印字のための条件を設定することができる。制御プログラムは、印字パラメータと、対象物の三次元形状および位置に関する情報とにより設定可能である。したがって、装置を改造することなく印字条件を変更することができる。
【００２４】
本開示の一例では、印字方法は、マーカと、マーカと対象物との間の相対位置を３以上の自由度で変化させることが可能なようにマーカを移動させるマーカ移動装置と、コントローラとを備えた印字システムによる、印字方法である。印字方法は、対象物の三次元形状および位置に関する情報を取得するステップと、印字パラメータを設定するステップと、印字パラメータと、対象物の三次元形状および位置とに基づいて、コントローラの制御プログラムを設定するステップと、制御プログラムをコントローラが実行することにより、マーカおよびマーカ移動装置を制御して対象物に印字するステップとを備える。
【００２５】
この開示によれば、制御プログラムを設定することにより装置を改造することなく印字条件を変更することができる。したがって、システムあるいは装置の複雑な改造あるいは変更を伴わずに対象物に応じた印字が可能となる。
【００２６】
上述の開示において、印字するステップは、対象物とマーカとの間の相対位置を変化させながら印字を行うことを繰り返すステップを含む。
【００２７】
この開示によれば、印字位置を変化させながら繰り返し印字することにより、常に望ましい印字条件で印字を行うことができる。したがって印字品質の低下を抑えることができる。
【００２８】
上述の開示において、印字パラメータは、冗長性をもつ印字位置情報を含む。印字方法は、対象物の三次元形状、対象物の位置および印字位置情報に基づいてマーカおよびマーカ移動装置を制御して印字位置を調整するステップを含む。
【００２９】
この開示によれば、ある印字位置において印字が不可であっても、他の印字位置において、印字が可能であることが期待できる。したがって、対象物への印字が可能となる確率を高めることができる。対象物の印字可能な位置に印字が行われるよう、センサの計測結果および印字位置情報に基づいて、マーカおよびマーカ移動装置を制御することができる。したがって、たとえば複雑な形状を有する対象物において、印字を可能とすることができる。
【００３０】
本開示の一例では、プログラムは、コントローラに、対象物の三次元形状および位置に関する情報を取得するステップと、印字パラメータと、対象物の三次元形状および位置とに基づいて、マーカと、マーカと対象物との間の相対位置を３以上の自由度で変化させることが可能なようにマーカを移動させるマーカ移動装置とを制御して、対象物に印字するステップとを実行させる、プログラムである。
【００３１】
この開示によれば、制御プログラムを設定することにより装置を改造することなく印字条件を変更することができる。したがって、システムあるいは装置の複雑な改造あるいは変更を伴わずに対象物に応じた印字が可能となる。
【００３２】
上述の開示において、印字するステップは、対象物とマーカとの間の相対位置を変化させながら印字を行うことを繰り返すステップを含む。
【００３３】
この開示によれば、印字位置を変化させながら繰り返し印字することにより、常に望ましい印字条件で印字を行うことができる。したがって印字品質の低下を抑えることができる。
【００３４】
上述の開示において、印字パラメータは、冗長性をもつ印字位置情報を含み、印字するステップは、対象物の三次元形状、対象物の位置および印字位置情報に基づいてマーカおよびマーカ移動装置を制御して印字位置を調整するステップを含む。
【００３５】
この開示によれば、ある印字位置において印字が不可であっても、他の印字位置において、印字が可能であることが期待できる。したがって、対象物への印字が可能となる確率を高めることができる。対象物の印字可能な位置に印字が行われるよう、センサの計測結果および印字位置情報に基づいて、マーカおよびマーカ移動装置を制御することができる。したがって、たとえば複雑な形状を有する対象物において、印字を可能とすることができる。
【発明の効果】
【００３６】
本発明によれば、対象物に応じて印字装置の印字条件を柔軟に変更することができる。
【図面の簡単な説明】
【００３７】
【図１】本実施の形態に係る印字システムの一つの構成例を示すブロック図である。
【図２】図１に示したコントローラのハードウエア構成を示す図である。
【図３】図１に示すレーザマーカの第１の構成例を示した図である。
【図４】図１に示すレーザマーカの第２の構成例を示した図である。
【図５】印字システムの運用時における印字システムの動作を説明するための模式図である。
【図６】本実施の形態に係る印字システムの処理の流れを示すフローチャートである。
【図７】ワークの裏面への印字のために用いられるコンベアの形状を説明する模式図である。
【図８】ワークの裏面への印字のために用いられるトレイの構造を説明する模式図である。
【図９】ワークＷの表面が曲面である場合の印字を説明するための模式図である。
【図１０】ワークの側面への印字を説明する図である。
【図１１】観測座標系からマーカ座標系への座標変換を説明するための図である。
【図１２】印字パラメータを設定するための設定画面の例を示した図である。
【図１３】ワークにおける印字位置の指定の例を示した図である。
【図１４】印字可否の判断のフローの例を示したフローチャートである。
【図１５】印字可否の判断の別の例を示す図である。
【図１６】複数のワークが配置された例示的なトレイの上面図である。
【図１７】図１６に示した各ワークの側面図である。
【図１８】本実施の形態に係る印字システムとリーダとを組み合わせたシステムの構成図である。
【発明を実施するための形態】
【００３８】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００３９】
＜適用例＞
まず、図１を参照して、本発明が適用される場面の一例について説明する。図１は、本実施の形態に係る印字システムの一つの構成例を示すブロック図である。図１に示すように、印字システム１００は、レーザマーカ１０と、ロボット２０と、センサ３０と、コントローラ４０と、設定装置５０と、上位システム６０と、ネットワーク７０とを含む。たとえばワークＷは、コンベア（図示せず）により、製造ラインを移動する。印字システム１００が適用される製造工程は特に限定されない。
【００４０】
レーザマーカ１０は、対象物であるワークＷに印字を行うためのマーカである。この実施形態では、マーカとしてレーザマーカが適用される。しかしマーカは、インクジェット方式のマーカでもよい。印字パターンは特に限定されない。たとえば印字パターンはヒューマンリーダブルなシンボル（たとえば英数字等のシンボル）からなるパターンでもよく、ＱＲコード（登録商標）などの情報シンボルでもよいし、任意の図形、直線、曲線または点であってもよい。
【００４１】
ロボット２０は、レーザマーカ１０を移動させるためのマーカ移動装置である。レーザマーカ１０は、ロボット２０に装着される。この実施の形態では、ロボット２０は、対象物（ワークＷ）とレーザマーカ１０との間の相対位置を３以上の自由度で変化させることが可能なように、レーザマーカ１０を移動させる。ロボットの自由度は３以上であればよく、特に限定されない。したがってロボットの種類も限定されるものではない。垂直多関節ロボット、スカラロボット、直交ロボットのいずれも本実施の形態に適用することができる。たとえばロボット２０は、多関節ロボットアームである。
【００４２】
さらに、ロボット２０を固定する方法は特に限定されない。ロボット２０は上方から吊り下げられるタイプのロボットでもよく、床に据え置かれるタイプのロボットでもよい。
【００４３】
本実施の形態では、対象物とレーザマーカ１０との間の相対位置を３以上の自由度で変化させるために、複数のロボット軸が組み合わされてもよい。たとえばロボット２０は、直線レールの上を移動する垂直多関節ロボットであってもよい。
【００４４】
センサ３０は、ワークＷの三次元形状および位置に関する情報を取得するセンサであってもよい。センサ３０は、ワークＷおよび環境（たとえばコンベアあるいはトレイ等）の一方または両方をセンシングしてもよい。したがって公知の種々のセンサを本実施の形態に適用することができる。センサ３０として、画像センサ、変位センサ、３Ｄセンサ、光学式シンボルリーダ、光電センサ、ロータリエンコーダ等を適用することができるが、センサ３０の種類はこれらに限定されるものではない。センサ３０はロボット２０に装着されてもよく、ロボット２０とは離れて設置されてもよい。
【００４５】
センサ３０の個数は限定されない。センサ３０は、複数の種類のセンサの組み合わせにより実現されてもよい。
【００４６】
コントローラ４０は、制御プログラムを実行することによりレーザマーカ１０およびロボット２０を制御する。具体的には、コントローラ４０は、ワークＷあるいは環境に関する情報（ワーク到来の検出、画像情報、３Ｄ情報など）を、センサ３０から取得する。コントローラ４０は、その情報に基づいてロボット２０を制御して、ワークＷに応じてレーザマーカ１０の位置および姿勢を変化させる。さらにコントローラ４０は、ワークＷに印字を行うようレーザマーカ１０を制御する。
【００４７】
図１には、１つのコントローラが示される。しかし、１台の装置によりコントローラ４０が実現されるものと限定されない。たとえば、コントローラ４０は、レーザマーカ１０のためのコントローラと、ロボット２０のためのコントローラとを含むのでもよい。
【００４８】
設定装置５０は、レーザマーカ１０、センサ３０、コントローラ４０に対して設定を行う。設定装置５０は、たとえばパーソナルコンピュータ（ＰＣ）と、モニタとにより実現することができる。
【００４９】
設定装置５０は、第１の設定部５１と、第２の設定部５２とを含む。第１の設定部５１は、レーザマーカ１０による印字のための印字パラメータを設定する。第２の設定部５２は、その印字パラメータと、ワークＷの三次元形状の情報と、ワークＷの位置の情報とに基づいて、コントローラ４０により実行される制御プログラムの設定を行う。これにより、印字条件を変更することができる。なお、設定装置５０の構成は上記のように限定されない。第２の設定部５２が印字パラメータを設定し、第１の設定部５２が、その印字パラメータと、ワークＷの三次元形状の情報と、ワークＷの位置の情報とに基づいて、コントローラ４０により実行される制御プログラムの設定を行ってもよい。
【００５０】
第２の設定部５２が、ワークＷの位置の情報およびワークＷの三次元形状の情報を取得するための方法は特に限定されるものではない。第２の設定部５２は、ワークＷの三次元形状の情報およびワークＷの位置の情報をセンサ３０から取得してもよい。あるいは、第２の設定部５２は、ワークＷの三次元形状の情報を上位システム６０から取得してもよい。たとえば、上位システム６０から取得されるワークＷの三次元形状の情報は、ワークＷの三次元ＣＡＤの情報でもよい。
【００５１】
第１の設定部５１および第２の設定部５２の少なくとも一方が、設定装置５０以外の装置に含まれてもよい。たとえば上位システム６０が第１の設定部５１および第２の設定部５２の少なくとも一方を含むのでもよい。コントローラ４０が第１の設定部５１および第２の設定部５２の少なくとも一方を含むのでもよい。
【００５２】
上位システム６０は、生産指示情報（たとえば製品の品種、シリアル番号など）をコントローラ４０に送信する。コントローラ４０、設定装置５０および上位システム６０は、ネットワーク７０を通じて相互に通信することができる。
【００５３】
この実施形態によれば、ロボット２０が、レーザマーカ１０をワークＷの形状あるいは位置に応じて移動させることができる。したがって、ワークＷの形状が複雑であっても、ワークＷの所定の印字予定位置に印字を行うことができる。あるいは、従来は、印字が困難であったワークの面（たとえば裏面等）にも印字が可能となる。あるいは、ワーク表面の印字対象エリアがレーザマーカの印字可能エリアより大きい場合にも、ワークＷの所定の印字予定位置に印字を行うことができる。
【００５４】
さらに、ワークＷがコンベア上で移動する場合においても、ロボット２０によるレーザマーカ１０の移動とワークＷの移動とを同期させることができる。たとえばレーザマーカ１０の移動速度をワークＷの移動速度と同じにすることで、印字システム１００は、移動中のワークＷの表面に印字することができる。
【００５５】
このように本実施の形態によれば、対象物に応じて印字システム１００の印字条件を柔軟に変更することができる。したがって、システムあるいは装置の複雑な改造あるいは変更を伴わずに対象物に応じた印字が可能となる。
【００５６】
なお、本発明の実施の形態は、印字装置として実現することも可能である。この場合、レーザマーカ１０、ロボット２０およびコントローラ４０は、それぞれ、実施の形態に係る印字装置の「マーカ部」、「マーカ移動部」および「制御部」を実現する。
【００５７】
＜コントローラのハードウエア構成＞
図２は、図１に示したコントローラ４０のハードウエア構成を示す図である。コントローラ４０は、プロセッサ２と、ＢＩＯＳや各種データを格納するＲＯＭ（Read Only Memory）３と、ＲＡＭ４と、記憶装置５とを含む。
【００５８】
プロセッサ２は、記憶装置５に格納された制御プログラム９を読み出して、当該制御プログラム９をＲＡＭ（Random Access Memory）４に展開する。以下ではプロセッサ２がプログラムを実行することで必要な処理が実現される構成例について説明するが、これらの提供される処理の一部または全部を、専用のハードウエア回路（たとえば、ＡＳＩＣまたはＦＰＧＡ等）を用いて実装してもよい。
【００５９】
記憶装置５は、プロセッサ２で実行されるプログラムなどを不揮発的に格納する。記憶装置５は、例えばＳＳＤ（Solid State Drive）等の不揮発性のデバイスであり、プロセッサ２が実行する各種機能を実現するための制御プログラム９を保持する。
【００６０】
コントローラ４０は、さらに通信インタフェース６と、Ｉ／Ｏ（Input/output）インタフェース７と、Ｒ／Ｗ（リーダライタ）デバイス８とを含むことができる。通信インタフェース６は、コントローラ４０がネットワーク７０を通じて外部の機器（設定装置５０および上位システム６０等）と通信するためのインタフェースである。Ｉ／Ｏインタフェース７は、コントローラ４０への入力またはコントローラ４０からの出力のインタフェースである。Ｉ／Ｏインタフェース７は、入力装置４４とディスプレイ４５とに接続され、ユーザが入力装置４４を操作して入力した情報を受け付ける。ディスプレイ４５は、コントローラ４０の動作に関する情報を表示する。
【００６１】
Ｒ／Ｗ（リーダライタ）デバイス８は、外部の記憶媒体４３を脱着自在に装着することができる。記憶媒体４３は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的または化学的作用によって蓄積する媒体であってもよい。コントローラ４０は、記憶媒体４３から、制御プログラム９を取得してもよい。
【００６２】
上述のように、コントローラ４０は、第１の設定部５１および第２の設定部５２の少なくとも一方を含んでもよい。コントローラ４０のプロセッサ２が必要なプログラムを実行することにより、コントローラ４０を、第１の設定部５１および第２の設定部５２を含む装置として実現することができる。
【００６３】
＜設定装置のハードウエア構成例＞
設定装置５０は、コンピュータにより実現可能である。したがって、設定装置５０の基本的なハードウエア構成は、図２に示す構成と同じである。コンピュータのプロセッサが必要なプログラムを実行することにより、コンピュータを、第１の設定部５１および第２の設定部５２を含む設定装置５０として実現することができる。
【００６４】
＜レーザマーカの構成例＞
レーザマーカは、レーザ光をワークの表面に照射することによりワークに印字する装置である。図３は、図１に示すレーザマーカの第１の構成例を示した図である。図３に示すように、レーザマーカ１０は、レーザ光源１１と、光学系１２とを含む。レーザ光源１１と、光学系１２とは筐体１３に収容される。
【００６５】
レーザ光源１１は所望の波長および所望のパワーを有するレーザ光を発生させる。レーザ光源１１の種類は限定されない。たとえばレーザ光源１１は、固体レーザ、気体レーザ、ファイバレーザ等であってもよい。ファイバレーザは、ＭＯＰＡ（Master Oscillator Power Amplifier）方式のレーザでもよい。
【００６６】
光学系１２は、たとえば、レーザ光ビームを収束させるレンズを含むことができる。光学系１２は、上記の光学要素の他にも光学要素を含むことができる。たとえば、光学系１２は、レーザ光を走査するためのガルバノミラーを含んでもよい。
【００６７】
図４は、図１に示すレーザマーカの第２の構成例を示した図である。図４に示すように、レーザマーカ１０は、本体１５とヘッド１６とに分離される。本体１５はレーザ光源１１を収容し、ヘッド１６は光学系１２を収容する。レーザ光源１１と光学系１２とはケーブル１４により接続される。このケーブル１４は、レーザ光源１１で発生させたレーザ光を光学系１２に伝播するための光ファイバを含むことができる。
【００６８】
本体１５は、たとえば床に据え置かれ、ヘッド１６がロボット２０に装着される。本体１５とヘッド１６とを分離することにより、ヘッド１６のサイズおよび重量を小さくすることができるので、ロボット２０によるレーザマーカの移動の点において有利である。したがって、印字装置の印字条件を変更する際の制約をより小さくすることができる。
【００６９】
＜印字システムの基本制御＞
ワークＷに印字を行うに先立ち、コントローラ４０が設定される。図１を再び参照して、コントローラ４０は、印字パラメータを取得する。この実施の形態では、印字パラメータはワークＷの種類ごとに設定される。コントローラ４０は、印字パラメータを設定装置５０の第１の設定部５１から取得する。上位システム６０が第１の設定部５１を有してもよい。この場合には、コントローラ４０は、上位システム６０から印字パラメータを取得する。
【００７０】
印字パラメータは、ワークの基準位置に対する印字位置、およびその基準位置からの印字方向を含むことができる。しかし、印字パラメータに含まれる情報は、上述の情報に限定されない。たとえば印字パラメータは、印字フォーマットを含んでもよい。
【００７１】
図５は、印字システムの運用時における印字システムの動作を説明するための模式図である。コントローラ４０は、ラインに投入されるワークＷの品種およびシリアル番号を取得する。ワークＷの品種およびシリアル番号は、たとえば上位システム６０からコントローラ４０に送られる。
【００７２】
コンベア８０によってワークＷが移動する（図５中の符号（１）〜（３）を参照）。コンベア８０には、コンベア８０の速度（すなわちワークＷの移動速度）を検知するためのセンサ３１が設置される。センサ３１は、たとえばロータリエンコーダである。
【００７３】
センサ３２はトリガセンサである。センサ３２がワークＷを検出すると、センサ３２は信号をコントローラ４０に送る。この信号をトリガとして、コントローラ４０は、ロボット２０およびレーザマーカ１０を制御する。図５に示された例では、センサ３２がコンベア８０の上方に設置されているが、システムごとにセンサ３２の設置方向は適切に調整される。したがってセンサ３２の設置方向は、上方に限定されるものではない。
【００７４】
コントローラ４０は、ワークＷの３Ｄ形状の情報および印字位置の情報を用いて、ロボット２０を制御する。具体的には、コントローラ４０は、レーザマーカ１０が装着されたロボットアームを所定の位置に移動させるようにロボット２０を制御する。そして、コントローラ４０は、レーザマーカ１０を制御してワークＷに印字する。
【００７５】
ワークＷの３Ｄ形状の情報は、ティーチング等により予め取得されてもよい。あるいは、上位システム６０から、ワークＷの三次元ＣＡＤの情報をワークＷの３Ｄ形状の情報として予め取得してもよい。あるいは、ワークＷの３Ｄ形状の情報は、ロボット２０に装着されたセンサ３３により、印字処理を実行するたびに取得されてもよい。このような目的のため、センサ３３を、画像センサあるいは３Ｄセンサとすることができる。コントローラ４０は、センサ３３により取得されたワークＷの形状の情報を用いて、予め取得されたワークＷの情報を補正してもよい。
【００７６】
図６は、本実施の形態に係る印字システムの処理の流れを示すフローチャートである。印字システム１００は、このフローチャートに従って処理を実行することにより、印字方法を実行する。
【００７７】
まず印字システムの設定（事前設定）が実行される。ステップＳ１において、印字パラメータが設定される。上述のように、第１の設定部５１が、ワークＷに印字を行うための印字パラメータを設定する。次にステップＳ２において、第２の設定部５２が、ワークＷの３Ｄ形状の情報と、ワークＷの位置情報とを取得する。その取得された情報に基づいて、コントローラ４０の制御プログラムを設定する。ステップＳ２において、図５に示すセンサ３３により、ワークＷの３Ｄ形状の情報と、ワークＷの位置情報とを予め取得することができる。しかし、ワークＷの３Ｄ形状の情報と、ワークＷの位置情報とはティーチングにより予め取得されてもよい。あるいは、上位システム６０から、ワークＷの三次元ＣＡＤの情報をワークＷの３Ｄ形状の情報として予め取得してもよい。
【００７８】
なお、ステップＳ１，Ｓ２の処理は、図６に示した順番に従って実行されるように限定されるものではない。たとえばステップＳ２の処理が先に実行され、ステップＳ１の処理が後で実行されるのでもよい。
【００７９】
続いて、印字処理が実行される（印字システムの運用）。一例として、ステップＳ１１において、コントローラ４０がワークＷの品種およびシリアル番号を取得する。ステップＳ１１において、コントローラ４０がワークＷの品種のみ取得するのでもよい。ステップＳ１２において、センサ３２によりワークＷが検出される。ステップＳ１３において、コントローラ４０は、ワークＷの３Ｄ形状の情報および印字位置の情報を用いて、ロボット２０を制御する。これにより、レーザマーカ１０が所定の位置に移動する。コントローラ４０が印字パラメータに従ってレーザマーカ１０を制御する。これによりレーザマーカ１０はワークＷに印字する。ステップＳ１３の処理が終了すると、次のワークへの印字のため、処理はステップＳ１１へと戻される。
【００８０】
＜制御オプション＞
図５を再び参照して、コントローラ４０は、センサ３１の検出値からワークＷの移動速度を求めることができる。コントローラ４０は、さらに、センサ３２によりワークＷを検出した時刻、そのワークＷが検出された位置、および、ロボット２０がレーザマーカ１０を所定の位置に移動させるのに要する所要時間に関する情報を取得する。その情報に基づき、コントローラ４０は、センサ３３およびレーザマーカ１０の移動先の目標位置（目標値）を定めることができる。その目標位置にレーザマーカ１０を移動させることにより、ワークＷの所定の印字位置に印字が可能である。
【００８１】
レーザビーム走査型のレーザマーカである場合、レーザビームを走査することにより、ワークＷに印字が行われる。レーザマーカ１０がレーザビーム走査型のレーザマーカである場合、ワークＷとレーザマーカ１０との間の相対速度が大きいと、良好な印字結果が得られない可能性がある。たとえばワークＷに付された文字が歪むといった問題が生じうる。本実施の形態では、ワークＷに対するレーザマーカ１０の相対速度ができるだけ小さくなる（相対速度を０に近づける）ようにロボットアームを追従動作させてもよい。これにより、印字の品質の低下を防ぐことができる。
【００８２】
レーザマーカ１０を移動させるために、事前に設定した経路に基づいて、コントローラ４０がロボット２０を制御してもよい。ロボット２０の移動経路の設定には種々の方法を用いることができる。一実施形態では、ワークＷの三次元形状の情報およびワークＷ上の印字位置に基づいて、最適な経路を事前に設定することができる。ワークＷの三次元形状の情報には、たとえばワークＷの三次元ＣＡＤの情報を用いてもよい。
【００８３】
ワークＷおよびその周囲環境を３Ｄセンサで計測することにより三次元情報を取得して、その得られた三次元情報から、経路を動的に算出してもよい。経路の算出を実行する装置は特に限定されない。コントローラ４０が、三次元情報から動的に経路を算出してもよい。設定装置５０が経路を算出することも可能である。その算出された経路に基づいて、コントローラ４０がロボット２０を制御してもよい。
【００８４】
さらに本実施の形態では、ロボット２０がレーザマーカ１０を３以上の自由度で移動させることが可能であるので、様々な方向からワークＷに対してレーザ光を照射できる。コンベアあるいはトレイ（台座）の形状を工夫することにより、ワークＷの裏面あるいは側面に印字が可能となる。
【００８５】
図７は、ワークＷの裏面への印字のために用いられるコンベアの形状を説明する模式図である。図８は、ワークＷの裏面への印字のために用いられるトレイの構造を説明する模式図である。図７および図８に示されるように、ワークＷを載せたトレイ８１は、レール状のコンベア８０により移動させられる。トレイ８１は、フレーム構造を有する。
【００８６】
レーザマーカ１０（図示せず）が、コンベア８０の下方に配置されるように、コントローラ４０は、ロボット２０を制御する。これによりワークＷの裏面への印字が可能である。コントローラ４０は、さらに、コンベア８０の移動速度に同期してレーザマーカ１０が移動するようにロボット２０を制御してもよい。
【００８７】
コントローラ４０は、品種の切り替え指示を受けることができる。この場合、次のワークが到来するまで、コントローラ４０はロボット２０を所定の位置に待機させてもよい。待機位置に関して、コントローラ４０は、品種ごとに最適な待機位置を算出してもよい。待機位置は、たとえばワークの三次元形状の情報、印字位置、ワークＷの移動速度（コンベア８０の速度）等に基づいて決定することができる。最適な位置を算出して、その位置にロボット２０を待機させることにより、ロボット２０の移動経路を短くすることができる。たとえばワークＷが高速に流れるラインにおいて、ワークの印字を行いやすくすることができる。
【００８８】
品種の切り替え指示は、上位システム６０からコントローラ４０に送られてもよい。あるいは、品種の切り替え指示を発するＲＦＩＤタグをトレイ８１に取り付けてもよい。コントローラ４０は、そのＲＦＩＤタグからの指示に応じて、ロボット２０の待機位置を決定してもよい。
【００８９】
＜起伏を有する面あるいは曲面への印字＞
ワークＷの表面に起伏がある場合、あるいはワークＷの表面が曲面である場合には、印字面とレーザマーカとの距離が一定ではない。一般的なレーザマーカでは、その焦点深度が浅い。したがって、印字面とレーザマーカとの距離が一定であるとの前提で、起伏のある表面、あるいは曲面に印字を行うと、印字の品質が劣化する可能性がある。この実施の形態では、ワークＷとレーザマーカ１０との間の相対位置を変化させながら段階的に印字を実行する。
【００９０】
図９は、ワークＷの表面が曲面である場合の印字を説明するための模式図である。図９において、ワークＷの曲面の一部が印字範囲である。この実施の形態では、ロボット２０が曲面の形状に追従して動くことにより曲面に印字が可能である。たとえば図９に示すように、コントローラ４０は、レーザマーカ１０が印字面Ｍ１，Ｍ２，Ｍ３，Ｍ４に垂直な軸Ａの方向に沿って移動するようにロボット２０を制御するとともに、ワークＷの印字範囲のうちのレーザ光の焦点が合う部位のみ印字するように、レーザマーカ１０を制御する。なお、軸Ａは、レーザマーカ１０から出射されるレーザ光ビームの光軸に一致してもよい。図９に示した例においては、印字面Ｍ１，Ｍ２，Ｍ３，Ｍ４は仮想的な平面であり、レーザマーカ１０の印字可能範囲に基づいて決定される。
【００９１】
印字面の軸Ａの方向の位置を変化させながら、レーザ光の焦点が合う部位のみ印字することが複数回実行される。一例では、１回目の印字では、印字面Ｍ１と印字面Ｍ２との間の領域が印字範囲に設定される。２回目の印字では、印字面Ｍ２と印字面Ｍ３との間の領域が印字範囲に設定される。３回目の分字では、印字面Ｍ３と印字面Ｍ４との間の領域が印字範囲に設定される。ただし印字の順序は上述のように限定されるものではない。
【００９２】
上記のように印字を繰り返すことによって、レーザ光の焦点が常に合っている状態で、印字範囲内に印字が行われる。これにより印字品質の劣化を避けることができる。
【００９３】
図９に示したレーザマーカ１０は、レーザ光の焦点を調整しつつレーザ光を二次元に走査することができる。しかし、本実施の形態は、起伏を有する面あるいは曲面に印字するためには、このような仕様を備えるレーザマーカが必要であると限定するものではない。本実施の形態において、レーザマーカがレーザ光の焦点の調整機能を有することは必須ではない。さらに、レーザマーカは、レーザ光を二次元方向に走査可能であると限定されない。レーザマーカは、レーザ光を一次元方向に走査するものであってもよい。たとえばワークＷの表面の形状が円筒側面であり、かつ、その面に沿って円弧状に印字を行うような場合、ロボット２０を円弧に沿って移動させることにより、ワークＷの表面に印字可能である。
【００９４】
＜透視変換＞
図１０は、ワークＷ１の側面への印字を説明する図である。図１０に示した例では、印字範囲Ｗ１１は、ワークＷ１の側面の一部である。図１０において符号（１）により示されるように、本実施の形態では、レーザ光ビームＬの光軸をワークＷ１の表面の法線の方向と平行になるように、レーザマーカ１０の姿勢を制御してもよい。これにより印字範囲Ｗ１１に印字が可能となる。レーザマーカ１０からの距離が一定になるので、良好な印字品質を得ることができる。さらに、レーザ光ビームＬの光軸と印字面とが垂直であるので、透視変換歪み（台形歪み）を低減できる。
【００９５】
図１０の例では、印字面は平面である。しかし、印字面が曲面であっても、レーザ光ビームＬの光軸がその曲面の法線の方向と平行になるように、レーザマーカ１０の姿勢を制御すればよい。
【００９６】
一方、ワークＷ１の印字位置、および環境に依存して、レーザマーカ１０の姿勢を制御しても良好な印字品質が得られない可能性がある。図１０において符号（２）により示された例では、印字範囲Ｗ１２に印字を行うため、レーザマーカ１０が印字面の法線の方向に配置される。しかし、印字面の法線の方向に障害物Ｗ２が存在する。したがってレーザ光ビームＬが障害物Ｗ２によって遮られる。障害物Ｗ２は、たとえばワークＷ１とともにラインを流れる他のワークである。
【００９７】
図１０において符号（３）により示された例では、レーザマーカ１０は、障害物Ｗ２によって遮られない方向から印字範囲Ｗ１２にレーザ光ビームＬを照射する。したがって印字範囲Ｗ１２に印字が可能である。しかし、印字範囲Ｗ１２を含む面の法線方向から見たときには、像が歪んで見える。このことは印字品質の低下につながる。なお、図１０では説明を分かりやすくするために、平面の組み合わせからなるワークＷを例示するが、上述の課題は、ワークＷの表面が平面のみからなる場合に生じるものと限定されるものではない。ワークＷの表面が曲面であっても、同様の課題が生じ得る。
【００９８】
このような問題を回避するため、本実施の形態では、観測座標系からマーカ座標系に座標変換を行い、そのマーカ座標系に従って印字を実行する。観測座標系とは、印字面（印字面が曲面である場合には、その接平面）およびその法線からなる座標系である。マーカ座標系とは、レーザマーカ１０の位置を原点として、レーザ光ビームＬの光軸方向を含む座標系である。この実施の形態では、座標変換に透視変換(Homography Transformation)を適用することができる。
【００９９】
図１１は、観測座標系からマーカ座標系への座標変換を説明するための図である。図１１に示すように、点Ｐ１は観測点である。観測座標系Ｃ１上の任意の点Ｐ２をワークＷの対象面に投影する。点Ｐ３は、点Ｐ２をワークＷの対象面に投影することにより得られた点であり、投影線とワークＷの対象面との交点である。この交点（点Ｐ３）をマーカ座標系に透視変換することによってマーカ座標系Ｃ２上の点Ｐ４の座標を得ることができる。なお、点Ｐ５は、レーザマーカ１０の位置を示す点（基準点）である。
【０１００】
このように、レーザ光ビームＬの光軸が印字面に対して垂直ではない場合にも、透視変換によって点Ｐ２と点Ｐ４との間での座標変換を行うことにより、印字された文字、記号等の歪みを防ぐことができる。したがって印字品質を良好にすることができる。レーザマーカの焦点深度が浅い場合は、対象面への印字において、図９に示されるような、レーザ光の焦点を調整しつつレーザ光を二次元に走査する印字を複数回繰り返して適用してもよい。
【０１０１】
＜印字パラメータの設定＞
本実施の形態において、印字システム１００は印字パラメータに従ってワークＷの印字を実行する。印字パラメータは、ワークの基準位置に対する印字位置と、その基準位置からの印字方向とを含む。さらに、印字パラメータは、印字パターンを含むことができる。上述のように、印字パターンは特に限定されず、ヒューマンリーダブルなシンボル（たとえば英数字等のシンボル）からなるパターンでもよく、ＱＲコード（登録商標）などの情報シンボルでもよいし、任意の図形、直線、曲線または点であってもよい。
【０１０２】
本実施の形態において、設定装置５０はユーザの入力を受け付けることにより印字パラメータを設定することができる。ユーザは設定画面を参照しながら設定装置５０に印字パラメータを入力することができる。
【０１０３】
図１２は、印字パラメータを設定するための設定画面の例を示した図である。設定装置５０は、ディスプレイに設定画面５５を表示させる。設定画面５５は、レーザマーカ１０およびワークＷを表示する。たとえばワークＷの３次元ＣＡＤデータを設定装置５０に入力することにより、ワークＷの三次元透視像が設定画面５５に表示される。
【０１０４】
ワークＷの表面には、印字位置Ｗ２１が表示される。さらに、印字パターンを編集するための編集エリア５７、およびツールアイコン５８が設定画面５５に表示される。ユーザは、マウス等のポインティングデバイスを操作して、ツールアイコンを選択する。これにより、ユーザは、印字位置、印字方向、印字パターンを設定あるいは変更することができる。
【０１０５】
＜印字可否の判断＞
設定装置５０により印字位置を設定したとしても、実際には、その指定された位置に印字ができない可能性がある。図１３に例示されたワークＷにおいて、印字位置Ｗ３１が指定される。しかし、トレイ８１の構造体などのような、ワークＷの周囲環境物がロボットあるいはセンサと干渉する場合がある。このような場合には、印字位置Ｗ３１に印字を行うことができない。
【０１０６】
指定された位置に印字を行うと印字品質が低下する可能性がある。このような場合にも、その指定された位置には印字ができない。このような場合としては、たとえば、ワークＷの表面が粗面（鋳肌など）である場合、あるいは、ワークＷの表面が汚れている場合などがある。この実施の形態では、実際の印字に先立って、指定された印字位置において印字が可能か否かを判断することができる。
【０１０７】
図１４は、印字可否の判断のフローの例を示したフローチャートである。このフローチャートに示された処理は、第２の設定部５２により実行される。図１３および図１４を参照して、ステップＳ２１において、ワークＷの周囲環境をセンシングして、周囲環境に関する情報を取得する。たとえば画像センサあるいは３Ｄセンサ（図５に示すセンサ３３に相当）によりワークＷの周囲環境をセンシングすることができる。この場合、たとえばワークＷの三次元形状および位置の情報が取得される。
【０１０８】
ステップＳ２２において、設定装置５０は、設定画面５５（図１２を参照）に表示される仮想空間上で、ワークＷがロボット２０あるいはセンサと干渉するか否かを判定する。ステップＳ２３において、設定装置５０は、判定結果をユーザに通知する。たとえば設定装置５０は、設定画面５５上に判定結果を示すメッセージを表示させてもよい。設定画面５５により通知部を実現することができる。
【０１０９】
ステップＳ２１において、画像センサ（図５に示すセンサ３３に相当）を用いてワークＷの表面の画像を取得してもよい。ステップＳ２２において、設定装置５０はその画像を解析することにより、指定した位置に印字ができないと判断してもよい。たとえばワークＷの表面が粗面である、あるいは、ワークＷの表面が汚れている場合には、指定した位置に印字ができないと判断される。
【０１１０】
設定装置５０は、予め、印字位置を複数指定してもよい。したがって、この場合には、印字位置情報は冗長性を有する。図１３に示した例では、印字位置Ｗ３１だけでなく、印字位置Ｗ３２も指定される。印字位置Ｗ３１において印字が不可と判断された場合でも、印字位置Ｗ３２において印字が可能である。この場合、コントローラ４０は、センサの計測結果および印字位置情報に従って、レーザマーカ１０およびロボット２０を制御して、印字位置Ｗ３２に印字を行う。このように、印字位置情報に冗長性を持たせることにより、複雑な形状を有するワークに印字ができる可能性を高めることができる。
【０１１１】
また、設定装置５０は、印字位置Ｗ３１を含む印字範囲を、本来の印字範囲よりも予め広くしてもよい。この場合にもワークＷに印字ができる可能性を高めることができる。
【０１１２】
印字可否の判断は設定装置５０のみが実行するものと限定されない。コントローラ４０がワークＷの表面の画像から、確実に印字できる場所をリアルタイムで探索して印字位置を決定してもよい。コントローラ４０は、その決定された位置に印字が行なわれるようにロボット２０およびレーザマーカ１０を制御することができる。
【０１１３】
さらに本実施の形態では、レーザマーカ１０とワークＷとの干渉を回避しつつワークＷに印字するように、レーザマーカ１０およびロボット２０を制御することができる。このような実施の形態を以下に説明する。
【０１１４】
図１５は、印字可否の判断の別の例を示す図である。図１５に示した例では、印字位置Ｗ３１が、ワークＷの裏側の奥まった領域にある。ワークＷはトレイ８１に載せられて、トレイ８１はコンベア８０により移動する。トレイ８１およびコンベア８０の構成は、図７および図８に示した構成であってもよい。
【０１１５】
印字位置Ｗ３１に印字を行う際に、レーザマーカ１０がワークＷと衝突するおそれがある。本実施の形態では、ロボット２０（ロボットアーム）の先端をコンベア８０の速度に追従させながら、レーザマーカ１０とワークＷとの間の距離が変化するようにロボット２０がコントローラ４０（図１５に示さず）により制御される。たとえば時刻Ｔにおいて、レーザマーカ１０と印字位置Ｗ３１との間の相対距離が最も小さいとする。しかし、時刻Ｔよりも少し前の時刻（Ｔ−ΔＴ）および、時刻Ｔよりも少し後の時刻（Ｔ＋ΔＴ）では、レーザマーカ１０がワークＷに衝突することを回避するため、レーザマーカ１０がワークＷから離れるようにロボット２０がレーザマーカ１０を移動させる。したがって、レーザマーカ１０がワークＷ（またはトレイ８１）に衝突することを回避することができる。
【０１１６】
上記のようなレーザマーカ１０の移動を実現するためのロボット２０（ロボットアーム）の経路は、コンベア８０の速度、ロボット２０の可動範囲、ロボット２０（ロボットアーム）の三次元形状情報、レーザマーカ１０の三次元形状情報、トレイ８１の三次元形状情報、コンベア８０の三次元形状情報、およびワークＷの三次元形状情報、レーザマーカ１０の印字可能距離の範囲（たとえば焦点深度）を利用して干渉（衝突）が生じないかどうかを判定して求められる。このような経路の判定処理は、第２の設定部５２により、事前設定の段階で実行されてもよい。あるいは、運用の段階でコントローラ４０が経路の判定処理を実行してもよい。
【０１１７】
ワークＷの印字位置によっては、経路を決定できない可能性、言い換えると経路の解が存在しない可能性がある。事前設定の段階において、設定装置５０の計算により経路の解が存在しないことが判明した場合、設定装置５０はユーザに対してエラーを通知することができる。運用時の経路計算で解が存在しないことが分かった場合は、その時点でコントローラ４０が上位システム６０にエラーを通知してもよく、コントローラ４０がエラー内容をログとして記録してもよい。
【０１１８】
衝突あるいは干渉のリスクについては、段階（レベル）を設けてもよい。リスクのレベルをユーザが設定装置５０あるいはコントローラ４０に対して設定してもよい。たとえば、レベル１を「ワークの破損リスクあり」と設定し、レベル２を「トレイ破損リスクあり」と設定することができる。設定装置５０あるいはコントローラ４０は、その設定されたレベルに応じた制約を設けて経路解を求めてもよい。このような実施の形態においても、経路解がない場合に、設定装置５０あるいはコントローラ４０は、エラーを通知してもよい。
【０１１９】
＜複数のワークへの印字＞
上述の実施形態では、１つのトレイに１つのワークが載せられる。しかし、製造現場においては、１つのトレイ内に配置された複数の製品のそれぞれに個体識別番号などの印字を行う場合もある。以下では複数のワークへの印字について説明する。
【０１２０】
図１６は、複数のワークが配置された例示的なトレイの上面図である。図１７は、図１６に示した各ワークの側面図である。トレイ８１には４つのワークＷＡ，ＷＢ，ＷＣ，ＷＤが配置される。図１７には、代表的に、ワークＷＡが示されるとともに、ワークＷＡの形状および印字位置Ｗ４１が示される。
【０１２１】
画像センサあるいは３Ｄセンサ（図５のセンサ３３に相当）により、各ワークの３次元形状に関する情報が取得される。コントローラ４０は、各ワークの三次元形状および位置に関する情報に基づいて、各ワークの位置と姿勢を認識し、各ワークの印字位置を求める。コントローラ４０は、ロボット２０を制御してレーザマーカ１０を移動させるとともに、レーザマーカ１０を制御して各ワークの印字位置に印字を行う。
【０１２２】
この実施形態では、印字情報は、検出されたワークの位置と、指示された採番ルールに従って決定することができる。図１６に示すように、トレイ８１にはＲＦＩＤタグ８２が取り付けられる。コントローラ４０は、ＲＦＩＤタグ８２から読み出された情報および、予め定められた採番ルールに従って、ワークＷＡ〜ＷＤに印字を行う。
【０１２３】
図１６に示した例では、品種は「Ｘ」であり、個体識別番号の基準値は「２１」である。またトレイ８１の上方から見て、トレイ８１内の左上に位置するワーク、トレイ８１内の右上に位置するワーク、トレイ８１内の右下に位置するワーク、トレイ８１内の左下に位置するワークの順番に番号がインクリメントするように採番ルールが設定される。したがって、ワークＷＡ，ＷＢ，ＷＣ，ＷＤに、それぞれ「Ｘ０２１」、「Ｘ０２２」、「Ｘ０２３」、「Ｘ０２４」との個体識別番号が付与される。
【０１２４】
図１６の例では、トレイ８１は仕切り壁を有しているが、複数のワークを配置するための仕切りはなくてもよい。トレイ８１が仕切り壁を有することにより複数のワークは互いに接触していない。しかし、トレイ８１が仕切り壁を有していない場合、トレイ８１の移動により、２つ以上のワークが互いに接触する可能性、少なくとも１つのワークがトレイ８１の壁に接触する可能性、あるいは、２つ以上のワークが互いに積み重なっている可能性が生じる。このような場合にも、画像センサあるいは３Ｄセンサ（図５のセンサ３３に相当）により、各ワークの三次元形状および位置に関する情報が取得されて、その取得された情報に基づいてロボット２０の経路解が、コントローラ４０あるいは設定装置５０によって計算される。したがって印字システム１００は、各ワークに印字を行うことができる。計算の結果、経路解が見つからない場合、印字システム１００は、エラー処理（たとえばユーザへの通知）を行ってもよい。
【０１２５】
また、たとえば一部のワークが裏返しあるいは横倒しになっている場合にも経路解が見つからない。しかしながら、候補位置をワークの各面に事前に設定することによって、印字位置に冗長性を持たせることができるので、ワークへの印字が可能となる。
【０１２６】
種類によっては、ワークがコンベアに直接載って流れることも想定される。このような場合には、コントローラ４０は、たとえば上位システム６０から品種情報を受け取ってもよい。コントローラ４０は、ワークを検出した時間順に個体識別番号を採番することができる。これによりＲＦＩＤタグを有するトレイがなくても、印字システム１００は個体識別番号をワークに印字することができる。
【０１２７】
＜印字システムとリーダとの組み合わせ＞
図１８は、本実施の形態に係る印字システムとリーダとを組み合わせたシステムの構成図である。図１８に示す例では、製造システム２００は、４つの工程（工程Ａ、工程Ｂ、工程Ｃ、工程Ｄ）を実行するためのシステムである。製造システム２００において、製造工程は、工程Ａ、工程Ｂ、工程Ｃ、工程Ｄの順に実行される。各工程の具体的な内容は特に限定されるものではない。
【０１２８】
工程Ａでは、コントローラ４０Ａが、レーザマーカ１０Ａおよびロボット２０Ａを制御して、ワークＷに印字を行う。
【０１２９】
工程Ｂでは、コントローラ４０Ｂが、リーダ１０Ｂおよびロボット２０Ｂを制御する。これによりリーダ１０Ｂが動かされて、リーダ１０Ｂは、レーザマーキングによってワークＷに付された情報を読み取る。
【０１３０】
工程Ｃおよび行程Ｄでは、行程Ｂと同様に、リーダ１０Ｃ、リーダ１０ＤがワークＷに付された情報を読み取る。コントローラ４０Ｃは、リーダ１０Ｃおよびロボット２０Ｃを制御し、コントローラ４０Ｄがリーダ１０Ｄおよびロボット２０Ｄを制御する。
【０１３１】
レーザマーカ１０Ａにより、ワークＷの所定位置に印字がなされると、リーダ１０Ｂ，１０Ｃ，１０Ｄの各々は、その位置に付された情報を読み取る。したがって、４つのロボット２０Ａ，２０Ｂ，２０Ｃ，２０Ｄの動作には共通性がある。工程Ａを実行するロボット２０Ａの動作（経路）を設定装置により設定し、その設定情報をコントローラ４０Ａにコピーしてもよい。さらにその設定情報を、ネットワーク等を用いて、コントローラ４０Ｂ，４０Ｃ，４０Ｄにコピーしてもよい。
【０１３２】
あるいは上位システム６０で設定データを一括管理し、コントローラ４０Ａ，４０Ｂ，４０Ｃ，４０Ｄが、その設定データをダウンロードするのでもよい。これによりシステムの設定あるいは変更が容易になる。
【０１３３】
工程Ａにおいて、レーザマーカ１０Ａに加えてリーダをロボット２０Ａに搭載してもよい。このリーダを、印字品質の検証に用いることができる。たとえばワークＷに印字を行った直後にリーダで印字を読み取る。コントローラ４０Ａは、リーダの読み取り結果に基づいて、たとえば、正しく印字がされているか否か、あるいは、印字品質が十分か否かを検証してもよい。
【０１３４】
印字品質に問題がある場合のコントローラ４０Ａの制御は特に限定されない。たとえば、ワークＷをラインから排出してもよい。あるいは、ワークＷの異なる場所に印字を行うようレーザマーカ１０Ａを制御してもよい。あるいは、印字された領域のうち、不鮮明な個所にもう一度印字を行ってもよい。
【０１３５】
［付記］
以上のように、本実施形態は以下のような開示を含む。
【０１３６】
（構成１）
対象物（Ｗ）に印字を行うためのマーカ（１０）と、
前記対象物（Ｗ）と前記マーカ（１０）との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカ（１０）を移動させる、マーカ移動装置（２０）と、
制御プログラムを実行することにより前記マーカ（１０）および前記マーカ移動装置（２０）を制御するコントローラ（４０）と、
前記コントローラ（４０）の内部または外部に設けられ、前記マーカ（１０）による前記対象物（Ｗ）への印字のための印字パラメータを設定する第１の設定部（５１）と、
前記コントローラ（４０）の内部または外部に設けられ、前記印字パラメータと、前記対象物（Ｗ）の三次元形状および位置に関する情報とに基づいて、前記コントローラ（４０）の前記制御プログラムを設定する第２の設定部（５２）とを備える、印字システム。
【０１３７】
（構成２）
前記印字パラメータは、前記対象物（Ｗ）の個体識別情報を含み、
前記第１の設定部（５１）は、外部からの指示を受け付けることにより前記個体識別情報を設定する、構成１に記載の印字システム。
【０１３８】
（構成３）
前記印字パラメータは、
前記対象物（Ｗ）の基準位置に対する印字位置と、前記基準位置からの印字方向とを含む、構成１または構成２に記載の印字システム。
【０１３９】
（構成４）
前記第２の設定部（５２）は、さらに、
前記対象物（Ｗ）の移動速度と、
前記マーカ移動装置（２０）の可動範囲と、
前記マーカ移動装置（２０）の三次元形状および前記マーカ（１０）の三次元形状と、
前記マーカ（１０）の印字可能距離の範囲と、
のうちの少なくとも１つの情報に基づいて、前記制御プログラムを設定する、構成１から構成３のいずれか１つに記載の印字システム。
【０１４０】
（構成５）
前記対象物（Ｗ）の位置を計測するセンサ（３３）を含み、
前記第２の設定部（５２）は、前記センサ（３３）により計測された前記対象物（Ｗ）の位置に基づいて前記マーカ（１０）の目標位置を決定する、構成１から構成４のいずれか１つに記載の印字システム。
【０１４１】
（構成６）
前記コントローラ（４０）は、前記対象物（Ｗ）と前記マーカ（１０）との間の前記相対位置を変化させながら段階的に印字を実行するように、前記マーカ（１０）および前記マーカ移動装置（２０）を制御する、構成１から構成５のいずれか１つに記載の印字システム。
【０１４２】
（構成７）
前記第２の設定部（５２）は、前記対象物（Ｗ）の前記三次元形状および前記位置の情報に基づいて、前記対象物（Ｗ）に印字が可能であるかどうかを判定するように構成され、
前記印字システムは、
前記第２の設定部（５２）による判定の結果をユーザに通知する通知部（５５）をさらに備える、構成４または構成５に記載の印字システム。
【０１４３】
（構成８）
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記コントローラ（４０）は、前記センサ（３３）の計測結果および前記印字位置情報に基づいて、印字位置を調整するように、前記マーカ（１０）および前記マーカ移動装置（２０）を制御する、構成５に記載の印字システム。
【０１４４】
（構成９）
前記マーカ（１０）は、レーザマーカである、構成１から構成８のいずれか１つに記載の印字システム。
【０１４５】
（構成１０）
対象物（Ｗ）に印字を行うためのマーカ部（１０）と、
前記対象物（Ｗ）と前記マーカ部（１０）との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカ部（１０）を移動させるマーカ移動部（２０）と、
制御プログラムを実行することにより前記マーカ部（１０）および前記マーカ移動部（２０）を制御する制御部（４０）とを備え、
前記制御部（４０）は、印字パラメータ、ならびに、前記対象物（Ｗ）情報取得部により取得された前記対象物（Ｗ）の前記三次元形状および前記位置に基づいて、前記対象物（Ｗ）の所定の位置に印字が行われるように、前記マーカ部（１０）および前記マーカ移動部（２０）を制御する、印字装置。
【０１４６】
（構成１１）
マーカ（１０）と、前記マーカ（１０）と対象物（Ｗ）との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカ（１０）を移動させるマーカ移動装置（２０）と、コントローラ（４０）とを備えた印字システムによる、印字方法であって、
前記対象物（Ｗ）の三次元形状および位置に関する情報を取得するステップ（Ｓ２）と、
印字パラメータを設定するステップ（Ｓ１）と、
前記印字パラメータと、前記対象物（Ｗ）の前記三次元形状および前記位置とに基づいて、前記コントローラ（４０）の制御プログラムを設定するステップ（Ｓ２）と、
前記制御プログラムを前記コントローラ（４０）が実行することにより、前記マーカ（１０）および前記マーカ移動装置（２０）を制御して前記対象物（Ｗ）に印字するステップ（Ｓ１３）とを備える、印字方法。
【０１４７】
（構成１２）
前記印字するステップは、
前記対象物（Ｗ）と前記マーカ（１０）との間の前記相対位置を変化させながら印字を行うことを繰り返すステップを含む、構成１１に記載の印字方法。
【０１４８】
（構成１３）
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記対象物（Ｗ）の三次元形状、前記対象物（Ｗ）の位置および前記印字位置情報に基づいて前記マーカ（１０）および前記マーカ移動装置（２０）を制御して印字位置を調整するステップを含む、構成１１に記載の印字方法。
【０１４９】
（構成１４）
コントローラ（４０）に、
対象物（Ｗ）の三次元形状および位置に関する情報を取得するステップ（Ｓ２）と、
印字パラメータと、前記対象物（Ｗ）の前記三次元形状および前記位置とに基づいて、マーカ（１０）と、前記マーカ（１０）と前記対象物（Ｗ）との間の相対位置を３以上の自由度で変化させることが可能なように前記マーカ（１０）を移動させるマーカ移動装置（２０）とを制御して、前記対象物（Ｗ）に印字するステップ（Ｓ１３）とを実行させる、プログラム。
【０１５０】
（構成１５）
前記印字するステップは、
前記対象物（Ｗ）と前記マーカ（１０）との間の前記相対位置を変化させながら印字を行うことを繰り返すステップを含む、構成１４に記載のプログラム。
【０１５１】
（構成１６）
前記印字パラメータは、冗長性をもつ印字位置情報を含み、
前記印字するステップは、
前記対象物（Ｗ）の三次元形状、前記対象物（Ｗ）の位置および前記印字位置情報に基づいて前記マーカ（１０）および前記マーカ移動装置（２０）を制御して印字位置を調整するステップを含む、構成１４に記載のプログラム。
【０１５２】
今回開示された各実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。また、実施の形態および各変形例において説明された発明は、可能な限り、単独でも、組み合わせても、実施することが意図される。
【符号の説明】
【０１５３】
２  プロセッサ、３  ＲＯＭ、４  ＲＡＭ、５  記憶装置、６  通信インタフェース、７  Ｉ／Ｏインタフェース、８  Ｒ／Ｗデバイス、９  制御プログラム、１０，１０Ａ  レーザマーカ、１０Ｂ，１０Ｃ，１０Ｄ  リーダ、１１  レーザ光源、１２  光学系、１３  筐体、１４  ケーブル、１５  本体、１６  ヘッド、２０，２０Ａ，２０Ｂ，２０Ｃ，２０Ｄ  ロボット、３０，３１，３２，３３  センサ、４０，４０Ａ，４０Ｂ，４０Ｃ，４０Ｄ  コントローラ、４３  記憶媒体、４４  入力装置、４５  ディスプレイ、５０  設定装置、５１  第１の設定部、５２  第２の設定部、５５  設定画面、５７  編集エリア、５８  ツールアイコン、６０  上位システム、７０  ネットワーク、８０  コンベア、８１  トレイ、８２  ＲＦＩＤタグ、１００  印字システム、２００  製造システム、Ａ  軸、Ｃ１  観測座標系、Ｃ２  マーカ座標系、Ｌ  レーザ光ビーム、Ｍ１，Ｍ２，Ｍ３，Ｍ４  印字面、Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５  点、Ｓ１，Ｓ２，Ｓ１１，Ｓ１２，Ｓ１３，Ｓ２１，Ｓ２２，Ｓ２３  ステップ、Ｗ，Ｗ１，ＷＡ，ＷＢ，ＷＣ，ＷＤ  ワーク、Ｗ２  障害物、Ｗ１１，Ｗ１２  印字範囲、Ｗ２１，Ｗ３１，Ｗ３２，Ｗ４１  印字位置。
【図１】
2020124854.tif 000003
【図２】
2020124854.tif 000004
【図３】
2020124854.tif 000005
【図４】
2020124854.tif 000006
【図５】
2020124854.tif 000007
【図６】
2020124854.tif 000008
【図７】
2020124854.tif 000009
【図８】
2020124854.tif 000010
【図９】
2020124854.tif 000011
【図１０】
2020124854.tif 000012
【図１１】
2020124854.tif 000013
【図１２】
2020124854.tif 000014
【図１３】
2020124854.tif 000015
【図１４】
2020124854.tif 000016
【図１５】
2020124854.tif 000017
【図１６】
2020124854.tif 000018
【図１７】
2020124854.tif 000019
【図１８】
2020124854.tif 000020