筆者はこの記事で数年前に、ロボットメーカーの違いで「軌跡精度」「絶対精度」「剛性」が全く違うことを述べた。今回は「カスタマイズ性」を述べたい。
「カスタマイズ性」は製造業の生産効率を上げるためには非常に重要な内容である。にも関わらず、数年間筆者が述べなかった理由は、日本人が苦手なソフトの内容で、しかも多少難易度も高くなってしまうからだ。しかし最近になって、製造業の上に立つ人達はソフトにも理解がある人が増えてきたため、「カスタマイズ性」を述べることにした。
実は、筆者は複数のロボットメーカーを使って様々なカスタマイズを行なってきただけでなく、顧客に納品し大変満足をしてもらった経験がある。よって、今回もネットなどは一切頼らず、経験から述べたい。
カスタマイズ性とは?
「カスタマイズ性」は、ロボットのユーザが好きなようにプログラムを書ける汎用性のことである。例を1つ挙げると、ロボットの先端にカメラやセンサーを付けて、その撮影データを元にロボットが動くようなプログラムである。イメージして欲しいのは、カメラで撮影されたデータをパソコンが画像処理し次にロボットが動きべき位置(XYZ)と姿勢(RxRyRz)を計算、その計算値をロボコンがパソコンから取得しロボット動かす。そしてロボットの動作が終わればロボコンがパソコンから「次の位置と姿勢を取得」する。という流れになる。
なお、今回は「センサーとワークとの距離を計測して、ロボットの動きを補正する」というような、パソコンを使わずセンサーとロボコン(ロボットコントローラ)を直接つないで制御できるような簡単なモノは割愛する(普通の企業であれば、これでもレベルが高いかもしれないが、筆者には物足りないので割愛する)。
さて、このようなプログラムはMOVE命令のようなペンダントで作れるもの「だけ」ではできないし、IFやWHILEのような簡単な関数ではまったく足りない。ロボコンとパソコンのとの「データの送受信」をするSENDやRECEIVEが必須だし、ロボコン側とパソコン側のデータを解析したりする様々な関数が必要になる。これらの関数が色々と備わっていれば、そのロボットメーカーはカスタマイズ性があるといえる。
稀に「無い関数は自分で作ればよいのでは?」という質問があるので補足する。「関数」には「既存(標準)」と「自作」があり、前述のMOVEやSENDやRECEIVEなどはロボコンに元々ある「既存」関数でロボコンに「ロボットをこう動かせ」「外部機器と通信しろ」となどの命令ができる。もし、既存にSENDが実装されていないのに、自作で無理やりSENDとプログラムで書いても、ロボコンに命令はできないし、コンパイルのエラーになるだけである。
ロボットメーカーによる違い
ロボットメーカーによるカスタマイズ性の違いを説明する。
先に述べておくことが1つあり、実はロボットメーカーによって、カスタマイズ性が全く違うだけでなく、言語やフォーマットも全く違う。しかも、その言語はC言語やJAVAなどの有名な言語ではなく、ほとんどが「そのメーカー独自の言語/フォーマット」である。よって、1つのロボットメーカーでカスタマイズしたプログラムを別のロボットメーカーには流用はできず、そのロボットの言語を学び直す必要がある。
本題に戻り、国内メーカーの某AとB社の違いを述べる。A社は、言語やフォーマットが分かりやすい反面、前述のSENDやRECEIVEなどが用意されていない。よってカスタマイズ性がまったくない。そこでA社は10年ほど前に、もう一つ言語でも制御ができるようにした。しかも、その言語は制御系では有名なだけでなく最も制御に秀でた言語であるC言語であり、その中にSENDやRECEIVEも組み込まれた。それによりA社のロボットはカスタマイズ性が非常にに高くなった。しかし弱点もあり、「A社独自の言語のプログラム」は「必須で起動」する必要があり「C言語」は「おまけ」という位置づけなので、複雑な制御をしたい場合は、この2種のプログラムをマルチタスクで通信のするような形で同時に動かす必要がある。そうなると、作るプログラムも最も複雑になる。
B社の場合は、言語もフォーマットも「やや難しい」が前述のSENDやRECEIVEなども用意されているので、それほと複雑ではない。ただC言語のような、多彩な制御を行うことはできない。日本のロボットメーカーはB社のタイプが多い。
海外メーカーのカスタマイズ性
海外メーカーのカスタマイズ性も述べておく。結論から言うと、非常に優れている。言語はVB(Visual Basic)に似ており、前述のSENDやRECEIVEなどは用意されている。C言語には叶わないが多彩な制御もできる。VB3年以上の経験者が社内にいれば、かなり取っ付きやすいだろう。それだけでなく、日本製のロボットよりも、特殊な制御ができる。実際に、「ツールの先端にかかる応力」をリアルタイムで取得しながらロボットの動きを微調整しながら動かす、という航空機の部品加工で成功している企業がある。ただ、このレベルの制御を成功させるのは、ロボットとプログラミングのプロが揃った企業でも数年はかかるだろう。
生産効率に影響する
もしこの記事の読者が、将来は「ロボットに複雑な制御をさせたい」もしくは「ロボットと外部機器との連携をさせたい」のであれば、そのメーカーの「カスタマイズ性」を知るだけでなく、自社が「どのようなカスタマイズをしたいか?」「社内にどのような人材がいるのか?(育てたいのか?)」も考えた上でロボットメーカーを選択すべきだ。なぜなら、やりたいカスタマイズがそのメーカーでは不可能の場合があるし、人材がいなければプログラム作成ができないからだ。
ちなみに、これらカスタマイズ性は、メーカーのカタログにもネットにも載っていないので、ほとんどの人が無意識にロボットメーカーを選んでしまうだろう。そして、そのことで大きな後悔を招くことになる。カスタマイズ性は生産効率に大きく影響するからだ。
◆山下夏樹(やましたなつき)
富士ロボット株式会社(http://www.fuji-robot.com/)代表取締役。
福井県のロボット導入促進や生産効率化を図る「ふくいロボットテクニカルセンター」顧問。1973年生まれ。サーボモータ6つを使って1からロボットを作成した経歴を持つ。多くの企業にて、自社のソフトで産業用ロボットのティーチング工数を1/10にするなどの生産効率UPや、コンサルタントでも現場の問題を解決してきた実績を持つ、産業用ロボットの導入のプロ。コンサルタントは「無償相談から」の窓口を設けている。