(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024004945
(43)【公開日】2024-01-17
(54)【発明の名称】設計装置および設計方法
(51)【国際特許分類】
G05B 19/05 20060101AFI20240110BHJP
【FI】
G05B19/05 A
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022104860
(22)【出願日】2022-06-29
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100155712
【弁理士】
【氏名又は名称】村上 尚
(72)【発明者】
【氏名】奥野 誠
(72)【発明者】
【氏名】香川 徹雄
(72)【発明者】
【氏名】牧平 真太朗
(72)【発明者】
【氏名】一村 良
【テーマコード(参考)】
5H220
【Fターム(参考)】
5H220AA06
5H220BB07
5H220CC07
5H220JJ17
(57)【要約】
【課題】参照設定情報に基づき、設計情報ファイルを編集することができ、容易に整合性を取ることを可能とする。
【解決手段】入出力を行うチャネル(52)を有する制御デバイス(5)と、該チャネルで入出力される情報を一時記憶するメモリ領域(42)を有し、制御デバイスを制御する上位デバイス(4)と、の動作設定設計を行う設計装置(1)であって、動作設定設計の設計情報ファイル(25)を作成する設計情報作成部(12)と、外部処理部(3)で設計された、制御デバイス情報(22)、接続構成情報(23)、およびメモリ定義情報(24)を含んだ参照設定情報(21)を取得する情報取得部(11)と、を備え、参照設定情報に基づき、設計情報ファイルを編集する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入力チャネルおよび/または出力チャネルとしてのチャネルを有する制御デバイスと、該チャネルで入出力される情報を一時記憶するメモリ領域を有し、前記制御デバイスを制御する上位デバイスと、の動作設定設計を行う設計装置であって、
前記動作設定設計の設計情報ファイルを作成する設計情報作成部と、
前記制御デバイスの形式に関する制御デバイス情報、前記制御デバイスの前記上位デバイスに対する接続位置を示す接続構成情報、および、前記チャネルに対応する前記メモリ領域に設定されているメモリ定義情報を含む参照設定情報であって、前記設計情報作成部以外の外部処理部によって作成された参照設定情報を取得する情報取得部と、を備え、
前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報、前記接続構成情報、および、前記メモリ定義情報に基づいて、前記設計情報ファイルに前記上位デバイスおよび前記制御デバイスに関する情報を追加する、設計装置。
【請求項2】
前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記メモリ定義情報に対応する前記チャネルが、既存の前記設計情報ファイルに含まれる前記メモリ定義情報に対応する前記チャネルとして存在し、かつ、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報と、既存の前記設計情報ファイルに含まれる前記制御デバイス情報とが一致し、かつ、前記参照設定情報に含まれる前記接続構成情報と、前記設計情報ファイルに含まれる前記接続構成情報と、が一致する場合に、前記参照設定情報に含まれる前記メモリ定義情報に基づいて、該設計情報ファイルに含まれる前記メモリ定義情報を更新する、請求項1に記載の設計装置。
【請求項3】
前記メモリ定義情報は、前記チャネルに対応する前記メモリ領域に記録されるデータを格納する変数名、および/または、前記チャネルに対応する前記メモリ領域に記録されるデータを説明するコメント情報である、請求項1に記載の設計装置。
【請求項4】
前記外部処理部は、前記制御デバイスおよび前記上位デバイスを含むデバイスネットワークを電気設計する機能を有する、請求項1に記載の設計装置。
【請求項5】
前記情報取得部によって取得された前記参照設定情報に含まれる前記メモリ定義情報と、既存の前記設計情報ファイルに含まれる前記メモリ定義情報と、の変化点を一覧で表示する、請求項1に記載の設計装置。
【請求項6】
前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報および前記接続構成情報に基づき、既存の前記設計情報ファイルに含まれる前記制御デバイス情報および前記接続構成情報を変更する、請求項1に記載の設計装置。
【請求項7】
入力チャネルおよび/または出力チャネルとしてのチャネルを有する制御デバイスと、該チャネルで入出力される情報を一時記憶するメモリ領域を有し、前記制御デバイスを制御する上位デバイスと、の動作設定設計を行う設計装置であって、
前記動作設定設計の設計情報ファイルを作成する設計情報作成ステップと、
前記制御デバイスの形式に関する制御デバイス情報、前記制御デバイスの前記上位デバイスに対する接続位置を示す接続構成情報、および、前記チャネルに対応する前記メモリ領域に設定されているメモリ定義情報を含む参照設定情報であって、前記設計情報作成ステップ以外の外部処理ステップによって作成された参照設定情報を取得する情報取得ステップと、を含み、
前記設計情報作成ステップは、前記情報取得ステップによって取得された前記参照設定情報に含まれる制御デバイス情報、前記接続構成情報、および、前記メモリ定義情報に基づいて、前記設計情報ファイルに前記上位デバイスおよび前記制御デバイスに関する情報を追加する、設計方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は制御デバイスの動作設定設計を行う設計装置に関する。
【背景技術】
【0002】
工場などの生産ラインで稼働する機器を制御するFA(Factory Automation)用の機器を含むFAシステムにおいて、制御デバイスの動作設定設計を行う設計装置がある。すなわち、設計装置は、動作設定設計として、制御デバイスに対して各種パラメータ設定を行ったり、動作プログラムを設定したり、当該制御プログラムで用いる変数を設定したりする。
【0003】
特許文献1には、各制御機器に一意に割り当てられている識別子に基づき、サーバに記憶されている当該制御機器の固有情報定義ファイルを取得し、パラメータを設定する制御機器が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
制御デバイスには、IO機器を接続できるチャネルが複数設けられていることが多い。そのため、制御デバイスの動作設定設計では、各制御デバイスのチャネルに接続するIO機器を決定し、そのチャネルの変数の名称およびコメントを設計する必要がある。
【0006】
この設計では、FAシステムを電気設計するソフトウェアによって生成された情報に基づき、制御デバイスの動作設定設計で同一の内容を記載する必要がある。そのため、両者の情報の照合をとるなどの無駄な工数を必要とし、非効率である。また、制御デバイスの動作設定設計だけではなく、メモリ定義情報に関しても、ユーザによって再入力する必要があり、整合性をとることに無駄が発生している。
【0007】
本発明の一態様は、制御デバイスの動作設定設計をより容易に、かつ正確に実行することを可能とする設計装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するために、本発明の一態様に係る設計装置は、入力チャネルおよび/または出力チャネルとしてのチャネルを有する制御デバイスと、該チャネルで入出力される情報を一時記憶するメモリ領域を有し、前記制御デバイスを制御する上位デバイスと、の動作設定設計を行う設計装置であって、前記動作設定設計の設計情報ファイルを作成する設計情報作成部と、前記制御デバイスの形式に関する制御デバイス情報、前記制御デバイスの前記上位デバイスに対する接続位置を示す接続構成情報、および、前記チャネルに対応する前記メモリ領域に設定されているメモリ定義情報を含む参照設定情報であって、前記設計情報作成部以外の外部処理部によって作成された参照設定情報を取得する情報取得部と、を備え、前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報、前記接続構成情報、および、前記メモリ定義情報に基づいて、前記設計情報ファイルに前記上位デバイスおよび前記制御デバイスに関する情報を追加する。
【0009】
上記の課題を解決するために、本発明の別の態様に係る設計方法は、入力チャネルおよび/または出力チャネルとしてのチャネルを有する制御デバイスと、該チャネルで入出力される情報を一時記憶するメモリ領域を有し、前記制御デバイスを制御する上位デバイスと、の動作設定設計を行う設計装置であって、前記動作設定設計の設計情報ファイルを作成する設計情報作成ステップと、前記制御デバイスの形式に関する制御デバイス情報、前記制御デバイスの前記上位デバイスに対する接続位置を示す接続構成情報、および、前記チャネルに対応する前記メモリ領域に設定されているメモリ定義情報を含む参照設定情報であって、前記設計情報作成ステップ以外の外部処理ステップによって作成された参照設定情報を取得する情報取得ステップと、を含み、前記設計情報作成ステップは、前記情報取得ステップによって取得された前記参照設定情報に含まれる制御デバイス情報、前記接続構成情報、および、前記メモリ定義情報に基づいて、前記設計情報ファイルに前記上位デバイスおよび前記制御デバイスに関する情報を追加する。
【0010】
上記の構成によれば、外部処理部によって制御デバイスの設計が行われる場合に、該外部処理部によって設計された参照設定情報を、前記設計情報ファイルにインポートすることができる。よって、外部処理部側で行われた設計の内容を容易に設計装置側の設計情報ファイルに反映することが可能となる。ここで、インポートが行われる際には、制御デバイス情報、上位デバイスに対する接続位置を示す接続構成情報、および、メモリ定義情報が参照されるので、既存の設計情報ファイルに含まれている情報との混同などを防止して、的確にインポートを行うことができる。これにより、外部処理部側の設計と設計装置側の設計とを確実に一致させることができる。
【0011】
前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記メモリ定義情報に対応する前記チャネルが、既存の前記設計情報ファイルに含まれる前記メモリ定義情報に対応する前記チャネルとして存在し、かつ、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報と、既存の前記設計情報ファイルに含まれる前記制御デバイス情報とが一致し、かつ、前記参照設定情報に含まれる前記接続構成情報と、前記設計情報ファイルに含まれる前記接続構成情報と、が一致する場合に、前記参照設定情報に含まれる前記メモリ定義情報に基づいて、該設計情報ファイルに含まれる前記メモリ定義情報を更新してもよい。
【0012】
上記の構成によれば、参照設定情報と、既存の設計情報ファイルと、の間で上位デバイスおよび制御デバイスの構成が変更していないかを確認したうえで、メモリ定義情報をインポートすることができる。そのため、上位デバイスおよび制御デバイスの構成変更に伴った、誤った設定変更を防止することができる。また、これによって、外部処理部側の設計を設計装置側の設計と、を確実に一致させることができる。
【0013】
前記メモリ定義情報は、前記チャネルに対応する前記メモリ領域に記録されるデータを格納する変数名、および/または、前記チャネルに対応する前記メモリ領域に記録されるデータを説明するコメント情報であってもよい。
【0014】
上記の構成によれば、メモリ定義情報として、変数名および/またはコメント情報を参照設定情報からインポートすることができる。そのため、外部処理部側で行われた設計変更の内容を間違いなく設計装置側のメモリ定義情報に反映することができ、ヒューマンエラーを防ぐことができる。
【0015】
前記外部処理部は、前記制御デバイスおよび前記上位デバイスを含むデバイスネットワークを電気設計する機能を有してもよい。
【0016】
上記の構成によれば、外部処理部でデバイスネットワークの電気設計が行われた参照設定情報に基づいて、設計装置側の設計情報ファイルを編集することができる。よって、外部処理部での電気設計と、設計装置での制御デバイスの動作設定設計との整合性を容易に確保することができる。
【0017】
前記情報取得部によって取得された前記参照設定情報に含まれる前記メモリ定義情報と、既存の前記設計情報ファイルに含まれる前記メモリ定義情報と、の変化点を一覧で表示してもよい。
【0018】
上記の構成によれば、変化点を一覧で表示することができ、変化点に基づき変更してよいかを個別に判断した上で変更することができる。
【0019】
前記設計情報作成部は、前記情報取得部によって取得された前記参照設定情報に含まれる前記制御デバイス情報および前記接続構成情報に基づき、既存の前記設計情報ファイルに含まれる前記制御デバイス情報および前記接続構成情報を変更してもよい。
【0020】
上記の構成によれば、外部処理部でデバイスネットワークの設計が行われた情報に基づいて、設計装置側の制御デバイス情報および接続構成情報メモリ定義情報を更新することができる。よって、外部処理部での設計と、設計装置での設計との整合性を容易に確保することができる。
【0021】
本発明の各態様に係る設計装置は、コンピュータによって実現してもよく、この場合には、コンピュータを前記設計装置が備える各部(ソフトウェア要素)として動作させることにより前記設計装置をコンピュータにて実現させる設計装置の設計プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【0022】
本発明の一態様によれば、参照設定情報に基づき、設計情報ファイルを編集することができる。
【図面の簡単な説明】
【0023】
【
図1】FA設計システムの要部の構成を示すブロック図である。
【
図2】FAシステムの概要の構成を示す回路図の一例である。
【
図5】制御デバイスのチャネルを編集する画面の一例である。
【
図9】実施形態1に係るFA設計システムの動作例を示すフローチャートである。
【
図10】実施形態1に係る動作設定のインポートの動作例を示すフローチャートである。
【
図11】実施形態1に係るメモリ定義情報のインポートの動作例を示すフローチャートである。
【
図12】実施形態1に係るメモリ定義情報のインポートを行う対象である、参照設定情報21を表形式で示した一例である。
【
図13】設計情報作成部によって、ユーザ入力を受け付ける画面の一例である。
【
図14】メモリ定義情報のインポートを実行した後の、設計情報ファイルのメモリ定義情報を示す図である。
【発明を実施するための形態】
【0024】
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
【0025】
§1 適用例
図1は、FA設計システム100の要部の構成を示すブロック図である。FA設計システム100は、設計装置1と、外部処理部3と、上位デバイス4と、制御デバイス5と、制御対象デバイス6と、を備える。また、上位デバイス4と、制御デバイス5と、制御対象デバイス6と、によってFAシステム(制御システム)200は構成されている。
【0026】
従来、ユーザは、FAシステム200を次の手順で設計していた。まず、電気CAD(Computer Aided Design)を搭載したパソコンなどの外部処理部3によって、FAシステム200に関する電気回路の設計を行う。この際、FAシステム200を制御する制御デバイスを決定していく。次に、ユーザは、IDE(Integrated Development Environment)を搭載したパソコンなどの設計装置1によって、上位デバイス4が制御デバイス5および制御対象デバイス6を制御するソフトウェアを製作する。
【0027】
この際、外部処理部3で設計した情報を流用して設計装置1は設計を進めることなく、ユーザが手入力でもって、電気回路の設計をソフトウェアの設計に反映していく作業を行っていた。そのため、無駄な工数を必要とし、非効率である。また、タイプミスまたは設定ミスなどのヒューマンエラーが起こる可能性もある。
【0028】
本実施形態では、まず、外部処理部3が、電気回路のCADデータを利用して、AML(Automation Markup Language)ファイルに代表される参照設定情報を作成する。その後、設計装置1は、参照設定情報を読み込み、既存の設計情報ファイルに対する変化点を見つけ出し、当該変化点を反映(編集)する。
【0029】
§2 構成例
(FA設計システム100)
外部処理部3は、外部の設計装置または設計システムである。外部処理部3は、実際に制御するデバイス(上位デバイス4)に接続せずにアウトラインで設計を行う、CADソフトを搭載したパソコン等である。外部処理部3の代表的な例としては、電気設計を行う電気CADなどが挙げられる。
【0030】
設計装置1は、実際に制御するデバイスに接続して設計を行う、設計装置または設計システムである。設計装置1は、特にソフトウェア設計を行うIDEを搭載したパソコン等である。
【0031】
(FAシステム200)
次に、FAシステム200の詳細に関して説明する。
【0032】
上位デバイス4は、設計装置1で設計されたソフトウェアを実行する制御デバイスである。上位デバイス4としては、PLC(Programmable Logic Controller)のCPU(Central Processing Unit)などが挙げられる。
【0033】
上位デバイス4は、制御部41と、メモリ領域42と、動作設定部43と、チャネル44と、を備える。制御部41は、FAシステム200を制御するための制御プログラムを実行する制御部である。また、制御部41は、メモリ領域42の情報に基づき処理を行う。メモリ領域42には、制御部41で実行する制御プログラムが格納されていてもよい。
【0034】
チャネル(Channel)44は、上位デバイス4が外部の機器と入出力または通信するポート(チャネル)である。動作設定部43は、上位デバイス4のデバイス自体の動作の仕方をパラメータで設定する。すなわち、動作設定部43によって、チャネル44の動作を決定したりする。
【0035】
制御デバイス5は、上位デバイス4によって制御されるデバイスである。制御デバイス5としては、入出力ユニット、通信カプラ、またはサーボドライバなどが挙げられる。制御デバイス5は、動作設定部51と、チャネル52と、を備える。
【0036】
チャネル(Channel)52は、制御デバイス5が外部の機器と入出力または通信するポート(チャネル)である。動作設定部51は、制御デバイス5のデバイス自体の動作の仕方をパラメータで設定する。すなわち、動作設定部51によって、チャネル52の動作を決定したりする。
【0037】
ここで、上位デバイス4のメモリ領域42には、制御デバイス5のチャネル52による入出力される情報が一時記憶されている。
【0038】
また、上位デバイス4の動作設定部43は、制御デバイス5の動作設定部51に対して、設定するパラメータを出力し、その情報を受けて動作設定部51はパラメータを設定してもよい。
【0039】
上位デバイス4と制御デバイス5とは、バス通信またはEtherCAT(登録商標)通信等の通信規格に対応しており、データの授受を行っている。
【0040】
制御対象デバイス6は、制御デバイス5によって制御されるデバイスである。制御対象デバイス6としては、センサ、バルブ、またはモータなどが挙げられる。
【0041】
(外部処理部3における設計)
外部処理部3は、FAシステム200を設計する。具体的には、ユーザは、FAシステム200を制御する上位デバイス4、および上位デバイス4が制御する制御デバイス5の回路を、回路CADを用いて設計することになる。つまり、外部処理部3は、上位デバイス4および制御デバイス5を含むデバイスネットワークを電気設計する機能を有する。
【0042】
図2は、FAシステム200の概要の構成を示す回路図の一例である。
図3は、上位デバイス4の詳細回路図の一例である。
図4は、制御デバイス5の詳細回路図の一例である。本実施形態では、
図2から
図4に示した回路図におけるFAシステム200に関する設計に関して説明する。
【0043】
図2に示すように、上位デバイス4はCPUユニット4aであり、当該上位デバイス4に制御デバイス5である第1入出力ユニット5aおよび第2入出力ユニット5bがバス接続されている。また、
図3に示すように、CPUユニット4aには、通信カプラ5cがEtherCATで接続されている。当該通信カプラ5cのポジション1には、第3入出力ユニット5dが、通信カプラ5cのバスに接続されている。
図4に示すように、第1入出力ユニット5aには複数のチャネル52が備わっており、そのうち幾つかには第1センサ6aおよび第2センサ6bが接続されている。なお、第2入出力ユニット5bおよび第3入出力ユニット5dにもセンサなどの制御対象デバイスが接続されていてもよい。
【0044】
図5は、ユーザが、制御デバイス5のチャネル52を編集する画面の一例である。つまり、
図4におけるチャネル52を個別に編集することができる。チャネル52を編集すると、
図5のような項目を設定することができる。具体的には編集内容としては、チャネル52の物理的な接続箇所(コネクタプラグの名称、または端子台名称など)、チャネル番号、物理アドレス、変数名、コメント、およびデータ形式などが挙げられる。本実施形態では、物理アドレスを使用しないため、物理アドレスは空欄となっている。
【0045】
これら情報を各制御デバイス5に対して適切に設定することによって設計が行われる。また、チャネル52だけではなく、制御デバイス5自体の設定変更をも個別に編集することができてもよい。
【0046】
(従来のFA設計システム100による設計)
ユーザは、
図2から
図4に示すような電気回路図を、外部処理部3にて設計する。その後、ユーザは、上位デバイス4であるCPUユニット4aでFAシステム200を動作させるためのソフトウェアを作成する。
【0047】
(設計装置1)
設計装置1は、設計部10と、記憶部20とを備える。記憶部20は、設計装置1の各部のプログラムおよびデータを記憶している。記憶部20には、参照設定情報21と、設計情報ファイル25とが記憶されている。
【0048】
設計装置1は、上位デバイス4および制御デバイス5の動作設定設計を行う。つまり、設計装置1は、動作設定設計として、上位デバイス4のメモリ領域42および動作設定部43の設定、ならびに制御デバイス5の動作設定部51の設定を行う。
【0049】
(参照設定情報21)
参照設定情報21は、外部処理部3において作成された情報であり、例えばAMLファイルである。参照設定情報21は、制御デバイス情報22と、接続構成情報23と、メモリ定義情報24と、を含む。
【0050】
制御デバイス情報22は、各制御デバイス5に固有のパラメータなどを記憶した情報である。例えば、制御デバイス情報22には、制御デバイスの型式・バージョンに関する情報、通信設定、各チャネルの検出設定などの情報が含まれる。また、外部処理部3は、制御デバイス情報22の作成に際し、
図6に示すような各デバイスの定義ファイルを参照しても構わない。
【0051】
図6は、デバイスの定義ファイルを示す一例である。デバイスの定義ファイルは、いわゆるマークアップ言語の形態をとってもよい。
【0052】
デバイスの定義ファイルは、当該デバイスの型式、メーカ、およびバージョンなどの情報に加え、当該デバイスが有するチャネルの情報をも含まれる。チャネルの情報には、チャネル番号、入力なのか出力なのかを設定する入出力形式、およびデジタル(bit)なのかアナログ(byteまたはword)なのかのようなデータ形式、などの情報が含まれる。
【0053】
また、各チャネル52は通信規格に対応していてもよく、その通信規格の種類、および取り得るパラメータの情報が含まれていてもよい。
【0054】
接続構成情報23は、各制御デバイス5の接続形態、すなわち、上位デバイス4に接続された制御デバイス5の接続関係が記憶されている。つまり、接続構成情報23は、上位デバイス4に対する制御デバイス5の接続位置を示す情報である。接続構成情報23は、上位デバイス4を頂点とし、制御デバイス5を節または葉、制御対象デバイス6を葉としたツリー状のデータ構造をとってもよい。
【0055】
図7は、接続構成情報23の概念を示す一例である。
図7に示すように、接続構成情報23は、上位デバイス4であるCPUユニット4aに対して接続されている各デバイスの接続関係を示している。
【0056】
図7に示すように、CPUユニット4aは、自身のノードアドレスを1(IPアドレスを192.168.0.1)と設定している。また、CPUユニット4aが有したバスの第1ポジションに第1入出力ユニット5aが接続されており、第2ポジションに第2入出力ユニット5bが接続されている。また、CPUユニット4aは、EtherCATを用いた通信規格に対応した通信チャネルを有し、当該通信チャネルに通信カプラ5cが接続されている。
【0057】
通信カプラ5cは、自身のノードアドレスを2(IPアドレスを192.168.0.2)と設定しており、ノードアドレスを用いて、CPUユニット4aとの通信を確立する。制御デバイス5である通信カプラ5cも、自身が所有するネットワークを有してもよい。例えば、通信カプラ5cは、バスを経由して通信を行う第3入出力ユニット5dが接続(ここでは通信カプラ5cのポジション1に接続)されていてもよい。
【0058】
また、通信相手の特定は、バスの接続位置(ポジション)、およびノードアドレスによる特定だけではなく、IPアドレスなどによる特定を行ってもよい。
【0059】
メモリ定義情報24は、上位デバイス4におけるメモリ領域42のメモリの割り当て(関連付け)を行うための情報である。つまり、メモリ定義情報24は、チャネル44および52に対応するメモリ領域42に設定されるメモリの定義である。メモリ定義情報には、チャネル44および52に対応するメモリ領域42に記録されるデータを格納する変数名、そのデータ型、およびそのデータを説明するコメント(コメント情報)などが含まれる。
【0060】
図8は、参照設定情報21を示す一例である。
図8に示すように、参照設定情報21は、複数のブロックに分かれて様々な情報が記述されている。参照設定情報21の記述の方法としては、いわゆるマークアップ言語の形態をとってもよい。
【0061】
参照設定情報21には、制御デバイス情報22と、接続構成情報23と、メモリ定義情報24と、を含む。
【0062】
制御デバイス情報22は、デバイスの定義ファイルの情報に基づき、各デバイスのチャネル構成の情報である。すなわち、制御デバイス情報22には、各制御デバイス5がどのようなチャネル52を有しているかが記載されている。
【0063】
参照設定情報21は、各デバイスの接続形態(上位デバイスに対するポジション、またはノードアドレスなど)を記載することによって、接続構成情報23をも含んでいる。
【0064】
メモリ定義情報24は、2つのブロックにわかれて記載されている。1つ目のブロックは、メモリが格納する各変数の変数名称、データ型、およびコメントなどの情報(タグ、Tag)が定義されている。2つ目のブロックは、タグとチャネルとを関連付ける(割り付ける)情報が定義されている。すなわち、まず1つ目のブロックでどのような変数があるのかを定義し、その上で2つ目のブロックでその変数がどの制御デバイスの入出力値なのかを関連付けている。
【0065】
図8では、接続構成情報23は、制御デバイス情報22の一部分に記載されているが、これに制限されない。例えば、接続構成情報23のみをまとめて記載したブロックがあってもよい。
【0066】
(設計部10および設計情報ファイル25)
設計部10は、情報取得部11と、設計情報作成部12と、設計情報書込部13と、を備える。
【0067】
情報取得部11は、参照設定情報21を取得し、設計部10が処理できる形に解析したデータにする機能をもつ。例えば設計装置1のユーザによって、外部処理部3において作成された参照設定情報21のデータファイル(例えばAMLファイル)が指定されることによって、情報取得部11による参照設定情報21の取得が行われるようになっていてもよい。
【0068】
情報取得部11は、解析したデータを設計情報作成部12に出力する。また、情報取得部11は、入力された参照設定情報21が妥当なデータであるか、すなわち齟齬または矛盾がないかを確認し、さらに参照設定情報21と既存の設計情報ファイル25との構成上の相違点がないかを確認する。
【0069】
設計情報作成部12は、入力されたデータを基にして、設計情報ファイル25を作成する。つまり、参照設定情報21に含まれる制御デバイス情報22、接続構成情報23、およびメモリ定義情報24に基づいて、設計情報ファイル25に対して、上位デバイス4および制御デバイス5に関する情報を追加する。
【0070】
設計情報ファイル25は、参照設定情報21と同様に、制御デバイス情報26と、接続構成情報27と、メモリ定義情報28と、を含んだファイルであり、上位デバイス4および制御デバイス5の動作設定設計を定義する。設計情報ファイル25に含まれるこれらの内容は、参照設定情報21と同様であるが、保存されている形式は、マークアップ言語ではなく、バイナリ形式のデータとなっていてもよい。
【0071】
設計情報書込部13は、設計情報ファイル25を参照し、上位デバイス4および制御デバイス5に対し、必要な情報を書き込む。具体的には、設計情報書込部13は、制御デバイス情報26および接続構成情報27に基づき、動作設定部51にデータを書き込み、制御デバイス5の動作を設定する。また、設計情報書込部13は、メモリ定義情報28に基づき、メモリ領域42に対し変数の割り当てを変更する。
【0072】
§3 動作例
(全体的なインポート)
図9は、実施形態1に係るFA設計システム100の動作例を示すフローチャートである。
【0073】
まず、情報取得部11は、参照設定情報21を記憶部20から取得し、当該参照設定情報21が妥当かを確認する(S101)。参照設定情報21が妥当な状態は、次の(a)~(c)の全ての条件を満たす場合である。
【0074】
(a)参照設定情報21に含まれるメモリ定義情報24に対応するチャネル44および52が、既存の設計情報ファイル25に含まれるメモリ定義情報28に対応するチャネル44および52として存在する。
【0075】
(b)参照設定情報21に含まれる制御デバイス情報22と、既存の設計情報ファイル25に含まれる制御デバイス情報26と、が一致する。
【0076】
(c)参照設定情報21に含まれる接続構成情報23と、既存の設計情報ファイル25に含まれる接続構成情報27と、が一致する。
【0077】
参照設定情報21が妥当ではない場合(S101においてNo)、情報取得部11は、ユーザにインポートができないことを通知し、処理を終了する(S102)。
【0078】
参照設定情報21が妥当な場合(S101においてYes)、ユーザは動作設定のインポートを行うかを選択する。設計情報作成部12は、当該ユーザ入力を受けて、動作設定のインポートを行うか否かを判断する(S103)。ここで、動作設定とは、制御デバイス情報22および接続構成情報23をまとめた名称である。
【0079】
動作設定をインポートする場合(S103においてYes)、設計情報作成部12は、参照設定情報21(制御デバイス情報22および接続構成情報23)から動作設定のインポートを行う(S104)。この処理の詳細は後述する。
【0080】
動作設定をインポートしない場合(S103においてNo)、設計情報作成部12は、設計情報ファイル25における既存の動作設定を確認する(S105)。この際、確認する対象は、既存の設計情報ファイル25である。
【0081】
次に、設計情報作成部12は、メモリ定義情報24から、メモリの定義情報(変数名、データ型、コメント等)をインポートする(S106)。この処理の詳細は後述する。
【0082】
(動作設定のインポート)
図10は、実施形態1に係る動作設定のインポートの動作例を示すフローチャートである。
【0083】
設計情報作成部12は、ユーザ入力に基づき、上位デバイス4におけるバス接続された制御デバイス5の動作設定のインポートを行うかを選択する(S201)。バス接続の制御デバイス5の動作設定のインポートを行わない場合(S201においてNo)、S203に処理を進める。
【0084】
バス接続の制御デバイス5の動作設定のインポートを行う場合(S201においてYes)、設計情報作成部12は、バス接続の制御デバイス5のインポートを行う(S202)。具体的には、上位デバイス4に接続されたバスの各ポジションを走査し、制御デバイス5が接続されているポジションに関しては、動作設定のインポートを行う。
【0085】
設計情報作成部12は、ユーザ入力に基づき、EtherCAT接続の制御デバイス5のインポートを行うかを選択する(S203)。EtherCAT接続の制御デバイス5のインポートを行わない場合(S203においてNo)、動作設定のインポート処理を終了する。
【0086】
EtherCAT接続の制御デバイス5のインポートを行う場合(S203においてYes)、各制御デバイス5の各チャネル52の接続関係に基づき、各制御デバイス5を走査してインポートする(S204)。つまり、上位デバイス4をツリーの頂点とした、制御デバイス5のツリーにおいて、頂点から末端(葉)まで順番に、各チャネル52に接続された制御デバイス5を走査してインポートする。この際、通信規格はEtherCAT規格に限定されず、任意の通信規格であってもよい。
【0087】
したがって、S202およびS204によって、設計情報作成部12は、参照設定情報21に含まれる制御デバイス情報22および接続構成情報23に基づき、既存の設計情報ファイル25に含まれる制御デバイス情報26および接続構成情報27を変更することができる。
【0088】
図9に示すように、動作設定のインポートは行っても、行わなくてもよい。これは、制御デバイスが追加されるような変更はまれなためである。また、間違って制御デバイスを追加・削除したなどのミスを過剰に反映しないようにすることができる効果もある。
【0089】
(メモリ定義情報のインポート)
図11は、実施形態1に係るメモリ定義情報のインポートの動作例を示すフローチャートである。
【0090】
設計情報作成部12は、参照設定情報21のメモリ定義情報24を確認する(S301)。次に、設計情報作成部12は、設計情報ファイル25のメモリ定義情報28を確認する(S302)。
【0091】
図12は、実施形態1に係るメモリ定義情報24のインポートを行う対象である、参照設定情報21を表形式で示した一例である。
図12に示すように、メモリ定義情報24には、複数のタグが記憶されている。タグごとに、タグ名、PLCアドレス、チャネル定義、データ型、シンボルアドレス、および機能テキストなどが設定されている。
【0092】
「タグ名」は、タグ自体の名称であり、
図8において、チャネル52とタグを割り付ける際に用いる名称でもある。「PLCアドレス」は、PLCにおける物理アドレスを示すものであり、空欄であってもよい。「チャネル定義」は、当該タグが対応するチャネルの物理配置を示す情報である。「データ型」は、当該タグのデータ型を示す。「シンボルアドレス」は、当該タグを示す別名でもあり、変数名等を設定してもよい。「機能テキスト」は、当該タグの機能を表すものであり、いわゆるコメントであってもよい。
【0093】
設計情報作成部12は、参照設定情報21のメモリ定義情報24と、設計情報ファイル25のメモリ定義情報28と、を比較し、変化点を確認する(S303)。変化点とは、同一の制御デバイス5における同一のチャネル52におけるメモリ定義情報24が変化した箇所である。すなわち、参照設定情報21におけるあるポジションまたはノードアドレスの制御デバイス5と、設計情報ファイル25における当該ポジションまたは当該ノードアドレスの制御デバイス5と、が同一の制御デバイス5であると設計情報作成部12は判断する。
【0094】
その上で、同一の制御デバイス5に対し、参照設定情報21の各チャネル52の情報と、設計情報ファイル25の各チャネル52の情報と、を比較し、変化点を確認(抽出)する。例えば、
図12では、チャネル定義がXAおよびXBのメモリ定義情報が、第1センサ6aおよび第2センサ6bが接続されていることに基づき、外部処理部3において参照設定情報21が変更された状態を示している。具体的には、
図12における1行目と2行目との、シンボルアドレスおよび機能テキストが、参照設定情報21と元の設計情報ファイル25とで異なる内容となっている。
【0095】
設計情報作成部12は、当該変化点を一覧表示し、ユーザ入力を促す(S304)。つまり、設計情報作成部12は、参照設定情報21に含まれるメモリ定義情報24と、既存の設計情報ファイル25に含まれるメモリ定義情報28と、の変化点を一覧で表示する。
【0096】
図13は、設計情報作成部12によって、ユーザ入力を受け付ける画面の一例である。
図13は、上段と下段でインターフェイスが大きく分かれている。また、
図13の上段は、左側と右側で、インターフェイスが大きく分かれている。
【0097】
図13の左上のインターフェイスは、表形式で現在の設計情報ファイル25におけるメモリ定義情報24の変化点に対応した情報である。対して、
図13のインターフェイスは、表形式で参照設定情報21におけるメモリ定義情報28の変化点に対応した情報である。
【0098】
図13の左上の表および右上の表において、「初期値」は、メモリを初期化した際の値である。「割付先」は、ネットワーク上の位置を示すメモリ定義情報である。「保持」は、電源遮断しても記憶される不揮発領域に記憶するか否かのフラグである。「定数」は、固定の値を取る定数か否かのフラグである。「ネットワーク公開」は、上位デバイス4がさらに上位のデバイスに対して、当該メモリを上位デバイス4が組み込まれたネットワークに公開するかを選択するフラグである。
【0099】
また、
図13の左上の表の各行には、チェックボックスが設けられている。これは、当該行に対して、特定の処理を行うか否かを選択するためのチェックボックスである。処理の種類としては、
図13の下段に分類されている。
【0100】
「選択行を右から左へコピー」ボタンは、選択している行に関するメモリ定義情報28を、メモリ定義情報24にコピーする。「差異を全て右から左へコピー」ボタンは、選択の有無に関わらず、メモリ定義情報28をメモリ定義情報24にコピーする。「選択行のコピーをキャンセル」ボタンは、選択している行に関するメモリ定義情報28を、元のメモリ定義情報28に置き換える処理であり、すなわちロールバックさせるボタンである。「コピーを全てキャンセル」ボタンは、選択の有無に関わらず、メモリ定義情報28を、元のメモリ定義情報28に置き換える処理であり、すなわちロールバックさせるボタンである。
【0101】
また、これらボタンを用いた処理によってメモリ定義情報28をコピーしたものは左側の表の値を即時で反映してもよいし、対象の行であることを記憶しておくだけでもよい。対象の行であることを記憶しておく場合は、対象の行のみをハイライトすることにより、識別する。
【0102】
つまり、各メモリ定義情報24を各メモリ定義情報28にコピーするか否かの適用可否を判断している(S305)。メモリ定義情報を適用しない場合(S305においてNo)、メモリ定義情報のインポートを終了する。
【0103】
メモリ定義情報を適用する場合(S305においてYes)、ユーザは「コピー結果を反映」ボタンを押すことによって、設計情報作成部12は、選択した内容でメモリ定義情報のインポートを実行する(S306)。なお、この際に、設計情報書込部13によって、同時に上位デバイス4および制御デバイス5に書き込みをしてもよい。
【0104】
したがって、設計情報作成部12は、参照設定情報21に含まれるメモリ定義情報24から、既存の設計情報ファイル25に含まれるメモリ定義情報28へとメモリ定義情報をインポートすることができる。また、インポートされた設計情報ファイル25に含まれるメモリ定義情報28は、設計情報書込部13によって、上位デバイス4のメモリ領域42に設定される。
【0105】
図14は、メモリ定義情報のインポートを実行した後の、設計情報ファイル25のメモリ定義情報28を示す図である。
図14は、大きく分けて上段と下段にわけて2つの表を有する。上段の表は、各制御デバイスにおけるメモリ定義情報を示した表である。下段の表は、上段の表におけるグローバル変数に関するメモリ定義情報を示した表である。
【0106】
「R/W」は、「R」が読み込み許可を表し、「W」が書き込み許可を表す。「変数種類」は、当該メモリ定義の種類が「グローバル変数」なのか「ローカル変数」なのかを表す。「割付先」は、当該メモリ定義に対応したチャネル44および52の物理配置を示している。
【0107】
また、上段の表ではグローバル変数およびローカル変数が表示されることになり、多数のメモリ定義情報が表示されるため、目的のメモリ定義情報を見つけづらくなる。そのため、下段の表は、「グローバル変数」なのか「(特定のファンクションブロックにおける)ローカル変数」なのかなどをタブで切り替えることによって表示している。ここで、
図14では、「グローバル変数」のみを表示している。
【0108】
図12および
図14から、参照設定情報21を設計情報ファイル25に反映(適用)できたことがわかる。また、
図14のように上下にわけて、メモリ定義情報28を表示することによって、全体的なメモリの状態における、各制御デバイス5のメモリ定義の位置づけがわかるようになっている。特に、
図14の上段は、制御デバイス5ごとに表示されるため、複数の制御デバイス5を有するFAシステム200においても、各メモリを区別して確認することができる。
【0109】
§4 作用・効果
したがって、外部処理部3によって行われた上位デバイス4および制御デバイス5に対する設計変更を、参照設定情報21を介して設計情報ファイル25にインポートすることができる。この際、制御デバイス情報22および26、接続構成情報23および27、および、メモリ定義情報24および28が参照されるので、既存の設計情報ファイルに含まれている情報との混同などを防止して、的確にインポートを行うことができる。これにより、外部処理部3側の設計と設計装置1側の設計とを確実に一致させることができる。
【0110】
また、情報取得部11によって取得された参照設定情報21に含まれる制御デバイス情報22と、既存の設計情報ファイル25に含まれる制御デバイス情報26との一致、ならびに参照設定情報21に含まれる接続構成情報23と、既存の設計情報ファイル25に含まれる接続構成情報27との一致を確認した上で、メモリ定義情報のインポートが行われる。そのため、異なる制御デバイスに関して誤ってインポートしてしまう不具合を防止することができる。
【0111】
さらに、メモリ定義情報28として、変数名および/またはコメント(コメント情報)を参照設定情報21からインポートすることができるため、設計情報ファイル25上でのメモリ定義を再度行う必要がない。また、インポートするために、ユーザが記述(転記)した際に発生するヒューマンエラーを防止することができる。
【0112】
メモリ定義情報24をメモリ定義情報28にインポートするに際し、変化点を一覧で確認したうえで、変化点ごとに適用するか否かを選択し、個別に判断した上でメモリ定義情報28を変更することができる。そのため、変化点に伴うソフトウェアの変更等におけるミスを低減することができる。
【0113】
制御デバイス情報26および接続構成情報27も、インポートによって更新することができるため、制御デバイス5のネットワークのチャネル52の設定を容易にかつ、整合性を確保して設定することができる。
【0114】
〔変形例〕
(外部処理部3)
上記の実施形態では、外部処理部3として、電気設計を行う電気CADを例示したが、これに限定されず、任意のFAシステム200を構成するデバイスの構成がわかる、参照設定情報21を生成(出力)できるものであればよい。例えば、ロボットシミュレータなどであってもよい。
【0115】
また、参照設定情報21に必要な制御デバイス情報22、接続構成情報23、およびメモリ定義情報24のうち一部でも生成することができればよい。そのため、外部処理部3として、機械設計を行う機械CADによって、FAシステム200を構成する制御対象デバイス6に関する上述した情報の一部(例えば、制御デバイス情報22)を生成するものも、本発明の範囲に含まれる。
【0116】
(動作設定のダウンロード)
上記の実施形態におけるS105において、設計情報作成部12は、既存の動作設定を設計情報ファイル25から取得したが、これに制限されない。例えば、上位デバイス4の制御部41、メモリ領域42、および動作設定部43から、既存の動作設定を取得(動作設定のダウンロード)してもよい。
【0117】
(物理アドレス)
図12における「PLCアドレス」欄において、PLC内の物理アドレスを定義してもよい。この場合、ネットワーク構成およびネットワーク上のポジションによらず、メモリ領域42のどの領域を使用するかを指定することができる。そのため、変数を用いないCPUのアーキテクチャでも本実施形態を実行することができる。
【0118】
〔ソフトウェアによる実現例〕
設計装置1(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に設計部10に含まれる各部)としてコンピュータを機能させるためのプログラムにより実現することができる。
【0119】
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
【0120】
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
【0121】
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
【0122】
〔付記事項〕
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0123】
1 設計装置
3 外部処理部
4 上位デバイス
5 制御デバイス
6 制御対象デバイス
10 設計部
11 情報取得部
12 設計情報作成部
13 設計情報書込部
20 記憶部
21 参照設定情報
22、26 制御デバイス情報
23、27 接続構成情報
24、28 メモリ定義情報
25 設計情報ファイル
41 制御部
42 メモリ領域
43、51 動作設定部
44、52 チャネル
100 FA設計システム
200 FAシステム(制御システム)