JP3548777B2 - コントロール制御装置 - Google Patents
コントロール制御装置 Download PDFInfo
- Publication number
- JP3548777B2 JP3548777B2 JP30696498A JP30696498A JP3548777B2 JP 3548777 B2 JP3548777 B2 JP 3548777B2 JP 30696498 A JP30696498 A JP 30696498A JP 30696498 A JP30696498 A JP 30696498A JP 3548777 B2 JP3548777 B2 JP 3548777B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- java
- data
- user program
- language
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Programmable Controllers (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、PLC,PC等のコントロール制御装置に関するもので、特にそのコントロール制御装置を動作するプログラムの改良に関する。
【0002】
【従来の技術】
従来のPLC(プログラマブルロジックコントローラ)は、図1に示すように、ハードウエア1aは、ユーザプログラム1bにより規定される各種の動作をオペレーティングシステム(OS)1cを介して制御され、実行されるようになっている。そして、ユーザプログラム1bの言語は、ラダーが用いられている。
【0003】
そのため、ユーザプログラム1bとOS1cとの間には、ラダーで組まれたプログラムを理解し、実行させるための専用のユーザプログラム解釈・実行部1dさらには制御装置システム部1eを介在することにより構成される。
【0004】
【発明が解決しようとする課題】
従来のPLCは、専用言語であるラダーのみを用いてユーザプログラム1bの開発を行っていたため、以下に示す種々の問題を有していた。すなわち、例えばPLCによる制御対象・内容を変える必要がある場合、それに対応してユーザプログラムを修正したり、新たに作成したりする必要が出てくる。しかし、そのようにプログラムに対して修正等するためには、そのプログラム言語に精通している必要があり、ラダーは専用言語であるので、開発者育成が容易ではなかった。よって、ユーザ側で簡単に修正等することはできなかった。
【0005】
また、ユーザプログラム解釈・実行部1dは、各メーカーがそれぞれ独自のものを作成し、PLCに実装していたため、異なるメーカーのPLCを用意し、それらを用いて各種制御をすることは非情に困難であった。また、同様の理由から、他社からの切り替えも容易ではなくなる。
【0006】
さらに、制御プログラムの中には、ある接点のON/OFFを制御するといった制御系の他に、管理系、情報系と称される数値計算を主とする部分があり、後者の管理系・情報系はラダーとしては不得意な部分である。そのため、当該部分を開発するのが困難で、多大な労力もかかる。
【0007】
さらにまた、通常ユーザプログラムは、ラダーで組まれしかも、単一のプログラムにより構成されている。つまり、複数個のプログラムが相互に稼動しながら一連の処理を実行するという技術思想はなく、拡張性・汎用性に欠けるという問題も有している。
【0008】
本発明は、上記した背景に鑑みてなされたもので、その目的とするところは、上記した問題を解決し、汎用性を有しプログラム開発が容易に行え、ユーザ側の開発効率を向上することができ、機能が向上し、システム構成も簡易となるコントロール制御装置を提供することにある。
【0009】
【課題を解決するための手段】
上記した目的を達成するために、本発明に係るコントロール制御装置では、ユーザプログラムがJavaと、Java以外の言語のプログラム言語で構成され、前記各プログラム言語で構成されたユーザプログラムをそれぞれ格納するJava用ユーザプログラム記憶手段およびJava以外の言語用ユーザプログラム記憶手段と、それら複数のユーザプログラム記憶手段に記憶された各ユーザプログラムをそれぞれ実行するJava用プログラム管理手段およびJava以外の言語用プログラム管理手段と、前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段とを備える。そして、前記データ記憶手段は、同一のデータフォーマット(実施の形態では、「Javaオブジェクト」)で作成したデータが記憶され、前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段から前記データ記憶手段に対するアクセスが、中継手段(実施の形態では、「I/F部16」に相当)を介して行うようにするとともに、その中継手段は、前記データ記憶手段に格納されたデータを各プログラム言語に対応するように変換する機能を備える。さらに、前記同一のデータフォーマットは、前記Java或いは前記Java以外の言語のうちの1つのプログラム言語で作成されたユーザプログラムからは通常のプログラム実行によりアクセス可能なデータフォーマットであり、前記変換する機能は、少なくとも、前記データフォーマットに対応していないプログラム言語のユーザプログラムと、前記データ記憶部に格納されたデータを関連づけたテーブルを備え、前記データフォーマットに対応していないプログラム言語用のプログラム管理手段からユーザプログラムの実行に伴う前記データ記憶手段のデータの要求を受けた際に、前記テーブルを参照して前記データ記憶手段にアクセスし、該当するデータを抽出して前記プログラム管理手段に返送する処理を行なうように構成した。係る変換する機能は、実施の形態では、「論理メモリI/Fクラス」により実現されている。
【0010】
このように、ユーザプログラムをJavaで構成することにより、プログラム開発が容易に行え、ユーザ側の開発効率を向上することができる。つまり、すべてのユーザプログラムを汎用言語でJavaで構築すると、新たに、専門言語を習得することなくシステム開発が行える。また、請求項2でも規定するように一部をJavaで構成し、他の別のプログラム言語で構成するようにした場合には、その別のプログラム言語が専門言語とすると係る言語については習得する必要があるが、ユーザプログラムのすべてを専門のプログラム言語で構成する場合に比べると、習得するのに必要な知識は少なくて済む。よって、やはり従来に比べて開発効率が向上する。
【0012】
なお、複数のユーザプログラム記憶手段は、物理的に複数個のメモリ等を有している必要はなく、1つのメモリのある領域がJavaプログラムが格納され、他の領域に別のプログラムが格納されるようにしてもよい。
【0013】
このように形成すると、複数のプログラム言語のうちの1つがJavaで構成されるので、請求項1と同様に、開発効率が向上する。しかも、各プログラム言語は、実行するのに得意/不得意な分野があるので、複数のプログラム言語を用いて開発すると、各プログラム言語で得意な分野の処理を担当するようにすることにより、性能が向上し、システム構成も簡易となる。
【0014】
そして、本発明では、Java用と、Java以外の言語用の各プログラム管理手段が中継手段を介して同一のデータ記憶手段にアクセスできるようにしたため、あるプログラム言語で作成されたユーザプログラムで処理して生成されたデータを別のプログラム言語で作成されたユーザプログラムで参照したりすることができるので、そのように複数種のプログラム言語によりコントロール制御装置を機能させることができる。
【0015】
さらにまた、別の解決手段としては、Javaと、Java以外の言語のプログラム言語で構成されたユーザプログラムを格納するユーザプログラム記憶手段と、そのユーザプログラム記憶手段に記憶されたJavaで構成されたユーザプログラムを実行するJava用プログラム管理手段と、前記ユーザプログラム記憶手段に記憶されたJava以外の言語で構成されたユーザプログラムを実行するJava以外の言語用プログラム管理手段と、前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段と、前記各プログラム管理手段から前記データ記憶手段に対するアクセス並びに前記ユーザプログラムメモリと前記各プログラム管理手段間のアクセスを司る中継手段を備え、前記中継手段には、異なる言語で構成されたユーザプログラムにアクセスする際のメソッドを定義した管理データI/Fクラスを備え、前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段には、前記管理データI/Fクラスをインポートし、そのクラスで定義されたメソッドを用いて別のプログラム管理手段にアクセスし、その別のプログラム管理手段を介して別のプログラム言語で構成することである。
【0016】
実施の形態では、中継手段(I/F部16),データ記憶手段(「Javaオブジェクト」のデータフォーマットでデータ格納),プログラム管理手段並びにユーザプログラム記憶手段(Javaプログラムメモリ)をJavaで形成しているが、例えばユーザプログラムはラダーなどのJava以外のプログラム言語で作成することもできる。もちろん、それ以外の部分でもJava以外で組むことができる。
【0017】
そして、請求項2のように構成すると、Javaで組んだ部分は、汎用性がある言語で構築されるので、比較的簡単に作成することができる。さらに、本発明のように、各部分を部品化することにより、拡張も容易にできる。つまり、実施の形態で示すように、ユーザプログラム記憶手段たるユーザプログラムメモリを複数にすることにより、請求項2のように異なるプログラム言語をそれぞれ格納し、各プログラムに適材適所の処理をさせることができる。また、本発明では、複数のプログラム記憶手段を設けたとしても、各記憶手段に異なるプログラム言語で形成したユーザプログラムを格納する必要はなく、例えばともにラダーなど同一言語で作成した各プログラムをそれぞれ別々のユーザプログラム記憶手段に格納することもできる。この場合に、同一種類のプログラム言語で形成された各プログラムは、中継手段,プログラム管理手段を介して相手側のプログラムにアクセスできる。つまり、従来できなかった複数のプログラムで一連の処理をすることができ、プログラムの部品化ができる。
中継手段は、異なる言語で作成された各部間のアクセスを許容するため、相手側のプログラム言語等を意識しないでデータの送受等を行うための中継機能を有する。
【0018】
上記した各発明を前提とし、前記Java以外の言語は、ラダーであり、前記ユーザプログラムのうち、数値計算を主とする機能部分をJava言語で構成し、接点のオン/オフを制御するような制御系をラダー言語で構成するとよい。
【0019】
なお、本発明で言うコントロール制御装置とは、例えばPLC(プログラマブルロジックコントローラ)や、PC(プログラマブルコントローラ)と称させる各種の機器の動作をコントロールするための装置である。
【0020】
また、各請求項に記載の発明は、少なくとも一部にJavaを用いている点で共通し、また、ユーザプログラム記憶手段とそれに格納されたユーザプログラムを実施するプログラム管理手段と、そのプログラム管理手段で実行されるユーザプログラムが参照するデータを記憶するデータ記憶手段と、中継手段を備えたことを基本構成としている点で、主要部が共通する。
【0021】
【発明の実施の形態】
図2は、本発明に係るコントロール制御装置であるPLCの好適な一実施の形態を示している。本実施の形態では、ユーザプログラムの言語を、Javaとラダーの2種類の言語を用いて構成したことを特徴としている。これにより、ユーザが実現したい機能に対し、適切なプログラム言語を用いて開発することにより、開発効率を大幅に向上することができる。また、そのようにして形成されたユーザプログラムは、各プログラム言語で得意な処理を担当することにより、より高性能なPLCを構築できる。一例を示すと、管理系,情報系と称される数値計算を主とする機能部分をJavaプログラムにより実現し、接点のオン/オフを制御するような制御系をラダープログラムで実現することができる。そして、係る機能を実現するための構成として、例えば図2に示すような構成をとることができる。
【0022】
すなわち、同図に示すように、ユーザプログラム記憶手段として、第1ユーザプログラムメモリ11と第2ユーザプログラムメモリ12を有している。本例では、第1ユーザプログラムメモリ11にはラダープログラム(制御系)を格納し、第2ユーザプログラムメモリ12にはJavaプログラム(管理系/情報系)を格納するようにしている。
【0023】
そして、それら第1,第2ユーザプログラムメモリ11,12に格納された各プログラムは、それぞれラダープログラム管理部13,Javaプログラム管理部14により管理され、各プログラムの解析・実行やプログラム内で使用するデータの管理を行うようになっている。そして、プログラムで使用するデータは、データ記憶部15に格納されている。つまり、各プログラムは、データ記憶部15へのアクセス、並びに他のプログラムに対する動作命令等は、すべて対応するプログラム管理部13,14を介して行うようになっている。
【0024】
さらに本形態では、各プログラムが相互に実行することにより一連の処理をすることになるが、このとき、参照するデータは、ともに同一のデータを参照するようにし、また、互いに相手のプログラムを実行させたりすることができるようになっている。つまり、ある接点のオン/オフの制御タイミングについてデータが格納されている場合に、ラダープログラムを稼動させ、データを読み込み所定のタイミングで接点のオン/オフを制御する。そして、その接点のオン/オフの回数や時間間隔などから故障診断をしたり、故障時期を予測するなどの処理をJavaで実行するようにしている。
【0025】
ところで、ラダー用のデータは、メモリ上に一連の連続した状態で記憶する必要があり、また、Java用のデータは、変数で管理され、メモリ上のどこにあるかは問わない(物理的に連続して配置されているとは限らない)。そこで、本形態では、データ記憶部15に格納するデータは、Java用(Javaオブジェクト)の形式で保存し、しかもラダープログラムから見た場合には、そのJava用データがラダー用に見えるようにする機能を付加するようにした。もちろん、Javaプログラムがデータを参照する場合には、通常の処理をすればよい。これにより、各プログラムが同一のデータ記憶部15に格納されたデータを相互に使用することができるようにし、係る2つのプログラムが相互に関連して実行することによりある制御を行えるようにした。
【0026】
そして、このように異なるプログラム言語を相互に扱うことができるようにするため、本形態では、中継手段たるI/F部16を設け、そのI/F部16を介してすべての動作が行われるようにした。つまり、上記変換処理や、上記した各部間でのデータの送受は、I/F部16を介して行うようになっている。このI/F部16は、より具体的には、ユーザプログラムとそれに対応する管理部の間のやりとり、両プログラム管理部13,14同士のやりとり並びにデータ記憶部15へのアクセスを管理する。
【0027】
そして、I/F部16にラダープログラムとデータ記憶部(記憶部内のJavaオブジェクト)を関連付けたテーブルや、Javaプログラムとデータ記憶部を関連付けたテーブルなどを持たせておき、例えばラダー管理部13からはI/F部16に対して「変数a」を要求すると、I/F部16ではそのテーブルからその変数aが格納されているJavaオブジェクト(memObj.a)を取得し、それをキーにデータ記憶部15にアクセスして実際の変数aを抽出しそれをラダー管理部13に返送するような処理が行われる。
【0028】
なお、図2は、本発明との関係において重要な構成要素を示したもので、これ以外にも図示省略するが、PLCの全体的な動作を制御するシステム・プログラムが格納されたシステムプログラムメモリや、制御対象機器と接続し、信号の送受を行うI/Oユニットなどの基本機能が組み込まれる。
【0029】
また、上記図2に示す構成は、より具体的には図3に示すような構成により実現できる。まず、I/F部16について説明すると、データ記憶部15に格納されたデータを参照するための論理メモリI/Fクラス記憶部16aと、プログラム間の通信を行うための管理データI/Fクラス記憶部16bとを有している。論理メモリI/Fクラス記憶部16aに格納される論理メモリI/Fクラスは、データ記憶部15内に格納されたラダーconfigデータ15aから作成される。つまり、ラダーconfigデータは、ユーザプログラムを実行する際に必要となるデータをラダーで作成したもので、従来は、そのままラダープログラムを実行する際に直接参照されていたデータに対応する。
【0030】
そして、プログラマ等がこのラダーで作成したデータ(例えば、変数「a」)を、本実施の形態でユーザプログラムを実行する際に参照するデータ(Javaオブジェクト:参照変数memObjとしたら、例えば「memObj.a」)に変換したものを作成し、データ記憶部15内の論理メモリ15bに記憶する。このとき、この論理メモリ15bは、ラダーデータに合わせて連続領域として確保されている。
【0031】
そして、論理メモリI/Fクラスは、上記データ変換した際の変数名とそのデータ記憶部内に格納したアドレスの割り付けを関連付けたものを、それぞれのユーザプログラムに対して行う。これにより、上記したようにラダープログラムとデータ記憶部(記憶部内のJavaオブジェクト)15を関連付けたテーブルや、Javaプログラムとデータ記憶部15を関連付けたテーブルが記憶・保持される。なお、このクラスもプログラマが作成するのである。
【0032】
一方、管理データI/Fクラスは、他のユーザプログラム等にアクセスする際のメソッド(例えば、stopProg0,startProg0等)を定義したものが記憶されている。
【0033】
また、ラダープログラム管理部13は、さらに管理データ部13aとラダー解釈実行部13bとを有している。この管理データ部13aは、PLCを制御する上で必要となる状態、すなわち、サイクルタイムや実行回数などを管理するデータが管理され、その管理データ部13aを介してJavaプログラム側にアクセスするようになっている。つまり、データ記憶部15内の管理データI/Fクラスをインポートし、そのクラスで定義されたメソッドを用いてJavaプログラムへアクセスする。より具体的には、Java管理部14内の管理データ部14aに対してアクセスし、その管理データ部14aを介してJavaプログラムを動作させるようになっている。
【0034】
また、ラダー解釈実行部13bは、Javaで作成されたインタプリタシステムプログラム(これにより汎用性ができ、他社のPLCとの協調も可能となる)であり、ラダープログラム上のメモリアクセスを論理メモリI/Fクラスを介して論理メモリ内のデータをアクセスするようにインタプリタ実行するように構成されている。つまり、例えばラダー管理部13内のラダー解釈実行部13bがI/F部16を介して第1ユーザプログラムメモリ11に格納されたラダープログラムをインタプリタ方式で順次実行していき、そのプログラム中にメモリアクセス(データ参照)があると、I/F部16内の論理メモリI/Fクラスに対してその参照するデータ(例えば「変数a」)を要求する。すると、これを受けた、I/F部16では自己が有するラダープログラムと論理メモリのテーブルからその変数aが格納されているJavaオブジェクト(memObj.a)のアドレスを取得し、それをキーにデータ記憶部15内の論理メモリ15aにアクセスして実際の変数aを取得する。そして、取得した変数aをラダー解釈実行部13aに返送するように動作する。これにより、ラダー解釈実行部13bが、変数aを取得できるので、必要に応じて、それに基づいて所定の処理をする。なお、実行形式はインタプリタに限ることはなく、例えば、JIT(Just In Time compiler)や、Java→C変換後のNative Code 実行などでも実現できる。
【0035】
また、Java管理部14は、第2ユーザプログラムメモリ12に格納されたJavaプログラムを読み出し、インタプリタ方式で実行する機能を有し、従来と同様に、Javaプログラム上を実行中にメモリアクセスが要求される場合に論理メモリI/Fクラスを介して論理メモリ内のデータをアクセスするようになる。さらに、Java管理部14は、管理データ部14aを有している。この管理データ部14aは、上記したラダー管理部13内の管理データ部13aと同様に、Javaプログラムがラダープログラムに対して要求をだす場合に、管理データI/Fクラスで定義されたメソッドを用いて当該ラダープログラムへアクセスするようになる。これも、実際にはラダー管理部13内の管理データ13aに対してアクセスし、このアクセスを受けた管理データ13aがラダープログラムに対して所定の処理を実行させることになる。
【0036】
上記のように構成すると、制御処理をする場合には、ラダープログラムを実行し、また、管理・情報処理する場合にはJavaプログラムを実行することにより、制御対象の機器を動作させることができるので、より効率で高性能な制御が可能となる。このとき、各ユーザプログラムは、ともに対応するプログラム管理部13,14により実行され、各ユーザプログラムを実行中にデータ(変数)参照が必要になった場合には、それぞれI/F部16(論理メモリI/Fクラス)を介して同一のデータ記憶部15にアクセスして必要なデータを取得することができる。
【0037】
そして、I/F部16より具体的には論理メモリI/Fクラスを設けたことにより、Javaオブジェクトで記憶された論理メモリに対して、ラダープログラムはラダー用のデータが格納されているように見えるので、同質のデータに対して異なるユーザプログラムがアクセスすることができ、データの共通化ができる。よって、例えば、一方のユーザプログラムにより記録されたデータを別のユーザプログラムが参照することにより、制御機器に対する制御・管理をすることができる。
【0038】
また、管理データI/Fクラスを設けたことにより、異なるユーザプログラムに対して、処理の実行要求等をすることができる。これにより、複数のユーザプログラムが相互に協力しながら、PLCを動作することができる。
【0039】
なお、上記した実施の形態では、データ記憶部15に格納するデータをJavaに合わせたが、本発明はこれに限ることはなく、ラダー用に形成し、ラダープログラム側からは通常のプログラム実行方法でデータ参照等をし、Java側から所定の変換テーブルにしたがってデータをアクセスするようにしてももちろんよい。また、本形態では、先にまずラダー形式でデータ(ラダーConfigデータ)を作成し、それからJavaオブジェクトを作成するようにしたが、直接Javaオブジェクトを作成してもよい。さらに、本形態では、ラダーConfigデータをデータ記憶部内に格納したままとしているが、システム構築後は削除してももちろんよい。
【0040】
また、上記した実施の形態では、ラダープログラムとJavaプログラムの2種類のプログラム言語を用いてユーザプログラムを構築したが、本発明はこれに限ることはなくユーザプログラムが少なくともJavaで構成していればよいので、Javaと対となるプログラム言語は、ラダーに限ることはなく、別のプログラム言語を用いてもよい。また、図4に示すように3つ以上のプログラム言語(図示では3個)によりユーザプログラムを構築するようにしてもよいなど、各種の変更実施が可能である。
【0041】
なおまた、ユーザプログラムは、図示省略するプログラミングツールで作成され、従来と同様にシリアル通信ラインを介してインストールしたり、或いはPLCにネットワーク接続する機能を持たせた場合、接続されたネットワークを介してインストールするようにしてもよく、各種の手段がとれる。
【0042】
【発明の効果】
以上のように、本発明に係るコントロール制御装置では、請求項1のように構成すると、ユーザプログラムが汎用言語のJavaを用いて構成できるので、プログラム開発が容易に行え、ユーザ側の開発効率を向上することができる。
【0043】
また、請求項2のように構成すると、請求項1の効果に加えさらに、Javaの不得手な分野の処理は、別のプログラム言語を用いてユーザプログラムを開発すればよいので、システム全体の性能が向上し、システム構成も簡易となる。
【0044】
さらに、請求項3のように構成すると、各部を部品化し、汎用性や拡張性をもたたせることができる。また、各部を異なる言語で作成することもでき、従来のように全体をラダーで統一して作成する必要もなく、さらには、複数のプログラムでユーザプログラムを構築することも可能となる。
【図面の簡単な説明】
【図1】従来のPLCを示す図である。
【図2】本発明に係るコントロール制御装置(PLC)の好適な一実施の形態を示すブロック図である。
【図3】その詳細な内部構造を示すブロック図である。
【図4】変形例を示すブロック図である。
【符号の説明】
11 第1ユーザプログラムメモリ(ラダープログラムを格納)
12 第2ユーザプログラムメモリ(Javaプログラムを格納)
13 ラダープログラム管理部
14 Javaプログラム管理部
15 データ記憶部
16 I/F部(中継手段)
【発明の属する技術分野】
本発明は、PLC,PC等のコントロール制御装置に関するもので、特にそのコントロール制御装置を動作するプログラムの改良に関する。
【0002】
【従来の技術】
従来のPLC(プログラマブルロジックコントローラ)は、図1に示すように、ハードウエア1aは、ユーザプログラム1bにより規定される各種の動作をオペレーティングシステム(OS)1cを介して制御され、実行されるようになっている。そして、ユーザプログラム1bの言語は、ラダーが用いられている。
【0003】
そのため、ユーザプログラム1bとOS1cとの間には、ラダーで組まれたプログラムを理解し、実行させるための専用のユーザプログラム解釈・実行部1dさらには制御装置システム部1eを介在することにより構成される。
【0004】
【発明が解決しようとする課題】
従来のPLCは、専用言語であるラダーのみを用いてユーザプログラム1bの開発を行っていたため、以下に示す種々の問題を有していた。すなわち、例えばPLCによる制御対象・内容を変える必要がある場合、それに対応してユーザプログラムを修正したり、新たに作成したりする必要が出てくる。しかし、そのようにプログラムに対して修正等するためには、そのプログラム言語に精通している必要があり、ラダーは専用言語であるので、開発者育成が容易ではなかった。よって、ユーザ側で簡単に修正等することはできなかった。
【0005】
また、ユーザプログラム解釈・実行部1dは、各メーカーがそれぞれ独自のものを作成し、PLCに実装していたため、異なるメーカーのPLCを用意し、それらを用いて各種制御をすることは非情に困難であった。また、同様の理由から、他社からの切り替えも容易ではなくなる。
【0006】
さらに、制御プログラムの中には、ある接点のON/OFFを制御するといった制御系の他に、管理系、情報系と称される数値計算を主とする部分があり、後者の管理系・情報系はラダーとしては不得意な部分である。そのため、当該部分を開発するのが困難で、多大な労力もかかる。
【0007】
さらにまた、通常ユーザプログラムは、ラダーで組まれしかも、単一のプログラムにより構成されている。つまり、複数個のプログラムが相互に稼動しながら一連の処理を実行するという技術思想はなく、拡張性・汎用性に欠けるという問題も有している。
【0008】
本発明は、上記した背景に鑑みてなされたもので、その目的とするところは、上記した問題を解決し、汎用性を有しプログラム開発が容易に行え、ユーザ側の開発効率を向上することができ、機能が向上し、システム構成も簡易となるコントロール制御装置を提供することにある。
【0009】
【課題を解決するための手段】
上記した目的を達成するために、本発明に係るコントロール制御装置では、ユーザプログラムがJavaと、Java以外の言語のプログラム言語で構成され、前記各プログラム言語で構成されたユーザプログラムをそれぞれ格納するJava用ユーザプログラム記憶手段およびJava以外の言語用ユーザプログラム記憶手段と、それら複数のユーザプログラム記憶手段に記憶された各ユーザプログラムをそれぞれ実行するJava用プログラム管理手段およびJava以外の言語用プログラム管理手段と、前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段とを備える。そして、前記データ記憶手段は、同一のデータフォーマット(実施の形態では、「Javaオブジェクト」)で作成したデータが記憶され、前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段から前記データ記憶手段に対するアクセスが、中継手段(実施の形態では、「I/F部16」に相当)を介して行うようにするとともに、その中継手段は、前記データ記憶手段に格納されたデータを各プログラム言語に対応するように変換する機能を備える。さらに、前記同一のデータフォーマットは、前記Java或いは前記Java以外の言語のうちの1つのプログラム言語で作成されたユーザプログラムからは通常のプログラム実行によりアクセス可能なデータフォーマットであり、前記変換する機能は、少なくとも、前記データフォーマットに対応していないプログラム言語のユーザプログラムと、前記データ記憶部に格納されたデータを関連づけたテーブルを備え、前記データフォーマットに対応していないプログラム言語用のプログラム管理手段からユーザプログラムの実行に伴う前記データ記憶手段のデータの要求を受けた際に、前記テーブルを参照して前記データ記憶手段にアクセスし、該当するデータを抽出して前記プログラム管理手段に返送する処理を行なうように構成した。係る変換する機能は、実施の形態では、「論理メモリI/Fクラス」により実現されている。
【0010】
このように、ユーザプログラムをJavaで構成することにより、プログラム開発が容易に行え、ユーザ側の開発効率を向上することができる。つまり、すべてのユーザプログラムを汎用言語でJavaで構築すると、新たに、専門言語を習得することなくシステム開発が行える。また、請求項2でも規定するように一部をJavaで構成し、他の別のプログラム言語で構成するようにした場合には、その別のプログラム言語が専門言語とすると係る言語については習得する必要があるが、ユーザプログラムのすべてを専門のプログラム言語で構成する場合に比べると、習得するのに必要な知識は少なくて済む。よって、やはり従来に比べて開発効率が向上する。
【0012】
なお、複数のユーザプログラム記憶手段は、物理的に複数個のメモリ等を有している必要はなく、1つのメモリのある領域がJavaプログラムが格納され、他の領域に別のプログラムが格納されるようにしてもよい。
【0013】
このように形成すると、複数のプログラム言語のうちの1つがJavaで構成されるので、請求項1と同様に、開発効率が向上する。しかも、各プログラム言語は、実行するのに得意/不得意な分野があるので、複数のプログラム言語を用いて開発すると、各プログラム言語で得意な分野の処理を担当するようにすることにより、性能が向上し、システム構成も簡易となる。
【0014】
そして、本発明では、Java用と、Java以外の言語用の各プログラム管理手段が中継手段を介して同一のデータ記憶手段にアクセスできるようにしたため、あるプログラム言語で作成されたユーザプログラムで処理して生成されたデータを別のプログラム言語で作成されたユーザプログラムで参照したりすることができるので、そのように複数種のプログラム言語によりコントロール制御装置を機能させることができる。
【0015】
さらにまた、別の解決手段としては、Javaと、Java以外の言語のプログラム言語で構成されたユーザプログラムを格納するユーザプログラム記憶手段と、そのユーザプログラム記憶手段に記憶されたJavaで構成されたユーザプログラムを実行するJava用プログラム管理手段と、前記ユーザプログラム記憶手段に記憶されたJava以外の言語で構成されたユーザプログラムを実行するJava以外の言語用プログラム管理手段と、前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段と、前記各プログラム管理手段から前記データ記憶手段に対するアクセス並びに前記ユーザプログラムメモリと前記各プログラム管理手段間のアクセスを司る中継手段を備え、前記中継手段には、異なる言語で構成されたユーザプログラムにアクセスする際のメソッドを定義した管理データI/Fクラスを備え、前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段には、前記管理データI/Fクラスをインポートし、そのクラスで定義されたメソッドを用いて別のプログラム管理手段にアクセスし、その別のプログラム管理手段を介して別のプログラム言語で構成することである。
【0016】
実施の形態では、中継手段(I/F部16),データ記憶手段(「Javaオブジェクト」のデータフォーマットでデータ格納),プログラム管理手段並びにユーザプログラム記憶手段(Javaプログラムメモリ)をJavaで形成しているが、例えばユーザプログラムはラダーなどのJava以外のプログラム言語で作成することもできる。もちろん、それ以外の部分でもJava以外で組むことができる。
【0017】
そして、請求項2のように構成すると、Javaで組んだ部分は、汎用性がある言語で構築されるので、比較的簡単に作成することができる。さらに、本発明のように、各部分を部品化することにより、拡張も容易にできる。つまり、実施の形態で示すように、ユーザプログラム記憶手段たるユーザプログラムメモリを複数にすることにより、請求項2のように異なるプログラム言語をそれぞれ格納し、各プログラムに適材適所の処理をさせることができる。また、本発明では、複数のプログラム記憶手段を設けたとしても、各記憶手段に異なるプログラム言語で形成したユーザプログラムを格納する必要はなく、例えばともにラダーなど同一言語で作成した各プログラムをそれぞれ別々のユーザプログラム記憶手段に格納することもできる。この場合に、同一種類のプログラム言語で形成された各プログラムは、中継手段,プログラム管理手段を介して相手側のプログラムにアクセスできる。つまり、従来できなかった複数のプログラムで一連の処理をすることができ、プログラムの部品化ができる。
中継手段は、異なる言語で作成された各部間のアクセスを許容するため、相手側のプログラム言語等を意識しないでデータの送受等を行うための中継機能を有する。
【0018】
上記した各発明を前提とし、前記Java以外の言語は、ラダーであり、前記ユーザプログラムのうち、数値計算を主とする機能部分をJava言語で構成し、接点のオン/オフを制御するような制御系をラダー言語で構成するとよい。
【0019】
なお、本発明で言うコントロール制御装置とは、例えばPLC(プログラマブルロジックコントローラ)や、PC(プログラマブルコントローラ)と称させる各種の機器の動作をコントロールするための装置である。
【0020】
また、各請求項に記載の発明は、少なくとも一部にJavaを用いている点で共通し、また、ユーザプログラム記憶手段とそれに格納されたユーザプログラムを実施するプログラム管理手段と、そのプログラム管理手段で実行されるユーザプログラムが参照するデータを記憶するデータ記憶手段と、中継手段を備えたことを基本構成としている点で、主要部が共通する。
【0021】
【発明の実施の形態】
図2は、本発明に係るコントロール制御装置であるPLCの好適な一実施の形態を示している。本実施の形態では、ユーザプログラムの言語を、Javaとラダーの2種類の言語を用いて構成したことを特徴としている。これにより、ユーザが実現したい機能に対し、適切なプログラム言語を用いて開発することにより、開発効率を大幅に向上することができる。また、そのようにして形成されたユーザプログラムは、各プログラム言語で得意な処理を担当することにより、より高性能なPLCを構築できる。一例を示すと、管理系,情報系と称される数値計算を主とする機能部分をJavaプログラムにより実現し、接点のオン/オフを制御するような制御系をラダープログラムで実現することができる。そして、係る機能を実現するための構成として、例えば図2に示すような構成をとることができる。
【0022】
すなわち、同図に示すように、ユーザプログラム記憶手段として、第1ユーザプログラムメモリ11と第2ユーザプログラムメモリ12を有している。本例では、第1ユーザプログラムメモリ11にはラダープログラム(制御系)を格納し、第2ユーザプログラムメモリ12にはJavaプログラム(管理系/情報系)を格納するようにしている。
【0023】
そして、それら第1,第2ユーザプログラムメモリ11,12に格納された各プログラムは、それぞれラダープログラム管理部13,Javaプログラム管理部14により管理され、各プログラムの解析・実行やプログラム内で使用するデータの管理を行うようになっている。そして、プログラムで使用するデータは、データ記憶部15に格納されている。つまり、各プログラムは、データ記憶部15へのアクセス、並びに他のプログラムに対する動作命令等は、すべて対応するプログラム管理部13,14を介して行うようになっている。
【0024】
さらに本形態では、各プログラムが相互に実行することにより一連の処理をすることになるが、このとき、参照するデータは、ともに同一のデータを参照するようにし、また、互いに相手のプログラムを実行させたりすることができるようになっている。つまり、ある接点のオン/オフの制御タイミングについてデータが格納されている場合に、ラダープログラムを稼動させ、データを読み込み所定のタイミングで接点のオン/オフを制御する。そして、その接点のオン/オフの回数や時間間隔などから故障診断をしたり、故障時期を予測するなどの処理をJavaで実行するようにしている。
【0025】
ところで、ラダー用のデータは、メモリ上に一連の連続した状態で記憶する必要があり、また、Java用のデータは、変数で管理され、メモリ上のどこにあるかは問わない(物理的に連続して配置されているとは限らない)。そこで、本形態では、データ記憶部15に格納するデータは、Java用(Javaオブジェクト)の形式で保存し、しかもラダープログラムから見た場合には、そのJava用データがラダー用に見えるようにする機能を付加するようにした。もちろん、Javaプログラムがデータを参照する場合には、通常の処理をすればよい。これにより、各プログラムが同一のデータ記憶部15に格納されたデータを相互に使用することができるようにし、係る2つのプログラムが相互に関連して実行することによりある制御を行えるようにした。
【0026】
そして、このように異なるプログラム言語を相互に扱うことができるようにするため、本形態では、中継手段たるI/F部16を設け、そのI/F部16を介してすべての動作が行われるようにした。つまり、上記変換処理や、上記した各部間でのデータの送受は、I/F部16を介して行うようになっている。このI/F部16は、より具体的には、ユーザプログラムとそれに対応する管理部の間のやりとり、両プログラム管理部13,14同士のやりとり並びにデータ記憶部15へのアクセスを管理する。
【0027】
そして、I/F部16にラダープログラムとデータ記憶部(記憶部内のJavaオブジェクト)を関連付けたテーブルや、Javaプログラムとデータ記憶部を関連付けたテーブルなどを持たせておき、例えばラダー管理部13からはI/F部16に対して「変数a」を要求すると、I/F部16ではそのテーブルからその変数aが格納されているJavaオブジェクト(memObj.a)を取得し、それをキーにデータ記憶部15にアクセスして実際の変数aを抽出しそれをラダー管理部13に返送するような処理が行われる。
【0028】
なお、図2は、本発明との関係において重要な構成要素を示したもので、これ以外にも図示省略するが、PLCの全体的な動作を制御するシステム・プログラムが格納されたシステムプログラムメモリや、制御対象機器と接続し、信号の送受を行うI/Oユニットなどの基本機能が組み込まれる。
【0029】
また、上記図2に示す構成は、より具体的には図3に示すような構成により実現できる。まず、I/F部16について説明すると、データ記憶部15に格納されたデータを参照するための論理メモリI/Fクラス記憶部16aと、プログラム間の通信を行うための管理データI/Fクラス記憶部16bとを有している。論理メモリI/Fクラス記憶部16aに格納される論理メモリI/Fクラスは、データ記憶部15内に格納されたラダーconfigデータ15aから作成される。つまり、ラダーconfigデータは、ユーザプログラムを実行する際に必要となるデータをラダーで作成したもので、従来は、そのままラダープログラムを実行する際に直接参照されていたデータに対応する。
【0030】
そして、プログラマ等がこのラダーで作成したデータ(例えば、変数「a」)を、本実施の形態でユーザプログラムを実行する際に参照するデータ(Javaオブジェクト:参照変数memObjとしたら、例えば「memObj.a」)に変換したものを作成し、データ記憶部15内の論理メモリ15bに記憶する。このとき、この論理メモリ15bは、ラダーデータに合わせて連続領域として確保されている。
【0031】
そして、論理メモリI/Fクラスは、上記データ変換した際の変数名とそのデータ記憶部内に格納したアドレスの割り付けを関連付けたものを、それぞれのユーザプログラムに対して行う。これにより、上記したようにラダープログラムとデータ記憶部(記憶部内のJavaオブジェクト)15を関連付けたテーブルや、Javaプログラムとデータ記憶部15を関連付けたテーブルが記憶・保持される。なお、このクラスもプログラマが作成するのである。
【0032】
一方、管理データI/Fクラスは、他のユーザプログラム等にアクセスする際のメソッド(例えば、stopProg0,startProg0等)を定義したものが記憶されている。
【0033】
また、ラダープログラム管理部13は、さらに管理データ部13aとラダー解釈実行部13bとを有している。この管理データ部13aは、PLCを制御する上で必要となる状態、すなわち、サイクルタイムや実行回数などを管理するデータが管理され、その管理データ部13aを介してJavaプログラム側にアクセスするようになっている。つまり、データ記憶部15内の管理データI/Fクラスをインポートし、そのクラスで定義されたメソッドを用いてJavaプログラムへアクセスする。より具体的には、Java管理部14内の管理データ部14aに対してアクセスし、その管理データ部14aを介してJavaプログラムを動作させるようになっている。
【0034】
また、ラダー解釈実行部13bは、Javaで作成されたインタプリタシステムプログラム(これにより汎用性ができ、他社のPLCとの協調も可能となる)であり、ラダープログラム上のメモリアクセスを論理メモリI/Fクラスを介して論理メモリ内のデータをアクセスするようにインタプリタ実行するように構成されている。つまり、例えばラダー管理部13内のラダー解釈実行部13bがI/F部16を介して第1ユーザプログラムメモリ11に格納されたラダープログラムをインタプリタ方式で順次実行していき、そのプログラム中にメモリアクセス(データ参照)があると、I/F部16内の論理メモリI/Fクラスに対してその参照するデータ(例えば「変数a」)を要求する。すると、これを受けた、I/F部16では自己が有するラダープログラムと論理メモリのテーブルからその変数aが格納されているJavaオブジェクト(memObj.a)のアドレスを取得し、それをキーにデータ記憶部15内の論理メモリ15aにアクセスして実際の変数aを取得する。そして、取得した変数aをラダー解釈実行部13aに返送するように動作する。これにより、ラダー解釈実行部13bが、変数aを取得できるので、必要に応じて、それに基づいて所定の処理をする。なお、実行形式はインタプリタに限ることはなく、例えば、JIT(Just In Time compiler)や、Java→C変換後のNative Code 実行などでも実現できる。
【0035】
また、Java管理部14は、第2ユーザプログラムメモリ12に格納されたJavaプログラムを読み出し、インタプリタ方式で実行する機能を有し、従来と同様に、Javaプログラム上を実行中にメモリアクセスが要求される場合に論理メモリI/Fクラスを介して論理メモリ内のデータをアクセスするようになる。さらに、Java管理部14は、管理データ部14aを有している。この管理データ部14aは、上記したラダー管理部13内の管理データ部13aと同様に、Javaプログラムがラダープログラムに対して要求をだす場合に、管理データI/Fクラスで定義されたメソッドを用いて当該ラダープログラムへアクセスするようになる。これも、実際にはラダー管理部13内の管理データ13aに対してアクセスし、このアクセスを受けた管理データ13aがラダープログラムに対して所定の処理を実行させることになる。
【0036】
上記のように構成すると、制御処理をする場合には、ラダープログラムを実行し、また、管理・情報処理する場合にはJavaプログラムを実行することにより、制御対象の機器を動作させることができるので、より効率で高性能な制御が可能となる。このとき、各ユーザプログラムは、ともに対応するプログラム管理部13,14により実行され、各ユーザプログラムを実行中にデータ(変数)参照が必要になった場合には、それぞれI/F部16(論理メモリI/Fクラス)を介して同一のデータ記憶部15にアクセスして必要なデータを取得することができる。
【0037】
そして、I/F部16より具体的には論理メモリI/Fクラスを設けたことにより、Javaオブジェクトで記憶された論理メモリに対して、ラダープログラムはラダー用のデータが格納されているように見えるので、同質のデータに対して異なるユーザプログラムがアクセスすることができ、データの共通化ができる。よって、例えば、一方のユーザプログラムにより記録されたデータを別のユーザプログラムが参照することにより、制御機器に対する制御・管理をすることができる。
【0038】
また、管理データI/Fクラスを設けたことにより、異なるユーザプログラムに対して、処理の実行要求等をすることができる。これにより、複数のユーザプログラムが相互に協力しながら、PLCを動作することができる。
【0039】
なお、上記した実施の形態では、データ記憶部15に格納するデータをJavaに合わせたが、本発明はこれに限ることはなく、ラダー用に形成し、ラダープログラム側からは通常のプログラム実行方法でデータ参照等をし、Java側から所定の変換テーブルにしたがってデータをアクセスするようにしてももちろんよい。また、本形態では、先にまずラダー形式でデータ(ラダーConfigデータ)を作成し、それからJavaオブジェクトを作成するようにしたが、直接Javaオブジェクトを作成してもよい。さらに、本形態では、ラダーConfigデータをデータ記憶部内に格納したままとしているが、システム構築後は削除してももちろんよい。
【0040】
また、上記した実施の形態では、ラダープログラムとJavaプログラムの2種類のプログラム言語を用いてユーザプログラムを構築したが、本発明はこれに限ることはなくユーザプログラムが少なくともJavaで構成していればよいので、Javaと対となるプログラム言語は、ラダーに限ることはなく、別のプログラム言語を用いてもよい。また、図4に示すように3つ以上のプログラム言語(図示では3個)によりユーザプログラムを構築するようにしてもよいなど、各種の変更実施が可能である。
【0041】
なおまた、ユーザプログラムは、図示省略するプログラミングツールで作成され、従来と同様にシリアル通信ラインを介してインストールしたり、或いはPLCにネットワーク接続する機能を持たせた場合、接続されたネットワークを介してインストールするようにしてもよく、各種の手段がとれる。
【0042】
【発明の効果】
以上のように、本発明に係るコントロール制御装置では、請求項1のように構成すると、ユーザプログラムが汎用言語のJavaを用いて構成できるので、プログラム開発が容易に行え、ユーザ側の開発効率を向上することができる。
【0043】
また、請求項2のように構成すると、請求項1の効果に加えさらに、Javaの不得手な分野の処理は、別のプログラム言語を用いてユーザプログラムを開発すればよいので、システム全体の性能が向上し、システム構成も簡易となる。
【0044】
さらに、請求項3のように構成すると、各部を部品化し、汎用性や拡張性をもたたせることができる。また、各部を異なる言語で作成することもでき、従来のように全体をラダーで統一して作成する必要もなく、さらには、複数のプログラムでユーザプログラムを構築することも可能となる。
【図面の簡単な説明】
【図1】従来のPLCを示す図である。
【図2】本発明に係るコントロール制御装置(PLC)の好適な一実施の形態を示すブロック図である。
【図3】その詳細な内部構造を示すブロック図である。
【図4】変形例を示すブロック図である。
【符号の説明】
11 第1ユーザプログラムメモリ(ラダープログラムを格納)
12 第2ユーザプログラムメモリ(Javaプログラムを格納)
13 ラダープログラム管理部
14 Javaプログラム管理部
15 データ記憶部
16 I/F部(中継手段)
Claims (3)
- ユーザプログラムがJavaと、Java以外の言語のプログラム言語で構成され、
前記各プログラム言語で構成されたユーザプログラムをそれぞれ格納するJava用ユーザプログラム記憶手段およびJava以外の言語用ユーザプログラム記憶手段と、
それら複数のユーザプログラム記憶手段に記憶された各ユーザプログラムをそれぞれ実行するJava用プログラム管理手段およびJava以外の言語用プログラム管理手段と、
前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段とを備え、
前記データ記憶手段は、同一のデータフォーマットで作成したデータが記憶され、
前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段から前記データ記憶手段に対するアクセスが、中継手段を介して行うようにするとともに、その中継手段は、前記データ記憶手段に格納されたデータを各プログラム言語に対応するように変換する機能を備え、
前記同一のデータフォーマットは、前記Java或いは前記Java以外の言語のうちの1つのプログラム言語で作成されたユーザプログラムからは通常のプログラム実行によりアクセス可能なデータフォーマットであり、
前記変換する機能は、少なくとも、前記データフォーマットに対応していないプログラム言語のユーザプログラムと、前記データ記憶部に格納されたデータを関連づけたテーブルを備え、前記データフォーマットに対応していないプログラム言語用のプログラム管理手段からユーザプログラムの実行に伴う前記データ記憶手段のデータの要求を受けた際に、前記テーブルを参照して前記データ記憶手段にアクセスし、該当するデータを抽出して前記プログラム管理手段に返送する処理を行なうように構成したことを特徴とするコントロール制御装置。 - Javaと、Java以外の言語のプログラム言語で構成されたユーザプログラムを格納するユーザプログラム記憶手段と、
そのユーザプログラム記憶手段に記憶されたJavaで構成されたユーザプログラムを実行するJava用プログラム管理手段と、
前記ユーザプログラム記憶手段に記憶されたJava以外の言語で構成されたユーザプログラムを実行するJava以外の言語用プログラム管理手段と、
前記ユーザプログラムを実行中に参照するデータを記憶するデータ記憶手段と、
前記各プログラム管理手段から前記データ記憶手段に対するアクセス並びに前記ユーザプログラムメモリと前記各プログラム管理手段間のアクセスを司る中継手段を備え、
前記中継手段には、異なる言語で構成されたユーザプログラムにアクセスする際のメソッドを定義した管理データI/Fクラスを備え、
前記Java用プログラム管理手段並びに前記Java以外の言語用プログラム管理手段には、前記管理データI/Fクラスをインポートし、そのクラスで定義されたメソッドを用いて別のプログラム管理手段にアクセスし、その別のプログラム管理手段を介して別のプログラム言語で構成されたユーザプログラムを動作させる管理データ手段を備えて構成されていることを特徴とするコントロール制御装置。 - 前記Java以外の言語は、ラダーであり、
前記ユーザプログラムのうち、数値計算を主とする機能部分をJava言語で構成し、接点のオン/オフを制御するような制御系をラダー言語で構成したことを特徴とする請求項1または2に記載のコントロール制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30696498A JP3548777B2 (ja) | 1998-10-28 | 1998-10-28 | コントロール制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30696498A JP3548777B2 (ja) | 1998-10-28 | 1998-10-28 | コントロール制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000132208A JP2000132208A (ja) | 2000-05-12 |
JP3548777B2 true JP3548777B2 (ja) | 2004-07-28 |
Family
ID=17963397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP30696498A Expired - Fee Related JP3548777B2 (ja) | 1998-10-28 | 1998-10-28 | コントロール制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3548777B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60100932T2 (de) | 2000-12-11 | 2004-08-12 | Matsushita Electric Industrial Co., Ltd., Kadoma | Ein Speicherverwaltungsgerät, -methode,-programm und rechnerlesbares Speichermedium zum Speichern des Speicherverwaltungsprogrammes |
JP2003186505A (ja) * | 2001-12-13 | 2003-07-04 | Mitsubishi Heavy Ind Ltd | シーケンサ、制御システム、プログラム及び機械制御方法 |
DE102004026620A1 (de) * | 2004-06-01 | 2005-12-29 | Siemens Ag | Programmierbare Steuerung für die Automatisierungstechnik |
JP6745174B2 (ja) | 2016-09-09 | 2020-08-26 | 株式会社日立産機システム | コントローラ及びコントロール管理システム |
JP6821497B2 (ja) * | 2017-04-27 | 2021-01-27 | 株式会社日立産機システム | 産業用コントローラのプログラム開発システム及び産業用コントローラのプログラム開発システムにおけるデータ共有方法 |
JP6950634B2 (ja) | 2018-07-03 | 2021-10-13 | オムロン株式会社 | 制御装置および制御方法 |
JP6950635B2 (ja) | 2018-07-03 | 2021-10-13 | オムロン株式会社 | コンパイル装置およびコンパイル方法 |
JP2023154348A (ja) * | 2022-04-06 | 2023-10-19 | オムロン株式会社 | プログラム変換装置、プログラム検査装置、方法、及びプログラム |
-
1998
- 1998-10-28 JP JP30696498A patent/JP3548777B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000132208A (ja) | 2000-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3737650B2 (ja) | 統合コントローラ及び制御システム | |
CN101305350A (zh) | 与家用电器内的至少一个部件通信以及对其进行管理的软件体系系统和方法 | |
US6826432B2 (en) | Process for programming an automation application | |
US6757786B2 (en) | Data consistency memory management system and method and associated multiprocessor network | |
JP3548777B2 (ja) | コントロール制御装置 | |
CN106909441B (zh) | 一种基于jvm的磁盘直接i/o访问的方法 | |
CN108234299A (zh) | 基于模型的可配置协议数据网关及网关的信息处理方法 | |
JP2002023812A (ja) | 自動制御システムおよび自動制御方法 | |
CN116521181B (zh) | 基于游戏系统的脚本数据处理方法、装置、设备及介质 | |
JP6954191B2 (ja) | 制御システム、開発支援装置、および開発支援プログラム | |
CN113534744A (zh) | 用于构成数控系统的软件架构和硬件架构 | |
JP2000268016A (ja) | 分散制御システム並びにその構成要素 | |
US6301508B1 (en) | Automatic instrumentation system | |
JP2003271209A (ja) | 制御装置並びに拡張機器及びプログラミングツール | |
JPH0656581B2 (ja) | オブジェクト指向プログラミング方式 | |
JP3544886B2 (ja) | プログラマブルコントローラ | |
CN100440145C (zh) | 程控设备中进行更新的方法和程控设备 | |
JP2006146526A (ja) | フィールド機器管理装置およびフィールド機器管理方法 | |
JPH0695713A (ja) | プログラマブルコントローラとそのプログラミング方法 | |
JPS599928B2 (ja) | チヤネル制御方式 | |
US20040066406A1 (en) | Object processing system using an object model | |
JPH087600Y2 (ja) | Promプログラマ | |
JP2000020319A5 (ja) | ||
JP3847571B2 (ja) | 制御用表示装置、そのプログラム、および、それを記録した記録媒体、並びに制御システム | |
JPS61202253A (ja) | 論理アドレス空間アクセス方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040309 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040322 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090430 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |