現在、審決メルマガは配信を一時停止させていただいております。再開まで今暫くお待ち下さい。

  • ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 取り消して特許、登録 G06F
管理番号 1378495
審判番号 不服2020-14344  
総通号数 263 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2021-11-26 
種別 拒絶査定不服の審決 
審判請求日 2020-10-13 
確定日 2021-10-19 
事件の表示 特願2016- 77606「制御装置、制御方法およびプログラム」拒絶査定不服審判事件〔平成29年10月12日出願公開、特開2017-187992、請求項の数(8)〕について、次のとおり審決する。 
結論 原査定を取り消す。 本願の発明は、特許すべきものとする。 
理由 第1 手続の経緯
本件審判請求に係る出願(以下、「本願」という。)は、平成28年4月7日の出願であって、その手続の経緯は以下のとおりである。
令和元年 9月10日付け:拒絶理由通知書
令和元年10月 2日 :意見書、手続補正書の提出
令和2年 3月 2日付け:拒絶理由(最後の拒絶理由)通知書
令和2年 3月30日 :意見書、手続補正書の提出
令和2年 7月 8日付け:令和2年3月30日の手続補正についての
補正の却下の決定、拒絶査定(原査定)
令和2年10月13日 :審判請求書、手続補正書の提出

第2 原査定の概要
原査定(令和2年7月8日付け拒絶査定)の概要は次のとおりである。

本願請求項1-8に係る発明は、以下の引用文献1-4に基づいて、その発明の属する技術の分野における通常の知識を有する者(以下、「当業者」という。)が容易に発明できたものであるから、特許法第29条第2項の規定により特許を受けることができない。

<引用文献等一覧>
1.特開平11-134073号公報
2.特開平05-019899号公報
3.特開平8-137765号公報
4.国際公開第2013/065115号

第3 本願発明
本願請求項1-8に係る発明(以下、それぞれ「本願発明1」-「本願発明8」という。)は、令和2年10月13日付けの手続補正で補正された特許請求の範囲の請求項1-8に記載された事項により特定される発明であり、以下のとおりの発明である。

「 【請求項1】
設備または機械を制御する制御装置であって、
1または複数のプロセッサを含むハードウェアリソースと、
前記ハードウェアリソースを管理するハイパーバイザと、
前記ハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して並列的に実行される、汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOSと、
外部からの遮断事象を受信する入力インターフェイスとを備え、
前記リアルタイムOSは、
前記遮断事象に応答して、前記ユーザプログラムに対してシャットダウンを指示するとともに、前記ユーザプログラムがシャットダウンされたことを示す条件が成立すると、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始する機能と、
前記シャットダウン準備処理の開始後に、前記ハイパーバイザを介して構成される論理的なネットワークを通じて、前記汎用OSに対してシャットダウンを指示する機能と、
前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記ハイパーバイザを介して前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して前記制御装置の電源を遮断する機能とを備える、制御装置。
【請求項2】
前記リアルタイムOSは、前記汎用OSに対してシャットダウンを指示してから予め定められた期間が経過すると、前記汎用OSからのシャットダウン完了の通知を受信しなくとも、前記制御装置の電源を遮断する、請求項1に記載の制御装置。
【請求項3】
前記入力インターフェイスは、前記制御装置に電源を供給する無停電電源装置が、当該無停電電源装置へ供給される外部電源が喪失したときに発する前記遮断事象を受信するように構成されており、
前記リアルタイムOSは、前記論理的なネットワークを通じて、前記リアルタイムOSのシャットダウンが完了したことを前記無停電電源装置へ通知する機能をさらに備える、請求項1または2に記載の制御装置。
【請求項4】
前記リアルタイムOSは、前記ユーザプログラムに対して、前記遮断事象を受信したか否かを示す情報を参照可能にする機能をさらに備える、請求項1?3のいずれか1項に記載の制御装置。
【請求項5】
前記リアルタイムOSは、前記遮断事象を受信した後、前記ユーザプログラムからの所定の通知を受信したことを含む、予め定められた条件が満たされると、前記シャットダウン準備処理を開始する、請求項1?4のいずれか1項に記載の制御装置。
【請求項6】
前記ユーザプログラムがシャットダウンされたことを示す条件は、前記ユーザプログラムに対してシャットダウンを指示してから予め定められた期間が経過したことを含む、請求項1?5のいずれか1項に記載の制御装置。
【請求項7】
設備または機械を制御する制御装置での制御方法であって、
1または複数のプロセッサを含むハードウェアリソースを管理するハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して、汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOSとを並列的に実行するステップと、
前記リアルタイムOSが、入力インターフェイスを介して受信した遮断事象に応答して、前記ユーザプログラムに対してシャットダウンを指示するとともに、前記ユーザプログラムがシャットダウンされたことを示す条件が成立すると、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始するステップと、
前記リアルタイムOSが、前記シャットダウン準備処理の開始後に、前記ハイパーバイザを介して構成される論理的なネットワークを通じて、前記汎用OSに対してシャットダウンを指示するステップと、
前記リアルタイムOSが、前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記ハイパーバイザを介して前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して前記制御装置の電源を遮断するステップとを備える、制御方法。
【請求項8】
予め用意されたユーザプログラムに従って設備または機械を制御するための環境を構築するリアルタイムオペレーティングシステム(OS)を含むプログラムであって、
前記リアルタイムOSは、汎用OSとともに1または複数のプロセッサを含むハードウェアリソースを管理するハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して並列的に実行され、
前記プログラムはコンピュータに
入力インターフェイスを介して受信した遮断事象に応答して、前記ユーザプログラムに対してシャットダウンを指示するとともに、前記ユーザプログラムがシャットダウンされたことを示す条件が成立すると、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始するステップと、
前記シャットダウン準備処理の開始後に、前記ハイパーバイザを介して構成される論理的なネットワークを通じて、前記汎用OSに対してシャットダウンを指示するステップと、
前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記ハイパーバイザを介して前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して電源を遮断するステップとを実行させる、プログラム。」

第4 引用文献、引用発明等
1.引用文献1について
(1)原査定の拒絶理由に引用された引用文献1には、図面とともに次の事項が記載されている。(当審注:下線は、参考のために当審で付与したものである。以下、同様。)

「【0001】
【発明の属する技術分野】この発明は、産業用のマルチCPU装置に関し、特に、汎用OSを搭載したマスタCPUブロックと、リアルタイムOSを搭載したスレーブCPUブロックとを備える場合に適したマルチCPU装置である。
【0002】
【従来の技術】 マルチCPU装置を図5、6に示す。図5に示すマルチCPU装置30内には、電源18を設けている。この電源18は、外部の給電回路21からUPS22を介して供給したAC電流を、必要なDC電流に変換して出力する。そして、この電源18には、マスタ側1とスレーブ側19とを接続している。
【0003】上記マスタ側1は、ユーザーが操作する部分で、ユーザーインターフェイスに適した汎用OSを搭載したマスタCPUブロック2を備えている。このマスタCPUブロック2は、CPU3と、ROM4と、RAM5とからなり、記憶手段6と、キーボードやマウス等の入力装置7と、モニター8とを接続している。また、上記マスタ側1には、上記マスタCPUブロック2に接続したバス9を備えている。このバス9は、その一端に共有メモリ20を接続し、マスタCPUブロック2と共有メモリ20との間で信号を伝達できるようにしている。
【0004】一方、スレーブ側19は、生産装置などの制御対象機器50を制御する部分で、スレーブCPUブロック12を備えている。このスレーブCPUブロック12には、制御系に適したリアルタイム性のあるリアルタイムOSを搭載している。また、スレーブCPUブロック12は、CPU13とROM14とRAM15とからなり、バス11に接続している。このバス11には、制御機能ブロック16、17を接続している。このようにしたバス11の一端を上記共有メモリ20に接続している。この共有メモリ20とは、マスタ側1、スレーブ側19のそれぞれのCPUブロック2、12がバス9、11を介してアクセスできるメモリのことである。したがって、この共有メモリ20を介して、マスタ側1のマスタCPUブロック2とスレーブ側19のスレーブCPUブロック12間で、信号の伝達ができるようにしてる。
【0005】上記制御機能ブロック16、17は、例えば、接点入出力や、アナログデジタルコンバータ(以下ADCという)、デジタルアナログコンバータ(以下DACという)等の機能を備えている。この制御機能ブロック16、17には、直接上記制御対象機器50を接続している。そして、上記制御機能ブロック16、17は、スレーブCPUブロック12の信号に基づいて制御対象機器50を制御する。なお、図中二重線の矢印は電流供給配線を表わし、他の矢印は信号線を表わしている。
【0006】次に、このマルチCPU装置30によって、制御対象機器50を制御する方法を説明する。まず、マルチCPU装置30を立ち上げると、ROM14にあらかじめ格納した起動プログラムによって、マスタ側1の記憶手段6に記憶した制御プログラムが、CPUブロック2、バス9、共有メモリ20、バス11を介して、スレーブCPUブロック12のRAM15にダウンロードされる。ダウンロードされる上記制御プログラムは、制御機能ブロック16、17の機能および動作タイミングを制御するプログラムである。このように上記制御プログラムをRAM15にダウンロードすると、CPU13が、ダウンロードした制御プログラムに基づいて、制御機能ブロック16、17を制御する。」

「【0018】
【発明の実施の形態】図1?図3に示すこの実施例は、マルチCPU装置10の内部に、UPS24を備えている。図1に示すように、このUPS24は、マスタ側1のマスタCPUブロック2とスレーブ側19のスレーブCPUブロック12とに接続している。このUPS24は、図示しない、バッテリと、停電感知回路と、リアルタイムOSインターフェイスとを備えている。そして、このUPS24は、通常、外部の給電回路21から入力されたAC電流をDC電流に変換して、マスタCPUブロック2とスレーブCPUブロック12へ供給している。また、停電になってAC電流の供給がなくなった場合には、UPS24内のバッテリが、マスタCPUブロック2とスレーブCPUブロック12へDC電流の供給を行なうようにしている。
【0019】さらに、このようなUPS24は、リアルタイムOSインターフェイスによって、UPS24とスレーブCPUブロック12に搭載したリアルタイムOSとの間で、信号のやり取りをできるようにしている。また、マルチCPU装置10内には電源23を備えている。この電源23は、AC電流の給電回路21に接続し、従来例の電源18と同様に、AC電流をDC電流に変換して、制御機能ブロック16、17に供給する。スレーブ側19には、上記制御機能ブロック16、17とスレーブCPUブロック12とを接続するバス11を備え、このバス11には、スイッチSを設けている。このスイッチSによって、上記制御機能ブロック16、17とマスタCPUブロック2およびスレーブCPUブロック12との間を、接続したり、遮断したりする。
【0020】また、スレーブCPUブロック12には、リアルタイムOSを搭載し、このリアルタイムOSには、停電時に、マスタCPUブロック2に搭載された汎用OSをシャットダウンするプログラムを付加している。さらに、リアルタイムOSには、停電時に、バス11上のスイッチSを切って、制御機能ブロック16、17をCPUブロック1、12から切り離すようにするプログラムも備えている。
【0021】一方、マスタCPUブロック2には、汎用OSを搭載している。そして、この汎用OSは、シャットダウンが終了すると、終了信号を出力するようにしている。また、上記汎用OSには、この汎用OSの健全性チェックプログラムを付加している。この健全性チェックプログラムは、汎用OSが作動すると作動するものである。そして、上記健全性チェックプログラムは、汎用OSが動作している間には、例えば、定期的に発生するパルス信号のような健全性確認信号を、リアルタイムOSに対して出力する。このようにすれば、リアルタイムOSは、健全性確認信号の入力があるかどうかによって、汎用OSが健全であるかどうかを検出できる。もし、汎用OSが不安定になり、それがロックしたような場合には、健全性チェックプログラムが健全性確認信号を出力しなくなるので、リアルタイムOSは、汎用OSの不安定状態を検出することができる。そして、不安定状態を検出した時、リアルタイムOSは、不安定検知信号を出力する。
【0022】また、上記マルチCPU装置10を複数用いて、生産ラインなどを構成する場合を図3に示す。この場合、マルチCPU装置10内意の電源23とUPS24には、給電回路21を直接接続している。このように接続した各マルチCPU装置10が、正常に作動して、制御対象機器50を制御する動作は従来のマルチCPU装置30と同様であるので、ここではその詳細は省略する。
【0023】一方、停電時など、給電回路21からの電流が供給されない場合には、マルチCPU装置10は、図2のフローチャートにしたがって動作し、リアルタイムOSが汎用OSをシャットダウンする。次に、図2に示すフローチャートにしたがって、停電時に汎用OSのシャットダウンを行なうフローを説明する。なお、図中「RTOS」は、リアルタイムOSのことを表わしている。ステップ1は、停電になり、給電回路21からの電流供給が止まった状態である。ステップ2では、UPS24の停電感知回路が、AC電流の入力がないことから、停電を感知する。ステップ3で、UPS24は、マスタCPUブロック2とスレーブCPUブロック12へバッテリ電流を供給する。
【0024】ステップ4では、UPS24が、リアルタイムOSインターフェイスを介して、停電感知信号をリアルタイムOSへ出力する。ステップ5では、リアルタイムOSが停電を検出する。ステップ6では、停電を検出したリアルタイムOSが、バス11上のスイッチSを切る。この時点で、制御機能ブロック16、17は、マスタCPUブロック2およびスレーブCPUブロック12から遮断される。バッテリの電流が、上記マスタCPUブロック2およびスレーブCPUブロック12から、バス9、11を介して制御機能ブロック16、17へ供給されず、CPUブロック2、12だけに供給されるようになる。このように、汎用OSをシャットダウンするのに関係のない部分に電流を供給しないので、電流の節約ができる。
【0025】ステップ7では、リアルタイムOSが、汎用OSをシャットダウンするプログラムを起動して、汎用OSにシャットダウン指令を出力する。ステップ8では、上記指令にもとづいて汎用OSがシャットダウンを実行する。ステップ9で、リアルタイムOSは、汎用OSがシャットダウンを終了したかどうかを判断する。汎用OSのシャットダウン動作中、汎用OSからリアルタイムOSへ、シャットダウン動作が継続中であるという信号が出力される。この場合に、リアルタイムOSは、シャットダウンが終了するのを待機している。
【0026】シャットダウンが終了して、シャットダウン終了信号が出力されると、ステップ10へ進み、リアルタイムOSは、その終了を検出する。そして、ステップ11では、リアルタイムOSが、UPS24にバッテリからの電流供給を停止するように信号を出力し、リアルタイムOS自身もシャットダウンする。これにより、ステップ12で、システム全体が、パワーオフ状態となる。
【0027】このように、マルチCPU装置10内部に備えたUPS24が、停電を感知すると、リアルタイムOSが、自動的に、汎用OSをシャットダウンする。したがって、オペレータがマルチCPU装置10を操作する必要がない。このように、リアルタイムOSが汎用OSを自動的にシャットダウンするので、汎用OSのデータを確実に保存できる。図3のように、たくさんのマルチCPU装置10を並べた場合にも、各マルチCPU装置10が、上記フローチャートにしたがって動作し、各リアルタイムOSが各汎用OSを、自動的にシャットダウンする。」

「【0034】なお、上記実施例では、バス9と共有メモリ20とバス11とを介して、スレーブ側19のRAM15に制御プログラムをマスタ側1からダウンロードするようにしている。このようにすると、制御プログラムを変更する場合にも、マスタ側1から新しい制御プログラムをダウンロードして、RAM15に設定できる。このため、制御プログラムの変更が容易である。ただし、制御プログラムをマスタ側1からダウンロードするのではなく、スレーブ側19のROMに設定しておくようにしてもかまわない。この場合には、制御プログラムの変更は、ROMの交換により行なう。」

(2)上記記載事項、特に下線部によれば、引用文献1には、次の技術的事項が記載されているものと認められる。

(a1)従来のマルチCPU装置30内には、電源18を設け、この電源18には、マスタ側1とスレーブ側19とを接続している(【0002】)
(a2)上記マスタ側1は、ユーザーが操作する部分で、ユーザーインターフェイスに適した汎用OSを搭載したマスタCPUブロック2を備え、このマスタCPUブロック2は、CPU3と、ROM4と、RAM5とからなり、記憶手段6と、キーボードやマウス等の入力装置7と、モニター8とを接続し、また、上記マスタ側1には、上記マスタCPUブロック2に接続したバス9を備えている。このバス9は、その一端に共有メモリ20を接続し、マスタCPUブロック2と共有メモリ20との間で信号を伝達できるようにしている(【0003】)
(a3)一方、スレーブ側19は、生産装置などの制御対象機器50を制御する部分で、スレーブCPUブロック12を備え、このスレーブCPUブロック12には、制御系に適したリアルタイム性のあるリアルタイムOSを搭載し、また、スレーブCPUブロック12は、CPU13とROM14とRAM15とからなり、バス11に接続し、このバス11には、制御機能ブロック16、17を接続し、このようにしたバス11の一端を上記共有メモリ20に接続し、この共有メモリ20とは、マスタ側1、スレーブ側19のそれぞれのCPUブロック2、12がバス9、11を介してアクセスできるメモリのことであり、したがって、この共有メモリ20を介して、マスタ側1のマスタCPUブロック2とスレーブ側19のスレーブCPUブロック12間で、信号の伝達ができるようにしている(【0004】)
(a4)上記制御機能ブロック16、17は、例えば、接点入出力や、アナログデジタルコンバータ(以下ADCという)、デジタルアナログコンバータ(以下DACという)等の機能を備え、この制御機能ブロック16、17には、直接上記制御対象機器50を接続し、そして、上記制御機能ブロック16、17は、スレーブCPUブロック12の信号に基づいて制御対象機器50を制御する(【0005】)
(a5)マスタ側1の記憶手段6に記憶した制御プログラムが、スレーブCPUブロック12のRAM15にダウンロードされ、ダウンロードされる上記制御プログラムは、制御機能ブロック16、17の機能および動作タイミングを制御するプログラムであり、このように上記制御プログラムをRAM15にダウンロードすると、CPU13が、ダウンロードした制御プログラムに基づいて、制御機能ブロック16、17を制御する(【0006】)

(b1)マルチCPU装置10の内部に、UPS24を備え、このUPS24は、マスタ側1のマスタCPUブロック2とスレーブ側19のスレーブCPUブロック12とに接続し、このUPS24は、バッテリと、停電感知回路と、リアルタイムOSインターフェイスとを備え、そして、このUPS24は、通常、外部の給電回路21から入力されたAC電流をDC電流に変換して、マスタCPUブロック2とスレーブCPUブロック12へ供給し、また、停電になってAC電流の供給がなくなった場合には、UPS24内のバッテリが、マスタCPUブロック2とスレーブCPUブロック12へDC電流の供給を行なうようにしている(【0018】)
(b2)UPS24は、リアルタイムOSインターフェイスによって、UPS24とスレーブCPUブロック12に搭載したリアルタイムOSとの間で、信号のやり取りをできるようにしている(【0019】)
(b3)スレーブ側19には、制御機能ブロック16、17とスレーブCPUブロック12とを接続するバス11を備え、このバス11には、スイッチSを設け、このスイッチSによって、上記制御機能ブロック16、17とマスタCPUブロック2およびスレーブCPUブロック12との間を、接続したり、遮断したりする(【0019】)
(b4)スレーブCPUブロック12には、リアルタイムOSを搭載し、このリアルタイムOSには、停電時に、マスタCPUブロック2に搭載された汎用OSをシャットダウンするプログラムを付加し、さらに、リアルタイムOSには、停電時に、バス11上のスイッチSを切って、制御機能ブロック16、17をCPUブロック1、12から切り離すようにするプログラムも備えている(【0020】)
(b5)マスタCPUブロック2には、汎用OSを搭載し、この汎用OSは、シャットダウンが終了すると、終了信号を出力するようにしている(【0021】)
(b6)各マルチCPU装置10が、正常に作動して、制御対象機器50を制御する動作は従来のマルチCPU装置30と同様である(【0022】)

(c)停電時に汎用OSのシャットダウンを行なうフローは、次のとおり
(c1)ステップ1は、停電になり、給電回路21からの電流供給が止まった状態である(【0023】)
(c2)ステップ2では、UPS24の停電感知回路が、AC電流の入力がないことから、停電を感知する(【0023】)
(c3)ステップ3で、UPS24は、マスタCPUブロック2とスレーブCPUブロック12へバッテリ電流を供給する(【0023】)
(c4)ステップ4では、UPS24が、リアルタイムOSインターフェイスを介して、停電感知信号をリアルタイムOSへ出力する(【0024】)
(c5)ステップ5では、リアルタイムOSが停電を検出する(【0024】)
(c6)ステップ6では、停電を検出したリアルタイムOSが、バス11上のスイッチSを切る、この時点で、制御機能ブロック16、17は、マスタCPUブロック2およびスレーブCPUブロック12から遮断される(【0024】)
(c7)ステップ7では、リアルタイムOSが、汎用OSをシャットダウンするプログラムを起動して、汎用OSにシャットダウン指令を出力する(【0025】)
(c8)ステップ8では、上記指令にもとづいて汎用OSがシャットダウンを実行する(【0025】)
(c9)ステップ9で、リアルタイムOSは、汎用OSがシャットダウンを終了したかどうかを判断する、汎用OSのシャットダウン動作中、汎用OSからリアルタイムOSへ、シャットダウン動作が継続中であるという信号が出力され、この場合に、リアルタイムOSは、シャットダウンが終了するのを待機している(【0025】)
(c10)シャットダウンが終了して、シャットダウン終了信号が出力されると、ステップ10へ進み、リアルタイムOSは、その終了を検出する(【0026】)
(c11)そして、ステップ11では、リアルタイムOSが、UPS24にバッテリからの電流供給を停止するように信号を出力し、リアルタイムOS自身もシャットダウンする(【0026】)
(c12)これにより、ステップ12で、システム全体が、パワーオフ状態となる(【0026】)
(c13)このように、マルチCPU装置10内部に備えたUPS24が、停電を感知すると、リアルタイムOSが、自動的に、汎用OSをシャットダウンし、したがって、オペレータがマルチCPU装置10を操作する必要がなく、このように、リアルタイムOSが汎用OSを自動的にシャットダウンするので、汎用OSのデータを確実に保存できる(【0027】)

(d)制御プログラムをマスタ側1からダウンロードするのではなく、スレーブ側19のROMに設定しておくようにしてもかまわない(【0034】)

(3)上記(1)、(2)から、引用文献1には、次の発明(以下、「引用発明」という。)が記載されていると認められる。

〈引用発明〉
「UPS24、マスタ側1とスレーブ側19とを備えたマルチCPU装置であって、
マスタ側1は、CPU3と、ROM4と、RAM5とからなるマスタCPUブロック2とバス9を備え、マスタCPUブロック2には、ユーザーインターフェイスに適した汎用OSが搭載され、
スレーブ側19は、生産装置などの制御対象機器50を制御する部分で、CPU13とROM14とRAM15とからなるスレーブCPUブロック12、バス11、制御機能ブロック16、17を備え、スレーブCPUブロック12には、制御系に適したリアルタイム性のあるリアルタイムOSが搭載され、CPU13が、RAM15にダウンロードした制御プログラムに基づいて、制御対象機器50を制御する制御機能ブロック16、17を制御し、
バス11、共有メモリ20を介して、マスタCPUブロック2とスレーブCPUブロック12間で、信号の伝達ができ、
UPS24は、リアルタイムOSインターフェイスによって、リアルタイムOSとの間で、信号のやり取りをできるようになっており、
リアルタイムOSは、バス11上のスイッチSを切って、制御機能ブロック16、17をCPUブロック1、12から切り離すようにするプログラム及び汎用OSをシャットダウンするプログラムを備え、
UPS24の停電感知回路が停電を感知した場合には、UPS24内のバッテリからDC電流をマスタCPUブロック2およびスレーブCPUブロック12へ出力するとともに、リアルタイムOSインターフェイスがリアルタイムOSに停電感知信号を出力し、
停電を検出したリアルタイムOSが、バス11上のスイッチSを切り、制御機能ブロック16、17は、マスタCPUブロック2およびスレーブCPUブロック12から遮断され、リアルタイムOSが、汎用OSをシャットダウンするプログラムを起動して、汎用OSにシャットダウン指令を出力し、上記指令にもとづいて汎用OSがシャットダウンを実行し、
汎用OSのシャットダウン動作中、汎用OSからリアルタイムOSへ、シャットダウン動作が継続中であるという信号が出力され、リアルタイムOSは、シャットダウンが終了するのを待機し、
汎用OSのシャットダウンが終了して、シャットダウン終了信号が出力されると、リアルタイムOSは、その終了を検出し、UPS24にバッテリからの電流供給を停止するように信号を出力し、リアルタイムOS自身もシャットダウンし、システム全体が、パワーオフ状態となることを特徴とするマルチCPU装置。」

2.引用文献2について
原査定の拒絶理由に引用された引用文献2には、図面とともに次の事項が記載されている。

「【0010】この実施例のコンピュータシステムにおいて、停電が発生した場合の処理は、図3のフローチャートに示すように、停電が発生すると、無停電電源装置18は、バッテリー給電を行ない、コンピュータ装置10および制御装置22をバックアップする。そして、無停電電源装置18は、電源が切れたことを制御装置22に信号ライン24を介して知らせる。そして、制御装置22は、信号ライン26により停電をコンピュータ装置10に知らせる。すると、コンピュータ装置10では、内蔵された停電処理用のデータ退避プログラムが作動し、現在処理中のデータを磁気記憶装置16に格納し、コンピュータ装置10のシステムを立ち下げる。この処理が終了すると、コンピュータ装置10から、信号ライン27を通して制御装置22に、処理中のデータを退避する停電処理が終了したことを知らせる。この後、制御装置22から上記無停電電源装置18へ、信号ライン25を介して、給電停止信号が送られ、この無停電電源装置18内のバッテリーからコンピュータ装置10および制御装置22への給電が停止し、停電時の処理が終了する。
【0011】また、上記処理に際して、制御装置22がコンピュータ装置10からのデータ退避処理終了通知が確認できない場合に備え、一定時間を経ても上記終了信号がこない場合は、制御装置22は自動的に無停電電源装置18へ、給電停止信号を送るようにしても良い。」

3.引用文献3について
原査定の拒絶理由に引用された引用文献3には、図面とともに次の事項が記載されている。

「【0013】オペレーティングシステム4は、コンピュータが動作する場合の基本ソフトウェアであり、電源オン/オフインタフェース部41、シャットダウン処理部42を備えている。電源オン/オフインタフェース部41は、オペレーティングシステム4のカーネルに設けられ、電源のオン/オフ状態を示すためのフラグ41aを備え、電源制御部3からの割込み信号NMIを受けて、そのフラグ41aをオフ状態とする機能を備えている。また、シャットダウン処理部42は、オペレーティングシステム4が有するシャットダウン機能によるシャットダウン処理を実行するものである。
【0014】起動指示部(以下、スイッチオフ検出用アプリケーションという)5は、所定時間間隔で電源オン/オフインタフェース部41のフラグ41aの状態のポーリングを行い、フラグ41aがオフ状態であった場合は、シャットダウン処理部42に対してオフ通知を行う機能を備えている。また、ディスプレイ6、プリンタ7およびイメージスキャナ8は、それぞれ電源線61、71、81を介して外部電源装置1より電源供給され、本体部2からの制御により各種の動作を行う周辺機器である。
【0015】次に、このように構成された電源断処理システムの動作について説明する。先ず、システム起動時、オペレーティングシステム4は、電源制御部3が取り付けられているかを判定し、電源制御部3が取り付けられていた場合は、外部電源装置1に関する機能を有効とする。即ち、電源制御部3から割込み信号NMIが上がってきた場合は電源オン/オフインタフェース部41のフラグ41aをオフ状態とし、このフラグ41aのオフ状態によるスイッチオフ検出用アプリケーション5の通知によってシャットダウン処理を行う処理を行う機能を有効とする。」

4.引用文献4について
原査定の拒絶理由に引用された引用文献4には、図面とともに次の事項が記載されている。

「 技術分野
[0001] 本発明は、情報処理装置、情報処理装置の制御方法、仮想マシン制御プログラム及び情報処理システムに関する。
背景技術
[0002] 仮想化システムは、1台の物理マシン上に仮想マシンと呼ばれる環境を複数用意することができる。この仮想マシンは、例えばハイパーバイザなど仮想化プログラムにより管理される仮想領域で動作する。
[0003] また、仮想化システムを実行するサーバは、停電に備えてサーバの電源を無停電電源装置(UPS:Uninterruptible Power Supply)に接続する。そして、サーバは、停電時にUPSのバッテリから電力を確保し、仮想化システムをシャットダウンする。
[0004] 図17を用いて、従来技術に係る仮想化システムにおけるシャットダウン処理動作について説明する。図17は、従来技術に係る仮想化システムにおけるシャットダウン処理動作を示す図である。図17に示すように、停電が発生した場合、UPSは、停電を検出し(ステップS901)、バッテリで電力を供給する(ステップS902)。
[0005] また、サーバは、所定の時間待機して、仮想化システムのシャットダウン処理を実行するか否かを判定する(ステップS903)。そして、サーバは、所定の待機時間が経過した場合、仮想化システムのシャットダウン処理を開始する(ステップS904)。ここで、サーバでは、ゲストOSを終了し、アプリケーションを終了してから仮想化プログラムを終了させる。このような処理には、通常数分を要する。UPSは、その間電力を供給し続けた後、出力をオフにする(ステップS905)。
[0006] また、停電から復旧した場合には、UPSは、出力をオンにする(ステップS906)。そして、サーバは、BIOS(Basic Input/Output System)を起動し(ステップS907)、仮想化システムを再起動させる(ステップS908)。
[0007] このように、サーバは、仮想化システムをシャットダウンすることで、仮想マシンの状態を自動的に保存し、仮想マシンの処理を停止する。また、サーバは、仮想化システムを再起動することで、保存されていた仮想マシンの状態が復元され、仮想マシンを自動的に起動する。」

「[0018][実施例1に係る情報処理システムの構成]
図1は、実施例1に係る情報処理システムの構成の一例を示す図である。図1に示すように、実施例1に係る情報処理システム1は、ハブ2、UPS(Uninterruptible Power Supply)装置3、共有ストレージ4、サーバ10、サーバ20を有する。なお、後述するように、サーバ10とサーバ20とは、サーバ仮想化技術を適用したサーバである。
[0019] ハブ2は、サーバ10とサーバ20とを互いに通信可能に接続する。UPS装置3は、通常時にはサーバ20、ハブ2、共有ストレージ4に電力を供給するとともに、停電時には内蔵するバッテリからハブ2、共有ストレージ4、サーバ20に予備の電力を供給する。
[0020] サーバ10は、電池付電源11、ハードウェア12を有する。電池付電源11は、通常時にはサーバ10に電力を供給する。また、電池付電源11は、停電検出回路を有しており、停電の発生を検出した場合、内蔵するバッテリから予備の電力をサーバ10に供給する。なお、電池付電源11が有するバッテリ容量は、UPS3が有するバッテリ容量と比較して小さい。
[0021] ハードウェア12は、例えば、CPU(Central Processing Unit)とメインメモリとを含み、複数の仮想マシンを動作させる。図1に示す例では、サーバ10は、ハードウェア12上で機能する仮想化プログラム13により、仮想マシン(VM:Virtual Machine)14とVM15とを動作させている。なお、このVM14は、ゲストOS(Operating System)14aとアプリ14bとを動作させており、VM15は、ゲストOS15aとアプリ15bとを動作させている。
[0022] また、仮想化プログラム13は、退避部13aと停止部13bとを有し、停電時に仮想化システムのシャットダウンを制御する。退避部13aは、停電時に、共有ストレージにゲストOS情報とアプリ情報を退避する。なお、ここで言う退避とは、コピーなどによる移動等を示す。また、退避部13aは、無停電電源装置を有する退避用の他装置に、仮想マシンに割り当てられたメモリが記憶する情報と該仮想マシンに割り当てられたレジスタが記憶する情報とを含む仮想マシン情報を退避させる。停止部13bは、仮想マシン情報の退避が終了した場合に、仮想マシンを停止する。」

5.その他の文献について
令和2年7月8日付け補正の却下の決定において、周知技術を示す文献として引用された特開2015-35175号公報(以下、「引用文献5」という。)には、図面とともに次の事項が記載されている。

「【発明を実施するための形態】
【0012】
以下、本実施形態について、図面を参照しながら詳細に説明する。
図2Aおよび図2Bを参照して、本実施形態におけるサーバの停電時の処理及び復電時の処理の例を説明する。図2Aは、仮想システムを一括して停止する処理の例を説明する図である。図2Aにおいて、サーバ200とUPS210とは、LANケーブルで接続されている。サーバ200は、パーティション201(201-1?201-n)及びSCF220を含む。パーティションは、1台以上のシステムボードを有し、複数のドメインを動作させる。SCF220は、サービスプロセッサであり、電源投入や電源切断、ハードウェアの故障監視を行う。SCF220は、データベース221、格納部222、制御部223を備える。データベース221は、パーティションの情報、ドメインの情報、エラーに関する情報を保持する。格納部222は、データベース221に対して各種情報を格納する処理を行う。制御部223は、パーティションの電源投入や電源切断の処理を制御する。パーティション内には、1つのコントロールドメイン202と複数のゲストドメイン203(203-1?203?m)と、Hypervisor205とが含まれる。コントロールドメイン202は、指示部204を有する。Hypervisor205は、パーティションのドメインの制御及び管理を行うファームウェアである。
【0013】
以下に、停電発生時の仮想システムを一括停止する処理を順に説明する。
(1)停電が発生すると、UPS210への電力供給が停止される。(停電)
(2)UPS210は、サーバ200の指示部204に対して停電が発生したことを通知する。(通知)
(3)指示部204は、停電が発生したことをSCF220に通知する。(通知)
(4)格納部222は、停電が発生したことを表すエラー情報をデータベース221に格納する。(格納)
(5)制御部223は、各パーティションのHypervisor205に対して全ドメインの稼動状態に関する情報の取得及び全ドメインへのシャットダウン要求を出力する。(シャットダウン)
(6)格納部222は、取得した全ドメインの稼動状態に関する情報をデータベース221に格納する。(格納)
(7)制御部223は、全パーティションの電源切断を実施する。(電源切断)
(8)一定時間経過後、UPS210は、SCF220への電力供給を停止する。(電力供給停止)
(9)電力供給の停止により、SCF220は停止する。(停止)
【0014】
図2Aの(1)?(9)の処理により、停電が発生しても、所定の手順を踏んだ電源切断処理が実行される。所定の手順を踏んだ電源の切断処理により、サーバ上のデータの破損や故障を防ぐことができる。なお、(8)における、一定時間は、(1)?(7)の処が完了するのに十分な時間であればよい。」

「【0031】
図7は、サーバの電源を切断する処理の例を説明する図である。図7は、図2と同じものは、同一の番号を付している。パーティション201は、Hypervisor205及びシステムボード401を有する。パーティション201とSCF220とはCMDパスで接続されており、双方向の通信を行う。SCF220は、制御部223、ハード管理部241、判定部231、データベース221を有する。ハード管理部241は、システムボード401に故障がないかの確認処理、動作停止処理、電源切断処理、FANの回転停止・温度・電圧監視を停止する処理を行う。サーバの電源を切断する処理は、図5に示したエラーに関する情報がデータベース221に格納された後に実行される。
【0032】
サーバの電源を切断する処理では、まず判定部231は、データベース221に格納されたエラーに関する情報を解析する。判定部231は、エラーに関する情報に、パーティションの電源切断の実施を表すコードが含まれるかを判定する。パーティションの電源切断の実施を表すコードがエラーに関する情報に含まれていた場合、判定部231は、パーティションの電源切断を制御部223に指示する。制御部223は、各パーティションのHypervisor205に対して全ドメインの稼動状態に関する情報の取得を依頼し、併せて全ドメインへのシャットダウン要求を出力する。制御部222は、取得した全ドメインの稼動状態に関する情報をデータベース221に格納する。Hypervisor205は、全ドメインのシャットダウンが完了すると、処理が終了したことを制御部23に通知する。全ドメインがシャットダウンすると、ハード管理部241は、システムボード401に故障がないかの確認処理を行い、システムボード401の動作及び電源の停止などの処理を行う。」

第5 対比・判断
1.本願発明1について
(1)対比
ア.本願発明1と引用発明とを対比する。
(ア)引用発明の「CPU3と、ROM4と、RAM5」、「CPU13とROM14とRAM15」は、本願発明1の「1または複数のプロセッサを含むハードウェアリソース」に相当するといえる。
(イ)引用発明は「CPU13が、RAM15にダウンロードした制御プログラムに基づいて、制御対象機器50を制御する制御機能ブロック16、17を制御」しており、「RAM15にダウンロードした制御プログラム」は、本願発明1の「設備または機械の制御を実現するためのユーザプログラム」に相当するといえ、引用発明の「制御系に適したリアルタイム性のあるリアルタイムOS」は、本願発明1の「設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOS」に相当するといえる。
そうすると、本願発明1の「前記ハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して並列的に実行される、汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOS」と「それぞれのハードウェアリソースを利用して並列的に実行される、汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOS」である点では共通するといえる
(ウ)引用発明の「UPS24の停電感知回路が停電を感知した場合には、」「リアルタイムOSインターフェイスがリアルタイムOSに停電感知信号を出力」する構成は、本願発明1の「外部からの遮断事象を受信する入力インターフェイス」に相当するといえる。
(エ)引用発明の「リアルタイムOS」が備える「バス11上のスイッチSを切って、制御機能ブロック16、17をCPUブロック1、12から切り離すようにするプログラム」により「停電を検出したリアルタイムOSが、バス11上のスイッチSを切り、制御機能ブロック16、17は、マスタCPUブロック2およびスレーブCPUブロック12から遮断」する構成は、本願発明1の「リアルタイムOS」が備える「前記遮断事象に応答して、前記ユーザプログラムに対してシャットダウンを指示するとともに、前記ユーザプログラムがシャットダウンされたことを示す条件が成立すると、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始する機能」と「前記遮断事象に応答して、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始する機能」である点では共通するといえる。
(オ)引用発明の「リアルタイムOSが、汎用OSをシャットダウンするプログラムを起動して、汎用OSにシャットダウン指令を出力」する構成は、本願発明1の「前記シャットダウン準備処理の開始後に、前記ハイパーバイザを介して構成される論理的なネットワークを通じて、前記汎用OSに対してシャットダウンを指示する機能」と「前記シャットダウン準備処理の開始後に、前記汎用OSに対してシャットダウンを指示する機能」である点では共通するといえる。
(カ)引用発明の汎用OSの「シャットダウンが終了して、シャットダウン終了信号が出力されると、リアルタイムOSは、その終了を検出し、UPS24にバッテリからの電流供給を停止するように信号を出力し、リアルタイムOS自身もシャットダウンし、システム全体が、パワーオフ状態となる」構成は、本願発明1の「前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記ハイパーバイザを介して前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して前記制御装置の電源を遮断する機能」と、「前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して前記制御装置の電源を遮断する機能」である点では共通するといえる。
(キ)引用発明の「マルチCPU装置」は、後述する相違点を除き、本願発明1の「制御装置」に相当するといえる。

イ.したがって、本願発明1と引用発明との間には、次の一致点、相違点があるといえる。

(一致点)
「設備または機械を制御する制御装置であって、
1または複数のプロセッサを含むハードウェアリソースと、
それぞれのハードウェアリソースを利用して並列的に実行される、汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOSと、
外部からの遮断事象を受信する入力インターフェイスとを備え、
前記リアルタイムOSは、
前記遮断事象に応答して、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始する機能と、
前記シャットダウン準備処理の開始後に、前記汎用OSに対してシャットダウンを指示する機能と、
前記汎用OSからのシャットダウン完了の通知の受信を含む、予め定められた条件が満たされると、前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力した後に、前記リアルタイムOSのシャットダウンを完了して前記制御装置の電源を遮断する機能とを備える、制御装置。」

(相違点1)
本願発明1では、「ハードウェアリソースを管理するハイパーバイザ」を備え、「汎用オペレーティングシステム(OS)と、前記設備または機械の制御を実現するためのユーザプログラムの実行環境を提供するリアルタイムOS」は、「前記ハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して並列的に実行」されるものであり、「前記ハイパーバイザを介して前記制御装置に対する電源供給が停止されても問題ないことを通知する信号を出力」するのに対し、
引用発明では、「ハードウェアリソースを管理するハイパーバイザ」を備えておらず、「汎用OS」は、「CPU3と、ROM4と、RAM5」を利用して動作し、「リアルタイムOS」は、「CPU13とROM14とRAM15」を利用して動作するものであって、「ハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して」動作するものではなく、「ハイパーバイザを介して」「電流供給を停止するように信号を出力」するものでもない点。

(相違点2)
本願発明1では、「前記遮断事象に応答して、前記ユーザプログラムに対してシャットダウンを指示するとともに、前記ユーザプログラムがシャットダウンされたことを示す条件が成立すると、前記リアルタイムOSのシャットダウンに必要なシャットダウン準備処理を開始する機能」をリアルタイムOSが備えるのに対し、
引用発明では、リアルタイムOSが、制御プログラムに対してシャットダウンを指示し、制御プログラムがシャットダウンされると、バス11上のスイッチSを切るような構成は特定されていない点。

(2)相違点についての判断
相違点1について検討する。
上記引用文献4には、「仮想化システムは、1台の物理マシン上に仮想マシンと呼ばれる環境を複数用意することができる。この仮想マシンは、例えばハイパーバイザなど仮想化プログラムにより管理される仮想化領域で動作する。」([0002])、「ハードウェア12上で機能する仮想化プログラム13により、仮想マシン(VM:Virtual Machine)14とVM15とを動作させている。なお、このVM14は、ゲストOS(Operating System)14aとアプリ14bとを動作させており、VM15は、ゲストOS15aとアプリ15bとを動作させている。」([0021])、「仮想化プログラム13は、退避部13aと停止部13bとを有し、停電時に仮想化システムのシャットダウンを制御する。」([0021])と記載されており、また、上記引用文献5には、「図2Aは、仮想システムを一括して停止する処理の例を説明する図である。・・・パーティション内には、1つのコントロールドメイン202と複数のゲストドメイン203(203-1?203?m)と、Hypervisor205とが含まれる。コントロールドメイン202は、指示部204を有する。Hypervisor205は、パーティションのドメインの制御及び管理を行うファームウェアである。」(【0012】)、「制御部223は、各パーティションのHypervisor205に対して全ドメインの稼動状態に関する情報の取得及び全ドメインへのシャットダウン要求を出力する。(シャットダウン)」(【0013】(5))、「Hypervisor205は、全ドメインのシャットダウンが完了すると、処理が終了したことを制御部23に通知する。」(【0032】)と記載されている。
引用文献4、5に開示されるように、一般的な仮想環境においては、ハイパーバイザがリソースの管理を含めて主導的な役割を果たすものと認められ、ハイパーバイザ上で実行されるいずれかのOSが、ハイパーバイザを介して他のOSに対して何らかの指示などを行うような構成は記載も示唆もされていない。
そうすると、引用発明を引用文献4、5に記載される仮想環境に適用した場合、ハイパーバイザがリソースを管理する仮想環境においては、引用発明のシャットダウン処理を実現するためのリアルタイムOSが担っていた処理をハイパーバイザが担うように実装するものと認められ、停電時におけるマルチCPU装置のシャットダウン処理のみを「リアルタイムOS」が主体となって制御するようにするとは想定し難い。
また、上記相違点1に係る本願発明1の構成は、他の引用文献に記載も示唆もなく、本願の出願前に当該技術分野における周知技術であったともいえない。
してみれば、引用発明において、「ハードウェアリソースを管理するハイパーバイザ」を備え、「汎用OS」、「リアルタイムOS」は、「ハイパーバイザによって割り当てられるそれぞれの仮想的なハードウェアリソースを利用して」動作し、「ハイパーバイザを介して」「電流供給を停止するように信号を出力」するようにすること、すなわち、本願発明1の相違点1に係る構成とすることは、当業者が容易に想到し得たことであるとはいえない。
したがって、他の相違点を検討するまでもなく、本願発明1は、当業者であっても引用発明、引用文献2-5に記載された技術的事項に基づいて容易に発明できたものであるとはいえない。

2.本願発明2-6について
本願発明2-6も、本願発明1と同一の構成を備えるものであるから、本願発明1と同じ理由により、当業者であっても、引用発明、引用文献2-5に記載された技術的事項に基づいて容易に発明できたものとはいえない。

3.本願発明7、8について
本願発明7、8は、本願発明1と同様の構成を備えるものであるから,本願発明1と同様の理由により、当業者であっても、引用発明、引用文献2-5に記載された技術的事項に基づいて容易に発明できたものとはいえない。

第6 むすび
以上のとおり、原査定の理由によって、本願を拒絶することはできない。
他に本願を拒絶すべき理由を発見しない。
よって、結論のとおり審決する。
 
審決日 2021-09-28 
出願番号 特願2016-77606(P2016-77606)
審決分類 P 1 8・ 121- WY (G06F)
最終処分 成立  
前審関与審査官 豊田 真弓  
特許庁審判長 稲葉 和生
特許庁審判官 野崎 大進
▲吉▼田 耕一
発明の名称 制御装置、制御方法およびプログラム  
代理人 特許業務法人深見特許事務所  
  • この表をプリントする

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ