フィードバック制御入門 第2章 第2章 ダイナミカルシステムの表現 第2章 ダイナミカルシステムの表現 2.1 ダイナミカルシステム 2.2 伝達関数 2.2 伝達関数 2.3 ブロック線図 キーワード : ダイナミカルシステム, システムの線形化, 伝達関数 キーワード : 伝達関数, ブロック線図, 等価変換 学習目標 : 入出力を動的に関係づけるダイナミカル システムとシステムの線形化の概念を理解する.そし て,伝達関数表現の利点を理解して,様々なシステム に対する伝達関数の導出方法を習得する. 学習目標 :様々なシステムに対する伝達関数の導出 方法を習得する.また,伝達関数で表された要素の結 合と信号の流れのようすを,ブロック線図により表す方 法を習得する. 2. ダイナミカルシステムの表現 [ 例 2.1 ] ばね系 2.1 ダイナミカルシステム ばね定数 K [ N / m] 線形ダイナミカルシステム (入力)ー(出力):因果関係 (入力)力 自然科学 / 工学の法則 K f (t ) [ N] (出力)ばねの伸び x(t ) [m] (運動系) ニュートンの運動の法則 フックの法則 (回路系) キルヒホッフの法則 1 f (t ) K ( f (t ) = Kx(t )) 図 2.2 ばね系 x(t ) = 入力 u (t ) ダイナミカル システム x(t ) f (t ) 出力 y (t ) 図 2.1 ダイナミカルシステム [ 例 2.2 ] 静的システム 時刻 t = t0 の出力 y (t0 ) は当該時刻の入力 u (t0 ) だけから 一意に定まり,入力の過去の履歴 {u (t ) : 0 ≤ t < t0 } に無関係 x(t ) = 1 f (t ) K K 質量ーばねーダンパ系 質量 M [kg ] ばね定数 K [ N/m] (入力)力 f (t ) [ N ] x(t ) f (t ) (出力)変位 x(t ) [m] 粘性摩擦係数 D [ N ⋅ s/m ] M d 2 x(t ) dx(t ) = f (t ) − Kx(t ) − D dt 2 dt M d 2 x(t ) dx(t ) +D + Kx (t ) = f (t ) dt dt 2 ダイナミカルシステム(動的システム) 現在時刻の出力 y (t0 ) は入力の現在時刻の値 u (t0 ) だけ でなく過去の履歴にも依存 x (t ) K f (t ) D M 図 2.3 質量ーばねーダンパ系 2階の微分方程式 1 フィードバック制御入門 第2章 [ 例 2.3 ] システム的アプローチ RLC 回路 d 2eo (t ) de (t ) LC + RC o + eo = ei 2 dt dt R 1’ 2階の微分方程式 a2 y :出力 d 2 y (t ) dy (t ) + a1 + a0 y (t ) = b0u (t ) dt 2 dt u :入力 a0 ~ a2 , b0 :定係数 (初期値 = 0 で) L t y (t ) = ∫ g (t − τ )u (τ )dτ 2’ 0 dy (t ) 例えば,a2 = a0 = 0 ,a1 = b0 = 1 のとき dt = u より i (t ) ei (t ) eo (t ) C t y (t ) = ∫ u (τ )dτ (初期値 = 0 ) 0 ダイナミカルシステムの基本表現 (微分方程式) 1 2 図 2.4 RLC回路 an dny d n −1 y dy + an −1 n −1 + L + a1 + a0 y dt n dt dt d mu d m −1u du = bm m + bm −1 m −1 + L + b1 + b0u dt dt dt システムの線形化 線形システム [ 例 2.4 ] 入力 u1 (t ) 水位系 出力 y1 (t ) システム 入力 u2 (t ) qo 断面積 A 出力 y2 (t ) 傾き: qi (t ) k 2 h0 qo = k h qo 0 重ね合わせの原理 α1u1 + α 2u2 線形 システム (u1 + u2 ) [ 例 2.12 ] 磁気浮上系 α1 y1 + α 2 y2 qo (t ) h(t ) h0 図 2.5 水位系 h 図 2.6 線形化 ( y1 + y2 ) 2.2 伝達関数 i0 + δ i (t ) 微分方程式表現の問題点 e0 + δ e(t ) 電磁石 [ 例 2.5 ] システムの結合(微分方程式) L, R x0 + δ x(t ) d 2 y1 dy du + 2 1 + 3 y1 = 1 + u1 dt 2 dt dt d 2 y2 dy dy + 3 2 + 3 y2 = 2 1 + y1 dt 2 dt dt f m (t ) 鉄球 u1 y1 Mg 伝達関数 図 2.9 磁気浮上系 = y2 結合 出力のラプラス変換 入力のラプラス変換 (すべての初期値 = 0 ) 2 フィードバック制御入門 第2章 an dny d n −1 y dy d mu d m−1u du + an −1 n −1 + L + a1 + a0 y = bm m + bm −1 m−1 + L + b1 + b0u dt n dt dt dt dt dt G (s ) = 「 s をかける」 「微分する」 Y ( s) = L[ y (t )] Y (s) の定義より Y ( s ) = G ( s )U ( s ) U (s) 伝達関数 U ( s) = L[u (t )] 入力 U (s ) an s nY ( s ) + an −1s n −1Y ( s ) + L + a1sY ( s ) + a0Y ( s ) = bm s mU ( s ) + bm−1s m −1U ( s ) + L + b1sU ( s ) + b0U ( s ) n (an s + an −1s n −1 + L + a1s + a0 )Y ( s ) G (s ) = 図 2.7 伝達関数 Y ( s) 2s + 1 Y1 ( s) s +1 = = , 2 U1 ( s) s 2 + 2 s + 3 Y1 ( s) s 2 + 3s + 1 m −1 Y ( s) b s + bm −1s + L + b1s + b0 = m n U (s) an s + an −1s n −1 + L + a1s + a0 伝達関数 = 伝達関数 出力のラプラス変換 入力のラプラス変換 Y ( s) Y ( s ) Y2 ( s ) s +1 2s + 1 = 2 ⋅ 1 = 2 ⋅ U1 ( s) Y1 ( s ) U 1 ( s) s + 3s + 1 s 2 + 2s + 3 [ 例 2.7 ] 微分 乗算 sの ダイナミクス x(t ) = 除算 積分 ばね系 ⎡ df (t ) ⎤ L⎢ ⎥ = sF ( s ) − f (0) ⎣ dt ⎦ X (s) = ∫ G(s) = [ 例 2.10 ] ei (t ) :入力 M 1’ R 2’ (すべての初期値 = 0) i (t ) ei (t ) 2 Eo ( s ) 1 = Ei ( s ) RCs + 1 出力のラプラス変換 入力のラプラス変換 f (t ) :入力 x(t ) :出力 x(t ) K f (t ) (すべての初期値 = 0) Ms X ( s ) + DsX ( s ) + KX ( s ) = F ( s ) 1 = X ( s) = L[ x(t )] F ( s) = L[ f (t )] 2 図 2.8 RC回路 G( s) = 伝達関数 d x(t ) dx(t ) +D + Kx (t ) = f (t ) dt 2 dt eo (t ) C RCsEo ( s) + Eo ( s) = Ei ( s ) 伝達関数 G (s ) X (s) 1 = F (s) K 質量ーばねーダンパ系 ラプラス変換 Eo ( s ) = L[eo (t )] ( RCs + 1) Eo ( s ) = Ei ( s ) 図 2.2 ばね系 2 eo (t ) :出力 Ei ( s ) = L[ei (t )] ラプラス変換 f (t ) 1 F (s) K システムの結合(分離)の表現にメリット deo (t ) + eo (t ) = ei (t ) dt x(t ) 伝達関数 G (s ) 加減乗除の代数的演算のみでよい RC K F ( s ) = L[ f (t )] X ( s ) = L[ x(t )] ⎡ t ⎤ 1 L ⎢ f (τ ) dτ ⎥ = F ( s ) ⎣0 ⎦ s RC 回路 f (t ) :入力 x(t ) :出力 1 f (t ) K ラプラス変換 [ 例 2.9 ] Y (s ) [ 例 2.6 ] システムの結合(伝達関数) = (bm s m + bm −1s m −1 + L + b1s + b0 )U ( s ) m 出力 G (s ) D M ( Ms 2 + Ds + K ) X ( s ) = F ( s ) 図 2.3 質量ーばねーダンパ系 伝達関数 G (s) G(s) = 1 X ( s) = Ms 2 + Ds + K F ( s) 3 フィードバック制御入門 第2章 [ 例 2.11 ] RLC 回路 ei (t ) :入力 d eo (t ) de (t ) LC + RC o + eo (t ) = ei (t ) dt 2 dt eo (t ) :出力 2 Ei ( s) = L[ei (t )] ラプラス変換 L R 1’ [ 例 2.9 ] 2’ E0 ( s ) = L[e0 (t )] RC (すべての初期値 = 0) i (t ) ei (t ) eo (t ) C LCs 2 Eo ( s ) + RCsEo ( s ) + Eo ( s ) = Ei ( s ) deo (t ) + eo (t ) = ei (t ) dt Ei ( s ) = L[ei (t )] [ 例 2.11 ] 質量ーばねーダンパ系 f (t ) :入力 2 d x(t ) dx (t ) +D + Kx (t ) = f (t ) M dt dt 2 x(t ) :出力 x(t ) K F ( s) = L[ f (t )] Ms X ( s ) + DsX ( s ) + KX ( s ) = F ( s ) M D ei (t ) :入力 eo (t ) :出力 ラプラス変換 伝達関数 G (s ) システム的アプローチ 物知的実体の違いを越えてこれらを数理的に記述されるダ イナミカルシステムとして普遍的に捉えその中に共通する 概念や方法論を構築していく (すべての初期値 = 0) v x τ 速度 角速度 ω [ m/s ] 変位 M [ rad/s] 角変位 θ [m ] 質量 [N ⋅ m ] [ rad] J [ kg ] [ N ⋅ s/m ] ばね定数 K [ N/m ] e i q 水位系 電圧 [V ] 電流 [A ] 電荷 [C ] 熱系 水位 h [m ] 流量 q [m 3 / s] 温度 θ [K ] 熱流量 q 流体量 V [ kg ⋅ m 2 ] B [ N ⋅ m ⋅ s/rad ] ばね定数 K [ N ⋅ m/rad ] L [ J/s ] 熱量 Q [m 3 ] [J] [Ω ] 容量 C [F] 出口抵抗 [s / m 2 ] 液面面積 A [m 2 ] 熱抵抗 R [ K ⋅ s/J ] 熱容量 C [ J/K ] 2 1 Eo (s) 1 = Ei ( s) LCs2 + RCs + 1 むだ時間要素 y (t ) = u (t − L) u (t ) [m 3 / s ] L =l /v − as ラプラス変換 L[ f (t − a)] = e F ( s ) v [m / s ] (ラプラス変換の【性質5】) A 伝達関数 G (s ) Y (s) = e − sL G( s) = U ( s) パデー近似 l [m] y (t ) 0 u (t ) 出力 むだ時間 t U ( s) e − sL B y (t ) [m 3 / s ] 図 2.10 むだ時間要素の例 u (t ) 入力 R eo (t ) C 図 2.4 RLC回路 [H ] 抵抗 R i (t ) ei (t ) 伝達関数 G(s) 慣性モーメント インダクタンス 粘性摩擦係数 粘性摩擦係数 D 電気系 2’ LCs Eo ( s ) + RCsEo ( s ) + Eo ( s ) = Ei ( s ) Y ( s ) = e − sLU ( s ) 表 2.4 物理システムのアナロジー L R 2 [ 例 2.13 ] [N] 1’ E0 ( s ) = L[e0 (t )] G( s ) = 1 X ( s) = Ms 2 + Ds + K F ( s) f Ei ( s) = L[ei (t )] ( LCs 2 + RCs + 1) Eo ( s ) = Ei ( s ) 図 2.3 質量ーばねーダンパ系 機械系 (回転運動) トルク Eo ( s ) 1 = Ei ( s ) RCs + 1 d eo (t ) de (t ) LC + RC o + eo (t ) = ei (t ) dt 2 dt ( Ms 2 + Ds + K ) X ( s ) = F ( s ) 機械系 (直線運動) 力 2 図 2.8 RC回路 RLC 回路 f (t ) (すべての初期値 = 0) 2 G(s) = eo (t ) C 1 2 X ( s) = L[ x(t )] ラプラス変換 i (t ) ei (t ) Eo ( s ) = L[eo (t )] 2’ 伝達関数 G (s ) G(s) = [ 例 2.10 ] R 1’ ( RCs + 1) Eo ( s) = Ei ( s) Eo (s) 1 = Ei ( s) LCs2 + RCs + 1 G( s ) = ei (t ) :入力 eo (t ) :出力 RCsEo ( s) + Eo ( s) = Ei ( s ) 図 2.4 RLC回路 伝達関数 G(s) 入力のラプラス変換 (すべての初期値 = 0) 2 1 出力のラプラス変換 RC 回路 ラプラス変換 ( LCs 2 + RCs + 1) Eo ( s ) = Ei ( s ) = 伝達関数 y (t ) = u (t − L) 0 Y (s) L t 図 2.11 むだ時間要素 4 フィードバック制御入門 第2章 [ 例 2.14 ] 2.3 ブロック線図 DC サーボモータ 電機子回路 ブロック線図 ea (t ) = La システムの結合 / 信号の流れの様子を表現 逆起電力 ブロック線図の基本単位 加え合せ点 基本単位 引き出し点 ブロック 加え合せ点 引き出し点 記号 u y G + u y = Gu y ± ω (t ) = 式 w y u z y =u±w τ (t ) = Kτ ia (t ) 回転運動 1 (ea ( s) − eb (s) ) La s + Ra eb ( s ) = K bω ( s ) dθ (t ) ω (t ) = dt 1 θ ( s) = ω ( s) s 発生トルク 回転運動 τ (t ) = J dω (t ) + Bω (t ) dt ω ( s) = 1 τ ( s) Js + B τ (s ) Kτ (d) ω ( s ) = ω (s) ω (s ) θ (s ) 1 s 1 (e) θ ( s ) = ω ( s ) s 1 τ (s) Js + B 図 2.13 DC サーボモータの各部のブロック線図 + 1 La s + Ra − ia (s ) (a) τ (s ) Kτ 1 Js + B (c) eb (s ) ω (s ) (d) Kb 1 s θ (s ) (e) (b) 図 2.14 DC サーボモータの全体のブロック線図 アナロジー 直列結合,並列結合,フィードバック結合 システム的アプローチ 表 2.2 ブロック線図の結合方式 結合方式 Network TCP Network 1 Js + B ブロック線図の結合方式 むだ時間要素 TCP τ (s ) (c) τ (t ) = Kτ ia ( s ) eb (s ) Kb (b) eb ( s ) = K bω ( s ) 1 (ea (s) − eb ( s) ) La s + Ra ea (s ) τ ( s ) = Kτ ia ( s) ω ( s) ia ( s ) 1 La s + Ra − eb (s) (a) ia ( s ) = ia ( s ) 逆起電力 τ (t ) = Kτ ia (t ) dω (t ) + Bω (t ) dt τ (t ) = J + eb (t ) = K bω (t ) J, B 図 2.12 DCサーボモータ ea ( s ) ia ( s ) = θ (t ) dθ (t ) dt 発生トルク 電機子回路 dia (t ) + Ra ia (t ) + eb (t ) dt I f (一定) y = u, z = u ラプラス変換 ea (t ) = La ia (t ) ea (t ) eb (t ) = K bω (t ) 表 2.1 ブロック線図の基本単位 ブロック La Ra dia (t ) + Ra ia (t ) + eb (t ) dt TCP 直列結合 並列結合 結合前 u G1 z G1 u G2 オーバーフロー u + フィードバック 結合 G1 m G2 結合後 u G2G1 u G1 ± G2 y G2 y y1 + ± y y y2 y u G1 1 ± G1G2 y 5 フィードバック制御入門 第2章 フィードバック結合 直列結合 u y z G1 u y G2G1 G2 y = G2 z z = G2 y y1 G1 u + ± G2 y y = G1 (u − z ) y u G1 ± G2 y2 y = G1 (u − G2 y ) y = G1u ± G2u y1 = G1u = (G1 ± G2 )u y2 = G2u [ 例 2.15 ] DC サーボモータ ia (s) 1 La s + Ra Kτ τ (s) ea (s) ω (s ) 1 Js + B + − θ (s ) 1 s 直列結合 eb (s) τ ( s) 1 Js + B ω ( s) θ (s) 1 s ea (s ) Kb フィードバック結合 ω (s ) Kτ ( La s + Ra )( Js + B) + K b Kτ Kb La Ra + − eb (s ) θ (s) 1 s θ (s ) 1 s 直列結合 eb ( s ) ea (s ) ω (s ) Kτ ( La s + Ra )( Js + B) y G1 1 ± G1G2 Kb Kτ La s + Ra + − u (1 + G1G2 ) y = G1u G1 y= u 1+ G1G 2 y = y1 ± y2 ea ( s ) G2 ネガティブ・フィードバック 並列結合 + − y G1 − z + ポジティブ・フィードバック y = G2G1u z = G1u ea (s) u + ネガティブ・フィードバック ω (s) Kτ ( La s + Ra )( Js + B) eb (s) 1 s θ (s ) θ (s ) I f 直列結合 ia (t ) θ (t ) (一定) ea (s ) J,B Kb フィードバック結合 図 2.13 DCサーボモータ 等価変換 ブロックの 入れ替え 変換前 u z G1 u 加え合せ点の 入れ替え + 変換後 y + ± y G2 u ± v + w y G1 y + ± ± w u u u 変換前 ブロックと 加え合せ点の 入れ替え(2) v u v u ブロックと 引き出し点の 入れ替え(1) ブロックと 引き出し点の 入れ替え(2) u u u y u + ブロックと 加え合せ点の 入れ替え(1) 変換後 G ± y + G ± v G y + G u y + ± v ± G 1/ G v u u 引き出し点の 入れ替え z G2 u 図 2.15 DC サーボモータのブロック線図の簡略化 等価変換 表 2.3 ブロック線図の等価変換 θ (s ) Kτ s{( La s + Ra )( Js + B ) + K b Kτ } ea (t ) y G u y G y u y G y G u y G y 1/ G 6 フィードバック制御入門 第2章 代表的な非線形要素 (a)飽和 (b)不感帯 (c)二位置リレー (d)三位置リレー (e)二位置リレー (ヒステリシスあり) (f)三位置リレー (ヒステリシスあり) (g)バックラッシュ (h)わん曲 [ 例 2.4] 水位系 δqi (t ) :入力 dAh(t ) = qi (t ) − qo (t ) dt A δh(t ) :出力 qo (t ) = k h(t ) (ベルヌーイの定理) qo 0 = qi 0 = k h0 ( h(t ) = h0 + δh(t ) A M δh(t ) :出力 Qi ( s ) = L[δqi (t )] L H ( s ) = L[δh(t )] qi (t ) k H ( s ) = Qi ( s ) 2 h0 k ( As + ) H ( s) = Qi ( s ) 2 h0 ) d k δh(t ) + δh(t ) = δqi (t ) dt 2 h0 [ 例 2.12 ] δqi (t ) :入力 (すべての初期値 = 0) AsH ( s ) + h k ⎛ δh(t ) ⎞ δh(t ) ⎟ = k h0 + qo 0 + δqo (t ) ≈ k h0 ⎜⎜1 + 2 h0 2h0 ⎟⎠ ⎝ k δqo (t ) = δh(t ) Q qo 0 = qi 0 = k h0 2 h0 qo (t ) = qo 0 + δqo (t ) ラプラス変換 h0 図 2.6 線形化 h0 の大きさに比べて δh が十分に小さいものとし, 2次以上の項を省略する 図 2.5 水位系 qi (t ) = qi 0 + δqi (t ) k d δh(t ) + δh(t ) = δqi (t ) dt 2 h0 qo = k h qo 0 ⎛ δh(t ) ⎞ = k h0 ⎜⎜1 + + L⎟⎟ テイラー展開 2h0 ⎝ ⎠ qo (t ) h(t ) 動作点からの微小変化分に着目 A k h0 1 非線形項 [ 例 2.8] 水位系 傾き: 2 ⎛ δh(t ) ⎞ 2 ⎟ qo 0 + δqo (t ) = k h0 ⎜⎜1 + h0 ⎟⎠ ⎝ 断面積 A 線形化 qo d (h0 + δh(t ) ) = (qo0 + δqo (t ) ) − (qi 0 + δqi (t )) dt qo 0 + δqo (t ) = k h0 + δh(t ) qi (t ) dh(t ) A + k h(t ) = qi (t ) dt 付録 線形の微分方程式 i0 + δi (t ) 磁気浮上系 ⎛ i (t ) ⎞ d 2 x (t ) = Mg − k ⎜⎜ ⎟⎟ dt 2 ⎝ x(t ) ⎠ 2 非線形項 di(t ) + Ri (t ) = e(t ) dt 電磁石 e0 + δe(t ) L, R f m (t ) x0 + δx(t ) x(t ) = x0 + δx(t ), i (t ) = i0 + δi (t ) 断面積 A 鉄球 e(t ) = e0 + δe(t ) Mg qo (t ) h(t ) 2 2 ⎛ i(t ) ⎞ ⎛ i0 ⎞ ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ + L ⎝ x(t ) ⎠ ⎝ x0 ⎠ 線形化 d δx (t ) = K xδx (t ) − K iδi (t ) dt 2 図 2.9 磁気浮上系 2 伝達関数 G (s ) G ( s) = H ( s) 1 = Qi ( s ) As + k / 2 h0 M 図 2.5 水位系 dδi (t ) + Rδi (t ) = δe(t ) L dt Kx = 2ki 2ki02 , Ki = 20 x0 x03 7 フィードバック制御入門 第2章 ラプラス変換 I δ ( s) = L[δi (t )] Eδ (s) I δ (s ) 1 Ls + R I δ (s ) − Ki Ms 2 − K x d ( x (t ) + l sin θ (t )) = f (t ) dt 2 mlθ&&(t ) = mg sin θ (t ) − m&x&(t ) cosθ (t ) X δ (s ) mlθ&&(t ) + m&x&(t ) cos θ (t ) = mg sin θ (t ) cosθ (t ) = 1 − f (s) θ (t ) 2! 3! f (s) +L 1 ( M + m) s 2 x(s) + − 1 ( M + m) s 2 + x(s) − mls 2 ( M + m) s 2 θ (s) θ (s ) mls 2 ( M + m) s 2 x( s) = L[ x(t )], θ ( s ) = L[θ (t )], f ( s) = L[ f (t )] 1 mls 2 f (s) − θ (s) ( M + m) s 2 ( M + m) s 2 +L 2 mlθ&&(t ) + m&x&(t ) = mgθ (t ) mlθ&&(t ) + m&x&(t ) = mgθ (t ) ⇒ x( s ) = θ (t ) 3 ( M + m) &x&(t ) + mlθ&&(t ) = f (t ) − Ki X δ (s) = Eδ ( s ) ( Ms 2 − K x )( Ls + R) ( M + m) s 2 x( s ) + mls 2θ ( s ) = f ( s ) 非線形項 θ (t ) ≈ 0 であるとき, sin θ (t ) ≈ θ (t ), cosθ (t ) ≈ 1, θ& 2 (t ) ≈ 0 sin θ (t ) = θ (t ) − ( M + m) &x&(t ) + mlθ&&(t ) = f (t ) ラプラス変換 f (t ) ( M + m) &x&(t ) − mlθ& 2 (t ) sin θ (t ) + mlθ&&(t ) cos θ (t ) = f (t ) 線形化 伝達関数 G (s ) m l 式整理 − Ki ( Ms 2 − K x )( Ls + R ) G ( s) = θ (t ) x(t ) M&x&(t ) + m Ms 2 X δ ( s ) = K x X δ ( s ) − K i I δ ( s ) − Ki ⇒ X δ (s) = Iδ (s) Ms 2 − K x 1 Eδ ( s ) Ls + R 倒立振子 2 (すべての初期値 = 0) LsI δ ( s ) + RI δ ( s) = Eδ ( s) ⇒ Iδ (s) = [ 2章 演習問題【4】 ] Eδ ( s) = L[δe(t )], X δ ( s) = L[δx(t )] s2 g − ls 2 mls 2θ ( s ) + ms 2 x( s ) = mgθ ( s ) ⇒ θ ( s) = x(s ) f (s ) s2 x( s ) g − ls 2 s2 g − ls 2 θ (s ) ( M + m)( g − ls 2 ) ( M + m)( g − ls 2 ) + mls 2 1 ( M + m) s 2 f (s) ls 2 − g s {Mls − ( M + m) g} 2 x(s ) x(s ) 2 伝達関数 G ( s ) x( s) ls 2 − g = 2 G (s ) = 2 f ( s ) s {Mls − ( M + m) g} 8
© Copyright 2024 ExpyDoc