JP2004038876A - プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム - Google Patents

プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム Download PDF

Info

Publication number
JP2004038876A
JP2004038876A JP2002198773A JP2002198773A JP2004038876A JP 2004038876 A JP2004038876 A JP 2004038876A JP 2002198773 A JP2002198773 A JP 2002198773A JP 2002198773 A JP2002198773 A JP 2002198773A JP 2004038876 A JP2004038876 A JP 2004038876A
Authority
JP
Japan
Prior art keywords
data format
conversion
program
data
controller
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.)
Pending
Application number
JP2002198773A
Other languages
English (en)
Inventor
Hiromichi Endo
Hirokazu Kasashima
Noritake Matsumoto
Masahiko Saito
Shoji Suzuki
Tsutomu Yamada
Manabu Yamauchi
山内 学
山田 勉
松本 典剛
笠嶋 広和
遠藤 浩通
鈴木 昭二
齊藤 雅彦
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 JP2002198773A priority Critical patent/JP2004038876A/ja
Publication of JP2004038876A publication Critical patent/JP2004038876A/ja
Application status is Pending legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36231Translate, convert machine independent to machine dependent program

Abstract

【課題】コントローラを管理するシステムの汎用性ないし柔軟性を高める。
【解決手段】プログラミング装置100から出力される第1データ形式のプログラム等を含む入力情報を取り込む受信手段と、取り込まれた入力情報に含まれるデータ形式の変換指令を抽出する解釈手段と、該抽出された変換指令に対応するデータ形式の変換規則を取得する変換データ取得手段と、取得された変換規則に基づいて第1データ形式のプログラム等を第2データ形式に変換する変換実行手段とを計算機により構成したデータ形式変換装置200を設け、これにより変換した第2データ形式のプログラム等をコントローラに出力することにより、コントローラのデータ形式と異なる任意のデータ形式でプログラム等を作成することができるようにしたことを特徴とする。
【選択図】  図1

Description

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

  1. 第1データ形式のプログラム等を含む入力情報に含まれるデータ形式の変換指令で指定される変換規則に基づいて、第1データ形式のプログラム等を第2データ形式のプログラム等に変換するデータ形式変換方法。
  2. 前記変換指令は、少なくとも1つの第1データ形式に対応させて複数の異なる第2データ形式に変換する複数の変換規則の1つを指定するものであることを特徴とする請求項1に記載のデータ形式変換方法。
  3. 前記変換規則は、通信ネットワークを介して取得することを特徴とする請求項1に記載のデータ形式変換方法。
  4. 通信ネットワークから第1データ形式のプログラム等を含む入力情報を取り込む受信手段と、取り込まれた入力情報に含まれるデータ形式の変換指令を抽出する解釈手段と、該抽出された変換指令に対応するデータ形式の変換規則を取得する変換データ取得手段と、取得された変換規則に基づいて第1データ形式のプログラム等を第2データ形式のプログラム等に変換する変換実行手段と、該変換されたプログラム等を通信ネットワークに出力する送信手段とを構成する計算機を備えてなるデータ形式変換装置。
  5. 第1データ形式のプログラム等を第2データ形式のプログラム等に変換する変換規則が格納された記憶手段を備え、前記記憶手段は、少なくとも1つの第1データ形式に対応させて複数の異なる第2データ形式に変換する複数の変換規則を記憶してなり、前記変換データ取得手段は、前記記憶手段から前記変換指令に対応した変換規則を取得することを特徴とする請求項4に記載のデータ形式変換装置。
  6. 前記変換データ取得手段は、前記受信手段を介して外部に設けられた記憶手段に格納された前記変換規則を前記通信ネットワークから取得することを特徴とする請求項5に記載のデータ形式変換装置。
  7. 前記外部に設けられた記憶手段は、前記通信ネットワークに通信可能に接続された記憶手段又は前記通信ネットワークに通信可能に接続された組み込み計算機を有してなるコントローラに備えられた記憶手段であることを特徴とする請求項6に記載のデータ形式変換装置。
  8. 前記変換規則は、第1データ形式を第2データ形式に変換する変換プログラムであり、前記変換実行手段は前記変換プログラムに従って第1データ形式のプログラム等を第2データ形式に変換することを特徴とする請求項4乃至請求項7のいずれかに記載のデータ形式変換装置。
  9. 通信ネットワークから第1データ形式のプログラム等を含む入力情報を取り込む通信手段と、取り込まれた入力情報に含まれるデータ形式の変換指令を抽出する解釈手段と、該抽出された変換指令に対応するデータ形式に変換する変換プログラムを前記通信手段を介して外部から取得する変換データ取得手段と、取得された変換プログラムに従って第1データ形式のプログラム等を第2データ形式に変換して前記通信手段を介して前記通信ネットワークに出力する変換実行手段とを構成する計算機を備えてなり、前記変換プログラムは第1と第2のデータ形式とは異なる第3データ形式に変換した後、第2のデータ形式に変換するものであるデータ形式変換装置。
  10. 前記変換データ取得手段は、前記受信手段を介して外部に設けられた記憶手段にアクセスして前記変換変換プログラムを前記通信ネットワークから取得することを特徴とする請求項9に記載のデータ形式変換装置。
  11. 前記変換実行手段は、仮想機械と第3データ形式に変換する中間変換手段とから構成されてなることを特徴とする請求項9又は10に記載のデータ形式変換装置。
  12. 前記仮想機械は、Javaの仮想機械であることを特徴とする請求項11に記載のデータ形式変換装置。
  13. 第1データ形式によりプログラム等を作成し、該作成したプログラム等を第2データ形式に変換する指令を付加したメッセージを作成する計算機を備えてなるプログラミング装置。
  14. 第1データ形式のプログラム等を作成するプログラム作成手段と、該作成されたプログラム等を第2データ形式に変換する指令を付加したメッセージを通信ネットワークに出力する通信手段とを構成する計算機を備えてなるプログラミング装置。
  15. 第1データ形式のプログラム等を第2データ形式に変換する変換指令を入力する入力手段を備えてなることを特徴とする請求項14に記載のプログラミング装置。
  16. 前記計算機は、携帯通信端末に組み込まれた計算機であることを特徴とする請求項13乃至15のいずれかに記載のプログラミング装置。
  17. 通信ネットワークを介して入力される第1データ形式のプログラム等を格納する記憶手段と、通信ネットワークを介して入力される要求に応答して前記記憶手段に格納された第1データ形式のプログラム等を前記通信ネットワークに出力する機能を構成する計算機を備え、予め定められた第2データ形式のプログラム等に従って制御対象を制御するコントローラ。
  18. 記憶手段に格納されている第2データ形式の制御プログラム等に従って制御対象を制御する計算機を備えたコントローラと、該コントローラに通信ネットワークを介して通信可能に設けられたコントローラ管理装置とを備え、該コントローラ管理装置は、前記コントローラの制御プログラム等を第1データ形式により作成するプログラミング装置と、該プログラミング装置により作成された第1データ形式のプログラム等を入力し、該プログラム等を第2データ形式のプログラム等に変換して前記コントローラに出力するデータ形式変換装置とを有してなるコントローラ管理システム。
  19. 前記プログラミング装置と前記データ形式変換装置は、通信ネットワークを介して接続されていることを特徴とする請求項18に記載のコントローラ管理システム。
  20. 前記プログラミング装置は、第1データ形式のプログラム等を第2データ形式に変換する変換指令を入力する入力手段を備え、該変換指令を第1データ形式のプログラム等に付加したメッセージを前記データ形式変換装置に出力することを特徴とする請求項18又は19に記載のコントローラ管理システム。
  21. 第2データ形式の制御プログラム等に従って制御対象を制御する計算機を備えたコントローラを管理する管理方法において、前記コントローラの制御プログラム等を第1データ形式により作成し、該作成された第1データ形式のプログラム等を第2データ形式のプログラム等に変換するデータ形式変換装置を介して前記コントローラに出力するコントローラ管理方法。
JP2002198773A 2002-07-08 2002-07-08 プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム Pending JP2004038876A (ja)

Priority Applications (1)

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

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002198773A JP2004038876A (ja) 2002-07-08 2002-07-08 プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム
US10/613,211 US7562352B2 (en) 2002-07-08 2003-07-07 Data format conversion method and equipment, and controller management system using data format conversion equipment
US12/481,938 US8302081B2 (en) 2002-07-08 2009-06-10 Data format conversion method and equipment, and controller management system using data format conversion equipment

Publications (1)

Publication Number Publication Date
JP2004038876A true JP2004038876A (ja) 2004-02-05

Family

ID=29997111

Family Applications (1)

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

Country Status (2)

Country Link
US (2) US7562352B2 (ja)
JP (1) JP2004038876A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301537A (ja) * 2004-04-09 2005-10-27 Meidensha Corp 自動運転システムおよびこのシステムにおける運転パターンの作成・変更方法
WO2006009287A1 (ja) * 2004-07-20 2006-01-26 Star Game's Corporation 自動変換用プログラムおよびプログラム変換サーバ
JP2006149797A (ja) * 2004-11-30 2006-06-15 Aiphone Co Ltd 患者情報ネットワークシステム
JP2010129040A (ja) * 2008-12-01 2010-06-10 Systems:Kk プログラム変換装置、プログラム分析装置、プログラム変換方法、プログラム分析方法、およびプログラム
JP2010176377A (ja) * 2009-01-29 2010-08-12 Meidensha Corp Plcのプログラム変換ツール
JP2013509050A (ja) * 2009-10-23 2013-03-07 アルカテル−ルーセント ビデオ監視を改善するための方法およびシステム
JP2016062126A (ja) * 2014-09-12 2016-04-25 富士電機株式会社 プログラムコンバート装置
JP2018073055A (ja) * 2016-10-27 2018-05-10 横河電機株式会社 エンジニアリングツール連携装置、エンジニアリングツール連携方法、エンジニアリングツール連携プログラム及び記録媒体

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194733B2 (en) * 2003-06-11 2007-03-20 Microsoft Corporation Transformation of an asynchronous transactional messaging language into a web services compatible language
US8005937B2 (en) * 2004-03-02 2011-08-23 Fatpot Technologies, Llc Dynamically integrating disparate computer-aided dispatch systems
JP4584995B2 (ja) * 2004-07-12 2010-11-24 サムスン エレクトロニクス カンパニー リミテッド デジタル権利オブジェクトを処理する装置および方法
US7440809B2 (en) * 2004-07-14 2008-10-21 York International Corporation HTML driven embedded controller
US7904488B2 (en) 2004-07-21 2011-03-08 Rockwell Automation Technologies, Inc. Time stamp methods for unified plant model
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
KR100678951B1 (ko) * 2005-01-11 2007-02-06 삼성전자주식회사 제어 장치의 해상도에 따라 홈 네트워크 기기에 대한 제품제어 코드를 생성하는 장치 및 방법
US7672737B2 (en) 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
US7676281B2 (en) 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
US7809683B2 (en) * 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
US8799800B2 (en) * 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7650405B2 (en) * 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US20070067458A1 (en) * 2005-09-20 2007-03-22 Rockwell Software, Inc. Proxy server for integration of industrial automation data over multiple networks
US7548789B2 (en) * 2005-09-29 2009-06-16 Rockwell Automation Technologies, Inc. Editing lifecycle and deployment of objects in an industrial automation environment
US7881812B2 (en) * 2005-09-29 2011-02-01 Rockwell Automation Technologies, Inc. Editing and configuring device
US7801628B2 (en) 2005-09-30 2010-09-21 Rockwell Automation Technologies, Inc. Industrial operator interfaces interacting with higher-level business workflow
US7734590B2 (en) 2005-09-30 2010-06-08 Rockwell Automation Technologies, Inc. Incremental association of metadata to production data
US7660638B2 (en) * 2005-09-30 2010-02-09 Rockwell Automation Technologies, Inc. Business process execution engine
US8484250B2 (en) * 2005-09-30 2013-07-09 Rockwell Automation Technologies, Inc. Data federation with industrial control systems
US7650196B2 (en) * 2005-09-30 2010-01-19 Rockwell Automation Technologies, Inc. Production monitoring and control system having organizational structure-based presentation layer
US8275680B2 (en) * 2005-09-30 2012-09-25 Rockwell Automation Technologies, Inc. Enabling transactional mechanisms in an automated controller system
US7526794B2 (en) * 2005-09-30 2009-04-28 Rockwell Automation Technologies, Inc. Data perspectives in controller system and production management systems
US7738448B2 (en) * 2005-12-29 2010-06-15 Telefonaktiebolaget Lm Ericsson (Publ) Method for generating and sending signaling messages
US7962919B2 (en) * 2006-03-29 2011-06-14 Intel Corporation Apparatus and method for modifying an initial event queue for extending an XML processor's feature set
US8315988B2 (en) * 2006-08-31 2012-11-20 Sap Ag Systems and methods for verifying a data communication process
US7519614B2 (en) * 2006-08-31 2009-04-14 Sap Ag Data verification systems and methods using business objects
US8484167B2 (en) * 2006-08-31 2013-07-09 Sap Ag Data verification systems and methods based on messaging data
US8079027B2 (en) * 2006-09-08 2011-12-13 Via Technologies, Inc. Programming language translation systems and methods
US8127035B1 (en) * 2006-09-28 2012-02-28 Rockwell Automation Technologies, Inc. Distributed message engines and systems
US8131832B1 (en) 2006-09-28 2012-03-06 Rockwell Automation Technologies, Inc. Message engine searching and classification
US8812684B1 (en) * 2006-09-28 2014-08-19 Rockwell Automation Technologies, Inc. Messaging configuration system
US8782249B1 (en) 2006-09-28 2014-07-15 Rockwell Automation Technologies, Inc. Message engine
US7921244B2 (en) * 2007-07-04 2011-04-05 Ours Technology, Inc. Data sharing and transfer systems and methods
CN101840216B (zh) * 2009-03-17 2013-09-18 鸿富锦精密工业(深圳)有限公司 可编程控制器的参数设定系统及方法
US20110202635A1 (en) * 2010-02-18 2011-08-18 Alcatel-Lucent Canada Inc. Policy controller application enablement api for wireline/wireless converged solution
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
JP5496792B2 (ja) * 2010-06-29 2014-05-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コード変換プログラム、方法及びシステム
US8719317B1 (en) * 2010-12-30 2014-05-06 The United States Of America As Represented By The Secretary Of The Navy Structured data conversion system
KR101975840B1 (ko) 2011-12-23 2019-05-10 두산공작기계 주식회사 이기종 수치제어장치를 위한 공작기계 정보 관리 장치 및 그 방법
JP5942446B2 (ja) * 2012-02-01 2016-06-29 オムロン株式会社 サポート装置およびサポートプログラム
US9219772B2 (en) 2013-03-06 2015-12-22 Ringcentral, Inc. Persistent format conversions
CN103473372B (zh) * 2013-09-29 2018-09-18 北大医疗信息技术有限公司 管理服务器、多维镜像服务系统和多维镜像数据管理方法
US10216742B2 (en) * 2015-08-28 2019-02-26 Honeywell International Inc. Converting data sets in a shared communication environment

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778742B2 (ja) * 1992-08-12 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピユータ・プログラム言語変換装置及びその方法
US5493671A (en) * 1993-06-04 1996-02-20 Marcam Corporation Method and apparatus for conversion of database data into a different format on a field by field basis using a table of conversion procedures
US5878422A (en) * 1996-04-09 1999-03-02 Viasoft, Inc. System for virtually converting data in a field between first and second format by using hook routines
US6256068B1 (en) * 1996-05-08 2001-07-03 Matsushita Electric Industrial Co., Ltd. Image data format conversion apparatus
JPH1165629A (ja) * 1997-08-21 1999-03-09 Okuma Mach Works Ltd 数値制御システム
US6330613B1 (en) * 1997-09-10 2001-12-11 Nortel Networks Limited System for dynamically downloading a software image to a digital modem
US6820266B1 (en) * 1998-02-27 2004-11-16 Oracle International Corporation Application code conversion architecture
JP2000172509A (ja) 1998-09-30 2000-06-23 Matsushita Electric Ind Co Ltd プログラム協調実行装置
US6539433B1 (en) * 1998-09-30 2003-03-25 Matsushita Electric Industrial Co., Ltd. System for distributing native program converted from Java bytecode to a specified home appliance
US6405366B1 (en) * 1999-05-28 2002-06-11 Electronic Data Systems Corporation Multi-layered software application interface architecture
JP4010516B2 (ja) * 2000-01-27 2007-11-21 株式会社日立製作所 変換規則導出システム
DE10195965T1 (de) * 2000-03-24 2003-04-03 Siemens Energy & Automat Speicherung und Übertragung einer grafischen Progammiersprache für ein industrielles Automationssystem
US6671701B1 (en) * 2000-06-05 2003-12-30 Bentley Systems, Incorporated System and method to maintain real-time synchronization of data in different formats
KR100425831B1 (ko) * 2001-01-08 2004-04-03 엘지전자 주식회사 개인정보 단말기에서의 데이터 저장방법
US7640153B2 (en) * 2001-06-04 2009-12-29 Hewlett-Packard Development Company, L.P. Networked client-server architecture for transparently transforming and executing applications
US6980137B2 (en) * 2002-03-22 2005-12-27 Hewlett-Packard Development Company, L.P. Systems and methods for data conversion

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005301537A (ja) * 2004-04-09 2005-10-27 Meidensha Corp 自動運転システムおよびこのシステムにおける運転パターンの作成・変更方法
WO2006009287A1 (ja) * 2004-07-20 2006-01-26 Star Game's Corporation 自動変換用プログラムおよびプログラム変換サーバ
JP2006149797A (ja) * 2004-11-30 2006-06-15 Aiphone Co Ltd 患者情報ネットワークシステム
JP2010129040A (ja) * 2008-12-01 2010-06-10 Systems:Kk プログラム変換装置、プログラム分析装置、プログラム変換方法、プログラム分析方法、およびプログラム
JP2010176377A (ja) * 2009-01-29 2010-08-12 Meidensha Corp Plcのプログラム変換ツール
JP2013509050A (ja) * 2009-10-23 2013-03-07 アルカテル−ルーセント ビデオ監視を改善するための方法およびシステム
JP2016062126A (ja) * 2014-09-12 2016-04-25 富士電機株式会社 プログラムコンバート装置
JP2018073055A (ja) * 2016-10-27 2018-05-10 横河電機株式会社 エンジニアリングツール連携装置、エンジニアリングツール連携方法、エンジニアリングツール連携プログラム及び記録媒体

Also Published As

Publication number Publication date
US8302081B2 (en) 2012-10-30
US20040006401A1 (en) 2004-01-08
US20090259676A1 (en) 2009-10-15
US7562352B2 (en) 2009-07-14

Similar Documents

Publication Publication Date Title
US7287062B2 (en) Home network system and method for operating the same
US5966451A (en) Distributed network computing system, and data exchange apparatus and method and storage medium used in this system
US7353073B2 (en) Method for managing appliances
US7606879B2 (en) System and method for remote device management
US7490138B2 (en) System for distributed programmable control
US7739078B2 (en) System for managing appliances
DE69926368T2 (de) Verfahren und vorrichtung für universellen zugriffsbefehl und kontrollinformation in einem netzwerk
CN101127655B (zh) 集成现有基于万维网的系统的方法和系统
US6170007B1 (en) Embedding web access functionality into a device for user interface functions
US6742181B1 (en) Inter-application data transmitting/receiving system and method
US7937496B2 (en) Control server, control terminal, control system, and recording medium storing control communication program
US20030060896A9 (en) Software, devices and methods facilitating execution of server-side applications at mobile devices
US6481621B1 (en) System method and article of manufacture for accessing and processing smart card information
US7970941B2 (en) Control server, control terminal, control system, and recording medium storing control communication program
US8046444B2 (en) Universal network adapter for industrial control networks
US7346842B1 (en) Methods and apparatus for incorporating a partial page on a client
JP2004318842A (ja) Webページ生成装置、組み込み装置、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体
US20030084120A1 (en) Software framework for web-based applications
CA2279382C (en) Web request broker controlling multiple processes
US8108543B2 (en) Retrieving data from a server
US20020046239A1 (en) Communication system of an automation equipment based on the soap protocol
US20040117409A1 (en) Application synchronisation
EP2182418A2 (de) Verfahren und Vorrichtung zum Zugreifen auf ein Funktionsmodul eines Automatiersierungssystems
US7917232B2 (en) Building automation system data management
US7870090B2 (en) Building automation system date management

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20040420

Free format text: JAPANESE INTERMEDIATE CODE: A621

A131 Notification of reasons for refusal

Effective date: 20070410

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070717

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070918

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071023