(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-06
(45)【発行日】2022-12-14
(54)【発明の名称】センサシステム
(51)【国際特許分類】
G08C 15/06 20060101AFI20221207BHJP
G08C 15/00 20060101ALI20221207BHJP
B65G 43/08 20060101ALI20221207BHJP
【FI】
G08C15/06 H
G08C15/00 D
B65G43/08 E
(21)【出願番号】P 2018207928
(22)【出願日】2018-11-05
【審査請求日】2020-12-15
(31)【優先権主張番号】P 2018089206
(32)【優先日】2018-05-07
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】蓬郷 典大
(72)【発明者】
【氏名】今井 清司
(72)【発明者】
【氏名】飯田 雄介
(72)【発明者】
【氏名】柴▲崎▼ 祐輔
【審査官】菅藤 政明
(56)【参考文献】
【文献】特開2008-290042(JP,A)
【文献】特開昭61-27866(JP,A)
【文献】特開2016-146088(JP,A)
【文献】特開平6-305538(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08C 15/00-15/06
B65G 43/08
G05B 19/05
(57)【特許請求の範囲】
【請求項1】
ラインに沿って配置され、前記ライン上を搬送されるワークの通過状況を示すデータを測定する複数のセンサと、
前記複数のセンサそれぞれに接続され、前記複数のセンサにより測定されるデータを取得する複数のスレーブユニットと、
前記複数のスレーブユニットと接続されているマスタユニットと、を備え、
前記マスタユニットは、
前記データと、前記データが測定されたタイミングに関する情報とを関連付けて記憶する記憶部と、
前記複数のスレーブユニットのうち2以上のスレーブユニットから伝送された前記データを、前記タイミングに関する情報を用いて比較して、前記ワークの状態の変化を判定する判定部と、を有し、
前記マスタユニットは、時刻の基準となるトリガ信号を前記複数のスレーブユニットに対して発信するトリガ発信部を有し、
前記複数のスレーブユニットは、それぞれタイマを有し、前記トリガ信号を受信してからの経過時間を前記タイマにより測定し、前記経過時間を前記データとともに前記マスタユニットに伝送し、
前記記憶部は、前記経過時間と、前記データとを関連付けて記憶する、
センサシステム。
【請求項2】
前記判定部は、前記ラインの搬送速度及び前記複数のセンサの配置に基づいて、前記ワークが前記複数のセンサの検出範囲を通過すべきタイミングを算出し、前記複数のセンサのうち前記ラインの上流に配置されたセンサにより測定された前記データと、前記複数のセンサのうち前記ラインの下流に配置されたセンサにより、前記通過すべきタイミングに測定された前記データとを比較し、前記ワークの位置ずれを判定する、
請求項1に記載のセンサシステム。
【請求項3】
前記判定部は、前記ラインの上流に配置されたセンサにより前記ワークが検出された期間と、前記ラインの下流に配置されたセンサにより前記ワークが検出された期間との差に基づき、前記ワークの搬送速度の変化を判定する、
請求項2に記載のセンサシステム。
【請求項4】
前記判定部は、前記ラインの上流に配置されたセンサにより測定された前記データと、前記ラインの下流に配置されたセンサにより測定された前記データとの対応関係に基づき、前記ワークの脱落を判定する、
請求項2に記載のセンサシステム。
【請求項5】
前記記憶部は、前記ラインの上流に配置されたセンサにより測定された前記データと、前記ラインの下流に配置されたセンサにより測定された前記データと、前記ワークの状態の変化を示す情報とを含む学習用データを用いた機械学習により生成された学習済みモデルを記憶し、
前記判定部は、少なくとも、前記ラインの上流に配置されたセンサにより測定された前記データと、前記ラインの下流に配置されたセンサにより測定された前記データとを前記学習済みモデルに入力し、前記学習済みモデルの出力に基づいて前記ワークの状態の変化を判定する、
請求項1から
4のいずれか一項に記載のセンサシステム。
【請求項6】
前記マスタユニットは、前記センサの応答時間及び前記スレーブユニットから前記マスタユニットへの伝送遅延時間の少なくともいずれかに基づき、前記タイミングに関する情報を補正する補正部をさらに有する、
請求項1から
5のいずれか一項に記載のセンサシステム。
【請求項7】
ラインに沿って配置され、前記ライン上を搬送されるワークの通過状況を示すデータを測定する複数のセンサと、
前記複数のセンサそれぞれに接続され、前記複数のセンサにより測定されるデータを取得する複数のスレーブユニットと、
前記複数のスレーブユニットと接続されているマスタユニットと、を備え、
前記マスタユニットは、
前記データと、前記データが測定されたタイミングに関する情報とを関連付けて記憶する記憶部と、
前記複数のスレーブユニットのうち2以上のスレーブユニットから伝送された前記データを、前記タイミングに関する情報を用いて比較して、前記ワークの状態の変化を判定する判定部と、を有し、
前記データは、前記ライン上を搬送される前記ワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データであり、
前記マスタユニットは、前記複数のスレーブユニットのうち2以上のスレーブユニットにより取得された前記時系列データに含まれる前記立ち上がり波形の間隔又は前記立ち下がり波形の間隔に基づいて、同一の前記ワークに関して前記2以上のスレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形を対応付ける対応部をさらに備え、
前記対応部は、前記複数のスレーブユニットのうち第1スレーブユニットにより取得された前記立ち上がり波形の間隔又は前記立ち下がり波形の間隔と、前記複数のスレーブユニットのうち第2スレーブユニットにより取得された前記立ち上がり波形の間隔又は前記立ち下がり波形の間隔との差の平均値が小さくなるように、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形とを対応付ける、
センサシステム。
【請求項8】
前記対応部は、前記第1スレーブユニットに接続されているセンサが、前記第2スレーブユニットに接続されているセンサより前記ラインの上流に配置されている場合、前記第1スレーブユニットにより取得された前記立ち上がり波形の間隔又は前記立ち下がり波形の間隔と、その後に前記第2スレーブユニットにより取得された前記立ち上がり波形の間隔又は前記立ち下がり波形の間隔との差の平均値が小さくなるように、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形とを対応付ける、
請求項
7に記載のセンサシステム。
【請求項9】
前記対応部は、前記平均値を算出するための項数が所定数以上となる組み合わせの中から、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形との対応付けを行う、
請求項
7又は
8に記載のセンサシステム。
【請求項10】
前記対応部は、前記平均値を算出するための項数が多くなるように、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形との対応付けを行う、
請求項
7から
9のいずれか一項に記載のセンサシステム。
【請求項11】
前記対応部は、前記判定部により前記ワークの状態が変化したと所定期間にわたって判定され続けた場合に、前記立ち上がり波形又は前記立ち下がり波形の対応付けを行う、
請求項
7から
10のいずれか一項に記載のセンサシステム。
【請求項12】
前記対応部は、前記複数のスレーブユニットのうち選択された一部について、前記立ち上がり波形又は前記立ち下がり波形の対応付けを行う、
請求項
7から
11のいずれか一項に記載のセンサシステム。
【請求項13】
前記マスタユニットは、前記対応部による対応付けを実行中であることを表示する表示部をさらに備える、
請求項
7から
12のいずれか一項に記載のセンサシステム。
【請求項14】
ラインに沿って配置され、前記ライン上を搬送されるワークの通過状況を示すデータを測定する複数のセンサと、
前記複数のセンサそれぞれに接続され、前記複数のセンサにより測定されるデータを取得する複数のスレーブユニットと、
前記複数のスレーブユニットと接続されているマスタユニットと、を備え、
前記マスタユニットは、
前記データと、前記データが測定されたタイミングに関する情報とを関連付けて記憶する記憶部と、
前記複数のスレーブユニットのうち2以上のスレーブユニットから伝送された前記データを、前記タイミングに関する情報を用いて比較して、前記ワークの状態の変化を判定する判定部と、を有し、
前記データは、前記ライン上を搬送される前記ワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データであり、
前記判定部は、前記複数のスレーブユニットのうち第1スレーブユニットにより取得された前記時系列データと、前記複数のスレーブユニットのうち第2スレーブユニットにより取得された前記時系列データとのいずれか一方を所定の時間シフトして比較して、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形との時間差に基づいて、前記ワークの状態の変化を判定
し、
前記判定部は、前記複数のスレーブユニットのうち第1スレーブユニットにより取得された前記時系列データと、前記複数のスレーブユニットのうち第2スレーブユニットにより取得された前記時系列データとのいずれか一方を所定の時間シフトし、1以下の前記立ち上がり波形又は前記立ち下がり波形が含まれるように、それぞれの前記時系列データを複数の区間に分割し、
前記判定部は、前記複数の区間のうち第1区間に含まれる前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第1区間に含まれる前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形との第1時間差及び前記複数の区間のうち第2区間に含まれる前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形と、前記第2区間に含まれる前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形との第2時間差を算出し、前記第1時間差と前記第2時間差の差に基づいて、前記ワークの状態の変化を判定する、
センサシステム。
【請求項15】
前記判定部は、前記第1スレーブユニットに接続されているセンサが、前記第2スレーブユニットに接続されているセンサより前記ラインの上流に配置されている場合、前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形に対して、対応する前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形が存在しない場合に、前記ワークが前記ラインから脱落したと判定する、
請求項
14に記載のセンサシステム。
【請求項16】
前記判定部は、前記第1スレーブユニットに接続されているセンサが、前記第2スレーブユニットに接続されているセンサより前記ラインの上流に配置されている場合、前記第2スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形に対して、対応する前記第1スレーブユニットにより取得された前記立ち上がり波形又は前記立ち下がり波形が存在しない場合に、前記ワークが前記ラインに混入したと判定する、
請求項
14又は
15に記載のセンサシステム。
【請求項17】
前記判定部は、前記複数のスレーブユニットのうち前記ラインに沿って順に配置されている3以上のスレーブユニットにより取得された前記時系列データを所定の時間シフトして比較して前記ワークの状態の変化を判定し、前記ワークの状態が変化したと判定された区間に基づいて、前記ラインの異常区間を判定する、
請求項
14から
16のいずれか一項に記載のセンサシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、センサシステムに関する。
【背景技術】
【0002】
従来、ラインに沿って複数のセンサを配置して、ライン上を搬送されるワークの有無を測定することがある。複数のセンサにより測定されたデータは、複数のスレーブユニットにより取得されてマスタユニットに転送され、マスタユニットに接続されたPLC(Programmable Logic Controller)等の制御装置に集約されることがある。
【0003】
下記特許文献1には、複数のスレーブユニットと、各々のスレーブユニットから受信した情報を制御装置に向けて送信する通信装置とを備えるセンサシステムが記載されている。各スレーブユニットは、いずれかのスレーブユニットから発信される同期信号を起点として、スレーブユニット毎に定められる待機時間が経過してから、センシングデータ等の検出情報を通信装置に送信する。ここで、各スレーブユニットの待機時間は、他のスレーブユニットの待機時間とは異なるように定められている。特許文献1に記載の技術によって、複数のセンサにより測定したデータを制御装置に集約する場合に、制御装置からのコマンドを待たずにデータを送信することができ、通信速度を向上させることができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来、複数のセンサにより時々刻々とワークの有無に関するデータが測定される場合であっても、それぞれのデータは独立に活用されることが多い。異なるセンサにより測定されたデータを独立に活用する場合、マスタユニットはそれぞれのデータの測定時刻に関する情報を有していないため、異なるセンサにより測定されたデータがどのような前後関係で測定されたのか判別できなかった。そのため、ラインに異常があり、搬送の過程でワークの位置ずれや脱落等の状態の変化が生じても、その変化を検出することが難しかった。
【0006】
そこで、本発明は、搬送の過程で生じたワークの状態の変化を判定することができるセンサシステムを提供する。
【課題を解決するための手段】
【0007】
本開示の一態様に係るセンサシステムは、ラインに沿って配置され、ライン上を搬送されるワークの通過状況を示すデータを測定する複数のセンサと、複数のセンサそれぞれに接続され、複数のセンサにより測定されるデータを取得する複数のスレーブユニットと、複数のスレーブユニットと接続されているマスタユニットと、を備え、マスタユニットは、データと、データが測定されたタイミングに関する情報とを関連付けて記憶する記憶部と、複数のスレーブユニットのうち2以上のスレーブユニットから伝送されたデータを、タイミングに関する情報を用いて比較して、ワークの状態の変化を判定する判定部と、を有する。
【0008】
この態様によれば、複数のセンサにより測定されたデータと、そのデータが測定されたタイミングに関する情報とが関連付けられて記憶されることで、異なるセンサにより測定されたデータがどのような前後関係で測定されたのかが明らかとなり、ライン上を搬送されるワークの状態の変化を判定することができる。
【0009】
上記態様において、判定部は、ラインの搬送速度及び複数のセンサの配置に基づいて、ワークが複数のセンサの検出範囲を通過すべきタイミングを算出し、複数のセンサのうちラインの上流に配置されたセンサにより測定されたデータと、複数のセンサのうちラインの下流に配置されたセンサにより、通過すべきタイミングにおいて測定されたデータとの比較に基づき、ワークの位置ずれを判定してもよい。
【0010】
この態様によれば、ラインの上流に配置されたセンサにより測定されたデータと、ラインの下流に配置されたセンサにより測定されたデータとを、ワークの搬送による時間遅れを考慮して比較することで、搬送の過程でワークの位置が変化したかを判定することができる。
【0011】
上記態様において、判定部は、ラインの上流に配置されたセンサによりワークが検出された期間と、ラインの下流に配置されたセンサによりワークが検出された期間との差に基づき、ワークの搬送速度の変化を判定してもよい。
【0012】
この態様によれば、ラインの上流に配置されたセンサによりワークが検出された期間と、ラインの下流に配置されたセンサによりワークが検出された期間とを比較することで、ワークの搬送速度が変化したかを判定することができる。
【0013】
上記態様において、判定部は、ラインの上流に配置されたセンサにより測定されたデータと、ラインの下流に配置されたセンサにより測定されたデータとの対応関係に基づき、ワークの脱落を判定してもよい。
【0014】
この態様によれば、ラインの上流に配置されたセンサにより測定されたデータと、ラインの下流に配置されたセンサにより測定されたデータとが一対一に対応しない場合に、ワークの脱落が生じていると判定することができる。
【0015】
上記態様において、記憶部は、ラインの上流に配置されたセンサにより測定されたデータと、ラインの下流に配置されたセンサにより測定されたデータと、ワークの状態の変化を示す情報とを含む学習用データを用いた機械学習により生成された学習済みモデルを記憶し、判定部は、少なくとも、ラインの上流に配置されたセンサにより測定されたデータと、ラインの下流に配置されたセンサにより測定されたデータとを学習済みモデルに入力し、学習済みモデルの出力に基づいてワークの状態の変化を判定してもよい。
【0016】
この態様によれば、必ずしもラインの搬送速度及び複数のセンサの配置を知らなくても、実測されたデータに基づき生成された学習済みモデルによって、ワークの状態が変化したかを判定することができる。
【0017】
上記態様において、マスタユニットは、タイマを有し、記憶部は、タイマにより測定される時刻と、データとを関連付けて記憶してもよい。
【0018】
この態様によれば、複数のスレーブユニットにタイマを設けずに、マスタユニットのみにタイマを設けることで、簡素な構成によって、複数のセンサにより測定されたデータと、そのデータが測定されたタイミングとを関連付けて記憶することができる。
【0019】
上記態様において、マスタユニットは、時刻の基準となるトリガ信号を複数のスレーブユニットに対して発信するトリガ発信部を有し、複数のスレーブユニットは、それぞれタイマを有し、トリガ信号を受信してからの経過時間をタイマにより測定し、経過時間をデータとともにマスタユニットに伝送し、記憶部は、経過時間と、データとを関連付けて記憶してもよい。
【0020】
この態様によれば、マスタユニットにタイマを設けずに、複数のセンサにより測定されたデータと、そのデータが測定されたタイミングとを関連付けて記憶することができる。
【0021】
上記態様において、複数のスレーブユニットは、複数のスレーブユニット間で同期するタイマをそれぞれ有し、タイマにより測定される時刻をデータとともにマスタユニットに伝送し、記憶部は、タイマにより測定された時刻と、データとを関連付けて記憶してもよい。
【0022】
この態様によれば、マスタユニットの処理負荷を減らして、複数のセンサにより測定されたデータと、そのデータが測定されたタイミングとを関連付けて記憶することができる。
【0023】
上記態様において、マスタユニットは、時刻の基準となる信号を外部機器から受信する受信部を有し、記憶部は、時刻の基準となる信号に基づき算出される時刻と、データとを関連付けて記憶してもよい。
【0024】
この態様によれば、複数のスレーブユニット及びマスタユニットにタイマを設けずに、複数のセンサにより測定されたデータと、そのデータが測定されたタイミングとを関連付けて記憶することができる。
【0025】
上記態様において、マスタユニットは、センサの応答時間及びスレーブユニットからマスタユニットへの伝送遅延時間の少なくともいずれかに基づき、タイミングに関する情報を補正する補正部をさらに有してもよい。
【0026】
この態様によれば、複数のセンサによりデータが測定されたタイミングに関する情報がより正確に記憶され、ライン上を搬送されるワークの状態の変化をより高い精度で判定することができる。
【0027】
上記態様において、データは、ライン上を搬送されるワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データであり、マスタユニットは、複数のスレーブユニットのうち2以上のスレーブユニットにより取得された時系列データに含まれる立ち上がり波形の間隔又は立ち下がり波形の間隔に基づいて、同一のワークに関して2以上のスレーブユニットにより取得された立ち上がり波形又は立ち下がり波形を対応付ける対応部をさらに備えてもよい。
【0028】
この態様によれば、同一のワークに関して2以上のスレーブユニットにより取得された立ち上がり波形又は立ち下がり波形を対応付けることで、複数のセンサにより測定された時系列データの適切な比較が可能となり、ライン上を搬送されるワークの状態の変化を適切に判定することができる。
【0029】
上記態様において、対応部は、複数のスレーブユニットのうち第1スレーブユニットにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔と、複数のスレーブユニットのうち第2スレーブユニットにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔との差の平均値が小さくなるように、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形とを対応付けてもよい。
【0030】
この態様によれば、2つのセンサにより測定された立ち上がり波形又は立ち下がり波形の間隔の差の平均値を評価値とすることで、ラインの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサにより測定された時系列データを適切に対応付けることができる。
【0031】
上記態様において、対応部は、第1スレーブユニットに接続されているセンサが、第2スレーブユニットに接続されているセンサよりラインの上流に配置されている場合、第1スレーブユニットにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔と、その後に第2スレーブユニットにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔との差の平均値が小さくなるように、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形とを対応付けてもよい。
【0032】
この態様によれば、複数のセンサの配置に応じて算出すべき平均値の組み合わせを制限することで、演算負荷を低減することができる。
【0033】
上記態様において、対応部は、平均値を算出するための項数が所定数以上となる組み合わせの中から、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。
【0034】
この態様によれば、立ち上がり波形又は立ち下がり波形の対応付けを誤る確率を低減させることができ、より適切な対応付けが行われるようにすることができる。
【0035】
上記態様において、対応部は、平均値を算出するための項数が多くなるように、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。
【0036】
この態様によれば、多数のデータを用いた対応付けを優先させて、対応付けの信頼性を向上させることができる。
【0037】
上記態様において、対応部は、判定部によりワークの状態が変化したと所定期間にわたって判定され続けた場合に、立ち上がり波形又は立ち下がり波形の対応付けを行ってもよい。
【0038】
この態様によれば、立ち上がり波形の対応付けが不適切であるために、ラインに異常が有ると誤って判定され続けている場合に、自動的に立ち上がり波形の対応付けを修正することができ、ラインの状態を正しく判定できるようになる。
【0039】
上記態様において、対応部は、複数のスレーブユニットのうち選択された一部について、立ち上がり波形又は立ち下がり波形の対応付けを行ってもよい。
【0040】
この態様によれば、対応付けを実行するスレーブユニットを選択することで、必ずしも必要でないデータの対応付けを省略して、処理負荷を低減することができる。
【0041】
上記態様において、マスタユニットは、対応部による対応付けを実行中であることを表示する表示部をさらに備えてもよい。
【0042】
この態様によれば、マスタユニットが一時的にワークの状態を判定することができない状態にあることを視覚的に伝えることができる。
【0043】
上記態様において、データは、ライン上を搬送されるワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データであり、判定部は、複数のスレーブユニットのうち第1スレーブユニットにより取得された時系列データと、複数のスレーブユニットのうち第2スレーブユニットにより取得された時系列データとのいずれか一方を所定の時間シフトして比較して、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形との時間差に基づいて、ワークの状態の変化を判定してもよい。
【0044】
この態様によれば、ラインの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサにより測定された時系列データを適切に比較して、データのずれを検出することができる。
【0045】
上記態様において、判定部は、第1スレーブユニットに接続されているセンサが、第2スレーブユニットに接続されているセンサよりラインの上流に配置されている場合、第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインから脱落したと判定してもよい。
【0046】
この態様によれば、ラインの上流に配置されたセンサによりワークが検出されているが、ラインの下流に配置されたセンサによりワークが検出されない場合を特定し、ワークの脱落が生じていると判定することができる。
【0047】
上記態様において、判定部は、第1スレーブユニットに接続されているセンサが、第2スレーブユニットに接続されているセンサよりラインの上流に配置されている場合、第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインに混入したと判定してもよい。
【0048】
この態様によれば、ラインの上流に配置されたセンサによりワークが検出されていないが、ラインの下流に配置されたセンサによりワークが検出されている場合を特定し、ワークの混入が生じていると判定することができる。
【0049】
上記態様において、判定部は、複数のスレーブユニットのうち第1スレーブユニットにより取得された時系列データと、複数のスレーブユニットのうち第2スレーブユニットにより取得された時系列データとのいずれか一方を所定の時間シフトし、1以下の立ち上がり波形又は立ち下がり波形が含まれるように、それぞれの時系列データを複数の区間に分割してもよい。
【0050】
この態様によれば、複数の区間毎に時系列データの比較を行い、ワークの状態の変化を判定することができる。
【0051】
上記態様において、判定部は、複数の区間のうち第1区間に含まれる第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第1区間に含まれる第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形との第1時間差及び複数の区間のうち第2区間に含まれる第1スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形と、第2区間に含まれる第2スレーブユニットにより取得された立ち上がり波形又は立ち下がり波形との第2時間差を算出し、第1時間差と第2時間差の差に基づいて、ワークの状態の変化を判定してもよい。
【0052】
この態様によれば、ラインの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサにより測定された時系列データを適切に比較して、データのずれを検出することができる。
【0053】
上記態様において、判定部は、複数のスレーブユニットのうちラインに沿って順に配置されている3以上のスレーブユニットにより取得された時系列データを所定の時間シフトして比較してワークの状態の変化を判定し、ワークの状態が変化したと判定された区間に基づいて、ラインの異常区間を判定してもよい。
【0054】
この態様によれば、ラインに異常が生じていることのみならず、異常が発生している区間を特定することができ、異常の原因を早期に特定するための情報を発信することができる。
【発明の効果】
【0055】
本発明によれば、搬送の過程で生じたワークの状態の変化を判定することができるセンサシステムが提供される。
【図面の簡単な説明】
【0056】
【
図1】本発明の実施形態に係るセンサシステムの概要を示す図である。
【
図2】本実施形態に係るマスタユニットの機能ブロックを示す図である。
【
図3】本実施形態に係るセンサシステムの物理的構成を示す図である。
【
図4】本実施形態に係るセンサシステムにより測定されるデータの第1例を示す図である。
【
図5】本実施形態に係るセンサシステムにより測定されるデータの第2例を示す図である。
【
図6】本実施形態に係るマスタユニットにより実行される第1処理のフローチャートである。
【
図7】本実施形態に係るセンサシステムにより測定されるデータの第3例を示す図である。
【
図8】本実施形態に係るマスタユニットにより実行される第2処理のフローチャートである。
【
図9】本実施形態に係るセンサシステムにより測定されるデータの第4例を示す図である。
【
図10】本実施形態に係るマスタユニットにより実行される第3処理のフローチャートである。
【
図11】本実施形態に係るマスタユニットにより実行される第4処理のフローチャートである。
【
図12】本実施形態の第1変形例に係るセンサシステムの機能ブロックを示す図である。
【
図13】本実施形態の第2変形例に係るセンサシステムの機能ブロックを示す図である。
【
図14】本実施形態の第3変形例に係るセンサシステムの機能ブロックを示す図である。
【
図15】本実施形態の第4変形例に係るセンサシステムの機能ブロックを示す図である。
【
図16】本実施形態の第4変形例に係るセンサシステムにより測定されるデータの第5例を示す図である。
【
図17】本実施形態の第4変形例に係るマスタユニットにより実行される第5処理のフローチャートである。
【
図18】本実施形態の第4変形例に係るマスタユニットにより実行される第6処理のフローチャートである。
【
図19】本実施形態の第5変形例に係るセンサシステムにより測定されるデータの第6例を示す図である。
【
図20】本実施形態の第5変形例に係るセンサシステムにより測定されるデータの第7例を示す図である。
【
図21】本実施形態の第5変形例に係るマスタユニットにより実行される第7処理のフローチャートである。
【
図22】本実施形態の第5変形例に係るセンサシステムにより測定されるデータの第8例を示す図である。
【
図23】本実施形態の第5変形例に係るマスタユニットにより実行される第8処理のフローチャートである。
【
図24】本実施形態の第5変形例に係るセンサシステムにより測定されるデータの第9例を示す図である。
【
図25】本実施形態の第5変形例に係るマスタユニットにより実行される第9処理のフローチャートである。
【発明を実施するための形態】
【0057】
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」と表記する。)を、図面に基づいて説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【0058】
図1は、本発明の実施形態に係るセンサシステム1の概要を示す図である。センサシステム1は、マスタユニット10、第1スレーブユニット20a、第2スレーブユニット20b、第3スレーブユニット20c、第1センサ30a、第2センサ30b、第3センサ30c及びPLC40を備える。ここで、第1センサ30a、第2センサ30b及び第3センサ30cは、ラインLに沿って配置され、ラインL上を搬送されるワークの通過状況を示すデータを測定する複数のセンサに相当する。また、第1スレーブユニット20a、第2スレーブユニット20b、第3スレーブユニット20cは、複数のセンサそれぞれに接続され、複数のセンサにより測定されるデータを取得する複数のスレーブユニットに相当する。より具体的には、第1スレーブユニット20aは第1センサ30aに接続され、第2スレーブユニット20bは第2センサ30bに接続され、第3スレーブユニット20cは第3センサ30cに接続されている。PLC40は、制御装置に相当する。そして、マスタユニット10は、複数のスレーブユニット及び制御装置と接続されているマスタユニットに相当する。本明細書では、第1スレーブユニット20a、第2スレーブユニット20b、第3スレーブユニット20cをスレーブユニット20と総称し、第1センサ30a、第2センサ30b、第3センサ30cをセンサ30と総称する。
【0059】
なお、本実施形態に係るセンサシステム1の構成は一例であり、センサシステム1が備える複数のセンサの数、複数のスレーブユニットの数は任意である。また、制御装置は、必ずしもPLC40でなくてもよい。
【0060】
マスタユニット10は、LAN(Local Area Network)等の通信ネットワークを介してPLC40に接続されてよい。スレーブユニット20は、マスタユニット10に物理的かつ電気的に接続される。本実施形態において、マスタユニット10は、スレーブユニット20から受信した情報を記憶部に記憶し、記憶された情報をPLC40に送信する。従って、スレーブユニット20により取得されたデータは、マスタユニット10によって一元化されてPLC40に伝送される。
【0061】
一例として、スレーブユニット20からマスタユニット10には、判定信号及び検出情報が伝送される。判定信号とは、センサ30により測定されたデータに基づき、スレーブユニット20によって判定された、ワークに関する判定結果を示す信号である。例えばセンサ30が光電センサである場合、判定信号は、センサ30により測定された受光量と閾値とを、スレーブユニット20によって比較して得られるオン信号又はオフ信号であってよい。検出情報は、スレーブユニット20の検出動作によって得られる検出値である。例えばセンサ30が光電センサである場合、検出動作は、投光及び受光の動作であり、検出情報は、受光量であってよい。
【0062】
スレーブユニット20は、マスタユニット10の側面に取り付けられてよい。マスタユニット10とスレーブユニット20との通信には、パラレル通信又はシリアル通信が用いられてよい。すなわち、マスタユニット10と、スレーブユニット20とがシリアル伝送路及びパラレル伝送路で物理的に接続されてよい。例えば、パラレル伝送路上でスレーブユニット20からマスタユニット10に判定信号が送信され、シリアル伝送路上で、スレーブユニット20からマスタユニット10に検出情報が送信されてよい。なお、マスタユニット10とスレーブユニット20とを、シリアル伝送路及びパラレル伝送路のうちのいずれか一方で接続してもよい。
【0063】
図2は、本実施形態に係るマスタユニット10の機能ブロックを示す図である。マスタユニット10は、取得部11、タイマ12、補正部13、記憶部14、判定部15、表示部16及び通信部17を備える。
【0064】
取得部11は、複数のスレーブユニット20からデータを取得する。取得部11は、パラレル伝送路によってスレーブユニット20からワークの通過状況を示す判定信号を取得したり、シリアル伝送路によってスレーブユニット20から複数のセンサ30により測定された検出情報を取得したりしてよい。
【0065】
タイマ12は、時間を測定するものであり、例えば所定の周波数に基づいて時間を測定する電子時計であってよい。タイマ12は、例えば、年月日と時分秒をミリ秒単位で測定するものであってよい。また、タイマ12は、基準時刻からの経過時間を測定するものであってもよい。
【0066】
補正部13は、複数のセンサ30の応答時間及び複数のスレーブユニット20からマスタユニット10への伝送遅延時間の少なくともいずれかに基づき、データが測定されたタイミングに関する情報を補正する。ここで、タイミングに関する情報は、データが測定されたタイミングを表す情報であればどのようなものであってもよく、データが測定された時刻を絶対的に表す情報であってもよいし、データが測定された時刻を相対的に表す情報であってもよい。複数のセンサ30が検出動作を行ってから、ワークの通過を検出して検出情報を出力するまでの間には僅かなタイムラグが生じる。また、複数のスレーブユニット20からマスタユニット10にデータを伝送する際にも僅かなタイムラグが生じる。補正部13は、それらのタイムラグを考慮して、データが測定されたタイミングに関する情報をより正確に記録できるように、タイマ12によって測定された時刻から、複数のセンサ30の応答時間及び複数のスレーブユニット20からマスタユニット10への伝送遅延時間の少なくともいずれかを減算してよい。これにより、複数のセンサ30によりデータが測定されたタイミングに関する情報がより正確に記憶され、ラインL上を搬送されるワークの状態の変化をより高い精度で判定することができる。
【0067】
なお、複数のセンサ30の応答時間は、センサの種類毎に異なり得るため、補正部13は、スレーブユニット20に接続されているセンサ30の種類に応じて、応答時間を調整してよい。また、複数のスレーブユニット20からマスタユニット10への伝送遅延時間は、マスタユニット10から遠いスレーブユニット20ほど長くなるため、データを送信したスレーブユニット20が何段目に接続されているかに応じて、伝送遅延時間を調整してもよい。
【0068】
記憶部14は、複数のスレーブユニット20から取得されたデータと、当該データが複数のセンサ30により測定されたタイミングに関する情報とを関連付けて記憶する。同図では、複数のスレーブユニット20から取得されたデータをセンシングデータ14aと表し、当該データが複数のセンサ30により測定されたタイミングを測定タイミング14bと表している。
【0069】
記憶部14は、タイマ12により測定される時刻と、センシングデータ14aとを関連付けて記憶してよい。なお、記憶部14は、タイマ12により測定される時刻を補正部13により補正した時刻を、センシングデータ14aと関連付けて記憶してよい。このように、複数のスレーブユニット20にタイマを設けずに、マスタユニット10のみにタイマ12を設けることで、簡素な構成によって、複数のセンサ30により測定されたデータと、そのデータが測定されたタイミングに関する情報とを関連付けて記憶することができる。
【0070】
判定部15は、複数のスレーブユニット20のうち2以上のスレーブユニット20から伝送されたデータを、それらのデータが測定されたタイミングに関する情報を用いて比較して、ワークの状態の変化を判定する。より具体的には、あるスレーブユニット20から伝送されたデータと、他のスレーブユニット20から伝送されたデータとの測定タイミングに関する情報を比較して、先に測定されたデータと後に測定されたデータとのずれを検出する。判定部15は、ラインLの搬送速度及び複数のセンサ30の配置に基づいて、ワークが複数のセンサ30の検出範囲を通過すべきタイミングを算出し、先に測定されたデータと後に測定されたデータとの正常なずれを算出して、正常なずれと実際に測定されたデータのずれを比較して、ワークの位置ずれを判定してよい。
【0071】
このように、複数のセンサ30により測定されたデータと、そのデータが測定されたタイミングに関する情報とが関連付けられて記憶されることで、異なるセンサにより測定されたデータがどのような前後関係で測定されたのかが明らかとなり、ラインL上を搬送されるワークの状態の変化を判定することができる。そのため、搬送の過程でワークの状態が変化した場合に、ラインLに関する異常を検知することができる。
【0072】
記憶部14は、ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータと、ワークの状態の変化を示す情報とを含む学習用データを用いた機械学習により生成された学習済みモデル14cを記憶してもよい。ここで、学習用データは、マスタユニット10に記憶されてもよいし、他の装置に記憶されてもよく、学習済みモデルを生成する処理は、マスタユニット10によって実行されてもよいし、他の装置によって実行されてもよい。例えば学習モデルがニューラルネットワークの場合、マスタユニット10又は他の装置は、学習用データに含まれる入力データをニューラルネットワークに入力し、その出力と学習用データに含まれるラベルデータとの差に基づいて、誤差逆伝播法によりニューラルネットワークの重みを更新してよい。なお、学習モデルは、ニューラルネットワークに限られず、回帰モデルであったり、決定木であったりしてよく、任意のアルゴリズムによって機械学習が実行されてよい。
【0073】
判定部15は、少なくとも、ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータとを学習済みモデル14cに入力し、学習済みモデル14cの出力に基づいてワークの状態の変化を判定してよい。なお、学習済みモデル14cによって、ワークの状態が変化したことのみならず、ワークの位置ずれや脱落等の状態変化の種類を判定することとしてもよい。このように、必ずしもラインLの搬送速度及び複数のセンサ30の配置を知らなくても、実測されたデータに基づき生成された学習済みモデル14cによって、ワークの状態が変化したかを判定することができる。
【0074】
表示部16は、判定部15による判定結果を表示する。表示部16は、例えばラインLに関する異常の有無を示す2値のランプであってよく、判定部15による判定結果を詳細に表示する液晶表示装置であってもよい。
【0075】
通信部17は、PLC40との通信を行うインターフェースである。通信部17は、PLC40以外の外部機器との通信を行うものであってもよい。
【0076】
図3は、本実施形態に係るセンサシステム1の物理的構成を示す図である。マスタユニット10は、PLC40との接続に用いられる入力/出力コネクタ101,102と、スレーブユニット20との接続に用いられる接続コネクタ106と、電源入力コネクタとを備える。
【0077】
また、マスタユニット10は、MPU(Micro Processing Unit)110、通信ASIC(Application Specific Integrated Circuit)112、パラレル通信回路116、シリアル通信回路118及び電源回路を備える。
【0078】
MPU110は、マスタユニット10における全ての処理を統括して実行するように動作する。通信ASIC112は、PLC40との通信を管理する。パラレル通信回路116は、マスタユニット10とスレーブユニット20との間でのパラレル通信に用いられる。同様に、シリアル通信回路118は、マスタユニット10とスレーブユニット20との間でのシリアル通信に用いられる。
【0079】
スレーブユニット20は、両側壁部分に、マスタユニット10又は他のスレーブユニット20との接続コネクタ304,306が設けられている。スレーブユニット20は、マスタユニット10に対して一列に複数接続することが可能である。複数のスレーブユニット20からの信号は、隣り合うスレーブユニット20に伝送され、マスタユニット10に伝送される。
【0080】
スレーブユニット20の両側面には、赤外線による光通信用の窓が設けられ、接続コネクタ304,306を利用して複数のスレーブユニット20を一つずつ連結して一列に配置すると、互いに対向する光通信用の窓により、隣り合うスレーブユニット20間で赤外線を利用した双方向光通信が可能となる。
【0081】
スレーブユニット20は、CPU(Central Processing Unit)400によって実現される各種の処理機能と、専用の回路によって実現される各種の処理機能とを有する。
【0082】
CPU400は、投光制御部403を制御し、発光素子(LED)401から赤外線を放出させる。受光素子(PD)402が受光することによって生じた信号は、増幅回路404を介して増幅された後、A/Dコンバータ405を介してデジタル信号に変換されて、CPU400に取り込まれる。CPU400では、受光データ、すなわち受光量をそのまま検出情報としてマスタユニット10に向けて送信する。また、CPU400では、受光量が予め設定された閾値よりも大きいか否かを判定することによって得られるオン信号又はオフ信号を、判定信号としてマスタユニット10に向けて送信する。
【0083】
さらにCPU400は、左右の投光回路411,413を制御することにより、左右の通信用発光素子(LED)407,409から隣接するスレーブユニット20に対して赤外線を放出する。隣接する左右のスレーブユニット20から到来する赤外線は左右の受光素子(PD)406,408で受光された後、受光回路410,412を介しCPU400へと到来する。CPU400では、所定のプロトコルに基づいて、送受信信号を制御することにより、左右の隣接するスレーブユニット20との間で光通信を行なう。
【0084】
受光素子406、通信用発光素子409、受光回路410、投光回路413は、スレーブユニット20間の相互干渉を防止するための同期信号を送受信するために利用される。具体的には、各スレーブユニット20において、受光回路410と投光回路413とは直接結線される。この構成により、受信した同期信号が、CPU400による遅延処理が施されずに速やかに投光回路413を経て通信用発光素子409から隣接する別のスレーブユニット20に送信される。
【0085】
CPU400は、さらに、表示部414を点灯制御する。また、CPU400は、設定スイッチ415からの信号を処理する。CPU400の動作に必要な各種のデータは、EEPROM(Electrically Erasable Programmable Read Only Memory)416等の記録媒体に記憶される。リセット部417から得られた信号は、CPU400へと送られ、計測制御のリセットが行われる。発振器(OSC)418からCPU400には、基準クロックが入力される。
【0086】
出力回路419は、受光量を閾値と比較して得られた判定信号の送信処理を行なう。前述したように、本実施の形態において、判定信号はパラレル通信によってマスタユニット10に向けて送信される。
【0087】
パラレル通信用の伝送路は、マスタユニット10と各スレーブユニット20とが個別に接続された伝送路である。すなわち、複数のスレーブユニット20は、それぞれ、別々のパラレル通信線によって、マスタユニット10に接続される。ただし、マスタユニット10に隣接するスレーブユニット20以外のスレーブユニット20と、マスタユニット10とを接続するパラレル通信線は、他のスレーブユニット20を通過し得る。
【0088】
シリアル通信ドライバ420は、マスタユニット10から送信されたコマンド等の受信処理、検出情報(受光量)の送信処理を行なう。本実施形態においては、シリアル通信にRS-422プロトコルが用いられる。シリアル通信にRS-485プロトコルを利用してもよい。
【0089】
シリアル通信用の伝送路は、マスタユニット10及び全てのスレーブユニット20が接続された伝送路である。すなわち、全てのスレーブユニット20は、マスタユニット10に対して、シリアル通信線によってバス形式で信号伝達可能に接続される。
【0090】
図4は、本実施形態に係るセンサシステム1により測定されるデータの第1例を示す図である。本例では、第1センサ30a、第2センサ30b及び第3センサ30cにより測定されたデータを、時系列順に示している。ここで、第1センサ30aは、これら3つのセンサのうち、ラインLの最も上流に配置されたセンサであり、第3センサ30cは、これら3つのセンサのうち、ラインLの最も下流に配置されたセンサであり、第2センサ30bは、第1センサ30aより下流に配置され、第3センサ30cより上流に配置されたセンサである。本例では、第1センサ30aが設置された箇所と第2センサ30bが設置された箇所との間でラインLに異常があり、搬送の過程でワークに位置ずれが生じている場合に測定されるデータを示している。
【0091】
第1センサ30aにより測定されたデータは、第1データA1及び第2データA2を含む。第1データA1及び第2データA2は、それぞれワークの通過状況を示すデータであり、ワークが第1センサ30aの検出範囲内にある場合に出力されたオン信号である。
【0092】
第2センサ30bにより測定されたデータは、第1データB1及び第2データB2を含む。第1データB1及び第2データB2は、それぞれワークの通過状況を示すデータであり、ワークが第2センサ30bの検出範囲内にある場合に出力されたオン信号である。ここで、第2センサ30bにより測定された第1データB1は、第1センサ30aにより測定された第1データA1と比較して、時間Tだけ遅れている。時間Tは、第1センサ30aと第2センサ30bとの間の距離をラインLの搬送速度で割った値である。
【0093】
一方、第2センサ30bにより測定された第2データB2は、第1センサ30aにより測定された第2データA2と比較して、時間T+δだけ遅れている。
図4では、時間Tだけ遅れて第2データB2が測定された場合に表れる波形B2aを破線で示している。
【0094】
判定部15は、ラインLの搬送速度及び複数のセンサ30の配置に基づいて、ワークが複数のセンサ30の検出範囲を通過すべきタイミングを算出し、複数のセンサ30のうちラインLの上流に配置されたセンサにより測定されたデータと、複数のセンサ30のうちラインLの下流に配置されたセンサにより、通過すべきタイミングにおいて測定されたデータとの比較に基づき、ワークの位置ずれを判定してよい。本例の場合、ラインLが正常に動作していれば、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第2センサ30bにより測定された第2データB2とは、センサの設置間隔とラインLの搬送速度に応じた時間Tの遅れを除いて一致するはずである。判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第2センサ30bにより測定された第2データB2とにδだけ差があることを検出し、δが閾値以上である場合に、ワークに位置ずれが生じていると判定してよい。
【0095】
ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータとを、ワークの搬送による時間遅れを考慮して比較することで、ワークの位置が変化したかを判定することができる。
【0096】
また、判定部15は、ラインLの上流に配置された第1センサ30aにより測定されたデータと、ラインLの下流に配置された第2センサ30bにより測定されたデータと、それらのデータが測定された場合におけるワークの状態の変化を示す情報とを含む学習用データを用いた機械学習により生成された学習済みモデル14cによって、ワークの状態の変化を判定してもよい。本例の場合、判定部15は、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第2センサ30bにより測定された第2データB2とを学習済みモデル14cに入力し、学習済みモデル14cの出力に基づいてワークの位置ずれを判定してよい。ここで、学習済みモデル14cの出力は、ワークの状態に変化が生じている確率であったり、ワークの位置ずれの量であったりしてよい。
【0097】
第3センサ30cにより測定されたデータは、第1データC1及び第2データC2を含む。第1データC1及び第2データC2は、それぞれワークの通過状況を示すデータであり、ワークが第3センサ30cの検出範囲内にある場合に出力されたオン信号である。ここで、第3センサ30cにより測定された第1データC1は、第2センサ30bにより測定された第1データB1と比較して、時間Tだけ遅れている。
【0098】
一方、第3センサ30cにより測定された第2データC2は、第1センサ30aにより測定された第2データA2と比較して、時間2T+δだけ遅れている。
図4では、時間2Tだけ遅れて第2データC2が測定された場合に表れる波形C2aを破線で示している。
【0099】
判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第3センサ30cにより測定された第2データC2とにδだけ差があることを検出し、δが閾値以上である場合に、ワークに位置ずれが生じていると判定してよい。なお、判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第2センサ30bにより測定された第2データB2と、ラインLの下流に配置された第3センサ30cにより測定された第2データC2とにδだけ差があることを検出し、δが閾値以上である場合に、ワークに位置ずれが生じていると判定してもよい。また、判定部15は、第1センサ30a、第2センサ30b及び第3センサ30cにより測定されたデータを学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいてワークの状態の変化を判定してもよい。
【0100】
このように、第2センサ30bにより測定されたデータが、第1センサ30aにより測定されたデータに対してずれている場合、判定部15は、第1センサ30aが設置された箇所と第2センサ30bが設置された箇所の間において、ラインLの搬送装置に異常が存在すると判定してよい。また、判定部15は、第3センサ30cにより測定されたデータのずれが、第2センサ30bにより測定されたデータのずれと同程度である場合、第2センサ30bが設置された箇所と第3センサ30cが設置された箇所の間において、ラインLの搬送装置に異常は存在しないと判定してもよい。
【0101】
なお、ラインは複数あってもよく、ワークを多列搬送するものであってもよい。その場合、判定部15は、それぞれのラインに配置された複数のセンサにより測定されたデータを比較して、それぞれのラインの動作が不安定になっているか否かを判定してもよい。また、判定部15は、複数のラインに配置された複数のセンサにより測定されたデータを学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいてラインの不安定性を判定してもよい。
【0102】
図5は、本実施形態に係るセンサシステム1により測定されるデータの第2例を示す図である。本例における第1センサ30a、第2センサ30b及び第3センサ30cの配置は、
図4に示した第1例と同様である。本例では、第1センサ30aが設置された箇所と第2センサ30bが設置された箇所との間でラインLに異常があり、ワークの搬送速度が慢性的に遅くなって、ワークの流れに滞留が生じている場合に測定されるデータを示している。
【0103】
第1センサ30aにより測定されたデータは、第1データA1、第3データA3、第4データA4、第5データA5及び第6データA6を含む。第1データA1、第3データA3、第4データ、第5データ及び第6データA6は、それぞれワークの通過状況を示すデータであり、ワークが第1センサ30aの検出範囲内にある場合に出力されたオン信号である。ここで、第3データA3の立ち下がりから第4データA4の立ち上がりまでの時間はt1であり、第4データA4の立ち下がりから第5データA5の立ち上がりまでの時間はt2であり、第5データA5の立ち下がりから第6データA6の立ち上がりまでの時間はt3である。
【0104】
第2センサ30bにより測定されたデータは、第1データB1、第3データB3、第4データB4、第5データB5及び第6データB6を含む。第1データB1、第3データB3、第4データB4、第5データB5及び第6データB6は、それぞれワークの通過状況を示すデータであり、ワークが第2センサ30bの検出範囲内にある場合に出力されたオン信号である。ここで、第2センサ30bにより測定された第1データB1は、第1センサ30aにより測定された第1データA1と比較して、時間Tだけ遅れている。時間Tは、第1センサ30aと第2センサ30bとの間の距離をラインLの搬送速度で割った値である。
【0105】
一方、第2センサ30bにより測定された第3データB3、第4データB4、第5データB5及び第6データB6は、第1センサ30aにより測定された第3データB3、第4データB4、第5データB5及び第6データB6と比較して、立ち下がりと立ち上がりの間隔が短く、ほとんど連続して測定されている。すなわち、第3データB3の立ち下がりから第4データB4の立ち上がりまでの時間はほとんど0であり、第4データB4の立ち下がりから第5データB5の立ち上がりまでの時間はほとんど0であり、第5データB5の立ち下がりから第6データB6の立ち上がりまでの時間はほとんど0である。
【0106】
判定部15は、ラインLの搬送速度及び複数のセンサ30の配置に基づいて、ワークが複数のセンサ30の検出範囲を通過すべきタイミングを算出し、複数のセンサ30のうちラインLの上流に配置されたセンサにより測定されたデータと、複数のセンサ30のうちラインLの下流に配置されたセンサにより、通過すべきタイミングにおいて測定されたデータとの比較に基づき、ワークの位置ずれを判定してよい。本例の場合、ラインLが正常に動作していれば、ラインLの上流に配置された第1センサ30aにより測定された第3データA3、第4データA4、第5データA5及び第6データA6の立ち下がりと立ち上がりの間隔と、ラインLの下流に配置された第2センサ30bにより測定された第3データB3、第4データB4、第5データB5及び第6データB6の立ち下がりと立ち上がりの間隔とは、センサの設置間隔とラインLの搬送速度に応じた時間Tの遅れを除いて一致するはずである。判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された波形の間隔と、ラインLの下流に配置された第2センサ30bにより測定された波形の間隔とに差があることを検出し、差が閾値以上である場合に、ワークの位置ずれが生じていると判定してよい。また、判定部15は、第3データB3、第4データB4、第5データB5及び第6データB6の立ち下がりと立ち上がりの間隔がほとんど0であることを検出し、ワークの流れに滞留が生じていると判定してよい。
【0107】
ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータとを、ワークの搬送による時間遅れを考慮して比較することで、搬送の過程でワークの位置が変化したかを判定することができる。また、ラインLの上流に配置されたセンサにより測定されたデータの立ち下がりと立ち上がりの間隔と、ラインLの下流に配置されたセンサにより測定されたデータの立ち下がりと立ち上がりの間隔とを、ワークの搬送による時間遅れを考慮して比較することで、ワークの流れに滞留が生じているかを判定することができる。
【0108】
また、第3センサ30cにより測定されたデータは、第1データC1、第3データC3、第4データC4、第5データC5及び第6データC6を含む。第1データC1、第3データC3、第4データC4、第5データC5及び第6データC6は、それぞれワークの通過状況を示すデータであり、ワークが第3センサ30cの検出範囲内にある場合に出力されたオン信号である。ここで、第3センサ30cにより測定された第1データC1は、第2センサ30bにより測定された第1データB1と比較して、時間Tだけ遅れている。また、第3データC3、第4データC4、第5データC5及び第6データC6は、第2センサ30bにより測定された第3データB3、第4データB4、第5データB5及び第6データB6と同様に、波形の立ち下がりと立ち上がりとの間隔がほとんど0であり、ワークの滞留を示している。
【0109】
このように、第2センサ30bにより測定されたデータが、第1センサ30aにより測定されたデータに対してずれている場合、判定部15は、第1センサ30aが設置された箇所と第2センサ30bが設置された箇所の間において、ラインLの搬送装置に異常が存在すると判定してよい。また、判定部15は、第3センサ30cにより測定されたデータのずれが、第2センサ30bにより測定されたデータのずれと同程度である場合、第2センサ30bが設置された箇所と第3センサ30cが設置された箇所の間において、ラインLの搬送装置に異常は存在しないと判定してもよい。
【0110】
なお、判定部15は、第1センサ30a、第2センサ30b及び第3センサ30cにより測定されたデータを学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいてワークの流れに滞留が生じているかを判定してもよい。また、判定部15は、第1センサ30a、第2センサ30b及び第3センサ30cにより測定されたデータを学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいて、ワークの滞留が生じる確率が比較的高い搬送装置の箇所を判定してもよい。
【0111】
図6は、本実施形態に係るマスタユニット10により実行される第1処理のフローチャートである。はじめに、マスタユニット10は、複数のスレーブユニット20から、複数のセンサ30により測定されたデータを取得する(S10)。そして、タイマ12により測定される時刻を補正部13により補正し(S11)、補正された時刻とセンシングデータとを関連付けて記憶する(S12)。
【0112】
その後、マスタユニット10は、上流に配置されたセンサにより測定されたデータと、下流に配置されたセンサにより測定されたデータとを学習済みモデル14cに入力する(S13)。そして、マスタユニット10は、学習済みモデル14cの出力に基づき、ワークの位置ずれを判定する(S14)。なお、マスタユニット10は、必ずしも学習済みモデルを用いた判定を行わなくてもよく、ラインLの搬送速度及び複数のセンサ30の配置に基づいて、ワークが複数のセンサ30の検出範囲を通過すべきタイミングを算出し、上流に配置されたセンサにより測定されたデータと、下流に配置されたセンサにより、通過すべきタイミングにおいて測定されたデータとのずれを閾値と比較することで、ワークの位置ずれを判定してもよい。
【0113】
最後に、マスタユニット10は、ワークの位置ずれの有無、位置ずれの量を表示部16に表示する(S15)。マスタユニット10は、ラインLの搬送装置のどの箇所に異常が存在すると推定されるかを表示部16に表示してもよい。なお、ワークの位置ずれの有無は、音によって出力することとしてもよい。また、ワークの位置ずれの量及び搬送装置の異常箇所は、PLC40に送信することとしてもよい。
【0114】
図7は、本実施形態に係るセンサシステム1により測定されるデータの第3例を示す図である。本例における第1センサ30a、第2センサ30b及び第3センサ30cの配置は、
図4に示した第1例と同様である。本例では、第2センサ30bが設置された箇所でラインLに異常があり、ワークの搬送速度が一時的に遅くなっている場合に測定されるデータを示している。
【0115】
第1センサ30aにより測定されたデータは、第1データA1及び第7データA7を含む。第1データA1及び第7データA7は、それぞれワークの通過状況を示すデータであり、ワークが第1センサ30aの検出範囲内にある場合に出力されたオン信号である。ここで、第7データA7のオン期間はt4である。
【0116】
第2センサ30bにより測定されたデータは、第1データB1及び第7データB7を含む。第1データB1及び第7データB7は、それぞれワークの通過状況を示すデータであり、ワークが第2センサ30bの検出範囲内にある場合に出力されたオン信号である。ここで、第2センサ30bにより測定された第1データB1は、第1センサ30aにより測定された第1データA1と比較して、時間Tだけ遅れている。時間Tは、第1センサ30aと第2センサ30bとの間の距離をラインLの搬送速度で割った値である。
【0117】
一方、第2センサ30bにより測定された第7データB7は、オン期間がt5であり、第1センサ30aにより測定された第7データA7と比較して、オン期間が長い。
【0118】
判定部15は、ラインLの上流に配置されたセンサによりワークが検出された期間と、ラインLの下流に配置されたセンサによりワークが検出された期間との差に基づき、ワークの搬送速度の変化を判定してよい。本例の場合、ラインLが正常に動作していれば、ラインLの上流に配置された第1センサ30aにより測定された第7データA7のオン期間t4と、ラインLの下流に配置された第2センサ30bにより測定された第7データB7のオン期間t5とは、等しいはずである。判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第7データA7のオン期間と、ラインLの下流に配置された第2センサ30bにより測定された第7データB7のオン期間とに差があることを検出し、差が閾値以上である場合に、ワークの搬送速度に変化があると判定してよい。
【0119】
このように、ラインLの上流に配置されたセンサによりワークが検出された期間と、ラインLの下流に配置されたセンサによりワークが検出された期間とを比較することで、ワークの搬送速度が変化したかを判定することができる。
【0120】
第3センサ30cにより測定されたデータは、第1データC1及び第2データC2を含む。第1データC1及び第2データC2は、それぞれワークの通過状況を示すデータであり、ワークが第3センサ30cの検出範囲内にある場合に出力されたオン信号である。ここで、第3センサ30cにより測定された第1データC1は、第2センサ30bにより測定された第1データB1と比較して、時間Tだけ遅れている。
【0121】
一方、第3センサ30cにより測定された第2データC2は、第1センサ30aにより測定された第2データA2と比較して、時間2T+δだけ遅れている。
図7では、時間2Tだけ遅れて第2データC2が測定された場合に表れる波形C2aを破線で示している。ここで、第3センサ30cにより測定された第2データC2のオン期間はt4であり、第1センサ30aにより測定された第2データA2のオン期間と同じである。また、t5=t4+δである。
【0122】
判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第3センサ30cにより測定された第2データC2とにδだけ差があることを検出し、δが閾値以上である場合に、ワークに位置ずれが生じていると判定してよい。
【0123】
このように、第2センサ30bにより測定されたデータのオン期間が、第1センサ30aにより測定されたデータのオン期間に対してずれている場合、判定部15は、第2センサ30bが設置された箇所において、ラインLの搬送装置に異常が存在すると判定してよい。また、判定部15は、第3センサ30cにより測定されたデータのオン期間が、第1センサ30aにより測定されたデータのオン期間と同程度であり、第3センサ30cにより測定されたデータのずれとオン期間の和が、第2センサ30bにより測定されたデータのオン期間と同程度である場合、第2センサ30bが設置された箇所と第3センサ30cが設置され箇所の間において、ラインLの搬送装置に異常は存在しないと判定してもよい。
【0124】
なお、判定部15は、第1センサ30a、第2センサ30b及び第3センサ30cによりワークが検出された期間を学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいてワークの搬送速度の変化を判定してもよい。その場合、判定部15は、学習済みモデル14cによって、ワークの搬送速度の変化量を判定してもよい。
【0125】
図8は、本実施形態に係るマスタユニット10により実行される第2処理のフローチャートである。はじめに、マスタユニット10は、複数のスレーブユニット20から、複数のセンサ30により測定されたデータを取得する(S20)。そして、タイマ12により測定される時刻を補正部13により補正し(S21)、補正された時刻とセンシングデータとを関連付けて記憶する(S22)。
【0126】
その後、マスタユニット10は、上流に配置されたセンサによりワークが検出された期間と、下流に配置されたセンサによりワークが検出された期間との差を算出する(S23)。そして、マスタユニット10は、検出期間の差に基づき、ワークの搬送速度の変化を判定(S24)。なお、マスタユニット10は、上流に配置されたセンサによりワークが検出された期間と、下流に配置されたセンサによりワークが検出された期間とを学習済みモデルに入力し、学習済みモデルの出力に基づき、ラインに関する異常の有無を判定してもよい。
【0127】
最後に、マスタユニット10は、ワークの搬送速度の変化の有無、変化量を表示部16に表示する(S25)。マスタユニット10は、ラインLの搬送装置のどの箇所に異常が存在すると推定されるかを表示部16に表示してもよい。なお、ワークの搬送速度の変化の有無は、音によって出力することとしてもよい。また、ワークの搬送速度の変化及び変化量をPLC40に送信することとしてもよい。
【0128】
図9は、本実施形態に係るセンサシステム1により測定されるデータの第4例を示す図である。本例における第1センサ30a、第2センサ30b及び第3センサ30cの配置は、
図4に示した第1例と同様である。本例では、第1センサ30aが設置された箇所と、第2センサ30bが設置された箇所との間でラインLに異常があり、ワークが脱落した場合に測定されるデータを示している。
【0129】
第1センサ30aにより測定されたデータは、第1データA1及び第2データA2を含む。第1データA1及び第2データA2は、それぞれワークの通過状況を示すデータであり、ワークが第1センサ30aの検出範囲内にある場合に出力されたオン信号である。
【0130】
第2センサ30bにより測定されたデータは、第1データB1を含み、第1データB1は、ワークの通過状況を示すデータであり、ワークが第2センサ30bの検出範囲内にある場合に出力されたオン信号である。ここで、第2センサ30bにより測定された第1データB1は、第1センサ30aにより測定された第1データA1と比較して、時間Tだけ遅れている。時間Tは、第1センサ30aと第2センサ30bとの間の距離をラインLの搬送速度で割った値である。
【0131】
一方、第2センサ30bにより測定されたデータは、第2データA2に対応するデータを含まない。
図9では、時間Tだけ遅れて第2データA2に対応するデータが測定された場合に表れる波形B2aを破線で示している。
【0132】
判定部15は、ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータとの対応関係に基づき、ワークの脱落を判定してよい。本例の場合、ラインLが正常に動作していれば、ラインLの上流に配置された第1センサ30aにより測定された第2データA2に対応して、ラインLの下流に配置された第2センサ30bによって、波形B2aに相当するデータが測定されるはずである。判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第2センサ30bにより測定されたデータとの対応関係を検出し、第2センサ30bによって第2データA2に対応するデータが測定されていない場合に、ワークの脱落が生じたと判定してよい。なお、ワークの脱落とは、ラインLからワークが落下した場合のみならず、ワークが横倒しになって搬送されたり、ワークが異常な姿勢となって搬送されたりしている場合も含む。
【0133】
このように、ラインLの上流に配置されたセンサにより測定されたデータと、ラインLの下流に配置されたセンサにより測定されたデータとが一対一に対応しない場合に、ワークの脱落が生じていると判定することができる。
【0134】
第3センサ30cにより測定されたデータは、第1データC1を含み、第1データC1は、ワークの通過状況を示すデータであり、ワークが第3センサ30cの検出範囲内にある場合に出力されたオン信号である。ここで、第3センサ30cにより測定された第1データC1は、第2センサ30bにより測定された第1データB1と比較して、時間Tだけ遅れている。
【0135】
一方、第3センサ30cにより測定されたデータは、第2データA2に対応するデータを含まない。
図9では、時間Tだけ遅れて第2データA2に対応するデータが測定された場合に表れる波形C2aを破線で示している。
【0136】
判定部15は、時間Tの遅れを考慮して、ラインLの上流に配置された第1センサ30aにより測定された第2データA2と、ラインLの下流に配置された第3センサ30cにより測定された第2データC2とが一対一に対応しないことを検出し、ワークの脱落が生じたと判定してよい。
【0137】
このように、第2センサ30bにより測定されたデータのオン信号の数が、第1センサ30aにより測定されたデータのオン信号の数よりも少ない場合、判定部15は、第1センサ30aが設置された箇所と、第2センサ30bが設置された箇所との間でワークが脱落したと判定してよい。また、判定部15は、第3センサ30cにより測定されたデータのオン信号の数が、第2センサ30bにより測定されたデータのオン信号の数と等しい場合、第2センサ30bが設置された箇所と第3センサ30cが設置され箇所の間において、ラインLの搬送装置に異常は存在しないと判定してもよい。
【0138】
なお、判定部15は、第1センサ30a、第2センサ30b及び第3センサ30cによりワークが検出された期間を学習済みモデル14cに入力して、学習済みモデル14cの出力に基づいてワークの脱落を判定してもよい。その場合、判定部15は、学習済みモデル14cによって、ワークの脱落が生じたラインLの箇所を判定してもよい。
【0139】
図10は、本実施形態に係るマスタユニット10により実行される第3処理のフローチャートである。はじめに、マスタユニット10は、複数のスレーブユニット20から、複数のセンサ30により測定されたデータを取得する(S30)。そして、タイマ12により測定される時刻を補正部13により補正し(S31)、補正された時刻とセンシングデータとを関連付けて記憶する(S32)。
【0140】
その後、マスタユニット10は、上流に配置されたセンサにより測定されたデータと、下流に配置されたセンサにより測定されたデータとの対応関係を特定する(S33)。そして、マスタユニット10は、データの対応関係に基づき、ワークの脱落を判定する(S34)。なお、マスタユニット10は、上流に配置されたセンサにより測定されたデータと、下流に配置されたセンサにより測定されたデータとを学習済みモデルに入力し、学習済みモデルの出力に基づき、ワークの脱落を判定してもよい。
【0141】
最後に、マスタユニット10は、ワークの脱落の有無を表示部16に表示する(S35)。マスタユニット10は、ラインLの搬送装置のどの箇所に異常が存在すると推定されるかを表示部16に表示してもよい。なお、ワークの脱落の有無は、音によって出力することとしてもよいし、PLC40に送信することとしてもよい。
【0142】
図11は、本実施形態に係るマスタユニット10により実行される第4処理のフローチャートである。同図に示す処理は、マスタユニット10により学習用データを収集し、学習済みモデルを生成する処理である。
【0143】
はじめに、マスタユニット10は、複数のスレーブユニット20から、複数のセンサ30により測定されたデータを取得する(S40)。そして、タイマ12により測定される時刻を補正部13により補正し(S41)、補正された時刻とセンシングデータとを関連付けて記憶する(S42)。
【0144】
その後、マスタユニット10は、上流に配置されたセンサにより測定されたデータと、下流に配置されたセンサにより測定されたデータと、ワークの状態の変化を示す情報を含む学習用データを生成する(S43)。そして、マスタユニット10は、学習用データを用いた機械学習により生成された学習済みモデルを記憶する(S44)。なお、学習用データを用いた学習モデルの機械学習は、マスタユニット10により実行されてもよいし、他の装置によって実行されてもよい。
【0145】
図12は、本実施形態の第1変形例に係るセンサシステム1Aの機能ブロックを示す図である。第1変形例に係るセンサシステム1Aは、マスタユニット10がタイマを有さず、トリガ発信部18を有し、第1スレーブユニット20aがタイマ21aを有し、第2スレーブユニット20bがタイマ21bを有し、第3スレーブユニット20cがタイマ21cを有する点で、センサシステム1と相違する。それ以外の構成について、第1変形例に係るセンサシステム1Aは、センサシステム1と同様の構成を有する。
【0146】
トリガ発信部18は、時刻の基準となるトリガ信号を複数のスレーブユニット20に対して発信する。ここで、トリガ信号は、時刻の基準となるものであればどのようなものであってもよい。
【0147】
複数のスレーブユニット20は、それぞれタイマ21a,21b,21cを有し、トリガ信号を受信してからの経過時間をタイマ21a,21b,21cにより測定し、経過時間を複数のセンサ30により測定されたデータとともにマスタユニット10に伝送する。そして、マスタユニット10の記憶部14は、複数のスレーブユニット20から受信した経過時間と、データとを関連付けて記憶する。
【0148】
このようにして、マスタユニット10にタイマを設けずに、複数のセンサ30により測定されたデータと、そのデータが測定されたタイミングに関する情報とを関連付けて記憶することができる。
【0149】
図13は、本実施形態の第2変形例に係るセンサシステム1Bの機能ブロックを示す図である。第2変形例に係るセンサシステム1Bは、マスタユニット10がタイマを有さず、第1スレーブユニット20aがタイマ21aを有し、第2スレーブユニット20bがタイマ21bを有し、第3スレーブユニット20cがタイマ21cを有する点で、センサシステム1と相違する。それ以外の構成について、第2変形例に係るセンサシステム1Bは、センサシステム1と同様の構成を有する。
【0150】
複数のスレーブユニット20は、複数のスレーブユニット20間で同期するタイマ21a,21b,21cをそれぞれ有し、タイマ21a,21b,21cにより測定される時刻を複数のセンサ30により測定されたデータとともにマスタユニット10に伝送する。ここで、タイマ21a,21b,21cの同期は、隣り合うスレーブユニット20間で行われてよい。記憶部14は、タイマ21a,21b,21cにより測定された時刻と、データとを関連付けて記憶する。
【0151】
このようにして、マスタユニット10の処理負荷を減らして、複数のセンサ30により測定されたデータと、そのデータが測定されたタイミングに関する情報とを関連付けて記憶することができる。
【0152】
図14は、本実施形態の第3変形例に係るセンサシステム1Cの機能ブロックを示す図である。第3変形例に係るセンサシステム1Cは、マスタユニット10がタイマを有さず、PLC40がタイマ41を有する点で、センサシステム1と相違する。それ以外の構成について、第3変形例に係るセンサシステム1Cは、センサシステム1と同様の構成を有する。
【0153】
マスタユニット10は、時刻の基準となる信号を外部機器から受信する受信部を有する。本変形例の場合、マスタユニット10は、時刻の基準となる信号をPLC40から受信する通信部17を有する。なお、時刻の基準となる信号は、PLC40のタイマ41で測定された時刻であってよい。記憶部14は、時刻の基準となる信号に基づき算出される時刻と、複数のセンサ30により測定されたデータとを関連付けて記憶する。
【0154】
これにより、複数のスレーブユニット20及びマスタユニット10にタイマを設けずに、複数のセンサ30により測定されたデータと、そのデータが測定されたタイミングに関する情報とを関連付けて記憶することができる。
【0155】
図15は、本実施形態の第4変形例に係るセンサシステム1Dの機能ブロックを示す図である。第4変形例に係るセンサシステム1Dは、マスタユニット10が対応部19を有する点で、センサシステム1と相違する。それ以外の構成について、第4変形例に係るセンサシステム1Dは、センサシステム1と同様の構成を有する。
【0156】
第4変形例に係るセンサシステム1Dにより測定されるデータは、ラインL上を搬送されるワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データである。本例では、ワークがセンサ30の検出範囲に侵入する際にセンシングデータとして立ち上がり波形が出力され、ワークがセンサ30の検出範囲から抜け出る際にセンシングデータとして立ち下がり波形が出力される。
【0157】
対応部19は、複数のスレーブユニット20のうち2以上のスレーブユニットにより取得された時系列データに含まれる立ち上がり波形の間隔又は立ち下がり波形の間隔に基づいて、同一のワークに関して2以上のスレーブユニットにより取得された立ち上がり波形又は立ち下がり波形を対応付ける。対応部19によって同一のワークに関して2以上のスレーブユニットにより取得された立ち上がり波形又は立ち下がり波形を対応付けることで、複数のセンサ30により測定された時系列データの適切な比較が可能となり、ラインL上を搬送されるワークの状態の変化を適切に判定することができる。
【0158】
図16は、本実施形態の第4変形例に係るセンサシステム1Dにより測定されるデータの第5例を示す図である。本例における第1センサ30a、第2センサ30b及び第3センサ30cの配置は、
図4に示した第1例と同様である。本例では、第2センサ30bが設置された箇所でラインLの搬送速度が一時的に遅くなり、第2センサ30bの検出範囲をワークが通過する際に測定される波形の幅が、第1センサ30a及び第3センサ30cの検出範囲をワークが通過する際に測定される波形の幅より広い。なお、本例において第2センサ30bが設置された箇所でラインLの搬送速度が一時的に遅くなることは正常であるものとする。
【0159】
第1センサ30aにより測定されたデータは、ワークが第1センサ30aの検出範囲を通過する際に出力された6つの矩形波を含み、それぞれ立ち上がり波形と立ち上がり波形を含む。6つの矩形波は、それぞれ異なるワークに対応する。なお、本例では、立ち上がり波形と立ち下がり波形をほぼ垂直な直線により表しているが、実際には曲線であってよい。
【0160】
対応部19は、複数のスレーブユニット20のうち第1スレーブユニット20aにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔と、複数のスレーブユニット20のうち第2スレーブユニット20bにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔との差の平均値が小さくなるように、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形とを対応付けてもよい。
【0161】
本例では、第1スレーブユニット20aにより取得された立ち上がり波形の間隔は、TA1、TA2、TA3、TA4及びTA5である。また、第2スレーブユニット20bにより取得された立ち上がり波形の間隔は、TB1、TB2、TB3、TB4、TB5及びTB6である。そして、立ち上がり波形の間隔の差の平均値は、|TA1-TB6|であったり、(|TA1-TB5|+|TA2-TB6|)/2であったり、(|TA1-TB4|+|TA2-TB5|+|TA3-TB6|)/3であったり、(|TA1-TB3|+|TA2-TB4|+|TA3-TB5|+|TA4-TB6|)/4であったり、(|TA1-TB2|+|TA2-TB3|+|TA3-TB4|+|TA4-TB5|+|TA5-TB6|)/5であったりしてよい。対応部19は、このように、2つのセンサ30により測定された立ち上がり波形又は立ち下がり波形の間隔の差を算出して、その平均値が小さくなる組み合わせを探索する。本例の場合、(|TA1-TB2|+|TA2-TB3|+|TA3-TB4|+|TA4-TB5|+|TA5-TB6|)/5が最も小さくなるため、対応部19は、第1センサ30aにより測定された第10データA10の立ち上がり波形と、第2センサ30bにより測定された第10データB10の立ち上がり波形とを対応付け、その後に測定される立ち上がり波形を順次対応付ける。
【0162】
同様に、第3スレーブユニット20cにより取得された立ち上がり波形の間隔は、TC1、TC2、TC3、TC4、TC5、TC6及びTC6である。そして、第1スレーブユニット20aにより取得された立ち下がり波形の間隔と第3スレーブユニット20cにより取得された立ち上がり波形の間隔の差の平均値は、|TA1-TC7|であったり、(|TA1-TC6|+|TA2-TC7|)/2であったり、(|TA1-TC5|+|TA2-TC6|+|TA3-TC7|)/3であったり、(|TA1-TC4|+|TA2-TC5|+|TA3-TC6|+|TA4-TC7|)/4であったり、(|TA1-TC3|+|TA2-TC4|+|TA3-TC5|+|TA4-TC6|+|TA5-TC7|)/5であったりしてよい。本例の場合、(|TA1-TC3|+|TA2-TC4|+|TA3-TC5|+|TA4-TC6|+|TA5-TC7|)/5が最も小さくなるため、対応部19は、第1センサ30aにより測定された第10データA10の立ち上がり波形と、第3センサ30cにより測定された第10データC10の立ち上がり波形とを対応付け、その後に測定される立ち上がり波形を順次対応付ける。
【0163】
このようにして、2つのセンサ30により測定された立ち上がり波形又は立ち下がり波形の間隔の差の平均値を評価値とすることで、ラインLの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサ30により測定された時系列データを適切に対応付けることができる。
【0164】
立ち上がり波形又は立ち下がり波形の対応付けが行えることで、マスタユニット10は、2つのセンサ30の間をワークが通過する時間を算出することもできる。また、マスタユニット10は、算出した通過時間を表示部16に表示して、その妥当性をユーザに確認させ、ひいては立ち上がり波形又は立ち下がり波形の対応付けの妥当性をユーザに確認させることができる。さらに、マスタユニット10は、2つのセンサ30の配置間隔が既知である場合に、ラインLの平均搬送速度を算出して、表示部16に表示し、その妥当性をユーザに確認させることもできる。反対に、マスタユニット10は、予めユーザから2つのセンサ30の間をワークが通過する時間の概算値の入力を受け付けて、対応部19によって立ち上がり波形又は立ち下がり波形の間隔の差の平均値を算出する組み合わせを限定してもよく、これにより演算負荷を低減することができる。また、マスタユニット10は、複数のセンサ30により同一のワークを測定した場合の波形の幅に基づいて、ラインLの局所的な搬送速度を算出することもできる。これにより、順に並んで配置された2つのセンサ30について、上流のセンサ30によりワークが検出されてから、下流のセンサ30によりワークが検出されるまでの時間を予測することができ、予測した時間と実測した時間の差を算出することもできる。
【0165】
対応部19は、複数のスレーブユニット20のうち選択された一部について、立ち上がり波形又は立ち下がり波形の対応付けを行ってもよい。本例の場合、対応部19は、第1スレーブユニット20a、第2スレーブユニット20b及び第3スレーブユニット20cのうち、選択された2つのスレーブユニットについて、立ち上がり波形又は立ち下がり波形の対応付けを行ってもよい。このように、対応付けを実行するスレーブユニット20を選択することで、必ずしも必要でないデータの対応付けを省略して、処理負荷を低減することができる。
【0166】
また、対応部19は、第1スレーブユニット20aに接続されている第1センサ30aが、第2スレーブユニット20bに接続されている第2センサ30bよりラインLの上流に配置されている場合、第1スレーブユニット20aにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔と、その後に第2スレーブユニット20bにより取得された立ち上がり波形の間隔又は立ち下がり波形の間隔との差の平均値が小さくなるように、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形とを対応付けてもよい。言い換えると、対応部19は、第1センサ30aにより測定された立ち上がり波形又は立ち下がり波形の間隔と、第1センサ30aによる測定のタイミングより後に第2センサ30bにより測定された立ち上がり波形又は立ち下がり波形の間隔との差の平均値を小さくなるように、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形とを対応付けてもよい。
【0167】
具体的には、対応部19は、(|TA2-TB1|+|TA3-TB2|+|TA4-TB3|+|TA5-TB4|)/4であったり、(|TA3-TB1|+|TA4-TB2|+|TA5-TB3|)/3であったり、(|TA4-TB1|+|TA5-TB2|)/2であったり、|TA5-TB1|であったりを評価する必要がなく、これらの平均値は算出しなくてもよい。また、対応部19は、(|TA2-TC1|+|TA3-TC2|+|TA4-TC3|+|TA5-TC4|)/4であったり、(|TA3-TC1|+|TA4-TC2|+|TA5-TC3|)/3であったり、(|TA4-TC1|+|TA5-TC2|)/2であったり、|TA5-TC1|であったりを評価する必要がなく、これらの平均値は算出しなくてもよい。
【0168】
このように、複数のセンサ30の配置に応じて算出すべき平均値の組み合わせを制限することで、演算負荷を低減することができる。
【0169】
また、対応部19は、平均値を算出するための項数が所定数以上となる組み合わせの中から、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。対応部19は、例えば、平均値を算出するための項数が3以上となる組み合わせの中から、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。
【0170】
これにより、立ち上がり波形又は立ち下がり波形の対応付けを誤る確率を低減させることができ、より適切な対応付けが行われるようにすることができる。
【0171】
2つのセンサ30により測定された立ち上がり波形又は立ち下がり波形の間隔の差の平均値が、差を算出する異なる組み合わせについて等しい場合があり得る。例えば、(|TA1-TB5|+|TA2-TB6|)/2と、(|TA1-TB4|+|TA2-TB5|+|TA3-TB6|)/3とが等しい値となることがあり得る。そのような場合、対応部19は、平均値を算出するための項数が多くなるように、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。すなわち、上記の例であれば、(|TA1-TB4|+|TA2-TB5|+|TA3-TB6|)/3を採用して、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との対応付けを行ってもよい。
【0172】
このようにして、多数のデータを用いた対応付けを優先させて、対応付けの信頼性を向上させることができる。
【0173】
図17は、本実施形態の第4変形例に係るマスタユニット10により実行される第5処理のフローチャートである。はじめに、マスタユニット10は、複数のスレーブユニット20から、複数のセンサ30により測定されたデータを取得する(S50)。そして、タイマ12により測定される時刻を補正部13により補正し(S51)、補正された時刻とセンシングデータとを関連付けて記憶する(S52)。
【0174】
その後、マスタユニット10は、上流の第1スレーブユニット20aから取得した立ち上がり波形の間隔と、その後に下流の第2スレーブユニット20bから取得した立ち上がり波形の間隔との差の平均値を算出する(S53)。
【0175】
算出された平均値の項数が所定数以上である場合(S54:YES)、マスタユニット10は、平均値が最小となる組み合わせが一意に定まるか否かを判定する(S55)。平均値が最小となる組み合わせが一意に定まる場合(S55:YES)、マスタユニット10は、平均値が最小となる組み合わせにより、立ち上がり波形を対応付ける(S56)。一方、平均値が最小となる組み合わせが一意に定まらない場合(S55:NO)、マスタユニット10は、平均値が最小かつ平均値を算出するための項数が最大となる組み合わせにより、立ち上がり波形を対応付ける(S57)。なお、算出された平均値の項数が所定数以上でない場合(S54:NO)データの蓄積を待って、再び対応付けを実行してよい。
【0176】
図18は、本実施形態の第4変形例に係るマスタユニット10により実行される第6処理のフローチャートである。はじめに、マスタユニット10は、ラインLに関する異常の有無を判定する(S60)。ラインLに関する異常の有無を判定(S60)は、例えば
図6に示す第1処理であってよい。
【0177】
対応部19は、判定部15によりワークの状態が変化したと所定期間にわたって判定され続けた場合に、立ち上がり波形又は立ち下がり波形の対応付けを行ってもよい。本例では、所定期間にわたって異常と判定されない場合(S61:NO)、ラインLに関する異常の有無の判定(S60)を繰り返して、所定期間にわたって異常と判定された場合(S61:YES)、マスタユニット10は、立ち上がり波形の対応付けを実行する(S62)。このようにして、立ち上がり波形の対応付けが不適切であるために、ラインLに異常が有ると誤って判定され続けている場合に、自動的に立ち上がり波形の対応付けを修正することができ、ラインLの状態を正しく判定できるようになる。
【0178】
最後に、マスタユニット10は、対応付けの処理(S62)を実行中であることを表示部16に表示する(S63)。これにより、マスタユニット10が一時的にワークの状態を判定することができない状態にあることを視覚的に伝えることができる。なお、マスタユニット10は、対応付けの処理(S62)を実行している間、判定部15による判定処理を実行しなくてもよいが、複数のスレーブユニット20は、複数のセンサ30からのデータ取得を継続してよい。
【0179】
図19は、本実施形態の第5変形例に係るセンサシステム1Eにより測定されるデータの第6例を示す図である。第5変形例に係るセンサシステム1Eは、ラインL上を搬送されるワークの通過状況に応じた立ち上がり波形又は立ち下がり波形を含む時系列データを取得する。同図では、第1センサ30aにより測定されたデータを実線で示し、第2センサ30bにより測定されたデータを破線で示し、第2センサ30bにより測定されたデータをT
ABだけシフトしたデータを実線で示している。なお、本実施形態の第5変形例に係るセンサシステム1Eは、センサシステム1と同様の構成を有する。
【0180】
判定部15は、複数のスレーブユニット20のうち第1スレーブユニット20aにより取得された時系列データと、複数のスレーブユニット20のうち第2スレーブユニット20bにより取得された時系列データとのいずれか一方を所定の時間シフトして比較して、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との時間差に基づいて、ワークの状態の変化を判定してもよい。判定部15は、
図19に示すように、第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形とを揃えるように、第2センサ30bにより測定されたデータをT
ABだけシフトしてよい。ここで、シフト量T
ABは、予め設定されてもよいし、ラインLにテストワークを流して決定してもよい。判定部15は、シフト後のデータに含まれる立ち上がり波形の立ち上がりタイミングを比較して、タイミングにずれが生じていたり、立ち下がり波形の対応付けができなかったりする場合に、ワークの状態に変化が生じていると判定してよい。
【0181】
図20は、本実施形態の第5変形例に係るセンサシステム1Eにより測定されるデータの第7例を示す図である。同図では、第2センサ30bにより測定されたデータをT
ABだけシフトした後のデータを示している。また、同図では、データを、第1区間Int1、第2区間Int2、第3区間Int3、第4区間Int4及び第5区間Int5に分割して示している。
【0182】
判定部15は、複数のスレーブユニット20のうち第1スレーブユニット20aにより取得された時系列データと、複数のスレーブユニット20のうち第2スレーブユニット20bにより取得された時系列データとのいずれか一方を所定の時間シフトし、1以下の立ち上がり波形又は立ち下がり波形が含まれるように、それぞれの時系列データを複数の区間に分割してもよい。すなわち、判定部15は、一区間に、立ち上がり波形又は立ち上がり波形が一つ含まれるか、立ち上がり波形又は立ち上がり波形が含まれないように、時系列データを分割してよい。これにより、複数の区間毎に時系列データの比較を行い、ワークの状態の変化を判定することができる。本例の場合、第1区間Int1、第3区間Int3及び第5区間Int5には、第1センサ30aにより測定された立ち上がり波形及び第2センサ30bにより測定された立ち上がり波形がそれぞれ1つ含まれ、第2区間Int2及び第4区間Int4には、第1センサ30aにより測定された立ち上がり波形及び第2センサ30bにより測定された立ち上がり波形がいずれも含まれない。
【0183】
判定部15は、第3区間Int3に含まれる第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形との時間差(TA-TB)に基づいて、ワークの状態の変化を判定してよい。判定部15は、第2センサ30bにより測定されたデータをTABだけシフトした後、第3区間Int3に含まれる第1センサ30aにより測定されたデータの立ち上がり波形のタイミングTAと、第3区間Int3に含まれる第2センサ30bにより測定されたデータの立ち上がり波形のタイミングTBとの間の差(TA-TB)が閾値TH以上である場合に、ラインL上でワークの位置ずれが発生したと判定してよい。このようにして、ラインLの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサ30により測定された時系列データを適切に比較して、データのずれを検出することができる。
【0184】
図21は、本実施形態の第5変形例に係るマスタユニット10により実行される第7処理のフローチャートである。はじめに、マスタユニット10は、第2センサ30bにより測定されたデータを所定時間シフトする(S70)。なお、マスタユニット10は、複数のセンサ30により測定されたデータのうちいずれかを基準として、他のデータの立ち上がり波形が基準とするデータの立ち上がり波形と合うように、他のデータをシフトしてもよい。
【0185】
マスタユニット10は、シフト後のデータを複数の区間に分割して、一区間内において、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1であるか否かを判定する(S71)。ここで、オン数とは、センサ30によりワークが検出されたことを表す信号が得られた回数である。一区間内において、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1である場合(S71:YES)、マスタユニット10は、その区間における第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形との差が閾値以上であるか(|TA-TB|≧TH)判定する(S72)。差が閾値以上である場合(S72:YES)、マスタユニット10は、ワークに位置ずれ有りと判定し(S73)、外部に警告を出力したり、表示部16に位置ずれが生じている旨を表示したりする。一方、差が閾値以上でない場合(S72:NO)、マスタユニット10は、ワークに位置ずれが生じていないと判定する(S74)。
【0186】
一方、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1でない場合(S71:NO)、マスタユニット10は、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0であるか否かを判定する(S75)。判定部15は、第1スレーブユニット20aに接続されている第1センサ30aが、第2スレーブユニット20bに接続されている第2センサ30bよりラインLの上流に配置されている場合、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインLから脱落したと判定してもよい。ここで、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0である場合(S75:YES)、上流の第1スレーブユニット20aによりワークが検出されているが、下流の第2スレーブユニット20bによりワークが検出されていないため、マスタユニット10は、ワークが脱落したと判定し(S76)、外部に警告を出力したり、表示部16に脱落が生じている旨を表示したりする。これにより、ラインLの上流に配置されたセンサ30によりワークが検出されているが、ラインLの下流に配置されたセンサ30によりワークが検出されない場合を特定し、ワークの脱落が生じていると判定することができる。
【0187】
一方、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0でない場合(S75:NO)、マスタユニット10は、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1であるか否かを判定する(S77)。判定部15は、第1スレーブユニット20aに接続されている第1センサ30aが、第2スレーブユニット20bに接続されている第2センサ30bよりラインLの上流に配置されている場合、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインLに混入したと判定してもよい。ここで、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1である場合(S77:YES)、上流の第1スレーブユニット20aによりワークが検出されていないが、下流の第2スレーブユニット20bによりワークが検出されているため、マスタユニット10は、ワークが混入したと判定し(S78)、外部に警告を出力したり、表示部16に混入が生じている旨を表示したりする。これにより、ラインLの上流に配置されたセンサ30によりワークが検出されていないが、ラインLの下流に配置されたセンサ30によりワークが検出されている場合を特定し、ワークの混入が生じていると判定することができる。
【0188】
さらに、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1でない場合(S77:NO)、マスタユニット10は、第1センサ30aのオン数=0かつ第2センサ30bのオン数=0であるか否かを判定する(S79)。第1センサ30aのオン数=0かつ第2センサ30bのオン数=0である場合(S79)、マスタユニット10は、ワークが無いと判定する(S80)。一方、第1センサ30aのオン数=0かつ第2センサ30bのオン数=0でない場合(S79:NO)、設定した区間の幅が広すぎるため、マスタユニット10は、区間幅を狭める(S81)。マスタユニット10は、その後、処理S71以降を繰り返してよい。
【0189】
図22は、本実施形態の第5変形例に係るセンサシステム1Eにより測定されるデータの第8例を示す図である。同図では、第2センサ30bにより測定されたデータをT
ABだけシフトした後のデータを示している。また、同図では、データを、第1区間Int1、第2区間Int2、第3区間Int3、第4区間Int4及び第5区間Int5に分割して示している。
【0190】
判定部15は、複数の区間のうち第1区間Int1に含まれる第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第1区間Int1に含まれる第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との第1時間差(TA1-TB1)及び複数の区間のうち第3区間Int3に含まれる第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形と、第3区間Int3に含まれる第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形との第2時間差(TA2-TB2)を算出し、第1時間差と第2時間差の差|(TA1-TB1)-(TA2-TB2)|に基づいて、ワークの状態の変化を判定してもよい。判定部15は、第1時間差と第2時間差の差|(TA1-TB1)-(TA2-TB2)|が閾値TH以上である場合に、ラインL上でワークの位置ずれが発生したと判定してよい。このようにして、ラインLの搬送速度が一時的に遅くなったり、速くなったりする場合であっても、2つのセンサ30により測定された時系列データを適切に比較して、データのずれを検出することができる。また、このような方法で判定を行うことで、ラインLの搬送速度を徐々に変えた場合であっても、誤って異常と判定されることがなくなる。
【0191】
図23は、本実施形態の第5変形例に係るマスタユニット10により実行される第8処理のフローチャートである。はじめに、マスタユニット10は、第2センサ30bにより測定されたデータを所定時間シフトする(S90)。なお、マスタユニット10は、複数のセンサ30により測定されたデータのうちいずれかを基準として、他のデータの立ち上がり波形が基準とするデータの立ち上がり波形と合うように、他のデータをシフトしてもよい。
【0192】
マスタユニット10は、シフト後のデータを複数の区間に分割して、一区間内において、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1であるか否かを判定する(S91)。一区間内において、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1である場合(S91:YES)、マスタユニット10は、その区間における第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形との第1時間差(TA1-TB1)と、その区間から1区間空けて隣接する他の区間における第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形との第2時間差(TA2-TB2)との差が閾値以上であるか(|(TA1-TB1)-(TA2-TB2)|≧TH)判定する(S92)。差が閾値以上である場合(S92:YES)、マスタユニット10は、ワークに位置ずれ有りと判定し(S93)、外部に警告を出力したり、表示部16に位置ずれが生じている旨を表示したりする。一方、差が閾値以上でない場合(S92:NO)、マスタユニット10は、ワークに位置ずれが生じていないと判定する(S94)。
【0193】
一方、第1センサ30aのオン数=1かつ第2センサ30bのオン数=1でない場合(S91:NO)、マスタユニット10は、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0であるか否かを判定する(S95)。判定部15は、第1スレーブユニット20aに接続されている第1センサ30aが、第2スレーブユニット20bに接続されている第2センサ30bよりラインLの上流に配置されている場合、第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインLから脱落したと判定してもよい。ここで、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0である場合(S95:YES)、上流の第1スレーブユニット20aによりワークが検出されているが、下流の第2スレーブユニット20bによりワークが検出されていないため、マスタユニット10は、ワークが脱落したと判定し(S96)、外部に警告を出力したり、表示部16に脱落が生じている旨を表示したりする。これにより、ラインLの上流に配置されたセンサ30によりワークが検出されているが、ラインLの下流に配置されたセンサ30によりワークが検出されない場合を特定し、ワークの脱落が生じていると判定することができる。
【0194】
一方、第1センサ30aのオン数≧1かつ第2センサ30bのオン数=0でない場合(S95:NO)、マスタユニット10は、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1であるか否かを判定する(S97)。判定部15は、第1スレーブユニット20aに接続されている第1センサ30aが、第2スレーブユニット20bに接続されている第2センサ30bよりラインLの上流に配置されている場合、第2スレーブユニット20bにより取得された立ち上がり波形又は立ち下がり波形に対して、対応する第1スレーブユニット20aにより取得された立ち上がり波形又は立ち下がり波形が存在しない場合に、ワークがラインLに混入したと判定してもよい。ここで、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1である場合(S97:YES)、上流の第1スレーブユニット20aによりワークが検出されていないが、下流の第2スレーブユニット20bによりワークが検出されているため、マスタユニット10は、ワークが混入したと判定し(S98)、外部に警告を出力したり、表示部16に混入が生じている旨を表示したりする。これにより、ラインLの上流に配置されたセンサ30によりワークが検出されていないが、ラインLの下流に配置されたセンサ30によりワークが検出されている場合を特定し、ワークの混入が生じていると判定することができる。
【0195】
さらに、第1センサ30aのオン数=0かつ第2センサ30bのオン数≧1でない場合(S97:NO)、マスタユニット10は、第1センサ30aのオン数=0かつ第2センサ30bのオン数=0であるか否かを判定する(S99)。第1センサ30aのオン数=0かつ第2センサ30bのオン数=0である場合(S99)、マスタユニット10は、ワークが無いと判定する(S100)。一方、第1センサ30aのオン数=0かつ第2センサ30bのオン数=0でない場合(S99:NO)、設定した区間の幅が広すぎるため、マスタユニット10は、区間幅を狭める(S101)。マスタユニット10は、その後、処理S71以降を繰り返してよい。
【0196】
図24は、本実施形態の第5変形例に係るセンサシステム1Eにより測定されるデータの第9例を示す図である。同図では、第1センサ30aにより測定されたデータを実線で示し、第2センサ30bにより測定されたデータを破線で示し、第2センサ30bにより測定されたデータをT
ABだけシフトしたデータを実線で示し、第3センサ30cにより測定されたデータを破線で示し、第3センサ30cにより測定されたデータをT
ACだけシフトしたデータを実線で示している。
【0197】
判定部15は、第1センサ30aにより測定されたデータの立ち上がり波形と、第2センサ30bにより測定されたデータの立ち上がり波形とを揃え、第1センサ30aにより測定されたデータの立ち上がり波形と、第3センサ30cにより測定されたデータの立ち上がり波形とを揃えるように、第2センサ30bにより測定されたデータをTABだけシフトし、第3センサ30cにより測定されたデータをTACだけシフトしてよい。ここで、シフト量TAB及びTACは、予め設定されてもよいし、ラインLにテストワークを流して決定してもよい。
【0198】
本例の場合、シフト後のデータを比較すると、1番目の立ち上がり波形を揃えると、2番目の立ち上がり波形が、第1センサ30aにより測定されたデータと第2センサ30bにより測定されたデータとの間で揃わず、TA-TBのずれが生じている。一方、第2センサ30bにより測定されたデータと第3センサ30cにより測定されたデータとの間では、2番目の立ち上がり波形が揃っている。すなわち、2番目の立ち上がり波形が、第1センサ30aにより測定されたデータと第3センサ30cにより測定されたデータとの間で揃わず、TA-TBのずれが生じている。
【0199】
判定部15は、複数のスレーブユニット20のうちラインLに沿って順に配置されている3以上のスレーブユニット20により取得された時系列データを所定の時間シフトして比較してワークの状態の変化を判定し、ワークの状態が変化したと判定された区間に基づいて、ラインの異常区間を判定してもよい。本例の場合、判定部15は、第1センサ30aにより測定された立ち上がり波形と第2センサ30bにより測定された立ち上がり波形との差|TA-TB|が閾値以上である場合に、ワークに位置ずれが生じていると判定し、第2センサ30bにより測定された立ち上がり波形と第3センサ30cにより測定された立ち上がり波形との差がほぼ0であるため、ラインLの異常区間を第1センサ30aが配置された位置から第2センサ30bが配置された位置までの区間であると判定してよい。
【0200】
このようにして、ラインLに異常が生じていることのみならず、異常が発生している区間を特定することができ、異常の原因を早期に特定するための情報を発信することができる。
【0201】
図25は、本実施形態の第5変形例に係るマスタユニット10により実行される第9処理のフローチャートである。はじめに、マスタユニット10は、第2センサ30bにより測定されたデータを所定の時間T
ABだけシフトし(S110)、第3センサ30cにより測定されたデータを所定の時間T
ACだけシフトし(S111)する。
【0202】
その後、マスタユニット10は、第1センサ30aにより測定されたデータに対する、第2センサ30bにより測定されたデータの時間差からワークの状態変化を判定し(S112)、第2センサ30bにより測定されたデータに対する、第3センサ30cにより測定されたデータの時間差からワークの状態変化を判定する(S113)。なお、処理S112及びS113は、例えば
図21に示す第7処理であってよい。
【0203】
マスタユニット10は、ワークの状態が変化したと判定された区間に基づいて、ラインLの異常区間を判定する。例えば、処理S112によりワークの状態が変化したと判定され、処理S113によりワークの状態が変化していないと判定された場合、マスタユニット10は、第1センサ30aが配置された位置から第2センサ30bが配置された位置までの区間においてラインLに異常が発生したと判定してよい。同様に、処理S112によりワークの状態が変化していないと判定され、処理S113によりワークの状態が変化してたと判定された場合、マスタユニット10は、第2センサ30bが配置された位置から第3センサ30cが配置された位置までの区間においてラインLに異常が発生したと判定してよい。
【0204】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【0205】
[附記1]
ライン(L)に沿って配置され、前記ライン(L)上を搬送されるワークの通過状況を示すデータを測定する複数のセンサ(30a,30b,30c)と、
前記複数のセンサ(30a,30b,30c)それぞれに接続され、前記複数のセンサ(30a,30b,30c)により測定されるデータを取得する複数のスレーブユニット(20a,20b,20c)と、
前記複数のスレーブユニット(20a,20b,20c)と接続されているマスタユニット(10)と、を備え、
前記マスタユニット(10)は、
前記データと、前記データが測定されたタイミングに関する情報とを関連付けて記憶する記憶部(14)と、
前記複数のスレーブユニット(20a,20b,20c)のうち2以上のスレーブユニットから伝送された前記データを、タイミングに関する情報を用いて比較して、前記ワークの状態の変化を判定する判定部(15)と、を有する、
センサシステム(1)。
【符号の説明】
【0206】
1…センサシステム、1A…第1変形例に係るセンサシステム、1B…第2変形例に係るセンサシステム、1C…第3変形例に係るセンサシステム、1D…第4変形例に係るセンサシステム、1E…第5変形例に係るセンサシステム、10…マスタユニット、11…取得部、12…タイマ、13…補正部、14…記憶部、14a…センシングデータ、14b…測定タイミング、14c…学習済みモデル、15…判定部、16…表示部、17…通信部、18…トリガ発信部、20a…第1スレーブユニット、21a…タイマ、20b…第2スレーブユニット、21b…タイマ、20c…第3スレーブユニット、21c…タイマ、30a…第1センサ、30b…第2センサ、30c…第3センサ、40…PLC、41…タイマ、101,102…入力/出力コネクタ、106…接続コネクタ、110…MPU、112…通信ASIC、116…パラレル通信回路、118…シリアル通信回路、304,306…接続コネクタ、400…CPU、401…発光素子、402,406,408…受光素子、403…投光制御部、404…増幅回路、405…A/Dコンバータ、407,409…通信用発光素子、410,412…受光回路、411,413…投光回路、419…出力回路、420…シリアル通信ドライバ