(57)【特許請求の範囲】
【請求項１】
設定変更可能なアドレス情報を有すると共に機能ユニット毎のパラメータを個々に所有している固有情報を用いて、プログラマブルコントローラ用のパラメータ形式のユニット設定情報を作成する設定情報生成手段と、前記ユニット設定情報のパラメータを解析し、プログラマブルコントローラの動作を指定するシーケンスプログラムに変換するための情報元となるファイルを生成する解析変換手段と、前記解析変換手段により生成されたファイルをシーケンスプログラムに変換するプログラム変換組み込み手段とを備えたことを特徴とするプログラマブルコントローラ用プログラム生成装置。
【請求項２】
前記固有情報は、データの型式を示すデータタイプの情報を含むことを特徴とする請求項１に記載のプログラマブルコントローラ用プログラム生成装置。
【請求項３】
前記固有情報は、パラメータ項目の設定範囲を示す上下限値又は初期値を表すデフォルト値の情報を含むことを特徴とする請求項１に記載のプログラマブルコントローラ用プログラム生成装置。
【請求項４】
前記ユニット設定情報は前記機能ユニットの装着位置情報を含むことを特徴とする請求項１に記載のプログラマブルコントローラ用プログラム生成装置。
【請求項５】
前記機能ユニットの装着位置情報を前記固有情報内に有したことを特徴とする請求項４に記載のプログラマブルコントローラ用プログラム生成装置。
【請求項６】
変換されたシーケンスプログラムは各機能ユニット単位で個々に出力され、ファンクションブロックの形式で生成されることを特徴とする請求項１に記載のプログラマブルコントローラ用プログラム生成装置。
【請求項７】
設定変更可能なアドレス情報を有すると共に機能ユニット毎のパラメータを個々に所有している固有情報を用いて、プログラマブルコントローラ用のパラメータ形式のユニット設定情報を作成するステップと、前記ユニット設定情報のパラメータを解析し、プログラマブルコントローラの動作を指定するシーケンスプログラムに変換するための情報元となるファイルを生成するステップと、前記解析変換手段により生成されたファイルをシーケンスプログラムに変換するステップとを備えたことを特徴とするプログラマブルコントローラ用プログラム生成方法。
【請求項８】
前記請求項７に記載された方法をコンピュータに実行させるためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ用各種機能ユニットを動作させる上で必要なプログラムのプログラム生成装置等に関するものである。
【背景技術】
【０００２】
従来のプログラマブルコントローラ用各種機能ユニットに必要なパラメータ、例えば対象となる機能ユニットにおけるユーザが求める仕様に必要な設定値の設定方法の1つとして、機能ユニット毎に意味付けられ設定された設定値を含むシーケンスプログラムをプログラマブルコントローラの外部で作成し、このシーケンスプログラムをプログラマブルコントローラへ転送し、実行させる方法がある。ここで、上記機能ユニット毎に意味付けられた設定値は、対象の各機能ユニットがユーザに対して公開している内部メモリエリアや、機能ユニットの状態を確認するための内部メモリ領域に転送される。
【０００３】
上記のようなシーケンスプログラムによるプログラマブルコントローラ用各種機能ユニット用のパラメータ設定の際には、対象ユニットに割り当てられた個々のパラメータ領域のアドレスを用いてシーケンスプログラムを作成している。そして、シーケンスプログラム設計者により作成されたシーケンスプログラムは各種機能ユニットに対して正しくパラメータの設定が行われていることを確認するためにデバッグ作業によるチェックが行われる。
【０００４】
ここで、上記従来技術における問題点、即ち、デバッグ作業にかかるシーケンスプログラム設計者の手間を少なくするため、シーケンスプログラム設計者にとってより分かり易い表記方法として、対象ユニットに割り当てられた個々のパラメータ領域のアドレスを用いず、その代わりに、アドレスに付与した文字列（ラベル名）を用いる方法が提案されている（特許文献１参照）。しかし、この方法においても、パラメータ設定用シーケンスプログラムを作成するという点では、上述の従来技術と同等である。
【０００５】
【特許文献１】
日本国特許出願公開番号  特開平１１−３３８７３２号
【０００６】
その一方で、プログラマブルコントローラ用各種機能ユニット用設定方法の他の1つとして、アプリケーションソフトウエアを用いる方法がある。シーケンスプログラムによるパラメータ設定を行う代わりに、アプリケーションソフトウエアにて設定されたパラメータ設定値をプログラマブルコントローラ用のパラメータとして扱い、プログラマブルコントローラの起動時に各種機能ユニットのパラメータ領域のアドレスに転送してパラメータ設定が行われている。尚、この時用いられるのはアドレスではなく、機能ユニット毎に定義された項目名称を用いて設定が行われる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来方法の1つであるプログラマブルコントローラ用の各種機能ユニット用のパラメータ設定においては、対象のユニットに割り当てられた個々のパラメータ領域のアドレスを用いてシーケンスプログラムを作成していたことから、シーケンスプログラム設計者は、誤ったアドレスへの設定や不適切な内容の設定とならないよう注意したり、ビット、バイト、ワード及びダブルワードといった対象ユニットに固有なデータタイプの違いによってシーケンスプログラムを変更したりする必要があった。
【０００８】
この場合、シーケンスプログラムからその内容を確認するためには、各種機能ユニットに割り当てられた個々のパラメータ領域のアドレスを全て把握する必要があり、設定項目が多い場合や、内容が多岐にわたる場合などは、アドレス、設定値の漏れなど、シーケンスプログラム設計者にとって管理工数が増大し、ミスに陥りやすく、デバッグ作業に時間を要するという問題があった。
【０００９】
さらに、従来の他の方法である、アプリケーションソフトウエアを用いて設定されたパラメータ設定値をプログラマブルコントローラ用のパラメータとして扱う場合、シーケンスプログラムを作成することなく、パラメータ領域のアドレスへの転送を行うことができるが、その一方で、設定完了後の調整時などに設定値の変更を行う場合には、プログラマブルコントローラ用各種機能ユニット用設定手段であるアプリケーションソフトウエアを用意することが必須となり、他の制御用プログラムと同様にシーケンスプログラムによる各機能ユニットへのパラメータ設定を行うことが出来ないという問題がある。
［００１０］  この発明は、かかる問題点を解決するためになされたもので、プログラマブルコントローラ用各種機能ユニット用のパラメータ設定において、対象ユニットに割り当てられた個々のパラメータ領域のアドレスを逐次把握することなく、シーケンスプログラムを生成することができるプログラマブルコントローラ用プログラム生成装置を得ることを目的としている。
【課題を解決するための手段】
［００１１］  この発明は、プログラマブルコントローラと接続して用いられるプログラマブルコントローラ用プログラム生成装置に関するものであり、機能ユニット毎のパラメータを個々に所有している固有情報を用いてプログラマブルコントローラ用のパラメータ形式のユニット設定情報を作成する設定情報生成手段と、前記ユニット設定情報のパラメータを解析し、プログラマブルコントローラの動作をプログラムしたシーケンスプログラムに変換するための情報元となるファイルを生成する解析変換手段と、前記解析変換手段により生成されたファイルをシーケンスプログラムに変換するプログラム変換組み込み手段とを備えたものである。
【発明の効果】
［００１２］  この発明は、機能ユニットがもつ固有情報を用いてプログラマブルコントローラ用のパラメータ形式のユニット設定情報を作成する設定情報生成手段と、前記ユニット設定情報のパラメータを解析し、プログラマブルコントローラの動作をプログラムしたシーケンスプログラムに変換するための情報元となるファイルを生成する解析変換手段と、前記解析変換手段により生成されたファイルをシーケンスプログラムに変換するプログラム変換組み込み手段とを備えたので、プログラマブルコントローラ用各種機能ユニットに割り当てられた個々のパラメータ領域のアドレスを意識することなく、パラメータ設定用シーケンスプログラムを自動生成するため、アドレス指定のミスや、データタイプの違いによるプログラミング書式の異常を未然に防ぐ効果を得ることができる。
【図面の簡単な説明】
［００１３］
［図１］本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置の構成及び当該装置よりシーケンスプログラムが転送されるプログラマブルコントローラを示す構成図である。
【図２】本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のユニット固有情報１１を示す図である。
【図３】本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータデータ生成手段１２での処理を示すフローチャートである。
【図４】本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のユニット設定情報１３のデータ構成図である。
【図５】図３のステップ４４０におけるユニット設定情報１３の作成の処理手順を示すフローチャートである。
【図６】本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータ解析手段１４が行う処理のフローチャートである。
【図７】本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータ解析手段１４とプログラム解析手段３１が行う 変換データ記録手段２０に保存された変換データファイル及びエラー情報ファイル５０の授受と変換の処理のフローチャートである。
【符号の説明】
【００１４】
１  プログラマブルコントローラ用プログラム生成装置、  １０  各種機能ユニット用設定手段、１１  ユニット固有情報、  １２  パラメータデータ生成手段、１３  ユニット設定情報、１４  パラメータ解析手段、  ２０  変換データ記録手段、２１  プログラムファイル、２２  変換情報ファイル、  ３０  プログラミング手段、３１  プログラム解析手段、３２  シーケンサ用プログラム  ４０  プログラマブルコントローラ、  ５０  エラー情報ファイル、  １００  全体オフセット、  １１０  機能ユニット識別子、  １２０  初期設定情報、  ２００  設定項目個数(ｎ)、  ２１０  項目１相対アドレス、  ２２０  項目２相対アドレス、  ２３０  項目ｎ相対アドレス、  ２４０  設定項目１、  ２５０  設定項目ｎ、  ３００  書き込みトリガ信号、  ３１０  対象アドレス、  ３２０  設定データ個数、  ３３０  設定データ。
【発明を実施するための最良の形態】
【００１５】
発明を実施するための最良の形態を、実施例１及び実施例２にて説明する。
【実施例１】
【００１６】
図１は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置１の構成、及び、当該装置からシーケンスプログラムが転送されるプログラマブルコントローラ４０を示す構成図である。プログラマブルコントローラ用プログラム生成装置１は、個々の機能ユニットの動作手順や個々ユニットの動作時の設定パラメータをシーケンスプログラムに変換するものであり、シーケンスプログラムに対し、プログラマブルコントローラの各種の機能ユニットを動作させるシーケンス部分や動作時のパラメータの編集、書き込み／読み込みなどを行うプログラマブルコントローラ用各種機能ユニット用設定手段１０と、プログラマブルコントローラ用各種機能ユニット用設定手段１０から出力され、シーケンスプログラムに変換される情報を格納した変換データ記録手段２０、さらにプログラマブルコントローラに対してパラメータ、シーケンスプログラムの編集／設定等を行う プログラマブルコントローラ用プログラミング手段３０とから構成される。
【００１７】
プログラマブルコントローラ用プログラム生成装置１のハードウェアは、パーソナルコンピュータの機能の一部として構成させることが可能である。プログラマブルコントローラ用プログラム生成装置を構成している各ソフトウェア、ファイルはパーソナルコンピュータ内のメモリや記録媒体に保存され、ソフトウェアによる処理はパソコン内のＣＰＵを利用して行うことができる。また、ハードウェアがパーソナルコンピュータでない場合でも、ソフトウェアやファイルを記録する記録媒体とソフトを実行するＣＰＵ等があれば実現可能である。
【００１８】
プログラマブルコントローラ用各種機能ユニット用設定手段１０は、ユニット固有の情報が格納されたユニット固有情報１１を基に、プログラマブルコントローラ用のパラメータ形式のユニット設定情報１３を生成するパラメータデータ生成手段１２と、ユニット設定情報１３からシーケンスプログラムの元となる情報を含む変換データファイルを作成し変換データ記録手段２０に出力するパラメータ解析手段１４とから構成される。
なお、この実施の形態の構成においては、パラメータデータ生成手段１２が設定情報生成手段に、パラメータ解析手段１４が解析変換手段に、それぞれ相当する。
【００１９】
変換データ記録手段２０は、パラメータ解析手段１４が出力した変換データファイルを格納する。その変換データファイルは、テキスト形式に明記されたシーケンスプログラムが格納されたプログラムファイル２１と変換対象となる対象ファイルのパス名とそのファイル名が格納された変換情報ファイル２２とから構成される。
【００２０】
プログラマブルコントローラ用プログラミング手段３０は、変換データ記録手段２０より変換データファイルを取り込み、プログラマブルコントローラ用プログラミング手段３０内のプログラム解析手段３１が変換データファイルのチェックを行った後、プログラマブルコントローラの動作をプログラムしたシーケンスプログラム３２としてプログラマブルコントローラ４０に出力するとともにシーケンスプログラム３２をプログラマブルコントローラ４０に組み込む。
【００２１】
このように構成されたプログラマブルコントローラ用プログラム生成装置によって、各種機能ユニットにおける設定パラメータが設定されたシーケンスプログラムがプログラマブルコントローラに組み込まれることにより、ユニット固有情報の内容を反映して動作することができる。以下、詳細について説明する。
【００２２】
図２は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のユニット固有情報１１を示す図である。ユニット固有情報１１は、ユニットを識別するユニット識別番号１１ａ、パラメータ項目を認識するための識別子１１ｂ、パラメータ設定項目の内容を機能ユニットに反映させるために必要な書き込みトリガ信号１１ｃ、各機能ユニット内に割り当てられている内部メモリのアドレス番号１１ｄ、パラメータ設定項目に付けられた項目名称１１ｅ、１０進（符号有り／無し）／１６進／ビットといったパラメータ設定項目のデータの型式を示すデータタイプ１１ｆとそのデータタイプに応じたデータの容量を示すデータサイズ１１ｇ、ユーザから入力された数値に対して適切な数値入力されているか、すなわち入力値が正常な範囲内に収まっているかをチェックするために必要なパラメータ項目の設定範囲を示す上下限値１１ｈ、そのパラメータ設定項目の初期値を表すデフォルト値１１ｉの情報が含まれている。
【００２３】
尚、図２中、書き込みトリガ信号１１ｃの数字は、トリガ信号となる所定のビットがＯＮとなっている場合のその対象番号の数字を意味しており、その対象番号が示されている時は、対象番号のビットがＯＮとなり、対象番号の書き込みトリガ信号があることを示している。よって書き込みトリガ信号が０の場合は、対象番号のビットが全てＯＦＦであることを意味しており、０の場合が書き込みトリガないことを意味している。
また、データサイズ１１ｇのサイズはバイト長単位で示されている。よってデータタイプが“ビットタイプ”でデータサイズが“２”の場合についても、２バイトを示すこととなる。
【００２４】
ユニット固有情報１１の情報のうち、少なくとも各機能ユニット内に割り当てられている内部メモリのアドレス番号１１ｄがあることで各種機能ユニットに割り当てられた個々のパラメータ領域のアドレスを全て把握する必要がなくなり、管理工数を低減することができるという効果がある。また、データタイプ１１ｆを備えたことで、データタイプの違いによるプログラミング異常を未然に防ぐ効果がある。さらに、パラメータ項目の設定範囲を示す上下限値１１ｈを備えていることで、範囲外数値入力の未然チェックも有効に行うことができる。ユニット固有情報１１の情報がシーケンスプログラムへ変換され、プログラマブルコントローラ４０へ組み込まれ、それぞれ上記に示した効果を奏することで、シーケンスプログラムの品質向上を図ることができるものである。
【００２５】
以下、パラメータデータ設定手段１２が、ユニット固有情報１１からユニット設定情報１３の作成を行う処理について説明する。図３は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータデータ生成手段１２での処理を示すフローチャートである。
【００２６】
ステップ４００において、ユニット固有情報１１（１１ａから１１ｉのように定義された機能ユニットのパラメータデータ）を読み込む。ステップ４１０において、読み込んだユニット固有情報から必要なパラメータの設定値をユーザが設定する。ステップ４２０では読み込んだユニット固有情報の上下限値１１ｈの値を用いてエラーチェックを行い、その上下限値の範囲内で正しく入力されているかどうかのチェックを行う。エラーが存在する場合は、ステップ４３０にて再入力を促し、再度エラーチェックを行う。パラメータの設定値からエラーを取り除いた後、ステップ４４０にてユニット設定情報１３を生成する。
【００２７】
ステップ４４０のユニット設定情報１３の作成について詳細に説明する。まず、ユニット設定情報１３のデータの構成について説明する。図４は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のユニット設定情報１３のデータの構成図である。
【００２８】
ユニット設定情報１３は、１ユニット分である機能ユニットのデータ数を示す全体オフセット１００、機能ユニットを識別するために個々の機能ユニットが持つ機種識別子１１０、初期設定用のデータが格納されているメモリアドレスを示す初期設定用相対アドレス等の初期設定情報１２０から構成されている。
【００２９】
初期設定情報１２０には、初期設定で設定する項目数（即ち、ユニットの個数）を示す設定項目個数（ｎ）２００、並びに、１つ目の設定項目となる設定項目１２４０とその格納位置を示す項目１相対アドレス２１０の組合せ、及びそれと同様な構成が設定項目個数（ｎ）２００に格納されたユニットの個数分存在する。
【００３０】
パラメータデータの最小単位である個々のアドレスに対応した設定項目１，２，・・・，ｎのそれぞれは、設定した内容の更新用に必要な書き込みトリガ信号３００、設定項目の対象アドレス３１０、設定データ個数３２０、データ毎に必要な実データ領域となる設定データ３３０から構成される。
【００３１】
機能ユニットは、指定アドレスに設定した内容を反映させるタイミングをユーザが指定する任意のタイミングで指定することができる書き込みトリガ信号を持っている。この書き込みトリガ信号は信号状態がＯｆｆ状態からＯｎ状態への変化が発生したタイミングで内部メモリへの更新を行うためのものである。書き込みトリガ信号３００はその機能ユニット固有に存在するトリガ信号を格納するエリアである。ただし、この信号は機能ユニットによって必ずしも存在するものではない。よってこの信号情報が存在しない場合は、後に述べるシーケンスプログラムにも書き込みトリガ信号のＯｎ／Ｏｆｆ処理を行うプログラムを付加しない。
【００３２】
次に、図３のステップ４４０におけるユニット設定情報１３の作成の処理手順について説明する。図５は、図３のステップ４４０におけるユニット設定情報１３の作成の処理手順を示すフローチャートである。
【００３３】
ステップ４４２において、対象アドレス３１０、設定データ個数３２０、設定データ（ユーザにより入力された数値）３３０を格納する。ユニット設定情報１３の一部で、対象となる機能ユニットにおいてユニット固有情報に書き込みトリガ信号１１ｃの情報が設定されている場合は、ステップ４４３でユニット設定情報１３の書き込みトリガ信号３００にその情報を格納する。ステップ４４４では１データ分の情報が格納されたことを受けて、処理回数をカウントアップして処理回数を監視する。ステップ４４５にて、設定が必要な次項目への設定データの格納位置を算出するために１項目分のデータ数を項目２相対アドレス２２０に加算する。ステップ４４２からステップ４４５までの処理は、ステップ４４４で監視した処理回数（即ち、設定項目個数(ｎ)２００）の回数分繰り返される。ステップ４４６にて、機能ユニットを識別する機能ユニット識別子１１０を格納する。ステップ４４７にて、機能ユニット識別子１１０と初期設定情報１２０を加算したバイト数を算出し、全体オフセット１００にその算出した数値を格納して１機能ユニット分の初期設定情報の格納が完了する。
【００３４】
パラメータ解析手段１４が、ユニット設定情報１３を変換データファイル２０に変換する処理について説明する。図６は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータ解析手段１４が行う処理のフローチャートである。
【００３５】
まず始めに、ステップ５１０では、ユニット設定情報１３に格納されている情報から図４の初期設定情報１２０の中から設定すべき機能ユニットの対象アドレス３１０を取得する。アドレス３１０は機能ユニットに割り当てられているパラメータ領域のアドレスを指しているため、例えば「０」といった内容が格納されている。この「０」という値に機能ユニットのアドレスであることを示す「Ｇ」を付加し、「Ｇ０」と表す。尚、この値には、機能ユニットが装着されている情報は含まれていないため、装着されている装着位置の情報を付加させる必要がある。
【００３６】
従来は、この付加しなければならない情報をシーケンスプログラムの中から変更対象位置を検索し、変更する操作を必要としていた。しかし本装置により、予めユーザから指定される機能ユニットの装着位置の情報を対象アドレス３１０に付加することにより、変更作業にアドレスの検索、変更操作を必要としない。装着位置が「０」の場合は、その装着位置を示す「Ｕ０￥」が付加され、転送命令で使用する機能ユニットの対象アドレスは装着位置を含めて「Ｕ０￥Ｇ０」と表現される。
このことにより各ユニットの対象アドレスが同じ場合であっても正常にシーケンスプログラムを構成し、動作させることが可能になる。
【００３７】
ステップ５２０では、ステップ５１０と同様にユニット設定情報１３に格納されている初期設定情報１２０の中から設定すべき機能ユニットのデータのデータ長を取得する。ステップ５３０も同様にして、実データを取得する。ステップ５４０にてステップ５１０からステップ５３０で取得したデータを組み合わせて転送命令を作成する。
【００３８】
ステップ５４０で転送命令が作成される。転送命令フォーマットは[転送命令（ＭＯＶＰ）]  [設定データ３３０]  [対象アドレス３１０]というフォーマットで表される。「ＭＯＶ」は転送を、その命令に付加される「Ｐ」はパルス命令をそれぞれ意味している。パルス命令は、指定された信号の立ち上がり時のみ実行する命令を意味し、以後条件が成立していてもその命令を実行しないものである。初期設定情報は、シーケンスプログラム起動時にのみ１回実行させる必要があるため、このシーケンスプログラムはパルス命令である必要がある。例えば、アドレス「０」に「１０進数の１００」という数値を転送する場合は、「ＭＯＶＰ Ｋ１００  Ｕ０￥Ｇ０」といった命令が作成される（“Ｋ１００”の“Ｋ”は１０進数であることを示す。１６進数を指定する場合は“Ｈ”を指定する）。ステップ５１０から５４０に示す一連の処理を設定データ個数３２０に格納された回数分繰り返し行って、対象アドレス３１０へ設定データ３３０の内容を転送する転送命令を作成する。
【００３９】
ステップ５５０では書き込みトリガ信号の有無をチェックする。転送命令から対象アドレス３１０に書き込まれた設定データ３３０は、内部メモリエリアに書き込むだけでは内容の反映が行われない機能ユニットが存在する。このような機能ユニットでは、書き込みトリガ信号３００が用意され、その信号のＯｆｆからＯｎへの変化をトリガにして内容の更新を行っている。ここで言う信号とは、プログラマブルコントローラと機能ユニット間に設けられた信号を指し、機能ユニットからプログラマブルコントローラへの入力信号（Ｘ信号）とプログラマブルコントローラから機能ユニットへの出力信号（Ｙ信号）から成り、これら２つの信号のＯｎ／Ｏｆｆ状態により、プログラマブルコントローラと機能ユニットの動作指示、確認を行っている。
【００４０】
前述の通り、書き込みトリガ信号３００はプログラマブルコントローラから機能ユニットに対して設定データの反映を指示するための信号のため、プログラマブルコントローラから機能ユニットへの出力信号（Ｙ信号）に分類される。そこで、書き込みトリガ信号３００が存在する場合は、内部メモリエリアに書き込む転送命令の後に書き込みトリガ信号のＯｎ（ＳＥＴ  Ｙ０）を追加する。書き込みトリガ信号は、その信号がＯｆｆからＯｎに変化した際に認識される信号のため、信号をＯｎさせた後は必ずＯｆｆさせておく必要がある。そこで、書き込みトリガ信号をＯｎする命令の後に、Ｏｎ状態を確認（ＬＤ  Ｙ９）と書き込みトリガ信号をＯｆｆ（ＲＳＴ  Ｙ０）させる命令を追加する。“ＳＥＴ”はその後に指定する信号をＯｎさせる命令を、“ＲＳＴ”は逆にその信号をＯｆｆする命令を表す。“ＬＤ”は指定された対象信号のＯｎ情報を取り込み演算結果とするもので、この命令以降に続く命令を実行させるかどうかを決めるものである。ここの例では、Ｙ０がＯｎした条件を受けて“ＲＳＴ Ｙ０”の命令を実行する。
【００４１】
以上の処理によって作成された転送命令と書き込みトリガ信号のＯＮ／Ｏｆｆ処理に変換したシーケンスプログラムはステップ５７０により、テキスト形式のファイルに展開されて変換データ記録手段２０に出力される。この時出力される変換データファイルは、シーケンスプログラムが格納されているプログラムファイル２１と、プログラムファイル２１をプログラマブルコントローラ用プログラミング手段３０に取り込ませるために必要な変換情報ファイル２２がある。この変換情報ファイル２２には、プログラムファイル２１が存在するフォルダパス名とその変換されるシーケンスプログラムに付ける名称が設定されている。
【００４２】
次にプログラマブルコントローラ用プログラミング手段３０における、パラメータ解析手段１４によって初期設定情報１２０から変換された変換データファイルの取り込み方法について説明する。
【００４３】
パラメータ解析手段１４とプログラマブルコントローラ用プログラミング手段３０のプログラム解析手段３１との間では、変換データ記録手段２０に格納された情報からシーケンスプログラムに変換を実施させるために、イベントの授受とこの間の情報の受け渡しを共有メモリを介して行っている。イベント発行側では、イベント発行時に、そのイベントの種類に応じた情報を共有メモリに書き込み、受信側はそのイベントの種類とその共有メモリの内容に応じた処理を実行する。なお、この実施の形態の構成においては、プログラム解析手段３１がプログラム変換組み込み手段に相当する。
【００４４】
図７は、本発明の実施の形態１に係わるプログラマブルコントローラ用プログラム生成装置のパラメータ解析手段１４とプログラム解析手段３１が行う変換データファイルの授受と変換の処理のフローチャートである。
【００４５】
まず始めにステップ６００で示すように、変換データ記録手段２０に格納されている変換データファイルのフォルダパス名とファイル名を共有メモリへ書き込み、その内容をプログラム解析手段３１側に登録するための登録用イベントをステップ６１０にて発行する。その変換登録イベントを受け取ったプログラム解析手段３１は変換データファイルの内容を参照し、変換するシーケンスプログラムに内容を取り込む。登録が完了すると、プログラム解析手段３１は、登録完了のイベントを発行して、変換登録が完了したことをパラメータ解析手段１４に通知する。
【００４６】
登録完了を受けたパラメータ解析手段１４は、変換情報のエラーチェックを実施させるために変換情報エラーチェックの要求イベントをステップ６２０にて発行する。プログラム解析手段３１は、そのイベントを受けて、登録した内容（即ち、変換情報ファイル２２）のエラーチェックを実施する。ここではファイルフォーマット、プログラムの誤記を確認する整合性チェックを実施する。エラーチェックが終了すると、プログラム解析手段３１よりエラーチェック終了のイベントが発行される。そのイベントを受けたパラメータ解析手段１４はステップ６３０にてエラー内容が格納されているエラー情報ファイル５０の確認を行う。エラーの有無をステップ６４０で確認し、エラーが発生している場合は、ステップ６５１で 変換データ記録手段２０に保存されている変換データファイルを削除して、変換処理を中断する。
【００４７】
エラーチェックが正常に終了した場合はステップ６５０にて、登録実行イベントが発行され、 変換データ記録手段２０の内容が プログラマブルコントローラ用プログラミング手段３０で利用可能なシーケンスプログラムへの変換が実施される。変換処理が終了すると、変換処理終了のイベントがプログラム解析手段３１より発行されるため、そのイベント受信により、ステップ６６０にてプログラムへの変換が正しく行われたかどうかの変換エラーチェックの確認をプログラム解析手段３１から出力されたエラー情報ファイル５０を用いて行なわれる。パラメータ解析手段１４は変換処理のエラーの有無に関わらず、変換が終了したため、変換データファイルの削除を行い、一連の変換処理を終了する。
【００４８】
上記のようパラメータ解析手段３１で変換されたシーケンスプログラムは、ＦＢ（ファンクションブロック）の形式で出力されるため、シーケンスプログラム上で再利用可能な部品となり、同様なシステム構成を持つシステムにおいて、また同じ機能ユニットを使用する場合では、その機能ユニットに対して同じようなシーケンスプログラムを設定する必要がなく、適宜にシーケンスプログラム内に組み込んで流用変更を簡単に行うことできる。また、ＦＢ内の処理はブラックボックス化され、品質が確保されたプログラムであることから、アドレス設定ミス、設定範囲異常となる設定値の誤設定回避できることから、シーケンスプログラムのデバッグ時間削減に寄与する。
【００４９】
以上のことより、この発明の実施形態によれば、機能ユニットがもつ固有情報１１を用いてプログラマブルコントローラ用のパラメータ形式のユニット設定情報１３を作成するパラメータデータ生成手段１２と、前記ユニット設定情報１３のパラメータを解析し、プログラマブルコントローラの動作をプログラムしたシーケンスプログラムの情報元となる変換データファイルに変換するパラメータ解析手段１４と、変換データ記録手段２０から入力した変換データファイルからシーケンスプログラム３２を生成しプログラマブルコントローラ４０への組み込みを行うプログラム解析手段３１とを備えたので、プログラマブルコントローラ用各種機能ユニットにおける、設定用シーケンスプログラムを機能ユニットに割り当てられたアドレスやデータタイプ、シーケンス命令の使用方法などを意識すること無く作成することができるため、シーケンスプログラム上で使用する各種機能ユニットに割り当てられているアドレスの設定ミスや設定値に対するの意味付けの誤認識を未然に防ぐことができる。
【００５０】
尚、従来のプログラマブルコントローラ用各種機能ユニットを設定する場合、プログラマブルコントローラ用各種機能ユニット用パラメータがプログラマブルコントローラ用のパラメータの一部として存在するため、システムの仕様変更、微調整を行う場合に、上記各種機能ユニット用パラメータ設定用のアプリケーションソフトウエアが必須となる場合があり、その場合は、仕様変更、微調整となるパラメータの内容を変更できないという問題が存在したが、本実施の形態においては、プログラマブルコントローラ用各種機能ユニット用設定手段１０が対象となる機能ユニット全てのパラメータ情報を所有し、仕様変更、微調整の結果をシーケンスプログラムとして反映することができるためそのような問題を解決することができるという効果もある。
【００５１】
さらには、従来方式では、パラメータはシステムで一つ（１プログラマブルコントローラで１つの機能ユニット用パラメータ）しか存在しないため、ある一部の機能ユニットのみだけを有効にすることはできなかったが、本実施の形態においては、ユニット固有情報が機能ユニットのパラメータ情報を個々に所有するため、ある一部の機能ユニットのみだけを有効とし、また設定変更をすることも可能となる。
【００５２】
また、プログラマブルコントローラ用各種機能ユニットの装着位置の変更に応じても、機能ユニット固有のパラメータの情報を得るだけで適宜に対応可能なシーケンスプログラムを得ることができる。
【実施例２】
【００５３】
実施の形態１におけるユニット固有情報１１にはプログラマブルコントローラ４０と機能ユニットとの位置関係とについての情報については記載されていないが、実施の形態２において、ユニット固有情報１１に機能ユニットの装着位置情報１１ｊを付加した場合について説明する。機能ユニットの装着位置情報１１ｊが付加された以外は、実施の形態１と同じである。
【００５４】
パラメータ解析手段１４は、ユニット設定情報１３の一部である機能ユニット設定情報からシーケンスプログラムに変換する処理を行う。図６のステップ５１０では、ユニット設定情報１３に格納されている情報から図４の初期設定情報１２０の中から設定すべき機能ユニットの対象アドレス３１０を取得する。対象ドレス３１０取得後、（実施の形態１と同様に「Ｇ０」を取得したとする。）予めユーザから指定される機能ユニットの装着位置の情報１１ｊを対象アドレス３１０に自動的に付加することにより、変更作業にアドレスの検索、変更操作を必要としない。装着位置が「０」の場合は、その装着位置を示す「Ｕ０￥」が付加され、転送命令で使用する機能ユニットの対象アドレスは装着位置を含めて「Ｕ０￥Ｇ０」と表現される。この処理は実施の形態１でも述べた通りであるが、予めユーザから指定される機能ユニットの装着位置の情報はユニット固有情報１１とは別に指定していた。
【００５５】
一方、実施の形態２では、機能ユニットの装着位置情報１１ｊはユニット固有情報１１に含まれている。よってパラメータ解析手段１４は、ユニット固有情報１１内の装着位置情報１１ｊを、対象アドレス３１０に自動的に付加することが可能になる。装着位置情報１１ｊが「１」の場合は、その装着位置を示す「Ｕ１￥」が付加され、転送命令で使用する機能ユニットの対象アドレスは装着位置を含めて「Ｕ１￥Ｇ０」と表現される。
【００５６】
従って、機能ユニットのユニット装着位置が変更した場合、機能ユニットの装着位置情報１１ｊを変更するだけでその変更情報を基に自動的にパラメータ解析手段１４がプログラムファイル２１を生成することが可能となる。尚、この際、書きこみトリガ信号１１ｃは機能ユニット側が持っている対象番号で、その装着位置によって、信号の番号も変更させる必要があるため、機能ユニットの装着位置情報１１ｊの変更と同時に、書きこみトリガ信号１１ｃを変更することが必要となる。
【００５７】
従って、ユニット固有情報１１が、装着位置情報１１ｊを有することにより、機能ユニットのユニット装着位置が変更した場合においても、ユニット固有情報１１に基づいてパラメータ設定用シーケンスプログラムを自動生成するため、アドレス指定のミスや、データタイプの違いによるプログラミング異常を未然に防ぐ効果を得ることができる。
【産業上の利用可能性】
【００５８】
以上のように、本発明にかかるプログラマブルコントローラ用プログラム生成装置は、プログラマブルコントローラ用各種機能ユニット用のパラメータ設定において、対象ユニットに割り当てられた個々のパラメータ領域のアドレスを逐次把握することなく、シーケンスプログラムを生成することに適している。
【図１】
0004525681.tif 000002
【図２】
0004525681.tif 000003
【図３】
0004525681.tif 000004
【図４】
0004525681.tif 000005
【図５】
0004525681.tif 000006
【図６】
0004525681.tif 000007
【図７】
0004525681.tif 000008