(57)【要約】【課題】数値制御装置に接続されたＩＯユニットに発生した異常内容を示すステータス情報を入出力データの情報転送量に極力影響を及ぼさないで数値制御装置に転送すること。【解決手段】ＩＯユニット２の内部で異常が発生した場合、ＩＯユニット２は入力信号２８のＡＬＭにあらかじめ準備されたステータス異常発生通知ビットを立ててＰＭＣ７に送信する。ＰＭＣ７は入力信号２８のＨＥＡＤ情報に基づきステータス異常発生したＩＯユニット２をステータス情報取得先情報としてＰＭＣ７内の記憶手段に格納する。ＰＭＣ７は前記ステータス情報取得先情報を用いてＩＯユニット２にステータス情報を要求する。ＩＯユニット２は要求に応答してステータス情報を送信する。【選択図】図２
2008293374.tif 000002
【特許請求の範囲】
【請求項１】
ＩＯユニットに異常が発生した際にその異常内容をステータス情報として前記ＩＯユニット内部に格納するステップと、
前記ステータス情報の発生情報及び前記ＩＯユニットを特定する情報を前記ＩＯユニットから数値制御装置に送信するステップと、
前記ＩＯユニットを特定する情報を前記数値制御装置内部に格納するステップと、
前記ステータス情報の要求情報を前記数値制御装置から前記ＩＯユニットに送信するステップと、
前記ステータス情報の要求情報を受信した前記ＩＯユニットは前記ステータス情報を前記数値制御装置に送信するステップと、
前記ステータス情報を前記数値制御装置に格納するステップと、
からなる数値制御装置に接続されたＩＯユニットのステータス情報取得方法。
【請求項２】
前記ステータス情報は入力情報に付加して送付することを特徴とする請求項１に記載のＩＯユニットのステータス情報取得方法。
【請求項３】
前記ステータス情報は入力情報及び出力情報とは別パケットの情報として送受信することを特徴とする請求項１に記載のＩＯユニットのステータス情報取得方法。
【請求項４】
前記ステータス情報を受信した数値制御装置は表示装置に前記ステータス情報を表示するステップを有する請求項１〜３の内いずれか１項に記載のＩＯユニットのステータス情報取得方法。
【請求項５】
前記数値制御装置に従属して接続された複数台のＩＯユニットからステータス情報を取得する請求項１〜４の内いずれか１項に記載のＩＯユニットのステータス情報取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は工作機械を制御する数値制御装置に接続された外部信号入出力用ユニット（以下、「ＩＯユニット」という。）のステータス情報の取得方法に関する。特には、数値制御装置に設けられたＰＭＣ（プログラマブル・マシン・コントローラ）に接続されたＩＯユニットに発生した異常の内容を示すステータス情報の取得方法に関する。
【背景技術】
【０００２】
数値制御装置と工作機械との間で情報の入出力を行なうために、ＩＯユニットを複数台従属接続する構成がとられている（文献１、２）。通常、数値制御装置とＩＯユニットとの間では入力情報（以下、「ＤＩデータ」という。）と出力情報（以下、「ＤＯデータ」という。）のやり取りが行なわれている。また、ＩＯユニットの内部情報であるステータス情報（ＩＯユニットに内蔵されたＤＯドライバの加熱保護アラーム等）の収集も行なわれている。
【０００３】
【特許文献１】特開平１１−２３１９２３号公報
【特許文献２】特開平６−１３８９１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来、数値制御装置に接続されたＩＯユニットのステータス情報は、同じフレームつまりＤＩデータの領域を使用する形式で伝送されていたため、転送可能なＤＩデータ量がステータス情報の量の分だけ制限される問題点があった（図１６参照）。そして、ＤＩデータに含まれるステータス情報を使用するかいなかやアラームが発生したことを画面に表示するなどのアラーム処理はユーザーが作成するプログラム（ラダー）に依存していた。また、全てのＤＩデータを解析してＩＯユニットのステータス情報を探す必要があったため、ＩＯユニットに異常が発生したことを把握するのに時間を要していた。また、全てのＩＯユニットからステータス情報を取得するようにすると情報の転送量が増大してしまう問題点があった。
【０００５】
そこで、本発明の目的は、ＤＩデータ及びＤＯデータの情報転送量を減少させることなく、ステータス情報によって情報の転送量を増大させることなく、そして、ユーザーのプログラムに依存せず、ＩＯユニットに発生した異常内容を示すステータス情報を取得することである。
【課題を解決するための手段】
【０００６】
本願の請求項１に係る発明は、ＩＯユニットに異常が発生した際にその異常内容をステータス情報として前記ＩＯユニット内部に格納するステップと、前記ステータス情報の発生情報及び前記ＩＯユニットを特定する情報を前記ＩＯユニットから数値制御装置に送信するステップと、前記ＩＯユニットを特定する情報を前記数値制御装置内部に格納するステップと、前記ステータス情報の要求情報を前記数値制御装置から前記ＩＯユニットに送信するステップと、前記ステータス情報の要求情報を受信した前記ＩＯユニットは前記ステータス情報を前記数値制御装置に送信するステップと、前記ステータス情報を前記数値制御装置に格納するステップと、からなる数値制御装置に接続されたＩＯユニットのステータス情報取得方法である。
【０００７】
請求項２に係る発明は、前記ステータス情報は入力情報に付加して送付することを特徴とする請求項１に記載のＩＯユニットのステータス情報取得方法である。  
請求項３に係る発明は、前記ステータス情報は入力情報及び出力情報とは別パケットの情報として送受信することを特徴とする請求項１に記載のＩＯユニットのステータス情報取得方法である。
【０００８】
請求項４に係る発明は、前記ステータス情報を受信した数値制御装置は表示装置に前記ステータス情報を表示するステップを有する請求項１〜３の内いずれか１項に記載のＩＯユニットのステータス情報取得方法である。  
請求項５に係る発明は、前記数値制御装置に従属して接続された複数台のＩＯユニットからステータス情報を取得する請求項１〜４の内いずれか１項に記載のＩＯユニットのステータス情報取得方法である。
【発明の効果】
【０００９】
ステータス情報をＤＩデータと切り離して独立して処理できることからユーザープログラムに依存せず、ＩＯユニットのステータス情報を収集することが可能となる。  
ステータス情報の取得を１スキャンに１回１つのＩＯユニットのみ行なうことにより、通信帯域を圧迫することなくＩＯユニットのステータス情報を得られる。  
複数台のＩＯユニットで異常が発生した場合は、記憶手段に記録されている異常の発生したＩＯユニット順に処理を行なうことにより、異常が発生した全てのＩＯユニットからステータス情報を得ることができる。
【００１０】
ステータス情報を別パケットとして送受信するとステータス情報取得情報に基づいてＤＩデータと切り離して収集可能となる。  
ステータス情報はＰＭＣを制御するためのＰＭＣソフトウェアにおいてどのＩＯユニットのどの入力信号でアラームが発生したかを特定することができるようになるため、ＩＯユニットの障害追跡に要する時間を短縮することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態を図面と共に説明する。  
図１は数値制御装置（ＣＮＣ）６システムの概略の構成を示すものである。数値制御装置（ＣＮＣ）６にはＰＭＣ（プログラマブル・マシン・コントローラ）７が内蔵されており、ＰＭＣ７にはＩ／Ｏ制御回路１１と通信線２４を介して複数のＩＯユニット１〜５が接続されている。ＩＯユニット１〜５は１つの通信線２４に従属接続されている。ＰＭＣ７とＩＯユニット１〜５とはマスタとスレーブの関係にある。ＩＯユニット１〜５からＰＭＣ７への入力信号２７は、ＨＥＡＤ部、ＤＩデータ部、ＡＬＭ部（アラーム・フレーム部）、及びＣＲＣ部から構成されている。ＨＥＡＤ部は入力信号２７の送信元や送信データのサイズなどを示す情報であり、ＤＩデータ部は工作機械を操作した情報などの入力情報であり、ＡＬＭ部は通信のエラーやＲＡＭのパリティエラーなどのアラーム情報であり、ＣＲＣ部はノイズなどによって入力信号２７のデータが乱された場合それを検出するための情報である。図１に示されるＡＬＭ部は８ビットである。ＩＯユニット１〜５に何らかの異常状態が発生したこと（例えば、ＤＯドライバの加熱保護アラーム等）をステータス異常発生として数値制御装置６に通知するために、前記ＡＬＭの第３ビット２６がステータス情報発生通知ビットとして準備されている。そして、ＩＯユニット１〜５は２次災害が発生しないように処理がなされている。例えば、ＤＯの地絡事故が発生した場合は、ＤＯドライバの加熱保護機能が動作して、ＩＯユニットにあるＤＯドライバの出力がオフにされるようになっている。
【００１２】
図２はＩＯユニット２の内部に異常が発生したことを示すステータス情報の発生をＰＭＣ７に知らせる通知方法を示している。図２に示されるように例えばＩＯユニット２の内部で異常が発生した場合、ＩＯユニット２は入力信号２８のＡＬＭにあらかじめ準備されたステータス異常発生通知ビットを立ててＰＭＣ７に送信する。図２に示されるＡＬＭは８ビット長でその第３ビットをステータス異常発生通知ビットとして準備している。なお、第３ビットの選択は一例であって、どのビットをステータス異常発生通知情報ビットとするかは適宜に選択してよい。ＰＭＣ７は、ステータス情報要求ビットが立ったＡＬＭを持つ入力信号２８を受信したら、入力信号２８のＨＥＡＤの情報に基づき異常が発生したＩＯユニット２を特定しＲＡＭ１０に異常が発生したＩＯユニット２を特定するための情報（例えば、前記ＨＥＡＤの情報に基づくスレーブ番号２）をステータス情報取得先情報として格納する。ステータス情報取得先情報の格納先はＲＡＭ１０に限定されるものではなく、Ｉ／Ｏ制御回路１１のレジスタを用いることも可能である。
【００１３】
図３はＰＭＣ７がステータス情報の要求情報をＩＯユニット側に知らせる通知方法を示している。ＰＭＣ７は、前記ステータス情報取得先情報に基づいてステータス異常発生通知を発したＩＯユニット２にＤＯデータを送信するとき、出力信号２９のＨＥＡＤに準備されているステータス情報要求ビットを立てて送信する。図３に示されるＨＥＡＤでは第６ビットをステータス情報要求ビットとしている。
【００１４】
図４（ａ）はＩＯユニットがそのステータス情報をＰＭＣ７に知らせる通知方法を示している。ステータス情報の要求情報ビットの立ったＨＥＡＤを受信したＩＯユニット２は、入力信号３０のＨＥＡＤにステータス情報通知ビットを立てた上で、ステータス情報をＤＩデータの後ろに付加してＰＭＣ７に送信する。図４（ａ）に示されるＨＥＡＤでは第５ビットをステータス情報通知ビットとしている。図４（ｂ）はＩＯユニットの内部で異常が無い通常の場合のＩＯユニットからの入力信号が「ＨＥＡＤ」、「ＤＩデータ」、「ＡＬＭ」、及び「ＣＲＣ」の４つのフレームが連続する形式であることを示している。  
なお、ＰＭＣ７からＩＯユニットへの出力信号は、「ＨＥＡＤ」、「ＤＯデータ」、「ＡＬＭ」、及び「ＣＲＣ」の４つのフレームが連続する形式である。図４（ｃ）はＩＯユニットの内部で異常が発生した場合にＤＩデータの次にステータス情報を付加したＩＯユニットからの入力信号を示している。ステータス情報をＰＭＣ７に送信するときには、「ＤＩデータ」の次に「ステータス情報」が付加され５つのフレームが連続する形式となっている。このように、異常が発生したＩＯユニットにのみステータス情報の要求を行ない、異常が発生したＩＯユニットのみからステータス情報を取得するようにしたことにより、通信帯域を圧迫することなくＩＯユニットのステータス情報を取得することができる。
【００１５】
図５はＩＯユニット２と４のように、複数台のＩＯユニットで異常が発生した状態を示している。  
図６は複数台のＩＯユニット、例えばＩＯユニット２とＩＯユニット４の内部で異常が発生した場合に、ＩＯユニット２とＩＯユニット４とからのそれぞれの入力信号３１、３２がＡＬＭにステータス異常発生通知ビットを立ててＰＭＣ７に送信されることを示している。入力信号３１と入力信号３２のＨＥＡＤはそれぞれ入力信号３１、３２の送信元を示す情報を有している。  
図７は異常が発生した複数のＩＯユニットを特定する情報をＰＭＣ７に格納することを示している。ＰＭＣ７は、ステータス異常発生通知ビットが立ったＡＬＭを持つ入力信号３１、３２（図６参照）を受信したら、入力信号３１、３２のＨＥＡＤの情報に基づき異常が発生したＩＯユニット２とＩＯユニット４を特定し、ＰＭＣ７のＲＡＭ１０に異常が発生したＩＯユニットを特定するための情報（例えば、前記ＨＥＡＤの情報に基づくスレーブ番号２とスレーブ番号４）をステータス情報取得先情報として格納する。
【００１６】
図８はＰＭＣ７がＩＯユニット２に対してステータス情報要求を知らせる方法を示している。ＰＭＣ７は、ステータス異常発生通知を発したそのＩＯユニット２に出力信号３３を送信するとき、格納された前記ステータス情報取得先情報に基づき出力信号３３のＨＥＡＤに準備されているステータス情報要求ビットを立てて送信する。  
図９はＩＯユニット２がそのステータス情報をＰＭＣ７に知らせる方法を示している。ステータス情報要求ビットの立ったＨＥＡＤを受信したＩＯユニット２は、ＨＥＡＤにステータス情報通知ビットを立てた上で、ステータス情報をＤＩデータの後ろに付加してＰＭＣ７に入力信号３４を送信する。そして、ＩＯユニット２からのステータス情報はＰＭＣ７のＲＡＭ１０に格納される。
【００１７】
図１０はＰＭＣ７がＩＯユニット４に対してステータス情報要求を知らせる方法を示している。ＰＭＣ７は、ステータス情報の発生通知情報を発したそのＩＯユニット４に出力信号３５を送信するとき、格納された前記ステータス情報取得先情報に基づき出力信号３５のＨＥＡＤに準備されているステータス情報要求ビットを立てて送信する。  
図１１はＩＯユニット４がそのステータス情報をＰＭＣ７に知らせる方法を示している。ステータス情報要求ビットの立ったＨＥＡＤを受信したＩＯユニット４は、ＨＥＡＤにステータス情報通知ビットを立てた上で、ＤＩデータの後ろにステータス情報を付加してＰＭＣ７に入力信号３６を送信する。そして、ＩＯユニット４からのステータス情報はＰＭＣ７のＲＡＭ１０に格納される。この処理をステータス情報取得先情報として格納されている全てのＩＯユニットに対して順番に行なう。
【００１８】
図１２及び図１３は、ステータス情報を別パケットで送受信する実施形態を示している。ＩＯユニットの内部で異常が発生した際に、入力信号のＡＬＭのステータス異常発生通知信号ビットを使ってＰＭＣ７に通知し、ＰＭＣ７がステータス情報取得先情報をＰＭＣ７のＲＡＭ１０に格納するまでの手順は上述の手順と同じである。１スキャンにおける全てのＩＯユニットのＤＩデータ及びＤＯデータの送受信が終了した後、ＲＡＭ１０に格納された前記ステータス情報取得先情報（例えば、スレーブ番号）によって特定されるＩＯユニットに、ステータス情報要求コマンドを送信する。ステータス情報要求コマンドを受信したＩＯユニットは、ステータス情報をＰＭＣ７に送信する。ＩＯのステータス情報をＰＭＣとＩＯとの通常のＤＩデータとＤＯデータの送受信と独立してステータス情報要求コマンドとステータス情報を送受信できるため、ＤＩデータとＤＯデータの送受信を優先してステータス情報の要求と収集とを行なうことが可能となる。
【００１９】
図１４には、数値制御装置６にＰＭＣ７が内蔵され、ＰＭＣ７に通信制御装置３９と通信線２４を介して複数のＩＯユニットが接続されている数値制御装置システムの概略構成の例を示している。ＰＭＣ７に通信制御装置３９を接続し通信の処理を専ら通信制御装置３９に行なわせ、ＰＭＣ７のＣＰＵ８の負荷を軽減し、数値制御装置６全体の数値制御能力の低下を招かないようにしている。図１５及び図１６は、前記したＩＯユニットからのステータス情報の取得のフロー図を示したものである。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施形態の工作機械にＩＯユニットを従属接続した例である。
【図２】ＩＯユニット２のステータス異常発生を数値制御装置に通知する例である。
【図３】ＩＯユニット２にステータス情報を要求する例である。
【図４】ＩＯユニット２のステータス情報を数値制御装置に送信する例である。
【図５】ＩＯユニット２と４の内部で異常が発生した例である。
【図６】ＩＯユニット２と４のステータス異常発生を数値制御装置に通知する例である。
【図７】ＩＯユニット２と４のステータス異常発生情報を数値制御装置に格納する例である。
【図８】ＩＯユニット２にステータス情報を要求する例である。
【図９】ＩＯユニット２のステータス情報を数値制御装置に送信する例である。
【図１０】ＩＯユニット４にステータス情報を要求する例である。
【図１１】ＩＯユニット４のステータス情報を数値制御装置に送信する例である。
【図１２】ＩＯユニット２にステータス情報要求コマンドを発してステータス情報の送信を要求する例。
【図１３】ＩＯユニット２のステータス情報を異なるパケットで送信する例。
【図１４】ＰＭＣに通信制御装置と通信線を介して複数のＩＯユニットが従属して接続された数値制御システムの概略を示した例。
【図１５】ＩＯユニットからのステータス情報取得のフロー図。
【図１６】複数のＩＯユニットからのステータス情報取得のフロー図。
【図１７】ステータス情報とＤＩデータとを同じフレームで送信していた従来技術の例。
【符号の説明】
【００２１】
１  ＩＯユニット１
２  ＩＯユニット２
３  ＩＯユニット３
４  ＩＯユニット４
５  ＩＯユニット５
６  数値制御装置（ＣＮＣ）
７  ＰＭＣ
８  ＣＰＵ
９  ＲＯＭ
１０  ＲＡＭ
１１  Ｉ／Ｏ制御回路
１２  ＣＰＵ
１３  共通ＲＡＭ
１４  ＲＯＭ
１５  ＲＡＭ
１６  画像表示制御回路
１７  インタフェース
１８  インタフェース
１９  バス
２０  バス
２１  表示装置
２２  キーボード／マウス
２３  外部機器
２４  通信線
２５  工作機械
２６  ＡＬＭ
２７  入力信号
２８  ＩＯユニット２からのステータス異常発生通知ビット付入力信号
２９  ＩＯユニット２宛のステータス情報要求する出力信号
３０  ＩＯユニット２からのステータス情報を付加した入力信号
３１  ＩＯユニット２からのステータス異常発生通知ビット付入力信号
３２  ＩＯユニット４からのステータス異常発生通知ビット付入力信号
３３  ＩＯユニット２宛のステータス情報要求する出力信号
３４  ＩＯユニット２からのステータス情報を付加した入力信号
３５  ＩＯユニット４宛のステータス情報要求する出力信号
３６  ＩＯユニット４からのステータス情報を付加した入力情報
３７  ＩＯユニット２宛にステータス情報要求コマンドをフレームとした出力信号
３８  ＩＯユニット２から別パケットでステータス情報を送信する出力信号
３９  通信制御装置
【図１】
2008293374.tif 000003
【図２】
2008293374.tif 000004
【図３】
2008293374.tif 000005
【図４】
2008293374.tif 000006
【図５】
2008293374.tif 000007
【図６】
2008293374.tif 000008
【図７】
2008293374.tif 000009
【図８】
2008293374.tif 000010
【図９】
2008293374.tif 000011
【図１０】
2008293374.tif 000012
【図１１】
2008293374.tif 000013
【図１２】
2008293374.tif 000014
【図１３】
2008293374.tif 000015
【図１４】
2008293374.tif 000016
【図１５】
2008293374.tif 000017
【図１６】
2008293374.tif 000018
【図１７】
2008293374.tif 000019