(57)【要約】【課題】  ソースプログラムの作成を容易にし、ＰＬＣにおけるメモリ容量を低減し、かつ、実行に要する時間を短縮する。【解決手段】  文字列からなるソースプログラムが入力されるプログラム入力部２と、ラダー言語で動作するプログラマブルロジックコントローラ３とを備え、プログラム入力部２が、入力されたソースプログラムを、該ソースプログラムの各コマンドを数値データにより記述した数値データプログラムに変換する数値データ変換部４を備え、プログラマブルロジックコントローラ３が、前記プログラム入力部２から送信された数値データプログラムを記憶するデータ記憶部５と、該データ記憶部５に記憶された数値データプログラムをコマンド毎に解釈して実行するインタプリタプログラム６とを備える制御システム１を提供する。【選択図】      図１
2006235660.tif 000002
【特許請求の範囲】
【請求項１】
文字列からなるソースプログラムが入力されるプログラム入力部と、
ラダー言語で動作するプログラマブルロジックコントローラとを備え、
プログラム入力部が、入力されたソースプログラムを、該ソースプログラムの各コマンドを数値データにより記述した数値データプログラムに変換する数値データ変換部を備え、
プログラマブルロジックコントローラが、前記プログラム入力部から送信された数値データプログラムを記憶するデータ記憶部と、該データ記憶部に記憶された数値データプログラムをコマンド毎に解釈して実行するインタプリタプログラムとを備える制御システム。
【請求項２】
前記ソースプログラムが、実行順に並ぶ複数のコマンドを備え、
前記数値データプログラムが、前記ソースプログラムのコマンド順に配列されている請求項１に記載の制御システム。
【請求項３】
前記数値データプログラムの各コマンドが、該コマンドを構成する数値データのデータ数を数値データの１つとして備えるとともに、データ記憶部上における先頭メモリアドレスにより指定される請求項１に記載の制御システム。
【請求項４】
文字列からなるソースプログラムを入力し、
入力されたソースプログラムを、該ソースプログラムの各コマンドを数値データにより記述した数値データプログラムに変換し、
変換された数値データプログラムをプログラマブルロジックコントローラに送信し、
送信されてきた数値データプログラムを記憶し、
記憶された数値データプログラムを、インタプリタプログラムによりコマンド毎に解釈して実行する制御方法。
【請求項５】
前記数値データプログラムが、前記ソースプログラムのコマンド順に配列され、
前記数値データプログラムの各コマンドが、該コマンドを構成する数値データのデータ数を数値データの１つとして備えるとともに、データ記憶部上における先頭メモリアドレスにより指定される請求項４に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブルロジックコントローラを備える制御システムおよび制御方法に関するものである。
【背景技術】
【０００２】
生産設備等を制御する制御装置として、従来、プログラマブルロジックコントローラ（以下、ＰＬＣという。）が知られている（例えば、特許文献１参照。）。従来のＰＬＣは、ラダー言語で記述されたソースプログラムを直接実行するよう構成されている。
【０００３】
一方、直感的に理解しやすく習熟に多くの時間を要しない言語として、ベーシックをはじめとしたインタプリタ言語が知られている（例えば、特許文献２参照。）。インタプリタ言語は、人間にとって理解しやすい文字列からなるソースプログラムを実行時に解釈して実行する言語である。
【特許文献１】特開２００４−２６５０６０号公報
【特許文献２】特開平７−８４７９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ラダー言語は記号言語であるため、直感的に理解し難く、習熟に時間がかかるという問題がある。
また、ラダー言語はＰＬＣメーカ毎に相違する部分があるため、１つのＰＬＣにおいて動作可能なソースプログラムをそのまま他のＰＬＣに移植しても十分に作動させることができない場合もある。
【０００５】
また、インタプリタ言語は、文字列により構成されているので、ラダー言語と比較して直感的に理解でき、習熟に多くの時間を有しないという利点があるが、既存のインタプリタ言語をそのまま適用したのでは、ＰＬＣにおけるメモリ容量に限界があること、ＰＬＣの動作速度が低下すること等の問題がある。
【０００６】
本発明は上述した事情に鑑みてなされたものであって、ソースプログラムの作成を容易にし、ＰＬＣにおけるメモリ容量を低減し、かつ、実行に要する時間を短縮することができる制御システムおよび制御方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明は以下の手段を提供する。
本発明は、文字列からなるソースプログラムが入力されるプログラム入力部と、ラダー言語で動作するＰＬＣとを備え、プログラム入力部が、入力されたソースプログラムを、該ソースプログラムの各コマンドを数値データにより記述した数値データプログラムに変換する数値データ変換部を備え、ＰＬＣが、前記プログラム入力部から送信された数値データプログラムを記憶するデータ記憶部と、該データ記憶部に記憶された数値データプログラムをコマンド毎に解釈して実行するインタプリタプログラムとを備える制御システムを提供する。
【０００８】
本発明によれば、プログラム入力部にソースプログラムが入力されると、数値データ変換部の作動によりソースプログラムの各コマンドを数値データにより記述した数値データプログラムが作成される。
作成された数値データプログラムは、プログラム入力部からＰＬＣに送信され、データ記憶部に記憶される。そして、ＰＬＣにおいては、データ記憶部に記憶された数値データプログラムがインタプリタプログラムの作動によりコマンド毎に解釈されて実行される。
【０００９】
この場合において、作業者は、プログラム入力部に、文字列からなるソースプログラムを入力するだけで、そのソースプログラムに含まれるコマンドをＰＬＣに実行させることができるので、習熟が容易である。したがって、ソースプログラムを容易に入力することができる。また、ＰＬＣは、文字列からなるソースプログラムをそのまま解釈するのではなく、数値データ変換部によって変換された数値データプログラムを解釈するので、データ記憶部のメモリ容量が少なくて済み、かつ、実行に要する時間を短縮することができる。
【００１０】
上記発明においては、前記ソースプログラムが、実行順に並ぶ複数のコマンドを備え、前記数値データプログラムが、前記ソースプログラムのコマンド順に配列されていることが好ましい。
ソースプログラムが、実行順に並ぶコマンドを備えることで、ソースプログラムの作成が容易となる。また、数値データプログラムもソースプログラムのコマンド順に配列することで、ソースプログラムと数値データプログラムとの対応付けを容易にすることができる。したがって、ＰＬＣにおいて現在実行しているコマンドをプログラム入力部においても容易に追跡し確認することが可能となる。
【００１１】
また、上記発明においては、前記数値データプログラムの各コマンドが、該コマンドを構成する数値データのデータ数を数値データの１つとして備えるとともに、データ記憶部上における先頭メモリアドレスにより指定されることが好ましい。
インタプリタ言語は、通常、コマンド毎に行番号を備え、その行番号を手がかりとして分岐等することが可能であるが、コマンドに行番号を備えると、その分、データ記憶部にメモリ容量を必要とする。この発明によれば、行番号に代えて、先頭メモリアドレスによりコマンドを指定するので、必要なメモリ容量を低減することができる。そして、コマンドを実行順に並べることにより、コマンドが分岐を行うコマンドである場合にのみ、分岐先の先頭メモリアドレスにより分岐先を指定し、それ以外の場合には、配列順に実行することでアドレス指定を不要とすることができる。
【００１２】
また、本発明は、文字列からなるソースプログラムを入力し、入力されたソースプログラムを、該ソースプログラムの各コマンドを数値データにより記述した数値データプログラムに変換し、変換された数値データプログラムをＰＬＣに送信し、送信されてきた数値データプログラムを記憶し、記憶された数値データプログラムを、インタプリタプログラムによりコマンド毎に解釈して実行する制御方法を提供する。
【００１３】
本発明によれば、作業者は、文字列からなるソースプログラムを入力するだけで、そのソースプログラムに含まれるコマンドをＰＬＣに実行させることができるので、習熟が容易である。したがって、ソースプログラムを容易に入力することができる。また、ＰＬＣは、文字列からなるソースプログラムをそのまま解釈するのではなく、数値データに変換された数値データプログラムを解釈するので、データ記憶部のメモリ容量が少なくて済み、かつ、実行に要する時間を短縮することができる。
【００１４】
上記発明においては、前記数値データプログラムが、前記ソースプログラムのコマンド順に配列され、前記数値データプログラムの各コマンドが、該コマンドを構成する数値データのデータ数を数値データの１つとして備えるとともに、データ記憶部上における先頭メモリアドレスにより指定されることとしてもよい。
この発明によれば、インタプリタプログラムが、行番号に代えて、先頭メモリアドレスによりコマンドを指定するので、必要なメモリ容量を低減することができる。そして、コマンドを実行順に並べることにより、コマンドが分岐を行うコマンドである場合にのみ、分岐先の先頭メモリアドレスにより分岐先を指定し、それ以外の場合には、配列順に実行することでアドレス指定を不要とすることができる
【発明の効果】
【００１５】
本発明によれば、ソースプログラムの作成を容易にすることができるとともに、ＰＬＣにおけるメモリ容量を低減し、かつ、実行に要する時間を短縮することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の一実施形態に係る制御システムおよび制御方法について、図１〜図３を参照して以下に説明する。
本実施形態に係る制御システム１は、図１に示されるように、プログラム入力部２とラダー言語で作動するＰＬＣ３とを備えている。
【００１７】
プログラム入力部２は、外部において作成されたソースプログラムが入力され、あるいは、キーボード入力等によってソースプログラムを入力される。ソースプログラムは、プログラム作成者に理解しやすい言語が使用され、文字列により構成されている。
プログラム入力部２には、入力された文字列からなるソースプログラムを数値データにより記述した数値データプログラムに変換する数値データ変換部４が備えられている。
【００１８】
また、ＰＬＣ３には、プログラム入力部２から送られてきた数値データプログラムを記憶するデータ記憶部５と、該データ記憶部５に記憶されている数値データプログラムをコマンド毎に解釈して実行するインタプリタ部（インタプリタプログラム）６とが備えられている。
プログラム入力部２の数値データ変換部４により作成され、ＰＬＣ３のデータ記憶部５に記憶される数値データプログラムは、例えば、図３に示されるように、ソースプログラムを構成している各コマンド毎に１行ずつ作成されたプログラムであって、各行のデータ数Ａと、コマンドを示す番号Ｂと、コマンドに使用する変数Ｃとを備えている。また、１行目に示されるように、条件によってジャンプが必要な場合には、飛び先Ｄが指定されている。
【００１９】
各行を飛び先Ｄとして指定するために、データ記憶部５上における先頭メモリアドレスが用いられている。例えば、先頭メモリアドレスが「１００」であり、１行目のデータ数Ａが「６」である場合には、１行目のデータ数Ａの欄に「６」が記入され、２行目のアドレスは「１０６」と指定できるようになっている。さらに２行目のデータ数Ａが「３」である場合には、２行目のデータ数Ａの欄に「３」が記入され、３行目のアドレスが「１０９」と指定できるようになっている。
【００２０】
また、数値データプログラムは、原則としてその実行順に行が並んでいる。したがって、飛び先Ｄが指定されていない行の実行後にはその次の行のコマンドＢが実行されるようになっている。
前記インタプリタ部６は、データ記憶部５に記憶されている数値データプログラムを１行ずつ解釈して実行するように構成されている。
【００２１】
このように構成された本実施形態に係る制御システム１によれば、図２に示されるように、プログラム入力部２において、ソースプログラムが作成または入力され（Ｓ１）、プログラム入力部２内の数値データ変換部４の作動により数値データプログラムに変換される（Ｓ２）。変換された数値データプログラムはＰＬＣ３に送信され（Ｓ３）、ＰＬＣ３によって受信（Ｓ４）された数値データプログラムはデータ記憶部５に記憶される。その後、インタプリタ部６の作動により、データ記憶部５に記憶されている数値データプログラムが、コマンドＢ毎に解釈されて実行されることになる（Ｓ５）。
【００２２】
本実施形態に係る制御システム１によれば、プログラム入力部２内に数値データ変換部４を備えているので、プログラム作成者は、理解し易い文字列からなるソースプログラムを入力することができる。また、ＰＬＣ３のデータ記憶部５に記憶される数値データプログラムは、ソースプログラムのコマンドＢ順に配列された複数の行により構成されているので、ソースプログラムと数値データプログラムとの対応付けを容易にすることができ、ＰＬＣ３において現在実行しているコマンドＢをプログラム入力部２においても容易に追跡し確認することができる。
【００２３】
また、インタプリタ部６が解釈して実行する数値データプログラムをソースプログラムのコマンドＢ順に配列することで、各行が飛び先Ｄのアドレスを備えておく必要がなく、データ記憶部５におけるメモリ容量を減らすことができる。さらに、本実施形態によれば、数値データプログラムが、行番号に代えて、先頭メモリアドレスによりコマンドＢを指定するので、必要なメモリ容量をさらに低減することができる。
【００２４】
また、インタプリタ部６が、ソースプログラムを直接解釈して実行するのではなく、数値データに変換された数値データプログラムを解釈して実行するので、データ記憶部５のメモリ容量が少なくて済み、かつ、実行に要する時間を短縮することができる。
このように、本実施形態に係る制御システム１によれば、数値データ変換部４を備えることにより、異なる開発環境で開発されたソースプログラムを、インタプリタ部６により解釈可能な数値データプログラムに変換でき、異なるＰＬＣ３間でプログラムを標準化することができる。また、数値データプログラムはコマンド順に配列され順次実行するよう記述されているので、プログラムの開発効率や保守性を向上することができる。さらに、インタプリタ部６が飛び先を検索することなく実行できるので、処理を高速化することができるという利点がある。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態に係る制御システムを示す全体構成図である。
【図２】本発明の制御方法を説明するフローチャートである。
【図３】図１の制御システムのＰＬＣのデータ記憶部に記憶される数値データプログラムの一例を示す図である。
【符号の説明】
【００２６】
１  制御システム
２  プログラム入力部
３  ＰＬＣ（プログラマブルロジックコントローラ）
４  数値データ変換部
５  データ記憶部
６  インタプリタ部（インタプリタプログラム）
Ａ  データ数
【図１】
2006235660.tif 000003
【図２】
2006235660.tif 000004
【図３】
2006235660.tif 000005