チェーンチェッカー

固定点と回転軸からチェーンの停止角度または必要長さを計算

座標入力

X
Y
Z
X
Y
Z
X
Y
Z

2D投影図(X-Y平面)

XYCABB'
固定点A初期B回転後B'回転中心C

計算結果

判定

解なし

不可

指定チェーン長さで到達可能な角度が見つからない

初期距離 A-B
100.00 mm

本ツールは設計支援用の参考計算ツールだ。計算結果は参考値であり、最終的な設計判断は専門家の確認を行ってほしい。計算結果の利用による損害について作者は責任を負わない。

チェーン長さと弛み量を即座にシミュレーション

回転する部品にチェーンやワイヤーをつないで、「ここで止めたい」と思ったことはないだろうか。たとえば、回転式のフラップ、クレーンのブーム、展示台のストッパー。チェーンの長さが足りなければ止まらないし、長すぎれば意味がない。

チェーンチェッカーは、固定点A・回転点B・回転中心Cの3D座標を入力するだけで、チェーン長さから停止角度を自動計算する。逆に、「この角度で止めたい」と指定すれば必要なチェーン長さを逆算してくれる。SVGの2D投影図でポイントの位置関係を視覚的に確認できるのも特徴だ。

なぜチェーンチェッカーを作ったのか

開発のきっかけ

回転機構にチェーンストッパーを設計する場面があった。回転軸と固定点の位置から「チェーンが何ミリあれば何度で止まるか」を手計算していたのだが、これが地味に面倒だった。回転後の座標を三角関数で求めて、ユークリッド距離を計算して、逆にチェーン長さから角度を求めるには逆問題を解く必要がある。

スプレッドシートで組んでみたが、3D座標を扱うと式が複雑になり、回転軸を変えるたびに数式を書き直す羽目になった。既存のオンラインツールも探したが、「回転+チェーン長さ→停止角度」をピンポイントで解いてくれるものは見つからなかった。

こだわった設計判断

  • スキャン+二分法: 距離関数は回転角に対して周期的で単調ではないため、単純な二分法では解が見つからない。0.5度刻みでスキャンして符号変化を検出し、各区間で二分法を適用する方式にした
  • 3軸対応: X/Y/Z軸どれでも回転できるようにした。軸を切り替えるだけで異なる回転面での計算ができる
  • SVG投影図: 回転軸に垂直な平面に自動投影するので、回転の様子が直感的にわかる

こんな設計・メンテナンスで活躍

フラップやゲートの開閉制限

回転式のフラップやゲートにチェーンを取り付けて、開く角度を制限したい場面。固定点(壁など)と回転点(フラップ端)の座標を入力すれば、必要なチェーン長さや停止角度がすぐにわかる。

クレーンブームの可動域確認

クレーンのブームがどの角度まで起きるか、ワイヤーの長さから確認したい場面。回転中心(ピン位置)と固定点の座標を入れるだけで、ワイヤー長さに対する停止角度を算出できる。

展示台や回転ディスプレイの設計

DIYで回転式の展示台を作るとき、チェーンで回転範囲を制限したい場合。3D座標の入力に対応しているので、上下にオフセットがある取り付け位置でも正確に計算できる。

教育・学習目的

大学や専門学校で回転運動と拘束条件を学ぶ際の教材として。座標を変えながらリアルタイムに結果が変わるので、パラメータの影響を直感的に理解できる。

基本の使い方

たった3ステップで計算が完了する。

Step 1: 座標を入力する

固定点A、回転点B、回転中心Cの座標をmm単位で入力する。回転軸(X/Y/Z)を選択する。

Step 2: モードを選ぶ

「角度を求める」モードではチェーン長さを入力する。「長さを求める」モードでは停止角度を入力する。

Step 3: 結果を確認する

計算結果がリアルタイムで表示される。SVG投影図でA, B, B'(回転後), Cの位置関係を視覚的に確認してみて。

具体的な使用例(検証データ)

ケース1: 基本的なZ軸回転

水平面上でフラップの停止角度を求める基本的なケース。

入力値:

  • 固定点A: (0, 0, 0)
  • 回転点B: (100, 0, 0)
  • 回転中心C: (50, 0, 0)
  • 回転軸: Z
  • チェーン長さ: 120 mm

計算結果:

  • 最小停止角度: 約73.74°
  • 解の数: 2(対称解あり)

解釈: B点はCを中心に半径50mmの円上を回転する。チェーン長さ120mmが張り切る角度が約73.74°。A-B間の初期距離は100mmなので、チェーンに20mmの余裕がある状態から回転を始め、約74度でピンと張る。

ケース2: 長さを求めるモード

指定した角度でフラップを停止させるために必要なチェーン長さを逆算する。

入力値:

  • 固定点A: (0, 0, 0)
  • 回転点B: (100, 0, 0)
  • 回転中心C: (50, 0, 0)
  • 回転軸: Z
  • 停止角度: 90°

計算結果:

  • 必要チェーン長さ: 約111.80 mm

解釈: 90度で止めるには、チェーン長さを約112mmに設定すればよい。初期距離100mmより約12mm長いチェーンが必要。

ケース3: 3Dオフセットがある場合

固定点が回転面から外れている(Z座標が異なる)ケース。

入力値:

  • 固定点A: (0, 0, 50)
  • 回転点B: (100, 0, 0)
  • 回転中心C: (50, 0, 0)
  • 回転軸: Z
  • チェーン長さ: 150 mm

計算結果:

  • 初期距離 A-B: 約111.80 mm(3D距離)
  • 最小停止角度: 結果はZ軸周りの回転で3D距離がチェーン長さに一致する角度

解釈: Aが50mm上方にオフセットしている分、初期距離が2D計算より長くなる。3D座標を考慮した正確な計算ができるのがこのツールの強み。

ケース4: Y軸回転(縦方向の回転)

ブームの起伏運動のように、Y軸周りの回転を計算するケース。

入力値:

  • 固定点A: (0, 0, 0)
  • 回転点B: (200, 0, 0)
  • 回転中心C: (0, 0, 0)(原点に回転中心)
  • 回転軸: Y
  • チェーン長さ: 250 mm

計算結果:

  • 最小停止角度: 回転半径200mm、チェーン250mmの条件でXZ平面内の停止角度

解釈: Y軸回転ではXZ平面内でBが回転する。SVG投影図はX-Z平面を表示するので、ブームの起伏運動を確認できる。

仕組み・アルゴリズム

採用しているアルゴリズム

チェーンチェッカーは、2D回転行列二分法を組み合わせた数値解法を使っている。

回転は選択した座標軸に対する2D回転として処理する。たとえばZ軸回転の場合、XY平面内で回転中心Cを基準にB点を回す。回転行列は標準的な反時計回り正の定義を採用している。

具体的な計算の流れ

1. f(θ) = distance(A, rotate(B, C, axis, θ)) − chainLength を定義
2. θ = 0° ~ 360° を 0.5° 刻みでスキャンし、f(θ)の符号が変化する区間を検出
3. 各区間で二分法を適用し、f(θ) ≈ 0 となる角度を求める
4. 全解のうち最小の正角度を返す

なぜスキャン+二分法なのか

距離関数 d(θ) = |A − B'(θ)| は回転角に対して周期的で、一般には単調ではない。1周期内に0個、1個、または2個の解が存在しうる。単純な二分法は単調区間でしか使えないため、まずスキャンで符号変化を検出し、各単調区間で二分法を適用する方式を採用した。スキャン(720回の距離計算)+二分法(各区間で最大100回)で、合計1000回未満の浮動小数点演算で済むため、Web Workerを使わずとも十分高速だ。

手計算やCADとの違い

データを外部に送信しない

すべての計算はブラウザ内で完結する。座標データや計算結果はサーバーに送信されない。設計中の機密情報を扱う場面でも安心して使える。

3軸の回転に対応

X軸・Y軸・Z軸のどれでも回転軸として選択できる。回転軸を切り替えるだけで、水平回転(Z軸)、縦方向の起伏(Y軸)、横方向の傾斜(X軸)と異なる回転面での計算ができる。

複数解の検出

チェーン長さに対して複数の停止角度が存在する場合(たとえば往路と復路で2つの解がある場合)、すべての解を検出して表示する。

知っておくと便利なチェーン機構の豆知識

チェーンとワイヤーの使い分け

チェーンは引張にしか耐えられない「片方向拘束」要素だ。ワイヤーも同様だが、チェーンはリンク構造のため曲げに追従しやすく、ワイヤーは連続体なので滑車との相性が良い。回転ストッパーにはチェーンが使われることが多い。

安全チェーンの規格

産業用の安全チェーンにはJIS B 2801などの規格がある。使用荷重(SWL)は破断荷重の1/4〜1/5に設定されるのが一般的で、設計時にはチェーンの長さだけでなく強度も考慮する必要がある。

回転角度と弧長の関係

回転半径 r で角度 θ(ラジアン)だけ回転すると、弧の長さは s = rθ になる。チェーンの長さと弧長は異なる概念で、チェーンは直線距離(弦の長さ)で拘束するのに対し、弧長は実際の回転経路の長さだ。この違いを混同すると設計ミスにつながる。

使い方のコツ・Tips

座標系の選び方

回転軸と平行な方向の座標は回転に影響しない。たとえばZ軸回転なら、Z座標は距離計算にのみ関与する。まず回転面(2D)で考えて、オフセットを3番目の座標で追加するのがわかりやすい。

複数解がある場合の読み方

「角度を求める」モードで2つの解が表示された場合、小さい方が「チェーンが初めてピンと張る角度」、大きい方が「チェーンが再びピンと張る角度(戻り側)」に対応することが多い。SVG図で確認してみて。

回転中心と回転点が近い場合

回転半径(CからBまでの回転面内の距離)が小さいと、チェーンの長さの変化が小さくなり、解の精度が下がる場合がある。詳細設定で角度許容誤差を小さくすると改善できる。

疑問点まとめ

Q: データはどこに保存される?

すべてブラウザ内で処理される。サーバーにデータは送信されないし、ブラウザを閉じれば入力内容は残らない(「設定を保存」ボタンでlocalStorageに保存した場合を除く)。

Q: 解が見つからない場合は?

チェーン長さが短すぎて、回転しても到達できない場合は「解なし」と表示される。チェーン長さを長くするか、座標を見直してみて。

Q: 負の角度を入力できる?

「長さを求める」モードでは負の角度も入力可能だ。負の角度は反時計回り方向の回転を意味する(正の角度と逆方向)。

Q: 精度はどのくらい?

デフォルトの角度許容誤差は0.01度。実用的には十分な精度だが、詳細設定から調整もできる。

まとめ

チェーンチェッカーは、回転機構のチェーン長さと停止角度を相互に計算できる設計支援ツールだ。

3D座標を入力するだけで、スキャン+二分法による確実な数値解法が自動で走り、SVG投影図で結果を視覚的に確認できる。設計図面を引く前のサッとした検算に使ってみて。

構造系の計算が必要なら、梁の安全審判員で曲げ応力やたわみの計算もできる。ボルト接合の強度が気になる場合はボルト強度・破断モード診断も試してみて。

0.5°スキャン+二分法を採用した設計判断の全貌は開発秘話に詳しく書いた。数値例と二分法の収束証明は技術深掘り記事で確認できる。


不具合や要望があれば、お問い合わせページから気軽に教えて。

M

Mahiro

Mahiro Appの開発者。チェーン駆動の設計でスプロケット間のチェーン長さと弛み量を即座に確認できるツールが欲しくて開発に着手した。

運営者情報を見る

© 2026 チェーンチェッカー