(57)【特許請求の範囲】
【請求項１】
機械を制御するプログラマブルロジックコントローラ（４００）のためのアプリケーションプログラムコードを自動生成する方法において、
前記プログラマブルロジックコントローラ用の選択可能なプログラムコードスニペット（２１０、２２０、２３０）を早期の第１時点において用意し、
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは前記機械のエネルギー消費源の少なくとも１つの省エネルギー機能をアクティベートするように構成されており、
前記少なくとも１つの省エネルギー機能は省エネルギー機能特性を有しており、
前記アプリケーションプログラムコードは、後の第２時点において、ユーザによって選択されたプログラムコードスニペット（２１０、２２０、２３０）を結合することにより自動生成される
ことを特徴とする、機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する方法。
【請求項２】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、プログラミング時点において既知の省エネルギー機能特性を備えた少なくとも１つの省エネルギー機能をアクティベートするように構成されている、
請求項１に記載の方法。
【請求項３】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、装置ライブラリデータから取り出される省エネルギー機能特性を備えた少なくとも１つの省エネルギー機能をアクティベートするように構成されている、
請求項１又は２に記載の方法。
【請求項４】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、ユーザによって入力される省エネルギー機能特性を備えた少なくとも１つの省エネルギー機能をアクティベートするように構成されている、
請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、前記ＰＬＣアプリケーションプログラムの実行時に読み出される省エネルギー機能特性を備えた少なくとも１つの省エネルギー機能をアクティベートするように構成されている、
請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、プログラミング中に読み出される省エネルギー機能特性を備えた少なくとも１つの省エネルギー機能をアクティベートするように構成されている、
請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記省エネルギー機能特性は、省エネルギー状態における消費電力、生産動作の復旧のための所要時間、生産動作の復旧のための消費エネルギー又は生産動作中の平均消費電力である、
請求項１から６のいずれか１項に記載の方法。
【請求項８】
前記少なくとも１つの省エネルギー機能は少なくとも１つの省エネルギー状態、特に生産動作中のスタンバイモード、休憩モード及びメンテナンスモードを含む、
請求項１から７のいずれか１項に記載の方法。
【請求項９】
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは、少なくとも１つの省エネルギー機能をアクティベートするために、動作モードの構成要素として用意される、
請求項１から８のいずれか１項に記載の方法。
【請求項１０】
機械を制御するプログラマブルロジックコントローラ（４００）のためのアプリケーションプログラムコードを自動生成する計算ユニット（１００）において、
前記プログラマブルロジックコントローラ用の選択可能なプログラムコードスニペット（２１０、２２０、２３０）を用意する手段を備え、
前記選択可能なプログラムコードスニペット（２１０、２２０、２３０）の少なくとも１つは前記機械のエネルギー消費源の少なくとも１つの省エネルギー機能をアクティベートするように構成されており、
前記少なくとも１つの省エネルギー機能は省エネルギー機能特性を有しており、
ユーザによって選択されたプログラムコードスニペット（２１０、２２０、２３０）を結合することにより前記アプリケーションプログラムコードを自動生成する手段をさらに備える
ことを特徴とする、機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する計算ユニット（１００）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する方法に関する。
【背景技術】
【０００２】
プログラマブルロジックコントローラ（ＰＬＣ）は、機械又はプラントの開ループ制御もしくは閉ループ制御に使用されるデジタル方式でプログラムされる装置である。
【０００３】
ＰＬＣは、最も単純な形態では、入力部と、出力部と、オペレーティングシステム（ファームウェア）と、アプリケーションプログラムをロードするためのインタフェースとを有する。アプリケーションプログラムは入力に依存して出力をどのようにスイッチングするかを定める。また、駆動制御（動き制御、加速度又は減速度の管理による回転数制御）もＰＬＣを介して実現される。
【０００４】
オペレーティングシステム（ファームウェア）は、アプリケーションプログラムがセンサの現在の状態をつねに利用できるよう保証する。これらの情報に基づいて、アプリケーションプログラムは、機械又はプラントが望み通りに機能するように出力をスイッチングすることができる。
【０００５】
ＰＬＣはセンサとアクチュエータとを介して機械又はプラントに結び付けられる。センサはＰＬＣの入力部に接続されており、機械又はプラント内のイベントをＰＬＣに仲介する。センサの例として、例えば、光バリア、インクリメンタルセンサ、リミットスイッチ又は温度感知器、レベルセンサ等が挙げられる。アクチュエータはＰＬＣの出力部に接続されており、機械又はプラントを制御する手段を提供する。アクチュエータの例は、電動機に通電するための開閉板、油圧油又は圧縮空気に対する電磁弁である。
【０００６】
センサ及びアクチュエータとＰＬＣとの接続はフィールドバスを介して行われることが益々多くなっており、もはや個別的には行われない。その結果、配線コストが低下する。近来では、センサとアクチュエータだけでなく、入力モジュールや出力モジュールのようなＰＬＣの一部も、バス及び（バス）インタフェースモジュールを介して中央ステーションに結合される（分散周辺機器）。現代のプラントでは、バスシステムはネットワーク（例えばSERCOS III、Profi-Net）に置き換えられているか、又はネットワークによって補われる。バスシステムに比べて、ネットワーク（イーサネット）は柔軟かつ高速である。
【０００７】
機械及びプラントの自動化において、自動化の解決手段を提供する機能の他に、効率的なエンジニアリングという側面が重要性を増してきている。その場合、何よりも、適用業務を効率的なプログラムコードで短期間に見通しよくモデル化することが問題となる。特に、大部分が軸を協調して動かすことを旨とするモーションアプリケーションの自動化は特殊である。それゆえ、ＰＬＣ用のアプリケーションプログラムコードの生成を容易にするためのプログラミングツールが機械メーカーによって開発されている。プログラミングはふつう適切なソフトウェアを用いてプログラミング装置で行われる（例えば、ＰＣ又は専用システム上でマイクロソフトウィンドウズ又はリナックスを使用）。
【０００８】
プログラミングツールは、例えば故障検出や故障応答のような基礎的な機械プロセス、又は「初期化」、生産動作のための「オートマチック」、及び駆動部を手動で動かすための「マニュアル」のような典型的な機械動作モードを簡単に実行するために、予め決められたプログラムコードを有するプログラミングテンプレートを既に含んでいる。このことを背景にして、出願人は、プログラミングテンプレートとして例えば、見通しの良いロジックアプリケーションを簡単かつ迅速に開発することを可能にする、いわゆるジェネリックアプリケーションテンプレート（ＧＡＴ）を提供する。モーションアプリケーションの特殊性も考慮される。対話ベースのウィザードと共にＩＥＣ６１１３１−３に従ったプログラムフレームワークを前提とすれば、簡単かつ迅速なアプリケーション開発が可能になる。また、例えば軸の操作のようなモーションアプリケーションの特殊性もサポートされる。プログラミングテンプレートは例えば予め定義された状態オートマトンと状態オートマトンを適応させるためのインタフェースとを提供する。プログラミングテンプレートはふつう、プログラミング画面内のＧＡＴウィザード、ＰＬＣアプリケーションプログラムとしての状態オートマトン（状態機械）もしくは機械モジュール及び視覚化要素を要素として有している。
【０００９】
ＧＡＴウィザードはダイアログに導かれてプログラミングテンプレートを構成するために用いられる。これらのダイアログを用いて、例えば動作モード及び状態、機械モジュール、軸ならびに視覚化が管理される。その際、バックグラウンドで状態オートマトンがＰＬＣアプリケーションプログラムとして形成される（自動生成される）。それでもユーザはまだ機械の機能を様々な状態へとプログラミングしなければならない。ユーザは、ウィザードによって比較的簡単にＰＬＣプログラミングシステム内の適切な箇所を選択し、そこにＰＬＣアプリケーションプログラムコードを挿入することができる。自動生成されたＰＬＣアプリケーションプログラムは、その中にユーザが例えば状態又は状態遷移をプログラミングするプログラムフレームワークである。ＧＡＴウィザード内の構造を表示するによって、プログラマはいつでも全体を俯瞰することができる。このため、プログラマにとって、いわゆるトップダウン式プログラム開発が容易になる。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
この自動プログラム生成は駆動される機械のエネルギー消費の観点から改善されるべきである。とりわけ、多くのＰＬＣアプリケーションプログラムにおいてアイドル期間がほとんど考慮されていないので、この点に関して改善の要求が存在する。
【課題を解決するための手段】
【００１１】
上記課題は、機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する、請求項１に係る方法により解決される。同様に、上記課題は、本発明の方法を実行するように特にプログラム技術的に実現された本発明の計算ユニットにより解決される。
【図面の簡単な説明】
【００１２】
【図１】本発明の計算ユニットの有利な実施形態を概略的に示す。
【発明を実施するための形態】
【００１３】
本発明は、ＰＬＣアプリケーションプログラムの自動生成において、駆動制御される機械の省エネルギー機能を考慮することを可能にする。推計したところ、省エネルギー状態を利用することにより、生産技術における平均的なアイドル損失が約２０％低減される。
【００１４】
「省エネルギー機能」という概念は、本発明の範囲内では、低いエネルギー消費をねらって設計された、機械の各動作モード及び各機能を包摂する上位概念として使用される。その中でも特に、例えばスタンバイ、停止状態などの省エネルギーモードが含まれている。１つのエネルギー消費減が１つ以上の省エネルギー機能を提供してもよい。機械の駆動制御可能な各要素、特にアクチュエータ及びセンサそのもの、ならびにアクチュエータにより駆動制御されるモータのようなコンポーネント、電源等は、「エネルギー消費源」として特徴付けられる。
【００１５】
本発明は有利にはソフトウェアの形態で実現される。それゆえ、計算ユニットが元々存在しており、上記ソフトウェアを実行する計算ユニットがさらに別のタスクにも利用される場合には、コストが非常に低減される。ソフトウェアを用意するのに適したデータ担体はとりわけ、ディスケット、ハードディスク、フラッシュメモリ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ等々である。また、コンピュータネットワーク（インターネット、イントラネット等）を介してソフトウェアをダウンロードすることも可能である。特に、本発明の方法を実行するのに適した各製品に関する保護、とりわけプログラミングよる本発明のすべての形態におけるインプリメンテーションに関する保護が求められる。インプリメンテーションの形態は、例えば、コンピュータネットワークを介して提供され、今はサーバメモリに記憶されているコンピュータプログラムであってもよいし、コンピュータ可読媒体に記憶されたプログラムされた方法指令であってもよい。
【００１６】
本発明は、省エネルギー機能に関するプログラムコードスニペットを予め定義し、プログラミングテンプレート（例えばＧＡＴウィザード）内で提供することによって、プログラム作成するプログラマを支援する。プログラムコードスニペットは、１つの動作モードの枠内でプログラミングのために提供されるのに向いている。既に選択可能な「初期化」、「オートマチック」、「マニュアル」等の動作モードに、例えば「省エネルギー」という動作モードが加わる。
【００１７】
最近では、特にアイドル状態において機械が消費するエネルギーを低減することができるように、機械において省エネルギー機能（例えば省エネルギーモード）が提供されることが増えてきている。しかし、今日の先行技術によるプログラミングテンプレートは、関連するエネルギー消費源の省エネルギー機能の管理を考慮していない。そのため、関連するエネルギー消費源の存在するかも知れない省エネルギー機能は、さらにエネルギー管理の分野の知識を持っており、かつ付加的なプログラミングコストをかけなれれば、利用することができない。さらに、プログラミングテンプレートはコンセプト上、相応の拡張を許さなければならない。しかし、これをつねに前提とすることはできない。本発明は、既にプログラミングテンプレートによって省エネルギー機能を考慮し、プログラムコードスニペットとして提供することによりこの問題を解決する。プログラマはこれらのプログラムコードスニペットを選択し、アクティベートするだけでよい。
【００１８】
有利には、種々の異なる省エネルギー状態がプログラミングテンプレート内で省エネルギー機能としてサポートされる。その目的で、機械又は機械の一部の典型的な省エネルギー状態、例えば、製造中のスタンバイモード、休止モード（例えば昼休み）、機械の一部をメンテナンスするためのモードがプログラムコードスニペットとして予め定義され、選択に供される。任意選択的に、ウィザード内でこれらの状態にユーザ入力によって時間を、例えば昼休みの休憩時間を、付けてもよい。そうすることで、省エネルギー属性（例えば最短休憩時間、エネルギーモードのエネルギー消費等のような）に基づいて相応する装置をそのときの最適な省エネルギーモードにするＰＬＣプログラムコードスニペットを生成することができる。有利には、本発明を（例えばプログラミングテンプレートのエネルギー管理において）実行する際に、例えば休止時間におけるアイドル損失を最小値にまで低減するために、各エネルギー消費源に関する情報に基づいて、そのときの最適な省エネルギー機能が選択される。そして、プログラミングテンプレートの使用により自動生成されたアプリケーションプログラムコードが、これらの機能をそれぞれのエネルギー消費源の動作中にアクティベートする。
【００１９】
さらに、有利には、ジャストインタイムに生産動作を継続するために、省エネルギー機能のプログラムコードスニペットに省エネルギー機能の終了のための相応の準備時間を付与してもよい。その場合、生成されたＰＬＣアプリケーションプログラムは、生産動作を計画通りに継続できるように適時に自動的に終了する。プログラミングテンプレートのダイアログ内で休憩時間を入力して、例えば「休憩時間１５分」という指示と共に「朝食休憩」の状態を用いれば、ＰＬＣプログラム呼び出しにおいてこの休憩時間も一緒に供することができる。その上、持続時間が未知の省エネルギー機能も存在しうる。その場合、通常は機械の操作によってこれらの省エネルギー機能から抜ける。
【００２０】
本発明は、例えば駆動部のような、ＰＬＣに接続された少なくとも１つのエネルギー消費源が、例えばPROFIエネルギー又はSERCOSエネルギーによって定められているようなエネルギー消費を低減する機能を、例えばアイドル状態のエネルギー消費を低減する機能をサポートしている場合に、特に有利に使用することができる。
【００２１】
本発明の有利な実施形態によれば、プログラミング時点において既知の省エネルギー機能特性を有する省エネルギー機能をアクティベートするＰＬＣアプリケーションプログラムコードが自動生成される。省エネルギー機能特性とは特に、省エネルギー状態における消費電力、生産動作復旧のための所要時間、生産動作復旧のための消費エネルギー、生産動作時の平均消費電力及び／又は例えばPROFIエネルギーやSERCOSエネルギーにおいて規定されているような他の特性である。省エネルギー機能特性の読み込みはＰＬＣアプリケーションプログラムの実行時には行われず、ＰＬＣアプリケーションプログラムのコンパイル時には既に既知であるから、ＰＬＣアプリケーションプログラムは簡素化される。
【００２２】
本発明の別の有利な実施形態によれば、装置のライブラリデータ又はライブラリファイルからの省エネルギー機能特性を使用するのが有利である。この実施形態では、装置マニュアルを介して省エネルギー機能特性がプログラミングシステムに読み込まれる。つまり、装置は必ずしもエネルギープロファイルをインプリメントしていなくてもよい。
【００２３】
本発明の別の有利な実施形態によれば、省エネルギー機能特性を受け取るために、プログラミング環境内に例えばダイアログ入力の形態で入力手段が設けられている。この場合、特性はダイアログを用いてユーザから入力される。さらに、将来新たなユーザ入力がなくても使用できるように、省エネルギー機能特性を装置ライブラリに受け継ぐようにしてもよい。
【００２４】
本発明の別の有利な実施形態によれば、機械内の消費源の省エネルギー機能がプログラミング時点までにＰＬＣアプリケーションプログラミング装置にとって、したがってまたプログラミングテンプレートにとって既知となるように、プログラムされるべきＰＬＣがＰＬＣアプリケーションプログラミング装置と通信するようにしてもよい。この場合、省エネルギー機能特性は省エネルギー機能をサポートしている装置からオンラインで読み出し可能である（例えば、装置内に存在する省エネルギープロファイルのデータ）。場合によっては、装置はプログラミング時点には接続されており、スイッチオンされている必要がある。この場合も、将来新たなユーザ入力がなくても使用できるように、データを装置ライブラリに受け継ぐようにしてよい。
【００２５】
本発明の別の有利な実施形態によれば、アプリケーションプログラムは、ＰＬＣアプリケーションプログラムの実行時に（つまり、機械の動作中に）省エネルギー機能特性を機械又は機械の中に含まれているエネルギー消費源から読み出すように、自動生成される。この読み出しはとりわけ実行時間中の初期化ステップにおいて行われる。エネルギー消費源が複数の省エネルギー機能を提供する場合には、所定の条件を満たすべく省エネルギー機能を選択するように、アプリケーションプログラムが自動生成される。この条件は例えば最小の最高消費電力又は最小の平均消費電力であってよい。
【００２６】
本発明のさらなる利点および実施形態は以下の説明および添付の図面から明らかになる。
【００２７】
これまで述べてきた特徴ならびに以下で説明する特徴が、それぞれ記載した組み合わせにおいてだけでなく、別の組み合わせにおいても或いは単独でも、本発明の範囲を逸脱することなく利用できることは自明である。
【実施例】
【００２８】
図１には、ＰＬＣプログラミング装置として形成された本発明の計算ユニット１００の有利な実施形態が示されている。なお、計算ユニット１００は本発明の方法を実行するようにプログラム技術的に構成されている。計算ユニット１００は例えばＰＬＣプログラムソフトウェア２００を実行する従来のコンピュータであってよい。
【００２９】
本発明は、ＰＬＣプログラミング装置１００を用いたユーザによるＰＬＣ４００のプログラミング工程に関するものである。
【００３０】
ＰＬＣプログラミング装置１００は適切な接続３００を介して、例えばイーサネット接続又はシリアル接続を介して、プログラミングされるべきＰＬＣ４００と接続されている。ＰＬＣ４００は少なくとも、生成されたＰＬＣアプリケーションプログラムを格納するメモリ装置４０１と、記憶されたＰＬＣアプリケーションプログラムを実行するＣＰＵ４０２とを使用する。ＰＬＣ４００はさらに、ＰＬＣアプリケーションプログラムに従って機械（図示せず）を駆動制御するために、例えばフィールバス接続によって、特に例えばSERCOS IIIのようなイーサネットフィールドバス接続によって、センサ４１０及びアクチュエータ４２０と接続されている。センサは入力量（例えば温度、圧力、回転数、位置、スイッチ又は回転つまみの位置）を検出するものであり、例えば温度センサ、圧力センサ、回転数センサ、姿勢センサ等であるが、スイッチ、回転つまみ等であってもよい。これらからＰＬＣアプリケーションプログラムによって出力量（例えば、温度、圧力、回転数、電流強度、電圧、噴射量、位置等）が計算され、アクチュエータ（例えば電子スイッチ、リレー、バルブ等）によって調節される。センサ及びアクチュエータはふつう機械の構成要素である。
【００３１】
プログラミング装置２００は、必要に応じてユーザ入力（例えば休憩時間）を考慮して、ＰＬＣアプリケーションプログラムコードを自動生成するようにプログラム技術的に構成されている。そのために、プログラミング装置１００のスクリーン１０１上でＰＬＣプログラミングテンプレート２００がユーザに対して表示される。本発明の枠内では、プログラミングテンプレート２００内に、機械のエネルギー消費源の少なくとも１つの省エネルギー機能をアクティベートするためのプログラムコードスニペット２１０、２２０、２３０が予め定義されている。プログラムコードスニペット２１０〜２３０は、例えば選択フィールド２４０にマークを付けることで、ユーザにより選択可能である。
【００３２】
図示された例では、プログラムコードスニペット２１０は、機械を省エネルギーモード「休憩」にセットし、プログラムコードスニペット２２０は、機械を省エネルギーモード「スタンバイ」にセットし、プログラムコードスニペット２３０は、省エネルギーモード「メンテナンス」にセットする。
【００３３】
例えば、プログラムコードスニペット２１０は、機械を省エネルギーモード「休憩」にセットするように予め定義されており、そのために、例えば所定の消費源（例えばモータ）を、例えばアクチュエータとしての該当スイッチを介して電圧供給を切ることによって遮断する。その際、ユーザ（ＰＬＣプログラミング装置のオペレータ）は実際に駆動制御されるアクチュエータのことをまったく考えなくてよい。有利なことにユーザは、休憩モードにおいて遮断されるエネルギー消費源のこともまったく考える必要がない。これらの判断は例えばエネルギー消費源のメーカーによって前もって為される。エネルギー消費源のメーカーは、省エネルギー機能を予め設定し、相応するプログラムコードスニペットを早期の第１時点において前もって作成する。
【００３４】
他の省エネルギーモードについても同様である。
【００３５】
後の第２時点におけるプログラミング工程の終了時には、ユーザによって選択されたプログラムコードスニペットからＰＬＣプログラムコードが編成され、続いて接続３００を介してＰＬＣ４００に伝送される。ＰＬＣ４００でＰＬＣアプリケーションプログラムが実行されている間は、ユーザによって選択された省エネルギー機能がＰＬＣアプリケーションプログラムに従って実行される。
【００３６】
本発明による解決手段は、個々のエネルギー消費源の省エネルギー機能の特殊なプログラミング要件に関する知識をユーザ自身が持っていなくても、省エネルギー機能をＰＬＣアプリケーションプログラムコードに盛り込むことを可能にする。
【図１】
0005963597.tif 000002