(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-11
(45)【発行日】2023-01-19
(54)【発明の名称】作業機
(51)【国際特許分類】
H04J 3/00 20060101AFI20230112BHJP
H04J 3/14 20060101ALI20230112BHJP
【FI】
H04J3/00 B
H04J3/14
(21)【出願番号】P 2020561986
(86)(22)【出願日】2018-12-25
(86)【国際出願番号】 JP2018047491
(87)【国際公開番号】W WO2020136705
(87)【国際公開日】2020-07-02
【審査請求日】2021-01-28
【前置審査】
(73)【特許権者】
【識別番号】000237271
【氏名又は名称】株式会社FUJI
(74)【代理人】
【識別番号】110000992
【氏名又は名称】弁理士法人ネクスト
(72)【発明者】
【氏名】長坂 伸夫
(72)【発明者】
【氏名】渡邉 憲司
【審査官】北村 智彦
(56)【参考文献】
【文献】特開2014-099167(JP,A)
【文献】国際公開第2018/150544(WO,A1)
【文献】米国特許出願公開第2003/0163773(US,A1)
【文献】国際公開第2018/109792(WO,A1)
【文献】米国特許第07428674(US,B1)
【文献】米国特許出願公開第2005/0262492(US,A1)
【文献】特開2015-053594(JP,A)
【文献】特表2014-515095(JP,A)
【文献】特開2007-147352(JP,A)
【文献】米国特許出願公開第2017/0356961(US,A1)
【文献】米国特許出願公開第2006/0179374(US,A1)
【文献】FT2232D Dual USB to Serial UART/FIFO IC Datasheet, Version 2.05,Future Technology Devices International Limited,2010年
【文献】特殊電子回路,ICの信号を波形で観る、JTAGロジックアナライザ,日本,2011年09月15日,<URL> https://web.archive.org/web/20110915044949/http://www.tokudenkairo.co.jp/jtag/jtaglogana.html
【文献】大橋修,[第4回] OpenOCD,CodeZine開発者のための実装系Webマガジン,日本,2008年04月28日,<URL> https://web.archive.org/web/20091213185251/https://codezine.jp/article/detail/3714
(58)【調査した分野】(Int.Cl.,DB名)
H04J 3/00
H04J 3/14
(57)【特許請求の範囲】
【請求項1】
固定部基板と、
前記
固定部基板との間で
有線多重通信を通信可能に構成される多重通信装置と、
前記多重通信装置を設けられた作業部と、
前記作業部の動作を制御する装置本体部と、
を備える作業機であって、
前記多重通信装置は、
前記多重通信装置で処理される処理信号をJTAG信号で出力するロジックアナライザ部と、
前記JTAG信号を含む複数の信号を多重化した多重化データを前記
固定部基板へ送信する多重化部と、
を備え、
前記装置本体部は、
前記
有線多重通信を介して伝送される制御情報により前記作業部の動作を制御し、
前記
固定部基板は、
前記JTAG信号を処理する情報処理装置と接続可能な接続部を有し、前記制御情報と、前記JTAG信号とを多重化した前記多重化データを、前記多重通信装置との間で伝送し、前記多重通信装置から受信した前記多重化データから前記制御情報を分離して前記装置本体部に出力し、前記多重化データから前記JTAG信号を分離して前記情報処理装置へ出力
し、
前記作業部は、
基板に対する電子部品の装着を行う装着ヘッドであり、
前記装置本体部は、
前記固定部基板を介して前記装着ヘッドを前記制御情報により制御し、
前記ロジックアナライザ部は、
前記制御情報により前記装着ヘッドが制御されるのに応じて前記多重通信装置で処理される前記処理信号を前記JTAG信号として出力し、且つ、前記装置本体部から前記装着ヘッドへの前記制御情報に基づく制御指示とは無関係に、前記JTAG信号を出力し、
前記ロジックアナライザ部は、
コンフィグ情報に基づいて論理回路を構築するプログラマブルロジックデバイスで構成され、
前記情報処理装置は、
ロジックアナライザソフトによりコンパイルファイルを作成可能であり、
前記ロジックアナライザ部は、
前記固定部基板を介して前記情報処理装置から受信した前記コンパイルファイルに基づいて論理回路を変更し、
前記多重化データには、
前記装置本体部が前記制御情報の伝送に用いるデータ領域と、前記情報処理装置が前記コンパイルファイルの伝送に用いるデータ領域とが別々に設定されている、作業機。
【請求項2】
前記ロジックアナライザ部は、
前記コンパイルファイルに基づいて、前記処理信号のうち前記情報処理装置へ送信する観測対象の信号を変更される、請求
項1に記載の作業機。
【請求項3】
前記情報処理装置は、
前記多重化データにより受信した前記JTAG信号に基づいて、前記処理信号の波形を表示する、
請求項1又は請求項2に記載の作業機。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、多重通信を行う装置の処理内容を確認する技術に関するものである。
【背景技術】
【0002】
従来、制御装置と、装着ヘッドの間の通信を、光無線の多重通信で行う電子部品装着機がある(例えば、特許文献1など)。特許文献1に記載された電子部品装着機では、制御装置に接続された光無線装置と、装着ヘッドに接続された光無線装置との間で多重通信を行いながら装着作業を行う。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、上記した装着ヘッドでは、各種のセンサ、カメラ、サーボモータなどを備え、それらの装置を制御する信号を処理する。装着ヘッドにおける処理のデバックや不具合の調査などのために処理信号を確認する場合、調査用の端末などを装着ヘッドに接続する必要が生じる。例えば、調査用のケーブルを接続するために、装着ヘッドを分解する必要が生じる。また、例えば、装着ヘッドが移動することで調査用のケーブルの脱落や断線が発生する虞がある。このため、装着ヘッドのような多重通信を行う装置の処理内容を確認しようとすると、確認作業が繁雑となる問題があった。
【0005】
本開示は、上記の課題に鑑みてなされたものであり、処理内容を容易に確認できる作業機を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本明細書は、固定部基板と、前記固定部基板との間で有線多重通信を通信可能に構成される多重通信装置と、前記多重通信装置を設けられた作業部と、前記作業部の動作を制御する装置本体部と、を備える作業機であって、前記多重通信装置は、前記多重通信装置で処理される処理信号をJTAG信号で出力するロジックアナライザ部と、前記JTAG信号を含む複数の信号を多重化した多重化データを前記固定部基板へ送信する多重化部と、を備え、前記装置本体部は、前記有線多重通信を介して伝送される制御情報により前記作業部の動作を制御し、前記固定部基板は、前記JTAG信号を処理する情報処理装置と接続可能な接続部を有し、前記制御情報と、前記JTAG信号とを多重化した前記多重化データを、前記多重通信装置との間で伝送し、前記多重通信装置から受信した前記多重化データから前記制御情報を分離して前記装置本体部に出力し、前記多重化データから前記JTAG信号を分離して前記情報処理装置へ出力し、前記作業部は、基板に対する電子部品の装着を行う装着ヘッドであり、前記装置本体部は、前記固定部基板を介して前記装着ヘッドを前記制御情報により制御し、前記ロジックアナライザ部は、前記制御情報により前記装着ヘッドが制御されるのに応じて前記多重通信装置で処理される前記処理信号を前記JTAG信号として出力し、且つ、前記装置本体部から前記装着ヘッドへの前記制御情報に基づく制御指示とは無関係に、前記JTAG信号を出力し、前記ロジックアナライザ部は、コンフィグ情報に基づいて論理回路を構築するプログラマブルロジックデバイスで構成され、前記情報処理装置は、ロジックアナライザソフトによりコンパイルファイルを作成可能であり、前記ロジックアナライザ部は、前記固定部基板を介して前記情報処理装置から受信した前記コンパイルファイルに基づいて論理回路を変更し、前記多重化データには、前記装置本体部が前記制御情報の伝送に用いるデータ領域と、前記情報処理装置が前記コンパイルファイルの伝送に用いるデータ領域とが別々に設定されている、作業機を開示する。
【発明の効果】
【0008】
本開示の多重通信装置等によれば、ロジックアナライザ部から出力されるJTAG信号を多重化して通信部へ送信することができる。通信部側では、多重化データからJTAG信号を分離することで、多重通信装置で処理される処理信号を確認することができる。これにより、多重通信装置の処理内容を通信部側で容易に確認することができる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態の部品装着システムの概略構成を示す平面図である。
【
図2】部品装着機及びローダの概略構成を示す斜視図である。
【
図4】光ファイバケーブルの多重通信において、固定部基板から装着ヘッドへ送信する多重化データの内容を示す図である。
【
図5】光ファイバケーブルの多重通信において、装着ヘッドから固定部基板へ送信する多重化データの内容を示す図である。
【
図6】TAPコントローラを制御するための処理手順を示すフローチャートである。
【
図7】FPGA開発用PCの観測画面の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本開示の一実施形態について図面を参照しながら説明する。
図1は、本実施形態の部品装着システム10の概略構成を示す平面図である。
図2は、部品装着機20及びローダ13の概略構成を示す斜視図である。なお、以下の説明では、
図1の左右方向をX方向と称し、
図1の上下方向を前後方向(Y方向)と称し、X方向及びY方向に垂直な方向をZ方向(上下方向)と称して説明する。
【0011】
図1に示すように、部品装着システム10は、生産ライン11と、ローダ13と、ホストコンピュータ15とを備えている。生産ライン11は、X方向に並べられた複数の部品装着機20を有し、基板17に対する電子部品(図視略)の装着等を行う。基板17は、例えば、
図1に示す左側の部品装着機20から右側の部品装着機20へと搬出され、搬送中に電子部品の装着等を実行される。
【0012】
図2に示すように、部品装着機20は、ベース21と、モジュール22とを備えている。ベース21は、Y方向に略直方体形状をなし、部品装着機20を設置する工場の床等に載置される。ベース21は、例えば、隣り合うモジュール22同士の基板搬送装置23の位置を合わせるように、上下方向の位置を調整される。ベース21は、隣の部品装着機20のベース21と互いに固定されている。モジュール22は、基板17に対する電子部品の装着等を行う装置であり、ベース21の上に載置されている。モジュール22は、ベース21に対して前後方向の前方側へ引き出し可能となっており、他のモジュール22と交換可能となっている。
【0013】
モジュール22は、基板搬送装置23と、フィーダ台24と、装着ヘッド25と、ヘッド移動機構27とを備える。基板搬送装置23は、モジュール22内に設けられ、基板17をX方向に搬送する。フィーダ台24は、モジュール22の前面に設けられ、側面視がL字状の台である。フィーダ台24は、X方向に複数配列されたスロット(図示略)を備える。フィーダ台24の各スロットには、電子部品を供給するフィーダ29が装着される。フィーダ29は、例えば、電子部品を所定のピッチで収容するテープから電子部品を供給するテープフィーダである。なお、
図1に示すように、モジュール22の上部カバーの上には、部品装着機20に対する操作入力を行うタッチパネル26が設けられている。
図2は、上部カバーやタッチパネル26を取り外した状態を示している。
【0014】
装着ヘッド25は、フィーダ29から供給された電子部品を保持する保持部材(図示略)を有する。保持部材としては、例えば、負圧を供給されて電子部品を保持する吸着ノズルや、電子部品を把持して保持するチャックなどを採用できる。装着ヘッド25は、例えば、複数の保持部材の全体の位置や、個々の保持部材の位置を変更する駆動源として複数のサーボモータ75(
図3参照)を有する。保持部材は、例えば、サーボモータ75の駆動に基づいて、Z方向に沿った軸を中心に回転する。装着ヘッド25は、保持部材で保持した電子部品を基板17に装着する。
【0015】
また、ヘッド移動機構27は、モジュール22の上部部分において、X方向及びY方向の任意の位置に装着ヘッド25を移動させる。詳述すると、ヘッド移動機構27は、装着ヘッド25をX方向に移動させるX軸スライド機構27Aと、装着ヘッド25をY方向に移動させるY軸スライド機構27Bとを備える。X軸スライド機構27Aは、Y軸スライド機構27Bに取り付けられている。
【0016】
また、X軸スライド機構27Aは、例えば、産業用ネットワークに接続されるスレーブ61(
図3参照)を備える。ここでいう産業用ネットワークとは、例えば、EtherCAT(登録商標)である。なお、本開示の産業用ネットワークとしては、EtherCAT(登録商標)に限らず、例えば、MECHATROLINK(登録商標)-IIIやProfinet(登録商標)等の他のネットワーク(通信規格)を採用できる。スレーブ61は、X軸スライド機構27Aに設けられたリレーやセンサなどの各種素子と接続され、装置本体部41(
図3参照)から受信した制御データに基づいて、各種素子の入出力する信号を処理する。
【0017】
Y軸スライド機構27Bは、駆動源としてリニアモータ(図示略)を有している。X軸スライド機構27Aは、Y軸スライド機構27Bのリニアモータの駆動に基づいてY方向の任意の位置に移動する。また、X軸スライド機構27Aは、駆動源としてリニアモータ77(
図3参照)を有している。装着ヘッド25は、X軸スライド機構27Aに取り付けられ、X軸スライド機構27Aのリニアモータ77の駆動に基づいてX方向の任意の位置に移動する。従って、装着ヘッド25は、X軸スライド機構27A及びY軸スライド機構27Bの駆動にともなってモジュール22内でX方向及びY方向の任意の位置に移動する。
【0018】
また、装着ヘッド25は、X軸スライド機構27Aにコネクタを介して取り付けられ、ワンタッチで着脱可能であり、種類の異なる装着ヘッド25、例えば、ディスペンサヘッド等に変更できる。従って、本実施形態の装着ヘッド25は、部品装着機20(作業機の一例)に対して着脱可能となっている。また、X軸スライド機構27Aには、基板17を撮影するためのマークカメラ69(
図3参照)が下方を向いた状態で固定されている。マークカメラ69は、ヘッド移動機構27の移動に伴って、基板17の任意の位置を上方から撮像可能となっている。マークカメラ69が撮像した画像データは、後述する多重通信によってX軸スライド機構27Aから装置本体部41へ送信され、装置本体部41の画像処理基板87(
図3参照)において画像処理される。画像処理基板87は、画像処理によって、基板17に関する情報(マークなど)、装着位置の誤差等を取得する。
【0019】
また、装着ヘッド25は、上記した産業用ネットワークに接続されるスレーブ62(
図3参照)を備える。スレーブ62には、装着ヘッド25に設けられたリレーやセンサなどの各種素子が接続されている。スレーブ62は、装置本体部41(
図3参照)から受信した制御データに基づいて、各種素子の入出力する信号を処理する。また、装着ヘッド25には、保持部材に保持された電子部品を撮像するパーツカメラ71が設けられている。パーツカメラ71が撮像した画像データは、多重通信によって装着ヘッド25から装置本体部41へ送信され、装置本体部41の画像処理基板87(
図3参照)において画像処理される。画像処理基板87は、画像処理によって、保持部材における電子部品の保持位置の誤差等を取得する。
【0020】
また、
図2に示すように、ベース21の前面には、上部ガイドレール31と、下部ガイドレール33と、ラックギヤ35と、非接触給電コイル37とが設けられている。上部ガイドレール31は、X方向に延びる断面U字状のレールであり、開口部が下を向いている。下部ガイドレール33は、X方向に延びる断面L字状のレールであり、垂直面がベース21の前面に取り付けられ、水平面が前方に伸び出している。ラックギヤ35は、下部ガイドレール33の下部に設けられ、X方向に延び、前面に複数の縦溝が刻まれたギヤである。ベース21の上部ガイドレール31、下部ガイドレール33及びラックギヤ35は、隣接するベース21の上部ガイドレール31、下部ガイドレール33及びラックギヤ35と着脱可能に連結することができる。このため、部品装着システム10は、生産ライン11に並んだ部品装着機20の数を増減することができる。非接触給電コイル37は、上部ガイドレール31の上部に設けられ、X方向に沿って配置されたコイルであり、ローダ13への電力の供給を行う。
【0021】
ローダ13は、部品装着機20に対するフィーダ29の補充及び回収を自動で行う装置であり、フィーダ29をクランプする把持部(図示略)を備える。ローダ13には、上部ガイドレール31に挿入される上部ローラ(図示略)と、下部ガイドレール33に挿入される下部ローラ(図示略)とが設けられている。また、ローダ13には、駆動源としてモータが設けられている。モータの出力軸には、ラックギヤ35と噛み合うギヤが取り付けられている。ローダ13は、部品装着機20の非接触給電コイル37から電力の供給を受ける受電コイルを備えている。ローダ13は、非接触給電コイル37から受電した電力をモータに供給する。これにより、ローダ13は、モータによってギヤを回転させることで、X方向(左右方向)へ移動することができる。また、ローダ13は、上部ガイドレール31及び下部ガイドレール33内でローラを回転させ、上下方向や前後方向の位置を保持しながらX方向へ移動することができる。
【0022】
図1に示すホストコンピュータ15は、部品装着システム10を統括的に管理する装置である。例えば、生産ライン11の部品装着機20は、ホストコンピュータ15の管理に基づいて、電子部品の装着作業を開始する。部品装着機20は、基板17を搬送しながら装着ヘッド25によって電子部品の装着作業を行う。また、ホストコンピュータ15は、フィーダ29の残りの電子部品の数を監視する。ホストコンピュータ15は、例えば、フィーダ29の補給が必要であると判断すると、補給が必要な部品種を収容したフィーダ29をローダ13にセットする指示を画面に表示する。ユーザは、画面を確認して、フィーダ29をローダ13にセットする。ホストコンピュータ15は、所望のフィーダ29がローダ13にセットされたことを検出すると、ローダ13に対して補給作業の開始を指示する。ローダ13は、指示を受けた部品装着機20の前方まで移動し、ユーザによってセットされたフィーダ29を把持部で挟持してフィーダ台24のスロットに装着する。これにより、新たなフィーダ29が部品装着機20に補給される。また、ローダ13は、部品切れになったフィーダ29を把持部で挟持してフィーダ台24から引き出して回収する。このようにして、新たなフィーダ29の補給及び部品切れとなったフィーダ29の回収を、ローダ13によって自動的行うことができる。
【0023】
次に、部品装着機20が備える多重通信システムについて説明する。
図3は、部品装着機20に適用される多重通信システムの構成を示すブロック図である。
図2に示すように、部品装着機20は、装置本体部41と、固定部基板45をモジュール22内に備えている。装置本体部41及び固定部基板45は、基板搬送装置23の下方におけるモジュール22内に設けられている。
図3に示すように、本実施形態の部品装着機20では、モジュール22内に固定された固定部基板45と、モジュール22内で移動する可動部(X軸スライド機構27A及び装着ヘッド25)との間のデータ伝送を、光ファイバケーブル81,82を介した光通信(多重通信)により行う。
【0024】
装置本体部41は、サーボアンプ83、装置制御メイン基板85、及び画像処理基板87を有している。また、固定部基板45は、FPGA(Field Programmable Gate Array)91、JTAG用コネクタ92、送信側光電変換器93A,94A、受信側光電変換器93B,94B、多重JTAG用コネクタ96を有している。また、X軸スライド機構27Aは、X軸基板95、マークカメラ69、リニアモータ77、リニアスケール78を有している。また、装着ヘッド25は、ヘッド基板97、パーツカメラ71、サーボモータ75、エンコーダ76を有している。
【0025】
本実施形態の部品装着機20では、装着ヘッド25やX軸スライド機構27Aが有する装置の各種データを多重の光通信により送受信する。ここでいう各種データとは、例えば、X軸スライド機構27Aが有するリニアスケール78のリニアスケール信号、装着ヘッド25が有するエンコーダ76のエンコーダ信号である。また、各種データとは、例えば、マークカメラ69やパーツカメラ71の画像データである。また、各種データとは、X軸スライド機構27Aのスレーブ61や装着ヘッド25のスレーブ62の制御データである。なお、多重化するデータについては、
図4及び
図5を用いて一例を後述するが、これに限定されない。
【0026】
固定部基板45のFPGA91は、装置本体部41のサーボアンプ83、装置制御メイン基板85、画像処理基板87から入力したデータを多重化する。FPGA91は、例えば、起動時において、不揮発性メモリ(図示略)からコンフィグ情報を読み込んで多重化処理を行う論理回路を構築する。FPGA91は、例えば、時分割多重化方式(TDM:Time Division Multiplexing)により、入力したデータの多重化を行う。FPGA91は、例えば、サーボアンプ83等から入力した各種データを、入力ポートに対して割り当てた一定時間(タイムスロット)に応じて多重化し、多重化した多重化データを送信側光電変換器93A,94Aを介して、X軸スライド機構27Aや装着ヘッド25へ送信する。
【0027】
JTAG用コネクタ92は、FPGA91に接続されている。JTAG用コネクタ92は、例えば、IEEE1149.1が規定するJTAG(Joint Test Action Group)によって提案された規格に準拠した通信を実行するコネクタである。JTAG用コネクタ92は、JTAG信号を入出力するピンを有する。JTAG信号とは、JTAGに準拠した形式の信号である。JTAG用コネクタ92は、例えば、後述するTCK(Test Clock)、TMS(Test Mode Select)、TDI(Test Data In)、TDO(Test Data Out)などのJTAG信号を入出力するピンを有している。また、JTAG用コネクタ92は、上記した信号の他に、グランドやVCC用のピンを有している。
【0028】
FPGA91は、JTAG用コネクタ92を介してコンフィグ情報を入力し、入力したコンフィグ情報に基づいて論理回路を構築することが可能となっている。また、固定部基板45は、JTAG用コネクタ92を介して入力したコンフィグ情報に基づいて不揮発性メモリのコンフィグ情報を更新して、次回の起動時にFPGA91に読み込んで起動することが可能となっている。これにより、固定部基板45は、例えば、JTAG用コネクタ92を介して入力した情報に基づいて、コンフィグ情報の初期設定などを行うことができる。例えば、部品装着機20の製造メーカの作業者は、設定用PCをJTAG用コネクタ92に接続する。作業者は、設定用PCを操作してJTAG用コネクタ92を介してコンフィグ情報をFPGA91や固定部基板45の不揮発性メモリへ出力する。これにより、工場出荷時のコンフィグ情報などを設定することができる。
【0029】
また、本実施形態の部品装着機20では、多重通信において、後述するX軸スライド機構27AのFPGA103や装着ヘッド25のFPGA113のデバック機能を実行するJTAG信号を伝送する。多重JTAG用コネクタ96は、多重化されるJATG信号の入出力に用いるためのコネクタである。詳細についは、後述する。
【0030】
また、X軸スライド機構27AのX軸基板95は、送信側光電変換器101A、受信側光電変換器101B、FPGA103、JTAG用コネクタ105を有している。
図3に示すように、X軸スライド機構27AのX軸基板95及び装着ヘッド25のヘッド基板97は、固定部基板45と同様の構成となっている。このため、X軸基板95及びヘッド基板97の説明において、固定部基板45と同様の構成については、その説明を適宜省略する。固定部基板45の送信側光電変換器93A及び受信側光電変換器93Bは、光ファイバケーブル81を介してX軸スライド機構27Aの送信側光電変換器101A及び受信側光電変換器101Bに接続されている。FPGA103は、マークカメラ69の画像データ、リニアスケール78のリニアスケール信号、スレーブ61の制御データなどを多重化する。X軸基板95は、上記した固定部基板45と同様に、JTAG用コネクタ105を介してコンフィグ情報等の入力が可能となっている。
【0031】
同様に、装着ヘッド25のヘッド基板97は、送信側光電変換器111A、受信側光電変換器111B、FPGA113、JTAG用コネクタ115を有している。固定部基板45の送信側光電変換器94A及び受信側光電変換器94Bは、光ファイバケーブル82を介して装着ヘッド25の送信側光電変換器111A及び受信側光電変換器111Bに接続されている。FPGA113は、装着ヘッド25のパーツカメラ71の画像データ、エンコーダ76のエンコーダ信号、スレーブ62の制御データなどを多重化する。なお、多重化の処理を行う回路(FPGA91,103,113)は、FPGAに限らず、プログラマブルロジックデバイス(PLD)、複合プログラマブルロジックデバイス(CPLD)でも良い。また、多重化処理は、特定用途向け集積回路(ASIC)による処理や、CPUによるソフトウェア処理などで実現しても良い。
【0032】
光ファイバケーブル81,82は、例えば、ケーブル内の光ファイバ線の配置や太さを調整して、耐屈曲性を高めたものである。これにより、装着ヘッド25やX軸スライド機構27Aの移動にともなって光ファイバケーブル81,82が屈曲した場合であっても、光ファイバ線を損傷させることなく、安定してデータを伝送できる。なお、固定部基板45、装着ヘッド25、X軸スライド機構27Aを接続する通信は、有線通信に限らず、レーザ等を用いた光無線通信でも良い。
【0033】
固定部基板45の送信側光電変換器93Aは、FPGA91によって多重化された多重化データを光信号に変換し、光ファイバケーブル81を介してX軸基板95の受信側光電変換器101Bへ送信する。受信側光電変換器101Bは、送信側光電変換器93Aから受信した光信号を電気信号の光電流に変換してFPGA103へ出力する。本実施形態のFPGA103は、AD変換回路等を有し、アナログの光電流をデジタル信号に変換して処理する。
【0034】
また、FPGA103は、変換したデジタル信号、即ち、多重化データの非多重化を実行し、多重化データに多重化されたデータを分離する。FPGA103は、分離した各種のデータを、対応する装置へ出力する。これにより、固定部基板45とX軸スライド機構27Aとの間において、各種のデータを多重化した多重通信(光通信)が実行される。同様に、FPGA103は、マークカメラ69の画像データ等を多重化して送信側光電変換器101Aを介して固定部基板45の受信側光電変換器93Bへ送信する。FPGA91は、多重化データの非多重化を行い、分離した各種データを、装置本体部41の画像処理基板87などへ出力する。
【0035】
また、固定部基板45は、X軸スライド機構27Aと同様に、装着ヘッド25との間でも多重の光通信を行う。固定部基板45の送信側光電変換器94A及び受信側光電変換器94Bは、光ファイバケーブル82を介してヘッド基板97の送信側光電変換器111A及び受信側光電変換器111Bと接続されている。固定部基板45のFPGA91は、光ファイバケーブル82を介して、ヘッド基板97のFPGA113と多重通信を行う。光ファイバケーブル81,82の多重通信回線は、例えば5Gbpsの全2重通信である。
【0036】
本実施形態の装置本体部41は、上記した多重の光通信により、X軸スライド機構27Aと装着ヘッド25に対する制御を実行する。装置本体部41のサーボアンプ83は、X軸スライド機構27Aのリニアスケール78に対する初期化処理、リニアスケール信号の取得処理などを実行する。リニアスケール78は、X軸スライド機構27Aのスライド位置を示すリニアスケール信号を、多重通信を介してサーボアンプ83へ送信する。サーボアンプ83は、X軸スライド機構27Aのリニアモータ77と電源線(図示略)を介して接続されており、リニアスケール78のリニアスケール信号に基づいてリニアモータ77へ供給する電力を変更することで、リニアモータ77に対するフィードバック制御を実行する。装置制御メイン基板85は、ホストコンピュータ15から受信した生産プログラムなどに基づいてサーボアンプ83を制御する。これにより、X軸スライド機構27Aは、生産プログラムに基づいたX方向の位置へ移動する。
【0037】
同様に、サーボアンプ83は、装着ヘッド25のエンコーダ76に対する初期化処理、エンコーダ信号の取得処理などを実行する。エンコーダ76は、サーボモータ75の回転位置などを示すエンコーダ信号を、多重通信を介してサーボアンプ83へ送信する。このサーボモータ75は、上記したように、装着ヘッド25が有する保持部材を駆動する駆動源等として機能する。サーボアンプ83は、装着ヘッド25のエンコーダ76と電源線(図示略)を介して接続されており、エンコーダ76のエンコーダ信号に基づいて、サーボモータ75に対するフィードバック制御を実行する。これにより、装着ヘッド25は、生産プログラムに基づいて、保持部材を回転や上下動させる。
【0038】
また、装置本体部41の装置制御メイン基板85は、上記した産業用ネットワークを介してX軸スライド機構27Aや装着ヘッド25の備えるリレーやセンサ等を制御可能となっている。装置制御メイン基板85は、産業用ネットワークにおけるマスターとして機能し、多重通信を介してX軸スライド機構27Aのスレーブ61や装着ヘッド25のスレーブ62へ制御データを送信する。スレーブ61,62は、装置制御メイン基板85から受信した制御データに基づいて、リレーやセンサを駆動する。また、スレーブ61,62は、リレーやセンサから取得した信号の値を制御データに書き込んで、多重通信を介して装置制御メイン基板85へ送信する。これにより、装置制御メイン基板85は、各装置のリレー等を制御することができる。
【0039】
尚、
図3に示す多重通信システムの構成は、一例であり適宜変更可能である。例えば、Y軸スライド機構27B(
図2参照)のリニアモータ(図示略)に取り付けたリニアスケール信号を、多重通信により伝送しても良い。また、Y軸スライド機構27Bのリレー等の信号を、多重通信により伝送しても良い。また、固定部基板45は、装置制御メイン基板85によって制御されるスレーブを備えても良い。また、スレーブ61は、FPGA103の回路ブロック(IPコアなど)、即ち、FPGA103の一部でも良い。また、部品装着機20は、産業用ネットワークに関わる機器(装置制御メイン基板85のマスターとして機能する回路、スレーブ61,62など)を備えなくとも良い。
【0040】
上記した構成により、装置制御メイン基板85は、ホストコンピュータ15から受信した生産プログラムに基づいて部品装着機20を制御する。装置制御メイン基板85は、例えば、CPUを主体として構成される処理回路であり、生産プログラムに基づいた処理を実行する。装置制御メイン基板85は、産業用ネットワークによって収集したデータ、リニアスケール78のリニアスケール信号、エンコーダ76のエンコーダ信号等を、多重通信を介して受信する。また、装置制御メイン基板85は、マークカメラ69やパーツカメラ71で撮像した画像データを画像処理基板87で処理した結果(保持位置の誤差など)を入力する。装置制御メイン基板85は、これらのデータ等に基づいて、次の制御内容(装着する電子部品の種類や装着位置など)を決定する。装置制御メイン基板85は、決定した制御内容に応じて各種装置を制御する。
【0041】
(多重化データの構成)
次に、上記した多重通信により伝送される多重化データの内容について説明する。
図4は、光ファイバケーブル82の多重通信において、固定部基板45から装着ヘッド25へ送信する多重化データの内容を示している。
図5は、光ファイバケーブル82において、装着ヘッド25から固定部基板45へ送信する多重化データの内容を示している。なお、
図4及び
図5のデータ配列やデータの内容は、一例である。また、固定部基板45とX軸スライド機構27Aとを接続する光ファイバケーブル81で伝送される多重化データについては、光ファイバケーブル82の多重化データと同様の構成を採用できるため、その説明を省略する。
【0042】
図4及び
図5の各々には、32ビット(各8ビットのブロックA~D)の多重化データが示されている。例えば、多重化データは、伝送データのDCバランスを保持するために、8ビット(各ブロック)ごとに8B/10B変換され、合計で40ビットとなる。従って、多重化データは、例えば、1フレームが40ビットで構成されている。例えば1フレーム当りの周期を8nsec(周波数が125MHz)に設定した場合、FPGA91,113は、5Gbps(40ビット×125MHz)の多重の通信回線を構築する。
【0043】
図4及び
図5は、1クロック(例えば8nsec)ごとの多重化データを示している。また、
図4及び
図5は、0~9の10クロックのデータを示している。
図4に示す固定部基板45から送信する多重化データの先頭のブロックA(BIT(ビット)0~BIT7)は、例えば、装着ヘッド25に対する制御用のコマンドなどの送信に用いられる。このコマンドは、例えば、8B/10B変換におけるK符号(Kコード)の制御用のシンボルなどである。また、
図4に示す多重化データのブロックBには、ブロックAと同様のデータが設定されている。ブロックA,Bの誤り訂正の方法としては、例えば、リード・ソロモン符号を用いることができる。また、ブロックA,Bには、データの有無を示す1ビットの値が設定されている。このデータの有無を示すビット値は、多重通信の通信速度(5Gbps)に対して、ブロックA,Bで伝送するデータを入出力する機器間の通信速度が遅い場合に、ブロックA,Bに有効なデータが設定されているか否かを示す値である。これにより、ブロックA,Bのデータを受信する受信側の機器は、このデータの有無を示すビット値に基づいて、有効なデータが設定されているのかを検出でき、データの処理やデータの破棄を迅速に行うことができる。
【0044】
また、
図5に示す装着ヘッド25から送信する多重化データのブロックA,Bには、パーツカメラ71の画素値(画像データ)が設定される。誤り訂正の方法としては、例えば、リード・ソロモン符号を用いることができる。なお、装着ヘッド25が複数のカメラを備えている場合、ブロックA,Bを、それぞれのカメラの画像データを伝送するために使い分けても良い。
【0045】
また、
図4に示す多重化データのブロックC(BIT1~BIT5)には、パーツカメラ71を制御する制御信号などが設定される。ここでいう制御信号とは、例えば、カメラリンク規格であれば制御信号CC1~CC4である。あるいは、制御信号とは、パーツカメラ71に対して撮像を指示するトリガー信号(図中のCAM-TRG)などである。また、ブロックCのBIT0には、ブロックCのデータの有無を示すビット値が設定される。
【0046】
また、ブロックCのBIT6には、ブロックBに対するリード・ソロモン符号による符号化において、訂正能力を超えるバースト誤り等が発生したか否かを検出するためのパリティビット(図中のK符号フラグ)が設定されている。具体的には、例えば、リード・ソロモン符号による符号化の設定において、連続して2つのブロックの連続誤りを訂正可能な設定とする。この場合に、多重通信で3ブロック以上の連続誤りが発生すると受信側(装着ヘッド25)では、データを訂正できない。そこで、ブロックCのBIT6には、例えば、ブロックBの8ビットに対応する偶数パリティを設定しておき、受信側で3ブロック以上の連続誤りを検出した場合に、異常停止や画像データの補正(
図5の固定部基板45が受信側の場合)などを実行する。また、ブロックCのBIT7には、BIT6と同様に、ブロックAに対応するパリティビットが設定されている。また、
図5に示す多重化データのブロックCには、
図4と同様に、BIT6,7にパリティビット(図中のK符号フラグ)が設定されている。なお、
図5に示す空白部分は、データの設定がなされていない空きビットを示している。
【0047】
また、
図4及び
図5のブロックDのBIT0~3には、装着ヘッド25のエンコーダ76のエンコーダ信号が設定される。ここでいうエンコーダ信号とは、
図4の場合では、サーボアンプ83からエンコーダ76へ送信する初期設定の信号、状態の問い合わせを行う信号、位置情報の取得などを行う信号である。また、
図5の場合では、エンコーダ信号は、エンコーダ76からサーボアンプ83へ送信する位置情報などを示す信号である。例えば、装着ヘッド25は、4組のサーボモータ75及びエンコーダ76を備える。この場合、装着ヘッド25は、4軸の移動方向へ保持部材を移動させることが可能となる。
図4及び
図5は、このような4軸のエンコーダ76の各々に対応して、4つのBIT0~3を設定されている。また、ブロックDのBIT0~BIT6のデータに対する誤り訂正の方法としては、例えば、ハミング符号を用いることができる。
【0048】
ブロックDのBIT0には、10クロックのうち、最初の4クロック(
図4及び
図5中のクロック0~4)にエンコーダ信号のデータが設定されている(
図4及び
図5中のE1)。クロック0,2における各ビット位置には、エンコーダ信号がビット割り当てされている。また、クロック1,3における各ビット位置には、エンコーダ信号のデータの有無を示す情報(
図4及び
図5中の「E1有無」)がビット割り当てされている。このデータの有無を示す情報は、上記したように、例えば、多重化データのデータ転送レートに比べてエンコーダ信号のデータ転送レートが低速である場合に、低速なエンコーダ信号が各ビット位置(BIT0のクロック0,1)に設定されているか否かを示すための情報である。エンコーダ信号と、そのエンコーダ信号の有無を示す情報とは、1サイクルごとに交互に設定されている。
【0049】
また、BIT0のクロック4には、サーボアンプ83とエンコーダ76の通信において、タイムアウトエラーが発生したか否かを示すタイムアウト情報が設定されている。また、BIT0のクロック5には、巡回冗長検査(CRC)用のビット値が送信側によって設定される(
図4及び
図5中の「CRC異常」)。BIT0のクロック6~9には、前方誤り訂正符号のハミング符号である4ビットの符号ビットが設定されている。誤り訂正符号は、例えば、ハミング符号(15,11)の短縮形である。また、BIT1~6のクロック6~9には、BIT0と同様に、4ビットの符号ビットが設定されている。FPGA91,103は、多重化データを受信した際に、多重化を解除したエンコーダ信号等のデータに対し、誤り訂正符号に基づいて誤り検出や訂正を実行する。なお、BIT1~BIT3には、BIT0と同様にエンコーダ信号に係わるデータが設定される。
【0050】
また、
図4及び
図5に示すブロックDのBIT4には、パーツカメラ71の制御信号が設定されている。ここでいう制御信号とは、例えば、パーツカメラ71がカメラリンク規格のカメラである場合、パーツカメラ71の照明の点灯等を制御するUART通信の制御信号である。BIT4のクロック4,5には、クロック0~3のデータ値に係わる情報が設定される。
【0051】
また、
図4及び
図5に示すブロックDのBIT5,6には、産業用ネットワーク、例えば、MECHATROLINK(登録商標)-IIIに係わるデータが設定されている(
図4及び
図5中の「MIII」など)。このデータは、スレーブ62の制御データである。BIT5,6のクロック0~3の4ビットには、MECHATROLINK(登録商標)-IIIの制御データが設定される。BIT5,6のクロック4には、データの有無を示す情報が設定される。また、BIT5,6のクロック5には、巡回冗長検査(CRC)用のビット値が送信側によって設定される。
【0052】
また、
図4及び
図5に示すブロックDのBIT7には、装着ヘッド25のFPGA113のデバック機能を実行するJTAG信号のデータが設定されている。JTAG信号のデータには、誤り訂正の方法が設定されていない。なお、JATG信号のデータについても、他のデータと同様に、誤り訂正の符号を付加しても良い。
【0053】
BIT7のTCK(Test Clock)は、JTAG規格におけるクロック信号(Test Clock)であり、例えば、JTAGコネクタを接続するシリアルデータバスのシステムクロックとして用いられる。本実施形態のFPGA113は、
図3に示すように、TAPコントローラ121(ロジックアナライザ部の一例)と、多重化部123を備えている。なお、固定部基板45のFPGA91及びX軸スライド機構27AのFPGA103は、FPGA113と同様に、TAPコントローラ、多重化部を備える。図面が煩雑なるため、FPGA91,103のTAPコントローラ等の図示は省略する。
【0054】
TAPコントローラ121は、例えば、Altera(登録商標)Inc.のsignal TAP(登録商標)やXilinx(登録商標)Inc.のChipScopeなどのロジックアナライザで用いられる論理回路である。TAPコントローラ121は、FPGA113の論理回路として構築される。TAPコントローラ121は、例えば、16状態のステートマシンである。ここでいう16状態のステートとは、例えば、テストロジックをリセットするTest-Logic-Restステートや、アイドル状態を維持するRun-Test/Idleステートなどである。TAPコントローラ121は、例えば、TCK以外の他の信号(TMS、TDI、TDO)を、TCKの立ち上がりエッジで取り込む。TAPコントローラ121は、後述するロジックアナライザソフトによって設定された観測対象の信号の取り込みを実行する。また、TAPコントローラ121は、取り込んだ信号を、トリガー条件などに基づいてJTAG信号(
図5のブロックDのBIT7)として多重化部123へ出力する。
【0055】
多重化部123は、FPGA113の論理回路として構築される。多重化部123は、上記したFPGA113における多重化処理、即ち、
図4に示す多重化データの非多重化や、
図5に示す多重化データの多重化処理を行う。
【0056】
図4のブロックDにおけるBIT7のTMS(Test Mode Select)は、TAPコントローラ121の状態遷移を制御するデータである。TAPコントローラ121は、例えば、後述するFPGA開発用PC127(
図3参照)のロジックアナライザソフトから受信したTMS信号に応じて、16状態の各ステート間を遷移する。これにより、FPGA開発用PC127は、TAPコントローラ121に対する制御を実行することができる。
図4のBIT7のTDI(Test Data In)は、命令データ、テストデータ、回路データなどのTAPコントローラ121に対する入力データである。TAPコントローラ121は、TDI信号を、自身の各レジスタ等へ入力する。
図5のBIT7のTDO(Test Data Out)は、命令データ、テストデータ、回路データなどのTAPコントローラ121からの出力データである。
図4及び
図5に示すように、TCK、TMS、TDO(TDI)は、1クロックごと(8nsecごと)に順番に送信される。尚、
図4及び
図5に示す多重化データの構成は一例であり、必要な通信速度、部品装着機20に取り付けた装置の種類、数などに応じて適宜変更される。例えば、JTAG信号として、リセット信号(TRST)を多重化して送受信しても良い。
【0057】
図3に示すように、本実施形態の固定部基板45は、多重JTAG用コネクタ96を備えている。多重JTAG用コネクタ96は、FPGA91,103,113のTAPコントローラ121に対応して3つ設けられている。例えば、3つの多重JTAG用コネクタ96の各々は、
図3に示すように、JTAG機器125を介してFPGA開発用PC127に接続される。JTAG機器125は、ケーブル126を介してFPGA開発用PC127と接続されている。ケーブル126は、例えば、USB規格に準拠した通信を行うUSBケーブルである。この場合、JTAG機器125は、多重JTAG用コネクタ96と接続されるシリアルケーブルをUSB規格のケーブルに変換する変換器である。
【0058】
FPGA開発用PC127は、CPUを主体とするパーソナルコンピュータである。FPGA開発用PC127は、TAPコントローラ121の回路の設定、変更、追加などを行う際に、部品装着機20に接続される。FPGA開発用PC127は、ハードディスクに記憶されたロジックアナライザソフトをCPUで実行することで、FPGA91,103,113のTAPコントローラ121の設定、TAPコントローラ121に対する制御などを実行する。ここでいうロジックアナライザソフトとは、例えば、Altera(登録商標)Inc.のSignal TAP(登録商標)やXilinx(登録商標)Inc.のChipScopeなどのロジックアナライザ機能を設定するためのユーザインターフェースを提供するソフトである。従って、本実施形態の部品装着機20では、固定部基板45に接続したFPGA開発用PC127のロジックアナライザソフトは、固定部基板45のFPGA91のTAPコントローラに対する設定を行うことが可能となっている。また、FPGA開発用PC127のロジックアナライザソフトは、部品装着機20の多重通信システムを介して可動部(X軸スライド機構27Aや装着ヘッド25)のFPGA91,113のTAPコントローラ121に対する設定を行うことが可能となっている。
【0059】
(ロジックアナライザソフトについて)
次に、FPGA開発用PC127のロジックアナライザソフトによるTAPコントローラ121の制御について説明する。
図6は、TAPコントローラ121を制御するための処理手順を示すフローチャートである。以下の説明では、一例として装着ヘッド25のFPGA113のTAPコントローラ121について説明する。なお、FPGA103についても、FPGA113と同様に、TAPコントローラ(図示略)に対する設定等を行うことができる。
【0060】
まず、
図6のステップ(以下、単にSと記載する)11において、ユーザは、FPGA開発用PC127を操作してロジックアナライザソフトを起動する。ユーザは、FPGA113にTAPコントローラ121を実装させるためのデザインファイル(Signal TAP(登録商標)であればSignal TAPファイル)を作成する。
【0061】
S13において、ユーザは、ロジックアナライザソフトを操作して、クロック信号や観測する信号を設定する。TAPコントローラ121は、例えば、S13で設定されたクロック信号の立ち上がりエッジに同期して、観測する信号をサンプリングする。従って、クロック信号は、例えば、処理信号の観測を開始するトリガー条件を設定するための信号である。ロジックアナライザソフトは、例えば、FPGA113のコンフィグ情報に基づいて、FPGA113で処理される各種の処理信号の情報を取得することができる。あるいは、ロジックアナライザソフトは、FPGA113と通信を実行し、FPGA113の処理信号の情報を取得しても良い。
【0062】
ロジックアナライザソフトは、取得した処理信号の情報を、FPGA開発用PC127のモニターに表示する。ユーザは、モニターの表示を確認し、FPGA113の処理信号の中から、クロック信号や観測対象の信号を選択する。この観測対象の信号としては、例えば、多重化部123で処理する処理信号を採用できる。多重化部123の処理信号としては、画像データ、産業用ネットワークの制御データ、エンコーダ信号などの他に、光ファイバケーブル82の多重通信のリンク確立を示す信号、リンク切断などの異常を示す信号などを採用できある。なお、観測対象の信号としては、FPGA113で処理される他の信号(各種のセンサの信号など)を採用することもできる。
【0063】
観測対象の信号として多重化部123の処理信号を選択されると、後述するように、TAPコントローラ121は、多重化部123の処理信号をJTAG信号の形式(TDO信号など)で多重化部123へ出力する。多重化部123は、TAPコントローラ121から入力したJTAG信号を多重化データに多重化して送信する。従って、本実施形態のTAPコントローラ121は、多重化部123で処理される処理信号をJTAG信号として出力する。これにより、多重通信のリンクの確立を示す信号などを多重通信で送信し、固定部基板45側で信号の内容を確認できる。
【0064】
また、例えば、FPGA113の論理回路として、エンコーダ信号のデータ誤りなどが発生した場合に特定の信号レベルを変更する論理回路をTAPコントローラ121に構築しても良い。そして、この特定の信号を観測対象の信号として設定しても良い。これにより、エンコーダ信号の異常を観測することができる。
【0065】
次に、ユーザは、ロジックアナライザソフトを操作して、デザインファイルのコンパイルを実行し、コンパイル後のファイル(Signal TAP(登録商標)であればSOFファイル)を生成する(S15)。次に、FPGA開発用PC127からFPGA113へコンパイル後のファイルのダウンロードを実行する(S17)。例えば、ユーザは、ロジックアナライザソフトを操作して、3つの多重JTAG用コネクタ96の各々と接続されたケーブル126のうち、FPGA113に対応するケーブル126を選択する。これにより、コンパイル後のファイルのダウンロード先を選択できる。
【0066】
ユーザによってダウンロードの実行がなされると、コンパイル後のファイルが、FPGA開発用PC127から多重JTAG用コネクタ96を介してFPGA91の多重化部(図示略)に入力される。FPGA91の多重化部は、例えば、
図4に示す多重化データのブロックDのBIT7へコンパイル後のファイルのデータを多重化する。この場合、多重化データのブロックDのBIT7は、初期処理では、コンパイル後のファイルの伝送に用いられ、観測が開始されるとJTAG信号の転送に使用される。なお、コンパイル後のファイルの伝送を、多重化データのブロックDのBIT7以外のビットを用いて実行しも良い。
【0067】
FPGA113は、例えば、コンパイル後のファイルを受信し、論理回路の一部を変更することで、TAPコントローラ121の回路構成を変更する。これにより、TAPコントローラ121の観測対象の信号を変更でき、TAPコントローラ121から出力するJTAG信号の内容や、取り込みを開始するトリガー条件などを変更できる。TAPコントローラ121は、変更された回路構成で起動し、処理信号の観測を開始する(S19)。また、ユーザは、部品装着機20の装着作業を開始させ、試験動作等を実行させる。
【0068】
これにより、多重通信を介した分析が開始される(S21)。具体的には、例えば、FPGA開発用PC127のロジックアナライザソフトは、TMS信号を用いてTAPコントローラ121のステートを適宜変更する。また、ロジックアナライザソフトは、TDI信号を用いて、TAPコントローラ121に対する命令等を実行する。TAPコントローラ121は、ユーザによって設定された観測対象の信号をサンプリングしてJTAG信号(TDO信号など)として多重化部123へ出力する。多重化部123は、TAPコントローラ121から入力したJTAG信号を、多重通信を介して固定部基板45のFPGA91へ送信する。FPGA91の多重化部は、多重化データから
図5に示すブロックDのBIT7を分離し、多重JTAG用コネクタ96を介してFPGA開発用PC127へJTAG信号を出力する。ロジックアナライザソフトは、応答や命令のJTAG信号をFPGA113へ再度送信等する。このFPGA開発用PC127のロジックアナライザソフトとFPGA113との間で伝送されるJTAG信号が、
図4及び
図5に示すブロックDのBIT7で伝送される。
【0069】
仮に、装着ヘッド25のJTAG用コネクタ115を用いてFPGA113の処理信号を分析する場合、装着ヘッド25の分解等が必要となる可能性がある。また、可動する装着ヘッド25と接続したケーブルの脱落や断線が発生する虞がある。これに対し、本実施形態では、FPGA開発用PC127を操作することで、多重通信で接続されたFPGA113のTAPコントローラ121に対する様々な制御を行うことができる。これにより、FPGA113の処理信号を分析するために装着ヘッド25を分解等する必要がなくなる。
【0070】
図7は、ロジックアナライザソフトが、FPGA開発用PC127に表示する観測画面の一例を示している。
図7に示すように、観測画面には、
図6のS13で設定した観測対象の信号の波形を表示する波形表示部131が表示されている。波形表示部131には、各観測対象信号の波形が表示されている。ユーザは、この波形を確認することで、FPGA113の処理信号の状態を確認できる。例えば、部品装着機20の装着作業においてエラーが発生した場合に、発生時の処理信号の状態からエラーの原因を分析することができる。
【0071】
波形表示部131は、例えば、横軸を時間として信号の波形を表示している。時間のゼロ(0)は、例えば、処理信号のサンプリングを開始した時間、即ち、S13で設定したクロック信号の立ち上がりのタイミング(トリガーの条件を満たした時間)を示している。
【0072】
波形表示部131の上には、各種の設定ボタン133が表示されている。例えば、設定ボタン133の保存ボタンが押されることに応じて、FPGA開発用PC127は、波形表示部131に表示した観測対象信号のデータを保存する処理を行う。また、実行ボタンが押されることに応じて、FPGA開発用PC127は、TAPコントローラ121に対する信号の出力(サンプリング)を開始させる。また、停止ボタンが押されることに応じて、FPGA開発用PC127は、TAPコントローラ121に対し信号の出力を停止させる。また、設定ボタンは、観測対象の信号の変更などの各種の条件を変更する画面を表示するためのボタンである。
【0073】
また、波形表示部131の右側には、選択中のケーブル126を表示するUSBケーブル選択表示画面135が表示されている。ユーザは、USBケーブル選択表示画面135のプルダウンメニューを操作することで、ケーブル126を選択、即ち、対象とするFPGA91,103,113(TAPコントローラ121)を選択することができる。例えば、プルダウンメニューのUSBケーブルの番号1,2,3は、FPGA91、103,113の順番に対応している。このような観測画面を用いて観測を行うことで、多重通信を介してFPGA91,103,113の処理信号を観測することが可能となる。
【0074】
ここで、本実施形態のFPGA113は、固定された固定部基板45に対して可動する装着ヘッド25に設けられている。上記したように、装着ヘッド25のFPGA113は、多重通信によりJTAG信号を固定部基板45へ送信する。これにより、装着ヘッド25に調査用のケーブルなどを接続して装着ヘッド25から処理信号を直接取得する必要がなくなる。結果として、装着ヘッド25のような多重通信を行う装置の処理内容を確認しようとする場合に、確認作業が容易となる。
【0075】
また、TAPコントローラ121は、FPGAで構成される論理回路である。これによれば、固定部基板45側で処理信号を確認した後、必要に応じてTAPコントローラ121の論理回路の変更、取得する処理信号の変更などを行うことができる。
【0076】
また、FPGA113は、基板17に対する電子部品の装着を行う装着ヘッド25に設けられる。装着ヘッド25によって電子部品を基板17に装着する部品装着機20では、装着ヘッド25を高速に移動させながら作業を行う。このため、調査用のケーブルを装着ヘッド25に接続したまま装着作業を行わせると、ケーブルの脱落や断線が発生し、デバック等をすることがより困難となる。従って、装着ヘッド25を備える部品装着機20において、多重通信により装着ヘッド25から処理信号をJTAG信号で送信することは、極めて有効である。
【0077】
因みに、部品装着機20は、作業機の一例である。装着ヘッド25のFPGA113は、多重通信装置の一例である。固定部基板45は、通信部の一例である。TAPコントローラ121は、ロジックアナライザ部の一例である。FPGA開発用PC127は、表示装置の一例である。
【0078】
以上、上記した本実施例によれば以下の効果を奏する。
本実施例の一態様では、FPGA113は、FPGA113で処理される処理信号をJTAG信号で出力するTAPコントローラ121と、JTAG信号を含む複数の信号を多重化した多重化データを固定部基板45へ送信する多重化部123と、を備えている。
【0079】
これによれば、TAPコントローラ121から出力されるJTAG信号を多重化して固定部基板45へ送信することができる。固定部基板45側では、多重化データからJTAG信号を分離することで、FPGA113(装着ヘッド25側)で処理される処理信号を確認することができる。これにより、多重通信により処理信号を取得できるため、調査用のケーブルを装着ヘッド25に接続する必要がなくなり、装着ヘッド25を分解等する必要がなくなる。また、調査用のケーブルを接続しないため、装着ヘッド25の移動によって調査用のケーブルの脱落や断線が発生する虞がなくなる。従って、装着ヘッド25の処理内容を容易に確認することができる。また、多重通信により必要な処理信号を固定部基板45側へ送信できるため、ヘッド基板97等に処理信号を蓄積するための大容量の記憶部を設ける必要がなくなる。
【0080】
尚、本開示は上記の実施例に限定されるものではなく、本開示の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、JTAG信号を多重通信で送信する多重通信装置は、可動する装置に限らず、固定された装置でも良い。
また、TAPコントローラ121は、多重化部123で処理する処理信号(リンクの確立を示す信号など)を、JTAG信号として出力しなくとも良い。
また、TAPコントローラ121や多重化部123は、FPGAなどのプログラマブルロジックデバイスでなくとも良い。例えば、TAPコントローラ121や多重化部123による処理を、ASCIなどのハードウェア処理で実現しても良く、CPUでプログラムを実行するなどしてソフトウェア処理で実現しても良い。
【0081】
また、上記実施形態では、本開示の作業機として、基板17に電子部品を装着する部品装着機20を採用したが、これに限らない。例えば、作業機としては、基板17にはんだを塗布するはんだ塗布装置、工作機械、介護用ロボットなど様々な作業機を採用することができる。
また、部品装着機20は、FPGA開発用PC127を備えない構成でも良い。
【符号の説明】
【0082】
17 基板、25 装着ヘッド、20 部品装着機(作業機)、45 固定部基板(通信部)、113 FPGA(多重通信装置)、121 TAPコントローラ(ロジックアナライザ部)、123 多重化部、127 FPGA開発用PC(表示装置)。