INTERVIEW
WITH SPECIALISTS#002
Sherlock
(シャーロック)

開発部

T・S

2015年入社

開発部

M・T

1997年入社

TALK THEME

製造ライン上で動くコンマミリ以下の文字を
正確に認識し、正否を判別させるには?

NOTE

Sherlock(シャーロック)とは

M・TとT・Sがエンジニアとして関わっているのは、基板外観検査装置。この装置をレクザムでは『Sherlock(シャーロック)』と名付けている。これは、プリント基板を検査するためのものだ。プリント基板にはいくつもの電子部品が接続され、それぞれの電子部品は細かく配線されている。ミクロンオーダーで設置されるこれらの部品や配線について、位置が間違っていないか、ハンダ付けはうまくいっているかなどといった外観上の検査を行うのがこの装置の役目だ。
最近では基板外観検査を2Dではなく3D、すなわち立体的に行うのが主流となりつつある。レクザムはこの流れを先取りし、3D検査が行える装置を開発した。Sherlock(シャーロック)はお客様の要望に応じ、今も技術進化を続けている。

限られた時間の中での判断が求められる。

M・T

Sくんは入社以来、Sherlock(シャーロック)の様々な機能向上を担当していますね。最近取り組んだ中では、どんな案件が印象に残っていますか?

T・S

Sherlock(シャーロック)の文字認識の精度アップ、というミッションにチャレンジしました。文字認識は2Dの時代から搭載されている、決して新しくはない機能です。

M・T

コピーやファクシミリなども紙に書かれた文字を読み取って、テキストデータにする機能が、そのSherlock(シャーロック)版だね。

T・S

はい、そのとおりです。ただSherlock(シャーロック)が読み取るのは英数字で、漢字やカナはありません。問題はサイズです。1.6mm×0.8mmというペンの先くらいのスペースの中に3文字が刻印されている。その英数字を読み取るのです。もちろん、止まった状態で時間をかけて読み取るのであれば、特に工夫はいりません。しかし、Sherlock(シャーロック)が用いられるのは、プリント基板工場の製造ラインです。製造中の基板が次々と流れてくる中、ラインの動きを止めることなく、20秒以内という限られた時間で、数十~数百点もの小さな刻印を読み取り、正しいかどうかを判断するのですから、簡単にはいかないんです。

限られた時間の中での判断が求められる。

0(ゼロ)と8(ハチ)の区別も容易ではない。

0(ゼロ)と8(ハチ)の区別も容易ではない。

M・T

特殊フォントの認識にも苦労していたね。

T・S

はい。国産の電子部品なら、使用する字の形にそう大きな違いはないので、戸惑いはありません。しかし、部品は海外製がとても多くなっています。そして海外製のフォントの中には、日本人に全く馴染みのない、「これをどう読んだら0(ゼロ)に見えるんだ?」と言いたくなるものもあります。英数字を認識するだけなのに、これほど多くのハードルをクリアしなければいけないのか、と思いました。

M・T

よく使われるフォントだって、「0(ゼロ)」がいわゆる卵型のものもあれば、中心に線が引かれていたり、ドットが入っていたりするものもある。それを数百ミクロンのスケールにすると、「0(ゼロ)」か「8(ハチ)」か区別がつかないケースもあるよね。

T・S

卵型の「0(ゼロ)」だけど、たまたま紛れ込んだ小さなゴミが中央に乗ってしまい、「8(ハチ)」と誤読する場合もあります。「0(ゼロ)」「8(ハチ)」の区別だけでも、これほど多くのケースを想定し、プログラム上で対処しないといけない。一つの機能改善・向上を実現するというのは、本当に大変ですね。

先輩たちの助言でプログラムが洗練された。

M・T

次々に表れる課題。Sくん流の解決策はありますか?

T・S

トライアンドエラーの繰り返しに尽きます。Sherlock(シャーロック)のやり方は、正しいサンプルの画像を記憶しておき、検査対象となるプリント基板の画像とサンプル画像を比較し、差異があればエラーと判断します。「差異」の程度がどこまでOKで、どこからNGかは、やってみないと分かりません。ここまではOKと想定して試験を繰り返していると、想像もしていないフォントに出会って混乱したこともあります。その点では、Tさんにも随分お力添えを頂きました。

M・T

そうだったね。DR(デザインレビュー / 基本設計、詳細設計、試作といった節目の段階で、担当エンジニアが関係者を集めて設計の説明を行い、基準を満たしているかをチェックして、改善に繋げる会議)に参加させてもらったが、最初のDRはボロボロだったよね。プログラムに重複があって判断に余計な時間を費やしたり、正否の判定があいまいでNGとすべき製品を漏らしたり。DRで先輩エンジニアの意見を吸収し、トライアンドエラーを重ねたおかげで、最後の方は無駄のない、的確な判断のできるプログラムになっていったね。

T・S

判断を厳密にすれば正確性は上がるけど、検査時間が長くなる。判断基準を緩くすると時間は短縮できても、正確性が落ちる。バランスが大事だと痛感します。

先輩たちの助言でプログラムが洗練された。

先輩たちの助言でプログラムが洗練された。

エンジニアの視野と発想が広がる。

T・S

プロジェクト終盤に登場した、「位置合わせ」というハードルにも手こずりましたね。プリント基板は、常に同じ位置に同じ部品が設置されているわけではありません。部品の位置が変わると、刻印された文字の場所も当然変わります。検査すべき文字の正確な位置が分からないと、文字認識はできません。最後にこんな壁にぶつかって焦りましたが、何とか納期に間に合わせることができました。

M・T

文字認識の精度が向上したSherlock(シャーロック)について、お客様の評価はどうかな?

T・S

「検査の設定もしやすいし、正否の判断も的確。使いやすい。」と好感触を得ています。苦労した甲斐があったと、嬉しく感じました。何より私自身、とても視野が広がったと実感します。DRで先輩から指摘を受ける中「そういう考え方があるのか」「そういうプログラミングは効率がいいな」と気付かされたことがたくさんありました。トライアンドエラーの中で得た多面的な発想は、今後の開発に大いに生きると思います。

M・T

レクザムという会社は、若いエンジニアにどんどん仕事を任せる風土がある。そうしたミッションをこなすことで、エンジニアの視野が広がったり発想が豊かになる。その成長が、Sherlock(シャーロック)や他の製品を進化させたり、新たな分野を開拓する原動力になる。ぜひ頑張ってください。

スペシャリストインタビュー:Sherlock(シャーロック)

採用エントリーはこちら

このページの先頭へコーポレートサイト