(57)【要約】      （修正有）【課題】高精度なフィルタリング処理データを採取するデータサンプリング装置及びデータサンプリング方法を提供する。【解決手段】データ取得部１１１がセンサ５０から所定のデータ取得周期でセンサ信号を取得し、フィルタ処理部１１２が取得されたセンサ信号に対してフィルタ処理を行い、データ作成部１３０がフィルタ処理された後のセンサ信号の一部を抽出して時系列データを作成し、送受信部が作成された時系列データをデータ取得周期よりも長い所定のデータ送信周期で外部装置に送信し、データ送信周期を外部装置との通信周期に同期させる。【選択図】図１
2019133521.tif 000002
【特許請求の範囲】
【請求項１】
センサからのセンサ信号をサンプリング処理して外部装置へ送信するデータサンプリング装置であって、
前記センサから所定のデータ取得周期で前記センサ信号を取得するデータ取得部と、
前記データ取得部が取得した前記センサ信号に対してフィルタ処理を行うフィルタ処理部と、
前記フィルタ処理部によってフィルタ処理した後のセンサ信号の一部を抽出して生成された時系列データを、前記データ取得周期よりも長い所定のデータ送信周期で前記外部装置に送信する送信部と、
前記データ送信周期を前記外部装置との通信周期に同期させるタイミング制御部と、を備えていることを特徴とするデータサンプリング装置。
【請求項２】
前記フィルタ処理部によってフィルタ処理された前記センサ信号の一部を抽出し、前記時系列データを生成するデータ生成部を更に備え、
前記データ生成部は、前記フィルタ処理部によってフィルタ処理された前記センサ信号のうち、前記データ取得周期とは異なる所定のデータ転送周期で前記フィルタ処理部から転送される前記センサ信号を取得することで、前記センサ信号の一部を抽出することを特徴とする請求項１に記載のデータサンプリング装置。
【請求項３】
前記データ生成部は、前記データ転送周期で転送される前記センサ信号を複数転送周期分まとめて前記時系列データを生成することを特徴とする請求項２に記載のデータサンプリング装置。
【請求項４】
前記タイミング制御部は、前記データ転送周期を制御することにより、前記データ送信周期を前記外部装置との通信周期に同期させることを特徴とする請求項２または３に記載のデータサンプリング装置。
【請求項５】
前記フィルタ処理部は、前記センサ信号から周波数ノイズを除去することを特徴とする請求項１から４の何れか一項に記載のデータサンプリング装置。
【請求項６】
前記データ取得部と、前記フィルタ処理部とを有するデータ処理チャンネルを複数備え、
前記データ生成部は、各データ処理チャンネルを通って処理された前記センサ信号を取得することによって前記時系列データを生成することを特徴とする請求項２から５の何れか一項に記載のデータサンプリング装置。
【請求項７】
センサからのセンサ信号をサンプリング処理して外部装置へ送信するデータサンプリング方法であって、
前記センサから所定のデータ取得周期で前記センサ信号を取得するデータ取得ステップと、
取得した前記センサ信号に対してフィルタ処理を行うフィルタ処理ステップと、
フィルタ処理した後のセンサ信号の一部を抽出して生成された時系列データを、前記データ取得周期よりも長い所定のデータ送信周期で前記外部装置に送信する送信ステップと、
前記データ送信周期を前記外部装置との通信周期に同期させるタイミング制御ステップと、を含む
ことを特徴とするデータサンプリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサ検出信号等のデータをサンプリングし、制御装置に転送するデータサンプリング装置、及びデータサンプリング方法に関する。
【背景技術】
【０００２】
従来、入力ユニットから採取されたデータのノイズ成分を除去するためにＣＰＵユニットにてフィルタ演算を行う技術が一般的であったが、フィルタ演算には多くの時間がかかるため採取できるデータの容量、フィルタリングの精度、及び、フィルタリングの速度がＣＰＵの性能に依存していた。そこで、ＣＰＵの性能に依存することなく、採取した大容量のデータを、高精度で高速にフィルタリング処理を行う技術が提案されている（例えば、特許文献１参照）。
【０００３】
特許文献１に記載の信号処理装置は、ＣＰＵユニットにデータを転送する転送周期よりも短い周期で信号を採取して時系列データを生成し、時系列データから周波数ノイズを除去してＣＰＵユニットに転送する入力ユニットを備えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１３４７６９号公報（２０１７年８月３日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のような従来技術において、例えば採取した大容量のデータを、入力ユニットに備えられた大容量のメモリ等の記憶素子に記憶して、ＣＰＵユニットに時間をかけて転送することが考えられる。この場合、採取するデータ容量は、入力ユニットの記憶素子の容量に依存することとなり、入力ユニットが高価になるという問題がある。また、単純にデータを削減するとフィルタリングの精度が低下する虞もある。このため、入力ユニットの記憶素子の容量や、ＣＰＵユニットの性能に依存することなく、採取した大容量のデータに高精度で高速なフィルタリング処理を行うことができるデータサンプリング装置が望まれている。
【０００６】
本発明の一態様は、高精度で高速なフィルタリング処理を行うことができる技術を実現することを目的とする。
【課題を解決するための手段】
【０００７】
前記の課題を解決するために、本発明に係るデータサンプリング装置は、センサからのセンサ信号をサンプリング処理して外部装置へ送信するデータサンプリング装置であって、前記センサから所定のデータ取得周期で前記センサ信号を取得するデータ取得部と、前記データ取得部が取得した前記センサ信号に対してフィルタ処理を行うフィルタ処理部と、前記フィルタ処理部によってフィルタ処理した後のセンサ信号の一部を抽出して生成された時系列データを、前記データ取得周期よりも長い所定のデータ送信周期で前記外部装置に送信する送信部と、前記データ送信周期を前記外部装置との通信周期に同期させるタイミング制御部と、を備えている構成である。
【０００８】
前記の構成によれば、フィルタ処理した後のセンサ信号の一部を抽出して生成された時系列データを、データ取得周期よりも長い所定のデータ送信周期で外部装置に送信する。フィルタ処理により周波数ノイズを除去する場合、データ取得周波数が高いほど、デジタルフィルタが除去することのできるノイズの周波数の範囲が広くなる。よって、データ送信周期よりもデータ取得周期を短くすることで、フィルタ処理を高精度に行うことができる。また、フィルタ処理した後のセンサ信号の一部を抽出して時系列データを生成することで、データ転送時間を短くすることができる。これによりデータサンプリング装置は、入力ユニットに大容量のメモリ等の記憶素子を備えることなく、フィルタ処理を高精度に行い、フィルタ処理した後のデータの一部を抽出したサンプリングデータを高速に外部装置へ送信することができる。よって、高精度で高速なフィルタリング処理を行うことができるデータサンプリング装置を提供することができる。
【０００９】
また、本発明に係るデータサンプリング装置は、前記の構成において、前記フィルタ処理部によってフィルタ処理された前記センサ信号の一部を抽出し、前記時系列データを生成するデータ生成部を更に備え、前記データ生成部は、前記フィルタ処理部によってフィルタ処理された前記センサ信号のうち、前記データ取得周期とは異なる所定のデータ転送周期で前記フィルタ処理部から転送される前記センサ信号を取得することで、前記センサ信号の一部を抽出してもよい。
【００１０】
前記の構成によれば、フィルタ処理されたセンサ信号の一部を抽出し、時系列データを生成するため、フィルタ処理の精度を落とすことなく、データ転送容量を抑えることができる。これにより、データサンプリング装置は、高精度なフィルタリング処理データを、高速に外部装置へ送信することができる。また、データ取得周期と、データ転送周期とを異なる周期に設定することで、高精度なフィルタ処理をした後のセンサ信号を一部だけ抽出することができ、高精度なフィルタリング処理データを、高速に外部装置へ送信することができる。
【００１１】
また、本発明に係るデータサンプリング装置は、前記の構成において、前記データ生成部は、前記データ転送周期で転送される前記センサ信号を複数転送周期分まとめて前記時系列データを生成してもよい。
【００１２】
前記の構成によれば、外部装置の通信周期に同期するように、複数転送周期分のデータをまとめて外部装置に送信することができるため、効率よく高精度なフィルタリング処理データを高速に外部装置に送信することができる。
【００１３】
また、本発明に係るデータサンプリング装置は、前記の構成において、前記タイミング制御部は、前記データ転送周期を制御することにより、前記データ送信周期を前記外部装置との通信周期に同期させてもよい。
【００１４】
前記の構成によれば、外部装置の通信周期に同期させて、効率よく高精度なフィルタリング処理データを高速に外部装置に送信することができる。
【００１５】
また、本発明に係るデータサンプリング装置は、前記の構成において、前記フィルタ処理部は、前記センサ信号から周波数ノイズを除去してもよい。
【００１６】
前記の構成によれば、データ取得周期を短くすることで、除去することのできるノイズの周波数の範囲を広くすることができ、高精度なフィルタリング処理データを外部装置に送信することができる。
【００１７】
また、本発明に係るデータサンプリング装置は、前記の構成において、前記データ取得部と、前記フィルタ処理部とを有するデータ処理チャンネルを複数備え、前記データ生成部は、各データ処理チャンネルを通って処理された前記センサ信号を取得することによって前記時系列データを生成してもよい。
【００１８】
前記の構成によれば、複数チャンネルで並列してフィルタ処理を高精度に行い、フィルタ処理した後のデータの一部を抽出したサンプリングデータを高速に外部装置に送信することができる。
【００１９】
前記の課題を解決するために、本発明に係るデータサンプリング方法は、センサからのセンサ信号をサンプリング処理して外部装置へ送信するデータサンプリング方法であって、前記センサから所定のデータ取得周期で前記センサ信号を取得するデータ取得ステップと、取得した前記センサ信号に対してフィルタ処理を行うフィルタ処理ステップと、フィルタ処理した後のセンサ信号の一部を抽出して生成された時系列データを、前記データ取得周期よりも長い所定のデータ送信周期で前記外部装置に送信する送信ステップと、前記データ送信周期を前記外部装置との通信周期に同期させるタイミング制御ステップと、を含む方法である。
【００２０】
前記の方法によれば、大容量のメモリ等の記憶素子を備えることなく、フィルタ処理を高精度に行い、フィルタ処理した後のデータの一部を抽出したサンプリングデータを高速に外部装置へ送信することができる。よって、高精度で高速なフィルタリング処理を行うことができる。
【発明の効果】
【００２１】
本発明の一態様によれば、高精度なフィルタリング処理データを採取することができる。
【図面の簡単な説明】
【００２２】
【図１】本実施形態に係るデータサンプリング装置の概略構成を示すブロック図である。
【図２】データ生成部によって生成される時系列データの一例を示す図である。
【図３】タイミング制御部によるデータ取得、データ転送、データ送信の周期制御の一例を示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の一側面に係る実施形態（以下、「本実施形態」とも表記する）を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
【００２４】
§１  適用例
まず、図１を用いて、本発明が適用される場面の一例について説明する。図１は、本実施形態に係るデータサンプリング装置１００の概略構成の一例を示している。本実施形態に係るデータサンプリング装置１００は、例えば、図１に示されるとおり、ＰＬＣ（Programmable Logic Controller）システム１の機能ユニットとして用いられる。ＰＬＣシステム１は、入力機器からの信号により、機械および設備等の制御対象である出力機器を制御するシステムである。入力機器としては、例えば、温度センサ、光センサなどの「検出器」や「スイッチ（押ボタンスイッチ、リミットスイッチ、圧力スイッチなど）」などがある。出力機器としては、例えば、「モータ」、「ロボットアーム」、「アクチュエータ」、「リレー」、「電磁弁」、「表示器」、「表示灯」などである。
【００２５】
ＰＬＣシステム１は、入力機器のセンサ５０からの信号をサンプリング処理するデータサンプリング装置１００と、データサンプリング装置１００によってサンプリング処理されたデータを使用して、演算処理を実行し、制御対象を制御するための出力データを生成するコントローラユニット１０と、を含んでいる。
【００２６】
データサンプリング装置１００は、例えば、ＦＡ機器における入力ユニットであり、センサ５０から高速に取得したセンサ信号を、ＦＰＧＡ（Field-Programmable gate array）等を用いて、フィルタ処理を行い、コントローラユニット１０に送信する。これにより、データサンプリング装置１００は、コントローラユニット１０との間の通信量を低減させるとともに、コントローラユニット１０の演算負荷を低減させる。
【００２７】
なお、データサンプリング装置１００は、ＰＬＣシステムの機能ユニットとして用いられる構成に限らず、入力機器のセンサ５０からのセンサ信号を取得して、フィルタ処理を行い、ＩＰＣ（Industrial PC）等の制御対象を制御するための外部装置にデータを転送する装置である構成であってもよい。
【００２８】
図１に示されるとおり、データサンプリング装置１００は、センサ５０から取得したセンサ信号を処理するデータ処理チャンネル１１０を備えている。データサンプリング装置１００は、センサ信号を取得するセンサ５０の数に応じた複数のデータ処理チャンネル１１０を備えている。
【００２９】
また、データサンプリング装置１００は、データ処理チャンネル１１０がセンサ５０からセンサ信号を取得するタイミングと、フィルタ処理した後のセンサ信号を転送するタイミングとを制御するタイミング制御部１２０を備えている。また、データサンプリング装置１００は、複数のデータ処理チャンネル１１０のそれぞれから転送されたセンサ信号を取得することによって時系列データを生成するデータ生成部１３０を備えている。また、データサンプリング装置１００は、タイミング制御部１２０の制御に応じて、データ生成部１３０が生成した時系列データをコントローラユニット１０に送信する送受信部（送信部）１４０を備えている。送受信部１４０は、コントローラユニット１０にデータを送信する送信部として機能するとともに、コントローラユニット１０から例えば制御情報等のデータを受信する受信部としても機能する。
【００３０】
各データ処理チャンネル１１０は、フィルタ処理をした後のセンサ信号の一部を間引いて、データ生成部１３０に転送する。これにより、データ生成部１３０は、フィルタ処理をした後のセンサ信号の一部を抽出して、時系列データを生成する。また、データ生成部１３０は、複数転送周期分のセンサ信号をまとめて時系列データを生成する。このようにデータサンプリング装置１００は、複数のセンサ５０から取得したセンサ信号をフィルタ処理した後に一部を間引くとともに、複数周期分まとめてコントローラユニット１０に送信する。なお、本実施形態では、データサンプリング装置１００による、フィルタ処理と、抽出処理と、時系列データ生成処理とをまとめて、サンプリング処理と称する。
【００３１】
これにより、本実施形態では、データサンプリング装置１００のサンプリング周期と、コントローラユニット１０のサイクル周期とを独立させ、センサ５０から取得したデータを、高精度なフィルタリング処理をした後にコントローラユニット１０に送信することができる。よって、データサンプリング装置１００は、採取するデータが多くなっても、大容量のメモリ等の記憶素子を備えることなく、フィルタ処理を高精度に行い、フィルタ処理した後のデータの一部を抽出したサンプリングデータを高速に外部装置へ送信することができる。
【００３２】
§２  構成例
以下、本発明の実施形態に係るデータサンプリング装置１００の構成について、図１から図３に基づいて詳細に説明する。
【００３３】
図１は、データサンプリング装置１００を含むＰＬＣシステム１の概略構成を示すブロック図である。図１に示すように、ＰＬＣシステム１は、複数のセンサ５０（５０Ａ〜５０Ｄ）と、データサンプリング装置１００と、コントローラユニット１０とを備えている。なお、図示は省略するが、データサンプリング装置１００は、外部のコントローラ等の外部装置に通信ネットワークを介して接続されている構成であってもよい。
【００３４】
コントローラユニット１０は、ＰＬＣシステム１において、主たる演算処理を実行する。コントローラユニット１０は、出力データの送信、入力データの受信、入力データを使用して出力データを生成する制御プログラムの実行等の処理を繰り返すことによって制御対象を制御する。
【００３５】
センサ５０は、不図示の制御対象の状態値（例えば重量や圧力などの物理量）を検出して、検出した状態値に対応するセンサ信号を出力する。センサ５０は、例えば、制御対象（例えば、計量装置等の産業機械）に取り付けられるロードセルである。制御対象は、例えば、台はかりシステム、定量切出制御システム、圧入システム等である。
【００３６】
（データサンプリング装置１００の構成について）
データサンプリング装置１００は、データ処理チャンネル１１０と、タイミング制御部１２０と、データ生成部１３０と、送受信部１４０と、を備えている。データサンプリング装置１００は、センサ５０からのセンサ信号を処理して、コントローラユニット１０に送信する信号処理装置である。
【００３７】
データ処理チャンネル１１０は、センサ５０からのセンサ信号を処理する機能ブロックであり、データ取得部１１１と、フィルタ処理部１１２と、データ転送部１１３と、を含んでいる。
【００３８】
データ取得部１１１は、所定のデータ取得周期でセンサ５０からセンサ信号を取得する。データ取得部１１１は、センサ５０から取得したセンサ信号を増幅する機能を有していてもよい。また、データ取得部１１１は、センサ５０からのセンサ信号がアナログ信号である場合に、デジタル信号に変換するＡ／Ｄコンバータであってもよい。
【００３９】
フィルタ処理部１１２は、データ取得部１１１が取得したセンサ信号に対してフィルタ処理を行う。フィルタ処理部１１２は、例えば、デジタルフィルタを備え、センサ信号から周波数ノイズを除去する。フィルタ処理部１１２が備えるフィルタの種類、及び数に特に限定は無い。フィルタ処理部１１２が備えるフィルタの種類は、例えば、ローパスフィルタ、移動平均フィルタ、ノッチフィルタ等であってもよい。
【００４０】
データ転送部１１３は、データ取得部１１１によって取得され、フィルタ処理部１１２によってフィルタ処理した後のセンサ信号の一部を時系列に沿ってデータ生成部１３０に転送する。データ転送部１１３が、データ生成部１３０にセンサ信号を転送するデータ転送周期は、データ取得部１１１がセンサ５０からセンサ信号を取得するデータ取得よりも長い。データ転送部１１３は、データ取得部１１１によって所定のデータ取得周期で取得され、フィルタ処理部１１２によってフィルタ処理された後のセンサ信号のうち、データ取得周期と、データ転送周期とが同期している一部のセンサ信号だけをデータ生成部１３０に転送する。
【００４１】
このように、データ処理チャンネル１１０は、フィルタ処理部１１２によってフィルタ処理した後のセンサ信号を間引いて、一部を時系列に沿ってデータ生成部１３０に転送する。これにより、データ転送周期よりも短いデータ取得周期で取得されたセンサ信号から高精度にノイズを除去することができる。
【００４２】
上述したように、フィルタ処理部１１２がデジタルフィルタを備えて、センサ信号の周波数ノイズを除去する構成では、除去できるノイズの周波数は、データ取得部１１１のデータ取得周波数に依存する。すなわち、データ取得周波数が高いほど、デジタルフィルタが除去することのできるノイズの周波数の範囲が広くなる。本実施形態では、データ取得部１１１のデータ取得周波数を高くし、取得したセンサ信号をフィルタ処理した後に、間引いて、データ生成部１３０に転送する構成である。これにより、データサンプリング装置１００は、高い周波数のノイズを高精度に除去することができ、且つ、高速にデータをコントローラユニット１０に転送することができる。
【００４３】
このように、フィルタ処理部１１２によって広い範囲の周波数のノイズを除去することができるため、フィルタ処理の精度を高めることができる。また、データ処理チャンネル１１０は、フィルタ処理した後のセンサ信号を間引いて、取得したセンサ信号の一部をデータ生成部１３０に転送するため、データ通信量を低減することができる。よって、データサンプリング装置１００は、高速、且つ、高精度なフィルタリング処理データをコントローラユニット１０に転送することができる。
【００４４】
また、データサンプリング装置１００は、データ取得部１１１と、フィルタ処理部１１２と、データ転送部１１３と、を有するデータ処理チャンネル１１０を複数備えている構成であってもよい。図１は、４つのデータ処理チャンネル１１０Ａ〜１１０Ｄを備え、各データ処理チャンネル１１０Ａ〜１１０Ｄが、それぞれ、データ取得部１１１と、フィルタ処理部１１２と、データ転送部１１３と、を有しているデータサンプリング装置１００を示している。各データ処理チャンネル１１０Ａ〜１１０Ｄは、対応するセンサ５０Ａ〜５０Ｄから取得したセンサ信号を処理する。なお、データサンプリング装置１００が備えるデータ処理チャンネル１１０の数は４つに限られるものではない。
【００４５】
データ生成部１３０は、データ転送部１１３から所定のデータ転送周期で転送されるセンサ信号を取得し、時系列データを生成する。このように、データ生成部１３０は、フィルタ処理部１１２によってフィルタ処理されたセンサ信号のうち、データ取得部１１１のデータ取得周期とは異なる所定のデータ転送周期でデータ転送部１１３を介してフィルタ処理部１１２から転送されるセンサ信号を取得することで、センサ信号の一部を抽出する。つまり、データ生成部１３０は、データ転送部１１３によって間引かれたセンサ信号を取得することで、フィルタ処理部１１２によってフィルタ処理した後のセンサ信号の一部を抽出する。
【００４６】
データ生成部１３０は、データ転送部１１３から所定のデータ転送周期で転送されるセンサ信号を複数転送周期分まとめて時系列データを生成する。このように、複数転送周期分のセンサ信号をまとめて時系列データを生成することで、データ通信量を低減することができ高速なデータサンプリングを可能とすることができる。
【００４７】
また、データ生成部１３０は、複数のデータ処理チャンネル１１０Ａ〜１１０Ｄのそれぞれを介してフィルタ処理され、一部が間引かれたセンサ信号を取得することによって、各データ処理チャンネル１１０Ａ〜１１０Ｄからのセンサ信号に応じた時系列データを生成する。
【００４８】
図２は、データ生成部１３０のメモリのアドレスマップを示す図である。図２に示すように、データ生成部１３０には、予め設定されているデータ数に応じて、各データ処理チャンネル１１０Ａ〜１１０Ｄからのセンサ信号に応じたデータが時系列に記憶される。データ生成部１３０は、１つのデータ送受信周期毎にこのマップを更新する。データ生成部１３０は、データ送受信周期毎に、開始アドレスを計算して、マップを更新する。また、データ生成部１３０は、データ処理チャンネル１１０Ａ〜１１０Ｄのそれぞれに対して、データサンプリング数を設定し、設定したデータサンプリング数に応じたデータをデータ送受信周期毎に記憶する。
【００４９】
図２において、１０進表記（ｄｅｃ）、及び１６進表記（ｈｅｘ）で表されるアドレスに、以下に示す各種データが格納される。データ生成部１３０は、１つのデータ送受信周期毎に、コントローラユニット１０とのデータ送受信周期の開始時刻を示すタイムスタンプを所定のアドレスに格納する。図２に示す例では、タイムスタンプ０〜３がデータ送受信周期の開始時刻を示している。データ送受信周期の開始時刻は、例えば、後述する図３に示す例では、１０μｓの時点であり、この開始時刻を示す情報が、タイムスタンプ０〜３として記憶される。
【００５０】
また、データ生成部１３０は、データ送受信周期毎に、各データ処理チャンネル１１０Ａ〜１１０Ｄのステータスを示す情報を記録するアドレスを確保してもよい。チャンネルのステータス（ＣＨステータス）には、当該チャンネルの状態が正常状態であるか、エラー状態であるかを示す情報が書き込まれる。
【００５１】
また、データ生成部１３０は、各データ処理チャンネル１１０Ａ〜１１０Ｄに関して、サンプリングデータの値以外の他の用途で用いることができるアドレスを確保してもよい。他の用途で使うことができるアドレスを、図２に示す例では、「予約」として示している。
【００５２】
また、データ生成部１３０は、各データ処理チャンネル１１０Ａ〜１１０Ｄのデータに、各チャンネルで、１つのデータ送受信周期でサンプリングするデータの数を示す情報であるサンプリング数を所定のアドレスに割り当てる。図２に示す例では、サンプリング数を「ＣＨ１サンプリング数（256）」などと示している。
【００５３】
データ生成部１３０は、１つのデータ処理チャンネルのサンプリング数を示すアドレスに続く各アドレスに（Ｃｈ１とＣｈ２の間ではアドレス０９７８〜１４９２の間のアドレス）、所定のサンプリング数のサンプリングデータを格納する。
【００５４】
１つのデータ送受信周期が終了すると（後述する図３に示す例では、７０μｓ）、データ生成部１３０は、メモリをクリアし、次のデータ送受信周期の各種データを各アドレスに適宜格納する。
【００５５】
送受信部１４０は、データ生成部１３０が生成した時系列データを、データ取得部１１１のデータ取得周期よりも長い所定のデータ送信周期で、コントローラユニット１０に送信する。送受信部１４０は、コントローラユニット１０の通信周期に同期するデータ送信周期で、データ生成部１３０が生成した時系列データを、コントローラユニット１０に送信する。
【００５６】
ところで、ＰＬＣシステム１は、所定のサイクルタイムによって、共通処理、プログラム実行処理、Ｉ／Ｏリフレッシュ処理、周辺サービス処理などの一連のサイクルを実行する。コントローラユニット１０は、ＰＬＣシステム１の１サイクル毎のタイミング（通信周期）で、制御対象である各種機能ユニットとの通信を実行する。
【００５７】
タイミング制御部１２０は、データ取得部１１１のデータ取得周期と、データ転送部１１３のデータ転送周期と、送受信部１４０のデータ送信周期とを制御する。タイミング制御部１２０は、例えば、ＤＣ（ディストリビュート・クロック）方式による時刻同期機能を有している。データサンプリング装置１００、及びコントローラユニット１０は、それぞれ時計として、同期の基準となる時刻情報（リファレンスクロック）を周期的に生成するタイマを有している。タイミング制御部１２０は、これらのタイマに生じている時間的なずれを補正し、送受信部１４０のデータ送信周期をコントローラユニット１０の通信周期に同期させることができるように構成されている。
【００５８】
（タイミング制御部１２０による制御について）
図３は、タイミング制御部１２０による同期制御の一例を示す図である。図３では、３つのデータ処理チャンネルＣｈ１〜Ｃｈ３を介してセンサ５０からのセンサ信号を取得し、コントローラユニット１０に時系列データを送信する場合を例に示している。また、図３では、送受信部１４０のデータ送信周期を白抜き線で、各チャンネルＣｈ１〜Ｃｈ３のデータ転送部１１３のデータ転送周期を網掛け線で、各チャンネルＣｈ１〜Ｃｈ３のデータ取得部１１１のデータ取得周期を黒塗り線で示している。
【００５９】
タイミング制御部１２０は、各データ処理チャンネルＣｈ１〜Ｃｈ３のデータ取得部１１１が、センサ５０からのセンサ信号を取得するデータ取得周期をそれぞれ制御する。これにより、各チャンネルＣｈ１〜Ｃｈ３のデータ取得部１１１は、それぞれ異なるデータ取得周期でセンサ５０からのセンサ信号を取得することができる。タイミング制御部１２０は、例えば、５μｓ〜１０μｓのデータ取得周期で、データ取得部１１１が、センサ５０からのセンサ信号を取得するように、データ取得周期を制御する。
【００６０】
また、タイミング制御部１２０は、各チャンネルＣｈ１〜Ｃｈ３のデータ転送部１１３が、フィルタ処理部１１２によってフィルタ処理されたセンサ信号をデータ生成部１３０に転送するデータ転送周期をそれぞれ制御する。これにより、各チャンネルＣｈ１〜Ｃｈ３のデータ転送部１１３は、それぞれ異なるデータ転送周期でフィルタ処理されたセンサ信号を転送することができる。
【００６１】
タイミング制御部１２０は、データ転送周期をデータ取得周期よりも長くするとともに、所定数のデータ転送周期毎に、データ転送周期とデータ取得周期とが同期するように、データ転送周期を制御する。例えば、タイミング制御部１２０は、チャンネルＣｈ１のデータ取得部１１１のデータ取得周期に対して、データ転送部１１３のデータ転送周期を２倍の長さに設定する。これにより、フィルタ処理されたセンサ信号は、１信号おきに間引かれて、フィルタ処理されたセンサ信号の２分の１の数のセンサ信号が、データ生成部１３０によって抽出される。
【００６２】
また、タイミング制御部１２０は、チャンネルＣｈ２のデータ取得部１１１のデータ取得周期に対して、データ転送部１１３のデータ転送周期を３倍の長さに設定する。これにより、フィルタ処理されたセンサ信号のうち、３分の２の数のセンサ信号が間引かれて、２つおきに１つのセンサ信号が、データ生成部１３０によって抽出される。
【００６３】
また、タイミング制御部１２０は、チャンネルＣｈ３のデータ取得部１１１のデータ取得周期を、チャンネルＣｈ１のデータ取得部１１１のデータ取得周期とは、異なる長さに設定する。また、タイミング制御部１２０は、チャンネルＣｈ３のデータ転送部１１３のデータ転送周期をチャンネルＣｈ３のデータ取得部１１１のデータ取得周期の２倍の長さに設定する。これにより、フィルタ処理されたセンサ信号は、１信号おきに間引かれて、フィルタ処理されたセンサ信号の２分の１の数のセンサ信号が、チャンネルＣｈ１のデータ転送周期とは異なる周期で、データ生成部１３０に転送される。
【００６４】
タイミング制御部１２０は、このように、各チャンネルのデータ取得周期、データ転送周期をそれぞれ制御するとともに、データ転送周期を制御することで、送受信部１４０が、データ生成部１３０によって生成された時系列データをコントローラユニット１０に送信するデータ送信周期をコントローラユニット１０の通信周期に同期させる。
【００６５】
例えば、本実施形態では、チャンネルＣｈ１を介して処理されたセンサ信号は、６転送周期分まとめられて、時系列データが生成され、コントローラユニット１０に送信される。タイミング制御部１２０は、チャンネルＣｈ１からデータ生成部１３０にセンサ信号が転送される転送周期の長さを、コントローラユニット１０の通信周期の６分の１の長さに設定することで、チャンネルＣｈ１からデータ生成部１３０に、センサ信号が転送される転送周期を、コントローラユニット１０の通信周期に同期させる。
【００６６】
また、チャンネルＣｈ２を介して処理されたセンサ信号は、４転送周期分まとめられて、時系列データが生成され、コントローラユニット１０に送信される。タイミング制御部１２０は、チャンネルＣｈ２からデータ生成部１３０に、センサ信号が転送される転送周期の長さを、コントローラユニット１０の通信周期の４分の１の長さに設定することで、チャンネルＣｈ２からデータ生成部１３０にセンサ信号が転送される転送周期を、コントローラユニット１０の通信周期に同期させる。
【００６７】
また、チャンネルＣｈ３を介して処理されたセンサ信号は、５転送周期分まとめられて、時系列データが生成され、コントローラユニット１０に送信される。タイミング制御部１２０は、チャンネルＣｈ３からデータ生成部１３０に、センサ信号が転送される転送周期の長さを、コントローラユニット１０の通信周期の５分の１の長さに設定することで、チャンネルＣｈ３からデータ生成部１３０にセンサ信号が転送される転送周期を、コントローラユニット１０の通信周期に同期させる。
【００６８】
このように、タイミング制御部１２０は、データ取得部１１１によるデータ取得周期、データ転送部によるデータ転送周期、および、送受信部１４０によるデータ送信周期を制御する。これにより、データサンプリング装置１００は、データ取得部１１１が取得したセンサ信号にフィルタ処理を行い、フィルタ処理後のセンサ信号の一部を間引く。そして、データサンプリング装置１００は、フィルタ処理後のセンサ信号の一部を抽出して、データ生成部１３０に転送する。データ生成部１３０は、複数転送周期分のフィルタ処理後のセンサ信号をまとめて時系列データを生成し、コントローラユニット１０に送信する。
【００６９】
よって、センサ５０からのセンサ信号が多くても、高精度なフィルタリング処理データを、データ転送に時間をかけることなく、採取することができ、高速、且つ、高精度なデータサンプリング可能となる。
【００７０】
〔ソフトウェアによる実現例〕
データサンプリング装置１００の制御ブロック（特にデータ取得部１１１、データ処理部１１２、データ転送部１１３、タイミング制御部１２０、データ生成部１３０、および送受信部１４０）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ソフトウェアによって実現してもよい。
【００７１】
後者の場合、データサンプリング装置１００は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば１つ以上のプロセッサを備えていると共に、前記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、前記コンピュータにおいて、前記プロセッサが前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。前記プロセッサとしては、例えばＣＰＵ（Central Processing Unit）を用いることができる。前記記録媒体としては、「一時的でない有形の媒体」、例えば、ＲＯＭ（Read Only Memory）等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、前記プログラムを展開するＲＡＭ（Random Access Memory）などをさらに備えていてもよい。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して前記コンピュータに供給されてもよい。なお、本発明の一態様は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【００７２】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【００７３】
１  ＰＬＣシステム
１０  コントローラユニット
５０、５０Ａ、５０Ｂ、５０Ｃ、５０Ｄ  センサ
１００  データサンプリング装置
１１０、１１０Ａ、１１０Ｂ、１１０Ｃ、１１０Ｄ  データ処理チャンネル
１１１  データ取得部
１１２  フィルタ処理部
１１３  データ転送部
１２０  タイミング制御部
１３０  データ生成部
１４０  送受信部（送信部）
【図１】
2019133521.tif 000003
【図２】
2019133521.tif 000004
【図３】
2019133521.tif 000005