(57)【要約】  接続する検出装置を変更した場合であっても、変更後の検出装置とプログラマブル論理デバイスとの間で位置情報の送受信を適切に行える通信装置及び論理回路の構築方法を提供すること。  通信装置は、位置情報を検出して出力する検出装置と接続される接続部と、検出装置と通信可能な論理回路を構築する第１コンフィグ情報と、第１コンフィグ情報と通信可能な検出装置とは種類が異なる検出装置と通信可能な論理回路を構築する第２コンフィグ情報と、を記憶可能である記憶部と、第１コンフィグ情報又は第２コンフィグ情報を選択する選択信号を出力する選択信号出力部と、選択信号出力部から出力された選択信号に基づいて、第１コンフィグ情報又は第２コンフィグ情報を読み込んで論理回路を構築し、構築した論理回路により接続部と接続された検出装置との間で位置情報の通信を実行するプログラマブル論理デバイスと、を備える。
2020049641.tif 000002
【特許請求の範囲】
【請求項１】
位置情報を検出して出力する検出装置と接続される接続部と、
前記検出装置と通信可能な論理回路を構築する第１コンフィグ情報と、前記第１コンフィグ情報と通信可能な前記検出装置とは種類が異なる前記検出装置と通信可能な前記論理回路を構築する第２コンフィグ情報と、を記憶可能である記憶部と、
前記第１コンフィグ情報又は前記第２コンフィグ情報を選択する選択信号を出力する選択信号出力部と、
前記選択信号出力部から出力された前記選択信号に基づいて、前記第１コンフィグ情報又は前記第２コンフィグ情報を読み込んで前記論理回路を構築し、構築した前記論理回路により前記接続部と接続された前記検出装置との間で前記位置情報の通信を実行するプログラマブル論理デバイスと、
を備える、通信装置。
【請求項２】
前記接続部は、
複数の種類の前記検出装置と接続可能な共通のインタフェースであり、
前記選択信号出力部は、
前記接続部に設けられ、前記接続部に接続された前記検出装置のコネクタの接続構造に応じて異なる前記選択信号を出力する、請求項１に記載の通信装置。
【請求項３】
前記選択信号出力部は、
外部からの操作に応じて異なる前記選択信号を出力するスイッチである、請求項１又は請求項２に記載の通信装置。
【請求項４】
前記検出装置は、
モータの前記位置情報を検出するエンコーダであり、
前記プログラマブル論理デバイスは、
前記検出装置から取得した前記位置情報に基づいて、前記モータをフィードバック制御するアンプ回路を前記論理回路として構築する、請求項１乃至請求項３の何れか１項に記載の通信装置。
【請求項５】
前記第１コンフィグ情報は、
第１検出装置との間で前記位置情報の通信が可能な前記論理回路を構築する情報であり、
前記第２コンフィグ情報は、
前記第１検出装置とは種類が異なる第２検出装置との間で前記位置情報の通信が可能な前記論理回路を構築する情報であり、
前記第１検出装置と、前記第２検出装置とは、
互いに異なる通信プロトコルで前記位置情報の通信を行う、請求項１乃至請求項４の何れか１項に記載の通信装置。
【請求項６】
位置情報を検出して出力する検出装置と接続される接続部と、前記検出装置と通信可能な論理回路を構築する第１コンフィグ情報と、前記第１コンフィグ情報と通信可能な前記検出装置とは種類が異なる前記検出装置と通信可能な前記論理回路を構築する第２コンフィグ情報と、を記憶可能である記憶部と、前記論理回路を構築するプログラマブル論理デバイスと、を備える通信装置における論理回路の構築方法であって、
前記第１コンフィグ情報又は前記第２コンフィグ情報を選択する選択信号を出力する工程と、
前記選択信号に基づいて、前記プログラマブル論理デバイスに対し、前記第１コンフィグ情報又は前記第２コンフィグ情報を読み込んで前記論理回路を構築させる工程と、
構築した前記論理回路により前記接続部と接続された前記検出装置との間で前記位置情報の通信を実行させる工程と、
を含む、論理回路の構築方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、モータ等の位置情報を検出して出力する検出装置との間で通信を行うプログラマブル論理デバイスの論理回路を構築する技術に関するものである。
【背景技術】
【０００２】
従来、ＦＰＧＡ（Field Programmable Gate Array）などのプログラマブル論理デバイスの入出力特性を変更する技術がある（例えば、特許文献１など）。特許文献１に記載されたＦＰＧＡ装置のＰＲＯＭには、入出力特性の異なる２種類のコンフィグ情報が記憶されている。ＦＰＧＡ装置は、電源電圧の大きさなどに応じてコンフィグ情報を選択し、選択したコンフィグ情報に基づいて論理回路を構築する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−９５９９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、モータの位置情報を検出するエンコーダ等と通信を行う回路を、プログラマブル論理デバイスの論理回路で構築する場合、例えば、エンコーダの製造メーカが提供するコンフィグ情報を用いて論理回路を構築することができる。しかしながら、構築した論理回路に別のメーカのエンコーダなどを接続した場合、通信プロトコルの違いなどから論理回路とエンコーダとの間で位置情報を適切に送受信できない虞がある。【０００５】
本願は、上記の課題に鑑みてなされたものであり、接続する検出装置を変更した場合であっても、変更後の検出装置とプログラマブル論理デバイスとの間で位置情報の送受信を適切に行える通信装置及び論理回路の構築方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本明細書は、位置情報を検出して出力する検出装置と接続される接続部と、前記検出装置と通信可能な論理回路を構築する第１コンフィグ情報と、前記第１コンフィグ情報と通信可能な前記検出装置とは種類が異なる前記検出装置と通信可能な前記論理回路を構築する第２コンフィグ情報と、を記憶可能である記憶部と、前記第１コンフィグ情報又は前記第２コンフィグ情報を選択する選択信号を出力する選択信号出力部と、前記選択信号出力部から出力された前記選択信号に基づいて、前記第１コンフィグ情報又は前記第２コンフィグ情報を読み込んで前記論理回路を構築し、構築した前記論理回路により前記接続部と接続された前記検出装置との間で前記位置情報の通信を実行するプログラマブル論理デバイスと、を備える、通信装置を開示する。【０００７】
また、本開示の内容は、通信装置としての実施に限定されることなく、通信装置における論理回路の構築方法としても実施し得るものである。
【発明の効果】
【０００８】
本開示の通信装置等によれば、プログラマブル論理デバイスは、検出装置の種類に応じた論理回路を選択信号に基づいて構築でき、構築した論理回路によって検出装置との通信が可能となる。従って、仮に、接続部と接続する検出装置を変更した場合であっても、変更後の検出装置とプログラマブル論理デバイスとの間で位置情報の送受信を適切に行うことができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態のワーク移載システムの概略構成図である。
【図２】ワーク移載装置の概略構成図である。
【図３】ワーク移載システムの構成のうち、ワーク移載装置の駆動部分に係わる構成を示すブロック図である。
【図４】ＦＰＧＡ基板と、第１駆動部との接続構成を示すブロック図である。
【図５】起動時の処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本開示の一実施形態について図面を参照しながら説明する。まず、本開示の通信装置を具体化した一実施形態であるＦＰＧＡ基板８１（図３参照）を備える部品装着システムについて説明する。図１は、ワーク移載システム１０の概略構成を示す斜視図である。図１に示すように、ワーク移載システム１０は、ワーク移載装置１１、ワーク供給装置１３、ワーク収容部材１５などを基台１０Ａ上に備えている。
【００１１】
ワーク移載システム１０は、基台１０Ａ内に設けられたシステム制御部１９（図３参照）の制御に基づいて、ワーク収容部材１５に収容されたワーク２１を、その後の作業に用いられるパレット１７へ移動、載置させる。ワーク移載システム１０は、例えば、不定姿勢でワーク収容部材１５の採取用載置台１５Ａに載置されたワーク２１を、後工程の作業用ロボット（図示略）や作業者が作業しやすいように、所定の姿勢で整列させた状態でパレット１７に載置する。ここでいう「不定姿勢」とは、ワーク２１の位置、方向などが統一されていない状態をいう。なお、以下の説明では、図１に示すように、ワーク移載システム１０におけるパレット１７を搬送する方向を左右方向（Ｘ軸）、左右方向に直交し搬送されるパレット１７の平面と平行な方向を前後方向（Ｙ軸）、左右方向及び前後方向に直交する方向を上下方向（Ｚ軸）と称して説明する。
【００１２】
作業対象であるワーク２１は、例えば、ボルトである。なお、ワーク２１は、ボルトに限らず、例えば、他の機械部品（ナット、ワッシャなど）でもよく、機械部品に限らず、電気部品、電子部品、化学部品などでもよい。ワーク２１は、少なくともその一部、例えば、図１の拡大図に示す吸着部位２３が磁性体により形成されている。ワーク２１は、磁性体により形成された吸着部位２３を、後述するワーク移載装置１１やワーク供給装置１３が有する電磁石によって引き付けられ、吸着した状態で移動させられる。
【００１３】
ワーク収容部材１５は、ワーク２１を貯蔵する部材であり、上方が開放された有底箱型形状をなすボックスが複数個設けられている。ワーク収容部材１５の各々には、底部から所定の高さに採取用載置台１５Ａが設けられている。ワーク収容部材１５の底部に貯蔵したワーク２１は、ワーク供給装置１３によって採取用載置台１５Ａに移載される。ワーク収容部材１５の底部は、一部が傾斜しており、採取用載置台１５Ａから落下したワーク２１が一箇所に貯蔵される。
【００１４】
また、基台１０Ａ上には、ワーク収容部材１５を移動させる移動部１６が設けられている。移動部１６は、ワーク収容部材１５を載せる収容台１６Ａと、収容台１６Ａを退避位置（図１に点線で示す位置）と、移載処理位置（図１に実線で示す位置）との間で移動させるレール１６Ｂとを有している。システム制御部１９（図３参照）は、作業者からの操作等に基づいて、図示しない駆動源を駆動し、収容台１６Ａを退避位置、又は載置処理位置に移動させる。これにより、作業者は、ワーク収容部材１５にワーク２１の補充を適宜行うことが可能となる。
【００１５】
パレット１７は、ワーク２１を配列載置する部材であり、磁力を帯びており、ワーク２１を磁力で固定する。ワーク移載装置１１は、例えば、ワーク２１であるボルトの頭部を下方にして所定間隔でパレット１７に配列させる。ワーク移載装置１１は、ワーク２１の種類に応じて定められたパレット１７上の所定位置にワーク２１を配設する。
【００１６】
また、ワーク移載システム１０は、パレット１７を搬送する搬送部２５を備えている。搬送部２５は、パレット１７の搬入、搬送、ワーク２１の移載位置での固定、搬出を行うユニットである。搬送部２５は、前後方向において所定間隔を間に設けて配置され、左右方向に向かって延びる１対のコンベアベルトを有している。パレット１７は、このコンベアベルトにより搬送される。システム制御部１９（図３参照）は、搬送部２５を制御して、例えば、パレット１７を後段の装置に搬出する。後段の装置は、パレット１７上のワーク２１の位置を、例えば、ワーク２１の種類に応じて予め定められた位置情報に基づいて特定し作業を行う。
【００１７】
次に、ワーク移載装置１１の詳細な構成について説明する。図２は、ワーク移載装置１１の概略構成を示している。ワーク移載装置１１は、ワーク収容部材１５の各々からワーク２１を採取し、採取したワーク２１をパレット１７に載置する。図２に示すように、ワーク移載装置１１は、基部３１と、アーム部３３と、エンドエフェクタ３９などを有している。
【００１８】
基部３１は、ワーク移載システム１０の基台１０Ａ（図１参照）の上に固定されており、アーム部３３を支持するための支持軸部４１を有している。支持軸部４１は、円柱部４１Ａと、保持部４１Ｂとを有している。円柱部４１Ａは、上下方向に延設される円柱形状をなし、上端部に保持部４１Ｂを有している。保持部４１Ｂは、アーム部３３の基端部を支持している。また、基部３１は、第１駆動部３２を内蔵しており、ＦＰＧＡ基板８１（図３参照）の制御に基づいて第１駆動部３２を駆動し円柱部４１Ａを回転させる。保持部４１Ｂは、円柱部４１Ａの回転にともなって上下方向に沿った軸を中心軸として回転駆動する。
【００１９】
アーム部３３は、基端部から先端部に向かって第１アーム４５及び第２アーム４６を連結させた所謂、多関節ロボットである。第１アーム４５は、一方向に延びる長手部材であり、支持軸部４１の保持部４１Ｂによって基端部を支持されている。支持軸部４１の保持部４１Ｂは、第２駆動部３５を介して第１アーム４５と連結されている。第２駆動部３５は、ＦＰＧＡ基板８１（図３参照）の制御に基づいて、上下方向と直交する方向を中心軸として保持部４１Ｂに対して第１アーム４５を回転させる。
【００２０】
第２アーム４６は、第１アーム４５の先端部に第３駆動部３７を介して連結されている。第２アーム４６は、第１アーム４５の先端部から一方向に延びる長手部材である。第３駆動部３７は、ＦＰＧＡ基板８１（図３参照）の制御に基づいて、第１アーム４５の延設方向に対して直交する方向を中心軸として第１アーム４５の先端部に対して第２アーム４６を回転させる。
【００２１】
エンドエフェクタ３９は、第２アーム４６の先端部に設けられ、第２アーム４６に対して着脱可能に構成されている。ワーク移載装置１１は、その用途に応じて、エンドエフェクタ３９の種類を変更可能となっている。図２において装着しているエンドエフェクタ３９は、一例であり、第４駆動部５１と、採取部５３と、撮像部５５と、台座部５７を有している。第４駆動部５１は、ＦＰＧＡ基板８１（図３参照）の制御に基づいて、第２アーム４６の延設方向に対して直交する方向を中心軸としてエンドエフェクタ３９の台座部５７を回転させる。
【００２２】
図２に示すように、台座部５７は、Ｌ字形状の板部材であり、先端部分に採取部５３が取り付けられている。採取部５３は、ワーク２１の吸着部位２３（図１の拡大図参照）を引き付けて採取する部材であり、引付部６１、一対の挟持部６３、固定部材６７などを有している。引付部６１、挟持部６３及び固定部材６７は、２枚のプレート６５の間に配設されている。固定部材６７は、棒状の部材であり、エアシリンダ７１によって上下動可能に構成されている。エアシリンダ７１は、基台１０Ａに設けられたエア供給部（図示略）から供給されるエアの供給量に応じて固定部材６７を上下動させる。
【００２３】
固定部材６７は、初期位置ではプレート６５の上方に配置され、ワーク２１を挟持する際に下方に移動する。一対の挟持部６３は、棒状の固定部材６７の両端に回動可能に軸支されている。一対の挟持部６３は、固定部材６７が初期位置にあるときは（図２の左側の拡大図参照）、プレート６５の内部に収納されている。引付部６１は、電磁石に軸部材を接続して構成されており、当該軸部材の先端に磁性体のワーク２１を引き付けて採取するものである。引付部６１は、プレート６５の下方に固定されている。引付部６１は、基台１０Ａに設けられた電源部７７（図３参照）から供給される電力に応じて、例えば３段階の磁力（引付力）を生じるよう構成されている。
【００２４】
一対の挟持部６３は、引付部６１が引き付けた後のワーク２１（図１参照）を挟み込んで支持する。一対の挟持部６３には、挟持ピン６９が設けられている。挟持ピン６９は、挟持部６３の各々におけるプレート６５と対向する面に固定されている。プレート６５の各々には、挟持ピン６９を案内するためのガイド溝６５Ａが形成されている。一対の挟持部６３は、固定部材６７が下方に移動すると、ガイド溝６５Ａにより所定の軌道に導かれ、その先端でワーク２１を挟持する（図２の右側の拡大図参照）。また、撮像部５５は、画像を撮像するユニットであり、プレート６５の先端側の面に固定されている。撮像部５５は、撮像した画像データをシステム制御部１９（図３参照）へ送信する。
【００２５】
なお、図１に示すワーク供給装置１３は、ワーク移載装置１１と同様に、その用途に応じて、エンドエフェクタ７３を交換可能に構成されている。また、ワーク供給装置１３は、エンドエフェクタ７３の種類を除いて、ワーク移載装置１１と同様の構成となっており、システム制御部１９やＦＰＧＡ基板８１により作動を制御される。このため、ワーク供給装置１３の詳細な説明を省略する。
【００２６】
次に、第１駆動部３２〜第４駆動部５１の構成について説明する。なお、第２駆動部３５、第３駆動部３７、第４駆動部５１の構成は、第１駆動部３２と同様となっている。このため、以下の説明では、第１駆動部３２について主に説明し、他の駆動部についての説明を適宜省略する。
【００２７】
図３は、ワーク移載システム１０の構成のうち、ワーク移載装置１１の駆動部分に係わる構成を示している。図３に示すように、第１駆動部３２は、駆動源としてのサーボモータ８３と、サーボモータ８３の回転位置等の位置情報ＥＤを検出して出力するエンコーダ８５と有している。エンコーダ８５は、エンコーダケーブル８７を介して、基台１０Ａに設けられたＦＰＧＡ基板８１と接続されている。同様に、第１駆動部３２以外の第２駆動部３５等も、エンコーダケーブル８７を介してＦＰＧＡ基板８１と接続されている。
【００２８】
図４は、ＦＰＧＡ基板８１と、第１駆動部３２との接続構成を示している。なお、図面が煩雑となるのを避けるため、図４では、第１駆動部３２以外の駆動部（第２駆動部３５等）の図示を省略している。図４に示すように、ＦＰＧＡ基板８１は、アンプ回路９１（ＦＰＧＡ９２）と、接続部９３と、上位接続部９５と、電源接続部９７と、メモリ９９と、メモリコントローラ１１０と、ＣＰＵ１１１と、ディップスイッチ１１５とを備えている。アンプ回路９１、接続部９３、上位接続部９５等は、通信バス等により互いに通信可能となっている。
【００２９】
また、ＦＰＧＡ基板８１は、例えば、コンフィグ情報に基づいて論理回路を構築可能なプログラマブル論理デバイスとしてＦＰＧＡ（Field Programmable Gate Array）９２を有する。ＦＰＧＡ９２は、コンフィグ情報を読み込んでアンプ回路９１を論理回路で構築する。なお、本開示のプログラマブル論理デバイスは、ＦＰＧＡに限らず、プログラマブルロジックデバイス（ＰＬＤ）、複合プログラマブルロジックデバイス（ＣＰＬＤ）などでも良い。
【００３０】
ＦＰＧＡ９２のアンプ回路９１は、接続部９３に接続されている。接続部９３は、ＦＰＧＡ基板８１に実装されたコネクタであり、エンコーダ８５のエンコーダケーブル８７と接続される。なお、接続部９３は、ＦＰＧＡ基板８１の基板上に実装される構成に限らず、ＦＰＧＡ基板８１とケーブル等により接続される構成でも良い。
【００３１】
本実施形態の接続部９３は、複数の種類のエンコーダ８５と接続可能な共通のインタフェースで構成されている。例えば、エンコーダケーブル８７の先端に設けられたコネクタ８９は、同一の形状となっている。このコネクタ８９は、エンコーダ８５に直接接続されたエンコーダケーブル８７の先端に設けられたコネクタでも良く、エンコーダケーブル８７を一旦変換した後のコネクタでも良い。従って、本実施形態のエンコーダ８５は、製造メーカ、型番や機種などが異なる場合であっても、コネクタ８９の形状が共通化されている。
【００３２】
接続部９３は、この共通化されたコネクタ８９と接続可能な形状となっている。このため、接続部９３は、種類の異なるエンコーダ８５であっても接続可能となっている。エンコーダ８５は、サーボモータ８３の回転駆動に応じた位置情報ＥＤを、エンコーダケーブル８７、コネクタ８９、接続部９３を介してＦＰＧＡ基板８１に送信する。
【００３３】
また、ＦＰＧＡ基板８１の上位接続部９５は、上位の制御部であるシステム制御部１９と接続されている。また、ＦＰＧＡ基板８１は、電源接続部９７を介して、基台１０Ａに設けられた電源部７７と接続されている。アンプ回路９１は、電源接続部９７を介して電源部７７を制御可能となっている。アンプ回路９１は、接続部９３を介して入力した位置情報ＥＤと、上位接続部９５を介してシステム制御部１９から入力した指令値とに基づいて電源部７７を制御する。第１駆動部３２のサーボモータ８３は、例えば、Ｕ相，Ｖ相，Ｗ相の各相のコイルを有する三相交流で駆動するモータであり、電源線９０を介して各相のコイルが電源部７７に接続されている。サーボモータ８３は、電源部７７から電源線９０を通じて供給される三相交流Ｗに応じて駆動する。アンプ回路９１は、位置情報ＥＤ等に基づいて、三相交流Ｗの大きさや周期等を変更する。これにより、ＦＰＧＡ基板８１は、第１駆動部３２のサーボモータ８３に対するフィードバック制御を実行する。ＦＰＧＡ基板８１は、サーボモータ８３の回転位置や回転速度の制御だけでなく、サーボモータ８３のトルク制御なども実行しても良い。
【００３４】
なお、図３は、図面が煩雑となるのを避けるため、複数の駆動部（第１駆動部３２や第２駆動部３５）のそれぞれのサーボモータ８３と接続される電源線９０を１本のケーブルで図示している。また、上記したように、第１駆動部３２以外の第２駆動部３５、第３駆動部３７、第４駆動部５１は、第１駆動部３２と同様の構成となっており、アンプ回路９１によってフィードバック制御される。
【００３５】
また、ＦＰＧＡ基板８１のメモリ９９には、第１コンフィグ情報１０１と、第２コンフィグ情報１０２と、起動プログラム１０３が記憶されている。第１及び第２コンフィグ情報１０１，１０２は、アンプ回路９１として機能する論理回路を構築するためのコンフィグ情報である。第１コンフィグ情報１０１は、例えば、第２コンフィグ情報１０２とは異なる通信プロトコルで位置情報ＥＤの通信が可能なアンプ回路９１を構築する情報である。ここでいう通信プロトコルとは、例えば、位置情報ＥＤの通信に用いられるデータ形式、ビット順、通信速度、通信コマンドなどの通信を正常に行うための送受信側の取り決めである。通信プロトコルは、ＨＤＬＣ（High level Data Link Control procedure）などの通信規格により規定されたものや、エンコーダ８５の製造メーカなどにより独自に規定されたものを含んでも良い。具体的には、第１コンフィグ情報１０１は、例えば、Ａ社製のエンコーダ８５に対応しており、Ａ社製のエンコーダ８５で用いられる通信プロトコルで位置情報ＥＤを通信可能なアンプ回路９１を構築する情報である。また、第２コンフィグ情報１０２は、例えば、Ｂ社製のエンコーダ８５に対応しており、Ｂ社製のエンコーダ８５で用いられる通信プロトコルで位置情報ＥＤを通信可能なアンプ回路９１を構築する情報である。なお、第１コンフィグ情報１０１は、第２コンフィグ情報１０２とは異なる種類のエンコーダ８５に対応した情報であれば良い。例えば、第１コンフィグ情報１０１と第２コンフィグ情報１０２とは、同一の製造メーカのエンコーダ８５でも、型番の異なる（位置情報ＥＤのデータ形式が異なるなどの）エンコーダ８５に対応した情報でも良い。即ち、第１コンフィグ情報１０１は、第２コンフィグ情報１０２で構築したアンプ回路９１では通信を実行できないエンコーダ８５に対応した情報であれば良い。
【００３６】
従って、本実施形態の検出装置は、サーボモータ８３（モータの一例）の位置情報ＥＤを検出するエンコーダ８５である。そして、ＦＰＧＡ９２（プログラマブル論理デバイスの一例）は、このエンコーダ８５から取得した位置情報ＥＤに基づいて、サーボモータ８３をフィードバック制御するアンプ回路９１を論理回路として構築する。これによれば、エンコーダ８５の種類に応じてコンフィグ情報（第１及び第２コンフィグ情報１０１，１０２）を選択し、エンコーダ８５の種類に応じたアンプ回路９１を論理回路で構築できる。そして、構築したアンプ回路９１によって、エンコーダ８５の位置情報ＥＤに基づいたフィードバック制御をサーボモータ８３に適切に実施できる。
【００３７】
また、本実施形態の第１コンフィグ情報１０１は、例えば、Ａ社製のエンコーダ８５（第１検出装置の一例）との間で位置情報ＥＤの通信が可能なアンプ回路９１（論理回路の一例）を構築する情報である。第２コンフィグ情報１０２は、例えば、Ａ社製のエンコーダ８５とは種類が異なるＢ社製のエンコーダ８５（第２検出装置の一例）との間で位置情報ＥＤの通信が可能なアンプ回路９１を構築する情報である。Ａ社製のエンコーダ８５と、Ｂ社製のエンコーダ８５とは、互いに異なる通信プロトコルで位置情報ＥＤの通信を行う。これによれば、後述するように、位置情報ＥＤの送受信を行う通信プロトコルが異なるエンコーダ８５のいずれを接続した場合でも、エンコーダ８５と通信を実行できるアンプ回路９１を構築できる。
【００３８】
また、メモリ９９の起動プログラム１０３は、ＦＰＧＡ基板８１の起動時にＣＰＵ１１１によって実行されるプログラムである。メモリ９９は、例えば、フラッシュメモリなどの不揮発性メモリと、ＲＡＭなどの揮発性メモリなどを有する。なお、コンフィグ情報を記憶する記憶部は、メモリに限らず、ハードディスクなどの他の記憶装置でも良い。
【００３９】
メモリコントローラ１１０は、メモリ９９に対する書き込み処理、及びメモリ９９からの読み出し処理を制御する。ＣＰＵ１１１は、例えば、ワーク移載システム１０の電源が投入され、ＦＰＧＡ基板８１に電力が供給されると、メモリコントローラ１１０を介して起動プログラム１０３をメモリ９９から読み出して実行する。ＣＰＵ１１１は、起動プログラム１０３を実行することで、ＦＰＧＡ基板８１のＦＰＧＡ９２にローディングするコンフィグ情報（第１及び第２コンフィグ情報１０１，１０２）を選択し、コンフィグ情報に基づいてアンプ回路９１を構築する。なお、以下の説明では、起動プログラム１０３を実行するＣＰＵ１１１のことを、単に装置名で記載する場合がある。例えば、「ＣＰＵ１１１は、信号レベルを判断し、判断結果に応じてエラーを報知する」という記載は、「ＣＰＵ１１１は、起動プログラム１０３を読み込んで実行することで、信号レベルを判断し、判断結果に応じてエラーを報知する」ということを意味する場合がある。
【００４０】
本実施形態の接続部９３には、接続部９３に接続されたエンコーダ８５の種類を判断するための接続端子１１３が設けられている。接続端子１１３は、例えば、Ａ社製のエンコーダ８５のコネクタ８９が接続された場合、特定の接続ピンがショートしてハイレベルの第１選択信号ＣＳ１をＣＰＵ１１１に出力する。また、接続端子１１３は、例えば、Ｂ社製のエンコーダ８５のコネクタ８９が接続された場合、特定の接続ピンがグランドと接続され、ローレベルの第１選択信号ＣＳ１をＣＰＵ１１１に出力する。即ち、接続端子１１３は、異なる種類のエンコーダ８５が接続されると、異なる信号レベルの第１選択信号ＣＳ１を出力する。なお、接続端子１１３は、Ａ社やＢ社などの２種類のエンコーダ８５に対応した構成だけでなく、３以上の複数種類のエンコーダ８５に対応して異なる信号レベルの第１選択信号ＣＳ１を出力する構成でも良い。例えば、接続端子１１３は、Ａ社のコネクタ８９を接続されると第１信号レベルの第１選択信号ＣＳ１を、Ｂ社のコネクタ８９を接続されると第２信号レベルの第１選択信号ＣＳ１を、Ｃ社のコネクタ８９を接続されると第３信号レベルの第１選択信号ＣＳ１を出力する構成でも良い。
【００４１】
従って、本実施形態の接続部９３は、複数の種類のエンコーダ８５と接続可能な共通のインタフェースとなっている。接続端子１１３（選択信号出力部の一例）は、接続部９３に設けられ、接続部９３に接続されたエンコーダ８５のコネクタ８９の接続構造に応じて異なる第１選択信号ＣＳ１（選択信号の一例）を出力する。これによれば、接続端子１１３は、接続部９３に接続されたエンコーダ８５のコネクタ８９の接続構造、例えば、接続ピンの位置やＧＮＤの位置などに応じて異なる第１選択信号ＣＳ１を出力できる。これにより、インタフェースの共通化を図り接続部９３の数を減らしつつ、第１選択信号ＣＳ１の信号レベル等を変更してＦＰＧＡ９２が読み込むべきコンフィグ情報（第１コンフィグ情報１０１又は第２コンフィグ情報１０２）をＣＰＵ１１１へ適切に指示できる。
【００４２】
また、ディップスイッチ１１５は、ＦＰＧＡ基板８１の基板上に実装された小型のスイッチであり、例えば、スライド操作可能なスライドスイッチが設けられている。ディップスイッチ１１５は、例えば、スライドスイッチの位置に応じて異なる信号レベルの第２選択信号ＣＳ２をＣＰＵ１１１に出力する。例えば、ディップスイッチ１１５は、第１の位置にスライドスイッチを移動させた場合、ハイレベルの第２選択信号ＣＳ２を出力し、第１の位置とは異なる第２の位置にスライドスイッチを移動させた場合、ローレベルの第２選択信号ＣＳ２を出力する。ＣＰＵ１１１は、接続端子１１３の第１選択信号ＣＳ１と、ディップスイッチ１１５の第２選択信号ＣＳ２に基づいて、第１コンフィグ情報１０１又は第２コンフィグ情報１０２のどちらを用いるかを判断する。これにより、ユーザは、ディップスイッチ１１５を操作することで、使用するコンフィグ情報を選択することができる。なお、ディップスイッチ１１５は、スライドスイッチに限らず、プッシュロック式のスイッチなどでも良い。
【００４３】
従って、本実施形態のディップスイッチ１１５（選択信号出力部の一例）は、外部からの操作に応じて異なる第２選択信号ＣＳ２（選択信号の一例）を出力するスイッチである。これによれば、例えば、ユーザは、ＦＰＧＡ基板８１に設けられたディップスイッチ１１５の設定を変更することで、第２選択信号ＣＳ２の種類を変更でき、ＦＰＧＡ９２が読み込むべきコンフィグ情報（第１コンフィグ情報１０１又は第２コンフィグ情報１０２）をＣＰＵ１１１へ適切に指示できる。
【００４４】
次に、ＣＰＵ１１１による起動時の処理について、図５を参照しつつ説明する。
まず、図５のステップ（以下、単に「Ｓ」と記載する）１１において、ワーク移載システム１０の電源が投入され、ＦＰＧＡ基板８１に電力が供給される。ＣＰＵ１１１は、メモリ９９から起動プログラム１０３を読み込んで実行する（Ｓ１３）。また、接続端子１１３は、接続部９３に接続されたコネクタ８９の接続構造（接続ピンの配置等）に応じて、ハイレベル又はローレベルの第１選択信号ＣＳ１をＣＰＵ１１１に出力する。また、ディップスイッチ１１５は、電力を供給されると、スライドスイッチの位置、即ち、ユーザによる設定に応じて、ハイレベル又はローレベルの第２選択信号ＣＳ２をＣＰＵ１１１に出力する（Ｓ１３）。
【００４５】
ＣＰＵ１１１は、Ｓ１３において、第１選択信号ＣＳ１及び第２選択信号ＣＳ２を入力すると、２つの選択信号の信号レベルが一致するか否かを判断する（Ｓ１５）。例えば、ハイレベルの第１選択信号ＣＳ１をＣＰＵ１１１が入力した場合、Ａ社製のエンコーダ８５が接続されたこととなる。また、例えば、ハイレベルの第２選択信号ＣＳ２をＣＰＵ１１１が入力した場合、Ａ社製のエンコーダ８５を接続する旨の設定がユーザによってディップスイッチ１１５になされたこととなる。従って、ＣＰＵ１１１は、第１選択信号ＣＳ１と第２選択信号ＣＳ２の信号レベルが一致するか否かを判断することで、コネクタ８９に実際に接続されたエンコーダ８５と、ディップスイッチ１１５の設定とが一致するか否かを判断できる。これにより、ユーザによるディップスイッチ１１５の設定の誤りや、コネクタ８９の損傷による第１選択信号ＣＳ１の誤りを検出できる。
【００４６】
ＣＰＵ１１１は、第１選択信号ＣＳ１と第２選択信号ＣＳ２の信号レベルが一致すると判断すると（Ｓ１５：ＹＥＳ）、Ｓ１７を実行し、一致しないと判断すると（Ｓ１５：ＮＯ）、Ｓ１９を実行する。ＣＰＵ１１１は、Ｓ１９において、エラーを報知し、図５に示す処理を終了する。この場合、ＣＰＵ１１１は、例えば、ワーク移載システム１０に接続された管理ＰＣの画面に、「ディップスイッチ１１５の設定とエンコーダ８５（コネクタ８９）の種類が一致しません」などのエラーを表示する。あるいは、ＣＰＵ１１１は、ワーク移載装置１１に設けられたエラー用のランプを点灯させる、ブザーを鳴動させるなどによりエラーを報知する。これにより、ユーザは、接続したエンコーダ８５の種類と、ディップスイッチ１１５で設定したエンコーダ８５の種類とが一致していないことを認識できる。ユーザは、エンコーダ８５の機種名やディップスイッチ１１５の設定を確認するなどの適切な対応を行うことができる。なお、ＣＰＵ１１１は、第１駆動部３２以外の第２駆動部３５、第３駆動部３７、第４駆動部５１のそれぞれについて同様に、第１選択信号ＣＳ１と第２選択信号ＣＳ２の一致を判断等する。
【００４７】
また、Ｓ１７において、ＣＰＵ１１１は、第１選択信号ＣＳ１及び第２選択信号ＣＳ２の信号レベルに応じたコンフィグ情報をＦＰＧＡ９２に読み込ませ、アンプ回路９１を構築する。例えば、ＣＰＵ１１１は、第１及び第２選択信号ＣＳ１，ＣＳ２がともにハイレベルの信号であった場合、第１コンフィグ情報１０１をＦＰＧＡ９２に読み込ませ、アンプ回路９１を構築させる。また、例えば、ＣＰＵ１１１は、第１及び第２選択信号ＣＳ１，ＣＳ２がともにローレベルの信号であった場合、第２コンフィグ情報１０２をＦＰＧＡ９２に読み込ませ、アンプ回路９１を構築させる。これにより、製造メーカや通信プロトコルに応じたアンプ回路９１が自動で構築される。
【００４８】
アンプ回路９１は、構築されると、第１駆動部３２のエンコーダ８５と通信を開始し、初期値の設定等を終えると、位置情報ＥＤの送受信等を開始する（Ｓ２１）。同様に、第１駆動部３２以外の他の駆動部（第２駆動部３５など）に対応するアンプ回路９１も、同様に構築され、エンコーダ８５との間で位置情報ＥＤの通信を開始する（Ｓ２１）。これにより、接続されたエンコーダ８５の種類に応じたアンプ回路９１を構築し、アンプ回路９１とエンコーダ８５との間で位置情報ＥＤの送受信を適切に実行することができる。
【００４９】
因みに、ＦＰＧＡ基板８１は、通信装置の一例である。エンコーダ８５は、検出装置の一例である。アンプ回路９１は、論理回路の一例である。メモリ９９は、記憶部の一例である。接続端子１１３、ディップスイッチ１１５は、選択信号出力部の一例である。第１選択信号ＣＳ１及び第２選択信号ＣＳ２は、選択信号の一例である。ＦＰＧＡ９２は、プログラマブル論理デバイスの一例である。
【００５０】
以上、上記した本実施形態によれば以下の効果を奏する。
本実施形態の一態様では、ＦＰＧＡ基板８１は、エンコーダ８５と接続される接続部９３と、第１コンフィグ情報１０１及び第２コンフィグ情報１０２を記憶可能であるメモリ９９と、第１コンフィグ情報１０１又は第２コンフィグ情報１０２を選択する選択信号（第１選択信号ＣＳ１、第２選択信号ＣＳ２）を出力する接続端子１１３及びディップスイッチ１１５と、第１及び第２選択信号ＣＳ１，ＣＳ２に基づいてアンプ回路９１を構築し、構築したアンプ回路９１により位置情報ＥＤの通信を実行するＦＰＧＡ９２と、を備える。
【００５１】
これによれば、ＦＰＧＡ９２は、第１及び第２選択信号ＣＳ１，ＣＳ２に基づいて、第１コンフィグ情報１０１又は第２コンフィグ情報１０２を読み込んでアンプ回路９１を構築し、エンコーダ８５との間で位置情報ＥＤの通信を実行する。ＦＰＧＡ９２は、エンコーダ８５の種類に応じたアンプ回路９１を第１及び第２選択信号ＣＳ１，ＣＳ２に基づいて構築でき、構築したアンプ回路９１によってエンコーダ８５との通信が可能となる。従って、仮に、接続部９３と接続するエンコーダ８５を変更した場合であっても、変更後のエンコーダ８５とアンプ回路９１との間で位置情報ＥＤの送受信を適切に行うことができる。
【００５２】
尚、本願は上記の実施形態に限定されるものではなく、本願の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、上記実施形態では、２つのコンフィグ情報（第１及び第２コンフィグ情報１０１，１０２）をメモリ９９に記憶する構成であった。即ち、２種類のエンコーダ８５に対応可能な構成であった。しかしながら、ＦＰＧＡ基板８１は、３以上の複数種類に対応可能な構成でも良い。例えば、メモリ９９に、Ａ社用の第１コンフィグ情報１０１、Ｂ社用の第２コンフィグ情報１０２、Ｃ社用の第３コンフィグ情報・・のように複数の種類のエンコーダ８５と通信可能なコンフィグ情報を記憶しても良い。この場合、接続端子１１３及びディップスイッチ１１５を、コンフィグ情報の数に応じて、異なる信号レベル（３種類以上の信号レベル）の第１選択信号ＣＳ１や第２選択信号ＣＳ２を出力可能な構成とする。
【００５３】
また、第１選択信号ＣＳ１や第２選択信号ＣＳ２の信号レベル（ハイレベルやローレベル）を変更せずに、選択信号を変更しても良い。例えば、接続端子１１３は、接続されるコネクタ８９の接続構造（エンコーダ８５の種類）に応じて、ＣＰＵ１１１と接続される複数の信号線のうち、異なる信号線の信号をＯＮしても良い。これにより、ＣＰＵ１１１は、ＯＮ信号の信号線に応じて、どのコンフィグ情報を選択すべきかを判断できる。また、例えば、ディップスイッチ１１５は、スライドスイッチの位置に応じて異なるビット値の第２選択信号ＣＳ２を出力する構成でも良い。これにより、ＣＰＵ１１１は、ディップスイッチ１１５から入力したビット値に基づいて、どのコンフィグ情報を選択すべきかを判断できる。
【００５４】
また、ＦＰＧＡ基板８１は、接続端子１１３又はディップスイッチ１１５のどちらか一方のみを備える構成でも良い。この場合、ＣＰＵ１１１は、図５のＳ１５の判断処理を実行せず、入力した第１選択信号ＣＳ１又は第２選択信号ＣＳ２のみに基づいてコンフィグ情報を選択しても良い。
また、第１コンフィグ情報１０１又は第２コンフィグ情報１０２を選択する処理は、ＣＰＵ１１１で起動プログラム１０３を実行することで、即ち、ソフトウェア上の処理で実現しなくとも良い。例えば、第１コンフィグ情報１０１を記憶するメモリ９９と、第２コンフィグ情報１０２を記憶するメモリ９９を別のメモリとする。また、入力する第１選択信号ＣＳ１の信号レベルに応じて、接続回路を変更するスイッチ回路を２つのメモリの両方に接続する。そして、スイッチ回路の接続回路を第１選択信号ＣＳ１の信号レベルに応じて変更することで、コンフィグ情報を読み出すメモリ９９を変更し、アンプ回路９１を変更しても良い。
【００５５】
また、本開示における検出装置は、サーボモータ８３の回転位置等を検出するエンコーダ８５に限らず、例えば、直線移動の位置情報ＥＤを検出するリニアスケールでも良い。この場合、ＦＰＧＡ基板８１は、接続されるリニアスケールの種類に応じてコンフィグ情報を選択し、リニアモータを制御するアンプ回路９１を変更しても良い。これにより、例えば、リニアスケールの位置情報ＥＤに基づいて移動するリニアモータに対し、リニアスケールの種類に応じてアンプ回路９１を変更し、アンプ回路９１によりリニアモータを適切にフィードバック制御できる。
また、ＦＰＧＡ基板８１は、移動部１６の駆動源や搬送部２５の駆動源などを制御しても良い。
【符号の説明】
【００５６】
８１  ＦＰＧＡ基板（通信装置の一例）、８３  サーボモータ（モータ）、８５  エンコーダ（検出装置）、８９  コネクタ、９１  アンプ回路（論理回路）、９２  ＦＰＧＡ（プログラマブル論理デバイス）、９３  接続部、１１３  接続端子（選択信号出力部）、ＣＳ１  第１選択信号（選択信号）、ＣＳ２  第２選択信号（選択信号）、ＥＤ  位置情報。
【図１】
2020049641.tif 000003
【図２】
2020049641.tif 000004
【図３】
2020049641.tif 000005
【図４】
2020049641.tif 000006
【図５】
2020049641.tif 000007
【国際調査報告】
2020049641.tif 000008
2020049641.tif 000009
2020049641.tif 000010