ステップ数計算(E-Steps)

3Dプリンター・CNC校正ツール•浮動小数点丸め誤差

ステップ数計算(E-Steps)

3DプリンターやCNCの理論ステップ数・実測ステップ数(steps/mm、steps/inch)およびKlipperのrotation_distanceを高精度に計算。GT2ベルト、T8リードスクリュー、ボールねじ、ギア式エクストルーダーのE-Steps(押出量)キャリブレーションに完全対応しています。

プリセット設定

機構・キネマティクス設定

GT2タイミングベルト: ピッチ2mm。プーリーの歯数(16T/20Tなど)を入力します。
例: 20T(標準GT2プーリー)
1:1 (1:1)
モーター側歯数
従動側歯数
150 mm/s
5 mm/s (Extrusion)150 mm/s (Standard Print)500 mm/s (Rapid Travel)

実測キャリブレーション(補正計算)

調整ステータス
Marlin M92設定: 「M92 E[値]」で反映後、「M500」でEEPROMに永続保存します。
押出テストコマンド: 「G1 E100 F100」で100mmを適正速度(F100)にて押し出します。
ノギス実測値: テスト押出または軸移動後にノギスで測定した実測寸法を入力します。
ステップ数 / mm
80.00
理論計算値
Klipper回転距離 (rotation_distance)
40.0000
1回転あたりの移動量
分解能
12.50μm
標準(1.8°)/高精度(0.9°)
ステップ周波数
12.0kHz
安全(安定動作)
駆動機構の構造ダイアグラム40.00 mm / rev
X Axis Carriage20T Pulley (2mm Pitch)Linear Advance: 40.00 mm / turn
1回転あたりの総ステップ数3200 1回転マイクロステップ数
1回転あたりの移動量40.000 mm
ギア減速比1.000x
位置決め分解能12.500 μm
1回転マイクロステップ数

3,200 マイクロステップ

1回転移動量

40.000 mm / turn

理論分解能

12.500 1ステップ移動量 (µm)

ブラウザ完結の高速処理

すべての計算がブラウザのメモリ内で完結し、瞬時に結果を出力します。

サーバー送信ゼロのプライバシー保護

入力データは端末内のみで処理され、外部サーバーへの通信は一切行われません。

実機に即時反映できる出力形式

MarlinやKlipperなどのファームウェアにそのまま設定可能な最適化フォーマットで出力します。

無断転載を禁じます。
技術リファレンス・アーキテクチャガイド

Steps/mm&E-Step計算 — 技術リファレンス

3DプリンターやCNC工作機械の理論値および実測値に基づくSteps/mm(ステップ数/mm)、Steps/inch、Klipperのrotation_distance(回転距離)を高精度に計算します。GT2タイミングベルト、T8リードスクリュー、ボールねじ、ギア付きエクストルーダー(E-step)の正確な校正をサポートします。

Steps/mm&E-Step計算 — 技術リファレンス — クライアントサイド完全ローカル実行アーキテクチャ図
Steps/mm&E-Step計算 — 技術リファレンス — クライアントサイド完全ローカル実行アーキテクチャ図

主要パラメータと設定項目

モーターのステップ角(θ)機械角(度)

ステッピングモーターの物理的なローター停止位置(ディテント)の分解能を定義します。ステップ角1.8°は1回転あたり200フルステップ、0.9°は1回転あたり400フルステップとなり、物理的に2倍の位置決め精度が得られます。

初期値: 1.8°(200フルステップ)
マイクロステップ分割数(uStep)正弦波/余弦波 電流補間

モータードライバー(A4988、DRV8825、TMC2209など)によってフルステップを電気的に細分化する設定です。1/16分割は、動作時の静音化とモーター保持トルクの維持を高次元で両立する業界標準の推奨値です。

初期値: 16(1/16分割)
ドライブプーリーの歯数(Z)歯数(整数)

ベルト駆動軸において、モーター1回転あたりのキャリッジ直動移動量を決定します。ピッチ2mmのGT2ベルトの場合、20歯プーリーは1回転で40mm移動(1/16分割時:80 steps/mm)、16歯プーリーは32mm移動(1/16分割時:100 steps/mm)となります。

初期値: 20歯
リードスクリューのリードとピッチ直動寸法(mm)

リード(1回転あたりの進み量)=ピッチ(隣り合うねじ山の間隔)×条数(ねじ山の本数)で算出されます。代表的なT8x8スクリューはピッチ2.0mm・4条ねじのため、1回転で8.0mm進みます(1/16分割時:400 steps/mm)。リードとピッチを混同すると、Z軸の造形寸法に400%(4倍または1/4)の重大な誤差が発生します。

初期値: リード 8.0mm(ピッチ2.0mm × 4条)
フィラメント送りギア有効径有効ピッチ径(mm)

高硬度スチール製ギアの歯が樹脂フィラメントに食い込む谷底部分の有効噛み合い径です。小型軽量エクストルーダーでは約5.5mm、標準的なデュアルドライブギアでは約7.5mmの範囲となります。

初期値: 7.3 mm
キャリブレーション補正比率無次元係数(乗数)

デジタルノギス等による実測移動量とファームウェアへの指示移動量から算出する実測補正係数です。「新ステップ数 = 現在のステップ数 ×(指示値 ÷ 実測値)」で算出します。

初期値: 1.0000

現場のベストプラクティス・実践Tips

ノズルの背圧(流動抵抗)をかけたままE-stepを校正しない

加熱したノズルを通してフィラメントを押し出しながらE-stepを校正すると、モーターの純粋な送り量にノズル内の溶融粘度抵抗、ダイスウェル現象、ドライブギアの滑りが混ざり込み、誤った値になります。必ずPTFEボーデンチューブを外すかノズルを取り外し、大気中へ負荷なく送り出す「空中押出(フリーエア押出)」状態で測定して純粋な機械的steps/mmを確定させてください。造形時の流量微調整は、スライサー側のフローレート(押出倍率)で個別に行うのが鉄則です。

Klipperのrotation_distanceはMarlinのSteps/mmと反比例する

Marlinの「steps/mm」が1mm進むために必要な電気的パルス数を定義するのに対し、Klipperの「rotation_distance」はモーターが360°(1回転)したときに機械軸が何mm進むかを定義します。相互の換算式は「rotation_distance = (1回転のフルステップ数 × マイクロステップ分割数) ÷ steps_per_mm」です。重要な点として、Klipperではドライバーのマイクロステップ設定を変更しても、機械固有値であるrotation_distanceの数値を変更する必要はありません。

T8x2・T8x4・T8x8リードスクリューの条数の見落としに注意

外径8mmの台形ねじ(T8)は外見が酷似していますが、条数(ねじ山スジの開始数)によってリードが全く異なります。ロッドの切断面(先端)を観察し、ねじ山が何条あるかを確認してください。1条ねじ=T8x2(リード2mm、1/16分割時:1600 steps/mm)、2条ねじ=T8x4(リード4mm、1/16分割時:800 steps/mm)、4条ねじ=T8x8(リード8mm、1/16分割時:400 steps/mm)となります。T8x2スクリューにT8x8用の「400 steps/mm」を誤適用すると、造形物の高さが設計値の25%(1/4)になってしまいます。

1/256マイクロステップの保持トルク低下の罠とクロック飽和

ドライバーを1/256マイクロステップに設定しても、実質的な位置決め精度は向上しません。隣接ステップ間の増分保持トルクは最大トルクのわずか0.78%未満まで激減し、機械摩擦によってローターが最寄りのフルステップ磁気ディテント位置に引き寄せられるためです。さらに、200mm/sなどの高速移動時に1/256設定にすると、250kHzを超えるパルス生成が必要となり、マイコンの演算クロックが飽和して脱調を招きます。ドライバー側で256補間を行うTMCの「StealthChop」機能と組み合わせ、基本設定は1/16を採用するのが最適です。

よくある落とし穴とトラブルシューティング

⚠️校正中にエクストルーダーからカチカチ音(クリック音)がして脱調するか、押し出し不足になる

指示した押出速度に対してホットエンドの加熱温度が十分か確認してください(テスト時の押出速度は5mm/sまたは300mm/min以下に抑えてください)。モーターが十分なトルクを出せるようモータードライバーのVREF(基準電圧)電流値を確認し、プラスチック製テンションアームの亀裂・割れがないか、送りギアの溝にフィラメントの削り粉が詰まっていないかを点検してください。

⚠️キャリブレーションキューブのZ軸の高さがCAD設計寸法のちょうど半分、または2倍になる

物理的なリードスクリューの条数の不一致(例:T8x4とT8x8の取り違え)や、ドライバーのマイクロステップ設定ジャンパーピン(1/8と1/16)の誤認が典型的な原因です。ファームウェア(EEPROM)に設定されているZ軸の値が400 steps/mmなのか800 steps/mmなのかを確認してください。ターミナルから「M92 Z[正しい値]」を送信して更新し、必ず「M500」を実行してEEPROMに保存してください。

⚠️移動速度が150mm/sを超えると軸が停止(脱調ストール)したり、異音を上げてステップ飛びを起こす

マイコンの最大ステップパルス生成周波数を確認してください。8ビットのAtmega2560ボード(RAMPS等)の上限は約40kHzであり、80 steps/mmのベルト軸なら500mm/sまで対応できますが、1600 steps/mmのリードスクリュー軸ではわずか25mm/sで頭打ちになります。マイクロステップが1/32以上に設定されている場合は1/16に下げるか、ファームウェア側の最大送り速度(Max Feedrate)を制限してください。

⚠️Marlinのsteps/mmの値をそのままKlipperに設定したら、キャリッジがわずかしか動かない

Klipperの「printer.cfg」ではsteps/mmという単位は使用しません。1.8°モーター(200ステップ)、1/16マイクロステップでMarlinのsteps/mmが400だった場合、Klipperのrotation_distanceは「(200 × 16) ÷ 400 = 8.0」となります。もし誤ってrotation_distanceに「400」と入力すると、1回転あたり400mm進む設定となり、指示移動量に対してキャリッジがごく僅かしか動かなくなります。

よくある質問 (FAQ)

Steps/mm(ステップ数/mm)の計算式は?▼

汎用的な理論計算式は「Steps_per_mm = (1回転のモーターステップ数 × マイクロステップ分割数 × ギア比) ÷ モーター1回転あたりの移動量」です。例えば、歯数20のGT2プーリー(ピッチ2mm)、ステップ角1.8°モーター(200ステップ)、1/16マイクロステップの場合、「(200 × 16 × 1) ÷ (2mm × 20歯) = 3200 ÷ 40 = 80 steps/mm」となります。

デジタルノギスを使ったエクストルーダー(E-step)の校正手順は?▼

まずエクストルーダー導入口から正確に120mmの位置に、細字油性ペンでフィラメントに印を付けます。ノズルを適正温度に加熱(またはボーデンチューブを外して負荷のない状態に)し、Gコード「G1 E100 F100」を送信して100mm押し出します。押出停止後、導入口から印までの残り距離をデジタルノギスで測定します。「実際の押出量 = 120mm - 残り距離」で実測値を求め、「新E-step = (現在のE-step × 100) ÷ 実際の押出量」で計算します。最後に「M92 E[新数値]」を送信し、「M500」でEEPROMに保存します。

MarlinのSteps/mmをKlipperのrotation_distanceに変換する方法は?▼

Marlinのsteps/mmからKlipperのrotation_distanceへの変換には、「rotation_distance = (1回転のフルステップ数 × マイクロステップ分割数) ÷ Marlinのsteps/mm」の計算式を使用します。例えば、1.8°モーター(200ステップ)、1/16マイクロステップ、Z軸が400 steps/mmの場合、「(200 × 16) ÷ 400 = 8.0mm」となります。Klipperにおけるrotation_distanceはモーター1回転あたりの機械的な進み量を表すため、マイクロステップ設定を変更してもこの値は常に一定です。

T8x2・T8x4・T8x8リードスクリューの違いは何ですか?▼

いずれも外径8mm・隣り合うねじ山の間隔(ピッチ)は2mmで共通ですが、ねじ山の本数である「条数(Starts)」が異なります。T8x2は1条ねじ(1回転の進み量:リード2mm、1/16分割時:1600 steps/mm)、T8x4は2条ねじ(リード4mm、1/16分割時:800 steps/mm)、T8x8は4条ねじ(リード8mm、1/16分割時:400 steps/mm)です。T8x2スクリューにT8x8用の設定を適用すると、造形物の高さが設計寸法の25%(4分の1)になってしまいます。

マイクロステップ分割数を高くすると保持トルクが低下するのはなぜですか?▼

マイクロステップ駆動は、モーターコイルに流す電流を正弦波・余弦波状に制御してフルステップ間に電気的な中間停止位置を作り出します。しかし、分割数を増やすほど連続するマイクロステップ間の増分保持トルクは急激に低下します。1/16分割では最大トルクの約9.8%が維持されますが、1/256分割ではわずか0.78%まで低下します。その結果、わずかな摩擦や切削負荷によってローターが容易に変位し、最も近いフルステップの磁気安定位置へ引きずられてしまいます。

CNCのねじ山数(TPI)からSteps/inchを計算する方法は?▼

インチ規格のCNC軸の場合、計算式は「Steps_per_inch = (1回転のフルステップ数 × マイクロステップ分割数 × ギア比) × TPI(1インチあたりのねじ山数)」となります。例えば、1.8°モーター(200ステップ)、1/8マイクロステップ(1回転1,600マイクロステップ)、直結駆動(ギア比1:1)、1/2インチ-10 ACME単条スクリュー(10 TPI)の場合、「1,600 × 10 = 16,000 steps/inch」(ミリ換算で約629.92 steps/mm)となります。

関連開発者ツール

全ツール一覧 →
階段カーペット必要量計算ユーティリティ

直線階段や踊り場付き階段に必要なカーペットの長さ・総面積・ロール数を高精度に算出。ハリウッド工法とウォーターフォール工法の施工ロス率や端材も比較できます。

ツールを開く→
フォンダン必要量・ケーキ段数計算ユーティリティ

丸型・角型および多段ケーキに必要なフォンダン重量、伸ばす円の直径、市販パック数を正確に計算。ひび割れや余剰ロスのない美しいカバーリングを実現します。

ツールを開く→
家庭菜園 収穫量計算・作付計画ユーティリティ

家庭菜園や自給自足を目指す方のための総合収穫量計算ツールです。30種類以上の野菜の年間予想収穫量(kg)、家族分の必要食数、推奨レイズドベッド(畝)面積、摂取カロリーまで高精度に試算します。

ツールを開く→
家庭菜園の株間・畝配置計算ユーティリティ

畝やレイズドベッドの作付計画に。株間・条間の植え付け密度や必要苗数を自動計算し、正方植えと千鳥植え(三角配置)の収穫効率の差も一目で比較できます。

ツールを開く→
ジャグジー水質・薬剤投入計算ユーティリティ

塩素、臭素、pH調整剤、総アルカリ度、カルシウム硬度、ショック処理剤の正確な投入量を自動計算。ランゲリア飽和指数(LSI)の水質診断や次回完全換水までの推奨日数カウントダウン機能を搭載しています。

ツールを開く→
温室暖房負荷・熱量計算(BTU)ユーティリティ

温室やビニールハウスの暖房に必要な熱量(W・BTU/h)を瞬時に算出。被覆材の熱貫流率(U値)や表面放熱ロス、換気・隙間風損失、冬季の燃料コストまで正確に試算します。

ツールを開く→