説明

機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する方法

【課題】駆動される機械のエネルギー消費の観点から、特にアイドル期間を考慮して、自動プログラム生成を改善する。
【解決手段】プログラマブルロジックコントローラ用の選択可能なプログラムコードスニペット(210、220、230)を早期の第1時点において用意し、選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つが機械のエネルギー消費源の少なくとも1つの省エネルギー機能をアクティベートするように構成されており、前記少なくとも1つの省エネルギー機能が省エネルギー機能特性を有しており、アプリケーションプログラムコードが、後の第2時点において、ユーザによって選択されたプログラムコードスニペット(210、220、230)を結合することにより自動生成されるようにする。

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

【特許請求の範囲】
【請求項1】
機械を制御するプログラマブルロジックコントローラ(400)のためのアプリケーションプログラムコードを自動生成する方法において、
前記プログラマブルロジックコントローラ用の選択可能なプログラムコードスニペット(210、220、230)を早期の第1時点において用意し、
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは前記機械のエネルギー消費源の少なくとも1つの省エネルギー機能をアクティベートするように構成されており、
前記少なくとも1つの省エネルギー機能は省エネルギー機能特性を有しており、
前記アプリケーションプログラムコードは、後の第2時点において、ユーザによって選択されたプログラムコードスニペット(210、220、230)を結合することにより自動生成される
ことを特徴とする、機械を制御するプログラマブルロジックコントローラのためのアプリケーションプログラムコードを自動生成する方法。
【請求項2】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、プログラミング時点において既知の省エネルギー機能特性を備えた少なくとも1つの省エネルギー機能をアクティベートするように構成されている、
請求項1に記載の方法。
【請求項3】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、装置ライブラリデータから取り出される省エネルギー機能特性を備えた少なくとも1つの省エネルギー機能をアクティベートするように構成されている、
請求項1又は2に記載の方法。
【請求項4】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、ユーザによって入力される省エネルギー機能特性を備えた少なくとも1つの省エネルギー機能をアクティベートするように構成されている、
請求項1から3のいずれか1項に記載の方法。
【請求項5】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、前記PLCアプリケーションプログラムの実行時に読み出される省エネルギー機能特性を備えた少なくとも1つの省エネルギー機能をアクティベートするように構成されている、
請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、プログラミング中に読み出される省エネルギー機能特性を備えた少なくとも1つの省エネルギー機能をアクティベートするように構成されている、
請求項1から5のいずれか1項に記載の方法。
【請求項7】
前記省エネルギー機能特性は、省エネルギー状態における消費電力、生産動作の復旧のための所要時間、生産動作の復旧のための消費エネルギー又は生産動作中の平均消費電力である、
請求項1から6のいずれか1項に記載の方法。
【請求項8】
前記少なくとも1つの省エネルギー機能は少なくとも1つの省エネルギー状態、特に生産動作中のスタンバイモード、休憩モード及びメンテナンスモードを含む、
請求項1から7のいずれか1項に記載の方法。
【請求項9】
前記選択可能なプログラムコードスニペット(210、220、230)の少なくとも1つは、少なくとも1つの省エネルギー機能をアクティベートするために、動作モードの構成要素として用意される、
請求項1から8のいずれか1項に記載の方法。
【請求項10】
請求項1から9のいずれか1項に記載の方法を実行するように構成されていることを特徴とする計算ユニット(100)。

【図1】
image rotate


【公開番号】特開2013−33479(P2013−33479A)
【公開日】平成25年2月14日(2013.2.14)
【国際特許分類】
【出願番号】特願2012−168409(P2012−168409)
【出願日】平成24年7月30日(2012.7.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
2.リナックス
【出願人】(390023711)ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング (2,908)
【氏名又は名称原語表記】ROBERT BOSCH GMBH
【住所又は居所原語表記】Stuttgart, Germany
【Fターム(参考)】