特許異議申立
2021-700724
数値制御装置
- 審判番号
- 2021-700724
- 法域
- 特許
- 審判種別
- 異議申立(異議の決定)
- 出願番号
- 特願2020-545609
- 登録番号
- 6821101
- 請求日
- 2021年07月27日
- 審決日
- 2022年03月30日
- 公報発行日
- 2022年05月27日
- 結論
- 維持
- 当事者
- 【権利者】三菱電機株式会社
- 【権利者代理人】高村 順
- 【異議申立人】堀部 直行
- 審判長/審判官
- 審判長 河端 賢
- 審判官 大山 健
- 審判官 松原 陽介
- 分類
- P1651.121-Y (G05B)
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項
- データ出所
- 審決公報(XML)
事件の表示
特許第6821101号発明「数値制御装置」の特許異議申立事件について、次のとおり決定する。
結論
結 論
特許第6821101号の請求項1-9に係る特許を維持する。
理由
理 由
第1 手続の経緯
特許第6821101号の請求項1-9に係る特許についての出願は、2019年(令和元年)9月12日を国際出願日として出願され、令和3年1月7日にその特許権の設定登録がされ、同年1月27日に特許掲載公報が発行された。
その後、その特許に対し、令和3年7月27日に特許異議申立人 堀部 直行(以下「申立人」という。)により請求項1-9に係る特許に対する特許異議の申立てがなされた。
第2 本件特許発明
特許第6821101号の請求項1-9の特許に係る発明(以下、各請求項に係る発明を「本件発明1」などという。)は、それぞれ、特許請求の範囲の請求項1-9に記載された事項により特定される次のとおりのものである。
「【請求項1】
A 制御対象に対して基本機能を実行するための基本機能処理がコンパイルされた実行オブジェクトである基本機能処理オブジェクトと、前記制御対象の制御に用いられる加工プログラムとを記憶する第1の記憶部と、
B 前記制御対象に対して付加機能を実行する付加機能処理がコンパイルされた実行オブジェクトである付加機能処理オブジェクト、および前記基本機能処理オブジェクトをロードし、前記基本機能処理オブジェクトに対応する前記基本機能処理および前記付加機能処理オブジェクトに対応する前記付加機能処理を第2の記憶部上に展開するプロセッサと、
を備え、
C 前記基本機能処理オブジェクトは、前記加工プログラムを読み出して解析し、解析結果を前記制御対象への指令として出力するオブジェクトであり、
D 前記付加機能処理オブジェクトは、前記基本機能処理オブジェクトを変更または再コンパイルすることなく付加機能を組み込むことが可能なオブジェクトであり、
E 前記基本機能処理オブジェクトは、前記付加機能処理を識別する識別子を含み、
F 前記プロセッサは、前記加工プログラムを前記第2の記憶部上に展開し、前記加工プログラムの実行中において前記識別子に対応する処理を実行する指令があると、前記識別子に対応する前記第2の記憶部上の位置にアクセスし、前記加工プログラムの実行中に前記識別子に対応する前記付加機能処理を実行する、
G ことを特徴とする数値制御装置。
【請求項2】
H 前記付加機能処理オブジェクトは、前記数値制御装置の外部装置で記憶されており、
前記プロセッサは、前記外部装置から前記付加機能処理オブジェクトを読み出して前記第2の記憶部上に展開する、
ことを特徴とする請求項1に記載の数値制御装置。
【請求項3】
I 前記第1の記憶部は、複数の前記付加機能処理オブジェクトを記憶し、
前記プロセッサは、ユーザによって選択された前記付加機能処理オブジェクトを前記第1の記憶部からロードする、
ことを特徴とする請求項1または2に記載の数値制御装置。
【請求項4】
J 前記制御対象は、被加工物を加工する加工機と、前記加工機の動作を制御するサーボモータと、を含み、
前記付加機能は、前記加工機または前記サーボモータに対する付加機能である、
ことを特徴とする請求項1から3の何れか1つに記載の数値制御装置。
【請求項5】
K 前記制御対象は、ロボットと、前記ロボットの動作を制御するサーボモータと、を含み、
前記付加機能は、前記ロボットまたは前記サーボモータに対する付加機能である、
ことを特徴とする請求項1から3の何れか1つに記載の数値制御装置。
【請求項6】
L 前記付加機能処理は、前記制御対象の機械構造に応じた座標変換処理である、
ことを特徴とする請求項1から5の何れか1つに記載の数値制御装置。
【請求項7】
M 前記制御対象は、工作機械であり、
前記付加機能処理オブジェクトは、前記加工プログラムがプログラミングされた座標系での動作を前記工作機械の動作に変換する座標変換処理である、
ことを特徴とする請求項6に記載の数値制御装置。
【請求項8】
N 前記付加機能処理は、前記加工プログラムのフォーマットに応じたプログラム解析処理である、
ことを特徴とする請求項1から7の何れか1つに記載の数値制御装置。
【請求項9】
O 前記基本機能処理は、前記加工プログラムのフォーマットを解析する解析処理であり、
前記付加機能処理は、前記基本機能処理オブジェクトによって解析されたフォーマットに応じたプログラム解析処理である、
ことを特徴とする請求項8に記載の数値制御装置。」
(構成A-Oは、申立人が特許異議申立書(以下、「申立書」という。)9-11ページにおいて、分説したものである。)
第3 申立理由の概要
申立人による特許異議申立理由の概要、及び申立人が提出した証拠は以下のとおりである。
1.申立人の示す証拠
申立人が提出した証拠である甲第1号証-甲第14号証は、以下のとおりである。(以下、各甲号証を「甲1」などという。)
甲1:特開昭63-256381号公報
甲2:特開平4-219805号公報
甲3:特開2019-86823号公報
甲4:特開平8-249030号公報
甲5:特開昭60-175111号公報
甲6:特開2018-114607号公報
甲7:特開2016-78142号公報
甲8:特開平10-289011号公報
甲9:特許第6487490号公報
甲10:特開2002-132316号公報
甲11:特許第3063250号公報
甲12:特開2000-235410号公報
甲13:特開2019-79337号公報
甲14:特開2005-234639号公報
2.申立ての理由の概要
申立人は、請求項1-9に係る特許は、以下の理由(1)-(5)により取り消されるべきものである旨を主張する。
(1)本件発明1についての進歩性欠如
本件発明1は、甲1に記載された発明、甲2-3に記載された周知技術、甲12に記載された周知技術及び甲4-5に記載された周知技術に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。(申立書2-5、7、27-30ページ)
(2)本件発明2-3についての進歩性欠如
本件発明2-3は、甲1に記載された発明、甲2-3に記載された周知技術、甲12に記載された周知技術、甲4-5に記載された周知技術及び甲6-7、13に記載された周知技術に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。(申立書5、7、30-31ページ)
(3)本件発明4-5についての進歩性欠如
本件発明4-5は、甲1に記載された発明、甲8に記載された技術的事項、甲2-3に記載された周知技術、甲12に記載された周知技術、甲4-5に記載された周知技術及び甲6-7、13に記載された周知技術に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。(申立書5-7、31-32ページ)
(4)本件発明6-7についての進歩性欠如
本件発明6-7は、甲1に記載された発明、甲8に記載された技術的事項、甲2-3に記載された周知技術、甲12に記載された周知技術、甲4-5に記載された周知技術、甲6-7、13に記載された周知技術及び甲9に記載された周知技術に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。(申立書6-8、32-33ページ)
(5)本件発明8-9についての進歩性欠如
本件発明8-9は、甲1に記載された発明、甲8に記載された技術的事項、甲2-3に記載された周知技術、甲12に記載された周知技術、甲4-5に記載された周知技術、甲6-7、13に記載された周知技術、甲9に記載された周知技術及び甲10-11、14に記載された周知技術に基いて当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。(申立書6-8、33-34ページ)
第4 甲号証の記載事項等について
1.甲1について
(1)甲1の記載事項(なお、下線部については当審で付した。以下同様。)
ア 「(産業上の利用分野)
本発明は、ロボット言語によりモニタプログラムを記述してロボットの制御条件が設定されるロボット制御装置に関する。」(1ページ左下欄下から6行-下から3行)
イ 「(従来の技術)
ロボットを用いて所定の作業を自動的に行なわせるには一連の作業、例えば物をつかみ、移動して置く等の作業をロボットに予め教示する操作は、一般にユーザ側に要求されている。この場合、ロボットは、ロボット制御装置内に格納されたユーザプログラムに基づき、教示された指示通りの動作をする。
第6図(a)、(b)は、それぞれロボットに一連の作業を行なわせるためのユーザプログラム、およびこのユーザプログラムによるロボットの動作手順を示している。同図(a)に示すプログラムP0乃至P7は、所定のロボット言語によって記述されるものであり、同図(b)に示す一連の作業をロボットに行なわせるときには、ロボット制御装置側ではシステムプログラムによってユーザプログラムが起動され、ロボットに対する動作指令が出力される。
一方、上記システムプログラムにおいては、ロボットの状態を常時監視して所定の条件の下で作業を行なわせる必要がある。ロボット制御装置に必要とされるこのような状態出力機能は、例えばロボットがインポジションにあるときに所定の出力を発生したり、腕が一番縮んだ位置にあるときに出力を発生したり、あるいは安全棚が開いているときにロボットの動作を停止させる等の特定の命令として記述されている。このような状態出力機能を実行するためのプログラムは、通常、電源投入後にロボットを常時監視していなければならないので、システムプログラムからの起動によって動作するユーザプログラムのように、ロボット言語で記述することはできないとされていた。」(1ページ左下欄下から2行-2ページ左上欄10行)
ウ 「(発明が解決しようとする問題点)
つまり、一般に常時監視を必要とする作業はシステムプログラムに組込まれていなければならないところから、従来のロボット制御装置では、ロボットの状態出力は、システムプログラムによって常時監視され実行されていた。ところが、このシステムプログラムは全て、予め、読出し専用メモリ(ROM)内に格納されておりロボット制御装置に固定して設計されるので、ユーザによって自由に設定変更することはできない。
したがって、現状でのロボットの作業内容を変更したり、あるいは現在の作業に他の作業を追加しようとする場合には、ROM内のシステムプログラムを変更しなければならず、ユーザはそのために読取り専用メモリ(ROM)をその都度交換しなければならないという問題点があった。」(2ページ左上欄11行-右上欄6行)
エ 「本発明は、常時必要とされる監視作業の種類を削除、変更、追加したりするのに、ROM内に格納されているシステムプログラムを何ら変更等をする必要なく、ユーザが容易に監視すべき入出力条件を通常のロボット言語で削除、変更、追加することが可能な最適な融通性のあるロボット制御装置を提供することを目的としている。」(2ページ右上欄12行-下から3行)
オ 「(作用)
本発明では、主記憶装置でのシステムプログラム記憶領域とは別にユーザプログラムとしてモニタプログラムを記憶する領域を設け、そこに格納されるモニタプログラムをシステムプログラムのバックグラウンド処理により実行することで、ロボットの状態出力を常時監視している。つまりモニタプログラム内で設定したシステムプログラムに含まれる特定のフラグを例えば“1”にしたときには、ベクタアドレス対応テーブル等の起動手段によりこのフラグに対応したベクタアドレスヘジャンプし、そこに格納されているユーザプログラムを実行することでロボットの状態出力に対応する特定の命令が出力される。」(2ページ左下欄10行-右下欄3行)
カ 「第2図は第1図に示すようなロボットを制御するロボット制御装置のシステム構成図である。同図においてプロセッサ30は読出し専用メモリ31に格納されているシステムプログラムに従って動作するようになっている。プロセッサ30には、システムプログラムを記憶するリードオンリーメモリ(ROM)31と、キーボードディスプレイ32と、主記憶装置33と、補助記憶装置34と教示操作盤35とが接続されている。
・・・主記憶装置33は、システム領域SYSとユーザ領域USERとから構成されている。」(3ページ右上欄4行-下から2行)
キ 「システム領域SYSとユーザ領域USERとの構成は、第3図に詳細に示されている。
システム領域SYSは、ロボット制御装置の動作を管理するシステムプログラムが格納される領域である。システムプログラムは第2図に示すROM31内に予め記憶されており、ロボット制御装置の電源を投入するとROM31から読出されて主記憶装置33のシステム領域SYSにイニシャルロードされるようになっている。
システム領域SYSには、ロボットの動作状態を示す状態レジスタ35と、対応テーブル36とが備えられている。この状態レジスタ35は、n個のフラグFLG1乃至FLGnからなり、例えばフラグFLG1が“1”のときにはロボットがインポジションにあるか否かの監視を実行することを示し、フラグFLG2が“1”のときには腕が一番縮んだ位置にあるか否かの監視を実行することを示し、フラグFLGnが“1”のときには安全棚が開いているか否かの監視を実行することに対応している。システム領域SYSの状態レジスタ35の各フラグFLG1乃至FLGnは、ユーザ領域USER内のシステム参照領域SREFと対応ずけられていて、システムプログラムからこの対応テーブル36によって、所定のフラグ、例えばFLG1が“1”のときにはユーザ領域USER内のベクタアドレス#000Aにジャンプする。ベクタアドレス#000A、#000B・・・、#000Xは、ユーザ領域USER内のシステム参照領域SREFに格納されたユーザプログラムの一部であるシステム参照プログラムROBPRO1乃至ROBPROnの先頭アドレスに対応する。」(3ページ右上欄下から1行-右下欄11行)
ク 「すなわち、ユーザ領域USERは、システム参照領域SREFとユーザプログラム領域UPROとから構成され、システム参照領域SREFにはロボットの状態を監視してそれに対応する特定の命令を出力するためのシステム参照プログラムROBPRO1乃至ROBPROnが、ユーザによって決定されるベクタアドレスに格納されている。このシステム参照プログラムROBPRO1乃至ROBPROnは、ロボット言語で記述されたソースプログラムをコンパイラ又はインタプリタによってコンパイル又はインタプリートしたオブジェクトプログラムである。
プログラムROBPRO1は、例えばロボットがインポジションにあるかどうかを判断し、その状態出力に対応する特定の命令を発生するものであり、またプログラムROBPRO2は例えば腕が一番縮んだ位置にあるかどうかを判断し、その状態出力に対応する特定の命令を発生するものであり、またプログラムROBPROnは、例えば安全棚が開いているかどうかを判断し、その状態出力に対応してロボット作動の停止命令などを発生するものである。」(4ページ左上欄下から5行-右上欄下から4行)
ケ 「また、ユーザプログラム領域UPROには、システムプログラムのバックグラウンド処理によって並行して実行されるユーザプログラムUROBPROが格納されている。このユーザプログラムUROBPROとして記憶されているモニタプログラムは、ロボット言語で記述されたソースプログラムをコンパイラ又はインタプリタによってコンパイル又はインタプリートしたオブジェクトプログラムである。」(4ページ右上欄下から3行-左下欄6行)
コ 「第4図は、主記憶装置33のユーザ領域USERへ、システム参照プログラムROBPRO1乃至ROBPROnおよびユーザプログラムUROBPROをロードする手順を説明する図である。ここでソースライブラリ40には、ロボット言語で記述されたユーザプログラムとともに本来システム領域SYSに常駐されるモニタプログラムが、通常のユーザプログラムと同じ体系のロボット言語で記述されて格納されている。コンパイラ又はインタプリタ41は、ソースライブラリ40に格納されているロボット言語で記述されたプログラムを翻訳し、その結果をオブジェクトライブラリ42にオブジェクトプログラムとして格納する。オブジェクトライブラリ42に格納されているオブジェクトプログラムは補助記憶装置34にシステム参照プログラムのオブジェクトモジュールや、ユーザプログラムのオブジェクトモジュールとして記憶される。これらのオブジェクトモジュールは、ローダ43によってユーザ領域USERのシステム参照領域SREFとユーザプログラム領域UPROとにそれぞれロードされるようになっている。」(4ページ左下欄7行-右下欄8行)
サ 「以上のような構成のロボット制御装置の動作を第5図のフローチャートを用いて説明する。なおユーザはシステム参照プログラムと、ユーザプログラムとをソースライブラリ40にロボット言語で記述しておき、これらはコンパイル又はインタブリートしたオブジェクトモジュールをユーザ領域USERの所定のベクタアドレス、#000A乃至#000Xと、プログラム開始アドレス#000Zとに対応ずけられているものとする。
第5図において、ステップ31ではキーボードディスプレイ32からロボット制御装置の作動を開始するためのキー(図示せず)が押下されたか否かを判断する。このキーが押下されるとシステム領域SYSのプログラム開始アドレス格納域SADRが参照されてこの格納域SADRに格納されている開始アドレス#000ZにあるユーザプログラムUROBPROが実行される(ステップS2)。このユーザプログラムUROBPROの実行によって、システムプログラムによって起動されるロボット作業プログラムは、ロボットに一連の作業を指令する(ステップS3)。ユーザプログラムUROBPROが実行されロボットが一連の作業を行なっている間、システム領域SYSのシステムプログラムは常に実行されている(なお、システムプログラムはロボットが作業を開始する前にも電源が投入された時点で一部するようになっている。)。ロボット言語で記述されたモニタプログラムによって実行されるステップS4乃至S6、ステップS9乃至S12はこのようなシステムプログラムの一部の処理として実行される。」(4ページ右下欄9行-5ページ左上欄下から2行)
シ 「このように、ユーザ領域USERにロボットの作業を常時監視するシステムプログラムの一部を格納するようにしてこのシステムプログラムの一部をユーザに開放することによって不要な機能を削除したり、また現在の機能を変更したり機能を追加したりすることができる。そしてシステム領域SYSには、状態レジスタ35と、この状態レジスタ35のフラグFLG1乃至FLGnにユーザ領域USER内のシステムプログラムの一部の先頭アドレス(ベクタアドレス)を対応させたベクタアドレス対応テーブル36とだけを設け、ロボットの機能が削除、変更、追加されても、システム参照領域SREFにはロボットの状態出力に対応する特定の命令を出力するためのシステム参照プログラムROBPRO1乃至ROBPROnがユーザによって設定されたベクタアドレスに格納されるので、システム領域SYSの内容、従ってROM31の内容を削除、変更等する必要がない。
従ってこの実施例によれば、ユーザの希望どおりのシステムを構成することができて、融通性のある最適なロボット制御装置を提供することができる。」(5ページ右下欄1行-6ページ左上欄3行)
ス 「(発明の効果)
以上に説明したように、本発明によれば、ロボットの作業を常時監視するためにシステムプログラムの一部をユーザに開放し、ユーザはこれをユーザプログラムと同様のロボット言語を用いて記述することができるので、常時監視を必要とするロボットの作業を制御する機能の削除、変更、追加等をユーザは容易に行なうことができて融通性のある最適なロボット制御装置が提供できる。」(6ページ左欄4-13行)
セ 「(第2図)
[図:0001384151000001.jpg]
」
ソ 「(第3図)
[図:0001384151000002.jpg]
」
タ 「(第4図)
[図:0001384151000003.jpg]
」
チ 「(第5図)
[図:0001384151000004.jpg]
」
(2)甲1から理解できる事項
ツ 「ロボット制御装置の動作を管理するシステムプログラム」(上記キ)、「システムプログラムによって起動されるロボット作業プログラムは、ロボットに一連の作業を指令する」(上記サ)との記載から、システムプログラムは、ロボット制御装置の動作を管理しロボットに一連の作業を指令するものであり、ロボットに対する基本機能を実行するための基本機能処理を実行するものであるといえる。さらに、甲1には、ソースプログラムをコンパイルして実行プログラムを作成すること(上記ク、ケ)が記載されており、また、一般的にプログラムは当然にコンパイルされるものであることから、システムプログラムは、ロボットに対する基本機能を実行するための基本機能処理がコンパイルされた実行オブジェクトであるといえる。
テ 「一連の作業をロボットに行なわせるときには、ロボット制御装置側ではシステムプログラムによってユーザプログラムが起動され、ロボットに対する動作指令が出力される。」(上記イ)との記載から、システムプログラムは、ユーザプログラムを読み出して解析し、解析結果をロボットへの指令として出力するオブジェクトであることが理解できる。
ト 「そして、システム領域SYSには、・・・とだけを設け、ロボットの機能が削除、変更、追加されても、システム参照領域SREFにはロボットの状態出力に対応する特定の命令を出力するためのシステム参照プログラムROBPRO1乃至ROBPROnがユーザによって設定されたベクタアドレスに格納されるので、システム領域SYSの内容、従ってROM31の内容を削除、変更等する必要がない。」(上記シ)、及び「システム領域SYSは、ロボット制御装置の動作を管理するシステムプログラムが格納される領域である。」(上記キ)との記載から、システム参照プログラムROBPRO1-ROBPROnはロボットの機能を削除、変更又は追加するものであること、すなわち、ロボットに対して付加機能を実行する付加機能処理を行うものであることが理解できる。
さらに、システム参照プログラムROBPRO1-ROBPROnは、システム領域SYSの内容(システムプログラムを含む)を変更または再コンパイルすることなく付加機能を組み込むことが可能なオブジェクトであることも理解できる。
ナ 上記トの事項と、「このシステム参照プログラムROBPRO1乃至ROBPROnは、ロボット言語で記述されたソースプログラムをコンパイラ又はインタプリタによってコンパイル又はインタプリートしたオブジェクトプログラムである。」(上記ク)との記載から、システム参照プログラムROBPRO1-ROBPROnは、ロボットに対する付加機能処理がコンパイルされた実行オブジェクトであることが理解できる。
ニ 「この状態レジスタ35は、n個のフラグFLG1乃至FLGnからなり、例えばフラグFLG1が“1”のときにはロボットがインポジションにあるか否かの監視を実行することを示し、フラグFLG2が“1”のときには腕が一番縮んだ位置にあるか否かの監視を実行することを示し、フラグFLGnが“1”のときには安全棚が開いているか否かの監視を実行することに対応している。・・・システムプログラムからこの対応テーブル36によって、所定のフラグ、例えばFLG1が“1”のときにはユーザ領域USER内のベクタアドレス#000Aにジャンプする。ベクタアドレス#000A、#000B・・・、#000Xは、ユーザ領域USER内のシステム参照領域SREFに格納されたユーザプログラムの一部であるシステム参照プログラムROBPRO1乃至ROBPROnの先頭アドレスに対応する。」(上記キ)及び「システムプログラムに含まれる特定のフラグを例えば“1”にしたときには、ベクタアドレス対応テーブル等の起動手段によりこのフラグに対応したベクタアドレスヘジャンプし、そこに格納されているユーザプログラムを実行することでロボットの状態出力に対応する特定の命令が出力される。」(上記オ)との記載から、システムプログラムに含まれるロボットの状態を監視するための特定のフラグが“1”のときに、システムプログラムからこのフラグに対応した主記憶装置33のユーザ領域USER内のベクタアドレスにジャンプして、対応するシステム参照プログラムROBPRO1-ROBPROnを実行することが理解できる。
ヌ 「第4図は、主記憶装置33のユーザ領域USERへ、システム参照プログラムROBPRO1乃至ROBPROnおよびユーザプログラムUROBPROをロードする手順を説明する図である。」(上記コ)との記載及び第2図から、プロセッサ30が、ユーザプログラムUROBPRO及びシステム参照プログラムROBPRO1-ROBPROnを主記憶装置33上に展開することが理解できる。
(3)甲1発明
上記(1)及び(2)から、甲1には、以下の発明(以下「甲1発明」という。)が記載されていると認められる。
「ロボットに対して基本機能を実行するための基本機能処理がコンパイルされた実行オブジェクトであるシステムプログラムを記憶するROM31と、ロボットに一連の作業を指令するユーザプログラムUROBPROを記憶する補助記憶装置34と、
前記ロボットに対して付加機能を実行する付加機能処理がコンパイルされた実行オブジェクトであるシステム参照プログラムROBPRO1-ROBPROn、および前記システムプログラムをロードし、前記システムプログラムに対応する前記基本機能処理及び前記システム参照プログラムROBPRO1-ROBPROnに対応する前記付加機能処理を主記憶装置33上に展開するプロセッサ30と、
を備え、
前記システムプログラムは、前記ユーザプログラムUROBPROを読み出して解析し、解析結果を前記制御対象への指令として出力するオブジェクトであり、
前記システム参照プログラムROBPRO1-ROBPROnは、前記システムプログラムを変更または再コンパイルすることなく付加機能を組み込むことが可能なオブジェクトであり、
前記システムプログラムは、前記ロボットの状態を常時監視するフラグを含み、
前記プロセッサ30は、前記ユーザプログラムUROBPROを前記主記憶装置33上に展開し、システムプログラムに含まれるロボットの状態を監視するための特定のフラグが“1”のときに、システムプログラムからこのフラグに対応した主記憶装置33のユーザ領域USER内のベクタアドレスにジャンプして、対応するシステム参照プログラムROBPRO1-ROBPROnを実行する
ロボット制御装置。」
2.甲2について
(1)甲2の記載事項
「【0014】メモリ12には、システムプログラム及び加工プログラムが記憶されている。システムプログラムとしては、例えば、ワークコンベア割出、バーコード読取指示、バーコード情報表示、バーコード情報解析、加工プログラム検索並びに加工プログラム起動の各プログラムが含まれている。なお、加工プログラムは、供給される各種のワークに対応して複数のものが用意されている。」
(2)甲2に記載された技術的事項
上記(1)から、甲2には、以下の技術的事項(以下「甲2に記載された技術的事項」という。)が記載されていると認められる。
「システムプログラム及び加工プログラムがメモリ12に記憶されること。」
3.甲3について
(1)甲3の記載事項
「【0025】
記憶装置23にはシステムプログラム23aが格納されており、システムプログラム23aが数値制御装置20の基本機能を担っている。また、記憶装置23には、加工機械10のX方向駆動装置12d、Y方向駆動装置12e、およびツール駆動装置13を制御して加工を行うための加工プログラム23bが少なくとも1つ格納されている。」
(2)甲3に記載された技術的事項
上記(1)から、甲3には、以下の技術的事項(以下「甲3に記載された技術的事項」という。)が記載されていると認められる。
「システムプログラム23a及び加工プログラム23bが記憶装置23に格納されること。」
4.甲4について
(1)甲4の記載事項
「【0009】(実施例1)図1は実施例1におけるハードウェア構成図である。図中、1は数値制御装置である。数値制御装置1の中で、2はサーボ演算等を行うCPUである。3は制御プログラム30を記憶するROMであり、位置監視プログラム31,速度監視プログラム32を含む。4はデータ41や、可変パラメータ42の記憶等に利用するRAMである。5はプログラムの入力等を行うキーボード、6はフロッピーやハードディスク等の外部記憶装置、7は操作等の表示を行う表示部、8はプログラムやデータを出力するプリンタである。9はロボット11を動かすための不図示のサーボモータを駆動するサーボ回路であり、サーボ回路9とロボット11が接続されている。また、サーボモータによって動かされるロボット11の位置を検出する不図示の検出器もサーボ回路9を介して接続されている。以上の数値制御装置の構成は前記の従来例と同様であるので、詳細説明は省略する。」
「【図1】
[図:0001384151000005.jpg]
」
(2)甲4に記載された技術的事項
上記(1)から、甲4には、以下の技術的事項(以下「甲4に記載された技術的事項」という。)が記載されていると認められる。
「数値制御装置1によって、ロボット11を制御すること。」
5.甲5について
(1)甲5の記載事項
「第1図は2台のロボットを使用した溶接システムのブロック図である。同図において、一点鎖線より上部が溶接ロボット部分、下部が作業用ロボット部分である。溶接ロボット部分において、1は溶接機、2は溶接ロボット、3は溶接機1と溶接ロボット2を制御するロボット制御装置で数値制御装置からなり、操作教示盤33が付属する。」(2ページ左下欄6-12行)
(2)甲5に記載された技術的事項
上記(1)から、甲5には、以下の技術的事項(以下「甲5に記載された技術的事項」という。)が記載されていると認められる。
「数値制御装置からなるロボット制御装置によって、溶接ロボット2を制御すること。」
6.甲12について
(1)甲12の記載事項
「【0001】
【発明の属する技術分野】この発明は、ラダー回路の作成が容易になり、併せてラダープログラムのタクトタイムの短縮が実現できる数値制御装置に関するものである。
・・・
【0034】つぎに、MSTB指令の直接制御処理の詳細を図7のフローチャートを参照して説明する。加工プログラムに、M10、M20、T0、M15等のMSTB指令がある場合には(ステップS30)、図2(b)に示されているようなモジュールテーブルから該当コードをサーチし(ステップS31)、コードの有無を確認する(ステップS32)。
【0035】モジュールテーブルに該当コードがあれば、そのモジュールテーブルからオフセット値およびモジュールアドレスを取得する(ステップS33)。モジュールテーブルに該当コードがない場合には、つぎに、マクロテーブルから該当コードをサーチし(ステップS34)、コードの有無を確認する(ステップS35)。
【0036】マクロテーブルに該当コードがあれば、そのマクロテーブルからオフセット値およびマクロ番号を取得する(ステップS36)。モジュールテーブルにもマクロテーブルにも該当コードがない場合には従来通りのMSTB処理を実行する(ステップS37)。例えば、M20指令の場合、M指令モジュールテーブルからオフセット値1とアドレスM20moduleを取得する。
【0037】つぎに、直接制御有効信号がオンであるかをチェックする(ステップS38)。直接制御有効信号は、PLCの状態に応じて直接制御が可能な状態であるかを示す信号であり、直接制御有効信号がオフであれば、現在、直接制御は不可能であるとして従来どおりの処理を行う。直接制御有効信号がオンであれば、つぎに、直接制御中信号がオンであるかをチェックし(ステップS39)、直接制御中信号がオンで、無効であれば、直接制御中であることを示すステータスをセットし(ステップS40)、終了する。直接制御中信号がオフで、有効であれば、MF信号を出力し(ステップS41)、取得したアドレスの処理(M20module)あるいはマクロプログラムをマクロ・モジュールメモリ27より読み出してMSTB直接制御処理部24で実行し(ステップS42)、直接制御中信号をオンとする(ステップS43)。」
「【図7】
[図:0001384151000006.jpg]
」
(2)甲12に記載された技術的事項
上記(1)から、甲12には、以下の技術的事項(以下「甲12に記載された技術的事項」という。)が記載されていると認められる。
「数値制御装置において、加工プログラムに、M10、M20、T0、M15等のMSTB指令がある場合には、モジュールテーブル又はマクロテーブルから該当コードをサーチし、該当コードがあれば、そのモジュールテーブル又はマクロテーブルからオフセット値とモジュールアドレス又はマクロ番号を取得し、取得したアドレスの処理又はマクロプログラムを実行すること。」
第5 当審の判断
1.本件発明1についての進歩性欠如(第3の2.(1))について
(1)本件発明1と甲1発明との対比
本件発明1と、甲1発明とを対比すると、甲1発明の「ロボット」は本件発明1の「制御対象」に相当し、以下同様に、「ロボットに一連の作業を指令する」は「制御対象の制御に用いられる」に、「主記憶装置33」は「第2の記憶部」に、「プロセッサ30」は「プロセッサ」に、それぞれ相当する。
また、甲1発明の「システムプログラム」は、上記第4の1.(2)ツ及びテの事項から、本件発明1の「基本機能処理オブジェクト」に相当する。そして、同様に、甲1発明の「システムプログラムに対応する前記基本機能処理」は本件発明1の「基本機能処理オブジェクトに対応する前記基本機能処理」に相当する。
さらに、甲1発明の「ユーザプログラムUROBPRO」は、ロボットに一連の作業を指令するプログラムであるから、本件発明1の「加工プログラム」に相当する。
さらにまた、甲1発明の「システムプログラムを記憶するROM31と、・・・ユーザプログラムUROBPROを記憶する補助記憶装置34」と、本件発明1の「基本機能処理オブジェクトと、・・・加工プログラムとを記憶する第1の記憶部」とは、システムプログラム(基本機能処理オブジェクト)と、ユーザプログラムUROBPRO(加工プログラム)のどちらも記憶部に記憶されているから、「基本機能処理オブジェクトを記憶する記憶部と、・・・加工プログラムを記憶する記憶部」である点で共通している。
さらにまた、甲1発明の「システム参照プログラムROBPRO1-ROBPROn」は、上記第4の1.(2)ト及びナから、本件発明1の「付加機能処理オブジェクト」に相当する。そして、同様に、甲1発明の「システム参照プログラムROBPRO1-ROBPROnに対応する前記付加機能処理」は、本件発明1の「付加機能処理オブジェクトに対応する前記付加機能処理」に相当する。
さらにまた、甲1発明の「ロボット制御装置」は、「制御装置」である点で、本件発明1の「数値制御装置」と共通している。
したがって、本件発明1と甲1発明とは、以下の一致点及び相違点を有する。
<一致点>
「制御対象に対して基本機能を実行するための基本機能処理がコンパイルされた実行オブジェクトである基本機能処理オブジェクトを記憶する記憶部と、前記制御対象の制御に用いられる加工プログラムを記憶する記憶部と、
前記制御対象に対して付加機能を実行する付加機能処理がコンパイルされた実行オブジェクトである付加機能処理オブジェクト、および前記基本機能処理オブジェクトをロードし、前記基本機能処理オブジェクトに対応する前記基本機能処理および前記付加機能処理オブジェクトに対応する前記付加機能処理を第2の記憶部上に展開するプロセッサと、
を備え、
前記基本機能処理オブジェクトは、前記加工プログラムを読み出して解析し、解析結果を前記制御対象への指令として出力するオブジェクトであり、
前記付加機能処理オブジェクトは、前記基本機能処理オブジェクトを変更または再コンパイルすることなく付加機能を組み込むことが可能なオブジェクトであり、
前記プロセッサは、前記加工プログラムを前記第2の記憶部上に展開する、
制御装置。」
<相違点1>
本件発明1では、「基本機能処理オブジェクト」と「加工プログラム」とが同じ「第1の記憶部」に記憶されているのに対し、甲1発明では、システムプログラム(基本機能処理オブジェクト)がROM31に記憶され、ユーザプログラムUROBPRO(加工プログラム)が補助記憶装置34に記憶されている点。
<相違点2>
本件発明1では、「基本機能処理オブジェクトは、前記付加機能処理を識別する識別子を含み」、「加工プログラムの実行中において制御対象に対して付加機能を実行する識別子に対応する処理を実行する指令があると、前記識別子に対応する前記第2の記憶部上の位置にアクセスし、前記加工プログラムの実行中に前記識別子に対応する前記付加機能処理を実行する」のに対して、甲1発明では、システムプログラム(基本機能処理オブジェクト)はロボットの状態を監視するフラグを有し、システムプログラムに含まれるロボットの状態を監視するための特定のフラグが“1”のときに、システムプログラムからこのフラグに対応した主記憶装置33のユーザ領域USER内のベクタアドレスにジャンプして、対応するシステム参照プログラムROBPRO1-ROBPROnを実行する点。
<相違点3>
「制御装置」が、本件発明1は「数値制御装置」であるのに対し、甲1発明は「ロボット制御装置」である点。
(2)相違点についての検討
事案に鑑みて、相違点2について検討する。
甲1発明の「システムプログラム」はロボットの状態を監視するための「フラグ」を有するものの、該フラグはロボットの状態を識別するものであって、本願発明1の「識別子」のように、「付加機能処理を識別する」ものであるとは認められない。
さらに、甲1発明は、「システムプログラムに含まれるロボットの状態を監視するための特定のフラグが“1”のとき」に、システムプログラムからこのフラグに対応した主記憶装置33のユーザ領域USER内のベクタアドレスにジャンプして、「対応するシステム参照プログラムROBPRO1-ROBPROnを実行する」ものであって、本件発明1のように、「加工プログラムの実行中」において「制御対象に対して付加機能を実行する付加機能処理を識別する識別子に対応する処理を実行する指令がある」ときに、システム参照プログラムROBPRO1-ROBPROnを実行するものではなく、ましてや、本件発明1のように、「識別子に対応する」付加機能処理を実行するものでもない。
ここで、申立人は、申立書において、本件発明1の進歩性欠如の申立理由について、本件発明1は、甲1発明、甲2-3に記載された周知技術、甲12に記載された周知技術及び甲4-5に記載された周知技術に基いて当業者が容易に発明をすることができたものである旨(上記第3の2.(1)を参照。)を主張しているから、検討する。
まず、上記の甲12には、上記第4の6.(2)のとおり、数値制御装置において、加工プログラムに、M10、M20、T0、M15等のMSTB指令がある場合には、モジュールテーブル又はマクロテーブルから該当コードをサーチし、該当コードがあれば、そのモジュールテーブル又はマクロテーブルからオフセット値とモジュールアドレス又はマクロ番号を取得し、取得したアドレスの処理又はマクロプログラムを実行するとの技術的事項が記載されているものの、本件発明1のように、「基本機能処理オブジェクト」が「付加機能処理を識別する識別子を含」むこと、及び「加工プログラムの実行中」において「付加機能処理を識別する識別子に対応する処理を実行する指令がある」ときに、「識別子に対応する」付加機能処理を実行することは記載されていない。
また、上記の甲2-5(上記第4の2.-5.の「甲2に記載された技術的事項」-「甲5に記載された技術的事項」を参照。)のいずれにも、本件発明1のような、「基本機能処理オブジェクト」が「付加機能処理を識別する識別子を含」むこと、及び「加工プログラムの実行中」において「付加機能処理を識別する識別子に対応する処理を実行する指令がある」ときに、「識別子に対応する」付加機能処理を実行することは記載されていない。
以上から、甲1発明に、甲2-5、12に記載された技術的事項を適用したとしても、相違点2に係る本件発明1の構成に至ることにはならないといえる。
(3)申立人の主張について
申立人は、相違点2に関連して、申立書の30ページ2-7行において、加工プログラムにある指令に基づいて付加的なモジュールプログラムを呼び出すことは、例えば甲12に例示するように周知技術であり、甲1発明において、上記周知技術を採用して、相違点2(申立書29ページ)に係る本件発明1の如く構成することは、当業者であれば容易になし得る旨を主張している。
しかしながら、甲12から加工プログラムにある指令に基づいて付加的なモジュールプログラムを呼び出すことが周知技術であるといえるかどうかはさておき、上記(2)で説示したとおり、甲1発明に甲12に記載された技術的事項を適用したとしても相違点2に係る本件発明1の構成に至ることにはならないといえるので、申立人の主張は採用することができない。
(4)小括
したがって、甲1発明に、甲2-5、12に記載された技術的事項を適用したとしても、相違点2に係る本件発明1の構成には当業者が容易に想到し得るものではないから、相違点1、3について検討するまでもなく、本件発明1は、上記第3の2.(1)のように、甲1発明、甲2-3に記載された周知技術、甲12に記載された周知技術及び甲4-5に記載された周知技術に基いて、当業者が容易に発明をすることができたものであるということはできない。
2.本件発明2-9についての進歩性欠如(第3の2.(2)-(5))について
本件発明2-9は、本件発明1を直接又は間接的に引用するものであるから、甲1発明と上記1.(1)に示した相違点2を有するものである。
したがって、上記1.で示したのと同様の理由により、本件発明2-9は、上記第3の2.(2)-(5)のように、甲1発明及びその他の甲号証に記載された技術的事項ないし周知技術に基いて、当業者が容易に発明をすることができたものであるということはできない。
第6 むすび
したがって、特許異議の申立ての理由及び証拠によっては、本件発明1-9に係る特許を取り消すことはできない。
また、他に本件発明1-9に係る特許を取り消すべき理由を発見しない。
よって、結論のとおり決定する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
J-PlatPat 審決検索を開く
2021-700724