本発明の一実施形態に係るアーム型ロボットの先端にX線回折測定装置を取り付けたX線回折測定システムの構成について図1乃至図3を用いて説明する。図1に示されるようにこのX線回折測定システムは、アーム型ロボット1の先端にX線回折測定装置2を取り付けたものであり、アーム型ロボット1の関節部分の回転角度を変化させることで、X線回折測定装置2は様々な位置及び姿勢をとることができる。また、このX線回折測定システムは、図2に示すようにアーム型ロボット1とX線回折測定装置2の作動を制御するコンピュータ装置90と、X線回折測定装置2がX線を出射するための高電圧を供給する高電圧電源95を備える。X線回折測定装置2は先行技術文献の特許文献1に示されるX線回折測定装置と構成は同じものであり、高電圧電源95も同じものである。すなわち、このX線回折測定システムは、特許文献1に示されるX線回折測定システムの複数の関節を有する移動装置をアーム型ロボット1に替え、コンピュータ装置90にアーム型ロボット1を制御するシステムを加えたものである。よって、特許文献1に示されているX線回折測定システムで既に説明されている箇所は、簡略的に説明するにとどめる。
このX線回折測定システムにより測定される測定対象物OBは、X線回折測定装置2が位置及び姿勢を変化させることが可能な範囲で測定可能となる位置に配置される。図2ではテーブル6の上にステージ5が載置され、ステージ5の上に測定対象物OBが載置されるようになっているが、これは配置の仕方の1例であり、測定可能となる位置に配置されるならば配置のされ方はどのようなものであってもよい。また、測定対象物OBはX線回折測定が可能なものであれば材質、形状はどのようなものであってもよいが、本実施形態では鉄製の直方体形状のものとして説明する。
図2及び図3に示すように、X線回折測定装置2は筐体50内に、X線出射器10、イメージングプレート15を取り付けるテーブル16、テーブル16を回転及び移動させるテーブル駆動機構20及び回折環を検出するレーザ検出装置30等を備える。筐体50内には、上述した装置に接続されて作動制御したり、検出信号を入力したりするための各種回路も内蔵されており、図2において筐体50外に示された2点鎖線で囲われた各種回路は、筐体50内の2点鎖線内に納められている。
X線出射器10は、筐体50内の上部にて筐体50に固定されており、高電圧電源95からの高電圧の供給を受けると、X線を図示下方向に出射する。X線制御回路80は、コントローラ91から指令が入力すると、一定強度のX線が出射されるように、X線出射器10に高電圧電源95から供給される駆動電流及び駆動電圧を制御する。
テーブル駆動機構20は、筐体50に固定され、フィードモータ制御回路70から駆動信号がフィードモータ22に出力されることで移動ステージ21を図3の左右方向に移動させる。移動ステージ21にはスピンドルモータ27が取り付けられ、スピンドルモータ27の回転軸にはイメージングプレート15がセットされたテーブル16が固定されており、テーブル駆動機構20はイメージングプレート15を図3の左右方向に移動させる。フィードモータ制御回路70には移動ステージ21の移動位置を検出する機能と、入力した移動位置と実際の移動位置が等しくなるまでフィードモータ22に駆動信号を出力する機能があり、コントローラ91からの適切な移動位置が入力することで、テーブル駆動機構20はイメージングプレート15を、X線が出射され回折X線による像(回折環)が撮像されるときと、撮像された回折環を読み取るときとにおいて、適切な位置に移動させることができる。また、フィードモータ制御回路70にはコントローラ91から移動方向と移動速度が入力すると、入力した移動方向に入力した移動速度で移動する機能もある。
テーブル駆動機構20の上壁において、X線出射器10の出射口に対向する位置には貫通孔が形成されており、X線出射器10の出射口から出射されたX線は、該貫通孔を介してテーブル駆動機構20内に入射する。スピンドルモータ27の回転軸及び該回転軸の中心がスピンドルモータ27の底面と交差する箇所にも貫通孔が形成されており、該回転軸の中心がテーブル16と交差する箇所、及び該回転軸の中心がテーブル16にイメージングプレート15を固定するための固定具と交差する箇所にも貫通孔が形成されている。また、該回転軸の中心が移動ステージ21と交差する箇所にも貫通孔が形成されている。よって、移動ステージ21が図3の右方向に移動し、テーブル駆動機構20の上壁に形成された貫通孔と移動ステージ21に形成された貫通孔が対向した状態になると、X線出射器10の出射口から出射されたX線は、これらの貫通孔を通過し、テーブル16上にある固定具の貫通孔から出射する。これが、イメージングプレート15に回折環を撮像する位置であり、コントローラ91から適切な移動位置がフィードモータ制御回路70に入力することで、テーブル駆動機構20は移動ステージ21をこの位置にすることができる。以下、この位置を回折環撮像位置という。
X線出射器10から出射されるX線は広がりながら進むX線であるが、スピンドルモータ27に形成された貫通孔およびこの貫通孔と中心軸が一致している移動ステージ21、テーブル16及び固定具の貫通孔を通過して出射することで、これらの貫通孔の軸線に平行な平行光となる。そして、筐体50に形成された円形孔50cを通過して測定対象物OBに照射される。よって、コントローラ91からフィードモータ制御回路70へ回折環撮像位置への移動指令、X線制御回路80へ出射指令が出力し、設定された時間後、X線制御回路80へ停止指令が出力するとイメージングプレート15には回折環が撮像される。
スピンドルモータ27は、スピンドルモータ制御回路76から駆動信号が入力することで回転する。スピンドルモータ制御回路76にはスピンドルモータ27内のエンコーダから入力するパルス列信号により回転速度を設定された回転速度にする機能があり、コントローラ91が回転の指令を出力すると、スピンドルモータ27と一体になっているイメージングプレート15は設定された回転速度で回転する。また、スピンドルモータ制御回路76には回転角度を検出する機能と、入力した回転角度と実際の回転角度が等しくなるまでスピンドルモータ27に低速回転を行うための駆動信号を出力する機能があり、コントローラ91から回転角度が入力すると、スピンドルモータ27と一体になっているイメージングプレート15は入力した回転角度になる。イメージングプレート15に回折環が撮像されるときは、コントローラ91からスピンドルモータ制御回路76に回転角度0の出力がされ、イメージングプレート15は回転角度が0になる。
イメージングプレート15の回転角度0の位置とは、後述するレーザ検出装置30からのレーザ照射によりイメージングプレート15に形成された回折環を読み取る際、回転角度が0となった時点でレーザ光が照射されている位置である。この位置はイメージングプレート15の各半径位置においてあるためラインである。このイメージングプレート15の回転角度0のラインとX線出射器10から出射されるX線の光軸(スピンドルモータ27に形成された貫通孔の軸線と等しい)とが含まれる平面を、以後、基準平面という。
コントローラ91から適切な移動位置をフィードモータ制御回路70に入力することで、テーブル駆動機構20は移動ステージ21を、イメージングプレート15にレーザ検出装置30が対向する位置まで移動させることができる。以後、この位置を回折環読取り位置という。レーザ検出装置30は、回折環を撮像したイメージングプレート15にレーザ光を照射し、イメージングプレート15で輝尽発光した光の強度を検出する。イメージングプレート15で輝尽発光した光の強度は撮像における回折X線の強度に比例するため、イメージングプレート15にレーザ光を走査させるとともに走査位置を検出し、走査位置と発光した光の強度とを同じタイミングで検出することでイメージングプレート15に撮像された回折環の形状(回折X線の強度分布)を検出することができる。レーザ検出装置30は、検出装置制御回路72により制御され、検出装置制御回路72はコントローラ91から読取り開始の指令を入力すると、レーザ検出装置30がレーザ光を出射する駆動信号を出力し、レーザ検出装置30が検出した光の強度のデジタルデータをコントローラ91に出力する。
イメージングプレート15にレーザ光を走査させるには、スピンドルモータ27の回転と移動ステージ21の移動を同時に行い、イメージングプレート15上をレーザ光が螺旋状に移動するようにする。また、レーザ光の走査位置は、スピンドルモータ制御回路76の回転角度を検出する機能と、フィードモータ制御回路70の移動位置を検出する機能を用いる。そして、コントローラ91に、発光した光の強度、回転角度及び移動位置のデジタルデータが同じタイミングで入力するようにすれば、コントローラ91のメモリには回折環の形状(回折X線の強度分布)データが記憶される。すなわち、コントローラ91は、検出装置制御回路72へ読取り開始の指令、フィードモータ制御回路70へ移動方向、移動速度、及び移動位置検出指令、及びスピンドルモータ制御回路76へ回転指令と回転角度検出指令を出力すると、回折環の形状データがメモリに記憶される。
また、レーザ検出装置30にはLED光源が設けられ、検出装置制御回路72から電力が供給されるとイメージングプレート15に撮像された回折環を消去する可視光を出射する。よって、レーザ光のイメージングプレート15への走査が終了した後、レーザ光の出射を停止してLED光源から可視光を照射し、可視光をレーザ光と同様にイメージングプレート15上を走査させれば、イメージングプレート15に撮像された回折環は消去される。
また、移動ステージ21とテーブル駆動機構20の上壁の下面との間には、プレート45に固定されたLED光源がスピンドルモータ27の下面と対向するように配置されている。プレート45は、近傍に配置されたモータの出力軸に固着されており、近傍に固定されたストッパ部材により2つの回転位置で回転が停止するようになっている。この2つの回転位置はスピンドルモータ27の下面の貫通孔にLED光源が対向する位置(以下、A位置という)と、プレート45がテーブル駆動機構20の上壁の貫通孔を通過するX線を遮断しない位置(以下、B位置という)である。LED光源及びモータは、発光制御回路78により制御され、発光制御回路78はコントローラ91から発光開始の指令が入力するとLED光源に発光させる駆動信号を出力し、モータにA位置までプレート45が回転する駆動信号を出力する。また、コントローラ91から発光停止の指令が入力すると、発光のための駆動信号を停止し、モータにB位置までプレート45が回転する駆動信号を出力する。
LED光源から出射されるLED光はX線出射器10から出射されるX線と同じ光路を通って、筐体50の円形孔50cから出射するが、出射X線と同様に平行光で出射されるので、LED光の照射点は出射X線の照射点と同一になる。よって、LED光の照射点が残留応力の測定点になるようにすることで、X線の照射点を残留応力の測定点にすることができる。
また、図2及び図3に示すように筐体50には結像レンズ48が設けられ、結像レンズ48により画像が形成される箇所には、撮像器49が設けられている。撮像器49は、CCD受光器又はCMOS受光器で構成され、各撮像素子ごとの受光強度に相当する強度の信号をセンサ信号取出回路74に出力する。結像レンズ48及び撮像器49は、イメージングプレート15に対して基準位置にある測定対象物OBにおけるLED光の照射点を中心とした領域の画像を撮像するデジタルカメラとして機能する。イメージングプレート15に対して基準位置とは、LED光の照射点からイメージングプレート15までの距離である照射点−撮像面間距離が、基準距離Lsとなる位置である。この場合の結像レンズ48及び撮像器49による被写界深度は、前記照射点を中心とした前後の範囲で設定されている。センサ信号取出回路74は、撮像器49の各撮像素子ごとの信号強度データを、各撮像素子の位置(すなわち画素位置)が分かるデータと共にコントローラ91に出力する。
また、結像レンズ48の光軸は、基準平面(X線出射器10から出射されるX線の光軸とイメージングプレート15の回転角度0のラインを含む平面)に含まれるとともに、この光軸と測定対象物OBに照射されるX線及びLED光の光軸が交わる点は、イメージングプレート15から基準距離LsにあるX線及びLED光の照射点であるように調整されている。さらに、X線及びLED光の照射点箇所の測定対象物OBの法線が基準平面に含まれ、X線及びLED光の測定対象物OBに対する入射角度が基準入射角度Ψsであるとき、結像レンズ48の光軸と測定対象物OBのX線及びLED光の照射点における法線方向とが成す角度は基準入射角度Ψsに等しい角度であるようにされている。したがって、照射点−撮像面間距離が基準距離Lsであり、X線及びLED光の照射点箇所の測定対象物OBの法線が基準平面に含まれ、LED光が測定対象物OBに基準入射角度Ψsで照射された場合には、結像レンズ48に入射する散乱光の光軸と反射光の光軸はいずれも結像レンズ48の光軸と一致するため、撮像器49におけるLED光の照射点と測定対象物OBで反射したLED光が焦点を結ぶ点(以下、受光点という)は同じ位置に生じる。詳細に説明すると、測定対象物OBに照射されるLED光は平行光であるので、照射点において、LED光は散乱光と、略平行光のまま反射する反射光を発生させるが、散乱光のうち結像レンズ48に入射した光は撮像器49の位置で結像して照射点となり、結像レンズ48に入射した反射光は結像レンズ48により集光されて撮像器49で受光され受光点なる。そして、この状態で撮像器49が出力する信号強度データから作成される撮影画像においても、照射点の画像と受光点の画像は同じ位置になる。
コンピュータ装置90は、コントローラ91、キーボード、タッチパネル等の入力装置92及びディスプレイ等の表示装置93からなる。コントローラ91は、CPU、ROM、RAM、大容量記憶装置などを備えたマイクロコンピュータを主要部とした電子制御装置であり、大容量記憶装置に記憶された各種プログラムを実行して上述した回路への指令の出力と、上述した回路からのデータ取り込みを行い、各種の演算を行ってその結果を表示装置93に表示する。
また、表示装置93には、表示画面上にセンサ信号取出回路74から入力する信号強度データにより作成された撮影画像を表示するとともに、結像レンズ48の光軸が撮像器49と交差する箇所に相当する箇所に十字のマークを表示する。この十字マークのクロス点は、照射点−撮像面間距離が基準距離Lsであり、LED光(出射X線)が測定対象物OBに基準入射角度Ψsで照射され、かつ照射点の箇所の法線が基準平面に含まれるとき、照射点の画像および受光点の画像が生じる位置である。また、十字マークの縦方向ラインは、基準平面が撮像器49と交差するラインであり、このラインを測定対象物OBの表面に投影させた方向が、撮像された回折環から計算される残留垂直応力の測定方向である。よって、十字マークの縦方向ラインは測定方向ラインである。
LED光の照射点において発生する散乱光と反射光が結像レンズ48を介して撮像器49に入射する様子と、そのときの撮像器49が出力する撮像信号から作成した撮影画像を示したものが図4である。図4では、測定対象物OBへ照射されるLED光と照射点で発生する反射光を太い点線で示し、照射点で発生し、結像レンズ48に入射する散乱光を細い点線で示している。また、撮影画像において照射点を黒色の丸、受光点を灰色の丸で示している。そして、図4の(a)は、照射点−撮像面間距離が基準距離Lsであり、X線及びLED光の測定対象物OBに対する入射角が基準入射角度Ψsである場合である。このときは、上述したように照射点で発生する散乱光の内、結像レンズ48を介して撮像器49で結像する散乱光の光軸と、照射点で発生する反射光の光軸は結像レンズ48の光軸と一致し、撮像器49で結像する照射点と撮像器49で反射光が焦点を結ぶ点、すなわち受光点は同じ位置になる。そして、図4の(b)は、照射点−撮像面間距離を基準距離Lsより大きくした場合である。このとき、LED光の照射点で発生する散乱光の内、結像レンズ48を介して撮像器49で結像する散乱光の光軸は結像レンズ48の光軸からずれ、撮像器49で結像するLED光の照射点は、結像レンズ48の光軸と撮像器49が交差する点から移動する。よって、撮影画像における照射点の画像の位置も移動する。また、LED光の測定対象物OBに対する入射角が基準入射角度Ψsのままであると、LED光の照射点で発生する反射光は結像レンズ48の端の方に入射し、LED光は平行光であるが、多少拡がりながら進む光であるため、受光点の位置は結像レンズ48の光軸と撮像器49が交差する点から照射点とは反対方向に移動する。よって、撮影画像における照射点の画像の位置も照射点とは反対方向に移動する。
この後、X線回折測定装置2の位置及び姿勢を変化させることで、照射点−撮像面間距離および基準平面の位置を変化させず、LED光の測定対象物OBに対する入射角を基準入射角度Ψsから変化させていくと、LED光の照射点で発生する反射光の中心が結像レンズ48の中心と一致する入射角になるときがある。図4の(C)の実線で示す測定対象物OBは、照射点−撮像面間距離および基準平面の位置を変化させず、X線回折測定装置2の位置及び姿勢を変化させたとき、X線回折測定装置2を基準にした場合の、すなわちX線回折測定装置2に対して相対的な測定対象物OBの位置及び姿勢を示したものである。X線回折測定装置2に対して測定対象物OBが実線で示す状態になると、LED光の測定対象物OBに対する入射角Ψと結像レンズ48の中心とLED光の照射点を結ぶラインの照射点における測定対象物OBの法線とが成す角度Ψは等しくなり、LED光の照射点で発生する反射光は結像レンズ48に入射し、撮像器49に受光点が生じる。そして、このときの反射光の光軸は、結像レンズ48を介して撮像器49で結像する散乱光の光軸と一致するため、受光点の位置は照射点と同じ位置になる。照射点−撮像面間距離を基準距離Lsより小さくした場合は、照射点及び受光点の移動の仕方は図4(b),(c)で示したものとは反対方向になるが、上述した説明は同様に適用することができる。すなわち、照射点−撮像面間距離ごとに、撮影画像における照射点と受光点を同じ位置にすることができるLED光の測定対象物OBに対する入射角Ψがある。
コントローラ91のメモリには、撮影画像における照射点の十字マークの縦方向ラインにおける位置(以下、照射点縦方向位置という)と照射点−撮像面間距離との関係が、テーブル換算表または関係式により記憶されている。上述したように、撮影画像における照射点の位置は、照射点−撮像面間距離が基準距離Lsにあるとき十字マークのクロス点と合致するが、照射点−撮像面間距離が基準距離Lsから変化するに従い、十字マークの縦方向ライン上に位置を変化する。コントローラ91のメモリには、この関係が記憶されており、照射点−撮像面間距離を基準距離Lsとは異なる値に設定するとき、記憶されているこの関係が用いられる。
撮影画像における照射点縦方向位置と照射点−撮像面間距離との関係は、以下のようにすれば得ることができる。まず、金属粉(例えば鉄粉)を糊塗した測定対象物OBにて撮影画像における照射点縦方向位置を取得する。次に、該測定対象物OBにX線を照射してイメージングプレート15に回折環を撮像し、上述した回折環読み取り機能により回折環の形状を読み取る。金属粉を糊塗した測定対象物OBは残留応力0であり、読み取った回折環は真円に近い。そして、標準の回折角を2Θ(Θはブラッグ角)とすると、この回折環の半径Rは照射点−撮像面間距離LとR=L・tan(2Θ)の関係があり、標準の回折角2Θは金属粉の金属において定数であるので、読み取った回折環の半径値Rを算出すれば、上記計算式から照射点−撮像面間距離Lを求めることができる。よって、金属粉を糊塗した測定対象物OBにおいて撮影画像における照射点縦方向位置を異ならせて取得するごとに、該測定対象物OBにX線を照射して回折環を撮像し、この回折環の形状を読み取って半径値を算出すれば、撮影画像における照射点縦方向位置と照射点−撮像面間距離との関係を得ることができる。
また、コントローラ91のメモリには、照射点−撮像面間距離と、撮影画像において受光点が照射点と合致するときのLED光(出射X線)の入射角との関係が、テーブル換算表または関係式により記憶されている。上述したように、照射点−撮像面間距離が基準距離Lsであるとき、撮影画像において受光点が照射点(このときは十字マークのクロス点)と合致すれば、そのときのLED光(出射X線)の入射角は基準入射角度Ψsである。しかし、照射点−撮像面間距離が基準距離Lsから変化するに従い、撮影画像において受光点が照射点と合致するときのLED光(出射X線)の入射角は基準入射角度Ψsから変化する。コントローラ91のメモリには、この関係が記憶されており、照射点−撮像面間距離を基準距離Lsとは異なる値に設定し、さらにLED光(出射X線)の入射角を基準入射角度Ψsとは異なる値に設定するとき、記憶されているこの関係が用いられる。
照射点−撮像面間距離と、撮影画像において受光点が照射点と合致するときのLED光(出射X線)の入射角との関係は、以下のようにすれば得ることができる。まず、ステージの高さ方向位置と傾き角度を変化させることができ、高さ方向位置と傾き角度を精度よく読み取ることができるステージ装置を用意する。次にこのステージ装置のステージに平板ミラーを置き、この平板ミラーにLED光を照射して、平板ミラーを見ながらLED光の反射光が出射点と重なるようにX線回折測定装置2の位置及び姿勢を調整する。これにより、ステージ装置の高さ方向の移動方向がLED光(出射X線)の光軸方向と一致し、ステージ装置の傾き角度変化機構の回転軸方向がLED光(出射X線)の光軸方向と垂直になる。次にこのステージに直方体状のブロックの1つの面を斜めに切り落として、基準入射角度Ψsと同じ傾き角度を有する傾斜面を作成した台形状ブロックを傾斜面にLED光が照射されるように置き、台形状のブロックの傾斜面とその他の面が交差するライン方向がステージの傾き角度変化機構の回転軸方向と一致するようにする。そして、ステージの高さ方向位置を調整して撮影画像における照射点が十字マークのクロス点と合致するようにし、ステージ装置の向きを調整して撮影画像における受光点が照射点(このときは十字マークのクロス点)と合致するようにする。このとき、台形状ブロックの傾斜面の傾き角度が基準入射角度Ψsからわずかにずれている可能性があるので、撮影画像における受光点が十字マークのクロス点と合致するようステージの傾き角度を変化させてもよい。この状態における傾き角度Θk0を読み取り、ステージの高さ方向位置を変化させるごとに、ステージの傾き角度を変化させて撮影画像における受光点が照射点と合致するようにし、撮影画像における照射点縦方向位置の検出と傾き角度Θkの読み取りを行う。上述したように得られた照射点−撮像面間距離と撮影画像における照射点縦方向位置との関係を用いれば、撮影画像における照射点縦方向位置から照射点−撮像面間距離を算出することができ、(Θk−Θk0)を基準入射角度Ψsに加算又は減算すればLED光(出射X線)の入射角度を求めることができる。よって、これにより照射点−撮像面間距離と、撮影画像において受光点が照射点と合致するときのLED光(出射X線)の入射角との関係を得ることができる。
図2及び図3に示すよう、アーム型ロボット1は、先端がX線回折測定装置2の筐体50の上面に固定された連結板51にねじ止め等により固定されることで、X線回折測定装置2と一体になっている。アーム型ロボット1は複数の関節を有し、それぞれの関節は1つの回転軸周りに回転可能になっていて任意の回転角度で停止することができるようになっている。そして、アーム型ロボット1のそれぞれの関節の回転角度を様々に設定することでアーム型ロボット1の先端、すなわちX線回折測定装置2は様々な位置及び姿勢をとることができるようになっている。
アーム型ロボット1のそれぞれの関節の回転角度の設定は、コントローラ91から関節モータ制御回路60−1〜60−6への回転角度の出力により行われる。関節モータ制御回路60−1〜60−6は、コントローラ91から回転角度が入力するとアーム型ロボット1のそれぞれの関節にあるモータに駆動信号を出力するとともに、該モータのエンコーダから入力するパルス列信号のパルス数をカウントすることで回転角度を算出し、算出した回転角度がコントローラ91から入力した回転角度と等しくなると駆動信号の出力を停止する。よって、コントローラ91がそれぞれの関節の回転角度を出力することで、アーム型ロボット1の先端、すなわちX線回折測定装置2は様々な位置及び姿勢をとる。なお、図2においては、関節モータ制御回路60−1〜60−6は、アーム型ロボット1の外部に描かれているが、実際は2点鎖線で囲まれた回路は、アーム型ロボット1に2点鎖線で囲まれた箇所に内蔵されている。
コントローラ91のメモリには、アーム型ロボット1の先端の位置及び姿勢とアーム型ロボット1のそれぞれの関節の回転角度との関係が記憶されており、アーム型ロボット1の先端の位置及び姿勢が設定されれば、それぞれの関節の回転角度は定まる。よって、コントローラ91にてアーム型ロボット1の先端の位置及び姿勢が設定されると、コントローラ91はそれぞれの関節の回転角度を出力し、アーム型ロボット1の先端は即座に設定された位置及び姿勢になる。コントローラ91でのアーム型ロボット1の先端の位置及び姿勢の設定の1つは、作業者が入力装置92から位置として(x,y,z)の座標を入力することと、姿勢として(Θx,Θy,Θz)の回転角度を入力することで行われる。また、もう1つはコントローラ91が実行するプログラムにより、位置として(x,y,z)の座標、姿勢として2方向の単位ベクトルの成分が設定されることで行われる。この座標と単位ベクトルの成分は、アーム型ロボット1の先端に定めた座標軸の原点における基準座標系による座標とx,y軸方向の基準座標系による単位ベクトルである。この点について後程詳細に説明する。なお、入力装置92からの(x,y,z)の座標及び(Θx,Θy,Θz)の回転角度の入力は、数値の入力の他、既に入力された数値を正方向又は負方向に連続して変化させる入力の仕方もでき、アーム型ロボット1の先端の位置及び姿勢を連続的に変化させることができる。
コントローラ91のメモリに入力される、アーム型ロボット1の先端の位置及び姿勢とアーム型ロボット1のそれぞれの関節の回転角度との関係は、以下のようにして求めることができる。なお、これは既存技術における1つの方法であり、この関係を精度よく求めることができるならば、これ以外の方法を用いてもよい。まず、アーム型ロボット1の先端からX線回折測定装置2を取り外し、図5に示すようにアーム型ロボット1の先端の固定用ブロック52の下面(取り付け時に連結板51と迎合する面)に3つの点S0〜S2を定める。1つは固定用ブロック52の下面の中心点S0にし、1つは点S0からX線回折測定装置2を取り付けたとき基準平面と固定用ブロック52の面が交差するラインの方向にある点S1とし、もう1つは点S0から点S0と点S1を結ぶラインの垂直方向にある点S2とする。ここで点S0はアーム型ロボット1の先端の位置を表すものであり、点S0と点S1を結ぶラインの方向と、点S0と点S2を結ぶラインの方向はアーム型ロボット1の先端の姿勢を表すものである。また、別の言い方をすると、点S0がアーム型ロボット1の先端に定めた座標軸の原点であり、2つのラインが座標軸におけるX軸とY軸である。次に、アーム型ロボット1が固定された基台3の付近に基準座標系の原点とX,Y軸を定め、原点をF0とし、X軸上に点F1を定め、Y軸上に点F2を定める。なお、Z軸はX軸及びY軸に垂直な軸であるので、原点とX,Y軸が定まれば自ずと定まる。また、図5では3つの座標軸を明確にするためY軸を描いているが、実際はY軸は紙面垂直方向にあり、点S2及び点F2は点S0及び点F0と重なっている。これは、座標軸を示しているこれ以降の図でも同じである。
次に、高精度でリフレクター(SMR)までの距離と方向を測定することができるレーザトラッカー8を用意する。距離と方向を測定することができるとは、レーザトラッカー8に定めた座標系でリフレクター(SMR)中心位置を(x,y,z)の座標で測定することができるということであり、このレーザトラッカー8により点F0〜F2にリフレクター(SMR)を置いたときの座標値(xf0,yf0,zf0),(xf1,yf1,zf1),(xf2,yf2,zf2)を測定する。これらの座標値はリフレクター(SMR)の半径分、点F0〜F2からずれているため、得られた3つの座標値から3つの座標を含む平面の式を計算し、測定した座標値からこの平面の法線方向にリフレクター(SMR)の半径分、移動した座標値を計算し、正規の点F0〜F2の座標値(xf0,yf0,zf0),(xf1,yf1,zf1),(xf2,yf2,zf2)とする。なお、リフレクター(SMR)の半径は小さいので、基準座標系の原点とX,Y軸は、定めたものからZ軸方向にリフレクター(SMR)の半径分移動したものとして、測定した3つの座標値をそのまま点F0〜F2の座標値としてもよい。
次に、レーザトラッカー8で得られた座標値を基準座標系の座標値に変換するための座標変換の式を計算する。この座標変換の式は以下の数1に示す座標変換の式におけるg11〜g13及びa,b,cを求めることで得ることができる。
g11〜g13は、a,b,cを0にして、数1の(x’,y’,z’)に(1,0,0)を代入し、(x,y,z)に、{α・(xf1−xf0),α・(yf1−yf0),α・(zf1−zf0)}を代入したときの式、(x’,y’,z’)に(0,1,0)を代入し、(x,y,z)に、{β・(xf2−xf0),β・(yf2−yf0),β・(zf2−zf0)}を代入したときの式、(x’,y’,z’)に(0,0,1)を代入し、(x,y,z)に、{α・(xf1−xf0),α・(yf1−yf0),α・(zf1−zf0)}と{β・(xf2−xf0),β・(yf2−yf0),β・(zf2−zf0)}の外積によるベクトル成分を代入したときの式から得られる、9つの式から成り立つ連立方程式を解くことで求めることができる。なお、αは、〔1/{(xf1−xf0)
2+(yf1−yf0)
2+(zf1−zf0)
2}
1/2〕であり、βは、〔1/{(xf2−xf0)
2+(yf2−yf0)
2+(zf2−zf0)
2}
1/2〕であって、点F0からF1へ向かうベクトルの成分、及び点F0からF2へ向かうベクトルの成分を単位ベクトルの成分にするための係数である。また、a,b,cは、g11〜g13が得られた後、数1の(x’,y’,z’)に(0,0,0)を代入し、数1の(x,y,z)に(xf0,yf0,zf0)を代入したときに得られる3つの式を解くことで求めることができる。
次に、アーム型ロボット1の先端の位置及び姿勢を変更するごとに、アーム型ロボット1のそれぞれの関節の回転角度を関節モータ制御回路60−1〜60−6からコントローラ91に出力させ、レーザトラッカー8で点S0〜S2にリフレクター(SMR)を置いたときの座標値(xs0,ys0,zs0),(xs1,ys1,zs1),(xs2,ys2,zs2)を測定する。これらの座標値も、点F0〜F2と同様リフレクター(SMR)の半径分、点S0〜S2からずれているため、点F0〜F2のときと同様に補正するか、リフレクター(SMR)の半径は小さいので、点S0〜S2は固定用ブロック52の下面の法線方向にリフレクター(SMR)の半径分移動したものとして、測定した座標値をそのまま用いる。そして、得られた座標値を数1の(x,y,z)に代入することで基準座標系による座標値にする。得られた座標値を(xs0’,ys0’,zs0’),(xs1’,ys1’,zs1’),(xs2’,ys2’,zs2’)とすると、(xs0’,ys0’,zs0’)はアーム型ロボット1の先端の位置を表す基準座標系による座標値である。そして、{α・(xs1’−xs0’),α・(ys1’−ys0’),α・(zs1’−zs0’)}と{β・(xs2’−xs0’),β・(ys2’−ys0’),β・(zs2’−zs0’)}の単位ベクトルの成分はアーム型ロボット1の先端の姿勢を表す基準座標系によるベクトル成分である。なお、αは、〔1/{(xs1’−xs0’)2+(ys1’−ys0’)2+(zs1’−zs0’)2}1/2〕であり、βは、〔1/{(xs2’−xf0’)2+(ys2’−ys0’)2+(zs2’−zs0’)2}1/2〕であって、点S0からS1へ向かうベクトルの成分、点S0からS2へ向かうベクトルの成分を単位ベクトルの成分にするための係数である。なお、別の言い方をすると、(xs0’,ys0’,zs0’)はアーム型ロボット1の先端に定めた座標軸の原点における基準座標系による座標であり、{α・(xs1’−xs0’),α・(ys1’−ys0’),α・(zs1’−zs0’)}はX軸方向の基準座標系による単位ベクトルであり、{β・(xs2’−xs0’),β・(ys2’−ys0’),β・(zs2’−zs0’)}はY軸方向の基準座標系による単位ベクトルである。
そして、アーム型ロボット1の先端の位置及び姿勢を僅かづつ変更するごとに、上記のようにして得られた、アーム型ロボット1の関節の回転角度、点S0の座標値、点S0から点S1方向へ向かう単位ベクトルの成分、点S0から点S2方向へ向かう単位ベクトルの成分を、コントローラ91のメモリに順に記憶させていけば、アーム型ロボット1の関節の回転角度と先端の位置及び姿勢の関係を取得することができ、アーム型ロボット1の先端の位置及び姿勢を設定すれば、記憶しているこの関係を用いて関節の回転角度が定まり、関節モータ制御回路60−1〜60−6に回転角度を出力することで、アーム型ロボット1の先端の位置及び姿勢は設定した通りになる。なお、アーム型ロボット1の関節の回転角度と先端の位置及び姿勢の関係は、換算テーブルの形であり値としては不連続である。よって、設定されたアーム型ロボット1の先端の位置及び姿勢から各関節の回転角度を定めるときは、換算テーブルの中の最も近い値を選択し、補間法による計算を行う。
なお、アーム型ロボット1の先端の姿勢を、アーム型ロボット1の先端に定めた座標軸の方向における単位ベクトルの成分、すなわち点S0から点S1方向へ向かう単位ベクトルの成分と点S0から点S2方向へ向かう単位ベクトルの成分として表わすと、入力装置92から姿勢の入力を行う際にわかりにくいため(Θx,Θy,Θz)の回転角度の値にし、入力装置92からは姿勢として(Θx,Θy,Θz)の回転角度を入力するようにする。この回転角度は、アーム型ロボット1の先端に定めた座標軸をX’軸,Y’軸として、すなわち、点S0と点S1を通るラインをX’軸、点S0と点S2を通るラインをY’軸として、基準座標系のX軸,Y軸の方向をX’軸,Y’軸の方向に一致させる際、基準座標系のZ軸,Y軸,X軸をその軸周りに回転させる角度である。見方を換えると、このΘz,Θy,Θxは、基準座標系のZ軸,Y軸,X軸方向とX線回折測定装置2の筐体50の高さ方向、幅方向、長尺方向が合うようにした状態から、高さ方向の軸周りにΘz回転させ、幅方向の軸周りにΘy回転させ、長尺方向の軸周りにΘx回転させた状態の姿勢を表すものであるため、入力装置92から姿勢の入力を行う際にわかりやすい値である。そして、このΘz,Θy,Θxは、X’軸方向の単位ベクトル(点S0から点S1方向へ向かう単位ベクトル)の基準座標系による成分、Y’軸方向の単位ベクトル(点S0から点S2方向へ向かう単位ベクトル)の基準座標系による成分から求めることができる。
まず、点S0から点S1へ向かう単位ベクトルの基準座標系による成分を(x1,y1,z1)とすると、Θzは以下の数2で求めることができる。
(数2)
Θz=tan
−1(y1/x1)
そして、Θyは、以下の数3で求めることができる。
(数3)
Θy=tan
−1{Z1/(x1
2+y1
2)
1/2}
また、Θxは、点S0から点S2へ向かう単位ベクトルの基準座標系による成分を(x2,y2,z2)とすると、以下の数4の座標変換の式により基準座標系のX軸の方向をX’軸の方向にしたときのベクトル成分(x2’,y2’,z2’)を求め、以下の数5で求めることができる。
(数5)
Θz=tan
−1(z2’/y2’)
このようにして計算した回転角度Θz,Θy,Θxをコントローラ91のメモリに、アーム型ロボット1の先端の姿勢を表す値として上述した単位ベクトルの成分とともに記憶しておくことで、作業者が入力装置92から回転角度Θz,Θy,Θxを入力すると、各関節の回転角度が定まり、アーム型ロボット1の先端の姿勢は入力装置92から入力した通りになる。また、回転角度Θz,Θy,Θxを、アーム型ロボット1の先端に定めた座標軸の方向における単位ベクトルの成分にするときは、以下の数6の座標変換の式の(x,y,z)に(1,0,0)、(0,1,0)、(0,0,1)を入力して(x’,y’,z’)を求めればよい。
また、コントローラ91のメモリには、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係が記憶されている。上述したように、アーム型ロボット1の先端に定めた座標軸は、アーム型ロボット1の先端の位置及び姿勢を表すものであり、点S0を原点にし、点S0と点S1を通るラインをX’軸、点S0と点S2を通るラインをY’軸にし、X’軸とY’軸に直交する軸をZ’軸にしたものである。そして、X線回折測定装置2に定めた座標軸は、LED光(出射X線)の光軸とイメージングプレート15の上面が交差する点を原点にし、LED光(出射X線)の光軸をZ軸にし、イメージングプレート15の回転角度0のラインをX軸にし、X軸とZ軸に直交する軸をY軸にしたものである。この座標軸の関係を視覚的に示したものが図6である。そして、コントローラ91のメモリに記憶される関係とは、基準座標系におけるX線回折測定装置2に定めた座標軸の原点からアーム型ロボット1の先端に定めた座標軸の原点(点S0)に向かうベクトルの成分と、基準座標系におけるX線回折測定装置2に定めた座標軸の方向の単位ベクトルをアーム型ロボット1の先端に定めた座標軸の方向の単位ベクトルにするときの回転の行列式である。別の見方をすると、X線回折測定装置2に定めた座標軸をアーム型ロボット1の先端に定めた座標軸に一致させるときの原点の移動方向と移動量、及び基準座標系の座標軸方向周りの回転角度である。コントローラ91のメモリにこの関係が記憶されていることで、X線回折測定装置2の座標軸の位置と方向が設定されれば、アーム型ロボット1の先端に定めた座標軸の位置と方向が設定され、これはアーム型ロボット1の先端の位置及び姿勢であるので、アーム型ロボット1のそれぞれの関節の回転角度を設定することができる。すなわち、X線回折測定装置2の座標軸の位置と方向を設定すれば、アーム型ロボット1の駆動により、X線回折測定装置2の座標軸は設定した通りの位置と方向になる。また、逆にアーム型ロボット1の先端に定めた座標軸の位置と方向が設定されれば、X線回折測定装置2の座標軸の位置と方向が設定され、イメージングプレート15の中心点の位置、LED光(出射X線)の光軸方向、基準平面の法線方向等、様々な位置と方向を算出することができる。
コントローラ91のメモリに記憶される、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係は、以下のようにして求めることができる。なお、この関係を求めるのは、コントローラ91のメモリに、アーム型ロボット1の先端の位置及び姿勢とアーム型ロボット1のそれぞれの関節の回転角度との関係が記憶された後である。まず、図7に示すように、X線回折測定装置2からLED光を照射し、カメラ機能を作動させたとき、LED光が照射され撮影画像に写る位置に直方体状のブロックBLが底面が下方から見えるようにセットする。直方体状のブロックBLは上面に十字マークが描かれ、その十字マークのクロス点は上面の中心点、すなわち上面の長方形の対角線が交差する点と合致している。図7では高さ方向位置を変化させることができる支持装置9によりセットするようにしているが、ブロックBLの底面が下方から見えるようにセットできればセットの方法はどのような方法でもよい。次に、前述した関係を求めたときと同様にレーザトラッカー8を用意し、基準座標系の座標軸に設定した点F0〜F2にリフレクター(SMR)をセットし、リフレクター(SMR)の中心座標を測定し、前述した関係を求めたときと同様に、レーザトラッカー8の座標系による座標を基準座標系による座標に変換する座標変換の式である数1を計算する。ただし、レーザトラッカー8を前述した関係を求めたときから移動していなければ、先に得られた座標変換の式をそのまま使用すればよいので、この作業は不要である。
次に、アーム型ロボット1のそれぞれの関節の回転角度から既にメモリに記憶されている関係を用いてアーム型ロボット1の先端の位置及び姿勢、すなわち点S0の座標、X’軸方向及びY’軸方向の単位ベクトルの成分を取得する。そして、図8に示すようにブロックBLの位置を実線で示すように、X線回折測定装置2に近い位置にし、すなわち撮影画像の上方にLED光の照射点が写るようにし、ブロックBLの上面の十字マークの中心と照射点が合致するようブロックBLの位置を調整する。この状態で、撮影画像上のLED光の照射点の位置から照射点−撮像面間距離L1を取得する。次に、ブロックBLの底面の角である点B1〜B3にリフレクター(SMR)をセットし、レーザトラッカー8によりそれぞれのリフレクター(SMR)の中心座標を測定し、この座標を数1の座標変換の式により基準座標系による座標に変換する。そして、得られた3つの座標からブロックBLの上面の中心点B01の座標(xb1,yb1,zb1)を計算する。この計算は、ブロックBLの下面の長方形の対角線の中心点の座標を求め、下面の上面に向かう法線方向の単位ベクトルを求め、リフレクター(SMR)の半径とブロックBLの高さ方向の長さを加算した値をこの単位ベクトルに乗算して、対角線の中心点の座標に加算すればよい。なお、図7において点B1〜B3は1つのライン上にあるようになっているが、実際は点B3は点B1から紙面垂直方向にあり、点B1と重なっている。
次に、図8に示すようにブロックBLの位置を点線で示すように、X線回折測定装置2から離れた位置にし、すなわち撮影画像の下方にLED光の照射点が写るようにし、ブロックBLの十字マークの中心とLED光の照射点が合致するようブロックBLの位置を調整する。この状態で、撮影画像上のLED光の照射点の位置から照射点−撮像面間距離L2を取得する。そして、上述した作業と同じ作業を行って、ブロックBLの上面の中心点B02の座標(xb2,yb2,zb2)を取得する。次に、図8に示すようにブロックBLの位置を1点鎖線で示すように、LED光が照射されない結像レンズ48から離れた位置にし、ブロックBLの十字マークの中心が撮影画像における十字マークの縦方向ラインと重なるようブロックBLの位置を調整する。そして、上述した作業と同じ作業を行って、ブロックBLの上面の中心点B03の座標(xb3,yb3,zb3)を取得する。撮影画像において図8における3つのブロックBLを示したものが図9であり、(a)の撮影画像は図8の実線のブロックBL、(b)の撮影画像は図8の点線のブロックBL、(c)の撮影画像は図8の1点鎖線のブロックBLである。このようにして得られた、2つの照射点−撮像面間距離L1,L2と3つの中心点B01〜B03の座標から、X線回折測定装置2に定めた座標軸の原点と座標軸の方向の単位ベクトルの成分を計算する。なお、得られた3つの中心点B01〜B03の座標は基準座標系による値であるので、以後計算される座標及びベクトル成分は、すべて基準座標系による値である。
まず、Z軸方向の単位ベクトルの成分は、{α・(xb2−xb1),α・(yb2−yb1),α・(zb2−zb1)}で計算される。αは、〔1/{(xb2−xb1)2+(yb2−yb1)2+(zb2−zb1)2}1/2〕であり、点B01から点B02へ向かうベクトルの成分を単位ベクトルの成分にするための係数である。そして、座標軸の原点は、点B01の座標(xb1,yb1,zb1)に、上記のように得られたZ軸方向の単位ベクトルの成分に照射点−撮像面間距離L1を乗算して符号を逆にしたベクトルの成分を加算することで得ることができる。また、点B02の座標(xb2,yb2,zb2)に、上記のように得られたZ軸方向の単位ベクトルの成分に照射点−撮像面間距離L2を乗算して符号を逆にしたベクトルの成分を加算してもで得ることができるので、得られた2つの座標値を平均すればよい。次に、Y軸方向の単位ベクトルは、3つの点B01〜B03の座標から3つの点B01〜B03を含む平面(基準平面)の式を算出すれば、この平面の法線ベクトルが計算されるので、この法線ベクトルの単位ベクトルを計算することで得ることができる。さらに、X軸方向の単位ベクトルは、Y軸方向の単位ベクトルとZ軸方向の単位ベクトルの外積から得ることができる。
そして、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係である、X線回折測定装置2に定めた座標軸の原点からアーム型ロボット1の先端に定めた座標軸の原点に向かうベクトルの成分と、X線回折測定装置2に定めた座標軸の方向の単位ベクトルをアーム型ロボット1の先端に定めた座標軸の方向の単位ベクトルにするときの回転の行列式は以下のようにして計算する。まず、X線回折測定装置2に定めた座標軸の原点からアーム型ロボット1の先端に定めた座標軸の原点に向かうベクトルの成分は、X線回折測定装置2に定めた座標軸の原点を(xr0,yr0,zr0),アーム型ロボット1の先端に定めた座標軸の原点を(xs0,ys0,zs0)とすると、(xs0−xr0,ys0−yr0,zs0−zr0)で得ることができる。そして、X線回折測定装置2に定めた座標軸の方向の単位ベクトルをアーム型ロボット1の先端に定めた座標軸の方向の単位ベクトルにするときの回転の行列式は、X線回折測定装置2に定めた座標軸のX軸方向の単位ベクトルを(xr1,yr1,zr1)、Y軸方向の単位ベクトルを(xr2,yr2,zr2)、Z軸方向の単位ベクトルを(xr3,yr3,zr3)とし、アーム型ロボット1の先端に定めた座標軸のX軸方向の単位ベクトルを(xs1,ys1,zs1)、Y軸方向の単位ベクトルを(xs2,ys2,zs2)、Z軸方向の単位ベクトルを(xs3,ys3,zs3)とすると、以下の数7の式の(x,y,z)に、(xr1,yr1,zr1)、(xr2,yr2,zr2)、(xr3,yr3,zr3)を代入し、(x’,y’,z’)に、(xs1,yrs,zs1)、(xs2,ys2,zs2)、(xs3,ys3,zs3)を代入したときに成立する9つの式からなる連立方程式を解いてg11〜g33を求めることで得ることができる。
これにより、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係を得ることができる。なお、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係は、アーム型ロボット1の先端の位置及び姿勢によらず一定であるので、アーム型ロボット1の先端の位置及び姿勢を変えて上述した作業を行い、複数の(xs0−xr0,ys0−yr0,zs0−zr0)と行列式の係数g11〜g33を求め、平均することで精度のよい関係を求めることが好ましい。
そして、コントローラ91のメモリに上述したように求めた、ベクトル成分(xs0−xr0,ys0−yr0,zs0−zr0)と行列式の係数g11〜g33を記憶しておけば、2つの座標軸の座標値及びベクトル成分をそれぞれ他方の座標軸の座標値及びベクトル成分に変換することができる。すなわち、X線回折測定装置2に定めた座標軸の原点の座標にベクトル成分(xs0−xr0,ys0−yr0,zs0−zr0)を加算し、X線回折測定装置2に定めた3つの座標軸の方向の単位ベクトルを数7の式で変換すれば、アーム型ロボット1の先端に定めた座標軸の原点の座標と3つの座標軸の方向の単位ベクトルになる。また、アーム型ロボット1の先端に定めた座標軸の原点の座標からベクトル成分(xs0−xr0,ys0−yr0,zs0−zr0)を減算し、アーム型ロボット1の先端に定めた3つの座標軸の方向の単位ベクトルを数7の行列の逆行列で変換すれば、X線回折測定装置2に定めた座標軸の原点の座標と3つの座標軸の方向の単位ベクトルになる。
上述したように、コントローラ91のメモリにはいくつかの関係が記憶されているが、さらに、照射点−撮像面間距離及び出射X線(LED光)の入射角を作業者が入力装置92から入力した値通りに設定するためのプログラムがインストールされている。このプログラムは図10A〜図10Dのフロー図により示されるものである。このプログラムを作動させる前に、作業者は入力装置92から照射点−撮像面間距離及び出射X線(LED光)の入射角を入力するとともに、入力装置92からの入力によりLED光の発光とカメラ機能の作動をさせる。そして、入力装置92からアーム型ロボット1の先端の位置(点S0の座標)と姿勢(回転角度Θx,Θy,Θz)を入力することで、撮影画像のLED光の照射点が測定対象物OBの残留応力の測定点になり、撮影画像の十字マークの縦方向ラインを測定対象物OBへ投影した方向が残留垂直応力の測定方向になるようにする。この状態で、作業者は入力装置92からの入力で図10A〜図10Dに示されるフロー図のプログラムをスタートさせる。以下、図10A〜図10Dのプログラムのフロー図に沿って、照射点−撮像面間距離及び出射X線(LED光)の入射角を入力した値通りに設定するときのアーム型ロボット1の作動及びコントローラ91内で行われる演算処理について説明する。なお、説明をわかりやすくするため、以後の説明では、アーム型ロボット1の先端の位置及び姿勢とアーム型ロボット1のそれぞれの関節の回転角度との関係を、関節回転角度−先端座標軸関係といい、アーム型ロボット1の先端に定めた座標軸と、X線回折測定装置2に定めた座標軸との関係を先端座標軸−X線座標軸関係という。また、照射点−撮像面間距離と撮影画像における照射点縦方向位置との関係を、照射点位置−撮像距離関係といい、照射点−撮像面間距離と、撮影画像において受光点が照射点と合致するときのLED光(出射X線)の入射角との関係を、撮像距離−入射角関係という。
図10AのフローのステップS1でプログラムがスタートすると、コントローラ91はステップS2で照射点−撮像面間距離が入力装置92からの入力された値Lになる、X線回折測定装置2に定めた座標軸の位置と方向(座標軸原点及び3つの座標軸方向の単位ベクトル成分)を計算する。この計算は、まず、作業者が入力装置92から入力したアーム型ロボット1の先端の位置及び姿勢から、アーム型ロボット1の先端の座標軸の原点座標及び3つの座標軸方向の単位ベクトルの成分はわかっているので、これらをメモリに記憶されている先端座標軸−X線座標軸関係を用いて、X線回折測定装置2に定めた座標軸の原点座標及び3つの座標軸方向の単位ベクトルの成分にする。次に、撮影画像におけるLED光の照射点位置を検出し、メモリに記憶されている照射点位置−撮像距離関係を用いて照射点−撮像面間距離L’を求め、X線回折測定装置2に定めた座標軸の原点座標にZ軸方向の単位ベクトルに距離L’を乗算したベクトル成分を加算し、LED光の照射点の座標を求める。そして、このLED光の照射点の座標からZ軸方向の単位ベクトルに距離Lを乗算したベクトル成分を減算する。得られた座標が、照射点−撮像面間距離が値Lになる、X線回折測定装置2に定めた座標軸の原点座標である。この時点では座標軸の方向は変化させる必要はないので、既に得られているX線回折測定装置2に定めた3つの座標軸方向の単位ベクトルの成分を、そのまま用いる。
次に、コントローラ91はステップS3にて、ステップS2で得られたX線回折測定装置2に定めた座標軸の位置と方向を、先端座標軸−X線座標軸関係を用いてアーム型ロボット1の先端に定めた座標軸の位置と方向にする。このアーム型ロボット1の先端に定めた座標軸の位置と方向を位置姿勢Aとする。そして、コントローラ91はステップS4にて、ステップS3で計算した位置姿勢Aから関節回転角度−先端座標軸関係を用いて、アーム型ロボット1の各関節の回転角度にし、それらの回転角度を、関節モータ制御回路60−1〜60−6に出力し、アーム型ロボット1を作動させる。これにより、照射点−撮像面間距離は入力された値Lになる。
次に、コントローラ91はステップS5にて、基準平面の法線方向に設定距離M移動したときのアーム型ロボット1の先端に定めた座標軸の位置と方向を計算する。この計算は、ステップS3にて得られたアーム型ロボット1の先端に定めた座標軸の原点座標に、ステップS2にて得られたX線回折測定装置2のY軸方向の単位ベクトルに設定距離Mを乗算したベクトル成分を加算した座標を計算し、これを原点座標にして、3つの座標軸方向の単位ベクトルの成分はステップS3にて得られたままとすればよい。次に、コントローラ91はステップS6にて、ステップS5で計算した位置姿勢Bから関節回転角度−先端座標軸関係を用いて、アーム型ロボット1の各関節の回転角度にし、それらの回転角度を、関節モータ制御回路60−1〜60−6に出力し、アーム型ロボット1を作動させる。これにより、X線回折測定装置2はX線回折測定装置2に定めた座標軸の中のY軸方向(基準平面の法線方向)に距離Mだけ移動する。
次に、コントローラ91はステップS7にて、基準平面の法線方向とLED光の照射点における基準平面の法線を測定対象物OBの表面に投影したラインとが成す角度(以下、基準平面傾き角度という)を計算する。この角度を視覚的に示すと図11のようになる。図11において1点鎖線はX線回折測定装置2に定めたX軸方向に基準平面を見たときのラインであり、中央のラインがアーム型ロボット1の先端が位置姿勢Aのときであり、右側のラインがアーム型ロボット1の先端が位置姿勢Bのときである。また、2つの打点はLED光(出射X線)の照射点であり、中央は位置姿勢Aのときであり、右側は位置姿勢Bのときである。そして、2点鎖線は、位置姿勢AのときのLED光(出射X線)の照射点を通る、X線回折測定装置2の移動方向と平行なラインである。基準平面傾き角度Θsは、撮影画像におけるLED光の照射点位置を検出し、メモリに記憶されている照射点位置−撮像距離関係を用いて照射点−撮像面間距離L”を求めれば、図11からわかるように、tan−1{(L”−L)/M}から計算することができる。
次に、コントローラ91はステップS8にて、ステップS4にて関節モータ制御回路60−1〜60−6に出力した回転角度と同じ回転角度を出力し、アーム型ロボット1の先端を位置姿勢Aにする。次に、コントローラ91はステップS9にて、照射点位置及び照射点−撮像面間距離を変更せず、基準平面傾き角度を0にするX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算は、基準平面傾き角度をΘsとすると、まず、位置姿勢Aにおける(ステップS2で求めた)X線回折測定装置2に定めたZ軸方向と角度Θsを成し、Y軸方向と角度(90°−Θs)を成し、X軸方向と90°の角度を成す単位ベクトルを計算する。この単位ベクトルは、それぞれの座標軸の単位ベクトルとの内積の式から得られる3つの式の連立方程式を解けば求めることができる。次に、この単位ベクトルをZ軸方向の単位ベクトルとし、X軸方向の単位ベクトルはそのままで、Z軸方向の単位ベクトルとX軸方向の単位ベクトルの外積から得られるベクトルをY軸方向の単位ベクトルとし、ステップS2で求めたLED光の照射点の座標からZ軸方向の単位ベクトルに距離Lを乗算したベクトル成分を減算して座標原点の座標とする。これにより、基準平面傾き角度を0にするX線回折測定装置2に定めた座標軸の位置と方向が得られる。
次に、コントローラ91はステップS10にて、ステップS9で得られたX線回折測定装置2に定めた座標軸の位置と方向を、先端座標軸−X線座標軸関係を用いてアーム型ロボット1の先端に定めた座標軸の位置と方向にする。このアーム型ロボット1の先端に定めた座標軸の位置と方向を位置姿勢Cとする。そして、コントローラ91はステップS11にて、ステップS10で計算した位置姿勢Cから関節回転角度−先端座標軸関係を用いて、アーム型ロボット1の各関節の回転角度にし、それらの回転角度を、関節モータ制御回路60−1〜60−6に出力し、アーム型ロボット1を作動させる。これにより、LED光照射点の位置は変化せず、照射点−撮像面間距離は入力された値Lのまま、基準平面傾き角度は0になる。
次に、コントローラ91は図10BのフローのステップS12へ行く、ステップS12〜ステップS22の処理は、LED光(出射X線)の入射角を微小づつ変化させることを、撮影画像に受光点が現れるまで繰り返して行う処理である。ステップS12で変数aを1、ステップS13で変数nを1にし、ステップS14にて、LED光の照射点位置、照射点−撮像面間距離及び基準平面傾き角度を変更せず、LED光(出射X線)の入射角をα・n・aだけ変更するX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算は、位置姿勢Cにおける(ステップS9で求めた)X線回折測定装置2に定めたZ軸方向と角度α・n・aを成し、Y軸方向と角度90°を成し、X軸方向と(90°−α・n・a)の角度を成す単位ベクトルを計算する。この単位ベクトルは、それぞれの座標軸の単位ベクトルとの内積の式から得られる3つの式の連立方程式を解けば求めることができる。次に、この単位ベクトルをZ軸方向の単位ベクトルとし、Y軸方向の単位ベクトルはそのままで、Z軸方向の単位ベクトルとY軸方向の単位ベクトルの外積から得られるベクトルをX軸方向の単位ベクトルとし、ステップS2で求めたLED光の照射点の座標からZ軸方向の単位ベクトルに距離Lを乗算したベクトル成分を減算して座標原点の座標とする。これにより、照射点位置、照射点−撮像面間距離及び基準平面傾き角度を変更せず、LED光(出射X線)の入射角をα・n・aだけ変更したときのX線回折測定装置2に定めた座標軸の位置と方向が得られる。
次に、コントローラ91はステップS15にて、ステップS14で得られたX線回折測定装置2に定めた座標軸の位置と方向を、先端座標軸−X線座標軸関係を用いてアーム型ロボット1の先端に定めた座標軸の位置と方向にする。このアーム型ロボット1の先端に定めた座標軸の位置と方向を位置姿勢Dnとする。そして、コントローラ91はステップS16にて、ステップS15で計算した位置姿勢Dnから関節回転角度−先端座標軸関係を用いて、アーム型ロボット1の各関節の回転角度にし、それらの回転角度を、関節モータ制御回路60−1〜60−6に出力し、アーム型ロボット1を作動させる。これにより、LED光の照射点位置は変化せず、照射点−撮像面間距離は入力された値Lで、基準平面傾き角度は0のまま、LED光(出射X線)の入射角がα・n・aだけ変化する。なお、この段階ではn=1,a=1であるので、LED光(出射X線)の入射角はαだけ変化する。そして、ステップS17にて撮影画像に受光点が現れたか判定し、現れていなければステップS18にてLED光(出射X線)の入射角の変化が限度値以上になっていないことを確認し、ステップS19にてnをインクリメントしてステップS14に戻り、上述した処理と同様の処理を行う。この段階ではn=2,a=1であるので、LED光(出射X線)の入射角は2αだけ変化する。このようにして、ステップS14〜ステップS19を繰り返して実行することにより、LED光(出射X線)の入射角の変化はα、2α、3α・・・と微小角度αごとに大きくなっていく。そして、受光点が撮影画像に現れれば、ステップS17でYesと判定してステップS25へ行くが、受光点が撮影画像に現れず、ステップS18にてLED光(出射X線)の入射角の変化が限度値以上になったときは、ステップS18にてYesと判定してステップS20へ行く。そして、ステップS20にてaが−1でないことを確認して、ステップS21にて、位置姿勢Cにおけるアーム型ロボット1の各関節の回転角度(ステップS11で求めた回転角度)をモータ制御回路60−1〜60−6に出力し、アーム型ロボット1の先端を位置姿勢Cにする。そしてステップS22にてaを−1にしてステップS13に戻り、上述した処理と同様の処理を行う。
この段階ではn=1,a=−1であり、上述したステップS14〜ステップS19の処理と同様の処理を繰り返すと、nは1づつ増えていくので、LED光(出射X線)の入射角の変化は−α、−2α、−3α・・・と微小角度αごとに小さくなっていく。そして、受光点が撮影画像に現れれば、ステップS17でYesと判定してステップS25へ行く。ただし、受光点が撮影画像に現れず、ステップS18にてLED光(出射X線)の入射角の変化が限度値以上になったときは、正方向、負方向の入射角の変化においていずれも受光点が撮影画像に現れなかったことになるので、何らかの異常が発生したとして、ステップS18にてYesと判定し、ステップS20にてYesと判定した後、ステップS23にて表示装置93に「受光点検出できず」のエラーメッセージを表示して、ステップS24にてプログラムを終了する。
通常は、正方向又は負方向における入射角の変化のどこかで受光点が撮影画像に現れるので、ステップS17でYesと判定してステップS25へ行く。ステップS25〜ステップS37の処理は、撮影画像に現れた受光点の中心を撮影画像の照射点の中心の縦方向位置と合致させる処理である。まず、ステップS25にて変数m=0にし、ステップS26にて撮影画像上における受光点の中心位置P0を取得する。受光点の中心位置P0とは撮影画像上の縦方向位置と横方向位置である。そして、ステップS27にてmをインクリメントし、ステップS28にてLED光の照射点位置、照射点−撮像面間距離及び基準平面傾き角度を変更せず、LED光(出射X線)の入射角をβ・m・aだけ変更するX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算はステップS14の計算と同じであるが、βはαより小さく、受光点が撮影画像内で変化する値に設定されている。そして、ステップS15、ステップS16と同じ、ステップS29、ステップS30の処理でアーム型ロボット1を作動させ、受光点の位置を撮影画像内で変化させ、ステップS31にて撮影画像上における受光点の中心位置P1を取得する。この時点で、2つの入射角変化量と2つの受光点の中心位置が得られるので、ステップS32にてmをインクリメントし、ステップS33にて受光点の中心が照射点の中心の縦方向位置に合致する入射角変化量Kを計算し、ステップS34にてLED光の照射点位置、照射点−撮像面間距離及び基準平面傾き角度を変更せず、LED光(出射X線)の入射角をKだけ変更するX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算もステップS14、ステップS28の計算と同じである。そして、ステップS15、ステップS16及びステップS29、ステップS30と同じステップS35、ステップS36の処理でアーム型ロボット1を作動させ、受光点の位置を撮影画像内で変化させ、ステップS37にて撮影画像上における受光点の中心位置P2を取得する。
次に、ステップS38にて撮影画像の照射点の中心の縦方向位置からの受光点の中心位置のずれが許容値内であるか判定し、許容値内であればYesと判定して図10CのステップS39へ行くが、許容値より大きければステップS32に戻り、上述したステップS32〜ステップS37の処理と同じ処理を行う。ステップS32〜ステップS37の処理を行うほど、入射角変化量と受光点中心の縦方向位置の関係が増えていき、受光点の中心位置は照射点の中心の縦方向位置により近い値が増えていくので、ステップS38にて撮影画像の照射点の中心の縦方向位置からの受光点の中心位置のずれは許容値内になり、Yesと判定して図10CのステップS39へ行く。
図10CのステップS39〜ステップS51の処理は、撮影画像上の受光点の中心が撮影画像上の照射点の中心の横方向位置(十字マークの縦方向線と同)から許容値以上にずれている場合、撮影画像上の受光点の中心を撮影画像の十字マークの縦方向線上にする処理である。ステップS11にて基準平面傾き角度を0にし、それ以降基準平面傾き角度は変化しないようにしているので、受光点中心は十字マークの縦方向線上になるはずであるが、測定対象物OBの表面の平坦度が悪い等、ステップS7における基準平面傾き角度の検出精度が十分でない場合が考えられるので、ステップS39〜ステップS51の処理がある。ステップS39にて、撮影画像上の受光点中心の撮影画像の十字マークの縦方向線からのずれが許容値内であるときはYesと判定して図10DのステップS52へ行くが、許容値より大きいときはNoと判定してステップS40へ行く。ステップS40〜ステップS53の処理は、ステップS25〜ステップS38の処理を受光点の横方向位置に変更して行う処理である。
まず、ステップS40にてmをインクリメントし、ステップS43にてLED光の照射点位置、照射点−撮像面間距離及びLED光(出射X線)の入射角を変更せず、基準平面傾き角度をγだけ変更するX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算は、ステップS9の計算と同じであるが、γは非常に小さく、受光点が撮影画像内で微小に変化する値に設定されている。そして、ステップS44、ステップS45の処理でアーム型ロボット1を作動させ、受光点の位置を撮影画像内で変化させ、ステップS46にて撮影画像上における受光点の中心位置Pmを取得する。この時点で、基準平面傾き角度0のときの受光点の中心位置Pm−1はステップS36にて最後に得られた値であるので、基準平面傾き角度0,γに対し2つの受光点中心の横方向位置Pm−1,Pmが得られている。よって、ステップS47にてmをインクリメントし、ステップS48にて受光点の中心が十字マークの縦方向線上になる基準平面傾き角度Jを計算し、ステップS49にてLED光の照射点位置、照射点−撮像面間距離及びLED光(出射X線)の入射角を変更せず、基準平面傾き角度をJだけ変更するX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算もステップS9、ステップS43の計算と同じである。そして、ステップS48、ステップS49の処理でアーム型ロボット1を作動させ、受光点の位置を撮影画像内で変化させ、ステップS50にて撮影画像上における受光点の中心位置Pm+1を取得する。
次に、ステップS51にて撮影画像の十字マークの縦方向線からの受光点の中心位置のずれが許容値内であるか判定し、許容値内であればYesと判定して図10DのステップS52へ行くが、許容値より大きければステップS45に戻り、上述したステップS45〜ステップS50の処理と同じ処理を行う。ステップS45〜ステップS50の処理を行うほど、基準平面傾き角度と受光点中心位置の関係が増えていき、受光点中心は十字マークの縦方向線により近い値が増えていくので、ステップS51にて撮影画像の十字マークの縦方向線からの受光点の中心位置のずれは許容値内になり、Yesと判定して図10DのステップS52へ行く。
図10DのステップS52〜ステップS54の処理は、LED光(出射X線)の入射角を入力装置92から入力された値Ψにする処理である。まず、ステップS52にて、現時点の照射点−撮像面間距離(入力装置92から入力された値L)からメモリに記憶されている撮像距離−入射角関係を用いて、現在の入射角Ψ’を計算する。次にステップS53にて、LED光の照射点位置、照射点−撮像面間距離及び基準平面傾き角度を変更せず、LED光(出射X線)の入射角をΨ’からΨにするX線回折測定装置2に定めた座標軸の位置と方向を計算する。この計算は、まず、現時点のX線回折測定装置2に定めたZ軸方向の単位ベクトルと(Ψ−Ψ’)の角度を成し、Y軸方向の単位ベクトルと90°の角度を成し、X軸方向との単位ベクトルと{90°−(Ψ−Ψ’)}の角度を成す単位ベクトルを計算する。この単位ベクトルは、それぞれの座標軸の単位ベクトルとの内積の式から得られる3つの式の連立方程式を解けば求めることができる。なお、現時点のX線回折測定装置2に定めたX,Y,Z軸方向の単位ベクトルは、ステップS47にて最後に求めた値である。次に、この単位ベクトルをZ軸方向の単位ベクトルとし、Y軸方向の単位ベクトルはそのままで、Z軸方向の単位ベクトルとY軸方向の単位ベクトルの外積から得られるベクトルをX軸方向の単位ベクトルとし、ステップS2で求めたLED光の照射点の座標からZ軸方向の単位ベクトルに距離Lを乗算したベクトル成分を減算して座標原点の座標とすれば、入射角がΨであるX線回折測定装置2に定めた座標軸の位置と方向を求めることができる。
次に、コントローラ91はステップS54にて、ステップS53で得られたX線回折測定装置2に定めた座標軸の位置と方向を、先端座標軸−X線座標軸関係を用いてアーム型ロボット1の先端に定めた座標軸の位置と方向にする。このアーム型ロボット1の先端に定めた座標軸の位置と方向を位置姿勢Fとする。そして、コントローラ91はステップS55にて、ステップS54で計算した位置姿勢Fから関節回転角度−先端座標軸関係を用いて、アーム型ロボット1の各関節の回転角度にし、それらの回転角度を、関節モータ制御回路60−1〜60−6に出力し、アーム型ロボット1を作動させる。これにより、LED光(出射X線)の入射角は入力された値Ψになる。そしてコントローラ91はステップS56にて、プログラムを終了する。
このプログラム処理により、照射点−撮像面間距離及びLED光(出射X線)の入射角は、入力装置92から入力された値通りに設定されるので、作業者は入力装置92からの入力によりLED光の照射を停止し、カメラ機能の作動を停止した後、X線回折測定の開始を入力する。X線回折測定はX線の照射により回折環をイメージングプレート15に撮像する撮像工程、撮像された回折環の形状を検出する読取り工程、該回折環を消去する消去工程、及び検出した回折環の形状から残留応力を計算する計算工程からなるが、このときのX線回折測定装置2及びコントローラ91の作動は、すべて先行技術文献である特許文献1で説明されている通りである。なお、残留応力の計算においては、照射点−撮像面間距離及びX線の入射角は、入力装置92から入力された値が用いられる。
上記説明からも理解できるように、上記実施形態においては、X線回折測定システムを、X線を対象とする測定対象物OBに向けて出射するX線出射器10と、X線出射器10から測定対象物OBに向けてX線が出射された際、測定対象物OBにて発生した回折X線を、X線出射器10から出射されるX線の光軸に対して略垂直に交差するイメージングプレート15にて受光し、イメージングプレート15に回折X線の像である回折環を形成する回折環形成手段と、X線出射器10からX線が出射されていない状態で、X線出射器10から出射されるX線と光軸を同一にした平行光であるLED光を出射するプレート45に固定されたLED光源、スピンドルモータ27等の形成された貫通孔等からなるLED光出射器と、LED光出射器から出射されたLED光の照射点を含む領域の画像を結像する結像レンズ48、及び結像レンズ48によって結像された画像を撮像する撮像器49を有し、撮像器49が作成する撮影画像を表す撮像信号を出力するカメラ機能と、X線出射器10、回折環形成手段、可視光出射器及びカメラ機能を内蔵する筐体50と、筐体50を先端に取り付け、筐体50の位置と姿勢を変化させるアーム型ロボット1とを備えたX線回折測定システムにおいて、アーム型ロボット1はコントローラ91を備え、コントローラ91は、カメラ機能が出力する撮像信号から作成された撮影画像におけるLED光出射器から出射されたLED光の照射点の位置と、LED光の照射点からイメージングプレート15までの距離である照射点−撮像面間距離との関係を予め記憶し、撮影画像におけるLED光の照射点の位置から照射点−撮像面間距離を検出する距離検出プログラムと、距離検出プログラムが検出する照射点−撮像面間距離と、LED光の照射点からの反射光が撮像器49で集光した点の撮影画像上の画像である受光点が、撮影画像のLED光の照射点位置になったときの測定対象物OBに対するLED光の入射角との関係を予め記憶し、距離検出プログラムが検出した照射点−撮像面間距離からLED光の入射角を検出する入射角検出プログラムと、筐体50の位置と姿勢を、入力装置92から入力した位置と姿勢になるよう制御する入力用位置姿勢制御プログラムと、筐体50の位置と姿勢を、LED光の光軸位置を変化させず、距離検出プログラムが検出する照射点−撮像面間距離が設定された距離になるよう制御する距離設定用位置姿勢制御プログラム(ステップS2〜ステップS5)と、筐体50の位置と姿勢を、可視光の照射点の位置を変化させず、受光点が撮影画像のLED光の照射点位置になるよう制御する受光点設定用位置姿勢制御プログラム(ステップS12〜ステップS51)と、筐体50の位置と姿勢を、LEDの照射点の位置とLED光の光軸及びイメージングプレート15における回転角度0のラインを含む基準平面の位置とを変化させず、入射角検出プログラムが検出した入射角と設定された入射角との差分だけ、LED光の光軸方向が変化するよう制御する入射角設定用位置姿勢制御プログラム(ステップS52〜ステップS55)とを備えている。
これによれば、LED光出射器からLED光を出射させカメラを作動させた後、コントローラ91に筐体50の位置と姿勢を入力することで、入力用位置姿勢制御プログラムにより筐体50の位置と姿勢を制御して、測定対象物OBの測定点とする箇所にLED光の照射点が合うようにする。その後、距離設定用位置姿勢制御プログラム(ステップS2〜ステップS5)が照射点−撮像面間距離が設定された距離になるよう筐体50の位置と姿勢を制御し、受光点設定用位置姿勢制御プログラム(ステップS12〜ステップS51)が、LED光の照射点の位置を変化させず、受光点が撮影画像のLED光の照射点位置になるよう筐体50の位置と姿勢を制御し、入射角設定用位置姿勢制御プログラム(ステップS52〜ステップS55)が、入射角検出プログラムが検出した入射角と設定された入射角との差分だけ、LED光の光軸方向が変化するよう筐体50の位置と姿勢を制御する。すなわち、作業者はコントローラ91への入力により測定対象物OBの測定点とする箇所にLED光の照射点が合うようにするのみで、後はコントローラ91が備える、距離設定用位置姿勢制御プログラム、受光点設定用位置姿勢制御プログラム及び入射角設定用位置姿勢制御プログラムが照射点―撮像面間距離及びX線の入射角が設定された設定値になるよう、筐体50の位置と姿勢を制御する。よって、これによれば、照射点―撮像面間距離及びX線の入射角を任意の設定値に設定することが可能であり、かつ該設定を簡単に行うことが可能である。
また、上記実施形態においては、コントローラ91は、LED光の光軸とイメージングプレート15における回転角度0のラインとが成す基準平面の垂直方向に筐体50を設定された距離だけ移動させる前後で、距離検出プログラムにより照射点−撮像面間距離を検出し、検出された2つの照射点−撮像面間距離から基準平面の法線方向とLED光の照射点における基準平面の法線を測定対象物OBの表面に投影したラインとが成す角度を算出する基準平面傾き角度検出プログラムと(ステップS5〜ステップS8)、筐体50の位置と姿勢を、LED光の照射点の位置を変化させず、基準平面傾き角度検出プログラムが算出した角度が0になる角度分だけ、LED光の光軸方向が変化するよう制御する基準平面設定用位置姿勢制御プログラム(ステップS9〜ステップS11)とを備えている。
これによれば、基準平面設定用位置姿勢制御プログラムが、基準平面の法線方向とLED光の照射点における基準平面の法線を測定対象物OBの表面に投影したラインとが成す角度が0になるよう筐体50の位置と姿勢を制御するので、この後に受光点設定用位置姿勢制御プログラムが受光点が撮影画像の設定位置になるよう制御するとき、LED光の光軸方向を基準平面の位置を変化させないよう変化させれば、受光点が撮影画像内に生じるようにすることができ、受光点が撮影画像の設定位置になるよう制御する時間を大幅に短縮することができる。
なお、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
上記実施形態では、基準平面の垂直方向に筐体50を設定された距離Mだけ移動させる前後で、撮影画像における照射点の位置から照射点−撮像面間距離を検出し、検出された2つの照射点−撮像面間距離から基準平面の法線方向とLED光の照射点における基準平面の法線を測定対象物OBの表面に投影したラインとが成す角度である基準平面傾き角度を算出するようにした。しかし、測定対象物OBの表面の形状が複雑な場合は、2つの照射点−撮像面間距離のみでは、基準平面傾き角度は正確に求めることができない可能性がある。この場合は上記実施形態に替えて、図12が示すように、微小距離M’だけ移動させるごとに撮影画像における照射点の位置から照射点−撮像面間距離L1”〜Ln”を検出し、これらから測定対象物OBの表面プロファイルを検出して基準平面傾き角度を求めるようにすればよい。これによれば、測定対象物OBの表面の形状が複雑な場合でも、LED光の照射点における基準平面傾き角度を精度よく検出することができ、上記実施形態のように、受光点が撮影画像の設定位置になるよう制御するとき、LED光の光軸方向を基準平面の位置を変化させないよう変化させれば、受光点が撮影画像内に生じるようにすることができる。
また、上記実施形態では、基準平面傾き角度を0にした後、LED光の光軸方向を基準平面の位置を変化させないよう変化させて、受光点が撮影画像内に生じるようにしたが、測定対象物OBの形状が簡単な構造に限定されており、作業者の入力装置92からの入力によるアーム型ロボット1の先端の位置と姿勢の調整の際、LED光の反射光の受光位置を確認して基準平面傾き角度を0近辺にすることができるならば、基準平面傾き角度を0にする制御を行うことなく、LED光の入射角を変更して受光点中心が撮影画像の照射点位置に合致する制御を行うようにしてもよい。なお、この場合は、上記実施形態におけるステップS25〜ステップS38の入射角の変更とステップS39〜ステップS51の基準平面傾き角度の変更を交互に繰り返して行う必要がある。
また、上記実施形態では、X線回折測定装置2を、イメージングプレート15に回折環を撮像し、レーザ検出装置30からレーザ光照射しながら走査して照射位置と光の強度検出を行うことで回折環を読取る装置としたが、回折環を撮像するとともに回折環を読取ることができ、出射X線と同じ光軸を有するLED光を照射でき、LED光の照射点付近を撮像するカメラ機能を備えた装置であれば、どのような方式のX線回折測定装置でも本発明は適用することができる。例えば、イメージングプレート15と同じ広さの平面を有するX線CCDを備え、X線出射器10からのX線照射の際、X線CCDの各画素が出力する電気信号により回折X線の強度分布を検出する装置でもよい。また、イメージングプレート15と同じ広さの平面を有するX線CCDの代わりに、微小サイズのX線CCDを位置を検出しながら走査し、X線CCDの各画素が出力する電気信号とX線CCDの走査位置から、回折X線の強度分布を検出する装置でもよい。また、X線CCDに替えてシンチレータから出た蛍光を、光電子増倍管(PMT)で検出するシンチレーションカウンタを用いる装置でもよい。なお、請求項に記載された、撮像面に前記回折X線の像である回折環を形成する回折環形成手段とは、上記のように回折X線を受光して回折X線の強度を電気信号として出力する機器も含むものとする。
また、上記実施形態では、コントローラ91に残留応力を演算して求めるプログラムがインストールされているとした。しかし、測定効率を重要視しなければ、X線回折測定装置2は回折環の形状データを取得するまでにし、残留応力の計算は別の装置で行うようにしてもよい。この場合、別の装置に回折環の形状データを入力する方法としては、記録媒体を介する方法、ネット回線等を使用して転送する方法等、様々な方法が考えられる。また、さらに時間がかかってもよければ演算プログラムを使用せず、上記値の計算の一部またはすべてを手計算により行ってもよい。
また、上記実施形態及び変形例においては、プレート45に取り付けたLED光源を出射X線の光軸上に移動させて、LED光を測定対象物OBに照射する構造にした。しかし、出射X線と光軸を同一にした可視の平行光を照射することができれば、どのような構造にしてもよい。例えば、ビームスプリッタを出射X線の光軸上に配置し、LED光をビームスプリッタで反射させて出射X線と光軸を同一にして照射するようにしてもよい。
また、上記実施形態においては、LED光をスピンドルモータ27等に形成した貫通孔を通過させることで小さな断面径の平行光が得られるようにしたが、小さな断面径の可視の平行光が得られるならば、別の構造にしてもよい。例えば、可視光であるレーザ光を出射するレーザ光源の近くにコリメートレンズとエキスパンダーレンズを配置し、小さな断面径のレーザ光の光軸をスピンドルモータ27の貫通孔の中心軸線と一致させて出射するようにしてもよい。