(57)【特許請求の範囲】
【請求項１】
複数のサーボモータの夫々を駆動制御する為の指令信号を出力する制御部と、
前記複数のサーボモータの夫々に対応して設け、前記サーボモータの位置情報をフィードバックして出力する複数のエンコーダと、
前記複数のサーボモータの夫々に対応して設け、前記制御部と前記エンコーダとに通信可能に夫々接続し、前記制御部からの前記指令信号と、前記エンコーダからの前記位置情報とを用いて前記サーボモータの速度指令値を生成し、前記サーボモータの動作が前記速度指令値に追従するように前記サーボモータを駆動する複数のサーボ制御部と、
各前記サーボ制御部と通信可能に接続し、前記サーボモータ毎に、前記サーボ制御部が生成した前記速度指令値を取得すると共に、前記サーボ制御部と前記エンコーダとの通信を傍受して前記位置情報を取得し、取得した前記速度指令値と前記位置情報を比較して監視する速度監視部と
を備えた速度監視装置において、
前記複数のサーボ制御部の夫々は、
前記エンコーダに対し、前記サーボモータの前記位置情報を要求する依頼情報を送信する依頼情報送信手段と、
前記依頼情報送信手段が送信した前記依頼情報を受信した前記エンコーダが応答して返信した前記位置情報を受信する位置情報受信手段と、
前記指令信号と、前記位置情報受信手段が受信した前記位置情報とに基づいて生成した前記速度指令値を、前記速度監視部に送信する速度指令値送信手段と、
前記サーボ制御部を識別可能な識別情報を、前記依頼情報と前記速度指令値に夫々付与する識別情報付与手段と
を備え、
前記複数のエンコーダの夫々は、
前記依頼情報送信手段が送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報を付与した前記位置情報を、前記サーボ制御部に返信し、
前記速度監視部は、
前記速度指令値送信手段から受信した前記速度指令値に付与した前記識別情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記識別情報とが一致しているか否か判断する識別情報一致判断手段と、
前記識別情報一致判断手段が前記識別情報は不一致と判断した場合に、前記サーボモータの駆動を停止する停止信号を前記サーボ制御部へ出力する停止信号出力手段とを備えたこと
を特徴とする速度監視装置。
【請求項２】
前記複数のサーボ制御部の夫々は、
通信時刻を特定可能なタイマ情報を、前記識別情報が付与された前記依頼情報と前記速度指令値に夫々付与するタイマ情報付与手段を更に備え、
前記複数のエンコーダの夫々は、
前記依頼情報送信手段が送信した前記依頼情報を受信し、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報と前記タイマ情報を付与した前記位置情報を、前記サーボ制御部に返信し、
前記速度監視部は、
前記サーボ制御部から受信した前記速度指令値に付与した前記タイマ情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記タイマ情報とが一致しているか否か判断するタイマ情報一致判断手段を備え、
前記停止信号出力手段は更に、
前記タイマ情報一致判断手段が前記タイマ情報は不一致と判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項１に記載の速度監視装置。
【請求項３】
前記制御部、前記サーボ制御部、前記速度監視部において、互いにパケットを通信する毎に、エラー検出符号を前記パケットに付与する通信系を備え、
前記複数のサーボ制御部の夫々は、
前記識別情報と前記タイマ情報が付与した前記依頼情報と前記速度指令値に、エラー検出符号を付与するエラー検出符号付与手段を更に備え、
前記複数のエンコーダの夫々は、
前記依頼情報送信手段が送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報、前記タイマ情報、及び前記エラー検出符号を付与した前記位置情報を、前記サーボ制御部に返信し、
前記速度監視部は、
前記速度指令値送信手段から受信した前記速度指令値に付与した前記エラー検出符号と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記エラー検出符号とが一致しているか否か判断するエラー検出符号一致判断手段を備え、
前記停止信号出力手段は更に、
前記エラー検出符号一致判断手段が前記エラー検出符号は不一致と判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項２に記載の速度監視装置。
【請求項４】
前記速度監視部は、
前記速度指令値送信手段から受信した前記速度指令値と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報を速度値に変換した現在の速度値を比較し予め定めた許容値を超えて不一致が発生しているか否か判断する速度判断手段を備え、
前記停止信号出力手段は更に、
前記速度判断手段が、前記許容値を超えて不一致が発生していると判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項１から３の何れかに記載の速度監視装置。
【請求項５】
前記速度監視部は、
前記速度指令値送信手段から受信した前記速度指令値と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報を速度値に変換した現在の速度値との何れもが所定の上限値以下であるか否か判断する上限値判断手段を備え、
前記停止信号出力手段は更に、
前記上限値判断手段が、前記速度指令値と前記現在の速度のうち少なくとも一方が前記所定の上限値を超えていると判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項１から４の何れかに記載の速度監視装置。
【請求項６】
前記速度監視部は、
前記識別情報一致判断手段が前記識別情報は不一致であると判断した状態が一定時間以上継続しているか否か判断する時間判断手段を備え、
前記停止信号出力手段は更に、
前記時間判断手段が、前記識別情報は不一致であると判断した状態が前記一定時間以上継続していると判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項１から５の何れかに記載の速度監視装置。
【請求項７】
前記速度監視部は、
前記識別情報一致判断手段による前記識別情報は不一致であるとの判断が規定回数以上連続したか否か判断する回数判断手段を備え、
前記停止信号出力手段は更に、
前記回数判断手段が、前記識別情報は不一致であるとの判断が規定回数以上連続したと判断した場合に、前記停止信号を前記サーボ制御部へ出力すること
を特徴とする請求項１から５の何れかに記載の速度監視装置。
【請求項８】
複数のサーボモータの夫々を駆動制御する為の指令信号を出力する制御部と、
前記複数のサーボモータの夫々に対応して設け、前記サーボモータの位置情報をフィードバックして出力する複数のエンコーダと、
前記複数のサーボモータの夫々に対応して設け、前記制御部と前記エンコーダとに通信可能に夫々接続し、前記制御部からの前記指令信号と、前記エンコーダからの前記位置情報とを用いて前記サーボモータの速度指令値を生成し、前記サーボモータの動作が前記速度指令値に追従するように前記サーボモータを駆動する複数のサーボ制御部と、
各前記サーボ制御部と通信可能に接続し、前記サーボモータ毎に、前記サーボ制御部が生成した前記速度指令値を取得すると共に、前記サーボ制御部と前記エンコーダとの通信を傍受して前記位置情報を取得し、取得した前記速度指令値と前記位置情報を比較して監視する速度監視部と
を備えた速度監視装置の速度監視方法において、
前記複数のサーボ制御部の夫々は、
前記エンコーダに対し、前記サーボモータの前記位置情報を要求する依頼情報を送信する依頼情報送信工程と、
前記依頼情報送信工程で送信した前記依頼情報を受信した前記エンコーダが応答して返信した前記位置情報を受信する位置情報受信工程と、
前記指令信号と、前記位置情報受信工程で受信した前記位置情報とに基づいて生成した前記速度指令値を、前記速度監視部に送信する速度指令値送信工程と、
前記サーボ制御部を識別可能な識別情報を、前記依頼情報と前記速度指令値に夫々付与する識別情報付与工程と
を行い
前記複数のエンコーダの夫々は、
前記依頼情報送信工程で送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報を付与した前記位置情報を、前記サーボ制御部に返信し、
前記速度監視部は、
前記速度指令値送信工程で送信した前記速度指令値を受信し、受信した前記速度指令値に付与した前記識別情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記識別情報とが一致しているか否か判断する識別情報一致判断工程と、
前記識別情報一致判断工程で前記識別情報は不一致と判断した場合に、前記サーボモータの駆動を停止する停止信号を前記サーボ制御部へ出力する停止信号出力工程と
を行うこと
を特徴とする速度監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、速度監視装置と速度監視方法に関する。
【背景技術】
【０００２】
工作機械は数値制御装置と安全制御装置を備える。安全制御装置は速度監視部を備える。速度監視部は工作機械の各軸の動作速度を監視し、万一数値制御装置が誤った速度命令を出力しても、危害が発生する前に工作機械の動作を停止する。特許文献１に記載のサーボシステムの速度監視部（セーフティユニット）は、サーボモータに接続するエンコーダからの位置情報のフィードバック値とサーボ制御部の速度指令値の比較により許容できない差異がある場合は異常と判定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５３６７６２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
位置情報のフィードバック値と指令値の一致は、速度監視部とサーボ制御部が１：１の接続であれば、通信相手が決まるので問題は無い。但し、１：複数の接続で且つ間に通信を介するものが一つ或いは複数存在するフィールドバスのような接続の場合、他のサーボ制御部や通信回路のバグにより、例えば同じ速度で動くモータへの指令値を取り違えて速度監視部に伝わる可能性がある。この場合、速度監視部は異常を検知できないまま工作機械を動作する可能性がある。モータが同じ速度で動く状態は、動作プログラムによっては発生し得るし、二軸が同期して動く構成の工作機械であれば常時発生する。特許文献１に記載のサーボシステムは、接続相手の識別ができないので、速度監視部とサーボ制御部は１：１に接続しなければ安全とはいえない。それ故、サーボシステムは、サーボモータの接続数分だけ速度監視部が必要となるので高費用なシステムとなってしまう。
【０００５】
本発明の目的は、一つの速度監視部で複数のサーボモータの速度を監視できる速度監視装置と速度監視方法を提供することである。
【課題を解決するための手段】
【０００６】
請求項１に係る速度監視装置は、複数のサーボモータの夫々を駆動制御する為の指令信号を出力する制御部と、前記複数のサーボモータの夫々に対応して設け、前記サーボモータの位置情報をフィードバックして出力する複数のエンコーダと、前記複数のサーボモータの夫々に対応して設け、前記制御部と前記エンコーダとに通信可能に夫々接続し、前記制御部からの前記指令信号と、前記エンコーダからの前記位置情報とを用いて前記サーボモータの速度指令値を生成し、前記サーボモータの動作が前記速度指令値に追従するように前記サーボモータを駆動する複数のサーボ制御部と、各前記サーボ制御部と通信可能に接続し、前記サーボモータ毎に、前記サーボ制御部が生成した前記速度指令値を取得すると共に、前記サーボ制御部と前記エンコーダとの通信を傍受して前記位置情報を取得し、取得した前記速度指令値と前記位置情報を比較して監視する速度監視部とを備えた速度監視装置において、前記複数のサーボ制御部の夫々は、前記エンコーダに対し、前記サーボモータの前記位置情報を要求する依頼情報を送信する依頼情報送信手段と、前記依頼情報送信手段が送信した前記依頼情報を受信した前記エンコーダが応答して返信した前記位置情報を受信する位置情報受信手段と、前記指令信号と、前記位置情報受信手段が受信した前記位置情報とに基づいて生成した前記速度指令値を、前記速度監視部に送信する速度指令値送信手段と、前記サーボ制御部を識別可能な識別情報を、前記依頼情報と前記速度指令値に夫々付与する識別情報付与手段とを備え、前記複数のエンコーダの夫々は、前記依頼情報送信手段が送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報を付与した前記位置情報を、前記サーボ制御部に返信し、前記速度監視部は、前記速度指令値送信手段から受信した前記速度指令値に付与した前記識別情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記識別情報とが一致しているか否か判断する識別情報一致判断手段と、前記識別情報一致判断手段が前記識別情報は不一致と判断した場合に、前記サーボモータの駆動を停止する停止信号を前記サーボ制御部へ出力する停止信号出力手段とを備えたことを特徴とする。速度監視装置は、受信した速度指令値と傍受した位置情報について、夫々に付与した識別情報を比較検証することで、複数接続するサーボ制御部やエンコーダの通信相手の不一致を検出できる。不一致の場合、速度監視装置は停止信号を出力するので、誤動作を防止できる。識別情報の一致を判断することで、通信相手が異なる異常を速やかに検出できるので、一つの速度監視部で複数のサーボモータの速度を監視できる。複数のサーボ制御部に対して速度監視部は一つで済むので、フィールドバス等での接続が可能となる。速度監視装置は、全てのサーボ制御部に個々に速度監視部を用意するシステムに比べて費用削減できる。なお、速度監視部が速度指令値と比較する位置情報は、単位時間当たりのエンコーダからの位置情報であるので現在の速度となる。それ故、速度監視部は、速度指令値と現在の速度を比較して監視できる。
【０００７】
請求項２に係る速度監視装置は、請求項１に記載の発明の構成に加え、前記複数のサーボ制御部の夫々は、通信時刻を特定可能なタイマ情報を、前記識別情報が付与された前記依頼情報と前記速度指令値に夫々付与するタイマ情報付与手段を更に備え、前記複数のエンコーダの夫々は、前記依頼情報送信手段が送信した前記依頼情報を受信し、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報と前記タイマ情報を付与した前記位置情報を、前記サーボ制御部に返信し、前記速度監視部は、前記サーボ制御部から受信した前記速度指令値に付与した前記タイマ情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記タイマ情報とが一致しているか否か判断するタイマ情報一致判断手段を備え、前記停止信号出力手段は更に、前記タイマ情報一致判断手段が前記タイマ情報は不一致と判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。速度監視装置は、受信した速度指令値と傍受した位置情報について、夫々に付与した識別情報を比較検証することに加え、夫々に付与したタイマ情報を比較検証することで、速度指令値と位置情報の時間的な不一致についても検出できる。
【０００８】
請求項３に係る速度監視装置は、請求項２に記載の発明の構成に加え、前記制御部、前記サーボ制御部、前記速度監視部において、互いにパケットを通信する毎に、エラー検出符号を前記パケットに付与する通信系を備え、前記複数のサーボ制御部の夫々は、前記識別情報と前記タイマ情報が付与した前記依頼情報と前記速度指令値に、エラー検出符号を付与するエラー検出符号付与手段を更に備え、前記複数のエンコーダの夫々は、前記依頼情報送信手段が送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報、前記タイマ情報、及び前記エラー検出符号を付与した前記位置情報を、前記サーボ制御部に返信し、前記速度監視部は、前記速度指令値送信手段から受信した前記速度指令値に付与した前記エラー検出符号と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記エラー検出符号とが一致しているか否か判断するエラー検出符号一致判断手段を備え、前記停止信号出力手段は更に、前記エラー検出符号一致判断手段が前記エラー検出符号は不一致と判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。速度監視装置は、受信した速度指令値と傍受した位置情報について、夫々に付与したエラー検出符号を比較検証することで、通信経路上での異常を更に検出できる。
【０００９】
請求項４に係る速度監視装置は、請求項１から３の何れかに記載の発明の構成に加え、前記速度監視部は、前記速度指令値送信手段から受信した前記速度指令値と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報を速度値に変換した現在の速度値を比較し予め定めた許容値を超えて不一致が発生しているか否か判断する速度判断手段を備え、前記停止信号出力手段は更に、前記速度判断手段が、前記許容値を超えて不一致が発生していると判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。速度指令値と現在の速度値との差異が所定範囲を超えているときは異常である。この場合、速度監視装置はサーボモータの駆動を停止できるので、安全性を向上できる。
【００１０】
請求項５に係る速度監視装置は、請求項１から４の何れかに記載の発明の構成に加え、前記速度監視部は、前記速度指令値送信手段から受信した前記速度指令値と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報を速度値に変換した現在の速度値との何れもが所定の上限値以下であるか否か判断する上限値判断手段を備え、前記停止信号出力手段は更に、前記上限値判断手段が、前記速度指令値と前記現在の速度のうち少なくとも一方が前記所定の上限値を超えていると判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。速度指令値と現在の速度値のうち少なくとも一方が所定の上限値を超えているとき、サーボモータは速度超過の状態である。この場合、速度監視装置はサーボモータの駆動を停止できるので、安全性を向上できる。
【００１１】
請求項６に係る速度監視装置は、請求項１から５の何れかに記載の発明の構成に加え、前記速度監視部は、前記識別情報一致判断手段が前記識別情報は不一致であると判断した状態が一定時間以上継続しているか否か判断する時間判断手段を備え、前記停止信号出力手段は更に、前記時間判断手段が、前記識別情報は不一致であると判断した状態が前記一定時間以上継続していると判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。それ故、速度監視装置は通信相手の識別精度を向上できる。
【００１２】
請求項７に係る速度監視装置は、請求項１から５の何れかに記載の発明の構成に加え、前記速度監視部は、前記識別情報一致判断手段が前記識別情報は不一致であるとの判断が規定回数以上連続したか否か判断する回数判断手段を備え、前記停止信号出力手段は更に、前記回数判断手段が、前記識別情報は不一致であるとの判断が規定回数以上連続したと判断した場合に、前記停止信号を前記サーボ制御部へ出力することを特徴とする。それ故、速度監視装置は通信相手の識別精度を向上できる。
【００１３】
請求項８に係る速度監視方法は、複数のサーボモータの夫々を駆動制御する為の指令信号を出力する制御部と、前記複数のサーボモータの夫々に対応して設け、前記サーボモータの位置情報をフィードバックして出力する複数のエンコーダと、前記複数のサーボモータの夫々に対応して設け、前記制御部と前記エンコーダとに通信可能に夫々接続し、前記制御部からの前記指令信号と、前記エンコーダからの前記位置情報とを用いて前記サーボモータの速度指令値を生成し、前記サーボモータの動作が前記速度指令値に追従するように前記サーボモータを駆動する複数のサーボ制御部と、各前記サーボ制御部と通信可能に接続し、前記サーボモータ毎に、前記サーボ制御部が生成した前記速度指令値を取得すると共に、前記サーボ制御部と前記エンコーダとの通信を傍受して前記位置情報を取得し、取得した前記速度指令値と前記位置情報を比較して監視する速度監視部とを備えた速度監視装置の速度監視方法において、前記複数のサーボ制御部の夫々は、前記エンコーダに対し、前記サーボモータの前記位置情報を要求する依頼情報を送信する依頼情報送信工程と、前記依頼情報送信工程で送信した前記依頼情報を受信した前記エンコーダが応答して返信した前記位置情報を受信する位置情報受信工程と、前記指令信号と、前記位置情報受信工程で受信した前記位置情報とに基づいて生成した前記速度指令値を、前記速度監視部に送信する速度指令値送信工程と、前記サーボ制御部を識別可能な識別情報を、前記依頼情報と前記速度指令値に夫々付与する識別情報付与工程とを行い、前記複数のエンコーダの夫々は、前記依頼情報送信工程で送信した前記依頼情報を受信した場合に、受信した前記依頼情報への応答である前記位置情報に、前記依頼情報に付与した前記識別情報を付与した前記位置情報を、前記サーボ制御部に返信し、前記速度監視部は、前記速度指令値送信工程で送信した前記速度指令値を受信し、受信した前記速度指令値に付与した前記識別情報と、前記サーボ制御部と前記エンコーダとの通信を傍受して取得した前記位置情報に付与した前記識別情報とが一致しているか否か判断する識別情報一致判断工程と、前記識別情報一致判断工程で前記識別情報は不一致と判断した場合に、前記サーボモータの駆動を停止する停止信号を前記サーボ制御部へ出力する停止信号出力工程とを行うことを特徴とする。速度監視装置は上記方法を行うことで、請求項１に記載の効果を得ることができる。
【００１４】
上記請求項１〜７の一部の構成を任意に組み合わせてもよい。
【図面の簡単な説明】
【００１５】
【図１】サーボシステム１の電気的構成を示すブロック図。
【図２】サーボアンプ７の内部構成を示す機能ブロック図。
【図３】データにＣＲＣ符号（１）と（２）を付与する図。
【図４】速度指令のパケットにＣＲＣ符号（１ａ）と（２ａ）を付与する図。
【図５】依頼情報のパケットにＣＲＣ符号（１ｂ）（２ｂ）を付与する図。
【図６】エンコーダ６が返信する位置情報のパケットの図。
【図７】チェック処理の流れ図。
【図８】サーボシステム１００(変形例）の図。
【図９】チェック処理の第一変形例の流れ図。
【図１０】チェック処理の第二変形例の流れ図。
【発明を実施するための形態】
【００１６】
本発明の実施形態を図面を参照して説明する。以下に記載するシステムの構成、処理等は、特に特定的な記載がない限り、それのみに限定する趣旨ではなく、単なる説明例である。図面は、本発明が採用しうる技術的特徴を説明するために用いられるものである。
【００１７】
図１を参照し、サーボシステム１の構成を説明する。サーボシステム１は、例えば工作機械（図示略）を駆動する為のシステムである。工作機械は例えば不図示の工具と被削材をＸ、Ｙ、Ｚの互いに直交する三軸方向に相対的に移動することで、被削材の切削加工を行うものである。サーボシステム１は、複数のモータ機構部Ｕ１〜Ｕｎ、数値制御装置２、安全制御装置３を備える。モータ機構部Ｕ１〜Ｕｎは、工作機械を駆動する為の各種サーボモータ５（以下モータ５と呼ぶ）を夫々備える。各種モータ５は、例えば不図示のＸ軸モータ、Ｙ軸モータ、Ｚ軸モータ、主軸モータ、工具交換装置のマガジンモータ等の何れかである。Ｘ軸モータ、Ｙ軸モータ、Ｚ軸モータは、主軸と被削材を三軸方向に相対的に移動するものである。主軸モータは、工具を装着する主軸を回転駆動するモータである。
【００１８】
数値制御装置２はＮＣプログラムに基づき、モータ機構部Ｕ１〜Ｕｎの駆動を夫々制御する。ＮＣプログラムは各種制御指令を含む複数行で構成し、工作機械の軸移動、工具交換等を含む各種動作を行単位で制御するものである。安全制御装置３は、モータ機構部Ｕ１〜Ｕｎの夫々の状態を監視し、異常検出時に工作機械の動作を緊急停止する。
【００１９】
図１を参照し、モータ機構部Ｕ１の構成を説明する。本実施形態はｎ個のモータ機構部Ｕ１〜Ｕｎを備えるが、何れも同一構成である。それ故、本実施形態はこれらに同一符号を付して、モータ機構部Ｕ１を例に説明する。モータ機構部Ｕ１は、モータ５、エンコーダ６、サーボアンプ７を備える。モータ５は例えばＡＣサーボモータであり、上記した工作機械の各種モータである。エンコーダ６はモータ５と電気的に接続し、サーボモータ５の動作を検出する。エンコーダ６は検出したサーボモータ５の動作を示すフィードバック信号を生成し、サーボアンプ７に出力する。フィードバック信号は、例えばサーボモータ５の回転軸の回転位置（角度）の位置情報、その回転軸の回転速度の情報等を含む。エンコーダ６は、一般的なインクリメンタル型エンコーダ、アブソリュート型エンコーダ等を適用できる。
【００２０】
サーボアンプ７は、サーボ制御器１０、ＳＴＯ回路１１、電力制御素子１２を備える。サーボ制御器１０は、エンコーダ６と電気的に接続する。サーボ制御器１０は、数値制御装置２とフィールドバス等の通信路（図示略）で接続する。サーボ制御器１０は、数値制御装置２からの制御指令（本発明の指令信号の一例）と、エンコーダ６からのフィードバック信号とに基づき、制御波形信号を生成する。サーボ制御器１０の内部処理は後述する。サーボ制御器１０は、生成した制御波形信号を、ＳＴＯ回路１１を介して電力制御素子１２に出力する。電力制御素子１２は、モータ５と電源１５の間に接続する。電源１５は例えば交流電源である。電力制御素子１２は例えば不図示のコンバータとインバータを備える。コンバータは交流電源を直流に変換する。インバータは制御波形信号に基づき、直流を制御電流に変換し、モータ５に出力する。それ故、モータ５はサーボ制御器１０の制御に基づき駆動する。ＳＴＯ回路１１はセーフトルクオフ機能を有する。ＳＴＯ回路１１は、安全制御装置３から動作停止のＳＴＯ指令を受信した場合、回路内部のパワートランジスタの駆動信号を強制的にオフすることで、電力制御素子１２からモータ５に出力する制御電流を遮断する。それ故、モータ５の出力トルクはオフし、モータ５は停止する。なお、ＳＴＯ回路１１はパワートランジスタに限らず、例えばＩＧＢＴ（絶縁ゲートバイポーラトランジスタ）、又はリレー等を備えたものでもよい。
【００２１】
図２を参照し、サーボ制御器１０の内部処理を説明する。サーボ制御器１０は、エンコーダ６及び数値制御装置２と通信可能である。サーボ制御器１０は、モータ５の位置情報を出力するように、依頼情報をエンコーダ６に送信する(図２中矢印Ｋ１参照）。エンコーダ６は依頼情報に対して位置情報を返信する。サーボ制御器１０はエンコーダ６からの位置情報を、通信回路４６を介して受信する(図２中矢印Ｋ２参照）。サーボ制御器１０は通信路を介して数値制御装置２と常時通信する。数値制御装置２はＮＣプログラムの制御指令に基づき、例えば軸の移動指令を生成し、該生成した移動指令をサーボ制御器１０に出力する。
【００２２】
サーボ制御器１０は、位置制御部４１、速度制御部４２、電流制御部４３、速度変換部４４、通信回路４５，４６等を備える。位置制御部４１は、通信回路４５を介して数値制御装置２からの移動指令を受信する。位置制御部４１は、数値制御装置２からの移動指令の目標位置と、エンコーダ６からの位置情報との位置偏差を算出し、該位置偏差に位置比例ゲインを乗ずることで速度指令を算出する。速度変換部４４は、エンコーダ６からの位置情報を微分して実際の速度の情報である速度情報に変換する。速度制御部４２は、位置制御部４１が算出した速度指令の値と、速度変換部４４が変換した速度情報との速度偏差を算出する。速度制御部４２は、算出した速度偏差に速度比例ゲインを乗ずることで得た電流指令（比例）と、上記速度偏差を積分してその積分結果に速度積分ゲインを乗ずることで得た電流指令（積分）を加算し、トルク指令を生成する。電流制御部４３は、速度制御部４２が生成したトルク指令に基づき、ＳＴＯ回路１１を介して電力制御素子１２に制御波形信号を出力する。それ故、モータ５は、位置制御部４１が算出した速度指令に追従するように駆動する。なお、位置制御部４１が算出する速度指令に対応する速度指令値が、本発明の速度指令値の一例である。
【００２３】
位置制御部４１は、算出した速度指令を、数値制御装置２との通信路を利用して安全制御装置３に送信する（図２中矢印Ｋ３参照）。速度指令のパケットは、他のサーボアンプ等の中継器（図示略）等を中継して安全制御装置３に伝達する。中継器は速度指令のパケットを中継するだけで内容を変更しない。
【００２４】
図２を参照し、安全制御装置３の構成と動作を説明する。安全制御装置３は、ＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３等を備える。ＣＰＵ３１は安全制御装置３の動作を制御する。ＲＯＭ３２は各種プログラムを記憶する。ＲＡＭ３３は各種データを一時的に記憶する。安全制御装置３は、サーボ制御器１０の位置制御部４１が送信した速度指令のパケットを受信し、ＲＡＭ３３に記憶する。安全制御装置３は、サーボ制御器１０とエンコーダ６との通信を傍受することにより、エンコーダ６への依頼情報のパケットと、エンコーダ６から返信した位置情報のパケットを取得し、ＲＡＭ３３に記憶する。
【００２５】
安全制御装置３は、依頼情報のパケット、位置情報のパケットの他に、不図示の工作機械の保護カバーの扉に設けた扉スイッチ２５から扉開閉情報を定期的に取得し、ＲＡＭ３３に記憶する。保護カバーは工作機械の周囲を取り囲むことにより、切粉と切削液が外部に飛散するのを防止する。保護カバーの扉を開くことで、作業者は、保護カバー内部に設置したテーブル上に固定する被削材の交換等ができる。保護カバーの扉を閉めることで、加工領域と外部が遮断するので、被削材の切削加工を安全に行うことができる。扉スイッチ２５は扉の開閉を検出する。扉開閉情報は、扉スイッチ２５が安全制御装置３に送信する扉の開閉を示す情報である。
【００２６】
上記のように、安全制御装置３のＲＡＭ３３は、速度指令のパケット、依頼情報のパケット、位置情報のパケット、扉開閉情報等の各種データを記憶する。安全制御装置３は、これらのパケットと扉開閉情報について、後述するチェック処理（図６参照）を所定周期で実行することによって、複数のモータ機構部Ｕ１〜Ｕｎの異常を個別に検出できる。
【００２７】
図２、図４、図５を参照し、サーボ制御器１０がパケットに付与する固有ＩＤ情報とタイマ情報を説明する。サーボ制御器１０の位置制御部４１は、算出した速度指令のパケットの内部に、固有ＩＤ情報とタイマ情報を設定する（図２中Ｋ４とＫ５参照、図４（１）参照）。固有ＩＤ情報は、サーボアンプ７の個体を識別する為の情報である。タイマ情報は通信時刻を示す情報である。位置制御部４１は、エンコーダ６に送信する依頼情報のパケットの内部にも、固有ＩＤ情報とタイマ情報を設定する(図５（１）参照）。エンコーダ６は、依頼情報のパケットに対して返信するパケットの中に、依頼情報への応答であるモータ５の位置情報と、依頼情報のパケットの中に設定した固有ＩＤ情報とタイマ情報を夫々設定する。安全制御装置３は、後述するチェック処理（図７参照）にて、これらのパケット内部に設定した固有ＩＤ情報とタイマ情報を比較する。固有ＩＤ情報とタイマ情報が一致すれば、安全制御装置３は、依頼情報、エンコーダ６からの位置情報、及びサーボ制御器１０が算出した速度指令が、夫々同一のサーボアンプ７、モータ５、エンコーダ６の系統（同一のモータ機構部Ｕｎ）から渡されたものであることを確認できる。
【００２８】
図３〜図６を参照し、サーボシステム１の通信系が採用するＣＲＣ誤り検出方式を説明する。サーボシステム１の通信系は、ＣＲＣ（Cyclic Redundancy Code）を採用する。ＣＲＣとは、周知の誤り検出方式の一つで、データを値とみなしてある定数で割った余り（余剰）を用いて誤りの検知を行なうものである。本実施形態は、データの送信と記録の前に検査用の値を算出してデータ自体に一つのＣＲＣ符号を付加する。受信と読み出しの後に同じ個所のＣＲＣ符号を算出し直し、事前に付加したＣＲＣ符号に一致すれば誤りが無いことが分かり、一致しなければ途中でデータの一部が改変していることが分かる。ＣＲＣ符号は誤り検出用の符号であるため、誤りの訂正はできない。
【００２９】
例えば、図３（１）に示すように、データの送信元はデータ自体にＣＲＣ（１）を付与し、ＣＲＣ（１）を含めたデータごと一つのデータとしてパケットにして送信する。データを送信する際はデータの先頭にヘッダを付与する。図３（２）に示すように、物理層レベルでデータを授受するとき、物理層は、そのパケットの外側にＣＲＣ（２）を付与する。それ故、仮に通信路の中継点でデータの変更が起き、ＣＲＣ（２）が再付与されても、ＣＲＣ（１）により検出が可能になる。なお、物理層とは、ネットワークの物理的な接続・伝送方式を定めたものであり、本実施形態では、例えば、通信回路４５，４６、通信路の中継点（図示略）等である。
【００３０】
図４（１）は、サーボ制御器１０が安全制御装置３に送信する速度指令のパケットの一例を示す。サーボ制御器１０の位置制御部４１は、算出した速度指令に、固有ＩＤ情報とタイマ情報を付与したデータごと一つのパケットとして、ＣＲＣ（１ａ）を付与して送信する(図２中Ｋ６参照）。通信回路４５は、図４（１）のパケットの外側にＣＲＣ（２ａ）を付与する（図４（２）参照）。速度指令のパケットは、数値制御装置２との通信路を介して安全制御装置３に伝達する。安全制御装置３は、図４（２）の速度指令のパケットを受信する。速度指令のパケットは、数値制御装置２との通信路を介すので、例えば数値制御装置２において通信を制御するアプリ層のバグ等により、データの一部である速度指令が改変する可能性がある。速度指令が改変した後に、物理層がＣＲＣ（２ａ）を再付与しても、安全制御装置３はＣＲＣ（１ａ）を検出できるので、通信途中でデータの改変等があったか否かを容易に確認できる。
【００３１】
図５（１）は、サーボ制御器１０がエンコーダ６に送信する依頼情報のパケットの一例を示す。サーボ制御器１０の位置制御部４１は、依頼情報に、固有ＩＤ情報とタイマ情報を付与したデータごと一つのパケットとして、ＣＲＣ（１ｂ）を付与して送信する。通信回路４６は、図５（１）に示すパケットの外側にＣＲＣ（２ｂ）を付与する（図５（２）参照）。安全制御装置３は、図５（２）に示す依頼情報のパケットを傍受により取得する。安全制御装置３は、傍受により取得した依頼情報のパケットについて、通信途中の物理層がＣＲＣ（２ｂ）を再付与しても、ＣＲＣ（１ｂ）を検出することで、通信途中でデータの改変等があったか否かを確認できる。
【００３２】
エンコーダ６は、サーボ制御器１０から図５（２）に示す依頼情報を受信する。エンコーダ６は、ヘッダとＣＲＣ（２ｂ）を削除して、依頼情報のパケットと同一の固有ＩＤ情報、タイマ情報、依頼情報、ＣＲＣ（１ｂ）の後に、依頼情報への応答であるモータ５の位置情報を付与する。それ故、エンコーダ６は、図６に示す位置情報のパケットをサーボ制御器１０に返信する。安全制御装置３は、位置情報のパケットを傍受により取得する。
【００３３】
図２を参照し、安全制御装置３が実行するチェック処理を説明する。安全制御装置３のＣＰＵ３１（図２参照）は、サーボ制御器１０の位置制御部４１から送信した速度指令のパケットを受信し、ＲＡＭ３３に記憶する。ＣＰＵ３１は、サーボ制御器１０とエンコーダ６との通信を傍受することで、サーボ制御器１０からエンコーダ６に送信した依頼情報のパケットと、エンコーダ６からサーボ制御器１０に返信した位置情報のパケットを取得し、ＲＡＭ３３に記憶する。ＣＰＵ３１は、工作機械の保護カバーの扉に設けた扉スイッチ２５から扉開閉情報を定期的に取得し、ＲＡＭ３３に記憶する。
【００３４】
ＣＰＵ３１は、サーボシステム１が起動し、数値制御装置２によるＮＣプログラムに基づく被削材の切削加工が開始すると、所定周期で、ＲＯＭ３２に記憶するチェックプログラムを読出し、本処理を実行する。
【００３５】
ＣＰＵ３１は、ＲＡＭ３３に記憶した各種パケット、扉開閉情報を全て読み出す（Ｓ１１）。ＣＰＵ３１は扉開閉情報を参照し、保護カバーの扉が閉じているか否か判断する（Ｓ１２）。扉が開いている場合（Ｓ１２：ＮＯ）、工作機械の動作中に扉が開いているので、ＣＰＵ３１は、サーボシステム１の不図示の操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。ＳＴＯ回路１１は、電力制御素子１２からサーボモータ５へ流す制御電流を遮断する。工作機械の動作は緊急停止するので、安全性を確保できる。例えば工作機械の構成上、人間の作業エリアから十分離れているような箇所は停止の必要がないので、ＣＰＵ３１は停止が必要でない箇所のモータ機構部Ｕｎの動作を継続できる。ＣＰＵ３１は本処理を終了する。なお、ＣＰＵ３１は、工作機械のセッティング状態の場合は扉が開いているときに低速度で動かす制御をしてもよい。
【００３６】
扉が閉じている場合（Ｓ１２：ＹＥＳ）、ＣＰＵ３１は、速度指令のパケット、依頼情報のパケット、位置情報のパケットの夫々のＣＲＣ符号は正常か否か判断する（Ｓ１３）。例えば、図４の（２）の速度指令のパケットでは、固有ＩＤ情報、タイマ情報、及び速度指令のデータに対して、一つのＣＲＣ（１ａ）が付与してあるので、仮にＣＲＣ（１ａ）が検出できない、若しくはＣＲＣ（１ａ）と異なるＣＲＣ符号を検出した場合、データ若しくはＣＲＣ（１ａ）が書き換えられているので、ＣＲＣ異常である（Ｓ１３：ＮＯ）。この場合、通信途中でデータが書き換えられている可能性があるので、ＣＰＵ３１は、操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。工作機械の動作は緊急停止するので、安全性を確保できる。ＣＰＵ３１は本処理を終了する。
【００３７】
各種パケットのＣＲＣ符号が何れも正常である場合（Ｓ１３：ＹＥＳ）、ＣＰＵ３１は、速度指令のパケット、依頼情報のパケット、位置情報のパケットの夫々の固有ＩＤ情報が互いに一致しているか否か判断する（Ｓ１４）。例えば、三つのパケットのうち何れかの固有ＩＤ情報が一致していない場合（Ｓ１４：ＮＯ）、何れかのパケットは別のモータ機構部Ｕｎのサーボ制御器１０から取得したものである可能性があり、通信相手が間違っている可能性がある。それ故、ＣＰＵ３１は、操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。工作機械の動作は緊急停止するので、安全性を確保できる。ＣＰＵ３１は本処理を終了する。
【００３８】
固有ＩＤ情報が全て一致している場合（Ｓ１４：ＹＥＳ）、速度指令のパケット、依頼情報のパケット、位置情報のパケットは、夫々同一のサーボアンプ７、モータ５、エンコーダ６の系統（同一のモータ機構部Ｕｎ）から渡されていることがわかる。それ故、ＣＰＵ３１は、速度指令のパケットと位置情報のパケットの夫々のタイマ情報が一致しているか否か判断する（Ｓ１５）。なお、タイマ情報の一致は完全な一致ではなく、タイマ情報の時間差が制御周期の許容時間内であれば一致とみなせばよい。タイマ情報が一致していない場合（Ｓ１５：ＮＯ）、速度指令のパケットの通信時刻と、位置情報のパケットの通信時刻が一致していないので、通信時刻異常である。それ故、ＣＰＵ３１は、操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。工作機械の動作は緊急停止するので、安全性を確保できる。ＣＰＵ３１は本処理を終了する。
【００３９】
タイマ情報が一致している場合（Ｓ１５：ＹＥＳ）、ＣＰＵ３１は指令速度と現在速度を比較し、一致しているか否か判断する（Ｓ１６）。指令速度は、速度指令が指定する速度指令値である。現在速度は、エンコーダ６からの単位時間あたりの位置情報を変換したものである。指令速度と現在速度の差異が所定範囲を超えている場合、互いに不一致であるので（Ｓ１６：ＮＯ）、サーボ制御器１０の内部処理の異常である。それ故、ＣＰＵ３１は、操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。工作機械の動作は緊急停止するので、安全性を確保できる。ＣＰＵ３１は本処理を終了する。
【００４０】
指令速度と現在速度の差異が所定範囲内である場合、互いに一致しているので（Ｓ１６：ＹＥＳ）、ＣＰＵ３１は指令速度と現在速度の何れもが上限値以下か否か判断する（Ｓ１７）。指令速度と現在速度の何れか、若しくは両方が上限値を超えている場合（Ｓ１７：ＮＯ）、速度超過であるので異常である。それ故、ＣＰＵ３１は、操作盤に設けた表示部にエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を、停止が必要と判断した任意のモータ機構部Ｕ１〜ＵｎのＳＴＯ回路１１に出力する（Ｓ２０）。工作機械の動作は緊急停止するので、安全性を確保できる。ＣＰＵ３１は本処理を終了する。
【００４１】
指令速度と現在速度の何れもが上限値以下である場合（Ｓ１７：ＹＥＳ）、ＣＰＵ３１は動作許可のＳＴＯ指令をＳＴＯ回路１１に出力する。それ故、工作機械は動作を継続できる。このように、サーボシステム１は、固有ＩＤ情報の検証、タイマ情報の検証、ＣＲＣ符号の検証等を行うことで、通信相手の異常、通信時刻の異常、通信における異常を検出できるので、モータ機構部Ｕ１〜Ｕｎの夫々の異常を個別に判断できる。それ故、サーボシステム１は、一つの安全制御装置３で、複数のモータ５の速度を監視できる。サーボシステム１は、モータ機構部Ｕ１〜Ｕｎの個数分の安全制御装置を用意する必要が無いので、システムにかかる費用を削減できる。
【００４２】
以上説明にて、図１に示すサーボシステム１は本発明の速度監視装置の一例である。数値制御装置２は本発明の制御部の一例である。サーボアンプ７（サーボ制御器１０）は本発明のサーボ制御部の一例である。安全制御装置３は本発明の速度監視部の一例である。図２に示す矢印Ｋ１の処理を実行するサーボ制御器１０は本発明の依頼情報送信手段の一例である。矢印Ｋ２の処理を実行するサーボ制御器１０は本発明の位置情報受信手段の一例である。矢印Ｋ３の処理を実行するサーボ制御器１０は本発明の速度指令値送信手段の一例である。Ｋ４の固有ＩＤ情報を付与する処理を実行するサーボ制御器１０の位置制御部４１は本発明の識別情報付与手段の一例である。Ｋ５のタイマ情報を付与する処理を実行するサーボ制御器１０の位置制御部４１は本発明のタイマ情報付与手段の一例である。Ｋ６のＣＲＣ符号を付与する処理を実行するサーボ制御器１０の位置制御部４１は本発明のエラー検出符号付与手段の一例である。図７のＳ１４の処理を実行するＣＰＵ３１は本発明の識別情報一致判断手段の一例である。Ｓ１５の処理を実行するＣＰＵ３１は本発明のタイマ情報一致判断手段の一例である。Ｓ１６の処理を実行するＣＰＵ３１は本発明の速度判断手段の一例である。Ｓ１７の処理を実行するＣＰＵ３１は本発明の上限値判断手段の一例である。Ｓ２０の処理を実行するＣＰＵ３１は本発明の停止信号出力手段の一例である。ＣＲＣ符号は、本発明のエラー検出符号の一例である。安全制御装置３のＣＰＵ３１がＳＴＯ回路１１に出力するＳＴＯ指令は本発明の停止信号の一例である。
【００４３】
サーボ制御器１０が実行する図２に示す矢印Ｋ１の処理は本発明の依頼情報送信工程の一例である。サーボ制御器１０が実行する矢印Ｋ２の処理は本発明の位置情報受信工程の一例である。サーボ制御器１０が実行する矢印Ｋ３の処理は本発明の速度指令値送信工程の一例である。サーボ制御器１０の位置制御部４１が実行するＫ４の固有ＩＤ情報を付与する処理は本発明の識別情報付与工程の一例である。ＣＰＵ３１が実行する図７のＳ１４の処理は本発明の識別情報一致判断工程の一例である。ＣＰＵ３１が実行するＳ２０の処理は本発明の停止信号出力工程の一例である。
【００４４】
以上説明したように、本実施形態のサーボシステム１は、数値制御装置２、複数のモータ機構部Ｕ１〜Ｕｎ、安全制御装置３を備える。モータ機構部Ｕ１は、モータ５、エンコーダ６、サーボアンプ７を備える。数値制御装置２は、モータ５を駆動制御する為の制御指令を出力する。エンコーダ６は、モータ５に対応して設け、モータ５の位置情報をフィードバックして出力する。サーボアンプ７のサーボ制御器１０は、モータ５に対応して設け、数値制御装置２とエンコーダ６とに通信可能に接続する。サーボ制御器１０は、数値制御装置２からの制御指令（移動指令）と、エンコーダ６からの位置情報を用いてモータ５の速度指令を生成し、モータ５の動作が速度指令に追従するようにモータ５を駆動する。安全制御装置３は、複数のモータ機構部Ｕ〜Ｕｎの夫々のサーボ制御器１０と通信可能に接続する。安全制御装置３は、サーボ制御器１０が生成した速度指令を取得すると共に、サーボ制御器１０とエンコーダ６の通信を傍受してモータ５の位置情報を取得する。位置情報は、単位時間当たりのエンコーダ６からの位置情報であるので現在の速度となる。それ故、安全制御装置３は、取得した速度指令と現在の速度を比較して監視する。  
【００４５】
サーボ制御器１０は、エンコーダ６に対し、モータ５の位置情報を要求する依頼情報のパケットを送信する。サーボ制御器１０は、エンコーダ６が依頼情報に応答して返信した位置情報のパケットを受信する。サーボ制御器１０は、数値制御装置２からの制御指令と位置情報に基づいて生成した速度指令を、安全制御装置３に送信する。サーボ制御器１０は、エンコーダ６に送信する依頼情報のパケットと、安全制御装置３に送信する速度指令のパケットに、サーボアンプ７を識別可能な固有ＩＤ情報を付与する。
【００４６】
エンコーダ６は、サーボ制御器１０が送信した依頼情報のパケットを受信した場合、受信した依頼情報への応答である位置情報のパケットに、依頼情報に付与した固有ＩＤ情報を付与した位置情報のパケットを、サーボ制御器１０に返信する。
【００４７】
安全制御装置３は、サーボ制御器１０から受信した速度指令のパケットに付与した固有ＩＤ情報と、サーボ制御器１０とエンコーダ６の通信を傍受して取得した位置情報のパケットに付与した固有ＩＤ情報とが一致しているか判断する。不一致と判断した場合、安全制御装置３は、モータ５の駆動を停止するＳＴＯ指令を、ＳＴＯ回路１１へ出力する。それ故、サーボシステム１は、工作機械を緊急停止できるので、誤動作を防止できる。サーボシステム１は、固有ＩＤ情報を検証することで、通信相手の異常を検出できるので、一つの安全制御装置３で、複数のモータ５の速度を監視できる。それ故、サーボシステム１は、モータ機構部Ｕ１〜Ｕｎの個数分の安全制御装置を用意する必要が無いので、システムにかかる費用を削減できる。
【００４８】
上記実施形態のサーボ制御器１０は、通信時刻を特定可能なタイマ情報を、固有ＩＤ情報が付与された依頼情報のパケットと速度指令のパケットに夫々付与する。エンコーダ６は、サーボ制御器１０が送信した依頼情報を受信し、受信した依頼情報への応答である位置情報のパケットに、依頼情報に付与した固有ＩＤ情報とタイマ情報を付与した位置情報のパケットを、サーボ制御器１０に返信する。安全制御装置３は、サーボ制御器１０から受信した速度指令のパケットに付与したタイマ情報と、サーボ制御器１０とエンコーダ６との通信を傍受して取得した位置情報のパケットに付与したタイマ情報とが一致しているか判断する。不一致と判断した場合に、安全制御装置３は、動作を停止するＳＴＯ指令を、ＳＴＯ回路１１へ出力する。それ故、サーボシステム１は、速度指令のパケットと位置情報のパケットの時間的な不一致を検出できる。不一致の場合、ＳＴＯ指令を出力するので、サーボシステム１は、通信異常に伴う誤動作をより確実に防止できる。
【００４９】
上記実施形態のサーボシステム１は、数値制御装置２、サーボ制御器１０、安全制御装置３において、互いにパケットを通信する毎に、ＣＲＣ符号をパケットに付与する通信系を備える。サーボ制御器１０は、固有ＩＤ情報とタイマ情報が付与した依頼情報のパケットと速度指令のパケットに、ＣＲＣ信号を付与する。エンコーダ６は、サーボ制御器１０が送信した依頼情報のパケットを受信した場合に、受信した依頼情報への応答である位置情報に、依頼情報に付与した固有ＩＤ情報、タイマ情報、及びＣＲＣ符号を付与した位置情報のパケットを、サーボ制御器１０に返信する。安全制御装置３は、サーボ制御器１０から受信した速度指令のパケットに付与したＣＲＣ符号と、サーボ制御器１０とエンコーダ６との通信を傍受して取得した位置情報のパケットに付与したＣＲＣ符号とが一致しているか判断する。不一致と判断した場合、安全制御装置３は、動作を停止するＳＴＯ指令を、ＳＴＯ回路１１へ出力する。それ故、サーボシステム１は、通信経路上での異常を検出できるので、誤動作を防止できる。
【００５０】
本発明は上記実施形態に限らず各種変形が可能なことはいうまでもない。本実施形態のサーボシステム１は、工作機械を駆動する為のシステムであるが、複数のサーボモータで駆動する機械装置であれば、工作機械以外の機械装置であってもよい。
【００５１】
本実施形態のサーボ制御器１０は、数値制御装置２との通信路を利用して、速度指令のパケットを安全制御装置３に送信しているが、安全制御装置３に直接送信するようにしてもよい。例えば、図８に示すサーボシステム１００の各サーボ制御器１０は、安全制御装置３と電気的に直接接続しているので（図８中太い点線参照）、安全制御装置３と直接通信できるようになっている。複数のモータ機構部Ｕ１〜Ｕｎの夫々のサーボ制御器１０が安全制御装置３と直接通信できるので、パケットの送受信を速やかに行うことができる。また、速度指令のパケットが数値制御装置２の通信路を経由しないので、例えば数値制御装置２の通信を制御するアプリ層のバグ等によって、パケットのデータが改変される可能性も低減できる。
【００５２】
本実施形態ではサーボ制御器１０の内の速度指令値とエンコーダ６からの位置情報を速度に変換したものを比較しているが、速度とは単位時間当たりの位置変化量であり、エンコーダ６から位置情報を取り出してくる通信周期とサーボ制御器１０の制御周期が特定しているのであれば、サーボ制御器１０が数値制御装置２から受け取っている移動指令を安全制御装置３に出力したものとエンコーダ６からの位置情報を比較してもよい。
【００５３】
上記実施形態のチェック処理（図７参照）のドアの開閉を検出する処理（Ｓ１２）は省略してもよい。また、ＣＲＣ符号（Ｓ１３）、固有ＩＤ情報（Ｓ１４）、タイマ情報（Ｓ１５）の検証する順番はこれ以外でもよい。また、ＣＲＣ符号の検証、タイマ情報の検証は省略してもよい。
【００５４】
上記実施形態のチェック処理のＳ１９のエラー表示（Ｓ１９）は、例えば各検証処理（Ｓ１２〜Ｓ１７）において、エラーを検出した項目が分かるように表示してもよい。表示に併せてアラーム音を出力するようにしてもよい。また、エラー表示の処理を省略してもよい。
【００５５】
上記実施形態のチェック処理（図７参照）では、ＣＰＵ３１は、Ｓ１４の検証処理にて、一回でも固有ＩＤ情報が不一致と判断した場合（Ｓ１４：ＮＯ）、動作不可のＳＴＯ指令を出力し（Ｓ２０）、停止が必要と判断した任意のモータ５を停止するが、例えば一定時間以上続けて固有ＩＤ情報が不一致であると判断した場合に、動作不可のＳＴＯ指令を出力してもよい。
【００５６】
図９に示すチェック処理の第一変形例は、図７に示すチェック処理に対して、Ｓ１４：ＮＯの判断処理後にＳ３０の判断処理を追加する。例えば、ＣＰＵ３１は、速度指令のパケット、依頼情報のパケット、位置情報のパケットの夫々の固有ＩＤ情報が不一致と判断した場合（Ｓ１４：ＮＯ）、一定時間以上不一致であるか否か判断する（Ｓ３０）。一定時間とは、例えば固有ＩＤ情報の不一致を確定する為に必要な時間にすればよい。固有ＩＤ情報が不一致である時間は、例えば不図示のタイマを用いて計測すればよい。固有ＩＤ情報が不一致である時間が一定時間に満たない場合（Ｓ３０：ＮＯ）、固有ＩＤ情報の誤検出の可能性等があるので、動作停止のＳＴＯ指令を出力することなく、ＣＰＵ３１はＳ１５の処理に進む。
【００５７】
固有ＩＤ情報が一定時間以上不一致であった場合（Ｓ３０：ＹＥＳ）、固有ＩＤ情報の誤検出の可能性は低く、通信相手が間違っている可能性が高い。そこで、ＣＰＵ３１はエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を出力する（Ｓ２０）。それ故、ＣＰＵ３１は通信相手が確実に間違っている場合のみ、モータ５を停止できるので、通信相手の識別精度を向上できる。図９のＳ３０の処理を実行するＣＰＵ３１は本発明の時間判断手段の一例である。なお、第一変形例は、その他の検証処理（Ｓ１２、Ｓ１３、Ｓ１５〜Ｓ１７）においてもＳ３０の処理と同様に、一定時間以上連続で異常を検出した場合に、動作不可のＳＴＯ指令を出力してもよい。
【００５８】
上記実施形態のチェック処理（図７参照）では、ＣＰＵ３１は、Ｓ１４の検証処理にて、一回でも不一致を検出した場合、動作不可のＳＴＯ指令を出力し（Ｓ２０）、停止が必要と判断した任意のモータ５を停止するが、例えば、規定回数以上連続で異常を検出した場合に、動作不可のＳＴＯ指令を出力するようにしてもよい。
【００５９】
図１０に示すチェック処理の第二変形例は、図７に示すチェック処理に対して、Ｓ１４：ＮＯの判断処理後にＳ４０の処理を追加する。例えば、ＣＰＵ３１は、速度指令のパケット、依頼情報のパケット、位置情報のパケットの夫々の固有ＩＤ情報が不一致と判断した場合（Ｓ１４：ＮＯ）、規定回数以上連続で不一致であるか否か判断する（Ｓ４０）。規定回数とは、例えば固有ＩＤ情報の不一致を確定する為に必要な回数にすればよい。固有ＩＤ情報の連続した不一致回数は、例えば不図示のカウンタを用いて計数すればよい。固有ＩＤ情報が連続で不一致と判断した回数が規定回数に満たない場合（Ｓ４０：ＮＯ）、固有ＩＤ情報の誤検出の可能性もあるので、動作停止のＳＴＯ指令を出力することなく、ＣＰＵ３１はＳ１５の処理に進む。
【００６０】
連続で不一致と判断した回数が規定回数以上の場合（Ｓ４０：ＹＥＳ）、固有ＩＤ情報の誤検出の可能性は低く、通信相手が間違っている可能性が高い。そこで、ＣＰＵ３１はエラー表示を行い（Ｓ１９）、動作停止のＳＴＯ指令を出力する（Ｓ２０）。それ故、ＣＰＵ３１は第一変形例と同様に、通信相手が確実に間違っている場合のみ、モータ５を停止できるので、通信相手の識別精度を向上できる。図１０のＳ４０の処理を実行するＣＰＵ３１は本発明の回数判断手段の一例である。なお、第二変形例は、その他の検証処理（Ｓ１２、Ｓ１３、Ｓ１５〜Ｓ１７）においてもＳ４０の処理と同様に、規定回数以上連続で異常を検出した場合に、動作不可のＳＴＯ指令を出力してもよい。
【００６１】
上記実施形態のチェック処理では、ＣＰＵ３１は、各検証処理（Ｓ１２〜Ｓ１７）において、異常を検出した場合は、動作不可のＳＴＯ指令を出力して、停止が必要と判断した任意のモータ５を停止するが、全てのモータ５を停止してもよい。
【符号の説明】
【００６２】
１      サーボシステム
２      数値制御装置
３      安全制御装置
５      モータ
６      エンコーダ
７      サーボアンプ
１０      サーボ制御器
３１      ＣＰＵ
４１      位置制御部
１００      サーボシステム
Ｕ１〜Ｕｎ  モータ機構部
【図１】
0006607098.tif 000002
【図２】
0006607098.tif 000003
【図３】
0006607098.tif 000004
【図４】
0006607098.tif 000005
【図５】
0006607098.tif 000006
【図６】
0006607098.tif 000007
【図７】
0006607098.tif 000008
【図８】
0006607098.tif 000009
【図９】
0006607098.tif 000010
【図１０】
0006607098.tif 000011