(57)【要約】【課題】装置を起動している状態でも、超音波診断装置自体が自己診断を実行可能な状態を検知しテストを逐次実行することで、診断周期よりも短い期間で、ハードウェアの故障や異常を検出する超音波診断装置を提供する。【解決手段】プログラム管理部９２は、ハードウェア要素を自己診断するための自己診断プログラムを所定のブロック単位のサブプログラムに分割して時系列的に実行可能に管理する。自己診断実行部９１は、制御部１０からハードウェア要素の休止指示を受けて、自己診断経過管理部９３に管理された実行経過を基に前記プログラム管理部から次に実行すべきサブプログラムを読込み実行する。自己診断の実行中に制御部１０からハードウェア要素の起動指示を受けると、自己診断実行部９１は、実行中のサブプログラムを停止し、実行経過を自己診断経過管理部９３に記憶する。【選択図】図１
2010193958.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも超音波を送受信する送受信部を含むハードウェア要素と、各ハードウェア要素を制御する制御部を備え、受信した超音波を基に画像を生成する超音波診断装置において、
前記ハードウェア要素を自己診断するための自己診断プログラムであって、所定のブロック単位のサブプログラムに分割して時系列的に実行可能に管理しているプログラム管理部と、
前記サブプログラム単位に過去の自己診断の実行経過を管理する自己診断経過管理部と、
前記制御部からハードウェア要素の休止指示を受けた場合、前記自己診断経過管理部の実行経過を基に前記プログラム管理部から次に実行すべきサブプログラムを読込み実行させる自己診断実行部とを有することを特徴とする超音波診断装置。
【請求項２】
前記自己診断実行部は、さらに、前記制御部からハードウェア要素の起動指示を受けた場合、実行中のサブプログラムを停止し、自己診断プログラムの実行経過をサブプログラム単位で前記自己診断経過管理部に記憶することを特徴とする請求項１に記載の超音波診断装置。
【請求項３】
前記プログラム管理部は、前記ハードウェア要素に含まれる送受信装置を自己診断するための自己診断プログラムを対象として、超音波の送受信を行う各超音波振動子に対応したチャンネルごとの単位で自己診断する処理を１つ又は複数のチャンネルごとに前記所定のブロックとしてまとめ、サブプログラムとして管理することを特徴とする請求項１又は請求項２に記載の超音波診断装置。
【請求項４】
前記プログラム管理部は、前記ハードウェア要素に内蔵されるメモリを自己診断するための自己診断プログラムを対象として、前記メモリの容量を所定のサイズに分けて前記所定のブロックとし、前記所定のブロックを自己診断する処理をサブプログラムとして管理することを特徴とする請求項１又は請求項２に記載の超音波診断装置。
【請求項５】
前記自己診断実行部は、前記サブプログラムの実行時に、当該サブプログラムが診断対象とする前記ブロック単位に、各ブロックが管理している検査用のデータを前記自己診断経過管理部に退避し、自己診断用のデータに書換えたうえで当該サブプログラムを実行し、当該サブプログラムの実行完了後に、前記自己診断経過管理部に退避した検査用のデータを、退避もとのブロックに退避前と同じ状態で復元することを特徴とする請求項１乃至請求項４のいずれかに記載の超音波診断装置。
【請求項６】
前記自己診断経過管理部に管理されている自己診断の経過を表示する表示制御部及び表示部を有することを特徴とする請求項１乃至請求項５のいずれかに記載の超音波診断装置。
【請求項７】
前記自己診断プログラムの実行後に再度前記自己診断プログラムを実行するまでの診断周期を記憶する診断周期記憶部と、
前記診断周期記憶部に記憶された診断周期を受け、前記自己診断プログラム実行後の経過時間を計測するとともに、前記経過時間が前記診断周期を過ぎたか否かを比較判定する診断期間管理部とを有し、
前記自己診断実行部は、前記自己診断プログラムの実行が完了している場合に、所定のタイミングで前記診断期間管理部に経過時間と診断周期の比較判定結果を確認し、前記経過時間が前記診断周期に満たない場合に、前記制御部からのハードウェア要素の休止指示に伴う自己診断プログラムの実行を抑止することを特徴とする請求項１乃至請求項６のいずれかに記載の超音波診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、超音波診断装置の機能テストを自動的に行う自己診断技術に係わり、特に超音波診断装置を構成するプローブや送受信部等のハードウェア（以降はハードウェア要素と呼ぶ）が未使用時に自己診断を行うプログラムを逐次実行することで、当該超音波診断装置が起動しながらでもハードウェア要素の故障や異常の検出を可能とする自己診断機能を備えた超音波診断装置に関する。
【背景技術】
【０００２】
超音波診断装置を構成するハードウェア要素の故障や異常を診断する手段として、複数の種類の自己診断を一連のシーケンスとしてあらかじめプログラミングした手順で連続実行することにより、多数の項目についてのテスト作業及び結果判定を自動的に行うことを可能とする自己診断方法及び自己診断装置が特許文献１にて開示されている（特許文献１では、自己診断をテストと呼んでいる）。
【０００３】
特許文献１では、この自己診断方法及び自己診断装置を、超音波診断装置製造時の動作確認テストの自動化以外にも、既に稼働中の超音波診断装置に対し起動検査と故障診断を行う動作確認の自己診断として応用可能であることが記載されている。
【０００４】
この技術を応用し、具体的には、所定の操作時（例えば装置の起動時）に自動であらかじめプログラムされた複数種類の自己診断を実行させる機能や、操作者が直接もしくは遠隔操作で装置を操作し任意の自己診断を実行させる機能が確立されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２３１７８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、起動時に自動で自己診断を実行するとしても、自己診断の実行中は装置を使用することができず、これにより自己診断が完了するまで装置の起動が完了せず起動時間が長くなるため、時間のかかる自己診断は起動時に自動で実行される自己診断には含まれておらず、全ての自己診断を実行するためには、操作者が機器を操作し自己診断を実行させる必要があった。
【０００７】
そのため、機器のメンテナンスを行う周期（診断周期と呼ぶ）よりも短い期間で発生した、ハードウェアの故障や異常を検出することは困難であり、診断周期を短くするとしても、人間が操作するため限界があった。
【０００８】
この発明は上記の問題を解決するものであり、装置を起動している状態でも、超音波診断装置自体が自己診断を実行可能な状態を検知し自己診断を逐次実行することで、診断周期よりも短い期間で、ハードウェアの故障や異常を検出する超音波診断装置の提供を目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１に記載の発明は、少なくとも超音波を送受信する送受信部を含むハードウェア要素と、各ハードウェア要素を制御する制御部を備え、受信した超音波を基に画像を生成する超音波診断装置において、前記ハードウェア要素を自己診断するための自己診断プログラムであって、所定のブロック単位のサブプログラムに分割して時系列的に実行可能に管理しているプログラム管理部と、前記サブプログラム単位に過去の自己診断の実行経過を管理する自己診断経過管理部と、前記制御部からハードウェア要素の休止指示を受けた場合、前記自己診断経過管理部の実行経過を基に前記プログラム管理部から次に実行すべきサブプログラムを読込み実行させる自己診断実行部とを有することを特徴とする超音波診断装置である。
また、請求項２に記載の発明は、前記自己診断実行部が、さらに、前記制御部からハードウェア要素の起動指示を受けた場合、実行中のサブプログラムを停止し、自己診断プログラムの実行経過をサブプログラム単位で前記自己診断経過管理部に記憶することを特徴とするものである。
また、請求項３に記載の発明は、前記プログラム管理部が、前記ハードウェア要素に含まれる送受信装置を自己診断するための自己診断プログラムを対象として、超音波の送受信を行う各超音波振動子に対応したチャンネルごとの単位で自己診断する処理を１つ又は複数のチャンネルごとに前記所定のブロックとしてまとめ、サブプログラムとして管理することを特徴とするものである。
また、請求項４に記載の発明は、前記プログラム管理部が、前記ハードウェア要素に内蔵されるメモリを自己診断するための自己診断プログラムを対象として、前記メモリの容量を所定のサイズに分けて前記所定のブロックとし、前記所定のブロックを自己診断する処理をサブプログラムとして管理することを特徴とするものである。
また、請求項５に記載の発明は、前記自己診断実行部が、前記サブプログラムの実行時に、当該サブプログラムが診断対象とする前記ブロック単位に、各ブロックが管理している検査用のデータを前記自己診断経過管理部に退避し、自己診断用のデータに書換えたうえで当該サブプログラムを実行し、当該サブプログラムの実行完了後に、前記自己診断経過管理部に退避した検査用のデータを、退避もとのブロックに退避前と同じ状態で復元することを特徴とするものである。
また、請求項６に記載の発明は、前記自己診断経過管理部に管理されている自己診断の経過を表示する表示制御部及び表示部を有することを特徴とするものである。
また、請求項７に記載の発明は、前記自己診断プログラムの実行後に再度前記自己診断プログラムを実行するまでの診断周期を記憶する診断周期記憶部と、前記診断周期記憶部に記憶された診断周期を受け、前記自己診断プログラム実行後の経過時間を計測するとともに、前記経過時間が前記診断周期を過ぎたか否かを比較判定する診断期間管理部とを有し、前記自己診断実行部は、前記自己診断プログラムの実行が完了している場合に、所定のタイミングで前記診断期間管理部に経過時間と診断周期の比較判定結果を確認し、前記経過時間が前記診断周期に満たない場合に、前記制御部からのハードウェア要素の休止指示に伴う自己診断プログラムの実行を抑止することを特徴とするものである。
【発明の効果】
【００１０】
本発明によれば、装置を起動して本来の診断装置としての機能を実行しながらでも、超音波診断装置自体が自己診断を実行可能な契機を検知し、あらかじめブロック単位に分割された自己診断プログラムを自動で逐次実行することで、ハードウェア要素の故障・異常の検出を行い、その結果をユーザに通知することができるため、故障もしくは経年劣化などによる性能低下したハードウェア要素をいち早く発見することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態の機能ブロック図である。
【図２】(a).は休止割込みに伴い試験シーケンスを開始する処理（休止割込みハンドラ）に関するフローチャートであり、(b).は起動割込みに伴い試験シーケンスを停止する処理（起動割込みハンドラ）に関するフローチャートである。
【図３】休止割込みを受けた場合の試験シーケンスの処理に関するフローチャートである。
【図４】起動割込みを受けた場合の試験シーケンスの処理に関するフローチャートである。
【図５】待機モードへの移行と待機モードの解除に関する試験シーケンスのフローチャートである。
【図６】(a).は従来技術における自己診断の処理の流れを表すシーケンス図であり、(b).は本発明における自己診断の処理の流れを表すシーケンス図である。
【図７】本発明における休止割込み及び起動割込み発生時の自己診断の起動・停止の処理の流れを表すシーケンス図である。
【発明を実施するための形態】
【００１２】
（超音波診断を主とする構成）
図１は本実施形態の機能ブロック図である。図１でプローブ２は、複数の超音波振動子が所定方向（走査方向）に１列に配置された１次元アレイプローブ、又は、複数の超音波振動子が２次元的に配置された２次元アレイプローブが用いられる。また、超音波振動子が所定方向（走査方向）に配列され、超音波振動子を走査方向に直行する方向（振動方向）に機械的に揺動可能な１次元アレイプローブを用いても良い。
【００１３】
送受信部３は、送信部と受信部とを備え、プローブ２に電気信号を供給して超音波を発生させて被検体に送り、プローブ２が被検体から戻ってきたエコー信号を受信する。これら送信部及び受信部はシーケンス処理部４の制御によりシーケンス処理部４から各超音波振動子に対応した個別経路（チャンネル）ごとに設定される制御用データに基づき動作する。
【００１４】
送受信部３の送信部は、図示しないクロック発生回路、送信遅延回路、及びパルサ回路を備えている。送信遅延回路は、超音波の送信時に遅延を掛けて送信フォーカスを実施する回路である。パルサ回路は、チャンネルの数分のパルサを内蔵し、遅延が掛けられた送信タイミングで駆動パルスを発生し、プローブ２の各超音波振動子に供給するようになっている。
【００１５】
送受信部３の受信部は、プリアンプ回路、Ａ／Ｄ変換回路、及び受信遅延・加算回路を備えている。プリアンプ回路は、プローブ２の各超音波振動子から出力されるエコー信号を受信チャンネルごとに増幅する。Ａ／Ｄ変換回路は、増幅されたエコー信号をＡ／Ｄ変換する。受信遅延・加算回路は、Ａ／Ｄ変換後のエコー信号に対して受信指向性を決定するのに必要な遅延時間を与え、加算する。その加算により、受信指向性に応じた方向からの反射成分が強調される。なお、この送受信部３によって加算処理された信号を「ＲＦデータ（生データ）」と称する場合がある。送受信部３は、ＲＦデータを信号処理部５に出力する。
【００１６】
シーケンス処理部４は、送受信部３のチャンネルごとに例えばＢモードなどの各モードに対応した制御データの管理と、送受信部３の各チャンネルに対応した回路の動作タイミングも含めた送受信処理の一連の動作の管理を行っている。シーケンス処理部４は、超音波検査実施時に各チャンネルに対応する回路の動作タイミングを一連のシーケンスに基づき、動作するチャンネルの制御データを、超音波検査の動作モードにあわせて当該チャンネルに設定するとともに、当該チャンネルに対応する各回路の起動を制御する。
【００１７】
信号処理部５は、Ｂモード処理部やＣＦＭ（Ｃｏｌｏｒ Ｆｌｏｗ Ｍａｐｐｉｎｇ）処理部などを備えて構成されている。Ｂモード処理部は、エコーの振幅情報の映像化を行う。具体的には、Ｂモード処理部は送受信部３から出力された受信信号に対してバンドパスフィルタ処理を行い、その後、出力信号の包絡線を検波し、検波されたデータに対して対数変換による圧縮処理を施す。また、ＣＦＭ処理部は、動いている血流情報の映像化を行う。血流情報には、速度、分散、パワー等の情報があり、血流情報は２値化情報として得られる。
【００１８】
画像データ生成部６１は、走査線信号列で表される信号処理後のデータを、空間座標に基づいた座標系のデータに変換する（デジタルスキャンコンバージョン）。例えば、画像データ生成部６１は、Ｂモード処理部から出力された信号処理後のデータに対してスキャンコンバージョン処理を施すことで、被検体の組織形状を表すＢモード画像データを生成する。そして、画像データ生成部６１は、Ｂモード画像データなどの超音波画像データを画像データ記憶部６２に出力する。
【００１９】
また、ボリュームスキャンが行なわれている場合、画像データ生成部６１は、信号処理部５からボリュームデータを受け、そのボリュームデータにボリュームレンダリングを行うことで３次元画像データを生成するようにしても良い。さらに、画像データ生成部６１は、ボリュームデータにＭＰＲ処理（Ｍｕｌｔｉ Ｐｌａｎｎａｒ Ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ）を施すことにより、ＭＰＲ画像データ（任意断面の画像データ）を生成するようにしても良い。そして、画像データ生成部６１は、３次元画像データやＭＰＲ画像データなどの超音波画像データを画像データ記憶部６２に出力する。
【００２０】
画像データ生成部６１によって生成されたＢモード画像データや３次元画像データなどの超音波画像データは、画像データ記憶部６２に記憶される。
【００２１】
以下、画像データ生成部６１及び画像データ記憶部６２を総じて画像データ処理部６と呼ぶ場合がある。画像データ処理部６と記載する場合は、画像データ生成部６１及び画像データ記憶部６２を含むものとする。
【００２２】
画像データ記憶部６２に記憶された超音波画像データは、表示制御部７によりユーザインタフェース８の表示部８１に表示される。
【００２３】
表示制御部７は、画像データ記憶部６２に記憶された画像データを表示部８１に表示する表示制御を行っている。また、自己診断経過管理部９３に記憶された自己診断の結果や実行時のログを表示部８１に表示する表示制御も行っている。さらに、自己診断の実行中には、自己診断が実行中であることをユーザが認識できるように、表示部８１に試験中を示すマークを表示しても良い。
【００２４】
制御部１０は、ユーザインタフェース８の操作部８２からの操作者の操作を受け、前記プローブ２、送受信部３、シーケンス処理部４、信号処理部５、画像データ処理部６などのハードウェア要素の起動及び停止を制御する。例えば、操作者が操作部８２を用いてフリーズを指示すると、制御部１０は前記ハードウェア要素を停止し休止状態とするとともに、後述する自己診断実行部９１にハードウェア要素の休止を通知する（以下、休止割込みと呼ぶ）。
【００２５】
また、操作者が操作部８２を用いて超音波検査の開始を指示すると、制御部１０は自己診断実行部９１にハードウェア要素の起動を通知する（以下、起動割込みと呼ぶ）とともに、ハードウェア要素を起動し超音波検査を実行可能な状態とする。
【００２６】
（自己診断を主とする構成）
次にハードウェア要素を自己診断する構成を主に説明する。ハードウェア要素とは、超音波診断装置１を構成する、プローブ２、送受信部３、シーケンス処理部４、信号処理部５、及び、画像データ処理部６を指す。
【００２７】
ここの例では、自己診断は主に送受信テストに関する自己診断とメモリの検査に関する自己診断に分類される。自己診断は後述する自己診断実行部９１により、後述するプログラム管理部９２に管理されている自己診断プログラムとして実行される。第１実施形態に係る超音波診断装置１においては、自己診断プログラムはあらかじめ所定の単位でサブプログラムに分割されており、自己診断実行部９１は自己診断をサブプログラム単位で逐次実行する。
【００２８】
（サブプログラムへの分割方法）
ここで、自己診断プログラムをサブプログラムに分割する方法について説明する。自己診断プログラムの分割は、自己診断の種類、例えば、プローブの送受信装置に関する診断やシーケンス処理部のメモリ検査に関する診断などの単位で分割（診断番号単位に分割）し、さらに、各診断が対象とするハードウェア要素を所定の単位でブロックに分け、ブロック単位の診断処理に分割することでなされ、このブロック単位の診断処理内容がサブプログラムとなる。
【００２９】
ブロック単位への分割方法について、さらに例をあげて説明する。前述したとおり、自己診断は主に送受信テストに関する自己診断とメモリの検査に関する自己診断に分類して説明する。
【００３０】
送受信テストに関する自己診断プログラムをブロック単位に分割する場合、最小のブロックは診断対象となる送受信装置のチャンネルとなる。つまり、１２８チャンネルの送受信装置は最大で１２８のブロックに分割され、この場合、送受信テストに関する自己診断プログラムは１２８のサブプログラムに分割されることになる。
【００３１】
なお、送受信テストに関する自己診断プログラムの分割方法として、他にもサブアレイごと、ＦＰＧＡ（Ｆｉｅｌｄ Ｐｒｏｇｒａｍｍａｂｌｅ Ｇａｔｅ Ａｒｒａｙ）ごと、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ Ｓｐｅｃｉｆｉｃ Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）ごとなどの実装構成単位でブロック単位として分割しても良い。
【００３２】
また、メモリの検査に関する自己診断プログラムをブロック単位に分割する場合は、例えば１２８ｋｂｙｔｅなどの一定のサイズでメモリを領域分割し、それぞれの領域を１ブロックとする。例えば、１００Ｍｂｙｔｅのメモリを１２８ｋｂｙｔｅごとの領域に分割した場合、８００のブロックに分割され、この場合、メモリの検査に関する自己診断プログラムは８００のサブプログラムに分割されることになる。
【００３３】
なお、メモリの検査に関する自己診断プログラムの分割においては、領域分割するサイズを、例えば１２８ｋｂｙｔｅ、２５６ｋｂｙｔｅ、５１２ｋｂｙｔｅ、１Ｍｂｙｔｅなどとして分割しても良い。
【００３４】
自己診断プログラムは、これらの分割方法のうちから選択されたいずれか一つの分割方法をもとにあらかじめ分割され、プログラム管理部に記憶される。また、これらの分割方法をもとに分割する手段をプログラム管理部に備え、プログラム管理部に自己診断プログラムを記憶させる時に、操作部より操作者が分割方法を選択し、選択された分割方法に従い自己診断プログラムを分割できるようにしても良い。
【００３５】
プログラム管理部９２は、実行すべき順に分割されたサブプログラムを記憶し、読み出し可能に管理している。
【００３６】
自己診断経過管理部９３は、自己診断に使用する制御データや自己診断時に取得したデータと照合し結果を確認する結果確認用のデータ、自己診断の実行経過、及び、自己診断の診断結果や実行時のログを記憶し管理する。ここで、自己診断の実行経過は、これまで自己診断実行部９１が実行してきた自己診断の進捗状況を表す、自己診断の診断番号Ｘ及びサブプログラムが診断対象としていたブロックのブロック番号Ｙを指す。また、実行時のログは、自己診断を実行した時点の日時など、自己診断を実行した事実を証明するための情報を指す。
【００３７】
自己診断経過管理部９３は、あらかじめプログラム管理部９２に記憶されているサブプログラムのリストを認識しており、かつ、自己診断実行部９１が実行してきた自己診断の進捗状況を実行経過として記憶しておく。従って自己診断経過管理部９３は、今現在の時点において、これまでどのサブプログラムの実行が完了しており、次にどのサブプログラムを実行すべきかを認知している。
【００３８】
自己診断経過管理部９３に記憶された自己診断の結果や実行時のログは、表示制御部７によりユーザインタフェース８の表示部８１に表示される。自己診断の結果や実行時のログは不揮発情報として自己診断経過管理部９３に記憶されている。そのため、操作部８２から操作することで、制御部１０を介し自己診断実行部９１を制御し、自己診断経過管理部９３に管理された自己診断の結果や実行時のログを、所定のタイミングで参照することも可能である。
【００３９】
また、自己診断経過管理部９３に記憶された自己診断の結果や実行時のログは、必要に応じて、操作部８２からの操作者の指示を受けて、制御部１０を介し自己診断実行部９１を制御し、超音波検査時に設定する被検体の情報に埋め込めるようにしても良い。
【００４０】
ほかにも、自己診断経過管理部９３は、診断実行時に診断対象のハードウェアが記憶している制御データなどの検査データの退避領域としても使用される。
【００４１】
（自己診断プログラムの処理内容）
次に、自己診断の処理の概要について例をあげて説明する。例えば、診断装置が操作部８２からの指示によりフリーズ状態であって、送受信部３の送受信テストに関する自己診断を実行する場合、自己診断実行部９１は、自己診断経過管理部９３に管理記憶された実行経過を参照して、実行するサブプログラムが対象としている送受信部３のチャンネルを特定し実行することで、（１）当該チャンネルに記憶されている送受信用の制御データ及びプローブからの受信データを、後述する自己診断経過管理部９３に退避記憶するとともに、自己診断経過管理部９３に管理されている当該チャンネル診断用の制御データに置き換えたうえで送受信テストの自己診断を実行する。（２）自己診断を実行した結果として得られた受信データは、自己診断経過管理部９３に管理されている結果確認用のデータと照合し、受信データの照合結果及び自己診断実行時のログを自己診断経過管理部９３に記憶する。（３）自己診断の完了後は、退避記憶された送受信用の制御データ及び受信データを送受信部３の当該チャンネルに復元する。これらのサブプログラムには、上記（１）、（２）、及び（３）の動作を実行すべき内容が記載されている。
【００４２】
また、各ハードウェア要素に内蔵されるメモリの検査に関する自己診断のサブプログラムを実行すると、自己診断実行部９１は、実行するサブプログラムが対象としているメモリの領域を特定し、当該領域に記憶されている実データを自己診断経過管理部９３に退避記憶するとともに、自己診断経過管理部９３に管理されている領域診断用のデータを用いてメモリの検査を行う自己診断を実行する。自己診断を実行した結果として得られた検査結果及び自己診断実行時のログは自己診断経過管理部９３に記憶する。自己診断の完了後は、退避記憶された実データを検査対象のメモリの当該領域に復元する。
【００４３】
自己診断実行部９１は、上記したように制御部１０からの休止割込みを受け自己診断を開始し、プログラム管理部９２に管理記憶されている自己診断プログラムをサブプログラム単位で逐次実行し、結果として得られる診断結果や診断の実行時期などを示す実行時のログを自己診断経過管理部９３に記憶する。なお、自己診断を開始する時には、前回の自己診断停止時に自己診断経過管理部９３に記憶された実行経過を読込み、前回停止した時点のサブプログラムから実行する。また、制御部１０から起動割込みを受けると、自己診断実行部９１は、実行中のサブプログラムが完了後に、次のサブプログラムの実行に遷移せずに、実行経過を自己診断経過管理部９３に記憶するとともに実行中の自己診断を停止する。
【００４４】
一連の自己診断（実行が予定されていたサブプログラムの全て）の実行を完了した後、自己診断実行部９１は、自己診断の再実行を所定期間抑止する待機モードに移行する。待機モード中の自己診断実行部９１は、あらかじめ設定された所定のタイミングで定期的に、もしくは、制御部１０から休止割込みが通知された時に、後述する診断期間管理部９４に診断周期の確認を要求し、一連の自己診断が開始された時点からの経過時間Ｔ１と診断周期Ｔ２との比較結果を取得する。
【００４５】
待機モード中の自己診断実行部９１は、経過時間Ｔ１が診断周期Ｔ２に満たない状態（Ｔ１＜Ｔ２の場合）で制御部１０から休止割込みを受けた場合、一連の自己診断の際開始を抑止する。また、診断周期の確認時に経過時間Ｔ１が診断周期Ｔ２を超えていた場合（Ｔ１＞Ｔ２の場合）、自己診断実行部９１は待機モードを解除する。待機モードの解除時に自己診断実行部９１は、自己診断経過管理部９３に管理されている実行経過を初期化し、診断期間管理部９４に初期化依頼を通知した後、自己診断を再度開始する。
【００４６】
診断期間管理部９４は一連の自己診断が開始された（実行が予定されている最初のサブプログラムが開始された）時点からの経過時間Ｔ１を計測するタイマーを備えて構成されている。診断期間管理部９４は、自己診断実行部９１からの診断周期の確認要求を受け、タイマーより計測した経過時間Ｔ１と、診断周期記憶部９５にあらかじめ設定された一連の自己診断を行うべき周期である診断周期Ｔ２とを比較し、比較結果を自己診断実行部９１に通知する。また、自己診断実行部９１からの初期化依頼を受けた場合は、タイマーにより計測した経過時間Ｔ１を初期化し、タイマーを再起動する。
【００４７】
診断周期記憶部９５には一連の自己診断の実行が完了後に再度自己診断を開始するまでの診断周期Ｔ２が記憶されている。この診断周期Ｔ２は製品出荷時にあらかじめ設定されており、操作部８２からの操作により所定の期間にも変更可能である。
【００４８】
ユーザインタフェース８は表示部８１と操作部８２を備えて構成されている。表示部８１は、ＣＲＴや液晶ディスプレイなどのモニタで構成されており、画面上に断層像や３次元画像などが表示される。操作部８２は、キーボード、マウス、トラックボール、又はＴＣＳ（Ｔｏｕｃｈ Ｃｏｍｍａｎｄ Ｓｃｒｅｅｎ）などで構成されており、操作者の操作によって各種の指示が与えられる。
【００４９】
シーケンス処理部４、画像データ処理部６、表示制御部７、自己診断実行部９１、及び、制御部１０はＣＰＵとＲＯＭ、ＲＡＭ、ＨＤＤなどの記憶部（図示しない）を備えて構成されている。記憶部には各部の機能を実現するためのプログラムが記憶されている。
【００５０】
（動作）
次にこの発明の実施形態に係る超音波診断装置１の動作について説明する。
【００５１】
（第１の動作態様）
この発明の実施形態に係る超音波診断装置１による第１の動作態様について以下の契機に分けてそれぞれ説明する。
・休止割込みに伴う自己診断の開始
・起動割込みに伴う自己診断の停止
・自己診断の完了に伴う待機モードへの移行
【００５２】
（休止割込みに伴う自己診断の開始）
超音波検査の休止に伴う休止割込みを受け、自己診断が開始される動作について、図２の(a).及び図３を参照し説明する。なお、図２の(a).及び図３は、この発明の実施形態に係る超音波診断装置による第１の動作態様において、休止割込みに伴う自己診断の開始の動作を示すフローチャートである。図２の(a).は休止割込みに伴い試験シーケンスを開始する処理（休止割込みハンドラ）に関するフローチャートであり、図３は休止割込みを受けた場合の試験シーケンスの処理に関するフローチャートである。
【００５３】
操作部８２からの超音波検査の休止指示（例えばフリーズ指示）を受けると、制御部１０は、プローブ２、送受信部３、シーケンス処理部４、信号処理部５、及び、画像データ処理部６等を含むハードウェア要素を停止し、自己診断実行部９１に休止割込みを通知する。自己診断実行部９１が休止割込みを受けると、まず休止割込みハンドラの動作を開始する。
【００５４】
（ステップＳ０１）
自己診断実行部９１は、休止割込みを受け、まずはＢモードなどの診断時のモードを含む超音波診断装置１全体の状態の設定を自己診断経過管理部９３に記憶する。
【００５５】
（ステップＳ０２）
次に、診断開始フラグＦ０（診断開始とは一連の自己診断の最初の起動を表す）により自己診断が開始済みか否かを確認する。
【００５６】
（ステップＳ０３）
自己診断が既に開始されている場合（ステップＳ０２、Ｙｅｓ）、つまり、後述する起動割込みにより実行中の自己診断が停止された後に休止割込みを受けた場合、自己診断実行部９１は自己診断経過管理部９３に保存された診断経過、すなわち、診断番号Ｘ及びブロック番号Ｙを読込む（ステップＳ０３a及びステップＳ０３ｂ）。自己診断が未開始の場合（ステップＳ０２、Ｎｏ）、この処理は実行されない。
【００５７】
（ステップＳ０４）
最後に、割込みフラグＦ１０を１に設定し、試験シーケンスを実行するプロセスを起動した後、休止割込みハンドラの処理は終了する（以下、試験シーケンスとは休止割込みハンドラ及び後述する起動割込みハンドラが設定した状態に従い、自己診断プログラムを実行もしくは停止する一連の処理を表す）。
【００５８】
（ステップＳ０５）
休止割込みハンドラにより試験シーケンスの処理が開始されると、自己診断実行部９１は、まず診断開始フラグＦ０により自己診断が開始済みか否かを確認する。
【００５９】
（ステップＳ０６）
自己診断が未開始の場合（ステップＳ０５、Ｎｏ）、初期化処理として、自己診断経過管理部９３に管理されている診断番号Ｘ及びブロック番号Ｙをそれぞれ０に設定し（ステップＳ０６ａ及びＳ０６ｂ）、診断期間管理部９４に管理されている経過時間Ｔ１を０に設定したうえでタイマーを再起動し（ステップＳ０６ｃ）、診断開始フラグＦ０を１に設定する（ステップＳ０６ｄ）。自己診断が既に開始している場合、つまり、診断開始フラグＦ０が１の場合（ステップＳ０５、Ｙｅｓ）、この初期化処理は実行されない。
【００６０】
（ステップＳ０７）
次に、割込みフラグＦ１０により、制御部１０から通知された割込みの種別、つまり、休止割込みと起動割込みのいずれが通知されたかを判定する。この時点では、休止割込みハンドラにより、割込みフラグＦ１０は１に設定されている（ステップ０７、Ｙｅｓ）。
【００６１】
（ステップＳ０８）
次に、自己診断実行部９１は、診断番号Ｘに設定された値を参照しすべての自己診断が完了しているかを判定する。この時、診断番号Ｘには次に実行する自己診断の番号が設定されている。判定時に全ての自己診断が完了している場合（ステップＳ０８、Ｙｅｓ）、後述する待機モードに移行する。
【００６２】
（ステップＳ０９）
未完了の自己診断が存在する場合（ステップＳ０８、Ｎｏ）、自己診断実行部９１は、診断番号Ｘの自己診断プログラムを開始する。自己診断プログラムはブロック単位のサブプログラムごとに実行される。
【００６３】
（ステップＳ１０）
自己診断実行部９１は、診断番号Ｘの自己診断プログラムが開始すると、まずは、自己診断経過管理部９３に管理されている実行経過の中からブロック番号Ｙを取得し、ブロック番号Ｙに対応したブロックの検査用データ、つまり、送受信テストの自己診断の場合は、ブロックＹ（ブロック番号Ｙに対応するブロック）の送受信処理を制御する制御データ及びブロックＹに受信し記録されている受信データを、メモリの検査に関する自己診断の場合は、ブロックＹの領域に記憶されている実データを自己診断経過管理部９３に記憶する。
【００６４】
（ステップＳ１１）
次に、自己診断実行部９１は、ブロックＹの診断を実行するための入力情報として、自己診断経過管理部９３に管理記憶された、ブロック番号Ｙに対応する診断番号Ｘの診断用データを取得する。送受信テストの自己診断の場合は、診断用データとして、ブロックＹの送受信テストに使用する診断用の制御データと、ブロックＹの自己診断にて受信データの照合に用いる結果確認用データを取得し、診断用の制御データはブロックＹに対応するチャンネルに設定する。メモリの検査に関する自己診断の場合は、ブロックＹが管理する領域の診断で使用する領域診断用のデータを取得する。
【００６５】
（ステップＳ１２）
そして、自己診断経過管理部９３から取得したブロック番号Ｙに対応する診断データを基に、ブロック番号Ｙに対応する診断番号Ｘのサブプログラムを実行する。送受信テストの自己診断の場合は、設定した診断用の制御データにより基に送受信処理を実行し、得られた受信データを結果確認用データと照合することで自己診断の成否を確認する。メモリの検査に関する自己診断の場合、領域診断用のデータをブロックＹが管理する領域に記憶したうえで、記憶した領域診断用のデータを当該領域から読込み、読込んだデータを領域診断用のデータと照合することで自己診断の成否を確認する。サブプログラムの実行が完了したら、サブプログラム実行時の時間などのログと自己診断の結果を自己診断経過管理部９３に記憶する。
【００６６】
（ステップＳ１３）
サブプログラムの実行が完了すると、自己診断経過管理部９３に退避した検査用データ、つまり、送受信テストの自己診断の場合は、退避前にブロックＹに記憶されていた送受信処理を制御する制御データ及びブロックＹに受信し記録されている受信データを、メモリの検査に関する自己診断の場合は、退避前にブロックＹの領域に記憶されていた実データを、退避もとのブロック番号Ｙに対応するブロックに復旧する。
【００６７】
（ステップＳ１４）
自己診断実行部９１は、ブロック番号Ｙに対応するサブプログラムの実行が完了すると、ブロック番号Ｙを基に自己診断未実施のブロックの有無を判断する。
【００６８】
（ステップＳ１５）
自己診断未実施のブロックが残存している場合（ステップＳ１４、Ｎｏ）、ブロック番号Ｙを加算し、次のブロックの診断を開始する。
【００６９】
（ステップＳ１６）
全てのブロックの診断が完了している場合（ステップＳ１４、Ｙｅｓ）、ブロック番号Ｙを初期化したうえで、診断番号Ｘの診断を終了する。
【００７０】
（ステップＳ１７）
診断番号Ｘの診断が終了したら、診断番号Ｘを加算し、次の診断番号に対応する診断を開始する。以上の処理シーケンスを全ての自己診断が完了するまで実行する。
【００７１】
（起動割込みに伴う自己診断の停止）
次に、超音波検査の開始に伴う起動割込みを受け、自己診断が開始される動作について、図２の(b).及び図４を参照し説明する。なお、図２の(b).及び図４は、この発明の実施形態に係る超音波診断装置による第１の動作態様において、起動割込みに伴う自己診断の停止の動作を示すフローチャートである。図２の(b).は起動割込みに伴い試験シーケンスを停止する処理（起動割込みハンドラ）に関するフローチャートであり、図４は起動割込みを受けた場合の試験シーケンスの処理に関するフローチャートである。なお、図４は図３と同一の機能のフローチャートであるが、処理の流れをわかりやすく説明するために、本条件で動作する部分に対してのみ新しくステップ番号を付加し直している。そのため、図４におけるＳ２４及びＳ２５は、異なるステップ番号を付加しているが、図３におけるステップＳ０５及びＳ０７と同一の処理である。
【００７２】
操作部８２からの超音波検査の開始指示を受けると、制御部１０は自己診断実行部９１に起動割込みを通知する。
【００７３】
（ステップＳ２１）
自己診断実行部９１は、起動割込みを受け、自己診断を実行している試験シーケンスのプロセスを停止する。
【００７４】
（ステップＳ２２）
試験シーケンスのプロセスを停止後、自己診断の経過、つまり、自己診断を停止した時点の診断番号Ｘ及びブロック番号Ｙを自己診断経過管理部９３に記憶する（ステップＳ２２ａ及びステップＳ２２ｂ）。
【００７５】
（ステップＳ２３）
最後に、割込みフラグＦ１０を０に設定し、試験シーケンスを実行するプロセスを起動した後、起動割込みハンドラの処理は終了する。
【００７６】
（ステップＳ２４）
起動割込みハンドラにより試験シーケンスの処理が開始されると、自己診断実行部９１は、まず診断開始フラグＦ０により自己診断が開始済みか否かを確認する。この時点では、自己診断が既に開始されているため、診断開始フラグＦ０には０が設定されている（ステップＳ２４、Ｙｅｓ）。
【００７７】
（ステップＳ２５）
次に、割込みフラグＦ１０により、制御部１０から通知された割込みの種別、つまり、休止割込みと起動割込みのいずれが通知されたかを判定する。この時点では、起動割込みハンドラにより、割込みフラグＦ１０は０に設定されている（ステップＳ２５、Ｎｏ）。
【００７８】
（ステップＳ２６）
最後に、自己診断の開始時に自己診断経過管理部９３に記憶された、Ｂモードなどの診断時のモードを含む超音波診断装置１全体の状態の設定を読込み、超音波診断装置１に設定し、自己診断実行部９１の一連の処理を完了する。自己診断実行部９１の処理完了を受けて、制御部１０は、プローブ２、送受信部３、シーケンス処理部４、信号処理部５、及び、画像データ処理部６等を含むハードウェア要素を起動する。
【００７９】
停止した自己診断は、超音波検査を休止することで、制御部１０から自己診断実行部９１に休止割込みが通知され、停止した時点から再開される。
【００８０】
（自己診断の完了に伴う待機モードへの移行）
一連の自己診断、つまり、全ての診断番号の自己診断プログラムの実行が完了すると、自己診断実行部９１は、自己診断の再実行を所定期間抑止する待機モードに移行する。待機モードに移行後、所定期間待機した後、再び自己診断を開始するまでの動作について、図５を参照し説明する。なお、図５は、この発明の実施形態に係る超音波診断装置による第１の動作態様において、待機モードへの移行と待機モードの解除に関する試験シーケンスのフローチャートである。なお、図５は図３と同一の機能のフローチャートであるが、処理の流れをわかりやすく説明するために、本条件で動作する部分に対してのみ新しくステップ番号を付加し直している。そのため、図５におけるＳ３１は、異なるステップ番号を付加しているが、図３におけるステップＳ０８と同一の処理である。
【００８１】
（ステップＳ３１）
一連の自己診断が全て完了すると（ステップＳ３１、Ｙｅｓ）、自己診断実行部９１は待機モードに移行し、所定のタイミングで診断期間管理部に所定のタイミングで定期的に、もしくは、制御部１０から休止割込みが通知された時点で、診断期間管理部９４に診断周期の確認を要求する。
【００８２】
（ステップＳ３２）
診断期間管理部９４は自己診断実行部９１の診断周期の確認要求を受けて、タイマーから経過時間Ｔ１を取得する。
【００８３】
（ステップＳ３３）
診断期間管理部９４は、タイマーから取得した経過時間Ｔ１と診断周期記憶部９５に管理記憶されている診断周期Ｔ２とを比較し、比較結果を自己診断実行部９１に通知する。経過時間Ｔ１が診断周期Ｔ２に満たない場合（ステップＳ３３、Ｎｏ）、自己診断実行部９１は診断期間管理部９４からの比較結果を受け待機を継続し、所定の時間経過後に診断期間管理部９４に再度診断周期の確認を要求する。
【００８４】
（ステップＳ３４）
経過時間Ｔ１が診断周期Ｔ２を超えていた場合（ステップＳ３３、Ｙｅｓ）、自己診断実行部９１は待機モードを解除するとともに、診断開始フラグＦ０を０に設定し、試験シーケンスを実行するプロセスを再起動する。
【００８５】
（従来技術との対比）
ここで、本発明と従来技術と比較のうえ、本発明の特徴である、休止割込みに伴う自己診断の開始、及び、起動割込みに伴う自己診断の停止に関する処理の流れについて、図６及び図７を参照し説明する。なお、図６の(a).は従来技術における自己診断の処理の流れを表すシーケンス図、図６の(b).は本発明における自己診断の処理の流れを表すシーケンス図であり、図７は本発明における休止割込み及び起動割込み発生時の自己診断の起動・停止の処理の流れを表すシーケンス図である。
【００８６】
まず、従来技術における処理の流れについて図６の(a).を参照し説明する。従来技術では機器の診断の開始命令１０１を受けて自己診断実行部９１が自己診断の処理シーケンスを開始するが、全ての診断が一つの自己診断プログラムとして形成されているため、自己診断の処理シーケンスが全ての診断を終了するまでハードウェア要素を起動することができず、自己診断中は超音波検査を開始することができなかった。
【００８７】
本発明においては、図６の(b).に示すとおり、自己診断の処理シーケンスを診断ごとに分割したうえで、さらに、各診断をブロック単位の処理に分割し逐次実行する構成としている。この構成により、自己診断実行部９１は実行中の自己診断をブロック単位の処理間で一時停止し、この停止を受けて制御部１０がハードウェア要素を起動することが可能となり、さらに、再度自己診断が可能な状態となった際に、自己診断実行部９１は、停止したブロックの処理から自己診断を再開することが可能となる。
【００８８】
また、ブロック単位の診断への変更にあわせて、自己診断の前処理である検査データの退避及び診断データの読込みと、自己診断の後処理である検査データの復旧についても、本発明ではブロック単位で実行する処理に変更している。
【００８９】
従来技術では自己診断の前処理（検査データの退避及び診断データの読み込み）及び自己診断の後処理（検査データの復旧）は全診断に対し一括で実施していた。しかし、ブロック単位の処理間で一時停止が可能となる本発明においては、自己診断の前処理及び後処理を毎回全診断に対し一括で実施すると、実行中の自己診断を起動割込みにより停止した時及び停止中の自己診断を休止割込みにより起動した時に、実行しない診断に対する前処理及び後処理にオーバーヘッド（実行が不要な無駄な処理）が発生する。
【００９０】
例えばブロックＹの診断中に停止した場合に、停止時の後処理において、未実施のＹ＋１以降のブロックに対する後処理は、この時点でブロックＹ＋１以降の診断を実行していないことから、当該処理はオーバーヘッドとなる。また、ブロックＹ＋１の診断からの再開においても、ブロックＹ＋１から診断を実行することになるため、ブロックＹまでの前処理を実行すると、当該処理はオーバーヘッドとなる。
【００９１】
そのため、本発明では自己診断の前処理及び後処理についても、ブロック単位の処理の前後で、診断対象のブロックごとに実行する構成に変更することで、オーバーヘッドの発生を抑止している。
【００９２】
ここで、本発明における、起動割込みに伴う自己診断の一時停止、及び、休止割込みに伴う自己診断の再開に関する処理シーケンスの詳細を図７のシーケンス図を参照し説明する。
【００９３】
例えば、自己診断実行部９１が、診断Ｘ（診断番号Ｘに対応する自己診断）の自己診断にてブロックＹを対象とする診断処理を実行中に制御部１０からの割込み３１１（起動割込み）を受けたものとする。この時、自己診断実行部９１は、制御部からの割込み３１１を受けて、ブロックＹの診断完了後に、実行経過、つまり、診断番号Ｘとブロック番号Ｙを自己診断経過管理部９３に記憶し、ブロックＹ＋１の診断の実行に遷移せず、自己診断を一時停止する。
【００９４】
自己診断実行部９１が自己診断を停止したことを受けて、制御部１０はハードウェア要素に起動命令２１３を通知することで、ハードウェア要素を起動し超音波検査の実施を可能な状態とする。
【００９５】
超音波検査が終了すると、制御部１０はハードウェア要素を停止し自己診断実行部９１に割込み３１２（休止割込み）を通知する。
【００９６】
制御部１０から割込み３１２を受けた自己診断実行部９１は、前回自己診断を停止した時点の実行経過、つまり、診断番号Ｘ及びブロック番号Ｙを、自己診断経過管理部９３から読込み、次のブロックの診断、つまり、ブロックＹ＋１の診断から自己診断を再開する。
【００９７】
以上により、本発明においては従来技術と異なり、装置を起動しながらでも超音波診断装置自体が自己診断を実行可能な契機を検知し、あらかじめブロック単位に分割された自己診断プログラムを自動で逐次実行することが可能となる。これにより、診断周期よりも短い期間で発生した、ハードウェアの故障や異常を検出することが可能となる。
【符号の説明】
【００９８】
１  超音波診断装置
２  プローブ
３  送受信部
４  シーケンス処理部
５  信号処理部
６  画像データ処理部
７  表示制御部
８  ユーザインタフェース
１０  制御部
６１  画像データ生成部
６２  画像データ記憶部
８１  表示部
８２  操作部
９１  自己診断実行部
９２  プログラム管理部
９３  自己診断経過管理部
９４  診断期間管理部
９５  診断周期記憶部
【図１】
2010193958.tif 000003
【図２】
2010193958.tif 000004
【図３】
2010193958.tif 000005
【図４】
2010193958.tif 000006
【図５】
2010193958.tif 000007
【図６】
2010193958.tif 000008
【図７】
2010193958.tif 000009