JP4618897B2 - 電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法、およびこの方法を実施するための電気モータ - Google Patents

電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法、およびこの方法を実施するための電気モータ Download PDF

Info

Publication number
JP4618897B2
JP4618897B2 JP2000620427A JP2000620427A JP4618897B2 JP 4618897 B2 JP4618897 B2 JP 4618897B2 JP 2000620427 A JP2000620427 A JP 2000620427A JP 2000620427 A JP2000620427 A JP 2000620427A JP 4618897 B2 JP4618897 B2 JP 4618897B2
Authority
JP
Japan
Prior art keywords
microprocessor
function
assigned
value
error
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
JP2000620427A
Other languages
English (en)
Other versions
JP2003500993A5 (ja
JP2003500993A (ja
Inventor
ラッペネッカー、ハーマン
イエスケ、フランク
ホルンバーガー、イェルク
カルヴァート、アルノ
Original Assignee
エーベーエム−パプスト ザンクト ゲオルゲン ゲーエムベーハー ウント コー.カーゲー
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 エーベーエム−パプスト ザンクト ゲオルゲン ゲーエムベーハー ウント コー.カーゲー filed Critical エーベーエム−パプスト ザンクト ゲオルゲン ゲーエムベーハー ウント コー.カーゲー
Publication of JP2003500993A publication Critical patent/JP2003500993A/ja
Publication of JP2003500993A5 publication Critical patent/JP2003500993A5/ja
Application granted granted Critical
Publication of JP4618897B2 publication Critical patent/JP4618897B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/08Arrangements for controlling the speed or torque of a single motor
    • H02P6/085Arrangements for controlling the speed or torque of a single motor in a bridge configuration
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P6/00Arrangements for controlling synchronous motors or other dynamo-electric motors using electronic commutation dependent on the rotor position; Electronic commutators therefor
    • H02P6/34Modelling or simulation for control purposes
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02HEMERGENCY PROTECTIVE CIRCUIT ARRANGEMENTS
    • H02H7/00Emergency protective circuit arrangements specially adapted for specific types of electric machines or apparatus or for sectionalised protection of cable or line systems, and effecting automatic switching in the event of an undesired change from normal working conditions
    • H02H7/08Emergency protective circuit arrangements specially adapted for specific types of electric machines or apparatus or for sectionalised protection of cable or line systems, and effecting automatic switching in the event of an undesired change from normal working conditions for dynamo-electric motors
    • H02H7/0822Integrated protection, motor control centres
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B70/00Technologies for an efficient end-user side electric power management and consumption
    • Y02B70/30Systems integrating technologies related to power network operation and communication or information technologies for improving the carbon footprint of the management of residential or tertiary loads, i.e. smart grids as climate change mitigation technology in the buildings sector, including also the last stages of power distribution and the control, monitoring or operating management systems at local level
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S20/00Management or operation of end-user stationary applications or the last stages of power distribution; Controlling, monitoring or operating thereof
    • Y04S20/20End-user application control systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Motors That Do Not Use Commutators (AREA)
  • Control Of Electric Motors In General (AREA)
  • Control Of Ac Motors In General (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法に関し、この電気モータはそのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ、以下マイクロプロセッサと称する、と不揮発性メモリとを有する。本発明はさらに、この方法を実施するためのモータに関する。
【0002】
【発明の課題】
本発明の課題は、冒頭に述べた形式の方法および相応の電気モータを提供することである。
【0003】
【発明による課題の解決手段】
この課題は請求項1に記載の方法により解決される。すなわち、本発明は、電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法であって、前記電気モータは、そのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ(以下マイクロプロセッサと称する)と、不揮発性メモリとを有する形式の方法において、モータをスイッチオンする際、古い駆動データ値を不揮発性メモリから、マイクロプロセッサに配属された揮発性メモリに伝送し、そこに変数として記憶し、該変数をマイクロプロセッサにより所定の時点で更新し、時間間隔をおいて、不揮発性メモリに記憶された駆動データ値を、前記変数の更新された値により置換する、ことを特徴とする。
かくて、コミュテーションを行うマイクロプロセッサにさらなる有益な過程、すなわち少なくとも1つの駆動変数(ないし運転変数)の更新を行わせ、この変数を相応の時間的間隔をもってのみ不揮発性メモリに伝送すればよい。適切な時間間隔は例えば1時間の端数部分である。従って伝送は比較的稀に実行されれば良く、従って多くの計算時間を必要としない。それにもかかわらず、不揮発性メモリに記憶されているデータの良好な精度が得られる。なぜなら、電気モータは通常比較的長時間、中断なしで(継続的に)回転し、その際にその駆動(ないし運転)データはほとんど変化しないからである。
【0004】
上記課題の別の有利な解決は請求項2の方法により得られる。少なくとも1つの駆動変数をコミュテーション過程とコミュテーション過程の間の時間領域で更新することによってマイクロプロセッサが最適に使用される。
【0005】
前記課題の別の解決手段は請求項9の対象により得られる。即ち、コミュテーションの数に相当する値を駆動データ値として不揮発性メモリに記憶する。
【0006】
【発明の実施の形態】
本発明のさらなる詳細および有利な展開形態は、以下の説明および図面に示された、本発明の限定として理解すべきではない実施例、並びに従属請求項から得られる。なお、特許請求の範囲に付した図面参照符号は専ら発明の理解を助けるためのものに過ぎず、本発明を図示の態様に限定することは意図していない。
ここに、本発明の好ましい実施の形態を示す:
・ 本発明の第1の視点により、電子コミュテーション式モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法であって、
前記電子コミュテーション式モータは、そのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ(以下マイクロプロセッサと称する)と、マイクロプロセッサに配属された不揮発性メモリとを有する形式の方法が提供される。この方法において、
電子コミュテーション式モータをスイッチオンする際、古い駆動データ値を、マイクロプロセッサに配属された不揮発性メモリから、マイクロプロセッサに配属された揮発性メモリに伝送し、そこに変数として記憶し、
該変数の値をマイクロプロセッサにより電子コミュテーション式モータがスイッチオンされている間の所定の時点で更新し、
電子コミュテーション式モータがスイッチオンされている間に一定の時間間隔をおいて、マイクロプロセッサに配属された不揮発性メモリに記憶された駆動データ値を、前記変数の更新された値により置換する、ことを特徴とする方法(形態1・基本構成1)。
・ 上記の方法において、前記所定の時点は、コミュテーション過程間の時間領域にあることが好ましい(形態2)。
・ 上記の方法において、マイクロプロセッサのリセット後に、古い駆動データ値をマイクロプロセッサに配属された不揮発性メモリから、マイクロプロセッサに配属された揮発性メモリに伝送し、そこに変数として記憶することが好ましい(形態3)。
・ 上記の方法において、マイクロプロセッサのリセット過程の際に、変数の更新値を古い駆動データ値として、マイクロプロセッサに配属された不揮発性メモリに伝送することが好ましい(形態4)。
・ 上記の方法において、マイクロプロセッサに配属された不揮発性メモリに記憶された駆動データ値はデータ接続路を介して問い合わせ可能であることが好ましい(形態5)。
・ 上記の方法において、マイクロプロセッサに配属された不揮発性メモリに記憶された駆動データ値の問い合わせを、データ接続路を介してマイクロプロセッサにより制御することが好ましい(形態6)。
・ 上記の方法において、電子コミュテーション式モータに温度センサを配属し、
該温度センサにより検出された温度の極値を駆動データ値として、マイクロプロセッサに配属された不揮発性メモリに記憶することが好ましい(形態7)。
・ 上記の方法において、電子コミュテーション式モータはA/D変換器を有し、
該A/D変換器によりアナログの駆動電圧がデジタル値に変換され、
当該A/D変換器により変換された駆動電圧の上側極値を駆動データ値として、マイクロプロセッサに配属された不揮発性メモリに記憶することが好ましい(形態8)。
・ 上記の方法において、コミュテーションの数に相応する値を駆動データ値として、マイクロプロセッサに配属された不揮発性メモリに記憶することが好ましい(形態9)。
・ 上記の方法において、電子コミュテーション式モータの駆動持続時間を、駆動時間カウンタの形式に従って駆動データ値として、マイクロプロセッサに配属された不揮発性メモリに記憶することが好ましい(形態10)。
・ 上記の方法において、電子コミュテーション式モータのスタート時に複数の駆動データ値を、マイクロプロセッサに配属された不揮発性メモリから、マイクロプロセッサに配属された揮発性メモリの所属の変数にロードし、次いでマイクロプロセッサにより更新することが好ましい(形態11)。
・ 本発明の第2の視点において、電子コミュテーション式モータであって、
当該電子コミュテーション式モータのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ(以下マイクロプロセッサと称する);
マイクロプロセッサに配属された揮発性メモリ;
マイクロプロセッサに配属された不揮発性メモリ;及び
マイクロプロセッサに配属され、電子コミュテーション式モータの少なくとも1つの駆動データ値を不揮発性に記憶するためのプログラムであって、電子コミュテーション式モータをスイッチオンする際、古い駆動データ値を、マイクロプロセッサに配属された不揮発性メモリから、マイクロプロセッサに配属された揮発性メモリに伝送し、そこで変数として記憶し;該変数の値をマイクロプロセッサにより電子コミュテーション式モータがスイッチオンされている間の所定の時点で更新し;電子コミュテーション式モータ(32)がスイッチオンされている間に一定の時間間隔をおいて、マイクロプロセッサに配属された不揮発性メモリに記憶された駆動データ値を、前記変数の更新された値により置換するプログラム
を含む電子コミュテーション式モータが提供される(形態12・基本構成2)。
・ 上記の電子コミュテーション式モータにおいて、データ収集線路が設けられており、該データ収集線路を介して、マイクロプロセッサに配属された不揮発性メモリに記憶されたデータへのアクセスおよび/またはデータの当該マイクロプロセッサに配属された不揮発性メモリへの記憶が可能であることが好ましい(形態13)。
【0007】
以下のフローチャートでY=イエス、N=ノーを意味する。同じ部材または同じ機能の部材には同じ参照符号が付してあり、通常は一度しか説明しない。
【0008】
概要(図1)
図1は、電気モータ32を備える本発明の装置の概略を示す。この電気モータは例えば図1に示すようにファンの駆動に用いる。電気モータ32には駆動機能(ユニット)「AF」150,温度センサ152,駆動データ機能(ユニット)「BDF」89,エラー機能(ユニット)85,アラーム機能(ユニット)「ALARM」86,不揮発性メモリ74(例えばEEPROM)、バス82,バス端子80,およびアラーム出力ALARM_OUT88が配属されている。
【0009】
温度センサ152は、モータ32またはその近傍の温度Tを測定するのに用いられ、場合によりこの温度Tに依存して種々の過程を制御する。これは例えば温度に依存するモータ32の回転数n_sを設定すること、またはこの温度が過度に高くなるときにアラーム信号を発すること、またはこの温度の最高値を記憶することである。
【0010】
駆動機能「AF」150により、電気モータ32を所望の方向および所望の回転数n_sで回転させる。このために駆動機能「AF」150は接続150Aを介して電気モータ32と接続されている。駆動機能は例えば電子コミュテーション式モータ(ECM)の転流制御部として構成することができる。
【0011】
駆動機能150はバス82と接続されており、このバスは双方向性に構成されている。このバス82は端子(インタフェース)80を有し、この端子には例えばパーソナルコンピュータPC81を接続することができる。バス82を介して駆動機能「AF」150,駆動データ機能「BDF」89,エラー機能85およびアラーム機能「ALARM」86を例えばPC81から、またはその他の入力機器からコンフィギュレートすることができる。しかしこれら機能およびEEPROM74のデータをバス82に書き込み、バスを介して例えば外部PC81または他のモータに伝送することもできる。これは例えば、モータ32の駆動時間の数、または発生したエラーについての情報、極端な温度、過度に高い駆動電圧等である。
【0012】
電気モータ32は接続154を介して駆動データを駆動データ機能「BDF」89に出力する。この駆動データ機能は駆動データを、接続160を介して不揮発性メモリ74に記憶することができ(SAVE_DATA)、またはバス82に書き込むことができる(WRITEBUS)。これによりこれらのデータをバス端子80を介してPC81により読み出すことができる。
【0013】
電気モータ32におけるエラーは接続156を介してエラー機能85に通知される。後者はエラーの発生時に、駆動機能「AF」150に至る接続162を介して目標回転数n_sを変更することができ(SETn_s)、接続166を介してエラーおよび瞬時駆動(運転)データ(このデータは接続164を介して駆動データ機能「BDF」89から得られる)についてのデータを不揮発性メモリ74に書き込みことができ(SAVE_DATA)、バス82を介してエラーおよび瞬時駆動データについてのデータを出力するか(WRITEBUS)、または接続168を介してアラームをアラーム機能86で発することができる(ALARM)。
【0014】
アラーム機能86は信号を、接続168を介してエラー機能85から受け取るか、または接続158を介して信号を直接モータ32から受け取る。アラーム機能は接続170を介して、アラームおよび瞬時駆動データについてのデータを不揮発性メモリ74(SAVEDATA)に書き込むことができ、および/またはアラーム機能はこれらデータをバス82(WRITEBUS)に書き込み、および/または信号を線路ALARM_OUT88を介して出力する(WRITEALARM_OUT)。
【0015】
不揮発性メモリ74はデータを含むことができる。このデータは機能89,85,86によって記憶されていたものであり、これらにより再び読み出すことができ、また例えば問い合わせの際にバス82を介して出力することができる。さらに不揮発性メモリ74は各機能(ユニット)150,89,85,86に対するコンフィギュレーションパラメータを含むことができる。
【0016】
バス82にはクロック(ユニット)CLK149が接続されている。このクロックはバッテリー148を介してバッファされ、従って常時活動する。I2Cバス82に対しては例えば次の形式が適する:PCF8563,PCF8573またはPCF8583。クロック149によってEEPROM74に、エラーが発生した時計時間を場合により日付と共に記憶することができる。
【0017】
【実施例】
以下図1の有利な装置の構造と、ここで使用されるプログラムについて説明する。
【0018】
モータの概略(図2)
図2は、本発明の電子コミュテーション式モータ(ECM)の有利な実施例の概略を示す。このモータはマイクロコントローラ(μC)23により制御されるか、または択一的にマイクロプロセッサにより制御される。μC23はA/D変換器60,特性曲線関数68,機能「RGL」(制御機能)70,機能「CTRL」(モータ電流監視)71,機能「CTRLEEPROM」72,機能「COMM」(通信機能)78,機能「FEHLER」(エラー機能)85,機能「ALRAM」(アラーム機能)86,機能「BDF」(駆動データ機能)89および機能「AF」(駆動機能)150を含む。(「機能」は「機能ユニット」を表す。)
【0019】
抵抗52が接続点56とアース(GND)との間の接続されており、抵抗54が駆動電圧UBと接続点56との間に接続されている。接続点56はA/D変換器60の入力端57と接続されている。この装置は、駆動電圧UBに相応する値をデジタル化するのに用いられる。
【0020】
NTC抵抗(温度センサ152中の)が接続点66とアース(GND)との間に、抵抗64が被制御電圧Vcc(例えば+5V)と接続点66との間に接続されている。接続点66はA/D変換器60の入力端67と接続されている。この装置は、NTC抵抗62により検出された温度をデジタル化するのに用いられる。
【0021】
EEPROM74はバス76を介して機能「CTRLEEPROM」72と接続されている。EEPROM74の代わりに例えばフラッシュROM、後プログラミング可能なFlexROMセル、または他の不揮発性メモリを使用することができる。EEPROM74は場合によりμC23に集積することができる。
【0022】
バス端子80はバス82を介して通信機能COMM78と接続されている。この通信機能は接続84を介して機能「CTRLEEPROM」72と、さらにμC23の他の機能素子と接続されている。
【0023】
機能「ALARM」86は信号を出力端ALARAM_OUT88に出力することができる。
【0024】
機能「RGL」70はこの実施例では例えばパルス幅変調発生器(PWM発生器)100と接続されている。このPWM発生器は制御電圧形成部104,三角波発生器106およびコンパレータ102を有し、その動作については図3で詳細に説明する。PWM発生器100の出力端107を介して信号PWMが論理積(AND)素子108,110に達する。信号PWMのパルス107Aの幅は可変である。
【0025】
簡単な実施例として図2には、単相(巻線相)128を有する電子コミュテーション式モータ32が示されている。このような簡単なモータの原理は例えばドイツ特許DE2346380Cに説明されている。モータ32は永久磁石ロータ130,ホールセンサ132および出力段(回路ユニット)112を有する。
【0026】
出力段112はHブリッジとして接続された4つのnpnトランジスタ114,116,118,120と、低オーム抵抗の抵抗124を電流測定のために有する。
【0027】
電流制限部「I<Imax」125は、抵抗124で測定されたモータ電流Iの値に相応する電圧を受け取り、モータ電流Iが過度に高いときに制御電圧形成部104を制御して、この電流を低減させる。さらに電流制限部125は、μC23の機能「CTRL」(モータ電流監視)71に接続されている。
【0028】
ホールセンサ132の信号は評価回路134に供給される。この評価回路は例えばコンパレータの形式のローパスフィルタを含んでおり、さらに図4に示す信号HALLを形成する。この信号HALLは機能「AF」150に供給される。後者は2つの出力端OUT1,OUT2を制御し、これら出力端は上側トランジスタ114,116、ないしはアンド素子108,110を介して下側トランジスタ118,120を制御する。
【0029】
マイクロプロセッサμC23はさらにROM96,RAM97,およびタイマ98を有する。タイマ98はTIMERφとしても示されている。ROM96は通常のようにμC23の製造と共にプログラミングされる。これはμC23の外に配置することもでき、RAM97およびタイマ98も同様に当業者には周知である。
【0030】
作用(作動形態)
巻線相128の通電はトランジスタ出力段112により行われる。出力端OUT1,OUT2は、Hブリッジ112として接続されたトランジスタ114,116,118,120を制御する。OUT1がHIGHであり、OUT2がLOWであるとき、トランジスタ114と118が導通し、電流がバッテリー電圧+UBからトランジスタ114,固定子巻線128,トランジスタ118および抵抗124を介してアースGNDへ流れる。ここでは信号PWM(線路107)が常時HIGHであることが前提である。何故ならそうでないと、AND素子108,110およびひいてはトランジスタ118,120が阻止されるからである。
【0031】
OUT1がLOWであり、OUT2がHIGHであれば、電流がUBからトランジスタ116を介して反対方向に固定子巻線128,トランジスタ120および抵抗124を介してアースGNDへ流れる。
【0032】
固定子巻線128により形成された交番磁束により永久磁石ロータ130に回転トルクが生じ、これを駆動する。ロータ130はこの実施例では4極で示されている。
【0033】
ロータ130の位置はホールセンサ132により検出される。その信号は回路134でローパスフィルタによりろ波され、矩形のデジタル信号HALL(図4)に処理され、この信号は機能「AF」150に供給される。
【0034】
機能「AF」150は、信号HALLに基づいて出力端OUT1,OUT2を制御する。モータ32の転流はこの例では電子的に行われ、後で図13において説明する。機能「AF」150によって、正しい転流を介してモータ32が例えばトランジスタ出力段112の過負荷の場合でも確実に駆動される。転流の実施は次のようにすることも可能である。すなわち回転数の上昇と共にトランジスタ114〜120がより早期に転流されるようにしても可能である。これはガソリン機関での早期点火の場合と同様である。
【0035】
もちろん本発明は同じように、3相ECMおよび他のいずれの形式のモータにも適する。簡単な実施例は専ら本発明の理解を容易にするためである。
【0036】
回転数制御はこの実施例では、信号PWMのデューティ比PWM_TVを制御器100の出力端107で制御することにより達成される。すなわちこのことにより、パルス107Aの幅は比較的に長くまたは短くなる。デューティ比を定義するためには図3Cを参照されたい。このデューティ比が大きければ大きいほど、パルス107Aの幅は長くなり、長ければ長いほど、OUT1またはOUT2により瞬時に制御されるAND素子108または110の出力端はより長くHIGHに接続される。従って固定子巻線128は比較的長く通電され、モータ32は比較的に強く駆動される。例えばOUT1がHIGHであり、OUT2がLOWであれば、上側トランジスタ114が導通接続され、下側トランジスタ118が信号PWMに相応してAND素子108を介して、スイッチオン・オフされる。
【0037】
機能「RGL」70はこの実施例ではPWM発生器100を介してモータ32の回転数nを制御する。機能「RGL」70はこのためにロータ130の回転数nと目標回転数n_sを使用する。ロータの回転数は信号HALLを介して計算される(図4の説明参照)。目標回転数はこの実施例では特性曲線機能68により決められる。回転数nとn_sはここでは例えばホール時間t_H(図4)の形態で、例えば単位[μs]または[s]で、または回転数として単位[回転/min](U/min)で存在する。
【0038】
特性曲線機能68はこの実施例では各温度T(図1のセンサ152により検出される)に目標回転数n_s(T)を割り当てる(対応して規定する)。温度TはNTC抵抗62によって検出される。このNTC抵抗は抵抗64と共に、Vccとアースとの間の分圧器を形成する(図2参照)。接続点66の電位は抵抗62の温度に対する尺度である。この電位はA/D変換器60(μC23に存在する)によってデジタル化され、特性曲線機能68に供給される。
【0039】
特性曲線機能68は温度Tからモータ32の目標回転数n_sを決定する。このために例えば機能「CTRLEEPROM」72を介して、所定温度に対応する値n_s(T)がEEPROM74の温度目標回転数テーブルからロードされる。
【0040】
機能「COMM」はバス接続(インターフェース)80を管理(制御)する。このバス接続を介してデータを外部からμC23に通知し、またこれを介して反対にデータをμC23から外部へ通知することができる。バス接続80を介し機能「COMM」78によってμC23にロードされるデータは、接続(ライン)84と機能「CTRLEEPROM」72を介してEEPROM74に書き込むことができる。
【0041】
PWM発生器(図3)
図3Aは三角波発生器106の三角信号u106と目標値u104を示す。この目標値は制御電圧形成部104により形成される。図3Bは、図3Aから生じたパルス107A(の幅)を示す。図3Cはパルス107Aのデューティ比PWM_TVの計算を示す。
【0042】
三角波発生器106からの三角信号u106は理想的に示されている。実際には完全な三角波形ではないが、しかし図2のPWM発生器100の作用に変化はない。三角信号u106は電圧0Vからのオフセット139を有する。従って調整値u104は、これがオフセット139より大きくなって初めてデューティ比PWM_TV>0に作用する。
【0043】
信号PWMのデューティ比PWM_TVは、信号PWMが三角信号u106の期間中にHIGHである持続時間tONと、三角信号u106の全持続期間Tとの比である。図3B参照。従って
PWM_TV=tON/T (1)
が当てはまる。
【0044】
デューティ比PWM_TVは0から100%の間とすることができる。モータ回転数が例えば過度に高めれば、調整値u104が低下され、これによりデューティ比PWM_TVが縮小される。これが図3Aに示されている。全体がパルス幅変調(PWM)として示されている。
【0045】
もちろん本発明のモータ32をパルス幅変調なしで駆動することもでき、例えば制御または他の形式の制御なしで駆動することができる。これは単に理解を容易にするための例である。
【0046】
信号HALL(図4)
図4は信号HALLを示す。この信号はホールセンサ132(図1)により検出されたロータ130の位置に相応し、μC23に回路134(図2)を介して供給される。
【0047】
ロータ130は例としてn=6000回転/minの回転数を有することができ、100回転/sに相応する。ロータ130の機械的回転は約10ms持続する。ロータ130はこの実施例では4極で示されており、1つの機械的回転(360゜mech)で4つの半波変化が生じる。すなわちHIGHからLOWへが2回と、LOWからHIGHへが2回である。これに対して電気的回転(360゜el)はすでに2つの半波変化後に実行される。従って4極モータでは、1回の機械的回転で2回の電気的回転が生じる。
【0048】
回転数nは2つの半波変化間のホール時間t_H(図4)から計算される。ここでは、
t_H=T/P (2)
が当てはまる。さらに
T=(60s)/n (3)
が当てはまれば、式(2)と(3)から
t_H=((60s)/n)/P (4)
である。ここで
T=ロータ130の機械的回転の持続時間(単位秒)
P=ロータの極数(ここではP=4)
n=回転/minでの回転数である。
【0049】
n=6000回転/minとP=4であれば式(4)から、
t_H=60s/6000/4=2.5ms
が得られる。
【0050】
従って回転数が6000回転/minの場合、信号HALLの変化間の時間間隔t_Hは2.5msであり、これが図4に例として示されている。
【0051】
エラー機能およびアラーム機能についての概略(図5)
図5は、図1のモータ32に対するプログラミング技術的観点からの、エラー機能85と機能「ALARM」86との共働作用の概略を示す。
【0052】
最上位列には機能「センサ故障コントロール」91,「バスエラーコントロール」92,「温度コントロール」94および「回転数コントロール」95が示されている。93は図示されていない任意の別のコントロールに対するものである。
【0053】
コントロールは、プログラミング技術的に見て、それぞれの測定が行われる個所に配置される。従って例えばA/D変換器60の問い合わせの際には「センサ故障コントロール」91の値に基づいて、NTC抵抗62(図1)の「センサ故障」が存在するか否かが検査される。以下図16のS226参照。このことは図2でNTC抵抗62への接続が個所62aおよび/または62bで中断されていること、すなわち線路が破壊(破断)されていることを意味する。この場合、「センサ故障コントロール」91はエラーを通報する。すなわちエラー信号を形成する。このエラー信号は引き続き「エラー機能」85(図23)により認知され、この「エラー機能」が次に何をすべきか決定する。従って「エラー機能」は例えば目標回転数n_sを最大値にセットしたり、アラームをアラーム機能86で要求したりすることができる。このことは以下、図23で詳細に説明するが、EEPROM74に記憶されており、変更可能であるパラメータに依存して行われる。
【0054】
「温度コントロール」94及び「回転数コントロール」95は特別位置を取る。温度と回転数はファンの機能性に対して重要であるから、所定の温度を上回ること、ないしは回転数の過度に大きな偏差は直接「アラーム機能」86にさらに伝送される。
【0055】
これに対して他のエラー、例えばNTC抵抗62のセンサ故障は、ファンの満足のいく動作を除外しないから、エラー機能85(図23)を介して処理することができる。エラー機能85は顧客の希望に応じてパラメータ化することができる。これについては後で説明する。
【0056】
機能マネージャ(図6と図7)
図6は、μC23で実行されるメインプログラムの可能な実施形態をいわゆる機能マネージャ601の形態のフローチャートで示す。
【0057】
メインプログラムはイベント、すなわち例えば信号HALLの変化に応答するというタスクを有し、さらに各機能において必要な場合にはリソース、とりわけ計算時間を提供し、リソースの授与の際には優先度に注意するというタスクを有する。
【0058】
モータ32のスイッチオン後、μC23で内部リセットがトリガされ、S600でμC23の初期化が行われる。ここでデータがEEPROM74からμC23のRAM97にロードされ、これによりデータをプログラム実行のために迅速に使用することができる。以下に説明するようなメモリテストも行われる。
【0059】
初期化後に機能マネージャ601へジャンプする。この機能マネージャはS602でスタートする。まず最初に時間的にクリティカルであり、各実行の際に処理しなければならない機能が処理される。これには、D604での機能「COMM」(図24参照)、S606での「A/D」(図16参照)、S608での「I_max」およびS610での「RGL」が含まれる。
【0060】
機能「COMM」(S604)では通信がバス82(図1)を介して監視される。ボー速度(レート)が例えば2kの場合には、バス82を250μsごとに検査しなければならない。
【0061】
S606でA/D変換器60(図2)が問い合わされる。このA/D変換器は入力端57,67における電位をデジタル化する。さらなるA/D変換器をさらなる電位のデジタル化のために設けることもできる。
【0062】
S608で場合により存在するモータ電流制限ルーチン「I_max」が実行される。
【0063】
回転数nを制御するための機能「RGL」はS610で呼び出される。
【0064】
図7は、例としての機能レジスタ605を示す。この機能レジスタには、S622,S626,S630,S634およびS638(図6)での機能の各々に対して1ビットがリザーブされている。
【0065】
この実施例では機能レジスタ605は1バイトの大きさであり、このバイトは最下位ビット(LSB)から始まって次の要求ビットを下に説明する要求可能機能に対して定義する。
・FCT_KL 特性曲線機能に対して
・FCT_n 回転数領域機能に対して
・FCT_AL_n アラーム回転数コントロールに対して
・FCT_DIST エラー識別に対して
・FCT_BDF 駆動データ機能に対して
残りのビットは付加的に要求可能な機能に対してリザーブされており、これらの機能は必要な場合に機能マネージャに挿入することができる。
【0066】
図6と図7で所定の要求可能機能が他の機能または割込ルーチンによって要求される場合には、要求すべき機能のビットが機能レジスタで1にセットされる。例えばFCT_AL_n:=1にセットされる。次に機能マネージャ601(図6)が、この要求に続く実行の際に、優先度の高い他の要求可能機能を発見しなければ、前記の機能がS630で呼び出される。すなわちアラーム回転数コントロールが呼び出される。
【0067】
要求された機能が処理されると、その機能はそのビットは機能レジスタ605(図7)で再び0にセットする。例えばFCT_AL_n:=0がS630の終了時に実行される。
【0068】
要求可能な機能が実行された後、再びS602に続いて機能マネージャ601の開始「FCT_MAN」にジャンプする。
【0069】
図6ではS610に続いて所定の順序で、すなわち最重要の要求可能機能から始まって、これらの要求ビットがセットされているか否かが検査される。セットされている場合には、要求された機能が実行される。このような機能が機能マネージャ601で上にあればあるほどその優先度は高い。
【0070】
S620で、要求ビットFCT_KLがセットされているか否かが検査される。セットされていれば、特性曲線機能がS622で呼び出される。
【0071】
S624でFCT_nがセットされていれば、回転数計算機能がS626で呼び出される。
【0072】
S628でFCT_AL_nがセットされていれば、アラーム回転数コントロールがS630で呼び出される。
【0073】
S632でFCT_DISTがセットされていれば、エラー識別がS634で呼び出される。これは図17で説明する。
【0074】
S626でFCT_BDFがセットされていれば、駆動データ機能がS638で呼び出される。これは図15で説明する。
【0075】
機能レジスタ605の要求ビットがいずれもセットされていなければ、エラー機能がS640で、またアラーム機能がS642で実行され、S602へリターンジャンプする。エラー機能S640については図23を参照されたい。この機能はエラー監視ルーチンとも称することができる。なぜならこの機能は、他のルーチンの1つがエラーを通報したか否かを監視し、このエラーに対する応答に作用するからである。
【0076】
図6はまたホール割込61(図13)を象徴的に示す。このホール割込は最高の優先度L1(レベル1)を有する。このホール割込は機能マネージャ601の全てのプロセスを、モータ32の精確な転流を得るために中断する(矢印613により示されている)。ホール割込611は、図4で信号HALLが変化するときには常に形成され、これにより転流カウンタCNT_COMがカウントアップされる。これについては図13で説明する。さらにモータ32の転流、すなわち信号OUT1およびOUT2の形成は直接的または間接的にホール割込611により制御され、これによりモータの静粛な回転が得られる。同様に図13参照。
【0077】
ホール割込611の下には615に、タイマTIMERφ98(図2)のTIMERφ割込が示されている。この割込は次に低い優先度L2を有し、矢印617により示したようにその下の全てのプロセスを中断する。これについては図14で説明する。
【0078】
ホール割込611とTIMERφ割込615が同時に要求される場合には、これらはその優先度の順序に従い処理されることになる。
【0079】
以下の機能は常に比較的に低い優先度を、S604での機能「COMM」L3からS642でのアラーム機能に対するL13まで有する。
【0080】
このようにして、モータ32の種々の「必要性」(ないし要求)が所定の階層をもって配され、μC23のリソースを最適にモータ32の駆動に対して使用することができる。従ってエラー機能S640とアラーム機能S642は、μC23がちょうど自由な計算時間を有する場合だけ実行される。
【0081】
オブジェクトテーブル(図8)
図8は、モータ32に対するコンフィギュレーションパラメータを含むオブジェクトのテーブル111を示す。個々のオブジェクトは、インデクス、メモリ形式(メモリタイプ)、アクセス権(アクセス)および名称を有する。
【0082】
オブジェクトテーブル111は不揮発性メモリ、この実施例ではEEPROM74(図1)に記憶される。μC23の各リセットの後で、S600(図6)での初期化の際にオブジェクトテーブル111がEEPROM74から機能「CTRLEEPROM」72により、μC23のRAM97に伝送され、これに基づきμC23でのプログラム実行(図6)に使用される。
【0083】
テーブル111のインデクスは16進で示されており、16進数の前に0×が示されている。メモリ形式はunsigned8、すなわち符号ビットなしの1バイトであるか、またはunsigned16、すなわち符号ビットなしの2バイトであるか、またはunsigned24、すなわち符号ビットなしの3バイトである。アクセス権はR/W(R=読み出し、W=書き込み)である。オブジェクトを読み出し、変更することができる。オブジェクトの名称は使用を容易にするため用いられる。
【0084】
意味するものは、
DIST_CTRL エラー機能に対する制御語
DIST_STATE エラー機能に対する状態語
DIST_CODE エラー機能に対するエラーコード
DIST_REAC エラー機能に対する応答語
n_DIST エラー回転数
t_COMM_TO 通信機能に対する最大タイムアウト時間
OD_TMAX 駆動データ機能に対する温度
OD_UBMAX 駆動データ機能に対する駆動電圧
OD_OHO 駆動データ機能に対する駆動時間(運転時間、例えば10分単位)
OD_COMMUT 駆動データ機能に対する全転流数(例えば10000単位)
である。
【0085】
オブジェクトテーブル111のオープン構造によって、簡単に新たなオブジェクトを標準的方法を介して追加したり、テーブルを任意に拡張したりすることができる。オブジェクトテーブルおよびひいてはコンフィギュレーションの変更は有利にはバス82、機能「COMM」78(図2)および機能「CTRLEEPROM」72を介して行われる。コンフィギュレーションは出荷前に顧客の希望に応じて行うか、または顧客が自分で変更を行う手段を得る。
【0086】
オブジェクトテーブル111のオブジェクトの説明
DIST_CTRLはエラー監視ルーチン85に対する制御語である。これは図6と図23にS640により示されている。その構造は図9および所属の説明から明かである。内容に応じてこの制御語は、エラーをEEPROM74に記憶させるか、または記憶させない。DIST_CTRLがRAM97にロードされている場合には、これはDI_CTRLとして示される。
【0087】
DIST_STATEはエラー機能に対する状態語である。DIST_STATEがRAM97にロードされている場合には、これはDI_STATEとして示される。DI_STATEの構造は図10および関連の説明から明かである。そのビット7はエラーが存在するか否かを指示し、そのビット0から2は発生したエラーの形式を粗く定義する。すなわち例えば転流時のエラーであるか、またはセンサ152でのエラーであるかを定義する。
【0088】
DIST_CODEはエラー機能85に対するエラーコードを含む。このエラーコードはエラーを正確に特定する。DIST_CODEがRAM97にロードされている場合には、これはDI_CODEとして示される。その構造は図11および所属の説明から明かである。例えば状態語DI_STATEのエラークラスDS_COMMに対して、伝送エラーの形式に該当する4つの別個のエラーコードを設けることができる。
【0089】
DIST_REACはエラー機能85に対する応答語であり、モータがエラーにどのように応答すべきであるか、例えば停止または制動または最大回転数により応答(対応)すべきことを指示する。DIST_REACがRAM97にロードされている場合には、これはDI_REACとして示される。その構造は図12および所属の説明から明かである。その評価は図23から明かである。
【0090】
n_DISTはエラー回転数である。これは、モータ32がエラーの際に回転すべき固定の回転数である。図23,S378とS380を参照されたい。
【0091】
t_COMM_TOは通信機能に対する最大タイムアウト時間である。これはバス82上での伝送速度を定める。
【0092】
OD_TMAXは、センサ152により測定された温度Tの極値である。この値は「最大温度計」と同じように機能するが、デジタルである。10分おきに、瞬時温度が記憶された値OD_TMAXより高いか否かが検査され、高い場合には新たな比較的に高い値がOD_TMAXとしてEEPROM74に記憶される。これはエラーの分析にとって重要である。
【0093】
OD_UBMAXは、モータ32の駆動電圧UBの上側極値である。10分おきに、瞬時の駆動電圧UBが記憶された値OD_UBMAXより高いか否かが検査され、高い場合には新たな比較的に高い値がOD_UBMAXとしてEEPROM74に記憶される。これはエラーの分析にとって重要である。
【0094】
OD_OHOはモータ32の全駆動時間であり、10分単位で測定される。OD_OHO=6000は1000駆動時間を意味する。
【0095】
スイッチオン時にOD_OHOはRAM97にロードされ、そこで図14のルーチンにより継続的に更新される。常に10分後に更新された値がEEPROM74に他の値と共に書き込まれる。これについては図15で説明する。
【0096】
OD_COMMUTはホール割込611(図4)の総数である。各ホール割込は転流を生じさせるから(図13参照)、これはロータ130の回転総数に対する尺度である。
【0097】
転流数は10000単位で記憶される。従って値200000は、20億の転流が生じたことを示す。4極ロータ130の場合、これは5億回転に相応し、3000回転/minの定回転の際にこれは約2800時間の駆動持続時間に相当する。この数字はモータ32の支承部(軸受)の予想残留寿命についての情報を与える。
【0098】
スイッチオン時にOD_COMMUTはRAM97にロードされ、そこで図13のルーチンにより継続的に更新される。各10分後に、更新された値はEEPROM74に他の値と共に書き込まれる。これについては図15で説明する。
【0099】
OD_TMAX、OD_UBMAX、OD_OHOおよびOD_COMMUTの瞬時値(RAM97にある)はエラーの発生時にEEPROM74のFIFOに記憶される。図22,S346,push_OD_DATA参照。
【0100】
オブジェクトテーブル111(図8)はモータ32の一種の経歴を含み、最初の4つのオブジェクトを変更することによって、モータ32がエラーの際に応答するか否かおよびどのように応答するかと、記憶するか否かおよび何を記憶するか、どこにアラームを出力するか等を設定することができる。すなわち相応のパラメータを設定し、モータに入力することができる。
【0101】
制御語および状態語
図9は制御語DI_CTRLを示す。この制御語は、オブジェクトテーブル111(図8)のオブジェクトDIST_CTRLと同じ構造を有しており、オペレーティングシステム(図6)と個々のエラー機能との間のデータ交換に用いられる。これはRAM97にある。RAM97にはメインプログラムのスタート時における「INIT」S600でのμC23のリセット後に、DIST_CTRL(図8)の値がロードされる。DI_CTRLのビットには、0から7の通し番号が付されている。
【0102】
ビット0は名称DC_LATCHを有する。DC_LATCH=NO_LATCHであれば、すなわちLOW(0)であれば、エラーは記憶されず、エラーの消失時にエラー状態がリセットされる。これに対してDC_LATCH=LATCHであれば、すなわちHIGH(1)であれば、エラー状態は消去の要求がバス82を介して到来して初めて消去される。
【0103】
ビット1から6はここでは使用されず(RES)、将来の使用と拡張のためにリザーブされる。
【0104】
ビット7は名称DC_CLEARを有し、エラー状態の消去のために使用される。このためには、基本状態では0であるDC_CLEARの値を1に、そして再び0にセットしなければならない。これについては図9に示されている。
【0105】
図10は状態語DI_STATEを示す。この状態語はオブジェクトDIST_STATE(図8)に相応し、DI_CTRLと同じように「INIT」S600で初期化される。
【0106】
ビット0〜2は名称DS_CLASSを有する。DS_CLASSは(10進数)値0から7を取ることができる。DS_CLASSはエラークラスを含んでいる。ここでエラークラスの意味するのは:
・DS_μC(0) μC23のエラー
・DS_COMM(1) 通信のエラー
・DS_SENS(2) センサ、例えばNTC抵抗62のエラー・DS_HW(3) 他のハードウエアのエラー
DS_CLASSの残りの値4〜7はこの実施例では使用されない(RES)。
【0107】
ビット3〜6は使用されない(RES)。
【0108】
ビット7は名称DS_ACTIVEを有する。DS_ACTIVE=NO_DIST(0)であれば、エラーは存在しない。そしてDS_CLASSの内容は無意味である。DS_ACTIVE=DIST(1)の場合はエラーが存在し、DS_CLASSにはエラークラスが存在する。
【0109】
図11はエラーコードDI_CODEを示す。このエラーコードはエラーをより正確に特定する。μC23の各リセット後、S600(図6)でオブジェクトDIST_CODE(図8)の値がDI_CODEにしたがって書き込まれる。DI_CODEは16ビットの大きさであり、従って値0から65535を示すことができる。個々のエラークラス(図10)に対してはそれぞれ1000の値が設けられている。
【0110】
値(VAL)0〜999はクラスDS_μCに対してリザーブされている。すなわちμC23のエラーに対してリザーブされている。これらエラーコードの意味するものは:
・DN_WDT ウオッチドッグタイマのエラー
・DN_CHKS_ROM ROM96のチェックサムエラー
・DN_CHKS_RAM RAM97の静的部分におけるチェックサムエラー
・DN_CHKS_EEPROM EEPROM74のチェックサムエラー
・DN_TEST_RAM μC23の内部RAMテスト時のエラー
値1000〜1999はクラスDS_COMMに対してリザーブされている。エラーコードの意味するものは:
・DN_TIMEOUT_TRANSFER 伝送中のタイムアウトエラー
・DN_TIMEOUT_BUS バス82でのアクセス時エラー・DN_PROT_ERR 無効な伝送プロトコル(例えば9データビット)
・DN_INVAL_DATA 無効なデータ
【0111】
値2000〜2999はクラスDS_SENSORに対してリザーブされている。エラーコードの意味するものは:
・DN_SENSOR_INTERRUPT センサ故障(図2の個所62aまたは62bでの故障)
・DN_SENSOR_SHORT センサ短絡(個所62aと62bとの間)
【0112】
値3000〜3999はクラスDS_HWに対してリザーブされている(HW=ハードウエア)。エラーコードの意味するものは:
・DN_DRIVER_FAULT 出力段112(図2)のエラー残りの値はここでは定義されていない(RES)。
【0113】
図12は応答語DI_REACを示す。この応答語はどの応答をエラーの際に行うべきかを指示する。DI_REACは図8のオブジェクトDIST_REACに相応し、DI_CTRLと同様にμC23のリセット語にS600(図6)で、オブジェクトテーブル111からのオブジェクトDIST_REACの値により書き込まれる。
【0114】
ビット0〜2は名称DR_REACを有し、DR_REACは(10進数)値(VAL)0〜7を取ることができる。DR_REACは、エラーの際にエラー機能により実行すべき応答を含む。ここで応答の意味するものは:
・DR_OFF 応答なし
・DR_n_max 最大回転数
・DR_n_min 最小回転数
・DR_n_0 回転数0
・DR_n_DIST 特別のエラー回転数
・DR_BRAKE 回転数0およびモータのアクティブ制動
【0115】
ビット3は名称DR_ALを有する。DR_AL=DR_AL_OFFであれば、エラーの際にアラームがアラーム機能AF86で要求されない。これに対してDR_AL=DR_AL_ONであれば、エラーの際にアラームがアラーム機能86で要求される。ビット4〜7はここでは使用されない(RES)。
【0116】
ホール割込およびTIMERφ割込
図13はホール割込ルーチンS147の重要部を示す。この重要部はホール割込発生時に呼び出される(図6の611)。ホール割込611は信号HALL(図4)のHIGHからLOWないしはLOWからHIGHへの各変化の際にトリガされる。すなわち図4からの例では時点t=0;2.5;5;7.5および10msで呼び出される。
【0117】
S151により一般的ステップが示されている。このステップはホール時間t_H(図4)の計算に属し、例えば相応の時間の停止等である。
【0118】
ステップS153,S155およびS157でμC23では信号HALLのエッジが調整される。このエッジにおいて次のホール割込がトリガされるべきものである。このためにS153でHALL=1であるか否かが検査される。Yの場合はS155で次のホール割込がトリガされるべきエッジが下降縁(立下りフランク)(HIGH→LOW)にセットされる。Nの場合は、S157でトリガが上昇縁(LOW→HIGH)にセットされる。
【0119】
S159でOUT1とOUT2がゼロにセットされる。すなわちモータ32が無電流状態にされる。このことはHブリッジ112を短時間遮断するのに用い、これによりHブリッジに転流の際に短絡が生じることがない。
【0120】
S159Aでは種々のステップが実行される。例えば(図示しない)カウンタがt_Hの測定のために新たにスタートされる。このプログラムステップは例えば50μs持続するものである。
【0121】
S161からS165では転流が実施される。S161でHALL=1であれば、S163でOUT1が1にセットされ、OUT2はさらに0に留まる。S159参照。S161でHALL=0であれば、S165でOUT2が1にセットされ、OUT1は0のままである。S159参照。
【0122】
信号OUT1=1によりトランジスタ114と118がすでに説明したようにスイッチオンされ、信号OUT2=1によりトランジスタ116と120がスイッチオンされる。
【0123】
ステップS167〜171はカウンタであり、このカウンタはカウンタOD_COMを例えば10000転流ごとに1だけカウントアップする。このカウンタOD_COMはμC23の各リセット後にS600(図6)で、オブジェクトテーブル111からのオブジェクトOD_COMMUTの値により書き込まれる。
【0124】
このためにS167で各ホール割込の際にカウンタCNT_COMが1だけカウントアップされる。S169で、CNT_COM>9999であるか否かが検査される。Yの場合は、S171でCNT_COMが1にセットされ、カウンタOD_COMが1だけカウントアップされる。S169でCNT_COM>9999でなければ、直接S172の終了へジャンプする。
【0125】
転流(回数)の計数は、図6で機能「駆動データ機能」S638と「エラー機能」S640のために必要である。
【0126】
図14は、「TIMERφ割込」ルーチンS173のプログラム部を示す。このプログラム部は図6に615によって示されている。タイマTIMERφ98は例えば256μdごとにTIMERφ割込をトリガする。従ってタイマTIMERφを時間測定に使用することができる。
【0127】
ステップS174はタイマ98の考え得る他の使用のためのものであり、これは図示されていない。
【0128】
ステップS175からS180にはサブタイマが示されている。サブタイマは例えば10分おきにステップS180を実行する。このためにカウンタCNT_TIが使用される。このカウンタは各TIMERφ割込の際にS176で1だけ高められる。S178ではCNT_TI>2399999であるか否かが検査される。Yの場合は、S180へジャンプし、それ以外の場合は終了S182へジャンプする。
【0129】
CNT_TIが値2400000に達していれば、2400000×256μsが経過した。このことはちょうど10分に相当する。S180でCNT_TIが1にリセットされ、RAM97にある「駆動時間カウンタ」OD_OHが1だけ高められる。この駆動時間カウンタはμC23の各リセット後にEEPROM74からのオブジェクトOD_OHOの値により書き込まされる。図6の機能レジスタ605のビットFCT_BDFがセットされ、これにより機能マネージャ601により「駆動データ機能」S638が呼び出され、所定の駆動データ値がEEPROM74にロードされる。図6参照。
【0130】
RAM97の「駆動時間カウンタ」OD_OHは従ってここでは、ファンの全駆動時間を10分単位で含む。これはEEPROM74の駆動時間カウンタOD_OHOと同じである。
【0131】
駆動データ機能BDF(図15)
図15は「駆動データ機能」S638(図6)を示す。この駆動データ機能は、機能マネージャ601(図6)がステップS636に達し、機能レジスタ605(図7)からのビットFCT_BDFが例えば「TIMERφ割込」ルーチンS170(図14)でのサブタイマによってセットされた場合に呼び出される。このことはこの実施例では10分ごとに行われる。
【0132】
「駆動データ機能」S638は、重要な駆動データ値(例えば最大ファン温度または駆動時間)をEEPROM74に記憶し、これにより例えばファン交換のための基準を得るために用いられる。
【0133】
これらのデータはEEPROM74から読み出すことができ、モータ32についての形式「健康情報」を送出する。
【0134】
付加的にEEPROM74のFIFOにさらにモータ32についての「病気情報」を、そのような「病気」発生するときに記憶することができる。この病気情報も後でEEPROMから読み出し、発生したエラーの形式プロトコルおよび場合によりその原因、例えば高温、過電圧、または寿命の終了を送出することができる。
【0135】
駆動データ機能BDFの実行の際にはS190で、瞬時の駆動電圧U_B(これはA/D変換器60によりデジタル化されている)がこれまで最高駆動電圧OD_UBMより大きいか否かが検査される。Yの場合は、S192でU_Bが値OD_UBMに配属され、オブジェクトOD_UBMAX(これは実施例ではEEPROM74の個所pOD_UBMAXにある)が命令write_EEにより新たな値OD_UBMにセットされる。オブジェクトがEEPROM74中に存在する(図8参照)個所は先頭に付された「p」により示される。従ってpOD_UBMAXはEEPROM74中の、オブジェクトOD_UBMAXが存在する個所である。図8参照。最大駆動電圧UBMAXは重要である。なぜなら、過度に高い駆動電圧は電子構成部材の摩耗を促進するからである。同様に最小駆動電圧(アンダー電圧)を保持することもできる。
【0136】
S194で、センサ1532により測定される瞬時温度Tがこれまでの最高温度OD_TMより高いか否かが検査される。Yの場合には、S196でこれまでの最高温度OD_TMに新たな最高温度Tが配属され、オブジェクトテーブル111(図8)のオブジェクトOD_TMAXがS192と同じように命令write_EEによって新たな最大値OD_TMにより上書きされる。(パラメータpOD_TMAXはここでもEEPROM74中にオブジェクトOD_TMAXがファイルされている個所を表す。)
【0137】
S198で瞬時駆動時間(これはOD_OHに存在する)が命令write_EEによりEEPROM74のオブジェクトOD_OHO(図8)に書き込まれる。これによりこの駆動時間はファン32が遮断されても維持される。駆動時間OD_OHの測定は図14で説明した。
【0138】
S200で、OD_COMにファイルされている転流の瞬時数が命令write_EEによりオブジェクトOD_COMMUT(図8)に書き込まれる。転流数の測定は図13で説明した。
【0139】
S202で要求ビットFCT_BDFがゼロにリセットされる。なぜなら「駆動データ機能」S638は完全に処理され、S204で機能S638は終了するからである。
【0140】
エラー識別
図16は、機能「A/D」S606(図6)の一部を有するフローチャートを示す。
【0141】
S220でA/D変換器60(図2)の入力端57の電位が命令AD(AD_UB)により読み込まれ、U_Bに記憶される。値U_Bは瞬時の駆動電圧、例えば40Vに相応する。
【0142】
S222でA/D変換器60(図6)の入力端67の電位が命令AD(AD_T)により読み込まれ、Tに記憶される。値TはNTC抵抗62の瞬時温度、例えば84℃に相応する。
【0143】
S224で場合により別のステップ、例えば「特性曲線機能」S622の要求が実行される。
【0144】
S226では、センサ故障が存在しているか否かが検査される。すなわちNTC抵抗62への接続が個所62aまたは62bで中断しているか否かが検査される。これはTに対する値がセンサ故障値T_SIより小さい場合である。この場合、S228で温度値TがT_SIにセットされ、図22で説明する機能NEW_DISTの呼び出しが準備される。このためにエラークラスDS_μCとセンサ短絡エラーに対するエラーコードDN_SENSOR_INTERRUPTが変数TEMP_CLASSないしはTEMP_CODEに記憶され、S230でNEW_DIST(図22)が呼び出される。
【0145】
S232では同様にセンサ短絡が検査される。すなわち図2での個所62aと62bとの間の短絡が検査される。このために、値Tがセンサ短絡値T_SSより大きいか否かが比較される。Yの場合、S234で値Tがセンサ短絡値T_SSにセットされ、変数TEMP_CLASSとTEMP_CODEがセンサ短絡に対する値にセットされ、S236でNEW_DIST(図22)が呼び出される。
【0146】
S238には場合により別のステップが続く。S240でA/Dルーチンが終了する。
【0147】
駆動電圧U_Bの代わりにまたは付加的に、他の電圧、例えば使用される12V補助電圧を測定し、その極値を記憶することもできる。
【0148】
図17は、機能「エラー識別」S634(図6)に対するフローチャートを示す。これは要求可能な機能であり、この機能は要求ビットFCT_DIST=1により要求される。この機能はモータのスイッチオン後の初期化(図6のS600)の際に要求され、その後ほぼ100msごとに時限素子、例えばTIMERφにより制御されるカウンタにより制御される。エラー識別は従って100msごとにメモリを検査する。
【0149】
S272で機能「RAM_CHK_TEST」が、S274で機能「ROM_CHK_TEST」が、そしてS276で機能「EEPROM_CHK_TEST」が実行される。これらの機能は、エラーがRAM97,ROM96またはEEPROM74に発生したか否かを検査する。例えばビットがRAM97で切り替わることがあり得る。このことによりエラーがμC23のプログラムに発生し、ひいてはファン32の駆動が不安定になることがある。
【0150】
S277で要求ビットFCT_DISTがゼロにリセットされる。なぜなら機能「エラー識別」S634は完全に処理されているからである。
【0151】
以下の図面に基づき、メモリテストを、RAM97をテストするための機能「RAM_CHK_TEST」の例で説明する。EEPROM74とROM96でのテストもまったく同じである。
【0152】
図18はRAM97の領域140を示す。この領域はここでは静的領域「STATIC」142と非静的(動的)領域「NON_STATIC」に分割される。
【0153】
分かり易くするため記憶語W1からW11には通し番号が付してある。領域「STATIC」142は記憶語W1からW7を含む。記憶語W8には変数RAM_CHK146があり、この変数は領域「STATIC」を検査するために用いられる。領域「STATIC」142には例えば関数と定数が存在する。領域「NON_STATIC」144は記憶語W9〜W11を含み、例えば変数を含む。
【0154】
図19は機能「CHK_CALC」S290を示す。この機能は検査値CHKを計算するために用いられる。このためにS292でCHKがゼロにセットされ、ループカウンタNが同様にゼロにセットされる。
【0155】
S294でループが開始する。Nはそれぞれ1だけ高められ、CHKとRAM(N)のXOR演算が行われる。RAM(N)はここではRAM領域140(図18)の個所WNにある記憶語である。S296で、N<7否かが検査される。否定の場合は、CHKと記憶語W1からW7およびひいては領域「STATIC」142にある全ての記憶語とのXOR演算が行われ、ルーチンはステップS298へ進む(終了)。
【0156】
図20は、機能「RAM_CHK_SET」S300のためのフローチャートを示す。この機能はRAM_CHK146(図18)をセットするために使用される。
【0157】
S302で機能「CHK_CALC」(図19)が呼び出される。この機能は検査値CHKを計算する。この検査値はS304でRAM_CHK146(図18)に記憶される。すなわちRAM領域140のワードW8に記憶される。S306でこのルーチンは終了する。
【0158】
機能「RAM_CHK_SET」は例えばμC23の各リセット後にS600(図6)で呼び出される。実行中に記憶語が領域「STATIC」142(図18)で所望のように変化した場合には、「RAM_CHK_SET」S300を新たに呼び出さなければならない。ROM96には相応のROM_CHK検査語がROM96を焼く前に計算され、登録される。
【0159】
図21は機能「RAM_CHK_TEST」(図17のS272)のフローチャートを示す。S312で再び機能「CHK_CALC」(図19のS290)が呼び出され、検査値CHKが計算される。
【0160】
S314でCHKが記憶された値RAM_CHK146(図18)と比較される。2つの値が異なっていれば、エラーが領域「STATIC」142に発生しており、S316へジャンプする。S316では変数TEMP_CLASSがDS_μCにより、TEMP_CODEがDN_CHKS_RAMにより占有され、S318で機能「NEW_DIST」(図22)が呼び出される。
【0161】
S314で値RAM_CHKとCHKが等しければ、ルーチンはS320(終了)へ直接ジャンプする。
【0162】
ROM96とEEPROM74のメモリ検査も同様に機能する。XOR演算法の代わりに例えばチェックサム法またはその他の検査法、例えばCRC(サイクリック冗長性チェック)を使用することもできる。
【0163】
図22は機能「NEW_DIST」S340のフローチャートを示す。この機能はエラーが検知されるたびに呼び出される。
【0164】
S342で、状態語ビットDS_ACTIVE=1であるか否かが検査される。図10参照。Yの場合は、すでにエラーが存在しており、終了S348へジャンプし、新たなエラーは考慮されない。このことに意味があるのは、エラーがシーケンスエラーを引き起こす可能性があるからである。従って分析のためには、最初の古いエラーが最重要である。
【0165】
S342で新たなエラーが存在すれば(DS_ACTIVE=0)S344へジャンプする。S344ではDS_ACTIVE(図10)が1にセットされ、エラークラスDS_CLASSとエラーコードDI_CODEが、呼び出された機能によりセットされた値TEMP_CLASSないしTEMP_CODEにセットされる。例えば図21はそこに、TEMP_CLASSがDS_μCにセットされたことを示している。
【0166】
S346で、エラークラスDS_CLASS、エラーコードDI_CODEおよび瞬時駆動データOD_DATAが命令push_FIFOによりEEPROM74のFIFOにファイルされる。OD_DATAは例えば、瞬時温度、瞬時駆動時間、瞬時転流数、エラークラス、エラーコード、およびリアルタイム時計149(図1)が設けられている場合には瞬時時計時間、および瞬時の日付を含むことができる。
【0167】
プロセッサ23は状態信号をセットする。この信号は接続されたPC81により常時検査され、このPC81に対してエラーについての記憶されたデータを呼び出させる。例えばロータ130がブロックされたことにより、モータ32がエラーにより停止すると、PC81によりリザーブモータ(図示せず)を投入接続することができる。またはアラームがトリガ(発出)される。モータ32がファンである場合、PC81によって別のファンを比較的に高い回転数に切り替え、冷却をさらに保証することができる。
【0168】
エラー機能(エラー監視ルーチン)
図23は、エラー機能S640(図6)のフローチャートを示す。このエラー機能はエラー監視ルーチンとも称することができる。
【0169】
S362でDS_ACTIVE(図10)に基づいて、エラーが存在するか否かが検査ないし監視される。DS_ACTIVE=0であればエラーは存在せず、終了S390へジャンプする。
【0170】
DS_ACTIVE=1であればエラーが存在し、応答が実行される。この応答は、DR_REAC(図12)の値VALによって決められる。
【0171】
DR_REAC=DR_OFFであれば、S364からS386へ直接ジャンプし、応答は生じない。
【0172】
DR_REAC=DR_n_maxであれば、S366からS368へジャンプする。S368ではn_constが1にセットされ、これにより機能「回転数計算機能」S626(図6)に、今や一定の回転数が設定されたことを通知する。さらに目標回転数n_sが最大回転数n_maxにセットされる。これによりパルス107A(図2)のデューティ比PWM_TVが100%に調整される。
【0173】
S370でDR_REAC=DR_n_minであれば、S372でn_constが1にセットされ、目標回転数n_sが最小回転数n_minにセットされる。この回転数は次に制御器70に目標回転数として設定される。
【0174】
S374でDR_REAC=DR_n_0であれば、S376でn_constが1にセットされ、目標回転数n_sが0にセットされる。このために図2のトランジスタ114,116,118,120が非導通状態にされ、これによりモータ32に電流がそれ以上流れなくなる。
【0175】
S378でDR_REAC=DR_n_DISTであれば、S380でn_constが1に、目標回転数n_sがエラー回転数n_DISTにセットされる。このエラー回転数はオブジェクトn_DIST(図8)により与えられる。この目標回転数n_DISTは次に制御器70に目標回転数n_sとして供給される。
【0176】
S382でDR_REAC=DR_BREAKEであれば、S384でn_constが1に、目標回転数n_sが0に、BRAKEが1にセットされ、機能「RGL」S610(図6)に対して、アクティブ制動すべきであることが指示される。この場合例えば、Hブリッジ112(図2)の2つの下側トランジスタ118,120は常時導通状態に制御され、これにより固定子巻線128は短絡される。ここで上側トランジスタ114,116は開放される。
【0177】
S364からS382での検査の後、S386でDR_AL(図12)に基づいて、エラーの際にアラームをトリガすべきか否かが検査される。
【0178】
DR_AL=DR_AL_ONであれば、S388で状態語AS_DISTが1にセットされ、アラーム機能S642(図6)に、エラーの存在していること、およびアラームをトリガすべきことが通知される。続いてルーチンはS390へ進む(終了)。
【0179】
コミュテーション機能(図24)
図24は機能「COMM」S604(図6)のフローチャートを示す。このフローチャートは、入出力をバス82を介して制御する(ステップS402,S406およびS430は別のプログラム部を象徴的に示す。すなわち図24は、機能「COMM」のうちここで重要な部分だけを示すものであり、不要な冗長を回避している。)
【0180】
S404からプログラム部PROCESS_INSTRが始まる。ここでは、機能「COMM」がシリアルバス82(ここではIICバス)を介して受け取り、INSTRにある命令が実行される。
【0181】
定義された命令はOCで始まる。OC_GETDIは例えば、状態語DI_STATE(図10)とエラーコードDI_CODE(図11)が外部から問い合わされたことを意味する。S410で、INSTR=OC_GETDIであるか否かが検査される。Yの場合は、S412で命令wite_IICにより所望の情報がIICバス82へ出力される。OC_DIDATは、エラーデータであることを意味し、“2”は2つの別のアーギュメント、すなわちDI_STATEとDI_CODEの続くことを意味する。
【0182】
S414で、INSTR=OC_RESDIであるか否かが比較され、場合によりS416へジャンプする。OC_RESDIは、エラー機能をリセットすべきことを意味する。場合によりDI_STATE、DI_CODEに記憶されたエラーは従って消去される。S416でDI_STATEとDI_CODEがリセットされる。DI_STATEにより同時にDS_CLASSとDS_ACTIVEがリセットされる(図10)。
【0183】
S418で、INSTR=OC_GETODであるか否かが検査され、場合によりS420へジャンプする。OC_GETODは、バス82を介して機能「駆動データ機能」(図15)の駆動データを呼び出すべきことを意味する。S420で駆動データが命令write_IICによりIICバス82に書き込まれる。ここでOC_ODDATは、機能「駆動データ機能」(図15)のデータであることを意味し、“4”は4つの別のアーギュメント、すなわちOD_UBM,OD_TM,OD_OHおよびOD_COMが続くことを意味する(図15参照)。
【0184】
S422でINSTRがOC_GETFIFOと比較され、等しい場合にはS424へジャンプする。OC_GETFIFOは、次の値がFIFOから読み出されることを意味する。このFIFOには、各新たなエラーの際にエラークラス、エラーコードおよび瞬時の駆動データが充填される(図22)。このためにS424で次のデータがFIFOから取り出され、変数TMP_CLASS,TEMP_CODEおよびTMP_DATAに書き込まれる。これに基づきこれらのデータはwrite_IICによってバス82に書き込まれる。ここでOC_FIFOは、FIFOからのデータであることを指示し、“3”はさらなるパラメータTMP_CLASS,TMP_CODEおよびTMP_DATAの数を指示する。
【0185】
S430により可能な別のステップが示されている。D432でルーチンCOMMは終了する。このルーチンは図6によれば優先度L3を有している。
【0186】
本発明では異なる優先度(図6:L1からL23)を有する多数のルーチンが設けられており、それらの実行の際にエラーが検出されると、最初に「応急措置」が取られる。例えば図16のA/DルーチンにおいてS226で、センサ152への線路に断線の存在することが検出されると、S228でまず最初に相応のエラークラスがそして相応のエラーコードが記憶され、続いて図22のプログラムNEW_DISTが実行される。すでに他のエラーが存在していなければ、そこでDS_ACTIVEがセットされる。エラークラスとエラーコードは不揮発性メモリ74に記憶され、恒久的情報がエラーの形式を介して得られ、同様に関連する全ての駆動データがメモリ74に記憶される。続いて、まず図16のルーチンがさらに実行される。
【0187】
そしていつかプログラムは図6で、図23に示したエラー機能S640に達する。
【0188】
エラー機能では、DS_ACTIVEがセットされていることが検出され、オブジェクトテーブル111のワードDIST_REAC中のパラメータに相応して(これらのパラメータはモータの駆動中にもRAM97に存在する)、エラーに対して応答される。これらのパラメータは図12に示されている。ファンである場合には、DR_REAC(図12)は通常、値1を有する。すなわちモータ32の回転数は、温度センサ152のエラーの場合、最大値に調整され、これにより確実な送風が保証される。このことは図23のステップS366とS368で行われる。従ってセンサ152への接続が中断されると直ちに、最短時間でモータ32はその最大回転数に切り替えられる。
【0189】
例えばファンの騒音が非常に激しくなるため、このことを望まないならば、オブジェクトテーブルの値n_DISTに所定の回転数、例えば2500回転/minを記憶することができる。このようにすれば図12でDR_REACに対して値4,すなわちDR_n_DISTが選択される。エラー機能(図23)は次にエラーの際にステップS378とS380へ進み、モータ32をエラーが検出された際に2500回転/minの所定の回転数に切り替える。この回転数はモータのパラメータ化の際に任意に選択することができ、またユーザが適切なソフトウエアを有していれば後から変更することもできる。
【0190】
同じようにして図12でDR_ALにより、アラームを出力すべきか否かを設定することができる。そこでDR_ALが値1を有していれば、図23のステップS386とS388によりアラームがトリガされる。
【0191】
従ってモータにおいてエラーが検出される場合にこれが応答すべきか否か、およびどのように応答すべきかを簡単にパラメータ化することができる。いずれの場合でも、EEPROM74に記憶されたデータに、エラークラス、エラーコードおよびエラー時点での所属のモータデータ、例えば駆動時間、最大駆動電圧、最大温度、場合により時計時間、日付等が含まれており、これにより発生したエラーの後からの分析が格段に容易になり、あるいは可能となる。
【0192】
エラーが発生した際の作用は、事故の救出と比較することができる。まず、救急隊員が駆けつけ、救急包帯を施し、いくつかのデータを書き付け、これをラベルとして患者に貼り付ける。このことは、例えばルーチンA/D(図16)またはルーチンエラー識別(図17)でのエラーの検出、駆動データの記憶に相応する。引き続き救急隊員はフラグDS_ACTIVE=1をセットし、救急車が到着するまで被害者を横たえる。
【0193】
プログラム;エラー機能(図23)、すなわちエラー監視ルーチンは救急車に相応する。この救急車はいつか通過し、被害者をフラグDS_ACTIVE=1で識別し、被害者を乗せ、記憶された指示に相応して被害者を治療する。
【0194】
このようなシステムは非常にオープンであり、いずれの方向にも拡張可能であり、変更可能である。なぜなら変更はプログラムに該当するものではなく、オブジェクトテーブル111(図8)のデータにのみ該当するものだからである。いずれの場合でもまず救急隊員が到着し、所定のステップを実行し、引き続き救急車が到着し、同様に所定のステップを実行する。そしてこれら所定のステップはメモリ74にパラメータ化されている。
【0195】
本発明により、客観的データに基づいて、モータがその寿命に達しており、念のため交換すべきであるか否かを決定することができるという利点も得られる。
【0196】
駆動データの変数を不揮発性メモリに伝送するための適切な時間間隔は例えば時間の端数であり、10分、20分、30分等である。従って伝送は比較的まれにしか行われず、多くの計算時間を必要としない。それにもかかわらず、不揮発性メモリに記憶されたデータの良好な精度が得られる。なぜなら、電気モータは通常、比較的長時間にわたって中断なしで回転し、その際にその駆動データが変化することは稀だからである。
【0197】
瞬時の変数を古い駆動データ値として不揮発性メモリ74に確保するという別の手段では、マイクロプロセッサ23で、例えば電流欠落または電気モータ32の遮断時に発生するリセット時に終了ルーチンを実行することができる。この終了ルーチンでは、瞬時の変数を不揮発性メモリに記憶することができ、頻繁な中間記憶は必要なくなる。
【0198】
もちろん本発明の枠内で多種多様な変形および適用が可能である。
【図面の簡単な説明】
【図1】 図1は、電気モータを有する本発明の装置の全体概略図である。
【図2】 図2は、電子コミュテーション式モータを有する有利な実施例の全体回路図である。
【図3】 図3は、図2の三角波発生器に発生する電圧と信号の例としての線図である。
【図4】 図4は、ロータ位置センサ132により検知され、図2のμC23に引き渡される信号HALLの概略的線図である。
【図5】 図5は、図1に実現されたエラー機能85と警報機能86の概略線図である。
【図6】 図6は、機能マネージャの形態のメインプログラムであり、このプログラムは有利には本発明のモータに使用することができる。
【図7】 図7は、8ビットの制御語を示し、この8ビットは図8の機能マネージャで機能を実行ないしはこの要求をリセットするのに用いられる。
【図8】 図8は、図2のモータ32に対するパラメータを含むオブジェクトの表である。
【図9】 図9は、エラー機能(図2と図23)により使用される制御語DI_CTRLである。
【図10】 図10は、エラー機能により使用される状態語DI_STATEである。
【図11】 図11は、エラー機能により使用されるエラーコードDI_CODEである。
【図12】 図12は、エラー機能により使用される応答語DI_REACである。
【図13】 図13は、図6の機能「ホール割込」のフローチャートである。
【図14】 図14は、図6の機能「タイマφ割込」のフローチャートである。
【図15】 図15は、図6の機能「駆動データ機能」のフローチャートである。
【図16】 図16は、図6の機能「A/D」のフローチャートである。
【図17】 図17は、図6の機能「エラー識別」のフローチャートである。
【図18】 図18は、図2のμC23のRAM領域を示す。
【図19】 図19は、メモリ検査のための検査値を計算するための機能「CHK_CALC」のフローチャートである。
【図20】 図20は、機能「RAM_CHK_SET」のフローチャートであり、この機能は検査値RAM_CHKの計算、およびRAM領域の所定桁での記憶に用いられる。
【図21】 図21は、図17の機能「RAM_CHK_TEST」のフローチャートであり、この機能はメモリ検査に用いられる。
【図22】 図22は、機能「NEW_DIST」のフローチャートであり、このフローチャートは新たなエラーの際に呼び出される。
【図23】 図23は、図1と図6のルーチン「エラー機能」のフローチャートである。
【図24】 図24は、図6のルーチン「COMM」のフローチャートである。

Claims (13)

  1. 電子コミュテーション式モータ(32)の少なくとも1つの駆動データ値を不揮発性に記憶するための方法であって、
    前記電子コミュテーション式モータは、そのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ(23)(以下マイクロプロセッサと称する)と、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)とを有する形式の方法において、
    電子コミュテーション式モータ(32)をスイッチオンする際、古い駆動データ値を、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)から、マイクロプロセッサ(23)に配属された揮発性メモリ(97)に伝送し、そこに変数として記憶し、
    該変数の値をマイクロプロセッサ(23)により電子コミュテーション式モータ(32)がスイッチオンされている間の所定の時点で更新し、
    電子コミュテーション式モータ(32)がスイッチオンされている間に一定の時間間隔をおいて、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶された駆動データ値を、前記変数の更新された値により置換する、
    ことを特徴とする方法。
  2. 前記所定の時点は、コミュテーション過程間の時間領域にある、請求項1記載の方法。
  3. マイクロプロセッサ(23)のリセット後に、古い駆動データ値をマイクロプロセッサ(23)に配属された不揮発性メモリ(74)から、マイクロプロセッサ(23)に配属された揮発性メモリ(97)に伝送し、そこに変数として記憶する、請求項1または2記載の方法。
  4. マイクロプロセッサ(23)のリセット過程の際に、変数の更新値を古い駆動データ値として、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に伝送する、請求項1から3までのいずれか1項記載の方法。
  5. マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶された駆動データ値はデータ接続路(82)を介して問い合わせ可能である、請求項1から4までのいずれか1項記載の方法。
  6. マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶された駆動データ値の問い合わせを、データ接続路(82)を介してマイクロプロセッサ(23)により制御する、請求項5記載の方法。
  7. 電子コミュテーション式モータに温度センサ(152)を配属し、
    該温度センサ(152)により検出された温度(T)の極値(OD_TM)を駆動データ値(図8:OD_TMAX)として、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶する、請求項1から6までのいずれか1項記載の方法。
  8. 電子コミュテーション式モータ(32)はA/D変換器を有し、
    該A/D変換器によりアナログの駆動電圧(UB)がデジタル値に変換され、
    当該A/D変換器により変換された駆動電圧(UB)上側極値(OD_UBM)を駆動データ値(図8:OD_UBMAX)として、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶する、請求項1から7までのいずれか1項記載の方法。
  9. コミュテーションの数に相応する値(OD_COMM)を駆動データ値(図8:OD_COMMUT)として、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶する、請求項1から8までのいずれか1項記載の方法。
  10. 電子コミュテーション式モータ(32)の駆動持続時間(OD_OH)を、駆動時間カウンタの形式に従って駆動データ値(図8:OD_OHO)として、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶する、請求項1から9までのいずれか1項記載の方法。
  11. 電子コミュテーション式モータ(32)のスタート時に複数の駆動データ値を、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)から、マイクロプロセッサ(23)に配属された揮発性メモリ(RAM97)の所属の変数にロードし、次いでマイクロプロセッサ(23)により更新する、請求項1から10までのいずれか1項記載の方法。
  12. 電子コミュテーション式モータであって、
    当該電子コミュテーション式モータのコミュテーションを制御するマイクロプロセッサまたはマイクロコントローラ(23)(以下マイクロプロセッサと称する);
    マイクロプロセッサ(23)に配属された揮発性メモリ(97);
    マイクロプロセッサ(23)に配属された不揮発性メモリ(74);及び
    マイクロプロセッサ(23)に配属され、電子コミュテーション式モータ(32)の少なくとも1つの駆動データ値を不揮発性に記憶するためのプログラムであって、電子コミュテーション式モータ(32)をスイッチオンする際、古い駆動データ値を、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)から、マイクロプロセッサ(23)に配属された揮発性メモリ(97)に伝送し、そこで変数として記憶し;該変数の値をマイクロプロセッサ(23)により電子コミュテーション式モータ(32)がスイッチオンされている間の所定の時点で更新し;電子コミュテーション式モータ(32)がスイッチオンされている間に一定の時間間隔をおいて、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶された駆動データ値を、前記変数の更新された値により置換するプログラム
    を含む電子コミュテーション式モータ。
  13. データ収集線路(82)が設けられており、
    該データ収集線路を介して、マイクロプロセッサ(23)に配属された不揮発性メモリ(74)に記憶されたデータへのアクセスおよび/またはデータの当該マイクロプロセッサ(23)に配属された不揮発性メモリ(74)への記憶が可能である、請求項12記載の電子コミュテーション式モータ。
JP2000620427A 1999-05-21 2000-05-16 電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法、およびこの方法を実施するための電気モータ Expired - Fee Related JP4618897B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19923335 1999-05-21
DE19923335.7 1999-05-21
PCT/EP2000/004358 WO2000072098A1 (de) 1999-05-21 2000-05-16 Verfahren zum nichtflüchtigen speichern mindestens eines betriebsdatenwerts eines elektromotors, und elektromotor zur durchführung eines solchen verfahrens

Publications (3)

Publication Number Publication Date
JP2003500993A JP2003500993A (ja) 2003-01-07
JP2003500993A5 JP2003500993A5 (ja) 2007-07-19
JP4618897B2 true JP4618897B2 (ja) 2011-01-26

Family

ID=7908737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000620427A Expired - Fee Related JP4618897B2 (ja) 1999-05-21 2000-05-16 電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法、およびこの方法を実施するための電気モータ

Country Status (8)

Country Link
US (1) US6810292B1 (ja)
EP (1) EP1181628B1 (ja)
JP (1) JP4618897B2 (ja)
AT (1) ATE235074T1 (ja)
AU (1) AU4757200A (ja)
CA (1) CA2374619C (ja)
DE (2) DE50001502D1 (ja)
WO (1) WO2000072098A1 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2001284010A1 (en) * 2000-08-30 2002-03-13 Papst-Motoren Gmbh And Co. Kg Fan arrangement
US7225353B1 (en) * 2001-10-03 2007-05-29 Palm, Inc. Information preservation on a portable electronic device
DE10256045A1 (de) 2001-12-15 2003-06-26 Papst Motoren Gmbh & Co Kg Verfahren zur Verarbeitung von Daten bei einem elektronisch kommutierten Motor, und Motor zur Durchführung eines solchen Verfahrens
JP2003230536A (ja) * 2002-02-07 2003-08-19 Olympus Optical Co Ltd 電動湾曲内視鏡
DE10212064B4 (de) * 2002-03-19 2008-08-21 Robert Bosch Gmbh Betriebssteuerung für eine Handwerkzeugmaschine
DE10262302B4 (de) 2002-03-19 2018-04-05 Robert Bosch Gmbh Betriebssteuerung, Handwerkzeugmaschine und entsprechendes Betriebsverfahren
US7227748B2 (en) * 2003-03-31 2007-06-05 Sun Microsystems, Inc. Cooling module
US20040232864A1 (en) * 2003-05-23 2004-11-25 Hideki Sunaga Apparatus for controlling motor
DE102004045197A1 (de) * 2004-09-17 2006-04-06 Siemens Ag Verfahren zum Abschalten zumindest eines Regelungsteils eines Stromrichtergerätes
DE202005012557U1 (de) * 2005-08-10 2006-12-21 Brose Fahrzeugteile Gmbh & Co. Kommanditgesellschaft, Coburg Steuerungsvorrichtung und Verstelleinrichtung eines Kraftfahrzeugs
DE102006003892B4 (de) 2006-01-27 2018-03-08 Saurer Germany Gmbh & Co. Kg Verfahren zum Speichern von Betriebszustandsdaten eines elektromotorischen Antriebes einer eine Vielzahl von einzelmotorisch angetriebenen Arbeitsstellen umfassenden Textilmaschine sowie ein Antrieb zur Durchführung eines solchen Verfahrens
DE102006003890A1 (de) * 2006-01-27 2007-08-02 Saurer Gmbh & Co. Kg Verfahren zum Speichern von Betriebszustandsdaten eines Elektromotors sowie ein Elektromotor zur Durchführung eines solchen Verfahrens
DE102006025010A1 (de) * 2006-05-26 2007-11-29 Khs Ag Stellantrieb
US7675257B2 (en) 2007-03-09 2010-03-09 Regal Beloit Corporation Methods and systems for recording operating information of an electronically commutated motor
JP4520485B2 (ja) * 2007-05-29 2010-08-04 オリンパス株式会社 電動湾曲内視鏡
EP2051213A1 (de) * 2007-10-19 2009-04-22 Siemens Aktiengesellschaft Werkzeugmaschine, Produktionsmaschine und/oder Roboter
DE102009013490A1 (de) * 2009-03-17 2010-09-23 Oerlikon Textile Gmbh & Co. Kg Verfahren zum Betreiben einer Kreuzspulen herstellenden Textilmaschine und Kreuzspulen herstellende Textilmaschine
FR2943439B1 (fr) 2009-03-18 2011-03-04 Peugeot Citroen Automobiles Sa Procede de prise en compte de parametres de configuration par le logiciel d'un calculateur embarque a bord d'un vehicule
EP2590317B1 (en) * 2011-11-01 2013-08-21 ABB Oy A motor drive and a method of configuring a motor drive
US9438159B2 (en) * 2014-06-26 2016-09-06 Nidec Motor Corporation System and method for detecting and controlling a motor
US10656026B2 (en) 2016-04-15 2020-05-19 Emerson Climate Technologies, Inc. Temperature sensing circuit for transmitting data across isolation barrier
US10305373B2 (en) 2016-04-15 2019-05-28 Emerson Climate Technologies, Inc. Input reference signal generation systems and methods
US11387729B2 (en) 2016-04-15 2022-07-12 Emerson Climate Technologies, Inc. Buck-converter-based drive circuits for driving motors of compressors and condenser fans
US10763740B2 (en) 2016-04-15 2020-09-01 Emerson Climate Technologies, Inc. Switch off time control systems and methods
US9933842B2 (en) 2016-04-15 2018-04-03 Emerson Climate Technologies, Inc. Microcontroller architecture for power factor correction converter
US10277115B2 (en) 2016-04-15 2019-04-30 Emerson Climate Technologies, Inc. Filtering systems and methods for voltage control
US10320322B2 (en) 2016-04-15 2019-06-11 Emerson Climate Technologies, Inc. Switch actuation measurement circuit for voltage converter
DE102018212548A1 (de) * 2018-07-27 2020-01-30 Prüfrex engineering e motion gmbh & co. kg Verfahren zur Einstellung eines Arbeitsgeräts
US20220311365A1 (en) * 2021-03-23 2022-09-29 Snap-On Incorporated Controlling brushless motor commutation

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3873897A (en) 1972-05-25 1975-03-25 Papst Motoren Kg Collector-less D-C motor
US4689740A (en) 1980-10-31 1987-08-25 U.S. Philips Corporation Two-wire bus-system comprising a clock wire and a data wire for interconnecting a number of stations
JPH0754442B2 (ja) * 1983-11-24 1995-06-07 大倉電気株式会社 プロセス制御システム
US4920305A (en) * 1987-06-12 1990-04-24 The Babcock & Wilcox Company Auto calibrating electro hydraulic servo driver
CA1329827C (en) * 1988-06-22 1994-05-24 Samir F. Farag Motor controller
JP2749755B2 (ja) * 1993-03-02 1998-05-13 シーケーディ株式会社 電動機の制御装置
US5682471A (en) * 1994-10-06 1997-10-28 Billings; Thomas Neal System for transparently storing inputs to non-volatile storage and automatically re-entering them to reconstruct work if volatile memory is lost
JPH08182364A (ja) * 1994-12-27 1996-07-12 Toshiba Corp 超小形モータの位置制御装置
WO1996040558A1 (en) 1995-06-07 1996-12-19 Tetra Laval Holdings & Finance S.A. Diagnostic system for a servomotor driven apparatus
DE19650907A1 (de) 1995-12-18 1997-06-19 Papst Motoren Gmbh & Co Kg Elektronisch kommutierter Motor
KR100204027B1 (ko) * 1996-02-16 1999-06-15 정선종 이중면 비휘발성 메모리를 이용한 데이타베이스 회복 장치 및 그 방법
JP2865161B2 (ja) * 1996-02-20 1999-03-08 パラマウントベッド株式会社 運転記録機能を備えた電動ベッドの動作制御システム
US5708589A (en) * 1996-04-08 1998-01-13 Vaughn Manufacturing Corporation Error recovery system for an energy controller for an electric water heater
US5726911A (en) 1996-08-22 1998-03-10 Csi Technology, Inc. Electric motor monitor
JP3166634B2 (ja) * 1996-11-07 2001-05-14 日産自動車株式会社 車両用制御装置の故障記憶装置
US5884211A (en) * 1997-01-23 1999-03-16 Ford Global Technologies, Inc. System and method for memory reset of a vehicle controller
DE19740525C1 (de) * 1997-09-15 1999-02-04 Siemens Ag Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug
JP3932654B2 (ja) * 1998-03-10 2007-06-20 株式会社デンソー 車両用制御装置及び車両制御システム
DE19810222A1 (de) 1998-03-10 1999-09-16 Aeg Hausgeraete Gmbh Verfahren zum Betreiben eines Haushaltsgerätes, wie Wäschebehandlungs- oder Geschirrspülmaschine

Also Published As

Publication number Publication date
US6810292B1 (en) 2004-10-26
DE10024636A1 (de) 2000-11-23
WO2000072098A1 (de) 2000-11-30
CA2374619A1 (en) 2000-11-30
AU4757200A (en) 2000-12-12
EP1181628B1 (de) 2003-03-19
DE50001502D1 (de) 2003-04-24
ATE235074T1 (de) 2003-04-15
JP2003500993A (ja) 2003-01-07
CA2374619C (en) 2007-02-13
EP1181628A1 (de) 2002-02-27

Similar Documents

Publication Publication Date Title
JP4618897B2 (ja) 電気モータの少なくとも1つの駆動データ値を不揮発性に記憶するための方法、およびこの方法を実施するための電気モータ
JP4632552B2 (ja) 電気モータの駆動方法、およびこの方法を実施するための電気モータ
US20180367081A1 (en) Methods and systems for recording operating information of an electric motor
TWI397791B (zh) 增進直流無刷馬達及冷卻風扇之可靠度的微控制器方法
CA2375294C (en) Method for configuring the alarm device of an electrical motor and motor for implementing said method
US6949903B2 (en) Method and apparatus for digitizing a voltage
CN1300369A (zh) 检测多相电度表中篡改的装置和方法
US6496340B1 (en) Arrangement with an electric motor
JPH07194170A (ja) 電動機および電動機の制御方法
US20060056821A1 (en) Rotor-position sensor assembly and method for detecting a rotor position
JP4618890B2 (ja) 電子コミュテーション式モータ
US7069172B2 (en) Method and apparatus for accurate fan tachometer readings of PWM fans with different speeds
US20140340803A1 (en) Method of managing an electronic circuit including a thermal protection device and corresponding electronic circuit
CN109268299B (zh) 风机转向检测装置、检测方法及风机
JP2005502972A (ja) マイクロコントローラおよびeepromを含む回路装置の駆動方法
JP2017204989A (ja) モータ駆動制御装置およびモータ駆動制御方法
US20210148788A1 (en) Brushless dc motor with used time estimation and method of estimating used time thereof
JPH11264742A (ja) エンコーダの位置ずれ量検出装置
KR20190011194A (ko) 전압 모니터링 시스템
US20220416695A1 (en) Method of adaptively controlling brushless dc motor
ES2901809T3 (es) Procedimiento y dispositivo de control de la detención de un motor de un dispositivo de ocultación
ES2737980T3 (es) Sistema de comunicaciones y método de operación de este
CN117081433A (zh) 电机设备控制方法、装置、智能电器及存储介质
CN112732523A (zh) 一种服务器主板的rtc电池寿命监测电路和方法
JP2005502973A (ja) マイクロコントローラおよびeepromを含む回路装置の駆動方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070515

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100224

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100303

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100324

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100331

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100423

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100506

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100524

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

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

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

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees