IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アズビル株式会社の特許一覧

特開2024-106260情報処理装置、情報処理方法、および情報処理プログラム
<>
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図1
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図2
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図3
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図4
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図5
  • 特開-情報処理装置、情報処理方法、および情報処理プログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024106260
(43)【公開日】2024-08-07
(54)【発明の名称】情報処理装置、情報処理方法、および情報処理プログラム
(51)【国際特許分類】
   H04L 25/02 20060101AFI20240731BHJP
   G06F 13/42 20060101ALI20240731BHJP
【FI】
H04L25/02 301C
G06F13/42 310
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023010511
(22)【出願日】2023-01-26
(71)【出願人】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】原島 昇
【テーマコード(参考)】
5K029
【Fターム(参考)】
5K029KK01
5K029KK12
(57)【要約】
【課題】シリアル通信におけるバースト転送時の異常の検知を可能とする。
【解決手段】フィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する情報処理装置は、パルス信号として入力信号およびパルス信号を反転した反転入力信号を受信し、入力信号と、反転入力信号と、パルスの状態とに基づきパルスエッジを検出し、パルスエッジが検出された際の入力信号および反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する。
【選択図】図2
【特許請求の範囲】
【請求項1】
フィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する情報処理装置であって、
前記パルス信号として入力信号および前記パルス信号を反転した反転入力信号を受信する送受信部と、
前記入力信号と、前記反転入力信号と、パルスの状態とに基づきパルスエッジを検出する検出部と、
前記パルスエッジが検出された際の前記入力信号および前記反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する判定部と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記検出部は、第1の時点および第2の時点における前記入力信号と、前記反転入力信号と、前記パルスの状態とを比較して、立ち上がりパルスエッジまたは立ち下がりパルスエッジの少なくともどちらか一方をパルスエッジとして検出し、
前記判定部は、前記パルスエッジが検出された際に第1の時点および第2の時点における前記入力信号および前記反転入力信号を比較して、該入力信号および該反転入力信号に変動が無い場合にシリアル通信に異常が発生していると判定する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記シリアル通信として、I2C通信を用いて前記入力信号と前記反転入力信号とを制御部に送信するシリアル通信部を更に有する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記判定部は、前記シリアル通信としてI2C通信についての異常の有無を判定する、
ことを特徴とする請求項1から3のいずれか1つに記載の情報処理装置。
【請求項5】
フィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する情報処理方法であって、
前記パルス信号として入力信号および前記パルス信号を反転した反転入力信号を受信する送受信工程と、
前記入力信号と、前記反転入力信号と、パルスの状態とに基づきパルスエッジを検出する検出工程と、
前記パルスエッジが検出された際の前記入力信号および前記反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する判定工程と、
を含むことを特徴とする情報処理方法。
【請求項6】
フィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する情報処理プログラムであって、
前記パルス信号として入力信号および前記パルス信号を反転した反転入力信号を受信する送受信手順と、
前記入力信号と、前記反転入力信号と、パルスの状態とに基づきパルスエッジを検出する検出手順と、
前記パルスエッジが検出された際の前記入力信号および前記反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する判定手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、および情報処理プログラムに関する。
【背景技術】
【0002】
フィールド機器からのパルス信号を受信して、上位の管理装置(パルスのカウント数と時間情報からパルス周波数を計算し、運転状態の表示および他の機器の制御等を実施する装置で、以降は「上位装置」と表記)に情報を送信するパルス入力モジュールが知られている。
【0003】
このパルス入力モジュールは、入力信号(フィールド機器等から送信されるパルス信号のことで、以降は「入力信号」と表記)の立ち上がり(例えば、ロジックレベルLからH等)にてパルスを検出する。従来、パルス入力モジュールは、パルス受信の検出のための入力信号の取得にシリアル通信を使用する場合、シリアル通信に異常が発生すると通信が行えなくなるという問題があった。そこで、一定周期で繰り返されるパルス信号の異常を検出する技術が知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平10-190748号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、シリアル通信におけるバースト転送時の異常を検知できない場合がある、という問題があった。
【0006】
例えば、従来技術では、シリアル通信のバースト転送において、マスタ側(マスタ/スレーブ方式において管理または制御を行う側のことで、以降は単に「マスタ側」と表記)がライトデータを送信する場合、スレーブ側(マスタ/スレーブ方式において管理または制御される側のことで、以降は単に「スレーブ側」と表記)がACK(ACKnowledgement:肯定応答)/NACK(Negative ACKnowledgement:否定応答)ビットを送ることでスレーブ側の異常を検出する。
【0007】
他方で、スレーブ側からリードデータを受信する場合、スレーブ側がデータをリードしている最中にマスタ側がACK/NACKビットを送るため、スレーブ側の異常を検出することができない。そのため、シリアル通信においてバーストリードで入力信号を取得する場合、従来技術では、スレーブ側の異常による入力信号の異常を検出できない場合があった。
【課題を解決するための手段】
【0008】
そこで、上記の課題を解決し目的を達成するために、本発明の情報処理装置は、フィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する情報処理装置であって、前記パルス信号として入力信号および前記パルス信号を反転した反転入力信号を受信する送受信部と、前記入力信号と、前記反転入力信号と、パルスの状態とに基づきパルスエッジを検出する検出部と、前記パルスエッジが検出された際の前記入力信号および前記反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する判定部と、を備えることを特徴とする。
【発明の効果】
【0009】
本発明は、シリアル通信におけるバースト転送時の異常の検知を可能とする、という効果を奏する。
【図面の簡単な説明】
【0010】
図1図1は、本実施形態に係る情報処理装置の機能ブロックの一例を示す図である。
図2図2は、本実施形態に係る情報処理装置の装置構成の一例を示す図である。
図3図3は、本実施形態に係るパルスエッジ検出および異常値検出の真理値表の一例を示すテーブル図である。
図4図4は、本実施形態に係るI2C通信の概要の一例を示す図である。
図5図5は、本実施形態に係る情報処理手順についてのフローチャートである。
図6図6は、本実施形態に係る情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0011】
ここから、実施の形態(以降、「実施形態」)について図面を参照しながら説明する。なお、以下の説明において、共通する構成要素には同一の参照符号を付し、繰り返しの説明を省略する。また、以下に記載する実施形態の説明は、本発明に係る情報処理装置、情報処理方法、および情報処理プログラムを限定するものではない。
【0012】
〔1.全体概要〕
本実施形態に係る情報処理装置100は、フィールド機器等の分散制御システムにおいて、フィールド機器からのパルス受信を検出し上位装置にパルスのカウント数と時間情報を伝えるパルス入力モジュールである。そして、情報処理装置100は、フィールド機器から送られるパルス信号について、パルス検出動作の異常を検知して分散制御システムの上位装置に異常の発生を通知する。
【0013】
ここから、図1を用いて本実施形態に係る異常検出の概要について説明する。図1は、本実施形態に係る情報処理装置100の機能ブロックの一例を示す図である。まず、図1には、情報処理装置100と、上位装置200と、フィールド機器300とが示されている。情報処理装置100は、フィールド機器300から出力されるパルス信号を受け付け、上位装置200に所定の情報を送信する情報処理装置である。なお、本実施形態においては、制御部130がマスタ側で、信号受付部140がスレーブ側とする。
【0014】
上位装置200は、情報処理装置100により送信されたパルスのカウント数と時間情報からパルス周波数を計算し、運転状態の表示および他の機器の制御等を行う装置である。フィールド機器300は、プラント等(例えば、石油化学に係るプラント等)で用いられる流量計等の機器であり、運転状態等をパルス信号で情報処理装置100に送信する。なお、前述した用途はあくまで一例であり、情報処理装置100に用いられる用途や適用分野は、限定されない。
【0015】
ここから、情報処理装置100による異常検出および通知の処理の概要を説明する。まず、信号受付部140の入力信号受付部141は、フィールド機器300からの所定のパルス信号(入力信号)の入力を受け付ける(図1の(1))。また、信号受付部140の反転入力信号受付部142は、フィールド機器300からの所定のパルス信号を反転させたパルス信号(反転入力信号)を受け付ける(図1の(2))。
【0016】
制御部130の送受信部131は、入力信号受付部141と反転入力信号受付部142とが受け付けたパルス信号(入力信号および反転入力信号)を、シリアル通信(例えば、本実施形態においてはI2C通信(Inter-Integrated Circuit通信))にて取得するため、信号受付部140のシリアル通信部143にリード要求のデータの送信を行う。信号受付部140のシリアル通信部143は、入力信号受付部141と反転入力信号受付部142とが受け付けたパルス信号を、制御部130の送受信部131に送信する(図1の(3))。
【0017】
制御部130の送受信部131は、シリアル通信部143により送信された入力信号と反転入力信号とを受信する(図1の(3))。検出部132は、送受信部131が受信した入力信号および反転入力信号と、過去の時系列で取得済みの入力信号および反転入力信号とに基づくパルスの状態からパルスエッジを検出する(図1の(4))。
【0018】
判定部133は、検出部132によりパルスエッジが検出された際に、前述の入力信号と反転入力信号とが所定の条件を満たす場合に異常が発生していると判定する(図1の(5))。ここで、異常が発生している場合、更新部134は、エラーカウンタを更新する(図1の(6))。
【0019】
更新部134により更新されたエラーカウンタが所定の閾値を超えた場合、通知部135は、通信部110を介して上位装置200に異常が発生している旨を通知する(図1の(7-1)および(7-2))。さらに、更新部134により更新されたエラーカウンタが所定の閾値を超えた場合、再起動部136は、信号受付部140に対して再起動(例えば、リセット処理の実施による異常状態からの復帰等)を実施する(図1の(8))。
【0020】
なお、算出部137は、異常発生有無に関わらず、検出部132により検出されたパルスエッジに関する情報(立ち上がりエッジまたは立ち下がりエッジ)、パルスのカウント数、上位装置200がパルス周波数の計算に用いる時間情報の算出を行う(図1の(9))。そして、算出部137は、通信部110を介して上位装置200に算出した情報を送信する(図1の(10-1)および(10-2))。
【0021】
〔2.装置構成〕
〔2-1.情報処理装置の構成〕
ここから、図2を用いて、実施形態に係る情報処理装置100の構成について説明する。図2は、本実施形態に係る情報処理装置100の装置構成の一例を示す図である。図2に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、信号受付部140とを有する。なお、図2以降についても、制御部130がマスタ側で、信号受付部140がスレーブ側とする。
【0022】
(通信部110)
通信部110は、NIC(Network Interface Card)等によって実現される。そして、通信部110は、必要に応じてネットワークと有線または無線で接続され、双方向に情報の送受信を行うことができる。なお、以降の項目において、情報処理装置100と上位装置200との各種の通信は、通信部110を介して行われる前提で説明を行う。
【0023】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図2に示す通り、記憶部120は、信号記憶部121と、パルス記憶部122と、真理値表記憶部123と、エラーカウンタ記憶部124と、パルスカウンタ記憶部125とを有する。
【0024】
(信号記憶部121)
信号記憶部121は、後述の入力信号受付部141により受け付けられた入力信号と、反転入力信号受付部142により受け付けられた反転入力信号とを記憶する。なお、信号記憶部121は、前述の入力信号と反転入力信号との記憶する形式は特に限定せずに記憶することができる。
【0025】
(パルス記憶部122)
パルス記憶部122は、後述の検出部132により検出されたパルスエッジに関する情報を記憶する。なお、パルス記憶部122は、パルスエッジに関する情報として、パルスエッジの波形データ等をそのまま記憶してもよいし、パルスエッジが検出されたといったフラグ情報を記憶してもよく、記憶形式を限定せずに記憶できる。
【0026】
(真理値表記憶部123)
真理値表記憶部123は、後述の判定部133がパルスの状態に基づいて異常発生の有無を判定する際に用いられる情報である。例えば、真理値表記憶部123は、真理値表として入力に対してすべての出力結果を表記した情報を記憶することができる。
【0027】
ここで、図3を用いて、真理値表記憶部123により記憶される真理値表10について説明する。図3は、本実施形態に係るパルスエッジ検出および異常値検出の真理値表10の一例を示すテーブル図である。なお、図3に示した真理値表10は、あくまで一例であり記載された内容に限定されない。
【0028】
図3に示す通り、真理値表10は、「判定値」と「判定結果」という大項目を有する。まず、判定値の大項目について説明する。判定値は、更に「前回P0」と、「前回P1」と、「今回P0」と、「今回P1」と、「現在のパルスの状態」との項目を有する。
【0029】
本実施形態において、「P0」が入力信号で、「P1」が反転入力信号を意味する。また、「前回」と「今回」とは、「今回」が最新のP0とP1で、「前回」が古い時系列のP0とP1である。また、P0とP1の項目に記載された「0」と「1」は、P0は信号の入力有無に基づいて信号入力有りが「1」で、信号入力無しが「0」を、P1は信号の入力有無に基づいて信号入力有りが「0」で、信号入力無しが「1」を意味する。
【0030】
現在のパルスの状態は、「前回P0」と、「前回P1」と、「今回P0」と、「今回P1」とに基づくパルス信号の現在の状態を表す項目で、「1」、「0」、「X」が含まれる。ここでいう、現在のパルスの状態が「1」とはハイレベルを意味し、「0」はローレベルを意味し、「X」とは、「0と1のどちらでもよい」を意味し、言い換えると「現在のパルスの状態は関係ない」である。
【0031】
次に、判定結果の項目について説明する。判定結果は、更に「エッジ検出」と「異常検出」との項目を有する。エッジ検出は、検出されたパルスエッジについての情報として、「立ち下がり」、「立ち上がり」、「エッジ無し」という内容が含まれる。また、判定結果は、判定値から判定されるシリアル通信の異常発生有無に関する情報であり、例えば、「異常」と「正常」とが含まれる。
【0032】
(エラーカウンタ記憶部124)
ここで、図2に戻り説明を続ける。エラーカウンタ記憶部124は、判定部133により異常が発生したと判定された場合に、更新部134により更新されるエラーの発生回数(エラーカウンタ)に関する情報である。なお、エラーカウンタ記憶部124には、エラーカウンタの閾値に関する情報(エラーカウンタが所定の閾値を超えた場合に、異常発生に対する処理を実施する)も記憶されていてよい。
【0033】
(パルスカウンタ記憶部125)
パルスカウンタ記憶部125は、後述の判定部133により異常が発生無しと判定され、かつ検出部132により立ち上がりパルスが検出された場合に、更新部134により更新されるパルスの発生回数(パルスカウンタ)に関する情報である。
【0034】
(制御部130)
制御部130は、プロセッサ(Processor)や、MPU(Micro Processing Unit)や、CPU(Central Processing Unit)等が、記憶部120に記憶されている各種プログラムについて、RAMを作業領域として実行することにより、実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のIC(Integrated Circuit)により実現される。
【0035】
図2に示す通り、制御部130は、送受信部131と、検出部132と、判定部133と、更新部134と、通知部135と、再起動部136、算出部137とを有する。また、制御部130は、本実施形態におけるマスタ側(スレーブ側に命令等を出す機能部)であり、信号受付部140(スレーブ側)へのリード要求等を行う。
【0036】
(送受信部131)
送受信部131は、シリアル通信部143により送信されたパルス信号として入力信号およびパルス信号を反転した反転入力信号を受信する。なお、送受信部131は、通信部110を介してシリアル通信部143からの所定の情報の受信を行ってもよいし、シリアル通信部143から直接受信してもよい。
【0037】
(検出部132)
検出部132は、入力信号と、反転入力信号と、パルスの状態とに基づきパルスエッジを検出する。具体的には、検出部132は、第1の時点(例えば、図3では「前回」)および第2の時点(例えば、図3では「今回」)における入力信号と、反転入力信号と、パルスの状態とを比較して、立ち上がりパルスエッジまたは立ち下がりパルスエッジの少なくともどちらか一方をパルスエッジとして検出する。
【0038】
ここで、図3を用いて、検出部132によるパルエッジの検出について説明する。例えば、送受信部131は、前回P0が「1」で、前回P1が「0」で、今回P0が「0」で、今回P1が「1」でというパルス信号を受信したとする。更に、現在のパルスの状態は、「1」であるとする。そのため、検出部132は、真理値表10に基づいて、パルスエッジを「立ち下がり」と検出することができる。
【0039】
(判定部133)
ここで、再び図2に戻り説明を続ける。判定部133は、パルスエッジが検出された際の入力信号および反転入力信号との変化に基づいて、シリアル通信に異常が発生していると判定する。具体的には、判定部133は、パルスエッジが検出された際に第1の時点(例えば、図3では「前回」)および第2の時点(例えば、図3では「今回」)における入力信号および反転入力信号を比較して、前述の入力信号および反転入力信号に変動が無い場合にシリアル通信に異常が発生していると判定する。
【0040】
本実施形態においては、送受信部131とシリアル通信部143とは、シリアル通信としてI2C通信で情報のやり取りを行うことができる。そのため、判定部133は、シリアル通信としてI2C通信についての異常の有無を判定することができる。
【0041】
ここで、図1図3を用いて、判定部133による異常発生の有無の判定について説明する。例えば、信号受付部140からの送信が停止するとリードデータは全て1になる(図1の(3))。検出部132は、図3に示す真理値表10に基づき、送受信部131により受信された前回P0が「1」で、前回P1が「1」で、今回P0が「1」で、今回P1が「1」でというパルス信号と、現在のパルスの状態が「X」とに基づいて、パルスエッジを「エッジ無し」と検出したとする。そのため、判定部133は、真理値表10に基づいて、判定結果を「異常」として判定することができる。
【0042】
(更新部134)
ここで、再び図2に戻り説明を続ける。更新部134は、判定部133の判定結果に基づき、エラーカウンタを更新する。具体的には、判定部133により異常が発生していると判定された場合に、エラーカウンタ記憶部124により記憶されたエラーカウンタを更新できる。例えば、更新部134は、判定部133が異常発生と判定した場合、エラーカウンタを加算して更新してよい。
【0043】
また、更新部134は、判定部133の判定結果および検出部132のパルスエッジの検出結果に基づき、パルスカウンタを更新する。具体的には、更新部134は、判定部133により異常が発生無しと判定され、かつ検出部132によりパルスエッジが検出された場合に、パルスカウンタを加算して更新してよい。
【0044】
(通知部135)
通知部135は、エラーカウンタが所定の条件を満たす場合に、上位装置200に対して異常発生に関する情報を通知する。例えば、通知部135は、更新部134により更新されたエラーカウンタが予め設定された閾値を超えた場合、通信部110を介して上位装置200に異常が発生している旨を通知することができる。
【0045】
(再起動部136)
再起動部136は、エラーカウンタが所定の条件を満たす場合に、信号受付部140に対して、再起動処理を実施する。例えば、再起動部136は、更新部134により更新されたエラーカウンタが予め設定された閾値を超えた場合、信号受付部140に対して再起動(例えば、リセット処理の実施による異常状態からの復帰等)を実施することができる。
【0046】
(算出部137)
算出部137は、上位装置200に送信するための所定の情報を算出する。例えば、算出部137は、所定の情報として、検出部132により検出されたパルスエッジに関する情報(立ち上がりエッジまたは立ち下がりエッジ)、パルスのカウント数、上位装置200がパルス周波数の計算に用いる時間情報の算出を行うことができる。なお、算出部137は、異常発生有無に関わらず所定の情報を算出してよい。また、算出部137は、通信部110を介して上位装置200に算出した情報を送信してよい。
【0047】
(信号受付部140)
信号受付部140は、本実施形態におけるスレーブ側(マスタ側からの命令等に基づいて所定の処理を行う機能部)であり、例えば、IOエキスパンダ等であってよい。また、信号受付部140は、図2に示す通り、入力信号受付部141と、反転入力信号受付部142と、シリアル通信部143とを有する。
【0048】
ここから、信号受付部140について、更に補足して説明する。なお、本実施形態においてはシリアル通信の一形態として、I2C通信を用いる前提で説明を行う。本実施形態の情報処理装置100は、入力される信号の立ち上がり(例えば、ロジックレベルL→H)にてパルスを検出する。なお、本項目においても情報処理装置100の構成は、パルス検出を実施する側をマスタ側(制御部130)、入力信号を外部の装置(本実施形態では、フィールド機器300)から受け付ける側をスレーブ側(信号受付部140)とする。
【0049】
前述してきた通り、信号受付部140(スレーブ側)は、制御部130(マスタ側)との間で、シリアル通信としてI2C通信を用いて情報のやり取りを行う。ここで、図4を用いてI2C通信について説明を行う。図4は、本実施形態に係るI2C通信の概要の一例を示す図である。
【0050】
なお、本実施形態では、受け付ける入力信号であるパルスの上限周波数の仕様、およびI2C通信のクロック周波数の制限から入力信号を受け付けるための初期設定のライト後は、バースト転送にて常時入力値のリードを実施する前提として、説明を行う。
【0051】
図4では、I2C通信の概要が示されている。I2C通信では、まずマスタ側がスレーブ側に対するリード要求として、スレーブアドレスを送信する。続いて、スレーブ側は、マスタ側からの通信がエラー無く到達した場合、ACK(ACKnowledge、または肯定応答)をマスタ側に返答する。さらに、スレーブ側は、マスタ側のリード要求に基づきバーストリードしたリードデータ(図4では、P0リードデータ等)をマスタ側に送信する。そして、マスタ側は、スレーブ側からの通信がエラー無く到達した場合、ACKをスレーブ側に返答する。
【0052】
このようにして、I2C通信においてマスタ側とスレーブ側は、「リード要求(マスタ側)」→「通信成否通知(スレーブ側)」→「リード結果返答(スレーブ側)」→「通信成否通知(マスタ側)」という一連の流れで情報のやり取りを行うことができる。
【0053】
(入力信号受付部141)
ここで、再び図2に戻り説明を続ける。入力信号受付部141は、所定の外部の装置(例えば、フィールド機器300)からパルス信号として入力信号を受け付ける。なお、入力信号受付部141は、パルス信号の範疇であれば特に限定無く信号を受け付けることができる。
【0054】
(反転入力信号受付部142)
反転入力信号受付部142は、所定の外部の装置(例えば、フィールド機器300)からパルス信号として、入力信号を反転させた反転入力信号を受け付ける。なお、反転入力信号受付部142は、パルス信号の範疇であれば特に限定無く信号を受け付けることができる。
【0055】
(シリアル通信部143)
シリアル通信部143は、入力信号受付部141が受け付けた入力信号と反転入力信号受付部142が受け付けた反転入力信号とを、シリアル通信にて送受信部131に送信する。例えば、シリアル通信部143は、シリアル通信として、I2C通信を用いて入力信号と反転入力信号とを制御部130(マスタ側)に送信することができる。
【0056】
〔2-2.上位装置〕
(上位装置200)
上位装置200は、情報処理装置100からのパルスのカウント数と時間情報からパルス周波数を計算し、運転状態の表示、および他の機器の制御等を行うことができる。なお、本実施形態においては、上位装置200の用途や適用分野は、限定されない。
【0057】
〔2-3.フィールド機器〕
(フィールド機器300)
フィールド機器300は、プラント等(例えば、石油化学に係るプラント等)で用いられる流量計等の機器であり、運転状態等をパルス信号で情報処理装置100に送信することができる。なお、本実施形態においては、フィールド機器300の用途や適用分野は、限定されない。
【0058】
〔3.処理手順〕
ここから、本実施形態に係る情報処理装置100の情報処理手順を、図5を用いて説明する。図5は、本実施形態に係る情報処理手順についてのフローチャートである。なお、以下に記載する各ステップは、異なる順序で実行されてもよいし、省略される処理があってもよい。また、各実施形態の処理手順を適宜組み合わせて実施されてよい。
【0059】
信号受付部140(スレーブ側)は、入力信号と反転入力信号とを受け付ける(工程S101)。制御部130(マスタ側)は、信号受付部140(スレーブ側)へのリード要求を行う(工程S102)。送受信部131は、リード要求に基づき信号受付部140(スレーブ側)により送信された入力信号を受信する(工程S103)。続けて、信号受付部140(スレーブ側)により送信された反転入力信号を受信する(工程S104)。
【0060】
検出部132は、受信した入力信号と、反転入力信号と、現在のパルスの状態とを用いてパルスエッジを検出する(工程S105)。次に、判定部133は、真理値表に基づき所定の判定として、シリアル通信(I2C通信)の異常有無の判定を行う(工程S106)。
【0061】
ここで、判定部133により異常有りと判定された場合(工程S107のYes)、更新部134は、エラーカウンタを更新する(工程S108)。さらに、エラーカウンタが予め設定された閾値を超えた場合(工程S109のYes)、通知部135は、上位装置200に異常の発生を通知する(工程S110)。続けて、再起動部136は、信号受付部140(スレーブ側)の再起動処理を行い(工程S111)、工程を終了する。なお、情報処理装置100は、エラーカウンタが予め設定された閾値を超えていない場合(工程S109のNo)、工程を戻り処理を継続する。
【0062】
他方、判定部133により異常無しと判定された場合(工程S107のNo)、かつ立ち上がりエッジの検出された場合(工程S112のYes)、更新部134は、パルスカウンタを更新し(工程S113)、工程を終了する。なお、立ち上がりエッジの検出されない場合(工程S112のNo)、情報処理装置100は、工程を戻り処理を継続する。
【0063】
〔4.効果〕
従来技術では、シリアル通信においてマスタ側がライトデータを送信する場合、スレーブ側によりACK/NACKビットが送信されるためスレーブ側の異常を検出する。一方で、スレーブ側からリードデータを受信する場合、データをバーストリードしている最中にマスタ側がACK/NACKビットを送るためスレーブ側の異常を検出できない。従って、従来技術のシリアル通信においてバーストリードで入力信号を取得する場合、スレーブ側の異常による入力信号の異常を検出できない場合があった。
【0064】
そこで、本実施形態に係るフィールド機器から出力されるパルス信号を受け付け、上位装置に所定の情報を送信する。情報処理装置100は、パルス信号として入力信号およびパルス信号を反転した反転入力信号を受信し、入力信号と、反転入力信号と、パルスの状態とに基づきパルスエッジを検出し、パルスエッジが検出された際の入力信号および反転入力信号の変化に基づいて、シリアル通信に異常が発生していると判定する。そのため、本実施形態によれば、下記の効果を奏する。
【0065】
本実施形態に係る情報処理装置100は、シリアル通信におけるバースト転送時の異常の検知を可能とする、という効果を奏する。
【0066】
具体的には、検出部132は、第1の時点(前回)および第2の時点(今回)におけるパルスの状態を比較して、立ち上がりパルスエッジまたは立ち下がりパルスエッジの少なくともどちらか一方をパルスエッジとして検出する。そして、判定部133は、パルスエッジが検出された際に第1の時点(前回)および第2の時点(今回)における入力信号および反転入力信号を比較して、入力信号および反転入力信号に変動が無い場合にシリアル通信に異常が発生していると判定する。そのため、情報処理装置100は、従来技術では検知できなかったシリアル通信(I2C通信)の、バースト転送時に発生した異常をパルス信号の状態に基づいて検知することを可能とする。
【0067】
また、本実施形態に係る情報処理装置100は、シリアル通信としてI2C通信に基づいてパルスに関する情報のやり取りができる。このI2C通信は、1バイト構成のため、最大で8台の機器の入力信号を取得することを可能とする。そのため、情報処理装置100は、前述したようにI2C通信においてもバースト転送で異常を検知することを可能とし、更に同時に複数台のフィールド機器から情報を取得することを可能とする。それにより、情報処理装置100は、フィールド機器に係る分散制御システムにおいて、効率的にフィールド機器の監視のための情報を上位装置に提供することができる。
【0068】
〔5.ハードウェア構成〕
本実施形態に係る情報処理装置100は、例えば、図6に示すような構成のコンピュータ1000によって実現される。図6は、本実施形態に係る情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、補助記憶装置1400、通信I/F(インタフェース)1500、入出力I/F(インタフェース)1600が、バス1800により接続された形態を有する。
【0069】
CPU1100は、ROM1300または補助記憶装置1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0070】
補助記憶装置1400は、CPU1100によって実行されるプログラム、および、係るプログラムによって使用されるデータ等を格納する。通信I/F1500は、所定の通信網NWを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網NWを介して他の機器へ送信する。CPU1100は、入出力I/F1600を介して、ディスプレイやプリンタ等の出力装置、および、キーボードやマウス等の入出力装置1700を制御する。CPU1100は、入出力I/F1600を介して、入出力装置1700からデータを取得する。また、CPU1100は、生成したデータについて入出力I/F1600を介して入出力装置1700へ出力する。
【0071】
例えば、コンピュータ1000が本実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。
【0072】
〔6.その他〕
前述の実施形態および変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0073】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の通り構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0074】
前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述してきた実施形態および変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0075】
また、前述してきた「部(section、module、unit)」は、「手段」や「回路」等に読み替えることができる。例えば、制御部は、制御手段や制御回路に読み替えることができる。
【0076】
以上、実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で、本実施形態について実施をすることが可能である。
【符号の説明】
【0077】
10 真理値表
100 情報処理装置
110 通信部
120 記憶部
121 信号記憶部
122 パルス記憶部
123 真理値表記憶部
124 エラーカウンタ記憶部
125 パルスカウンタ記憶部
130 制御部
131 送受信部
132 検出部
133 判定部
134 更新部
135 通知部
136 再起動部
137 算出部
140 信号受付部
141 入力信号受付部
142 反転入力信号受付部
143 シリアル通信部
200 上位装置
300 フィールド機器
1000 コンピュータ
1100 CPU
1200 RAM
1300 ROM
1400 補助記憶装置
1500 通信I/F
1600 入出力I/F
1700 入出力装置
1800 バス
NW 所定の通信網
図1
図2
図3
図4
図5
図6