PR

二輪車のトレール、ホイールベース計算方法について (ベクトルを使った車両諸元計算)

車両諸元

二輪車の車両諸元の計算

ママチャリでは聞かないが、モーターサイクルにしろ競技用の自転車等で、操安向上目的にてフロント周りの変更(パーツ交換等にて)、サスペンションのセッティング変更を行う場合がある。で、変更する際に必要な情報の一つが、それにより操安性に影響するキャスター角、トレール、ホイールベースの値がどれぐらいが変わるか?の情報。

これをベクトルの内積計算 & 回転行列を使って計算。この計算はベクトルで考えると整理しやすい。

(内積、回転行列については以下を)

さて今回は、サスペンションのストローク変化に伴うキャスター角、トレール長、ホイールベース長の計算を主眼として、二次元で考える(転舵時の計算はまた今度)。

座標系を \( \small{O_0-X_0Z_0} \)(右手右ねじ系)とし、モデルの構成は以下とする。

図①
  • フロントタイヤ(アクスル中心(点 \(A_{ft} \))を保持するフロントフォークは、トップブリッジ&ボトムブリッジを介してステアリング軸をもつフレームボディのヘッドパイプ(以下 \( \small{H/P} \) )にてフレームボディーに結合される
    ( \( \small{H/P} \) の下端点を点 \(H_l \) とする)
  • リアタイヤ(アクスル中心(点 \(A_{rr} \)) を保持するリアフォークは、その回転のピボット点 にてフレームに結合される
  • 座標系 \( \small{O_0-X_0Z_0} \) の原点 \(O_0 \)にフレームボディーのリアフォークピボット点を設置し、キャスター角 \(θ_{c 0} \) にて\( \small{H/P} \) 下端高を設置し、フレームボディーを \( \small{O_0-X_0Z_0} \) に固定する(ばね上固定)。
    (キャスター角 \(θ_{c 0} \) :フレームボディーの \( \small{H/P} \) 軸(ステアリング軸)と鉛直方向(\(Z_0 \) 軸平行)のなす角)
  • リアタイヤの位置はリアフォークのピボット点を中心とした回転方向(②)に沿ってのみ動く
  • フロントタイヤの位置はフロントフォークの伸縮方向(①)に沿ってのみ動く

さて、フロントタイヤ接地点とリアタイヤ接地点を結ぶ線がグランドライン(地面基準の水平線:以下 \( \small{G/L} \))、また、ホイールベース長はこの二つの接地点の距離となる。

またトレール長は、\( \small{H/P} \) 軸を延長して \( \small{G/L} \) と交わる点と、フロントアクスルから \( \small{G/L} \) に投影した点との距離。

ばね上を固定しているので、サスペンションのストローク量が変われば \( \small{G/L} \) が変わる。
(ざっくりと言えば、ばね上(フレームボディー)を座標系 \( \small{O_0-X_0Z_0} \) に”固定”。サスペンションストロークに伴いばね下が動き \( \small{G/L} \) が動くモデルモデル)(下図)

図②

ホイールベース等の諸元変化の計算を目的としているので、ばね下だけを動かす方がベクトル計算の式がたてやすい。

先に算出した式一覧を

式一覧

Frアクスル座標 ((5)式は簡易版、(40)式は詳細版)

\( \begin{align}
\left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}} \
\end{array} \right)
= & \left( \begin{array}{c}
x_{0_{Hp}}-l_{fs} \cdot sin \theta_{0c} -(f_{off}+a_{off}) \cdot cos \theta_{0c}\\
z_{0_{Hp}}-l_{fs} \cdot cos \theta_{0c}+(f_{off}+a_{off}) \cdot sin \theta_{0c}\
\end{array} \right) ・・・\small{(5)} \\[6pt]
= & \left( \begin{array}{c}
x_{0_{Hp}}+ (t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr}) \cdot sin \theta_{c0}-(f_{off}+a_{off}) \cdot cos \theta_{c0} \\
z_{0_{Hp}}+ (t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr}) \cdot cos \theta_{c0}+(f_{off}+a_{off}) \cdot sin \theta_{c0} \
\end{array} \right) ・・・\small{(40)} \\
\end{align} \)

Rrアクスル座標

\( \left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}} \
\end{array} \right)
= l_{rf} \cdot \left( \begin{array}{c}
\dfrac{|cos φ_{Arr|}}{l_B} \cdot x_{0B} + \dfrac{|sin φ_{Arr}|}{l_{rs}} \cdot z_{0B}\\
\dfrac{|cos φ_{Arr}|}{l_B} \cdot z_{0B} \ – \ \dfrac{|sin φ_{Arr}|}{l_{rs}} \cdot x_{0B} \
\end{array} \right) \)・・・(14)

( \( cos φ_{Arr} \) = \( \dfrac{{l_B}^2+{l_{rf}}^2 – {l_{rs}}^2 }{2 \cdot l_B \cdot l_{rf}} \)、 \( sin φ_{Arr} \) = \( ±\sqrt{1- cos ^2 φ_{Arr}} \) )

グランドライン(G/L)の傾き

\( φ_{GL} = α \ – \ arcsin( \dfrac{a_r}{\sqrt{a_x^2+a_z^2}}) \) ・・・(21)

(\( sin α = \dfrac{a_z}{\sqrt{a_x^2+a_z^2}} \) , \( cos α = \dfrac{a_x}{\sqrt{a_x^2+a_z^2}} \) )

(ここで、 \(a_z= z_{0_{Arr}} – z_{0_{Aft}} \) , \(a_x= x_{0_{Arr}} – x_{0_{Aft}} \) , \( a_r=r_{rr} – r_{ft} \) )

G/Lを基準とした座標系への変換

\( \left( \begin{array}{c}
x \\
z \
\end{array} \right) = \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0} + sin φ_{GL} \cdot z_{0}\\
– sin φ_{GL} \cdot x_{0}+ cos φ_{GL} \cdot z_{0}\
\end{array} \right) \) ・・・(23)

G/L基準のキャスター角

\(θ_{c} \)=\(θ_{0c} + φ_{GL} \) ・・・(24)

G/L基準のホイールベース長

\( \begin{align}
wb &= cos φ_{GL} \cdot (x_{0_{Arr}}- x_{0_{Aft}}) + sin φ_{GL} \cdot ( z_{0_{Arr}}-z_{0_{Aft}}) ・・・\small{(27)} \\[6pt]
&= {\sqrt{a_x^2+a_z^2}} \ cos (α – φ_{GL}) ・・・\small{(28)}
\end{align} \)

( αは (21)式 と同じ )

G/L基準のトレール長

\(\begin{align}
tr = & |(cos φ_{GL} \cdot x_{0Aft} + sin φ_{GL} \cdot z_{0Aft}) \\[6pt]
& \ – \ (cos φ_{GL} \cdot x_{0HP} + sin φ_{GL} \cdot z_{0HP}) \\[6pt]
& \ – \ (sin φ_{GL} \cdot x_{0HP}\ – \ cos φ_{GL} \cdot z_{0HP}) \cdot tan |({θ_{0c}+φ_{GL}}) | \\[6pt]
&+( sin φ_{GL} \cdot x_{0Aft}\ – \ cos φ_{GL} \cdot z_{0Aft}) \cdot tan |({θ_{0c}+φ_{GL}}) | \\[6pt]
&+r_{ft} \cdot tan |({θ_{0c}+φ_{GL}})|| ・・・\small{(37)}
\end{align} \)

高さからのH/P座標、点Bの座標

\( \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) = \left( \begin{array}{c}
– \sqrt {{l_{HPl}}^2-(h_{0Hp}-h_{0O})^2 }\\
h_{0Hp}-h_{0O} \
\end{array} \right) \) ・・・(41)

\( \left( \begin{array}{c}
x_{0_{B}} \\
z_{0_{B}} \
\end{array} \right) = \left( \begin{array}{c}
\sqrt {{l_B}^2-(h_{0B}-h_{0O})^2 }\\
h_{0B}-h_{0O} \
\end{array} \right) \) ・・・(42)

車両幅方向の補正

\(l_{xx}= \sqrt{{l_{act}}^2- {l_{adj}}^2}) \) ・・・(43)

参考図

導入詳細を以下に

グランドライン(地面)基準の車両諸元算出

計算の流れ

諸元計算の流れは、(以下 フロント: Fr、リア :Rrにて表記 )

  • Step1: フレームボディ(ばね上)を固定させた座標系 \( \small{O_0-X_0Z_0} \) にて、H/P下端点基準にFrアクスル位置を算出
    Note: H/P下端点をFrストローク量算出の測定基準点に使用
  • Step2: 同様にフレームボディ後端あたりにある任意の点Bを基準にRrアクスル位置を算出
    Note1: 点Bをリアストローク算出の測定基準点に使用
    Note2: Rrタイヤは原点O0周りの回転方向移動であり、点BとRrアクスルの距離はリアストローク量とは一致はしない。

    ((角度より)長さの方が実測しやすいため、Rrストローク量算出の基準点代用として設定)
  • Step3:そのアクスル位置におけるFr&Rrタイヤの接線から\( \small{G/L} \) の角度 \(φ_{GL} \) を算出
  • Step4: 算出した\(φ_{GL} \) を使った回転行列 \(R_{φ_{GL}} \) により \( \small{O_0-X_0Z_0} \) を丸ごと回転させ、新しい座標系 \( \small{O_0-X_1Z_1} \) に変換。
  • Step5: 変化後の各車両各諸元値を、\( \small{O_0-X_1Z_1} \) の座標系にて算出

要は、 \( \small{O_0-X_0Z_0} \) での \( \small{G/L} \) の傾き \(φ_{GL} \) を使いモデルごと回転させれば、回転後の座標系 \( \small{O_0-X_1Z_1} \) では \( \small{G/L} \) は水平になる。

これを使って(タイヤ位置がどこであれ)\( \small{O_0-X_1Z_1} \) 上から読み取れば、車両の各諸元値はその座標値、もしくは簡単な足し算引き算で求められる、という感じ

設定したパラメータ名一覧を一旦以下に

図③

\(O_0 \) : Rrフォークピボット点(原点)
\(h_{0O} \) : Rrフォークピボット高 \(^{*(1)} \)
\(h_{O} \) : Rrフォークピボット高
\(H_{pl} \) : H/P下端点位置
\(h_{0Hp} \) : H/P下端点高 \(^{*(1)} \)
\(h_{Hp} \) : H/P下端点高
\(l_{Hpl} \) : H/P下端点-原点 \(O_0 \) の距離
\(θ_{0_{Hp}} \) : \(\small{O_0H_{pl}} \) と \(\small{X_0} \) 軸のなす角 \(^{*(1)} \) \(^{*(2)} \)
\(t_{hp} \) : H/P長
\(t_{tb} \) : トップブリッジ厚
\(u_{ff} \) : Frフォーク 突出し量
\(l_{ff} \) : Frフォーク 全伸び長
\(s_{fr} \) : Frフォーク ストローク量
\(l_{0 fs} \) : Frフォーク全伸び時のH/P下端面とFrアクスルの距離
\(l_{fs} \) : H/P下端面とFrアクスルの距離
\(f_{off} \) : フォークオフセット長
\(a_{off} \) : アクスルオフセット長
\(A_{ft} \) : Frアクスル軸位置
\(A_{0 ft} \) : Frアクスル軸全伸び位置
\(h_{0 Af} \) : Frアクスル軸高 \(^{*(1)} \)
\(r_{ft} \) : Frタイヤ半径

\(B \) : (ばね上の)フレームボディ上の任意点\( ^{*(5)} \)
\(h_{0B} \) : 点B高 \(^{*(1)} \)
\(h_{B} \) : 点B高
\(l_{B} \) : 点B-原点 \(O_0 \) の距離
\(θ_{0B} \) : \(\small{O_0B} \) と \(\small{X_0} \) 軸のなす角 \(^{*(1)} \) \(^{*(2)} \)
\(A_{rr} \) : Rrアクスル軸位置
\(A_{0 rr} \) : Rrアクスル軸全伸び位置
\(r_{rr} \) : Rrタイヤ半径
\(l_{rf} \) : Rrフォーク長
\(φ_{0rr} \) : Rrフォークと \(X_0 \) 軸のなす角 \(^{*(3)} \)
\(l_{rs} \) : 点\(\small{B} \) と 点 \(\small{A_{rr}} \) 間の長さ(Rrストローク長代用)
\(l_{0 rs} \) : 点\(\small{B} \) と 点 \(\small{A_{0 rr}} \) 間の長さ(Rrストローク全伸長代用)
\(h_{0Ar} \) : Rrアクスル軸高 \(^{*(1)} \)
\(tr \) : トレール長
\(wb \) : ホイールベース長
\(φ_{GL} \) : G/L角 \(^{*(3)} \) \(^{*(4)} \)
\(θ_{0c} \) : キャスター角 \(^{*(2)} \)

\( ^{*(1)} \) : 初期セット値 (\( \small{O_0-X_0Z_0} \) 上)
\( ^{*(2)} \)\(θ_{**} \) : 角度定数 \(θ_{**}>0 \)
\( ^{*(3)} \)\(φ_{**} \) : 角度変数 \(φ_{**} \)の向きは右ねじ方向正
\( ^{*(4)} \) : \( – \dfrac{\pi}{2} ≦φ_{GL} ≦ \dfrac{\pi}{2} \)
\( ^{*(5)} \) : Rrサスペンション全屈時のアクスル位置より上

Note1:ここでのパラメータ各値は図③モデルに従った正か0を想定しているが、負の値をとるのも可 (アクスルオフセット値が図③モデルと逆方向で、負になるとか)。
Note2:(\( \small{O_0-X_0Z_0} \) 座標系は右手&右ねじで設定し、計算時の正負はそれに従う

-> 車両をスタンドに乗せたフロント&リアサス全伸び状態からモデル作成開始

フロントアクスル位置の算出 (Step1)

(計算 Step1)

座標系は \( \small{O_0-X_0Z_0} \) を使用

Frアクスル位置( \( \small{\overrightarrow{O_0A_{ft}}}\) )は、図④の赤矢印ルート上にあるベクトルがその位置算出に使用するベクトルとなるが、これは単に点をなぞっていくだけの単純なベクトルの足し算

\(\overrightarrow{O_0A_{ft}} = \overrightarrow{O_0H_{pl}} +\overrightarrow{H_{pl}J}+\overrightarrow{JL}+\overrightarrow{LA_{ft}}\) ・・・(1)

図④

ここで

  • \( \overrightarrow{n_{0c}} \):キャスター角下向きの方向ベクトル ( \( \vert \overrightarrow{n_{0c}} \vert \) = 1:単位ベクトル)
  • \( \overrightarrow{m_{0c}} \):フロントアクスル方向にむかい、\( \overrightarrow{n_{0c}} \) に直交する単位ベクトル ( \( \vert \overrightarrow{m_{0c}} \vert \) = 1:単位ベクトル)

の二つのベクトルを設定する。

これらと図③の各パラメータ値を使い①式を書き直せば、フロントアクスル位置を示す \( \small{\overrightarrow{O_0A_{ft}}}\) は

\( \begin{align}
\overrightarrow{O_0A_{ft}}
= & \overrightarrow{O_0H_{pl}} +l_{fs} \cdot \overrightarrow{n_{0c}} +f_{off}\cdot \overrightarrow{m_{0c}} +a_{off} \cdot \overrightarrow{m_{0c}} \\
= & \overrightarrow{O_0H_{pl}}+l_{fs} \cdot \overrightarrow{n_{0c}} +(f_{off}+a_{off}) \cdot \overrightarrow{m_{0c}} \ ・・・(2)
\end{align} \)

あとはこれを座標に落とし込めばよい。

まず、\( \vec{n_{0c}} \) はキャスター角下向き方向の単位ベクトルより、

\( \overrightarrow{n_{0c}} \) =\( \left( \begin{array}{c}
cos-(\dfrac{\pi}{2} +\theta_{0c}) \\
sin-(\dfrac{\pi}{2} +\theta_{0c} ) \
\end{array} \right) \) = \(- \left( \begin{array}{c}
sin \theta_{0c} \\
cos \theta_{0c} \
\end{array} \right) ・・・(3) \)

\( \overrightarrow{m_{0c}} \) 、\( \overrightarrow{n_{0c}} \)は互いに直行から \( \overrightarrow{m_{0c}} \cdot \overrightarrow{n_{0c}} =0 \) 。

これに向きと \( \overrightarrow{m_{0c}} \) は単位ベクトルである事を踏まえれば、

\( \overrightarrow{m_{0c}} \) = \( \left( \begin{array}{c}
-cos \theta_{0c} \\
sin \theta_{0c} \
\end{array} \right) ・・・(4) \)

(3)(4)のベクトルを使い、\( \overrightarrow{O_0A_{ft}}
= \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft} }\
\end{array} \right) \) 、 \( \overrightarrow{O_0H_{pl}}
= \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) \) とすれば、(2)式 は、

\( \begin{align}
\overrightarrow{O_0A_{ft}}
= \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}} \
\end{array} \right)
= & \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) \
+l_{fs} \cdot – \left( \begin{array}{c}
sin \theta_{0c} \\
cos \theta_{0c} \
\end{array} \right) \
+(f_{off}+a_{off}) \cdot \left( \begin{array}{c}
-cos \theta_{0c} \\
sin \theta_{0c} \
\end{array} \right)\\[8pt]
= & \left( \begin{array}{c}
x_{0_{Hp}}-l_{fs} \cdot sin \theta_{0c} -(f_{off}+a_{off}) \cdot cos \theta_{0c}\\
z_{0_{Hp}}-l_{fs} \cdot cos \theta_{0c}+(f_{off}+a_{off}) \cdot sin \theta_{0c}\
\end{array} \right) ・・・(5) \
\end{align} \)

となり、これが、\( \small{O_0-X_0Z_0} \) における 原点\(\small{O_0} \) からFrアクスル位置へのベクトル成分値(座標値)。

リアアクスル位置算出 (Step2)

(計算 Step2)

座標系は \( \small{O_0-X_0Z_0} \) を使用

座標系 \( \small{O_0-X_0Z_0} \) 上のRrアクスル位置 \( \left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}} \
\end{array} \right) ( = \overrightarrow{O_0A_{rr}} \) ) はシンプルに、

\( \overrightarrow{O_0A_{rr}}\) = \(\left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}}\
\end{array} \right) \) = \( l_{rf} \cdot\left( \begin{array}{c}
cos φ_{rr} \\
sin φ_{rr} \
\end{array} \right) ・・・(6)\)

でもよいが、ストロークによるRrフォークの角度変化を追いかけるのも一苦労なので、長さ測定で車両諸元変化が算出できるように、ひと手間。

図④

Rrサスペンション全屈時のアクスル位置より上にとったばね上(フレームボディ上)の固定点B \(\left( \begin{array}{c}
x_{0B} \\
z_{0B} \
\end{array} \right) \) をRrストローク長測定の代用基準点として使う事にする。

OBの延長上の(∠\(\small{O_0B’A_{rr}}=\dfrac{\pi}{2} \) ) となる点をB’点 として、

\( \overrightarrow{O_0A_{rr}} \) = \( \overrightarrow{O_0B’}+\overrightarrow{B’A_{rr}} \) ・・・(7)

とみた 図④ の緑矢印ルート上にあるベクトルが、Rrアクスル位置に算出に使用するベクトル。

さて、まずは各ベクトルの方向を求める。

点B’はOBの延長線上である事を踏まえれば、\( \small{\overrightarrow{O_0B’}} \) 方向の単位ベクトル \( \overrightarrow{n_{0B}} \) は、

\( \overrightarrow{n_{0B}} \) = \( \dfrac{1}{l_B}\left( \begin{array}{c}
x_{0B} \\
z_{0B} \
\end{array} \right) \) ・・・(8)

また、\( \small{\overrightarrow{O_0B’}} \) に対して 法線方向である\( \small{\overrightarrow{B’A_{rr}}} \)の単位ベクトル\( \overrightarrow{m_{0B}} \) は、方向をふまえれば

\( \overrightarrow{m_{0B}} \) = \( \dfrac{1}{l_{rs}}\left( \begin{array}{c}
z_{0B} \\
-x_{0B} \
\end{array} \right) \) ( ∵ \( \overrightarrow{m_{0B}} \cdot \overrightarrow{n_{0B}} =0 \) ) ・・・(9)

次は各ベクトルの長さを求める。

まずは、長さ算出に使用する角 \( \small{∠BOA_{rr}} \) ( 以下 \( φ_{Arr} \) ) を求めてみる。

三角形 ⊿\(\small{O_0BA_{rr}} \) に着目すれば、3辺はわかっているので、\( φ_{Arr} \) に余弦定理が使える。つまり、

\( cos φ_{Arr} \) = \( \dfrac{{l_B}^2+{l_{rf}}^2 – {l_{rs}}^2 }{2 \cdot l_B \cdot l_{rf}} \) ・・・(10)

ついでに \( sin φ_{Arr} \) は、

\( sin φ_{Arr} \) = \( ±\sqrt{1- cos ^2 φ_{Arr}} \) ・・・(11)

Note:計算式の簡易化のため、以降の式内では \( cos φ_{Arr} \)、\( sin φ_{Arr} \) これ以上展開せずそのまま使用(cos/sin値の算出自体は、エクセル等の計算ソフトにお任せ。一旦算出してから他の式に適用。)

さて、ひき続いて直角三角形 ⊿\(\small{O_0B’A_{rr}} \) に着目すれば、ベクトルの大きさ \( \small{|\overrightarrow{O_0B’}}| \) 、\( \small{|\overrightarrow{B’A_{rr}}}| \) は、上のcos値、sin値を使えばそれぞれ

\( |\overrightarrow{O_0B’}| \) = \( | cos φ_{Arr}| \cdot l_{rf} \) ・・・(12)
\( |\overrightarrow{B’A_{rr}}| \) = \( | sin φ_{Arr}| \cdot l_{rf} \) ・・・(13)

(8)(9)(10)(11)より、(7)式は

\( \begin{align}
\overrightarrow{O_0A_{rr}} = \left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}} \
\end{array} \right)
&= \overrightarrow{O_0B’}+\overrightarrow{B’A_{rr}} \\[6pt]
& = |\overrightarrow{O_0B’}| \cdot \overrightarrow{n_{0B}} + | \overrightarrow{B’A_{rr}}| \cdot \overrightarrow{m_{0B}} \\[6pt]
& =|cos φ_{Arr}| \cdot l_{rf} \cdot \dfrac{1}{l_B}\left( \begin{array}{c}
x_{0B} \\
z_{0B} \
\end{array} \right)
+| sin φ_{Arr}| \cdot l_{rf} \cdot \dfrac{1}{l_{rs}} \left( \begin{array}{c}
z_{0B} \\
-x_{0B} \
\end{array} \right) \\[6pt]
& = l_{rf} \cdot \left( \begin{array}{c}
\dfrac{|cos φ_{Arr|}}{l_B} \cdot x_{0B} + \dfrac{|sin φ_{Arr}|}{l_{rs}} \cdot z_{0B}\\
\dfrac{|cos φ_{Arr}|}{l_B} \cdot z_{0B} \ – \ \dfrac{|sin φ_{Arr}|}{l_{rs}} \cdot x_{0B} \
\end{array} \right) ・・・\small{(14)}
\end{align} \)

( ここで、\( cos φ_{Arr} \) = \( \dfrac{{l_B}^2+{l_{rf}}^2 – {l_{rs}}^2 }{2 \cdot l_B \cdot l_{rf}} \)、 \( sin φ_{Arr} \) = \( ±\sqrt{1- cos ^2 φ_{Arr}} \) )

となり、これが、\( \small{O_0-X_0Z_0} \) における 原点\(\small{O_0} \) から(点B経由の)Rrアクスル位置へのベクトル成分値(座標値)

グランドライン(G/L)の傾き算出 (Step3)

(計算 Step3)

さて、ここまでで求めたFrアクスル座標、Rrアクスル座標は、式の簡易化のため以降の記載では以下のまま。

Frアクスル軸:\( \overrightarrow{O_0A_{ft}} = \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}} \
\end{array} \right) \) 、Rrアクスル軸:\( \overrightarrow{O_0A_{rr}} = \left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}} \
\end{array} \right) \)

さて新たに、Frタイヤの接地点を点 \( G_{ft} \), Rrタイヤの接地点を点 \( G_{rr} \) を設定して、前後各アクスル軸から各接地点へのベクトルを見れば、

\( \overrightarrow{A_{rr}G_{rr}} \) = \( r_{rr} \cdot\left( \begin{array}{c}
cos (-\dfrac{\pi}{2}+φ_{GL}) \\
sin (-\dfrac{\pi}{2}+φ_{GL}) \
\end{array} \right) \) = \( r_{rr} \cdot\left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \) ・・・(15)

\( \overrightarrow{A_{ft}G_{fr}} \) = \( r_{fr} \cdot\left( \begin{array}{c}
cos (-\dfrac{\pi}{2}+φ_{GL}) \\
sin (-\dfrac{\pi}{2}+φ_{GL}) \
\end{array} \right) \) = \( r_{ft} \cdot\left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \) ・・・(16)

である。また、G/LはFrタイヤ&Rrタイヤの双方の接線が故、(15)(16)ベクトルはG/Lに直角、つまり

\( \overrightarrow{A_{rr}G_{rr}} \cdot \overrightarrow{G_{rr}G_{ft}} =\overrightarrow{A_{ft}G_{ft}} \cdot \overrightarrow{G_{ft}G_{rr}} =0 \)

図⑥

さてこれに、Frのタイヤ半径( \( r_{ft} \) )とRrのタイヤ半径( \( r_{rr} \) )を使えば、Fr&Rrタイヤの任意の位置における\( \small{O_0-X_0Z_0} \) 上のG/L の傾き \( φ_{GL} \) が算出できる。

まず、直角三角形 ⊿\( A_{rr}G{rr}G_{ft} \) に着目する。(Fr/Rr どちらでも構わないが、ココではRr側を使う)

G/LはFrタイヤ&Rrタイヤの双方の接線となる事、またベクトルの内積は投影である事を利用すれば、Rrアクスルを基点にもつ二つのベクトル \( \overrightarrow{A_{rr}G_{rr}} \) と \( \overrightarrow{A_{rr}G_{ft}} \) の内積は(ベクトル同士のなす角は \( ψ \) )、

\( \begin{align}
\overrightarrow{A_{rr}G_{rr}} \cdot \overrightarrow{A_{rr}G_{ft}} &= |\overrightarrow{A_{rr}G_{rr}}| \cdot \ |\overrightarrow{A_{rr}G_{ft}}| \cdot cos ψ \\[6pt]
&= r_{rr}\cdot r_{rr} \\[6pt]
&= r_{rr}^2 ・・・(17) \\[6pt]
\end{align} \)
(∵ \( ∠A_{rr}G_{rr}G_{ft}=\dfrac{\pi}{2}\) より、\(|\overrightarrow{A_{rr}G_{ft}}| \cdot cos ψ= r_{rr}) \)

が成立している事がわかる(図⑥の橙ベクトル同士の内積)。これを利用する(注記あり)。

図⑥の緑ルート上のベクトルに分解すれば

\( \begin{align}
r_{rr}^2 = \overrightarrow{A_{rr}G_{rr}} \cdot \overrightarrow{A_{rr}G_{ft}} &= ( \overrightarrow{A_{ft}G_{ft}} \ + \ \overrightarrow{O_0A_{ft}} \ – \ \overrightarrow{O_0A_{rr}} ) \cdot \overrightarrow{A_{rr}G_{rr}}\\[6pt]
&= \overrightarrow{A_{ft}G_{ft}} \cdot \overrightarrow{A_{rr}G_{rr}} \ + \ \overrightarrow{O_0A_{ft}} \cdot \overrightarrow{A_{rr}G_{rr}} \ – \ \overrightarrow{O_0A_{rr}} \cdot \overrightarrow{A_{rr}G_{rr}}・・・(18)
\end{align} \)

これに成分値をいれれば、\( φ_{GL} \) (\( – \dfrac{\pi}{2} ≦φ_{GL} ≦ \dfrac{\pi}{2} \) ) に関する関係式が出てくる。つまり、

\( \begin{align}
r_{rr}^2 &= \overrightarrow{A_{ft}G_{ft}} \cdot \overrightarrow{A_{rr}G_{rr}} \ + \ \overrightarrow{O_0A_{ft}} \cdot \overrightarrow{A_{rr}G_{rr}} \ – \ \overrightarrow{O_0A_{rr}} \cdot \overrightarrow{A_{rr}G_{rr}} \\[8pt]
r_{rr}^{\cancel{2}} &= r_{ft} \cdot \left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \cdot \cancel{r_{rr}} \cdot \left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \\[8pt]
&+ \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}}\
\end{array} \right) \cdot \cancel{r_{rr}} \cdot \left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \ – \ \left( \begin{array}{c}
x_{0_{Arr}} \\
z_{0_{Arr}}\
\end{array} \right) \cdot \cancel{r _{rr}} \cdot \left( \begin{array}{c}
sin φ_{GL} \\
-cos φ_{GL} \
\end{array} \right) \\[8pt]
&= r_{ft} \cdot (sin^2 φ_{GL} + cos^2 φ_{GL} )
+ ( x_{0_{Aft}} \cdot sin φ_{GL} – z_{0_{Aft}} \cdot cos φ_{GL} )
– ( x_{0_{Arr}} \cdot sin φ_{GL} \ – \ z_{0_{Arr}} \cdot cos φ_{GL}) \\[8pt]
&= r_{ft}
\ – \ ( x_{0_{Arr}} – x_{0_{Aft}} ) \cdot sin φ_{GL}
+ ( z_{0_{Arr}} – z_{0_{Aft}} ) \cdot cos φ_{GL}
\end{align} \)

つまり、

\( ( z_{0_{Arr}} – z_{0_{Aft}} ) \cdot cos φ_{GL} \ – \ ( x_{0_{Arr}} – x_{0_{Aft}}) \cdot sin φ_{GL}
= (r_{rr} \ – \ r_{ft}) \)

ここで、\(a_z= z_{0_{Arr}} – z_{0_{Aft}} \) , \(a_x= x_{0_{Arr}} – x_{0_{Aft}} \) , \( a_r=r_{rr} – r_{ft} \) とおけば、これは

\( a_z\cdot cos φ_{GL} \ – \ a_x \cdot sin φ_{GL} = a_r \) ・・・(19)

であり、 \( sin α = \dfrac{a_z}{\sqrt{a_x^2+a_z^2}} \) , \( cos α = \dfrac{a_x}{\sqrt{a_x^2+a_z^2}} \) となる角度αを設定すれば、正弦の加法定理が使える。

つまり、(19)式は

\( {\sqrt{a_x^2+a_z^2}} (sin α \cdot cos φ_{GL} \ – \ cos α \cdot sin φ_{GL}) = a_r \) となり

\( sin (α – φ_{GL}) = \dfrac{a_r}{\sqrt{a_x^2+a_z^2}} \) ・・・(20)

となる。これから

\( α – φ_{GL} = arcsin( \dfrac{a_r}{\sqrt{a_x^2+a_z^2}}) \)

よって、

\( φ_{GL} = α \ – \ arcsin( \dfrac{a_r}{\sqrt{a_x^2+a_z^2}}) \) ・・・(21)

により \( φ_{GL} \) が求まる。式から見ての通り、タイヤ径が同じ (\( a_r=0 \)) であれば前後アクスル軸の位置の差がそのままG/Lの傾き(まぁ、当然か。。)

注記1:角度αについて

(20)式がシンプルになったので、あれ?と思い図を書いてみた。

計算前に一旦下の図に気づいていれば、ベクトル計算は不要だったかもなぁと。。。G/Lの角度出すだけだし。。。

ちゃんちゃん。。と。
(まぁ、思いつかなくてもベクトル使えば求まるという事で。。)

G/Lを基準とした座標系とその変換: (Step4)

(計算 Step4

さて、算出した\(φ_{GL} \) を使った回転行列 \(R_{φ_{GL}} \) で \( \small{O_0-X_0Z_0} \) を変換すれば、G/Lを基準とした新規座標系 \( \small{O_0-X_1Z_1} \) が設定できる。(= 任意位置の前後タイヤの接線を結んだG/Lを基準にした座標系。)

回転行列 \(R_{φ_{GL}} \) は、\(R_{φ_{GL}} \) = \( \begin{pmatrix}
cos φ_{GL} & sin φ_{GL} \\
– sin φ_{GL} & cos φ_{GL}
\end{pmatrix} \) ・・・(22) であることから、

もとの座標系 \( \small{O_0-X_0Z_0} \)上の任意点 \( (x_0, z_0) \) を \( \small{O_0-X_1Z_1} \) 上へ変換した点 \( (x, z) \) は、

\( \begin{align}
\left( \begin{array}{c}
x \\
z \
\end{array} \right) &= R_{φ_{GL}} \left( \begin{array}{c}
x_{0} \\
z_{0} \
\end{array} \right) = \begin{pmatrix}
cos φ_{GL} & sin φ_{GL} \\
– sin φ_{GL} & cos φ_{GL}
\end{pmatrix} \left( \begin{array}{c}
x_{0} \\
z_{0} \
\end{array} \right) \\[8pt]
&= \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0} + sin φ_{GL} \cdot z_{0}\\
– sin φ_{GL} \cdot x_{0}+ cos φ_{GL} \cdot z_{0}\
\end{array} \right) ・・・\small{(23)}
\end{align} \)

これが変換のベース。これに後はベクトルの足し算引き算で、G/L基準の座標系での車両諸元値が求まる。

(回転行列詳細については、以下の記事に)

G/L基準の車両諸元算出 (Step5)

(計算の流れ:Step5)

G/L基準のキャスター角

さてここまでこれば、あと少し。まずは、以下の図⑦をベースに。

図⑦

\( \small{O_0-X_1Z_1} \) 上でのキャスター角 \(θ_{c} \) は、\( \small{O_0-X_0Z_0} \) での \(θ_{0c} \) に \( φ_{GL}\) を足すだけ。

\(θ_{c} \)=\(θ_{0c} + φ_{GL} \) ・・・(24)

G/L基準のホイールベース計算

⑤式で使った Frアクスル座標 \( \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}} \
\end{array} \right) \), ⑭式で使った Rrアクスル座標 \( \left( \begin{array}{c}
x_{0_{Arr}}\\
z_{0_{Arr}} \
\end{array} \right) \) を使う。(共に \( \small{O_0-X_0Z_0}\) 上の座標 )

ここで、\( \small{O_0-X_1Z_1} \) 上での Frアクスル座標を \( \left( \begin{array}{c}
x_{{Aft}} \\
z_{{Aft}} \
\end{array} \right) \) 、Rrアクスル座標を \( \left( \begin{array}{c}
x_{{Arr}} \\
z_{{Arr}} \
\end{array} \right) \) とすれば、(23)式をつかって

\( \begin{align}
\left( \begin{array}{c}
x_{{Aft}} \\
z_{{Aft}} \
\end{array} \right) &= R_{φ_{GL}} \left( \begin{array}{c}
x_{0_{Aft}}\\
z_{0_{Aft}} \
\end{array} \right) \\[6pt]
&= \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0_{Aft}} + sin φ_{GL} \cdot z_{0_{Aft}}\\
– sin φ_{GL} \cdot x_{0_{Aft}} + cos φ_{GL} \cdot z_{0_{Aft}}\
\end{array} \right) ・・・(25)
\end{align} \)

\( \begin{align}
\left( \begin{array}{c}
x_{{Arr}} \\
z_{{Arr}} \
\end{array} \right) &= R_{φ_{GL}} \left( \begin{array}{c}
x_{0_{Arr}}\\
z_{0_{Arr}} \
\end{array} \right) \\[6pt]
&= \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0_{Arr}} + sin φ_{GL} \cdot z_{0_{Arr}}\\
– sin φ_{GL} \cdot x_{0_{Arr}} + cos φ_{GL} \cdot z_{0_{Arr}}\
\end{array} \right) ・・・(26)
\end{align} \)

となる。

さて、ホイールベース \( wb \) はG/L方向のアクスル軸間の長さとなるため、\( x \)座標同士を引けばよいだけ。

よって、

\( \begin{align}
wb &= x_{{Arr}} – x_{{Aft}} =(cos φ_{GL} \cdot x_{0_{Arr}} + sin φ_{GL} \cdot z_{0_{Arr}}) \ – \ ( cos φ_{GL} \cdot x_{0_{Aft}} + sin φ_{GL} \cdot z_{0_{Aft}}) \\[6pt]
&= cos φ_{GL} \cdot (x_{0_{Arr}}- x_{0_{Aft}}) + sin φ_{GL} \cdot ( z_{0_{Arr}}-z_{0_{Aft}}) ・・・\small{(27)}
\end{align} \)

にて、G/L基準のホイールベースが算出できる。

G/L傾き \( φ_{GL}\) の算出の時に使った(20)式内 の \(a_x= x_{0_{Arr}} – x_{0_{Aft}} , a_z= z_{0_{Arr}} – z_{0_{Aft}} \) を再利用し、あわせて \( cos α = \dfrac{a_x}{\sqrt{a_x^2+a_z^2}} \) , \( sin α = \dfrac{a_z}{\sqrt{a_x^2+a_z^2}} \) も使えば

\( \begin{align}
wb &= {\sqrt{a_x^2+a_z^2}} \ (cos α \cdot cos φ_{GL} \ + \ sin α \cdot sin φ_{GL}) \\[6pt]
&= {\sqrt{a_x^2+a_z^2}} \ cos (α – φ_{GL}) ・・・\small{(28)}
\end{align} \)

(27)式で十分だが、(21)式と同じ ( \(α – φ_{GL} ) \) が使えるので、こっちの方が普通かも。。
(面倒な計算せずとも上図を描けば、(28)式に直接たどりつける。。。)

G/L基準のトレール

つづいて、\( \small{O_0-X_1Z_1} \) において、\( \small{H/P} \) 軸 (ステアリング軸) を延長し\( \small{G/L} \) と交わる点を点 \(G_{tr} \) (= \( \left( \begin{array}{c}
x_{Gtr} \\
z_{GL} \
\end{array} \right) \) ) として、\( \small{O_0-X_1Z_1} \)におけるトレール長 \(tr\) (\(=|\overrightarrow{G_{tr}G_{ft}}|\)) (G/L基準) を求める。

\( \overrightarrow{G_{tr}G_{ft}}\) は、原点\(O_{0} \)と、(25)式 のFrアクスル軸 \(A_{ft} \) 使えば、

\( \begin{align}
\overrightarrow{G_{tr}G_{ft}} &= \overrightarrow{O_0G_{ft}}- \overrightarrow{O_0G_{tr}} \\[6pt]
&= (\overrightarrow{O_0A_{ft}} + \overrightarrow{A_{ft}G_{ft}}) \ – \ \overrightarrow{O_0G_{tr}} ・・・\small{(29)} \\[6pt]
\end{align} \)

となる。

図⑧

さて、(29) 式内で唯一未知の \( \overrightarrow{O_{0}G_{tr}} \) をまず求める。

\( \small{O_0-X_1Z_1} \) におけるH/P下端点 \( H_{pl} \) \( (= \left( \begin{array}{c}
x_{HP} \\
z_{HP} \
\end{array} \right) )\) のG/Lへの投影点を \( G_{HP} \) \( (= \left( \begin{array}{c}
x_{HP} \\
z_{GL} \
\end{array} \right) )\) と設定すれば、

\( \overrightarrow{O_{0}G_{tr}} = \overrightarrow{O_{0}G_{HP}} + \overrightarrow{G_{HP}G_{tr}} \) ・・・(30)

ここで、\( ⊿H_{pl}G_{tr}G_{HP} \)(図⑧) に着目し、\( \small{O_0-X_1Z_1} \) 上のG/L方向の単位ベクトル \( \overrightarrow{n_{G}} \) = \( \left( \begin{array}{c}
1 \\
0 \
\end{array} \right) \) 、キャスター角\(φ_c \ ( φ_c = θ_{0c}+φ_{GL}) \) とすれば、(30)式内の \( \overrightarrow{G_{HP}G_{tr}} \) は、

\( \overrightarrow{G_{HP}G_{tr}} =|\overrightarrow{G_{HP}H_{pl}} |\cdot tan |{φ_c } |\cdot (- \overrightarrow{n_{G}}) \) ・・・(31)

である事から、(31)式 を (30)式 に入れ込めば、\( \overrightarrow{O_{0}G_{tr}} \) は

\( \begin{align}
\overrightarrow{O_{0}G_{tr}} &= \overrightarrow{O_{0}G_{HP}} + \overrightarrow{G_{HP}G_{tr}} \\[6pt]
&= \overrightarrow{O_{0}G_{HP}} \ – \ |\overrightarrow{G_{HP}H_{pl}} |\cdot tan |{φ_c }| \cdot \overrightarrow{n_{G}} ・・・\small{(32)}
\end{align} \)

求めたい\( \overrightarrow{G_{tr}G_{ft}}\)は、(29)式に(32)式を代入して

\( \begin{align}
\overrightarrow{G_{tr}G_{ft}}&= (\overrightarrow{O_0A_{ft}} + \overrightarrow{A_{ft}G_{ft}}) \ – \ \overrightarrow{O_0G_{tr}} \\[6pt]
&= ( \overrightarrow{O_0A_{ft}} + \overrightarrow{A_{ft}G_{ft}} ) \ – \ (\overrightarrow{O_{0}G_{HP}} \ – \ |\overrightarrow{G_{HP}H_{pl}} |\cdot tan |{φ_c }| \cdot \overrightarrow{n_{G}} ) \\[6pt]
&= \overrightarrow{O_0A_{ft}} + \overrightarrow{A_{ft}G_{ft}} \ – \ \overrightarrow{O_{0}G_{HP}} \ + \ |\overrightarrow{G_{HP}H_{pl}} |\cdot tan |{φ_c }| \cdot \overrightarrow{n_{G}}
\end{align} \)

となる。これに、\( |\overrightarrow{G_{HP}H_{pl}}|= z_{Hp} \ – \ (z_{Aft}-r_{ft}) 、(z_{GL}= z_{Aft}-r_{ft}) \) を踏まえ、成分値をいれれば、

\( \begin{align}
\overrightarrow{G_{tr}G_{ft}} &= \left( \begin{array}{c}
x_{Aft} \\
z_{Aft} \
\end{array} \right) + \left( \begin{array}{c}
0 \\
-r_{ft} \
\end{array} \right) \ – \ \left( \begin{array}{c}
x_{HP} \\
z_{GL} \
\end{array} \right) \ + ( \ z_{Hp} \ – \ (z_{Aft}-r_{ft})) \cdot tan | {φ_c }| \left( \begin{array}{c}
1 \\
0 \
\end{array} \right) \\[6pt]
& = \left( \begin{array}{c}
\ x_{Aft} \ – \ x_{HP} \ + \ (z_{Hp} \ -(z_{Aft} \ – \ r_{ft})) \cdot tan |{φ_c }|\\
0 \
\end{array} \right)
\end{align} \)

となる。トレール長 \(tr =|\overrightarrow{G_{ft}G_{tr}}|\) は、\(x \) 成分そのままで

\(tr =|x_{Aft} \ – \ x_{HP} \ + (\ z_{Hp} – z_{Aft} + r_{ft}) \cdot tan |{φ_c }|| \) ・・・(34)

で求まる。

あとは \( \small{O_0-X_1Z_1} \) における成分値を取り込めばよいだけ。(23)式より

\( \left( \begin{array}{c}
x _{Aft}\\
z_{Aft} \
\end{array} \right) \) = \( \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0Aft} + sin φ_{GL} \cdot z_{0Aft}\\
– sin φ_{GL} \cdot x_{0Aft}+ cos φ_{GL} \cdot z_{0Aft}\
\end{array} \right) \) ・・・(35)

\( \left( \begin{array}{c}
x _{HP}\\
z_{HP} \
\end{array} \right) \) = \( \left( \begin{array}{c}
cos φ_{GL} \cdot x_{0HP} + sin φ_{GL} \cdot z_{0HP}\\
– sin φ_{GL} \cdot x_{0HP}+ cos φ_{GL} \cdot z_{0HP}\
\end{array} \right) \) ・・・(36)

を使って、(34)式に代入すれば

\(\begin{align}
tr = & |(cos φ_{GL} \cdot x_{0Aft} + sin φ_{GL} \cdot z_{0Aft}) \\[6pt]
& \ – \ (cos φ_{GL} \cdot x_{0HP} + sin φ_{GL} \cdot z_{0HP}) \\[6pt]
& \ – \ (sin φ_{GL} \cdot x_{0HP}\ – \ cos φ_{GL} \cdot z_{0HP}) \cdot tan |({θ_{0c}+φ_{GL}}) | \\[6pt]
&+( sin φ_{GL} \cdot x_{0Aft}\ – \ cos φ_{GL} \cdot z_{0Aft}) \cdot tan |({θ_{0c}+φ_{GL}}) | \\[6pt]
&+r_{ft} \cdot tan |({θ_{0c}+φ_{GL}})|| ・・・\small{(37)}
\end{align} \)

で、(37) 式内の値は全て既知(今までの設定、算出値)となるので、G/L基準でのトレール長の算出は完了。

G/L基準のその他座標値の位置

\( \small{O_0-X_0Z_0} \) 上のばね上の任意の点(クランク位置、カウンター位置等々)の \( \small{O_0-X_1Z_1} \) への変換は、(23)式を使うだけなので割愛。

で、主な計算は完了と。。。

追加の計算

フロントアクスル位置ちょっと細かい版 (Step1 補足)

フロントアクスル軸( \( \small{\overrightarrow{O_0A_{ft}}}\) )については、変更できる諸元値がそこそこあるので(サス長変えたり、オフセット変えたり、サスの突き出し量を変えたり等々)、ついでに式に組み込んでおこうと。

同様に点をなぞっていくだけで、単純なベクトルの足し算はStep.1と変わらない。

\(\overrightarrow{O_0A_{ft}} = \overrightarrow{O_0H_{pl}} +\overrightarrow{H_{pl}C}+\overrightarrow{CD}+\overrightarrow{DE}+\overrightarrow{EF}+\overrightarrow{FK}+\overrightarrow{KA_{0ft}}+\overrightarrow{A_{0ft}A_{ft}}\) ・・・(38)

この(38)式に、Step1と同様にキャスター角方向の方向ベクトル \( \overrightarrow{n_{0c}} \) ( \( \vert \overrightarrow{n_{0c}} \vert \) = 1) それに直交するベクトル \( \overrightarrow{m_{0c}} \) ( \( \vert \overrightarrow{m_{0c}} \vert \) = 1) を使えば、フロントアクスル位置 \( \small{\overrightarrow{O_0A_{ft}}}\)は、

\( \begin{align}
\overrightarrow{O_0A_{ft}}
= & \overrightarrow{O_0H_{pl}} +t_{hp} \cdot (- \overrightarrow{n_{0c}}) +t_{tb} \cdot (-\overrightarrow{n_{0c}})+f_{off}\cdot \overrightarrow{m_{0c}} \\
& + u_{ff} \cdot (- \overrightarrow{n_{0c}}) +l_{ff} \cdot \overrightarrow{n_{0c}}+a_{off} \cdot \overrightarrow{m_{0c}} +s_{fr} \cdot (- \overrightarrow{n_{0c}}) \\
= & \overrightarrow{O_0H_{pl}} -(t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr})\cdot \overrightarrow{n_{0c}} +(f_{off}+a_{off}) \cdot \overrightarrow{m_{0c}} ・・・(39)\
\end{align} \)

あとはこれを座標に落とし込めばよい。

\( \small{O_0-X_0Z_0} \)上でのベクトル成分 \( \overrightarrow{O_0A_{ft}}
= \left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft} }\
\end{array} \right) \) 、 \( \overrightarrow{O_0H_{pl}}
= \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) \) を使い、

また、Step1から \( \overrightarrow{n_{0c}} \)= \(- \left( \begin{array}{c}
sin \theta_{c0} \\
cos \theta_{c0} \
\end{array} \right) \) 、\( \overrightarrow{m_{0c}} \) = \( \left( \begin{array}{c}
-cos \theta_{c0} \\
sin \theta_{c0} \
\end{array} \right) \) を使えば、(39)式は、

\( \begin{align}
\left( \begin{array}{c}
x_{0_{Aft}} \\
z_{0_{Aft}}\
\end{array} \right) = & \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) + (t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr})\cdot \left( \begin{array}{c}
sin \theta_{c0} \\
cos \theta_{c0} \
\end{array} \right) +(f_{off}+a_{off}) \cdot \left( \begin{array}{c}
-cos \theta_{c0} \\
sin \theta_{c0} \
\end{array} \right) \\[8pt]
= & \left( \begin{array}{c}
x_{0_{Hp}}+ (t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr}) \cdot sin \theta_{c0}-(f_{off}+a_{off}) \cdot cos \theta_{c0} \\
z_{0_{Hp}}+ (t_{hp}+t_{tb}+ u_{ff}-l_{ff}+s_{fr}) \cdot cos \theta_{c0}+(f_{off}+a_{off}) \cdot sin \theta_{c0} \
\end{array} \right) ・・・(40) \\
\end{align} \)

フロントサス廻りのセッティング変更で変えそうなパラメータは一通り入っているかと。

高さからのH/P座標、点Bの座標値算出

ばね上を固定するH/P下端点 \(H_{pl} \)(Frサスストロークの基準点)と点 \(B\)(Rrサスストロークの基準点)の \( \small{O_0-X_0Z_0} \) 上における座標は、\( \overrightarrow{O_0H_{pl}}
= \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) \)、\( \overrightarrow{O_0B}
= \left( \begin{array}{c}
x_{B} \\
z_{B} \
\end{array} \right) \) で設定しているが、少し追加。

というのも、直接測定のできる

  • 点\(O_0\)-点\(H_{pl}\) 間の長さ : \(l_{Hpl}\)
  • 点\(O_0\)-点\(B \)長さ : \(l_{B}\)

と 計測しやすい鉛直方向の方向の 各点の高さ

  • \(h_{0Hp}\)、\(h_{0O}\)、\(h_{0B}\)

を使っての座標算出の覚書。単純に三平方の定理と引き算を使うだけ

(車両モデルの座標定義から)、\( \small{O_0-X_0Z_0} \)に固定した車両モデルの H/P位置は \(x<0 \) である事を踏まえれば、それぞれの座標値は、

\( \left( \begin{array}{c}
x_{0_{Hp}} \\
z_{0_{Hp}} \
\end{array} \right) = \left( \begin{array}{c}
– \sqrt {{l_{HPl}}^2-(h_{0Hp}-h_{0O})^2 }\\
h_{0Hp}-h_{0O} \
\end{array} \right) \) ・・・(41)

\( \left( \begin{array}{c}
x_{0_{B}} \\
z_{0_{B}} \
\end{array} \right) = \left( \begin{array}{c}
\sqrt {{l_B}^2-(h_{0B}-h_{0O})^2 }\\
h_{0B}-h_{0O} \
\end{array} \right) \) ・・・(42)

車両幅方向の補正

モデルはXZ平面上での二次元としたため、車両幅方向の測定点ずれ用の補正の覚書。実測定長さは以下で補正。

車両の幅方向のずれを \(l_{adj} \)、測定実長を \(l_{act} \)、計算に使う値を \(l_{xx} \) とすれば

\(l_{xx}= \sqrt{{l_{act}}^2- {l_{adj}}^2}) \) ・・・(43)

で補正

Note: 車両幅方向の測定点ずれとは、B点基準のリアストローク長測定を例にすれば、 \(l_{rs} \) で補正の対象。下の図の \(l_{xx} \) が \(l_{rs} \)に該当。車両を後ろから見た時の以下の車両幅方向の測定点ずれ \(l_{adj} \) が使用する補正値。

注記:G/Lの接線について

追加の覚書、上ではG/LはFrタイヤ&Rrタイヤの双方の接線となる事を使っているが、この(17)式の内積のみであれば、2つの円の接線は4通り成立するはず(下図)。

が、場合分けはちょっと面倒くさいので、ここでは

  • (15)&(16)式で同じ方向のベクトルに設定、かつ
  • \( φ_{GL} \) が \( – \dfrac{\pi}{2} ≦φ_{GL} ≦ \dfrac{\pi}{2} \) である事を利用して、(15)&(16)式の方向ベクトルを下向きに限定
    ( \(z \) 軸成分値は常に負 (\( – cos φ_{GL} ≦ 0\)) )

とすることにより、不要な3つの接線を対称から外し、必要なG/Lのみに限定させている(ちょっと強引)

さいごに

まぁ、今どき手計算でやる人はいないとは思うが、(実際はソフトで計算するにしろ)なんだ意外と簡単に手でも計算組めるじゃん、の実感があるのは悪くない。

タイトルとURLをコピーしました