JAJSJR7B August 2022 – October 2023 DRV8462
PRODUCTION DATA
ステッパ・モーター・システムでは、電源から供給される合計電力は負荷のトルク要件を満たすための電力と、モーターの巻線抵抗やドライバのオン抵抗による抵抗損失などの電力損失として消費されます。これは、次の式 12 によって決定されます。
ここで、τ は負荷トルク、ω はモーター速度です。
式 12 から、負荷トルクが増加すると、電源から供給される電力も増加することがわかります。自動トルク・アルゴリズムは、電源から供給される電力を監視して、負荷トルクに関する情報を取得します。定数損失は、ATQ_LRN パラメータで表され、ATQ_CNT パラメータは負荷トルクをサポートするために必要な電力を表します。
任意のモーターについて、ATQ_LRN はコイル電流に直接比例します。これは、式 13 で表現できます。
ここで、IM はモーター電流、VVM はドライバへの電源電圧、k は定数です。式 13 に、ATQ_LRN とモーター電流の線形関係を示します。自動トルク学習ルーチンは、無負荷時に任意の 2 つの電流で ATQ_LRN の値を学習し、この関係を使用して他の電流で ATQ_LRN の値を補間します。
ATQ_CNT パラメータは、負荷トルクをサポートする、供給される電力の成分を表します。この関係は式 14 で表すことができます。
ここで、k1 は特定の動作条件の定数で、IFS はステッパ・ドライバのフルスケール電流 (正弦波電流波形のピーク) です。
式 14 は、自動トルク・アルゴリズムの基本的な動作原理を定義します。ATQ_CNT パラメータを使用すると、ステッパ・モーターに印加される負荷トルクに基づいて、モーター・コイルの電流レギュレーションを実行できます。
図 7-25 に (ATQ_LRN + ATQ_CNT) を示します。これは、2.8A 定格のハイブリッド・バイポーラ NEMA 24 ステッパ・モーターの 2.5A フルスケール電流での負荷トルクの関数として測定されたものです。ATQ_LRN は負荷トルクに応じて変化しませんが、ATQ_CNT は負荷トルクに応じて線形的に変化します。
自動トルク・アルゴリズムをイネーブルにした後、学習ルーチンを実行して、ATQ_LRN パラメータを推定する必要があります。
この学習ルーチンは、式 13 で説明されている ATQ_LRN とモーター電流の間の線形関係を使用します。ユーザーは、2 つの電流値を選択して学習を実行する必要があります。モーターに負荷トルクは印加されません。これら 2 つの電流値は、ATQ_LRN_MIN_CURRENT レジスタおよび ATQ_LRN_STEP レジスタによってプログラムされます。
初期電流レベル = ATQ_LRN_MIN_CURRENT x 8
最終電流レベル = 初期電流レベル + ATQ_LRN_STEP
これら 2 つの電流の ATQ_LRN 値は、ATQ_LRN_CONST1 レジスタおよび ATQ_LRN_CONST2 レジスタに保存されます。これら 2 つのレジスタを使用して、アプリケーションの動作範囲内にある他のすべての電流の ATQ_LRN 値を補間します。
表 7-24 に、自動トルク学習ルーチンに関連するレジスタを示します。
レジスタ名 |
概要 |
---|---|
ATQ_LRN_MIN_CURRENT[4:0] | 自動トルク学習ルーチンの初期電流レベルを表します。 |
ATQ_LRN_STEP[1:0] | 初期電流レベルまでのインクリメントを表します。次の 4 つのオプションをサポートしています。
例:ATQ_LRN_STEP = 10b かつ ATQ_LRN_MIN_CURRENT = 11000b の場合
|
ATQ_LRN_CYCLE_SELECT[1:0] | 学習ルーチンにより電流が他のレベルになった後のある電流レベルで消費される電気的半周期の数を表します。次の 4 つのオプションをサポートしています。
|
LRN_START | このビットに 1b を書き込むと、自動トルク学習ルーチンがイネーブルになります。学習が完了すると、このビットは自動的に 0b になります。 |
LRN_DONE | 学習が完了すると、このビットは 1b になります。 |
ATQ_LRN_CONST1[10:0] | 初期学習電流レベルにおける ATQ_LRN パラメータを示します。 |
ATQ_LRN_CONST2[10:0] | 最終学習電流レベルにおける ATQ_LRN パラメータを示します。 |
VM_SCALE | このビットが 1b のとき、自動トルク・アルゴリズムは電源電圧の変動に応じて、ATQ_UL、ATQ_LL、および ATQ_LRN パラメータを自動的に調整します。 |
学習ルーチンのパラメータを設定する際に考慮すべき点はいくつかあります。
初期電流レベルは、最大動作電流の 30%~50% の範囲で選択することを推奨します。
最終電流レベルは 255 を超えないようにする必要があり、最大動作電流の 80%~100% の範囲で選択できます。
(高速または電源電圧が低いことによる) 電流波形の歪みにより、ATQ_LRN パラメータの読み取り値が不正確になる可能性があります。学習電流レベルは、波形の歪みが観察される電流から離して選択する必要があります。
ATQ_LRN_CYCLE_SELECT の値が小さいと、学習が迅速化します。ただし、ノイズが発生しやすいシステムでは、より大きな ATQ_LRN_CYCLE_SELECT 値を使用すると、より安定した ATQ_LRN パラメータ値が得られます。
学習は、モーターが定常状態の速度に達したときに実施する必要があります。
モーターを変更した場合、またはモーター速度が ±10% 変化した場合は、再学習を行う必要があります。
概略として、自動学習をイネーブルにするには、次の一連のコマンドを適用する必要があります。
ATQ_EN に 1b を書き込みます
負荷なしでモーターを動作させます
ATQ_LRN_MIN_CURRENT をプログラムします
ATQ_LRN_STEP をプログラムします
ATQ_LRN_CYCLE_SELECT をプログラムします
ATQ_LRN_START に 1b を書き込みます
このアルゴリズムは、電気的半周期の ATQ_LRN_CYCLE_SELECT 数の間、初期電流レベルでモーターを動作させます
次に、アルゴリズムは、電気的半周期の ATQ_LRN_CYCLE_SELECT 数の間、最終電流レベルでモーターを動作させます
学習が完了すると、
ATQ_LRN_START ビットは 0b に自動クリアされます
ATQ_LRN_DONE ビットは 1b になります
ATQ_LRN_CONST1 および ATQ_LRN_CONST2 は、各レジスタに入力されます
モーター電流は、ATQ_TRQ_MAX になります
ATQ_LRN_CONST1 と ATQ_LRN_CONST2 がプロトタイプ・テストからわかったら、学習ルーチンを再起動せずにそれらを量産に使用できます。次のコマンド・シーケンスを量産で適用します。
VREF は、プロトタイプ・テストの学習時と同じ値に設定されます
ATQ_LRN_MIN_CURRENT をプログラムします
ATQ_LRN_STEP をプログラムします
ATQ_LRN_CONST1 をプログラムします
ATQ_LRN_CONST2 をプログラムします
ATQ_EN に 1b を書き込みます
自動トルク学習ルーチンの要約のフローチャートを、図 7-26 に示します。
図 7-27 は、初期電流 740mA (IFS1) と最終電流 2.2A (IFS2) での自動学習プロセスを示しています。ATQ_LEARN_CYCLE_SELECT は、32 半周期に対応します。