JP4776602B2 - コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム - Google Patents

コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム Download PDF

Info

Publication number
JP4776602B2
JP4776602B2 JP2007241615A JP2007241615A JP4776602B2 JP 4776602 B2 JP4776602 B2 JP 4776602B2 JP 2007241615 A JP2007241615 A JP 2007241615A JP 2007241615 A JP2007241615 A JP 2007241615A JP 4776602 B2 JP4776602 B2 JP 4776602B2
Authority
JP
Japan
Prior art keywords
program
controller
conversion
data
control program
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
Application number
JP2007241615A
Other languages
English (en)
Other versions
JP2008077659A (ja
Inventor
山田  勉
雅彦 齊藤
昭二 鈴木
浩通 遠藤
典剛 松本
広和 笠嶋
学 山内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007241615A priority Critical patent/JP4776602B2/ja
Publication of JP2008077659A publication Critical patent/JP2008077659A/ja
Application granted granted Critical
Publication of JP4776602B2 publication Critical patent/JP4776602B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システムに係り、特に組み込み電子計算機(以下、単に計算機と略す。)を有するコントローラのプログラムを管理するのに好適なプログラム変換装置を備えたコントローラ管理技術に関する。
本明細書において、プログラムとは計算機に対する指令であって、一の結果を得ることができるように組み合わされたものをいい、計算機による処理の用に供する情報をいう。また、プログラムには、プログラムの記述及びデータの形式の情報が含まれる。また、コントローラの管理とは、コントローラに組み込まれた計算機のプログラムの作成、編集、書換えなどの管理の他、通信ネットを介して遠隔からコントローラを監視したり、制御する管理を含むものとする。
プログラマブルコントローラやプログラマブルロジックコントローラ(PLC)等のような計算機が組み込まれたコントローラ(以下、単にコントローラと称する。)が広く使用されている。このようなコントローラの計算機にプログラムをインストールしたり書換える場合、専用のプログラミング装置を組み込み計算機にケーブル等で接続して、専用プログラミング装置で作成したプログラムをその計算機に転送するのが一般的である。
しかし、計算機の技術革新や進歩に起因して専用プログラミング装置の機能の陳腐化が激しく、各種のコントローラに対応する専用プログラミング装置を確保しておくことが困難であるという問題がある。すなわち、社会基幹施設を制御するコントローラの中には、15年以上の長期にわたって運用されるものがあるから、それらのコントローラの管理も長期にわたって続けなければならない。このような場合、従来では、15年間管理できるように故障を予測した上で専用プログラミング装置を予め確保しておく必要があり、費用の効率性や性能改善の点にも問題がある。
このような問題を解決するため、特許文献1に、汎用性やコストパフォーマンスに優れたパーソナルコンピュータ(PC)、及びインターネットに代表される通信アプリケーション技術を利用した管理システムが提案されている。これによれば、ユーザのコントローラにHTTP(Hyper Text Transfer Protocol)サーバを搭載し、プログラマーはPCのWebブラウザを介してコントローラからHTML(Hyper Text Markup Language)データを取得し、取得したHTMLデータに従ってコントローラのプログラムを制御するようにしている。
また、コントローラの管理を効率化するために、プログラムの記述言語等を標準化することが要求されている。この要求を満たすために、特許文献2においては、プログラムをマークアップ言語で記述することが提案されている。マークアップ言語の例としてXML(eXtensible Markup Language)を取り上げ、プログラミング装置はエディタで作成されたプログラムをXML形式のプログラムに変換してコントローラに転送するようにしている。そして、コントローラは、XML形式のプログラムを自身の記憶装置に格納し、そのプログラムをコントローラ内部の制御実行手段により解釈して制御対象を制御するようにしている。なお、XMLは、標準化団体であるW3C(World Wide Web Consortium)にて策定されているデータ規格である。今後ネットワーク上で流通するデータの標準として、長期にわたり利用できるものとして有望視されている。
一方、特許文献3に、人とインターフェースをとるためのブラウザを内蔵する通信端末に関し、性能が限定される通信端末においてマークアップ言語で記述されたデータを閲覧する技術が開示されている。すなわち、WML(Wireless Markup Language)で記述されたデータを通信端末がHTTPサーバから取得する経路に、ネットワークインターフェースを介在させている。このネットワークインターフェースは、HTTPサーバから取得したWMLソースを通信端末に送信する前に、コンパイル済みWMLのコンテンツに変換するWAPゲートウェイ手段を有する。そして、通信端末のユーザがHTTPサーバにWML情報を要求すると、ネットワークインターフェースでWMLソースをコンパイルして、その結果を通信端末に送信する。これにより、処理能力が限定された通信端末においても、マークアップ言語で記述されたデータを閲覧することが可能となる。
一方、半導体プロセス技術と通信ネットワーク技術の進歩により、従来では対応できなかった分野あるいは製品に、通信ネットワークに接続された計算機を組み込むことが行なわれてきている。このような組み込み計算機は、稼動時のコストを最小とすることが重要であることから、組み込み時点において機能を限定し、拡張性が少ないことも一般的である。つまり、計算機の機能を特定の制御に特化して組み込まれている。このような組み込み計算機と、通信ネットワーク及び通信端末を用いることで、時間と場所を選ばず監視等を含む制御を行うサービスが立ち上がりつつある。
特開平11-24716号公報 US2002/0004804A1 特開2001-350507号公報
しかしながら、通信ネットワークから組み込み計算機をプログラミングしたり、監視制御するには解決しなくてはならない課題が存在する。すなわち、特許文献1に提案されたコントローラ管理システムは、コントローラに格納されているHTMLデータの内容に制御が限定されるという問題がある。
この問題を解決する方法として、例えば、HTTPサーバの機能を拡張する技術であるCGI(Common Gateway Interface)を利用することが考えられる。
しかし、この場合は、HTTPサーバにCGI機能を持たせるとともに、十分な処理能力を持たせる必要があるが、組み込み計算機にCGI機能や処理能力を持たせるのは現実的でない。また、必要な機能を追加する度に、CGIプログラムをHTTPサーバに登録する必要があるから柔軟性に欠ける。また、サーバ機能を拡張する技術として、CGIの他にSSI(Server Side Include)、JSP(Java(登録商標) Server Page)等があるが、同様の問題がある。
他方、特許文献2に提案されたコントローラ管理システムは、プログラムとしてマークアップ言語を用いることから、記述されているデータ構造がデータ定義と一致するかを検査する妥当性検査が必要となる。特に、XMLでは妥当性検査が必要である。また、XMLはテキストで記述されているので、組み込み計算機は直接XMLを利用できない。そこで、組み込み計算機が利用可能な情報を、テキスト記述から抽出する処理が必要となる。
しかし、これらの処理は一時的な処理であり、稼動時のコスト最小が優先される組み込み計算機においては、その処理のために計算処理能力を高めるのは問題がある。また、プログラミング装置としては、コントローラ毎に対応するXML変換手段を用意する必要があり、メーカや種類が異なるコントローラに適用するのは困難である。
さらに、特許文献3に開示されるゲートウェイ装置は、ソースからコンパイルされる言語への対応付けが一意に決定されてしまう。
上述したように、多種多様な組み込み計算機を有するコントローラは、対応できる言語が個別に定まっていることから、多種多様な組み込み計算機を有するコントローラに対して、通信ネット等を介してプログラミングを行なうことができる柔軟性のある汎用性の高いプログラミング装置の開発が要望されている。
そこで、本発明は、一のプログラム記述及びデータの形式で作成されたプログラムを他のプログラム記述及びデータの形式のプログラムに変換するプログラム変換装置を備えたコントローラ用のプログラミング装置、コントローラ及びコントローラ管理システムを実現することを課題とする。
本発明は、次に述べる手段により、上記課題を解決するものである。
本発明のコントローラ用のプログラミング装置は、記憶手段に格納された第2のプログラム記述及びデータの形式の制御プログラムに従って制御対象を制御する計算機を備えたコントローラに通信ネットワークを介して通信可能に設けられ、前記制御プログラムを第1のプログラム記述及びデータの形式で作成するエディタを備えたプログラミング部と、該プログラミング部により作成された第1のプログラム記述及びデータの形式の前記制御プログラムを入力し、該制御プログラムを変換規則である中間言語プログラムの変換オブジェクトを有して構成される変換プログラムを用いて、第2のプログラム記述及びデータの形式の前記制御プログラムに変換して前記コントローラに出力するプログラム変換部とを有し、前記コントローラの記憶手段には、前記変換プログラムのうちの前記変換オブジェクトが格納され、前記プログラム変換部は、前記第1のプログラム記述及びデータの形式の制御プログラムで指定される変換タイプに対応する前記変換オブジェクトの転送を前記コントローラに要求し、該要求に応じて前記コントローラから転送される前記変換オブジェクトを用いて前記変換プログラムを設定して、前記第1のプログラム記述及びデータの形式の前記制御プログラムを第2のプログラム記述及びデータの形式の前記制御プログラムに変換するように構成したことを特徴とする。
本発明のコントローラ用のプログラミング装置によれば、プログラミング装置のプログラム変換部に、第1のプログラム記述及びデータの形式の制御プログラムを、コントローラ用の第2のプログラム記述及びデータの形式の制御プログラムに変換する変換規則である変換オブジェクトを保持する必要がない。つまり、プログラミング装置は、多種多様のコントローラに対応した多種多様の変換オブジェクトを保持する必要がない。特に、コントローラを十数年にわたって保守管理する必要があるから、コントローラの変換オブジェクトは膨大な数量になるが、本発明によれば、変換オブジェクトをコントローラに持たせたことで、プログラミング装置の構成を簡単化することができる。
この場合において、前記コントローラの記憶手段には、前記プログラミング部のエディタによって第2のプログラム記述及びデータの形式の前記制御プログラムを作成するための制御プログラム作成用プログラムが格納され、前記プログラミング部は、前記コントローラに前記制御プログラム作成用プログラムを要求し、前記エディタは前記要求に応じて前記コントローラから転送される前記制御プログラム作成用プログラムを用いて、第2のプログラム記述及びデータの形式の制御プログラムを作成して前記コントローラに出力する構成とすることができる。
これによれば、プログラミング装置のプログラム変換部で、各コントローラ用の変換プログラムを設定して変換することなく、プログラミング部のエディタによって各コントローラ用の制御プログラムを作成できるから、プログラミング装置の構成を一層簡単化できる。特に、コントローラを十数年にわたって保守管理する必要があるから、コントローラの制御プログラムは膨大な数量になるが、本発明によれば、コントローラ用の制御プログラムを各コントローラに持たせたことで、プログラミング装置の構成を大幅に簡単化することができる。
本発明のコントローラは、記憶手段に格納された第2のプログラム記述及びデータの形式の制御プログラムに従って制御対象を制御する計算機を備え、通信ネットワークを介してプログラミング装置と通信可能に形成されたコントローラであって、前記プログラミング装置により第1のプログラム記述及びデータの形式で作成され、さらに、変換規則である中間言語プログラムの変換オブジェクトを有して構成される変換プログラムを用いて第2のプログラム記述及びデータの形式に変換された前記制御プログラムを、前記通信ネットワークを介して取り込み前記記憶手段に格納された前記制御プログラムを書換える手段と、前記変換プログラムのうちの前記変換オブジェクトが格納された記憶手段と、前記プログラミング装置から前記通信ネットワークを介して入力される前記第1のプログラム記述及びデータの形式の制御プログラムで指定される変換タイプに対応する前記変換オブジェクトの転送の要求に応じて、前記変換オブジェクトを前記プログラミング装置に前記通信ネットワークを介して転送する手段とを備えてなることを特徴とする。
また、本発明のコントローラは、前記プログラミング装置のエディタによって第2のプログラム記述及びデータの形式の前記制御プログラムを作成するための制御プログラム作成用プログラムを格納した記憶手段と、前記通信ネットワークを介して入力される要求に応じて、前記制御プログラム作成用プログラムを前記プログラミング装置に前記通信ネットワークを介して転送することを特徴とする。
本発明のプログラミング装置によれば、例えば、コントローラの制御プログラムを第2のプログラム記述及びデータの形式で作成されたプログラムとすると、プログラム作成者は、可読性を有し、かつ計算機と親和性が高く、プログラミング作業が容易なマークアップ言語等の第1のプログラム記述及びデータの形式で制御プログラムを作成すれば、自動的に第2のプログラム記述及びデータの形式の制御プログラムに変換することができる。その結果、プログラム作成者は第2のプログラム記述及びデータの形式に習熟することなく、しかもコントローラに適合した専用プログラミング装置が陳腐化していたとしても、既設コントローラの制御プログラムの作成、変更、編集、書き換え、等の管理を容易に行なうことができる。しかも、コントローラのプログラム記述及びデータの形式と異なる任意のプログラム記述及びデータの形式でプログラムを作成することができるから、汎用性がありオープン性の高い計算機(例えば、パーソナルコンピュータ)を用いることができ、コントローラを管理するシステムの汎用性ないし柔軟性を高めることができる。
本発明によれば、コントローラが家庭電化製品を制御対象とする場合は、通信ネットワークに家庭電化製品を制御対象とするコントローラを通信可能に接続し、携帯電話などの携帯通信端末をプログラミング装置とし、そのプログラミング装置からプログラム変換装置を呼出してコントローラに制御プログラムを送ることにより、携帯電話から自己の家庭の電化製品の制御プログラムを変更等することができる。
以上述べたように、本発明によれば、一のプログラム記述及びデータの形式で作成されたプログラムを他のプログラム記述及びデータの形式のプログラムに変換するプログラム変換装置を備えたコントローラ用のプログラミング装置、コントローラ及びコントローラ管理システムを実現することができる。
以下、本発明を実施の形態に基づいて説明する。
(第1の実施の形態)
図1に、本発明の第1実施形態に係るコントローラ管理システムの全体構成を示す。図示のように、本発明によるコントローラ管理システムは、プログラミング装置100とプログラム変換装置200とからなる管理装置と、管理対象のコントローラ300と、コントローラ300により制御される制御対象400を含んで構成される。
プログラミング装置100は、コントローラ300が実行するプログラムを作成するものであり、そのプログラムを作成するエディタ110を有して構成される。プログラミング装置100は、エディタ110により作成されたプログラムからなるコントローラの管理制御情報(以下、メッセージと称する)を作成してプログラム変換装置200に出力するようになっている。なお、コントローラの管理制御情報であるメッセージには、プログラムの他に、管理対象のコントローラ300の種類を特定するコントローラタイプ、コントローラ300のアドレス等の識別データ、その他の情報が含まれている。
ここで、プログラミング装置100は、パーソナルコンピュータ(PC)等の汎用性及びオープン性の高い計算機を用いて構成することが、将来の部品調達の観点から望ましい。また、エディタ110は、PCで動作するプログラムにより実現するのが好適である。しかし、プログラミング装置100は、これらの組み合わせに限定されるものではなく、例えばエディタプログラムとしてPCのWebブラウザで動作するWebアプリケーションを適用することができる。これによれば、Webブラウザの使い勝手と、実行プラットフォーム独立性とを享受することができる。また、入出力点数が少ないコントローラ300の場合(例えば、入出力点数が数十個以内)、プログラミング装置100は携帯電話のようなボタンと簡易な表示器の組み合わせで構成することも可能である。
プログラム変換装置200は、解釈制御部210と、変換データ取得部220と、変換実行部230と、記憶装置240を含んで構成されている。解釈制御部210は、プログラミング装置100から受信するメッセージのデータ構造が、妥当なものであるかを検査する機能と、メッセージから適宜目的情報を抽出する機能を有してなる。例えば、メッセージのプログラム記述及びデータの形式がXML形式の場合には、解釈制御部210にXMLパーサを備えてデータ構造の妥当性を判断する。変換データ取得部220は、解釈制御部210により抽出されたコントローラタイプ情報に従って、指定されたコントローラタイプに対応する変換プログラム(変換規則)を記憶装置240から読み出して変換実行部230に転送する。変換実行部230は、変換データ取得部220により読み出された変換プログラムに基づいて機能が設定され、あるいは起動され、解釈制御部210で受信したプログラムをコントローラ300に適合するプログラムに変換する。つまり、メッセージのプログラムの記述及びデータの形式を、コントローラ300に適合した記述及びデータの形式のプログラムに変換する。記憶装置240には、本実施形態の管理システムが対象とする各種のコントローラの記述及びデータの形式のプログラムに対応させて変換プログラムが格納されている。
コントローラ300は、プログラム変換装置200から出力されるメッセージを受信して記憶装置301に格納する。コントローラ300は、予め設定されている動作又は受信したメッセージに従って制御対象400を制御する。制御対象400は、工場や生産ライン、基幹システム、家庭電化製品等が該当する。制御対象400の具体例としては、入出力接点、アナログ入出力、フィールドネットワーク、サーボアンプ等の機械装置、家庭におけるエアコンや洗濯機、監視カメラ等の一般家電等、制御要素が該当する。特に、一般家電を制御するインターフェースとしては、赤外線、無線、電灯線、専用制御線などを活用することができる。
このように、従来のプログラミング装置は、コントローラに適合したプログラム記述及びデータの形式のプログラムを作成してコントローラに直接転送していたのに対し、図1の実施形態のプログラミング装置100は、任意のプログラム記述及びデータの形式のプログラムを作成し、作成されたプログラムはプログラム変換装置200によりコントローラ300に適合したプログラム記述及びデータの形式のプログラムに変換されて、コントローラ300に転送される。つまり、本実施形態では、プログラミング装置100において、コントローラ300を制御するためのプログラムを含むメッセージが作成される。メッセージを構成するプログラムのプログラム記述及びデータの形式又は構造としては、バイナリデータやテキストデータがあるが、テキストデータとしてXML形式のデータ構造を採用することが好ましい。つまり、XML形式は冗長であるが、機械語に比べて人が読んで理解できる可読性に優れているとともに、PC等の計算機にて扱いやすい。以下、XML形式のメッセージを例として本実施形態の説明を行なうが、本発明はXML形式に限定されないのは言うまでもない。
図2に、プログラミング装置100から出力されるXML形式で記述されたメッセージの一例を示す。図において、行頭の数字とコロンは説明のために付与したものであり、XML形式のメッセージを構成するものではない。なお、XMLに関する文法的な規定は、W3Cが公開するWebサイト(URL=http://www.w3.org/)、『よくわかるXMLの基礎』(日経BP社刊、原著:Simon St. Laurent、訳者:藤本淑子)等の文献に詳しいので詳細な説明は省略する。
図2において、1行目はXML宣言であり、本メッセージがXML形式で記述されていることを表している。2行目は文書型宣言であり、本メッセージのデータ構造が”someURI/plc.dtd”で表される文書型定義(Document Type Definition;DTDと略す)ファイルに定義されていることを示す。解釈制御部210は、ここで指定されるDTDを取り込み、受信したメッセージのデータ構造がDTDに適合するか否か検査する。3行目はメッセージの本体部分を示す開始タグであり、12行目の終了タグと対をなす。メッセージ本体は、さらに2つに分かれており、4行目から始まる記述と、9行目から始まる記述からなる。4行目はプログラムを補足するデータ部の開始タグであり、8行目の終了タグと対をなす。5行目は、本メッセージが変換される対象のコントローラタイプが記述される。6行目は、本メッセージの送信先であるコントローラの宛先のアドレスが記述される。7行目は、本メッセージが発信された送信元の識別コードが記述される。本例では、6、7行目の宛先と送信元としてIPアドレスで表した例を示した。しかし、これはメッセージが伝達されるネットワークメディアに依存するものであり、装置を特定できる情報であればこれに限られない。望ましくは、タグの属性としてデータのタイプを指定する。例えば、IPv4アドレスであれば<DEST type=”IPv4”>と記述する。9行目はプログラム本体の開始タグであり、11行目と対を成す。10行目では、コントローラ300を制御するためのプログラムが記述される。本例では詳細な説明を省略するが、例えばSOAP(Simple Object Access Protocol)で規定されるように、オブジェクトに対する操作を列挙することが可能である。
図2に示すプログラム記述及びデータの形式を採用することにより、処理されるべき内容を指定できる共に、コントローラ300を制御するプログラムを記述できる。また、人による可読性と計算機によるデータ可用性の両立を図ることが可能となる。なお、図2に示されたプログラム記述及びデータの形式において、必要な情報が存在する限り、データの追加や削除、変更は可能である。例えば、メッセージが整形式(well formed)のみの場合には、2行目の文書型宣言は削除可能である。
なお、メッセージが整形式である場合には、解釈制御部210は非妥当性検証パーサを用いて、メッセージが整形式であるか否かを検証することが望ましい。また、メッセージが図2の2行目のスキーマ定義を含む場合には、解釈制御部210は妥当性検証パーサを用いて、メッセージがスキーマ定義と合致するか否か検証する必要がある。
ここで、図3に図2のメッセージの変形例を示す。同図に示したメッセージは、プログラミング装置100から出力されるXML形式で記述されたメッセージの一部分であり、図2の5行目の部分に相当する。この例では、プログラム変換装置200におけるプログラム記述及びデータの形式の変換を確実に行うために、変換元のプログラム記述及びデータの形式あるいは変換後のプログラム記述及びデータの形式を、メッセージにより指定するようにしている。すなわち、変換元のプログラム記述及びデータの形式を"SRC"属性で指定し、変換後のプログラム記述及びデータの形式を"DEST"属性で指定している。この例では、変換元形式が“XML-C”という型、変換後形式が“MAC-4”という型で、コントローラタイプがEQ-XYというコントローラに対する指定を意味している。なお、これらの記号は説明用のために任意に決めた記号である。
図3に示したように、メッセージの変換元のプログラム記述及びデータの形式あるいは変換後のプログラム記述及びデータの形式として複数のプログラム記述及びデータの形式を選択できる場合は、そのプログラム記述及びデータの形式を指定するために属性指定することが好適である。なお、変換元のプログラム記述及びデータの形式あるいは変換後のプログラム記述及びデータの形式が複数存在するにもかかわらず、属性指定が存在しないメッセージが入力された場合は、予め定めたプログラム記述及びデータの形式を適用して変換するか、あるいはエラーとして変換しないことが望ましい。ここで、設定されたプログラム記述及びデータの形式を適用したり、エラーとして処理するには、例えばDTDや他のスキーマ指定により設定することが可能である。
ここで、図4に、変換元のメッセージと変換後のメッセージのプログラム記述及びデータの形式を対比して示す。同図は、XML形式のメッセージの変換を説明する図であり、タイプ名120、管理対象の対象コントローラ121、変換元のプログラム記述及びデータの形式122、変換後のプログラム記述及びデータの形式123を示している。同図に示すように、タイプCTL−Aの場合は、「A型コントローラ」に適するように、変換元形式「MAC−1」から変換後形式「MAC−2」に変換する。また、タイプEQ−XYの場合は、「XY仕様に準拠する装置」に適するように、変換元形式「MAC−3」、「XML−C」、「LANG−D」のいずれかから、変換後形式「MAC−4」、「XML−E」のいずれかの形式に変換する。
ここで、変換元あるいは変換後のプログラム記述及びデータの形式として、図中「MAC−」として表記したコントローラ固有の機械語、図中「XML−」として表記した特定分野又は団体で合意されているXML形式、あるいは図中「LANG−」として表記した特定の形式を挙げることができる。また、これらの他に、IEC(International Electro-technical Commission)61131−3規格で定められるプログラムの記述言語IL(Instruction List)又はST(Structured Text)などが挙げられる。
図5に、図1の実施形態における処理流れのシーケンス図を示す。同シーケンス図では、図の上から下に処理時間経過を示している。初めに、プログラミング装置100からプログラム変換装置200に対してメッセージが送信される(事象500)。プログラム変換装置200では、解釈制御部210がメッセージを受信する。受信したメッセージが妥当なものであるか検査するために、解釈制御部210でメッセージ解釈処理を実行する(事象501)。ここではメッセージで指定されるDTDに従い妥当性検証が行われ、さらにXMLデータから必要な情報を抽出する。次に、変換データ取得部220に対しメッセージの変換タイプを通知する(事象502)。変換データ取得部220は通知された変換タイプによって直接的あるいは間接的にメッセージの変換方法を判定する(事象503)。例えば、変換タイプと同一のファイル名で格納される変換プログラムを記憶装置240より取得する。あるいは、変換データ取得部220内部で持つデータベースから変換タイプと変換プログラムの対応関係を取得した後、記憶装置240より変換プログラムを取得する。その後、変換データ取得部220は変換実行部230の設定を行う(事象504)。例えば、変換タイプに対応した変換プログラムを起動させて変換実行部230を構成させる。ここで、変換実行部230は、変換データ取得部220により起動させてもよく、また予め起動させてもよい。変換実行部230の準備が整い次第、変換実行部230から変換データ取得部220へ設定完了を通知する(事象505)。通知を受けて、変換データ取得部220は変換タイプの指定完了を解釈制御部210に通知する(事象506)。解釈制御部210は、受信したメッセージ又はそのプログラム部分を変換実行部230に転送する(事象507)。変換実行部230は、メッセージのプログラム部分を、変換データ取得部220により取得された変換プログラムに従って変換し、その変換されたメッセージをコントローラ300に送信する(事象508)。コントローラ300は変換されたメッセージを受信して記憶装置301に格納する。そして、コントローラ300は記憶装置301に格納されたメッセージに従って、プログラムをインストール又は書換え、新たなプログラムに従って制御対象400を制御する。
このようにして、プログラミング装置100にて生成されたメッセージをプログラム変換装置200で受信し、受信メッセージにて指定された変換タイプに応じた変換処理を実行し、コントローラ300が変換処理をされたメッセージを受信することが可能となる。
したがって、本実施形態のコントローラ管理システムによれば、コントローラ300は、プログラミング装置100が生成したメッセージがXML形式であるか否かは関知せず、自己が処理可能な言語及び記述等の形式及びデータの形式によりメッセージを受信することになる。つまり、コントローラ300がXML形式に対応可能か否かを問わないことから、本実施形態のコントローラ管理システムによれば既設のコントローラに適用が可能である。
本実施形態では、解釈制御部210とプログラミング装置100とが、また、変換実行部230とコントローラ300とが1対1で接続されている構成を示した。しかし、図1のコントローラ管理システムは、プログラミング装置100とプログラム変換装置200、及びプログラム変換装置200とコントローラ300をそれぞれ通信ネットワークで結合して構成することができる。この場合、プログラム変換装置200の通信インターフェイスは、プログラミング装置100に対する受信インターフェースとコントローラ300に対する送信インターフェースを共通に形成することができる。また、プログラミング装置100とプログラム変換装置200を一体化し、プログラム変換装置200とコントローラ300を通信ネットワークで結合して構成することもできる。
また、図1において、プログラミング装置100とコントローラ300がそれぞれ1つの場合を示したが、本発明はこれに限らずプログラミング装置100とコントローラ300が複数の場合にも適用できる。
また、プログラム変換装置200により変換して出力されるメッセージのプログラム記述及びデータの形式は、記憶装置240に任意の変換プログラムを格納することにより、任意のプログラム記述及びデータの形式に変換することができる。しかし、テキスト形式に変換して出力する方が、後の管理が容易となる点で好適である。望ましくは、変換後のメッセージもXML形式とし、かつ簡易な例えば整形式とすることにより、処理能力の低いコントローラ300の場合であっても、XML形式の簡単な検査のみで利用することが可能となる。これにより、変換後のメッセージの管理が容易になる。
ところで、メッセージがコントローラ300に格納されるまでに、メッセージの一部が外乱により欠落する場合があり、しかもその欠落を判別できない場合がある。そこで、メッセージの一貫性ないし同一性を検証するために、メッセージの内部にチェックサムを設け、メッセージのテキストデータを単純足し合わせ、あるいはCRC(Cyclic Redundancy Check)等により演算した結果を、メッセージに合わせてコントローラ300に送信することが好ましい。この場合、コントローラ300において、メッセージ受信後に演算し直して照合することにより、プログラムの一貫性を検証することができる。特に、チェックサム方式は実装が容易であるから、処理能力の低いコントローラ300の場合にも好適である。
また、コントローラ300が、異なる複数のプログラム記述及びデータの形式を受け入れて解釈実行できる場合は、プログラム作成者の意図やプログラム変換装置200及びコントローラ300の負荷等を考慮して、プログラミング装置100で作成するプログラムのプログラム記述及びデータの形式、及びプログラム変換装置200で変換するコントローラ300用のプログラムのプログラム記述及びデータの形式を、それぞれに最適な形式にすることができる。上述の説明では、機械語、XML形式、特定言語形式を例としたが、本発明はそれらのプログラム記述及びデータの形式に限られないことは自ずと明らかである。
要は、コントローラ300が解釈できるプログラム記述及びデータの形式が機械語に限られる場合は、プログラム変換装置200はプログラミング装置100で作成されたプログラムを機械語に変換する。コントローラ300がXML形式やHTML形式の解釈能力を備えていれば、プログラム変換装置200はXML形式又はHTML形式に変換する。コントローラ300のプログラム記述及びデータの形式の解釈能力は、コントローラタイプ情報によって識別するようにすることができる。したがって、プログラム変換装置200は、プログラミング装置100から受信したメッセージに含まれるコントローラタイプ情報に基づいて変換タイプを識別し、識別した変換タイプに対応して設定されている変換データを用いて、プログラミング装置100から受信したメッセージを変換するように構成する。
上述したように、本実施形態によれば、プログラム変換装置200は、プログラムのプログラム記述及びデータの形式の変換データを備え、プログラミング装置100から出力されるコントローラタイプ情報に基づいてコントローラ300のプログラム記述及びデータの形式に変換する変換データを用いて、プログラミング装置100から受信したメッセージを変換して、コントローラ300に転送するようにしていることから、次のような効果が得られる。
(1)プログラム変換装置200を開発したことから、プログラミング装置100はコントローラ300のプログラム記述及びデータの形式に関わらず、例えばプログラムの作成者が使い易いマークアップ言語を用いてコントローラのプログラムを作成することができる。つまり、プログラミング装置100は、計算機と親和性が高く、かつ可読性も高いプログラム記述及びデータの形式を採用することができ、マークアップ言語に限らず使い易いプログラム記述及びデータの形式の変更にも容易に対応することができる。
(2)コントローラ300が既設の古いタイプであっても、組み込み計算機の処理能力をアップすることなく、例えば最新のプログラミング装置100によりコントローラ300のプログラムを管理することができる。つまり、コントローラ300に必要とされる機能は、少なくとも従来のコントローラ300が既に備えているメッセージ受信機能だけで足りるから、安価に本発明を実現することができる。その結果、コントローラ300を管理する管理システムの汎用性ないし柔軟性を高めることができる。
(3)特に、プログラム変換装置200とコントローラ300とを通信ネットワークを介して通信可能に接続すれば、コントローラ300を遠隔から監視したり、監視したり、制御する遠隔制御システムを実現することができる。
(4)また、プログラミング装置100としては、広く一般に行き渡っているオープン性の高いPCを利用することができるから、故障等を考慮した部品管理等も容易である。
(第2の実施の形態)
図6に本発明の他の実施形態に係る変換実行部の構成を示す。変換実行部250以外の構成は、図1の実施形態と同じである。変換実行部250は、実際に変換処理を行う変換処理部251と、変換するルールが記述されているプロファイル252a〜252xからなる。変換処理部251は、メッセージを受け、プロファイル252a〜252xに記述された変換ルールに従ってメッセージを変換する。プロファイルは変換タイプに対応して用意される。プロファイルの格納方式として、例えば変換タイプをファイル名として、ファイルシステムに格納すると管理が容易である。あるいは、変換実行部250内部で持つデータベースから、変換タイプと変換プログラムの対応を得た後にプロファイルを参照することで、変換タイプとプロファイルを柔軟に管理できる。このように、本実施形態によれば、変換処理部251の機能を変更することなく、変換タイプごとにプロファイルを用意することにより、適用できる各種のコントローラのタイプを増やすことが可能となる。
図7にプロファイルの例を示す。本例ではXML形式で記載されたプロファイルの例を示すが、必要な要件を満たすプログラム記述及びデータの形式であればXML形式に限定されない。また、行頭の数字とコロンは説明のために付与したものであり、XML形式メッセージとしては必要ない。1行目はXML宣言であり、本メッセージがXML形式のデータであることを表すものである。2行目は文書型宣言であり、本メッセージのデータ構造が”someURI/profile.dtd”で表されるファイルに定義されていることを示す。3行目はプロファイル本体の記述開始タグであり、13行目の終了タグと対をなしている。4行目はキーワードを対応させるルールの開始タグであり、7行目の終了タグと対をなしている。5行目、6行目はキーワード”Start”がキーワード”B”で置き換えられることを意味する。同様に、9行目、10行目ではキーワード”Finish”がキーワード”E”で置き換えられることを意味する。
本実施形態では、キーワードを1対1で置き換えられる例を示した。一方で、変換処理機能251がキーワードのセマンティックスを解釈し、外部データベースを参照して対応する文字列に置き換えるという処理を適用することも可能である。セマンティックスを解釈することで、キーワードの幅を吸収するプロファイルとなる。そのためプロファイル数の削減、ひいては、プロファイルを保存する記憶装置の容量削減につながる。
図7に示すデータ構造を採用することにより、プログラミング装置100が送信するメッセージに対応して、コントローラタイプ毎に必要な変換データベース(プロファイル)を、容易に準備することが可能となる。なお、図7に示したデータ構造において、本発明で必要な情報が存在する限り、データの追加、削除、変更は可能である。例えば、2行目の文書型宣言は、データが整形式(well formed)であることのみ要求する場合には削除可能である。
上述したように、本実施形態によれば、図1の実施形態と同一の効果が得られる。
(第3の実施の形態)
図8に、本発明の他の実施形態に係るコントローラ管理システムの全体構成を示す。本実施形態が図1の実施形態と異なる点は、コントローラ300がサーバ310と記憶装置320を備え、あるいはコントローラ300の外部にサーバ420と記憶装置430が用意され、これらのサーバ310、420は通信ネットワーク410を介して変換データ取得部220と通信可能に形成されていることことにある。なお、本実施形態では、サーバ310とサーバ420の少なくとも一方を備えていればよい。
記憶装置320又は記憶装置430には、前述した実施形態の変換プログラムあるいはプロファイル(以下、変換オブジェクト(変換規則)と呼ぶ。)が格納されている。サーバ310又はサーバ420は、要求に応じて、それぞれ記憶装置320又は記憶装置430から変換オブジェクトを転送する機能を有する。記憶装置320は、コントローラ300に対して必要な変換オブジェクトを少なくとも一つ有する。なお、記憶装置430に複数種類の変換オブジェクトを格納することにより、コントローラ300毎に変換オブジェクトを保持する必要が無くなる。
次に、本実施形態の処理流れを図9に示したフローチャートを用いて説明する。本実施形態における処理は、変換データ取得部220の動作を除き、図5と同一である。図9は、変換データ取得部220の動作を示している。変換データ取得部220は、変換タイプの指定(事象502)が入力されるまで待機するブロックである(処理510)。変換データ取得部220が変換タイプの指定(事象502)を受けて変換実行部を設定する際に、対応する変換オブジェクトが自己の記憶装置240に存在するか否か確認する(処理511)。変換オブジェクトが存在しない場合、変換データ取得部220は、ネットワーク410を介してサーバ310又はサーバ420に対して変換オブジェクトを要求する(処理512)。サーバ310又はサーバ420の指定は、プログラミング装置100から送信するメッセージにおいて、例えば図2の6行目のメッセージの送信先、あるいは、変換タイプのタグの属性として指定されることが望ましい。変換オブジェクトを要求されたサーバ310又はサーバ420は、要求された変換オブジェクトを返信する。ここで、要求された変換オブジェクトが当該サーバに存在しない場合は、当該サーバが他のサーバに要求をリダイレクトするようにすることができる。これにより、サーバ310又は420の管理が柔軟になる。変換データ取得部220が変換オブジェクトを受信した場合、あるいは自己の記憶装置240に変換オブジェクトが存在する場合、変換データ取得部220はその変換オブジェクトを用いて変換実行部230を設定する(事象504)。以降は、図5の事象505以降と同様である。
本実施形態によれば、プログラム変換装置200に変換タイプに対応する変換オブジェクトが存在しない場合でも、プログラムの変換を行なうことができる。また、コントローラ300が変換オブジェクトを保持することにより、プログラミング装置100に依存しないプログラム方式を実現することができる。また、例えば、コントローラ300のメーカが、変換オブジェクトを保有するサーバ420を管理するようにすれば、コントローラ300を利用するユーザはコントローラ300内に変換オブジェクトを保持する記憶装置320を持つ必要がない。
さらに、本実施形態よれば、プログラム変換装置200において記憶装置240の実装を省略することができ、プログラム変換装置200の構成を簡単化して、安価にすることができる。また、コントローラ300には、変換オブジェクトを送信する機能を追加するだけで、プログラム変換装置200を柔軟に運用することが可能となる。
(第4の実施の形態)
図10に、本発明の更に他の実施の形態に係るプログラム変換装置200の詳細構成の一例を示す。図に示すように、プログラム変換装置200は、プログラムを格納し実行するメモリ600と、一連の処理を実行するプロセッサ610と、プログラムやオペレーティングシステム(OS)を格納する不揮発記憶装置620と、通信ネットワーク650とインターフェースをとる通信インターフェース(IF)630と、これら要素の間でデータ転送するデータバス640とを含んで形成されている。
メモリ600は、XMLパーサ601、解釈プログラム602、HTTPサーバ603、取得プログラム604、変換プログラム605、OS606を保持するとともに、これらのプログラムで使用するスタックやヒープ、バッファ(図示省略)を保持している。組み込み計算機が利用される分野では、メモリの使用量を減らすために、不揮発記憶装置620にプログラムの命令データを有する場合もある。本実施の形態では、メモリ上にプログラムの命令データを展開する例を示すが、本発明はプログラムがメモリ600あるいは不揮発記憶装置620のいずれにあっても実施可能である。プロセッサ610は、メモリ上のプログラムの命令データを読み込み実行し、所望の機能を実現する。また、プログラミング装置100とコントローラ300と通信するために、プロセッサ610は通信IF630と通信ネットワーク650を介して通信を行うようになっている。
解釈プログラム602とHTTPサーバ603、XMLパーサ601は、図1又は図8の解釈制御部210の機能に対応する。同様に、取得プログラム604は変換データ取得部220、変換プログラム605は変換実行部230に相当する。また、不揮発記憶装置620は記憶装置240の機能を兼ねる。OS606は、これらのプログラムを実行するための基本ソフトウェアであり、ハードウェアを制御するドライバや、通信プロトコルのソフトウェア群、プログラムの資源を管理するスケジューラ等から成る。
次に、図10に示すプログラム変換装置200の動作を説明する。HTTPサーバ603では、プログラミング装置100からのメッセージを受信し、解釈プログラム602を起動する。解釈プログラム602は、HTTPサーバ603のCGIプログラムとして実装されるのが好適である。メッセージを受けた解釈プログラム602は、XML形式で記述されたメッセージをXMLパーサ601に通知し、妥当性検証及び解釈を行う。そして、解釈の結果抽出された変換タイプを取得プログラム604に渡す。
取得プログラム604は、不揮発記憶装置620を検索して、対応する変換タイプの変換オブジェクトを獲得する。対応する変換タイプの変換オブジェクトが不揮発記憶装置620に存在しなければ、図9のフローチャートに従い、通信ネットワーク650を介して、プログラム変換装置200の外部から取得する。その後、取得プログラム604は取得した変換オブジェクトを用いて、変換プログラム605の設定を行う。取得プログラム604により変換プログラム605の設定完了が解釈プログラム602に通知されると、解釈プログラム60は変換プログラム605に受信したメッセージを通知し、受信されたメッセージの変換を依頼する。変換されたメッセージは、変換プログラム605よりコントローラ300に送信される。
変換プログラム605としては、プロセッサ610の機械語にて記述された直接実行可能プログラムのみならず、プラットフォーム独立の中間言語で記述された変換プログラムを利用しても良い。例えば、変換プログラム605を、Java(登録商標)等の仮想機械(VM)と、仮想機械上で実行されるJava(登録商標)バイトコード等の中間言語プログラムにより構成する。そして、コントローラ300に依存する部分を中間言語プログラムで実装することで、コントローラ300に対応する変換プログラムをプログラム変換装置200のプロセッサアーキテクチャ毎に用意する必要がなくなる。この場合の中間言語プログラムは、図8に示したように、コントローラ300の記憶装置320又は外部の記憶装置430に格納する。
このように構成されることから、本実施形態によれば、図1の実施形態と同一の効果が得られる他、遠隔からコントローラ300を管理することができる。また、利用可能なプログラミング装置として、プラットフォーム独立な言語を実行可能な計算機とすることで、計算機アーキテクチャやOSに依存することなくプログラミング装置を構成できる。その結果、コントローラ300のユーザは、長期に渡り安定してプログラムの管理をすることができる。
(第5の実施の形態)
図11に、本発明の更に他の実施の形態に係るコントローラ管理システムの全体構成を示す。本実施形態は、前述した他の実施形態に比べて次の点が異なる。すなわち、コントローラ300は記憶装置301とは別に記憶装置330を有する。この記憶装置330は、プログラミング装置100から送信されるデータを格納可能に形成され、変換実行部230’は記憶装置330からデータを取得可能に構成されている。
図12に、本実施形態の処理流れのシーケンス図を示す。なお、図12のシーケンス図における事象に付加された番号は、断りのない限り図5に示した事象と同一である。図示のように、プログラミング装置100は、作成したプログラム部分をコントローラ300の記憶装置330に送信する(事象520)。その後、プログラム部分を省略したメッセージをプログラム変換装置200に送信する(事象500)。ここで、メッセージには、プログラムが外部に格納される旨の情報を含める。望ましくは、プログラム部分を示すタグの属性として、プログラムが格納されるURL(Uniform Resource Locator)の情報を含める。その後の事象501から事象507は、図5の対応する事象と同様である。受信メッセージの通知を事象507で受けた変換実行部230’は、受信したメッセージによって外部にプログラムが格納されている旨を認識し、コントローラ300にプログラムを要求する(事象521)。その後、解釈制御部210から通知されたメッセージと、取得したプログラムとから変換実行部230’にてプログラムの変換を行い、メッセージをコントローラ300に送信する(事象508)。
コントローラ300を制御するプログラムは、作成した後にも管理のためにプログラム原本が必要となることが多々ある。そのような場合でも本実施形態によれば、作成したプログラム原本をコントローラ自身が保有することになるので、プログラムを開発したプログラミング装置100だけでなく、他のプログラミング装置においても、コントローラ300にアクセスしてプログラムを逆変換することなく、プログラムの変更、参照が可能となる。
上述したように、本実施形態によれば、図1の実施形態の効果に加えて、プログラミング装置100にて生成されたプログラムの原本、望ましくはXML形式にて記述されたプログラム原本を、コントローラ300に保存するようにしているので、プログラミング装置100が異なる装置に代っても、長期に渡ってコントローラ300のプログラムの管理が容易になる。
(第6の実施の形態)
図13に、本発明の他の実施の形態に係るコントローラ管理システムの全体構成を示す。本実施の形態は、先に説明した実施形態の構成と比べて次の点が異なる。すなわち、プログラミング装置100a〜100nはブラウザ111を有して構成される。また、プログラミング装置100a〜100nはプログラム変換装置の機能を備えて構成される。さらに、コントローラ300は、記憶装置301、記憶装置330、サーバ310と記憶装置320を備えて構成される。また、複数のプログラミング装置100a〜100nは、通信ネットワーク651を介してコントローラ300に接続されている。
本実施形態の処理流れを、図14に示すシーケンス図に従って説明する。図14における事象に付加された番号は、断りのない限り図12における事象と同一である。まず、プログラミング装置100aはブラウザを起動する(事象540)。その後ユーザの指示(例えば、URLの入力)により、エディタ110のプログラムをコントローラ300へ要求する(事象541)。ここで、エディタ110がJava(登録商標)バイトコード等の中間言語プログラムで用意されていれば、コントローラ300にてプログラミング装置のアーキテクチャ毎に変換プログラムを用意しなくても良いから好適である。その後、取得したエディタ110にて、コントローラ300に対するプログラムを記述する(事象542)。事象520から始まり事象508に至るまでの動作は、図12における事象と同様である。
本実施形態によれば、プログラミング装置100a〜100nは、コントローラ300のプログラムやコントローラ300に関するデータを持たなくても、コントローラ300のプログラムを作成、編集等することができる。さらに、コントローラ300にエディタ等のプログラム編集手段を格納することにより、異なるプログラミング装置間でコントローラ300を制御するプログラムを管理することが可能となる。例えば、Java(登録商標)のVMを実行する複数の携帯電話から、一つのコントローラ300のプログラムを管理することが可能である。つまり、エディタや変換オブジェクトをJava(登録商標)バイトコード等の中間言語プログラムで用意することで、携帯電話のような計算機であっても、プログラミング装置として利用することが可能となる。その結果、場所や時間を選ばずに、コントローラ300を管理することが可能となる。
さらには、本実施形態に示す構成より、記憶装置240を省略することが可能となる。これにより、プログラミング装置100をより安価に構成することができる。
(第7の実施の形態)
図15に、本発明に係る一実施の形態のプログラミング装置の編集画面に関する一例を示す。メインウィンドウ700は、エディット画面701とコントローラタイプセレクタ702を有する。コントローラのプログラムを作成するユーザは、エディット画面701上でコントローラ300を制御するプログラムを編集する。例えば、IEC61131-3に準拠した制御記述言語を利用することができる。又は、テキストで記述する等が考えられる。さらに、ユーザは、エディタが生成する標準形式のプログラムを、どのコントローラに適するタイプに変換するか、例えば図示のように、「PLC−A、PLC−B、PLC-C、…PLC−X」の中から「PLC−B」をコントローラタイプセレクタ702で指定する。コントローラタイプセレクタ702で選んだタイプは、直接的あるいは間接的に図2に示したコントローラタイプを示すデータに反映される。
本発明の第1の実施形態に係るコントローラ管理システムの全体構成を示すブロック図である。 本発明に係るプログラミング装置から出力されるXML形式のメッセージの一例を示す図である。 図2のXML形式メッセージの変形例を示す図である。 変換元のメッセージと変換後のメッセージを対比して説明する図である。 図1のコントローラ管理システムの動作を説明するシーケンス図である。 本発明の第2の実施形態に係る変換実行部の具体的な構成を示す図である。 図7の変換実行部で使用する変換プロファイルの一例を示す図である。 本発明の第3の実施形態に係るコントローラ管理システムの全体構成を示すブロック図である。 図8の実施形態に係る変換データ取得部の処理手順を示すフローチャートである。 本発明の第4の実施形態に係るコントロール管理システムの全体構成を示し、特にプログラム変換装置の詳細な構成を示す図である。 本発明の第5の実施形態に係るコントロール管理システムの全体構成を示す図である。 図11のコントローラ管理システムの動作を説明するシーケンス図である。 本発明の第6の実施形態に係るコントロール管理システムの全体構成を示す図である。 図13のコントローラ管理システムの動作を説明するシーケンス図である。 本発明の第7の実施形態に係るプログラミング装置のプログラム編集画面の一例である。
符号の説明
100、100a〜100n…プログラミング装置
110…エディタ
111…ブラウザ
200…プログラム変換装置
210…解釈制御部
220…変換規則取得部
230、230’ …変換実行部
240…記憶装置
250…変換実行部
251…変換処理機能
252a〜232x…プロファイル
300…コントローラ
301、320、330、430…記憶装置
310、420…サーバ
400…制御対象、
410…通信ネットワーク

Claims (6)

  1. 記憶手段に格納された第2のプログラム記述及びデータの形式の制御プログラムに従って制御対象を制御する計算機を備えたコントローラに通信ネットワークを介して通信可能に設けられ、
    前記制御プログラムを第1のプログラム記述及びデータの形式で作成するエディタを備えたプログラミング部と、該プログラミング部により作成された第1のプログラム記述及びデータの形式の前記制御プログラムを入力し、該制御プログラムを変換規則である中間言語プログラムの変換オブジェクトを有して構成される変換プログラムを用いて、第2のプログラム記述及びデータの形式の前記制御プログラムに変換して前記コントローラに出力するプログラム変換部とを有し、
    前記コントローラの記憶手段には、前記変換プログラムのうちの前記変換オブジェクトが格納され、
    前記プログラム変換部は、前記第1のプログラム記述及びデータの形式の制御プログラムで指定される変換タイプに対応する前記変換オブジェクトの転送を前記コントローラに要求し、該要求に応じて前記コントローラから転送される前記変換オブジェクトを用いて前記変換プログラムを設定して、前記第1のプログラム記述及びデータの形式の前記制御プログラムを第2のプログラム記述及びデータの形式の前記制御プログラムに変換するコントローラ用のプログラミング装置。
  2. 請求項1において、
    前記コントローラの記憶手段には、前記プログラミング部のエディタによって第2のプログラム記述及びデータの形式の前記制御プログラムを作成するための制御プログラム作成用プログラムが格納され、
    前記プログラミング部は、前記コントローラに前記制御プログラム作成用プログラムを要求し、前記エディタは前記要求に応じて前記コントローラから転送される前記制御プログラム作成用プログラムを用いて、第2のプログラム記述及びデータの形式の制御プログラムを作成して前記コントローラに出力することを特徴とするコントローラ用のプログラミング装置。
  3. 請求項1又は2において、
    前記中間言語プログラムはJava(登録商標)バイトコードであることを特徴とするコントローラ用のプログラミング装置。
  4. 記憶手段に格納された第2のプログラム記述及びデータの形式の制御プログラムに従って制御対象を制御する計算機を備え、通信ネットワークを介してプログラミング装置と通信可能に形成されたコントローラであって、
    ログラミング装置により第1のプログラム記述及びデータの形式で作成され、さらに、変換規則である中間言語プログラムの変換オブジェクトを有して構成される変換プログラムを用いて第2のプログラム記述及びデータの形式に変換された前記制御プログラムを、前記通信ネットワークを介して取り込み前記記憶手段に格納された前記制御プログラムを書換える手段と、
    前記変換プログラムのうちの前記変換オブジェクトが格納された記憶手段と、
    前記プログラミング装置から前記通信ネットワークを介して入力される前記第1のプログラム記述及びデータの形式の制御プログラムで指定される変換タイプに対応する前記変換オブジェクトの転送の要求に応じて、前記変換オブジェクトを前記プログラミング装置に前記通信ネットワークを介して転送する手段とを備えてなるコントローラ。
  5. 請求項4において、
    前記プログラミング装置のエディタによって第2のプログラム記述及びデータの形式の前記制御プログラムを作成するための制御プログラム作成用プログラムを格納した記憶手段と、
    前記通信ネットワークを介して入力される要求に応じて、前記制御プログラム作成用プログラムを前記プログラミング装置に前記通信ネットワークを介して転送することを特徴とするコントローラ。
  6. 請求項1乃至3のいずれか1項に記載のプログラミング装置と、請求項4又は5に記載のコントローラとを通信ネットワークを介して接続してなるコントローラ管理システム。
JP2007241615A 2007-09-18 2007-09-18 コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム Expired - Fee Related JP4776602B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007241615A JP4776602B2 (ja) 2007-09-18 2007-09-18 コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007241615A JP4776602B2 (ja) 2007-09-18 2007-09-18 コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002198773A Division JP2004038876A (ja) 2002-07-08 2002-07-08 プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム

Publications (2)

Publication Number Publication Date
JP2008077659A JP2008077659A (ja) 2008-04-03
JP4776602B2 true JP4776602B2 (ja) 2011-09-21

Family

ID=39349586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007241615A Expired - Fee Related JP4776602B2 (ja) 2007-09-18 2007-09-18 コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム

Country Status (1)

Country Link
JP (1) JP4776602B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5535184B2 (ja) * 2011-12-09 2014-07-02 株式会社日立システムズ ブラウザ実行スクリプト変換システムおよびブラウザ実行スクリプト変換プログラム
EP3413147B1 (en) * 2017-06-07 2022-03-23 Brooks Automation (Germany) GmbH Method for controlling a plc using a pc program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334225A (ja) * 1994-06-10 1995-12-22 Fanuc Ltd Cncのプログラム実行方式
JPH09106352A (ja) * 1995-10-11 1997-04-22 Canon Inc 情報処理方法及びその装置
JP2000172509A (ja) * 1998-09-30 2000-06-23 Matsushita Electric Ind Co Ltd プログラム協調実行装置
JP2001075890A (ja) * 1999-09-09 2001-03-23 Fuji Xerox Co Ltd ドキュメント配信システム
JP3618632B2 (ja) * 2000-03-30 2005-02-09 株式会社デジタル 制御用端末装置、制御システム、および、そのプログラムが記録された記録媒体
DE10195965T1 (de) * 2000-03-24 2003-04-03 Siemens Energy & Automat Speicherung und Übertragung einer grafischen Progammiersprache für ein industrielles Automationssystem
JP2002189508A (ja) * 2000-12-20 2002-07-05 Digital Electronics Corp 制御装置、および、そのプログラムが記録された記録媒体

Also Published As

Publication number Publication date
JP2008077659A (ja) 2008-04-03

Similar Documents

Publication Publication Date Title
US7562352B2 (en) Data format conversion method and equipment, and controller management system using data format conversion equipment
CN108769109B (zh) 一种物联网异构设备数据的统一处理方法及系统
US7555706B2 (en) Human machine interface
US8190274B2 (en) Method and control device for controlling an automating system
KR100484804B1 (ko) 가전기기 원격제어시스템 및 그 동작방법
US8196155B2 (en) XML-based event driven interface for OPC data access
WO2013114926A1 (ja) サポート装置、サポートプログラムを記録した記録媒体、および実行可能プログラムを生成する方法
US20060265469A1 (en) XML based scripting framework, and methods of providing automated interactions with remote systems
JP2002215486A (ja) Wsdlに基づいたコントローラ装置用通信システム
CN101763043B (zh) 用于自动化协同框架的方法和系统
CN111026439B (zh) 应用程序的兼容方法、装置、设备及计算机存储介质
US20170262263A1 (en) Process and system for the generation of an operating program in the form of a mobile application that is capable of operating on a mobile device
Veiga et al. Experiments with service-oriented architectures for industrial robotic cells programming
WO2007132568A1 (ja) データ処理サーバ及びデータ処理方法
JP5039946B2 (ja) クライアント装置およびサーバ装置の間の通信を中継する技術
Gosewehr et al. Assessment of industrial middleware technologies for the PERFoRM project
WO2014061516A1 (ja) 異なるタイプのロボットミドルウェア間を連携する変換モジュールの生成方法及び装置
JP4776602B2 (ja) コントローラ用のプログラミング装置、コントローラ及びコントローラ管理システム
JP4500484B2 (ja) コントローラおよび情報通信サービス方法
JP4561331B2 (ja) 家電機器アダプタおよびソフトウェア開発装置
Cabral et al. Native OPC UA handling and IEC 61499 PLC integration within the arrowhead framework
CN113590116A (zh) 一种在OA系统中基于BS模式非嵌入式使用Office的方法
KR20060079648A (ko) 통합 브라우징 시스템 및 그 방법
CN102870428B (zh) Iptv终端中的方法和装置
CN112639730A (zh) 用于程序文件编写和运行处理的方法及装置、系统

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110221

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: 20110607

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110628

R150 Certificate of patent or registration of utility model

Ref document number: 4776602

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees