{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "Vo4mY-6N2yoA" }, "source": [ "# 5章 安定性" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "id": "gJYRxJfd2yoC" }, "outputs": [], "source": [ "from control.matlab import *\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "#plt.rcParams['font.family'] ='sans-serif' #使用するフォント\n", "plt.rcParams['font.family'] = 'Times New Roman' # font familyの設定\n", "plt.rcParams['mathtext.fontset'] = 'cm' # math fontの設定\n", "plt.rcParams['xtick.direction'] = 'in' #x軸の目盛線が内向き('in')か外向き('out')か双方向か('inout')\n", "plt.rcParams['ytick.direction'] = 'in' #y軸の目盛線が内向き('in')か外向き('out')か双方向か('inout')\n", "plt.rcParams['xtick.major.width'] = 1.0 #x軸主目盛り線の線幅\n", "plt.rcParams['ytick.major.width'] = 1.0 #y軸主目盛り線の線幅\n", "plt.rcParams['font.size'] = 11 #フォントの大きさ\n", "plt.rcParams['axes.linewidth'] = 0.5 # 軸の線幅edge linewidth。囲みの太さ\n", "plt.rcParams['mathtext.default'] = 'it'#'regular'\n", "plt.rcParams['axes.xmargin'] = '0'\n", "plt.rcParams['axes.ymargin'] = '0.05'\n", "plt.rcParams['savefig.facecolor'] = 'None'\n", "plt.rcParams['savefig.edgecolor'] = 'None'\n", "\n", "plt.rcParams[\"legend.fancybox\"] = True # 丸角\n", "# plt.rcParams[\"legend.framealpha\"] = 1 # 透明度の指定、0で塗りつぶしなし\n", "# plt.rcParams[\"legend.edgecolor\"] = 'gray' # edgeの色を変更\n", "plt.rcParams[\"legend.handlelength\"] = 1.8 # 凡例の線の長さを調節\n", "plt.rcParams[\"legend.labelspacing\"] = 0.4 # 垂直方向(縦)の距離の各凡例の距離\n", "plt.rcParams[\"legend.handletextpad\"] = 0.7 # 凡例の線と文字の距離の長さ\n", "plt.rcParams[\"legend.markerscale\"] = 1.0 # 点がある場合のmarker scale" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "id": "iOA70Kcj2yoE" }, "outputs": [], "source": [ "def linestyle_generator():\n", " linestyle = ['-', '--', '-.', ':']\n", " lineID = 0\n", " while True:\n", " yield linestyle[lineID]\n", " lineID = (lineID + 1) % len(linestyle)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "id": "EEUYxua92yoE" }, "outputs": [], "source": [ "def plot_set(fig_ax, *args):\n", " fig_ax.set_xlabel(args[0])\n", " fig_ax.set_ylabel(args[1])\n", " fig_ax.grid(ls=':', lw=0.5)\n", " if len(args)==3:\n", " fig_ax.legend(loc=args[2])" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "id": "FomeQ5aF2yoE" }, "outputs": [], "source": [ "def bodeplot_set(fig_ax, *args):\n", " fig_ax[0].grid(which=\"both\", ls=':', lw=0.5)\n", " fig_ax[0].set_ylabel('Gain [dB]')\n", "\n", " fig_ax[1].grid(which=\"both\", ls=':', lw=0.5)\n", " fig_ax[1].set_xlabel('$\\omega$ [rad/s]')\n", " fig_ax[1].set_ylabel('Phase [deg]')\n", " \n", " if len(args) > 0:\n", " fig_ax[1].legend(loc=args[0])\n", " if len(args) > 1:\n", " fig_ax[0].legend(loc=args[1])" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# 図を保存するかどうか\n", "is_savefig = False\n", "# 図の保存パス\n", "figpath=\"./notebook_output/\" " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "# 数式処理のためにsympyをインポート\n", "import sympy as sp\n", "from sympy.matrices import *" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 例5.1: 伝達関数と状態方程式の安定性の関係" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "状態方程式を定義" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "A = np.matrix([[4,3],[-6,-5]])\n", "B = np.matrix([[0],[1]])\n", "C1 = np.matrix([1,0])\n", "C2 = np.matrix([1,1])\n", "D = np.matrix([0])\n", "ss1 = ss(A, B, C1, D)\n", "ss2 = ss(A, B, C2, D)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\n", "\\left(\n", "\\begin{array}{rllrll|rll}\n", "4\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&3\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "-6\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&-5\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\hline\n", "1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\end{array}\\right)\n", "\\]" ], "text/plain": [ "StateSpace(array([[ 4., 3.],\n", " [-6., -5.]]), array([[0.],\n", " [1.]]), array([[1., 0.]]), array([[0.]]))" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ss1" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\n", "\\left(\n", "\\begin{array}{rllrll|rll}\n", "4\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&3\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "-6\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&-5\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\hline\n", "1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\end{array}\\right)\n", "\\]" ], "text/plain": [ "StateSpace(array([[ 4., 3.],\n", " [-6., -5.]]), array([[0.],\n", " [1.]]), array([[1., 1.]]), array([[0.]]))" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ss2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Aの固有値を調べてみると1と-2で,正のものを一つ含むので不安定である." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 1., -2.])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l, _ = np.linalg.eig(A)\n", "l" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "一方,伝達関数を調べてみると,G1の極はAの固有値を二つとも保存しているが,G2の極は安定な固有値の方しか含まない.Aの不安定極は,出力行列C2によって隠されてしまっている." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$\\frac{3}{s^2 + s - 2}$$" ], "text/plain": [ "TransferFunction(array([3.]), array([ 1., 1., -2.]))" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G1 = ss2tf(ss1)\n", "G1" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-2., 1.])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pole(G1)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$\\frac{1}{s + 2}$$" ], "text/plain": [ "TransferFunction(array([1.]), array([1., 2.]))" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G2 = ss2tf(ss2)\n", "G2" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-2.])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pole(G2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### コーヒーブレイク:安定性の用語に注意" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "積分器を含むシステム=原点に極を持つ場合の挙動" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$\\frac{1}{s^2 + s}$$" ], "text/plain": [ "TransferFunction(array([1]), array([1, 1, 0]))" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G1=tf([1],[1,1,0])\n", "G1" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1., 0.])" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pole(G1)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "\\[\n", "\\left(\n", "\\begin{array}{rllrll|rll}\n", "-1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&-1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\hline\n", "0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&-1\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}&0\\phantom{.}&\\hspace{-1em}&\\hspace{-1em}\\phantom{\\cdot}\\\\\n", "\\end{array}\\right)\n", "\\]" ], "text/plain": [ "StateSpace(array([[-1., 0.],\n", " [ 1., 0.]]), array([[-1.],\n", " [ 0.]]), array([[ 0., -1.]]), array([[0.]]))" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ss1 = tf2ss(G1)\n", "ss1" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 0., -1.])" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s, v = np.linalg.eig(ss1.A)\n", "s" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(6, 6))\n", "\n", "w = 1.5\n", "Y, X = np.mgrid[-w:w:5j, -w:w:5j]\n", "\n", "U = ss1.A[0,0]*X + ss1.A[0,1]*Y\n", "V = ss1.A[1,0]*X + ss1.A[1,1]*Y\n", "\n", "# 固有空間のプロット\n", "vv = v * w * np.sqrt(2)\n", "if s.imag[0] == 0 and s.imag[1] == 0: #固有値が複素数の場合はプロットできない\n", " ax.plot([-vv[0,0],vv[0,0]], [-vv[1,0],vv[1,0]], c='k', ls='-.', lw=2)\n", " ax.plot([-vv[0,1],vv[0,1]], [-vv[1,1],vv[1,1]], c='k', ls='--', lw=2) \n", " \n", "ax.streamplot(X, Y, U, V, density=0.7, color='k', linewidth=0.5)\n", "\n", "ax.set_xlim(-1.5,1.5)\n", "ax.set_ylim(-1.5,1.5)\n", "ax.set_xticks(np.arange(-1.5, 1.51, step=0.5))\n", "ax.set_yticks(np.arange(-1.5, 1.51, step=0.5))\n", "ax.grid(ls = ':')\n", "plot_set(ax, '$x_1$', '$x_2$')\n", "\n", "_, _, x = initial(ss1, X0=[1,-0.5], return_x=True)\n", "ax.plot(x[:,0], x[:,1], lw=2, color='r',) " ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(6, 4.6))\n", "\n", "x0 = [1,-0.5]\n", "\n", "_, trange, x = initial(ss1, X0=x0, return_x=True) # シミュレーション\n", "ax.plot(trange, x[:,0], lw=2, color='r', label='$x_1$') \n", "ax.plot(trange, x[:,1], lw=2, color='b', label='$x_2$') \n", "\n", "ax.axhline(0, color=\"k\", linewidth=0.5) \n", "ax.grid(ls = ':')\n", "plot_set(ax,'t','x','best')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 例5.2 Lyapunovの安定判別法" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "A = [[ 1. 2.]\n", " [-3. -4.]]\n", "\n", "B = [[0.]\n", " [1.]]\n", "\n", "C = [[1. 0.]]\n", "\n", "D = [[0.]]\n", "\n" ] } ], "source": [ "A = np.matrix([[1, 2],[-3, -4]])\n", "B = np.matrix([[0],[1]])\n", "C = np.matrix([1, 0])\n", "D = np.matrix([0])\n", "sys = ss(A, B, C, D)\n", "print(sys)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[12., 0.],\n", " [ 0., 12.]])" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q = np.eye(A.shape[0])*12\n", "Q" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[27. 11.]\n", " [11. 7.]]\n" ] } ], "source": [ "#関数の仕様上,A^Tを代入していることに注意\n", "P = lyap(np.transpose(A),Q)\n", "print(P)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "matrix([[-1.20000000e+01, -3.55271368e-15],\n", " [-3.55271368e-15, -1.20000000e+01]])" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "P*A + np.transpose(A)*P" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "固有値の確認" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1., -2.])" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l, v = np.linalg.eig(A)\n", "l" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "※数式処理による理論解" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}2 p_{11} - 6 p_{12} + 12.0 & 2 p_{11} - 3 p_{12} - 3 p_{22}\\\\2 p_{11} - 3 p_{12} - 3 p_{22} & 4 p_{12} - 8 p_{22} + 12.0\\end{matrix}\\right]$" ], "text/plain": [ "⎡2⋅p₁₁ - 6⋅p₁₂ + 12.0 2⋅p₁₁ - 3⋅p₁₂ - 3⋅p₂₂⎤\n", "⎢ ⎥\n", "⎣2⋅p₁₁ - 3⋅p₁₂ - 3⋅p₂₂ 4⋅p₁₂ - 8⋅p₂₂ + 12.0 ⎦" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy\n", "sympy.init_printing()\n", "sympy.var('p11, p12, p22')\n", "Asym=sympy.Matrix(A)\n", "Psym=sympy.Matrix([[p11, p12],[p12, p22]])\n", "Qsym=sympy.Matrix(Q)\n", "Lyap = Psym*Asym + Asym.transpose()*Psym + Qsym\n", "Lyap" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left\\{ p_{11} : 27.0, \\ p_{12} : 11.0, \\ p_{22} : 7.0\\right\\}$" ], "text/plain": [ "{p₁₁: 27.0, p₁₂: 11.0, p₂₂: 7.0}" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq1 = sympy.Eq(Lyap[0,0], 0)\n", "eq2 = sympy.Eq(Lyap[0,1], 0)\n", "eq3 = sympy.Eq(Lyap[1,1], 0)\n", "sympy.solve([eq1, eq2, eq3], [p11, p12, p22])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "章末問題【2】も参照のこと." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 例5.3 フィードバック系の内部安定性と極零相殺" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "数式処理による理論解析" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\frac{s - 1}{s + 1}, \\ \\frac{1}{s - 1}\\right)$" ], "text/plain": [ "⎛s - 1 1 ⎞\n", "⎜─────, ─────⎟\n", "⎝s + 1 s - 1⎠" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s=sp.symbols('s')\n", "K=(s-1)/(s+1)\n", "P=1/(s-1)\n", "K,P" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC4AAAAtCAYAAADRLVmZAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACeUlEQVRoBe2Y7U3DMBCGW8QAFWyQbsDHBrABjABsAD/bv3QDYATYgK5AN4ANqNigPK+xIxxCZYxtqOSTTnbO9/Hmcr4kHq5Wq0EOmk6ne/i9h/eZv6WOsZ3SIQBH+LuDl/AB3MBZKDVwZfZUSLmJSwZlPQttZfFawGkFXiDJXoiacS8dBS5qxgsk2QtRM+6lo8BFzozvWvw7Oe5jmPoji1e9PqxER7C+XRbwC/zI2i1jEkoOPAmqACc5SyUgfLxKBR6fuzjLmvG4vMVb1YzH5y7OcmMzPpxMJnnOJ+ISGWxV35zBqUqkuLE1XoEnqoBgN0mP4IKjBijy7d6gdmVVdQ6p88gr5Pq+H/zLrmJB3zAeC6SI+TWDziOPmc+z1TjOj+BzBY0ggbz4bIcvZV+HquYPKxtwAui3TRxD+u17BmzXfo58hLzJCTwGsLMRwBcAKsN9NPqyOVHWY3q12mNGbYjvHPQ5/bWMeOaMvceROW9nfeEBR/BogZqdy7Ue2Zd663GYXQQWgW5g02naUmFBQm0oA9oikdKTnf/1oE35AL6ZgLTt0AJ/Rqb6ktIcmc5D1hI6NyjoyXTJHQSp/3Zpgd135dDVHdgYDWPbHlvg0mbB9UpnPEPmXgJOFjRid4KigpkMBRn1KGGvlqre7d1oWyqyYVEbcShFWJm/5LrbkhCXIWLr5seMLWjmSsZHO2RyDatMDDFXmbSPxclLjsTXZjxk7D5x3czSdRXVqGq1JQykcMtYtBUKADHVKNw+83AhVwOZOeBnVqB6cqXxhoL32mWtFKktC3zfJ4PpegY4AHXxuQ2WAtgbBzx68a0lb3Ou1fz5okosW5m9A+5RvmR5qtdDAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\frac{1}{s + 2}$" ], "text/plain": [ " 1 \n", "─────\n", "s + 2" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gyr=sp.factor(P*K/(1+P*K))\n", "Gyr" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAH8AAAAwCAYAAAA4s6WqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFSklEQVR4Ae2c7VHcMBCGOSYFENLB0QGQCgIdAB2QdHD8hL/QAUkFDOngoITQAXQQhg7I+1wsj6STbPnu8Fln74zQh63V7rvSSvJJjN7f37cGWhyBq6urfdW+VzhQ+m1xTu3X/NR+k/m3KCPvSItfCq8Khwpjheyot8aXAY9krbHin02tVozwU+opPVHE6M+OtrOTeHUCM3oJvaU+G7+3RjeKZ+n25WqvpcDfQok9xReFKzZ6DXECAtkZX0aeFsZ+Qj/lmbvpDD/ID5SOQFZuX4ZmVX2keGb4Qs0LxX/SVR7eNAhkN/IRXMZn9LO3flD6mLIY6fmtnuEdfNqlQM9DHuNJ5bPVvF9pk/Kj3D7yyCi4eLZXhm5UxuhvRKpzogps9W4aVfReVn1kQabPSmf1kScrtw/uApjF3UhJRvyDwkT5Xm/ZhMFClI3xZeBrhWejpdK1Lt+8O8RhBLIxvsRn3mb+LkkdANf9U/E63e2XQqDZGqIULoNETgu+c+HJSv+7YuPm35QPLdg+HHq1y4ITMovJe5W9KD9V3PiT8YxTy3+yMb4AZXtnb/FahsptTvJkvxvIye276C+fY6pY53SxvAZLcshuq7ekvkN1C4E+j3wLhn4mB+P30+4zrQfjD8bvMQI9Vn0Y+YPxe4xAj1UfXV5eDme3e9oBhn1+Tw2P2sOcPxi/xwj0WPXoyNcPF+PccVmFDqvgsU4cq+QPGl8Vsr2F4gHNMS37yJf3uDq7IThEMZhb8ElhDkh8Vdz4XFw1lB/zVHJWXpQsDMjv/o1+Y9f7ncdBMuKdjZ0OlX4lr3Lnp2/lGQBzGDjG10scknhUfKC4s1TIaV+UpANED1DqfY52f1Oc9BNuwb/TOEhGDH+ruDy9rLQ53HqsNOcbS1J+DgPf7VPZOSpV1u5QQorQi08VOMVzlyAaOqFbKrWCg+Q3J5NS5bLfQ0bnFJP44QXo4OaUkf3+HAa+8c/EoJF7tLl3NV3ohG54thRqCwfkSZXJl5vjY88BnRjxOyrHM5QUwqA0vh4yx3EGbVMJ3c7qlMsIB4z8InkZ6SEKdSoHA/sMnzkHH2LklKlBXE5uFyUBCx3rPFsSDuvGQO3HzhCy/tnSc2fRR5nIwaAc+XrAarE8F8+bIRJTrkrdKeamDLddmF+azKchtm2UoZvjCiON1uLQVQwkF4ZHR7MD8FV0MLCNj5tgqxAlMYcxixS7V9FQDhcl0Q3566gSh45jwED8LRljV9AcDGy3v6uKsfnDAUzMm1yUBMxHBeJUYiVvd7DUelXvMd+lyJCEQ0MMWGmzQPOJtrbEy1m1Fy81uiwqHrTBGiA2HcDWwcA2ftFmPBJjmNOr+GgwU4a8QszNbOkZHaoL3w2SjBrX/v8T6bMIBiHjgg2L7FVcFuUiy674lXv+iB4OBrbbxyXUjgw1kOtFSXRDxzqqxaFLGBQdaE9xOeKVpkOFpjgHA9v4uIRQhRlYYpb7RUl6PTrWURSHrmEgefalTOhTPB4l1NEdDGy3/wSjCmRw88wrJalxGunSRUmmmBgx9aBjHVXh0BkMhD0DlQUet5Udu6iMRXlo0edgYBv/rmCmKEjnKoVprhclMVxw7vW0rcKhSxiw6KYDYA+fYp3cxYD/zGGCzvM9K+yb/KbE0mmMbqn6tIWD2jlRmKTKtcx7amcOg22vy/CxJmV0eNU6n2U30uRDVFs4ME1VTVWrBHYeA783qYdM6SV+ea75osdPm8q/STjEMPBHPj2NLYO/gFhlD2ybF7os4s02CYcwBqERUfSUVuaiUPurKpMeE3RZlN8m4FCFwT9cfz3nxwVU7gAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle \\frac{s + 1}{\\left(s - 1\\right) \\left(s + 2\\right)}$" ], "text/plain": [ " s + 1 \n", "───────────────\n", "(s - 1)⋅(s + 2)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gyd=sp.factor(P/(1+P*K))\n", "Gyd #不安定!" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC4AAAAtCAYAAADRLVmZAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACwUlEQVRoBe2Z7U3DMBCGW8QABTYIG/CxAd0ARgA2aH+2f+kGlBFgA8oIdAPYgIoNyvOanBWnTdVUSuJIOck6x/HHk8v5Ul/76/W6F7NMp9ML+F4pl9R/jfXYKjFpAAfwvFBWlCtKQgkkVnBZ9k6kPMQIJasHchRcteiiteAbrsKrecLwP6nxz9Fj2vymiOWlBOAAvqegSwFyfYPSgzzqOibxrgKkdu4N2kGnkGP0Z0zAxhJYXI2Ay+qKmwvqQ7XtEvoodH1QpPeVO8ZlDbTvON+vn/0AMZncQuHHZEabrN6YsL54xHVC3e817yoiEySlT1WWXlBGXJexJEPqEQcO3BPly5akvpebWP8mtFlc0eM5CwD8LddztH892fs11s/StU6zazofB06fVMEL0lzjl/Z5tnOdddZWgJCIS0zazN+Ud3EFm5PG1oi5SmuADbQDN0vUpTuL12VpW6ezuFmiLt1ai/cnk0nc+YmCV9h9OQsMU1lza328A6/MJwom3jgsF/SrvZnf3AmL2nlX+cOVrml3h+woo0oK/Yz2WQbqdpAfUl9U5uNMrhzNw4GvaiMJxVyyvk5o7mRUGTgL6Lhlx0CqpUTHtS9g8+OVeRjQnlQJXoo011mA3wDKwttksLE56azX1GjSEwaXG99C7PLk3F8G4DREm/SETdAJxUUa7yrcUGPMSU9tyjc4Z+ieD4cpuLJZ8i9LeiqPsVMYp0SSNlNeLIGj+JuXJeOK3CHft5eukaB9ePTg6s0Ni5U2+OCkJ3MpE6bFnIVswrKa8Qqpit3Bg3pX0YTcjCrpCY8e/jwLTV3G+A+HVKJLesKkzXiNts++bCvRw6wsqshHo0l6yqLw2D4LuGhXAJkZ+H3aIH+yr5WSnk3996OwLPhtPxncjywHDqAuXAO6cYFH//btlGBz7uxZ/qY+10Wf7PKz5Ub8AclQA6mD+f7EAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\frac{s - 1}{s + 2}$" ], "text/plain": [ "s - 1\n", "─────\n", "s + 2" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gur=sp.factor(K/(1+P*K))\n", "Gur" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "章末問題【3】も参照のこと." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 例5.4(a) L(s)が積分器を持つ場合" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "L=tf([1],[1,0]) * tf([1],[1,1])**3" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.2, 0, '$O$')" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# 全体図(左),拡大図(右)\n", "fig, ax = plt.subplots(1,2,figsize=(12, 6)) \n", "\n", "x, y, _ = nyquist(L, logspace(-3,3,1000), plot=False)\n", "\n", "for i in [0,1]:\n", " ax[i].plot(x, y, c='k', ls='-', lw=2)\n", " ax[i].plot(x, -y, c='k', ls=':', lw=2)\n", "\n", " ax[i].grid(ls=':', lw=0.5)\n", " ax[i].set_xlabel('Re')\n", " ax[i].set_ylabel('Im')\n", " \n", "ax[0].set_xlim(-5,15)\n", "ax[0].set_ylim(-10, 10)\n", "ax[1].set_xlim(-3,1)\n", "ax[1].set_ylim(-2,2)\n", "\n", "ax[1].scatter(0, 0, color='k')\n", "ax[1].annotate('$O$', xy=(0.2, 0), size=10)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Bode線図(参考)\n", "fig, ax = plt.subplots(2, 1, figsize=(8,7)) \n", "\n", "gain, phase, w = bode(L, logspace(-3,3), plot=False)\n", "ax[0].semilogx(w, 20*np.log10(gain), color='k', lw=1)\n", "ax[1].semilogx(w, phase*180/np.pi, color='k', lw=1)\n", "\n", "bodeplot_set(ax)\n", "\n", "ax[1].set_yticks([-360,-270,-180,-90,0])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### L(s)が虚軸上に極を持つ場合" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "omega = 10.0\n", "L=tf([omega],[1,0,omega**2]) * tf([1],[1,1])" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "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xfjvv/9umRbSsWNHSpUqxT333GNf9/PPP/PFF19QsGBBe3N97NgxPvzwQ1q3bk3r1q1vG5tqqHhOZxclm+ubP7rXAZWcr169SrVq1bh06RJXr161u1WpUoWoqCiuXLlibzoHDx7M8OHD091fM1++fLRp08aS2O9E2jzly5ePCRMm3LLNa6+9xvbt26lWrZp93ZIlS/juu+/IkyePvbk+deoUW7dupUWLFvYRFFVQ6XwWsoZuOVfNt127dixfvpy//vrLPmhRpUoV8uXLR3Jyst23QYMGXLt2jbCwsFve74ncnKc333zzlm26d+9OoUKFaNWqlX3dpk2bGDduHKdOnbI31ykpKXz99de0aNHilj8QVEC1czonKPk/oePHEt7qfObMGd555x2Sk5PtF5PkyZOHoKAg/P39OX36NGXLlgVgzpw59jldqXPr0n5cqApPPvkkTz75ZLp1jz/++C3F+5dffmHQoEF0797dfnGOzWYjKSnJ6+e+eev5LGQf3XLurb4pKSm8/PLLbN68mbVr19oHNooWLUpgYCAnTpywN9fPP/88AwYMwDAMe83O7JNBb6V58+a3XE/TsGFD3njjDe677z77uv3799O3b19KlizJ6dOn7aPq8fHxXns+pEUFB2eh5AWNaeev6oI3OJumyf79+9m4caN9XXBwMF9//TULFy5MdzHKunXruHTpkr2xhlsvYtSJpk2b8vnnn1OlShX7upIlS/LAAw/QoUMH+7pdu3aRP39+nnvuOSvCdBq65VfQL+fe4nvu3DmWLl1qX/b19WXFihVs2bKFbdu22dd/9NFHXL16la5du9rXBQQE2BtIb/F1FuXLl+e9996jc+fO9nU+Pj506dKFbt262f9fkpKSKFasGI0bNyYqKsqqcJ2CbjnODCVHrnWc9+MNzitWrKBt27bUq1ePrVu3AlCwYEFmzpzJvffem25qR9oL/26HN/g6k9v5durUiU6dOqVbt337dmJjY9P9XyYlJTFp0iQ6duyY7o8VT0a3/Ar65dwbfFOn4Pn6+hIZGUmuXLmA6xeCh4SEpLtmJe31MbfDG3ydye18q1evzvfff59u3YEDB4iOjubKlSvkzp3bvv7rr7+mWrVq1KlT55Z5456KbjnODCWb69QrjXXC05yPHTvGlClTKF68OMOHDwfg/vvv56677qJatWr2W9sBPPvssw7v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7913382CBQtYv349derU4d9//+W5556jevXq/PDDD1716aPk17NYu3YtjRs3plu3bhw/fpzKlSuzbNkyVq9eTY0aNbK1T093didKNtepz5zXiaw6+/j40KNHD44cOcLo0aPJnTs3q1evpn79+nTu3Jn9+/e7OFLnoFuOPdE3JSWFefPmUbVqVZ555hlOnz5N9erVWbFiBcuXL6datWrZ3rcn+gquRbecO+LbpEkTtm7dyrfffkvZsmU5fPgwXbt2pW7duixfvtwr7gYl+fUMNmzYQKtWrWjevDmbN2+mcOHCfPHFF+zdu5d27dpleQrI7fBUZytQsrlW7RZGWcFR59DQUN58801OnDjBq6++SnBwMEuWLKFGjRp0796dPXv2uChS56Bbjj3J12azsXDhQqpXr85TTz3F33//TdmyZfn666/ZtWsXbdq0yfExPMlXcA+65dxRXx8fH5566ikOHTrE1KlTKVasGDt37qRdu3Y0btyYZcuWeXSTLfm1ls2bN9OmTRuaNm3KmjVryJMnDyNHjuTo0aP069fPKY9r9zRnK1Gyuc7JX17eSnad8+fPz5gxYzh27BgDBw7Ez8+PhQsXUrNmTdq3b8+mTZucHKlz0C3HnuCbmJjI7Nmz7X+AHTp0iLvvvpsZM2Zw+PBhevXq5dC86szwBF/BveiW8+z6BgQE0L9/f44dO8a4ceMoUKAAmzdvpn379tSqVYsFCxaQkpLi5GhzjuTX/ZimyerVq3nwwQdp1KgRq1atIleuXLz99tucPHmSd955h9y5czvteJ7g7Cko2VyHhYVZHYLbyalzsWLFmDhxIsePH2fIkCEEBwezbNkyGjduTPPmzVm+fLlHze/TLcdW+l69epVx48ZRtmxZevXqxYEDByhVqhRffvklR44c4bnnnsPf39+px9Qtv4J+Oc+pb3BwMP/3f//HyZMn+eSTTyhWrBh79uzh8ccfp3LlykyfPp24uDgnRZtzJL/uIzk5mfnz53PffffRunVrVq5cSWhoKK+//jonT55k1KhR5M2b1+nH1S3HmaFkc63jvB9nOZcsWZLx48dz6tQp3nzzTfLkycPatWtp164dVapUYfLkyR7xSHXdcmyF7+nTpxkxYgSlS5dmxIgRnDt3jqpVqzJr1iz++ecfnn/+eQICAlxybN3yK+iXc2f5hoWFMWzYMI4fP86XX35J2bJlOXr0KH379qVUqVK8/vrrnD171inHygmSX9cTFRXFZ599Rvny5XnyySfZtWsXhQsX5r333uP06dO8//77t30irrPQLceZoWRznZiYaHUIbsfZzoUKFWL06NGcOnWKsWPHUqpUKY4cOcLAgQMpWbIkw4YN49ixY049piPolmN3+dpsNpYvX84jjzxCmTJlGDduHFFRUTRv3pxly5axb98+nnnmGZc11anoll9Bv5w72zcoKIjnn3+eI0eOMHfuXOrUqcPFixcZM2YMd999N927d2fTpk2WzcuW/LqO3bt3069fP4oXL86QIUM4deoUFStWZNq0aZw6dYo33njDpU11KrrlODOUbK4F55EnTx5GjBjB8ePH+f7772natClRUVGMHz+e8uXL88ADDzB//nx5MpOXExERYb9Hdbt27fjll1/w9fXliSee4K+//uKPP/7I8ZXkgiC4Hj8/P5588km2bdvGpk2b6N69OwALFy6kcePG1KhRgwkTJhAZGWlxpEJOiI+PZ86cOTRs2JBatWoxbdo0YmJiaN68OYsXL+bQoUP07duXoKAgq0PVE9M0lfh65513zFTi4uJM3XCn886dO81evXqZQUFBJmACZr58+cyBAweau3btcksMuuXYFb7x8fHmokWLzM6dO5sBAQH2XN59993mmDFjzPDwcKcfM6voll/TNE1gpOkBtdRdX2lrtmnql3N3+p45c8Z84403zEKFCtl/zv39/c2uXbuav/32m5mcnOzyGCS/Ocdms5kbNmww+/XrZ+bLl8+eyzx58piDBw82Dx486PRjOoJuOc6sZlteYJ31lbZQX716Nef/a16GFc6XL182p0yZYt533332H3LAvPfee80PPvjAPHbsmMuOrVuOneVrs9nMTZs2mS+88IKZP39+e84MwzAffvhhc9myZW75RXsndMuvaUpzrVvOrfBNSEgwf/zxR7Ndu3amj4+P/ee/RIkS5rBhw8xt27aZNpvNJceW/Gafo0ePmu+8845ZtmzZdL9ra9eubU6fPt2Mjo522rFygm45zqxm5/zGhh6IjvN+rHDOmzcvL7zwAi+88AK7d+9mxowZzJ07lz179rBnzx5ef/116tWrx+OPP07Xrl0pWbKk046tW45z4muz2fjrr79YvHgxP/zwQ7q58jVq1KBnz548+eSTFC9e3BmhOgXd8ivol3Mr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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# 全体図(左),拡大図(右)\n", "fig, ax = plt.subplots(1,2,figsize=(12, 6)) \n", "\n", "log_eps = 0.1\n", "x, y, _ = nyquist(L, logspace(-3, 1-log_eps,1000), plot=False)\n", "x2, y2, _ = nyquist(L, logspace(1+log_eps,3,1000), plot=False)\n", "\n", "for i in [0,1]:\n", " ax[i].plot(x, y, c='k', ls='-', lw=2)\n", " ax[i].plot(x, -y, c='k', ls=':', lw=2)\n", " ax[i].plot(x2, y2, c='k', ls='-', lw=2)\n", " ax[i].plot(x2, -y2, c='k', ls=':', lw=2)\n", "\n", " \n", " ax[i].grid(ls=':', lw=0.5)\n", " ax[i].set_xlabel('Re')\n", " ax[i].set_ylabel('Im')\n", " \n", "# ax[0].set_xlim(-5,15)\n", "# ax[0].set_ylim(-10, 10)\n", "# ax[1].set_xlim(-3,1)\n", "# ax[1].set_ylim(-2,2)\n" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/minami/opt/anaconda3/lib/python3.8/site-packages/control/xferfcn.py:317: RuntimeWarning: divide by zero encountered in true_divide\n", " out[i][j] = (polyval(self.num[i][j], x_arr) /\n", "/Users/minami/opt/anaconda3/lib/python3.8/site-packages/control/xferfcn.py:317: RuntimeWarning: invalid value encountered in true_divide\n", " out[i][j] = (polyval(self.num[i][j], x_arr) /\n" ] }, { "data": { "image/png": "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ok+fPujbty/69OmDzp07Y8iQIZmzRNn9s9rOpv12+zNuVmed2o+9oqIi40skEtnloXzl5eW22507d26T064PdXV16Nq1q228ff/S+erq6nY5k5Zun61J/6cqTXNzM9555x2cfPLJmT+ohx9+OB5//PFMu/ZjEvXVarukpCRn3Zw8aj8m4L91ShOJRFBXV5fZb1Unu9dO+2Pkeq21991qO32m086T9DGdxtR+DGnq6urQrVs322NY9UHk/ZP+j1yufO3j2WNK1yJ7TM3Nzbu0b/9+ab+tgueXogCAMXYAgC6c8zcYY50BpAA8A+AgAB8AGA7gufa6fN6gT9Zwt1qndnZxq5jMPpVxiiB7HBEd+alPl/7f+G677ZazTVVVVc54VVUVunXrhp07d+L777/H1q1b8fnnn6Ourg5btmzBu+++iy1btuCbb77B1q1bUVFRgT333BN9+vTB0KFDMWjQIAwaNAhdu3bF6NGjjX8bslhfnzt37sSrr76Ke+65JxMfNmwYPvnkk8z/3k1QrH46bZuio/ipgucTG8bYkQD+CqCq9VIMB3AogHsB3MQYmwsgAeApzzpJEIQSJSUl6NGjB3r06IH99tsPI0aM2GUiVFVVhR49emDbtm3YvHkz1q9fjx07duC9997D4sWLsXHjRmzduhUDBw7EkCFDMHTo0DY/3bt392h0hcHy5csxevRo9OrVK7OvS5cu6NatG7788kvsueeeHvaOIPTh+cSGc74SwCCLUBz/XTxsSa4Fvbppf5rQhNapnV3cKiazT2WcIsgeR0RHfurV5ctPxhh69+6N3r1748ADD2xzCr6xsRGBQAD//ve/8emnn+LTTz/FihUr8H//93/49NNPEQ6HccABB+DAAw/EgQceiBEjRmDYsGHCi5+Lyc9snn/+eZx++um7xPfff3989NFHxiY2xeqn07YpOoqfKng+sVEhX3fMTC9YNal1amcXt4rJ7FMZpwiyxxHRkZ96dV74abVdXl6OYcOGYdiwYW1inHNs3boVH374IdavX49XX30Vd9xxBzZt2oS99torM9kZOXIkRo8ebXtZrRj9/Pe//4033ngDCxcu3CV+2GGHYc2aNTj55JMd+y1DMfrpZtsUHcVPFTy/j40K6W+jmCa9utuk1qmdXdwqJrNPZZwiyB5HREd+6tV54afTdjaMMfTt2xeTJk3CvHnz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VHc9edP6/fbbD48++ijWrFmDr7/+Gvvuuy+uuuoqbNu2Tep4+a67LAU9sSEIgiAIwp59990Xf/nLX/Cvf/0L9fX1GDp0KM4991x89NFHXnfNCAU9saE1Nua1tNZCDL9dc5fVU93FoLrriVPd9eTNpR84cCDuuecefPbZZxgwYAAmTpyI4447DqtXr3b1LWNaY5MH6FKUeS1dkhDD76emdbenurdAddcTp7rryeuk79mzJ379619j8+bNOPPMM3H99ddj//33x3333Wf7qAa6FJUHaGJjXkt/4MQo1A862fZU9xao7nriVHc9ed3qw+Ew5syZg9deew333nsvli1bhgEDBuD888/HO++8A865UF6a2BAEQRAE4TmMMRx99NFYvHgxNmzYgEGDBmH69OkYPXo0/vSnPzl+XdxvFPTExq/PiqqoqPBlbhmtW41TO7u4TMykxyqY6pdqXlE91V0MqrueONVdT16Vuvfp0wfXXnstNm3ahNtuuw2vvfYaBgwYgDPPPBOrVq2yvUuw7rrLUtATG78+UsHkM6xUcsto8/E4e5mYX58TZqpfqnlF9VR3MajueuJUdz15ddQ9EAhg4sSJePLJJ7Fp0yaMGzcOt956K/r374+LL74Yb7311i6XqnTXXZaCntj4dY0N3aBPLE43ajOf1483aqO6m8/rx7rbxanuevLqrvtuu+2Gn//853jxxRexZs0a9OzZEz/96U8xePBgXHPNNZn1OHSDPoIgCIIgCoq9994bv/rVr/Dpp59i0aJFYIxh1qxZGDRoEK6//nqsWrXK85MOBT2xoTU25rW01kKMYrzmrtKO6u5tXj/W3S5OddeTNx91Z4zh4IMPxs0334xPP/0US5Yswe67746LL74Y/fr1w9y5c/H3v/8dO3fudDwOrbHJov31Pb9gcu2PSm4ZrVuNUzu7uEzMr+urTPVLNa+onuouBtVdT5zqridvvuvOGMP++++Pq6++Gu+//z7WrFmDgw8+GA899BAGDBiAI488ErfeeivWr19v+Xdbt48FPbHx64KyxsZGX+aW0brVOLWzi8vETHqsgql+qeYV1VPdxaC664lT3fXk9brue+21Fy688EK8+OKL2LZtG6655hp8++23mDlzJvr374+zzjoLCxcuxObNm6X660RBT2wIgiAIgvAv5eXlOOGEE3D33Xfj7bffxooVK3Dk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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Bode線図(参考)\n", "fig, ax = plt.subplots(2, 1, figsize=(8,7)) \n", "\n", "gain, phase, w = bode(L, logspace(-3,3,1000), plot=False)\n", "ax[0].semilogx(w, 20*np.log10(gain), color='k', lw=1)\n", "ax[1].semilogx(w, phase*180/np.pi, color='k', lw=1)\n", "\n", "bodeplot_set(ax)\n", "\n", "ax[1].set_yticks([-90,-45,0])\n", "\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "metadata": { "id": "UlbWdpks2yoM" }, "source": [ "## 章末問題" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 【1】 Routh-Hurwitzの方法による安定判別" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "import sympy as sp\n", "s = sp.symbols('s')\n", "a3,a2,a1,a0 = sp.symbols('a_3, a_2, a_1, a_0')\n", "# b3,b2,b1 = sp.symbols('b_3, b_2, b_1')\n", "# c3,c2,c1 = sp.symbols('c_3, c_2, c_1')\n", "# d3,d2,d1 = sp.symbols('d_3, d_2, d_1')\n", "sp.init_printing()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (1) Routhの方法" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\frac{- a_{1} + a_{2} a_{3}}{a_{3}}, \\ a_{0}, \\ 0\\right)$" ], "text/plain": [ "⎛-a₁ + a₂⋅a₃ ⎞\n", "⎜───────────, a₀, 0⎟\n", "⎝ a₃ ⎠" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "b1 = (a3*a2 - 1*a1) / a3\n", "b2 = (a3*a0 - 1*0) / a3 # 係数がないところは0を埋める\n", "b3 = (a3* 0 - 1*0) / a3 # 係数がないところは0を埋める\n", "b1,b2,b3" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\frac{a_{3} \\left(- a_{0} a_{3} + \\frac{a_{1} \\left(- a_{1} + a_{2} a_{3}\\right)}{a_{3}}\\right)}{- a_{1} + a_{2} a_{3}}, \\ 0, \\ 0\\right)$" ], "text/plain": [ "⎛ ⎛ a₁⋅(-a₁ + a₂⋅a₃)⎞ ⎞\n", "⎜a₃⋅⎜-a₀⋅a₃ + ────────────────⎟ ⎟\n", "⎜ ⎝ a₃ ⎠ ⎟\n", "⎜──────────────────────────────, 0, 0⎟\n", "⎝ -a₁ + a₂⋅a₃ ⎠" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "c1 = (b1*a1 - a3*b2) / b1\n", "c2 = (b1*0 - a3*b3) / b1\n", "c3 = (b1*0 - a3*0 ) / b1 \n", "c1, c2, c3" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAK0AAAAxCAYAAACoCyl7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAHTUlEQVR4Ae2c4ZXUNhDH9+5dAUeoIJcOIFTA0QEkFXB0AI9Pd9940AGhggQ6gFSQcB2EVAC5Di7/n5D8ZK93V/JKa8m23tNKnp0Z/TUajWV5V0e3t7ersdPV1dWpMLy0OM5s+VT0m7GxbWq/Rsyb+lIb/aQQwK/lBM8cFtXfqv5Z+SdHK7CsEXOBZoyHdBwvkkXiQo567ml+rfqZaPc8WmnVGjGXZsNBeEpxWqLs34N6MJ5QjZjHs1bClo9KWNN2+6MIS6R9rLLk5UELdo2YWx2o6KKUSNuYzC4JHotwvyEWXqkRc+Em3QqvKKfV4J8JLVH2vuqDdw4ke658sbXnib5MhTkRnFmoKWX3YGUH/4XKR1jeXlN+GTASbKGRsyaLMRXmrFinpLwIp7WDzzYXDuB2DHjQeVGqsWvEXKotY3G1nNYOBLdnottX5Q/KPBC9UTkoBepkT5bISNkkyTZ7tw3xAJUaMWOWQNzBFkytLxXGZvdAANknfa/MetLcklV+1DX0O6pHrzFz6BSWnUnt8iDHPm/0ZBsL885O7WBIjTu1PuCn0mkirZQR5XBYbs/+GpL6F9FaDqtrojGJaHxX12u3cdGidBptI3/UiBmTxeK2/L9I9Jnqa7s0Mfos785X8JE6eSAnWH5Tpv5A+ZV0XKtcGadViROeivgbRC8hyBKhSeLhqfyrShPFVJ4rf1Q2D1ANY4ROTyaqqjZZB4Oxm36AoO/7lhfXoj/pCtjrYDtskN9JVttM5j+VKUPTE8mZAdsgEIxbenhmcDbbhCFYn3SFvs6O0im9BEvjjyqf6xqb3VFunJZZ9wmCS2KkQ3g5SwQ/0fhDRxDfJ2WcltuxH6WDdSIrfRiyd2a5trql5PqcciX60OVBMGawqB1shExvxIKnmyRzI9padOvyRV4H41b7OD8TFxttSsH6pOBCut4rO//BP6DdU/YnWozOVx1gd3WNb5h0IsUYntx1ThpZ6XsHhjrOBa/vnLAxEMxgQxdfsE6ElejoxpllODJ/xGIWf0jEyoy6mThB4xcCJtYO0kng2PoKPlan+H1nBzYTDB8x6cRVVHYdkdu9EZYShKhjnL7ELDC35M6XO3VKNzxbZ1ZHZ+7LIMzWsLsiVm6svv4g3L7AjnqQPtmhu6TEiQlAXcejuSCdDpd0PFf9V+W3fjvHuiBKEk2JoiaJhpMSSdwMeiRat8HvzN8/cdjGoWN1ip/B9zvZmll+Q7nqsZhz4YjVmxr3Pvoki88wdq3lz1CdkuO5iaUo/ocDm+QiLQ8m7+wXrB9+VybSssiGmQceEg7el3DYrlOH6mz02bbWZlbDkL8SjTk/pKAWUuOO1qexI+hxC9/0Cj5aJz2X3htldqc+q+T56do4LV+IiNJuatHE57a/AOhHRuRa16E6/QYl80aZ2w0L+xXX/ve562ovyA65ccTqT407Vp/48Yetr7NDdYqPAPiv8kPVnU8xLqSfla+PTTXug/XnuRORYuofVHYjrWOJKqUHgMwsojy3myEJHa6jQ+QXmUALaIxwWO7ErDvZMWDMGL9vytFJ8owbsr4/4WPQ/1BenfARk6SUaIhDcSvg5QK/eX0ao8PnlZ5TXW+dWT5/SF06mx2PEP458cg2OBkPSzgC25RmHFUOvavleAXPHf6lMOFfpAfKzbKjeY1rvhrpQ+D+8UHpmhcYGPNH1YuOmMJnHhpVVvOD9ZGGOVmzpTgttxQewPyZ1X2lnKzTKRTJSf2IBX4iVfOmMEUbi45+CxThtP3QFupigX4LDHkQ69e0UBcLHMgCi9MeyNBLM+kscHR5eTn+ETPp+rNomoEFljXtDAZ5al1clgdTG9EZ9Gdx2hkM8tS6uDjt1EZ0Bv1ZnHYGgzy1Li5OO7URnUF/FqedwSBPrYuL005tRGfQn8VpZzDIU+vi4rRTG9EZ9Cf6R+Al2cT+PJDf3fIrd37WuPfZY7n7lwNzDp257bCP/mpf42qg+OV90rPH9jFkiGwOzDl0hvRlTJ4qI60Gir/oxJw9Bj+HjwSfBJN6UGIwW96Dno+Vur859VXptDIIS4LQs8f4VwFRmYTz7kzWaUY7b0sAD34+1k6jFMRQq9MSNVt/XrSOdiZ663gn0fkbctRJMJLhf2mtAyd0vW8KxqyGLoThoOdj7du5Q8pX57TWOYmYLefUNU6x0vctZ4Y2dhqAmX/LutN9euHH6hS/O0PA6Tv4KT6u4X3L6pzW67D/v3jIa2ePaaC6PJ74KNUunl7Mwn3w87FGscbARqvbp9WAcuve9+yxgeYaJrYPZsmyJs9+Ptawno0jVeWWlwaS5cE75b+U3dljODMPaNDMmU8qmySZUc8nGIiZNTqnt3CoMv1rpSE6nQLJMhk4aINDMLpLB8dWZFnl8sAOYOucMWvdPloRho/FLH4c9mDnYxVhpEAQ1S0PAvtVNZt12IOej1WTwapcHsQY2DqAO7uqipNghPk/9ZElUCuJftQiRFxIlr5XdYrPpu79D9MyZ4/mNhCkAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\frac{a_{0} a_{3}^{2} + a_{1}^{2} - a_{1} a_{2} a_{3}}{a_{1} - a_{2} a_{3}}$" ], "text/plain": [ " 2 2 \n", "a₀⋅a₃ + a₁ - a₁⋅a₂⋅a₃\n", "───────────────────────\n", " a₁ - a₂⋅a₃ " ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "c1 = sp.factor(sp.expand(c1))\n", "c1" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADoAAAAVCAYAAAAXQf3LAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADCUlEQVRYCdWX0XEaMRCGiccFMHYHpAMSVxDTAaGDOB3gR3jzOB0kriCTdEBSQRI6gA6M6YB8n3y6CCEyGBgGdkan0+5K2n93tadrLBaLRtoGg0ErHZ/iewnDWSOh4XDYZ9hOWKf62qqw1Pa/MmISgi7dFf1tYBzxAxvvK/Me6V/T7uFNU5MZG7Q5/Rf5ASiDJu8/6d/IPGbCxj/Yd0f/XTvptV1eh/ccrPx38OcxdfXQZ9pREwbfYGCTPoDUWEHQOS7ZLy9EPwLtMSGEGMEx03uMGxcM/AXvGgxGt6YKk9iaZzw8m0shrzWP7+Uak2YFs6L9ynNS1jvn0aH9yKXpGGe0GJsCTrIAmCpd+J/oD0JGZYONLgo6YuuYum9pk4JCYLGBXvJQ3/JuE1zI/Q03D+vs4RFBeCbXUckZYmsZUYWldGhUQL4hF2BMD4YhslN4S5syTsv+JeNDf6ouNS4jsbWMqJ5aMjhR1HCrXF6ojHJd+dRHx4r4KDiaUR/Rj5TtiYrBqNaO0fZY5WSAmgL9H/UQLp1fjDcDPLM5CJ1S66Lnu5VQ3Z2JdWIw3D+nyEuzLuqEQApUT0XFKGywsDxbDkjwylNQglE332gOr03bF7lnyXExorVNyYbaNROoxpUmR93ceKv0WCFgrbwRZNRPe50YjQh89N14W7JeWDxz8kY3Zm0dm5P7TwWq0Ve5tJq05EF4fnON0O9Kf+Xala3jJjWwCuQTvVX8xcQ8a8WssiPMr9Y0yz6sWTA4QaBfaRpfIm8iXvT7NM+g0TWiF/Lo47Wr5EnEy+nMHPVcwwJXO0DFF5CG62Av8trwQPM+G7KssI6FcxT+Rfl/m9Dau/x7Mv8pX4PxgrbyfwuvS2vust8mc92bNlHXiEpG62N42/5xx1S9FwgPh08QfX7GlZsl67LgeYH9PP2Oi+0ZKJua+/6sWli2Iub67fSSEFPKtF85N8hN2dL3bqt9102qsIgp3AHOE0UNs6p5BrciFt3kJnSD3iHuyNaPf1ma5nqV0/2Ud4rv4OiLJbX9L06l7422b+XdAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\left( a_{0}, \\ 0\\right)$" ], "text/plain": [ "(a₀, 0)" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d1 = (c1*b2 - b1*c2) / c1\n", "d2 = (c1*b3 - b1*c3) / c1\n", "d1,d2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "再評価" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAOcAAAB/CAYAAAAUwdUOAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAUNUlEQVR4Ae2d3ZHcNhaFRyo/b8lS1QYwm4F/ItA4A3s3AtkZyKUn+01lZWApAq+Vgb0RyHYG8r5vleUpJ6A9HwbggBg2CZBAk+y+qEKTBEHg4gAHF/997/379xdmxhH49ttvP5KPH2U/1v31uG97awjUQeCDOsGcXigi4QOl6pXsO9lPZC9lzRgCR0Pg3jfffINW+PVAjK9VSL848O5snIXBUyX2O9kPTXOeTbY3T6jK0ltFMljp6929WHO+kEc8x+b3+MHuDQFDoCoCVPip+UwOn+MYk/N7sdXImEJlz4ZAIwTEt5dp0HLD6Q45U3/2bAisgoAKKE09tArK4g/Z17Kfy53W3SbMMWS8v4mUmhCGgEdAhf5Kt4yBfK17LIT8XvY73TNIt7o5loxGztWz2gQICHjyMWUFKeMuFve/y231aaxjyhj3OQNGdjUE1kKApuwDESDti6FNadp2xpPkmXcII55PjkDgbBmRTfKEQR+a54/0/LWXefJi5JyEyDwcEYF/Kq6f4/hUmGnKQr6fYnfd08z9KrjpnqYvzeF/BLdG12wZJdOXkuEPXV1fWdcr2Z9kGZGdNNasnYTIPBwDARVYSIhNSQgZLvS+R1o5fSk3NGowaKhLuTFv38Qo7FIZkamT26cBggZNPyqnac5ReOzlCgjEfU2iR8v8xo0KNVMMv+mKH7TmL7JrmEkZvVCQOfV7LTcqkNTdf3J7Mc15i8XY3SP/8uGYJ3s3HwERjkKLlum0iicjBTmQ8DNPzAtdX8ryTTCQlUEjR+TgWPPq48uVEWIOGZaDZpUj05xD8Hk3ZQYjh5jQfPpRbtR49BvSQQvn0X4WIcBS0VfCluWSVIg/yKI56V/iRr/yjtE7CIxW/fjOy/oOs2SMxICYh4gbeeuvEOq9sAfXjDr7dcXHLAciGZpwCPMhNyeavkHT0rc7yo6hAhljre5k9T8Qc7JJi19r1nrE7LI/BDwxmROluXvNs3dbPTGSAwJC0K6ZHgmV1fS2Zm2EmN3uBwFPQpq5kJNmLYZ+Z/Y8ovui7c9zBU+XKAxocc9OryzNaeRsmzkWejsEmNOkici1Myr4EHQTRrK8kKW/TLObRQjMwT7JFc7ImYuU+dsUAirwH25KoAPCSM7Zmtz6nAdANWdDYG0EjJxr54DFbwgcQMDIeQAYczYE1kbAyLl2Dlj8hsABBIycB4AxZ0NgbQSMnGvngMVvCBxAwKZSDgBjzoZAKQJ+PpPPwpwmc5xZCw6G4jLNOYSKuRkChQiIhCyGeMO8piybq5nfZIPEZWFQnXcjZweF3RgC8xAQATnxgONVuqNUdM+6Wp4Hd9LkxGTkzEHJ/BgC4wiwa2ZoMfsbuXPyAcsMi42Rsxgy+8AQuIMAC9rZRJ2a0N/kfbGxAaEIMtVwl3pkkTKg0qmnWbKpw4wlz8mbPeVDplbMOvkgzVjTnB4RgUztRqeeDn3o1NNfYMRtVrPEB22XAgR2mA+BePQxD5lZ5cc0p+D05Ms6zFh+0a4QmWYM95/KPpf7UJ9Dr8zkIlCSD4Tp/XM631e6P8YRJblJSf2FM6hS99FnI+cNPDRlsw4zlj/X7FVhcGcI6crZNv+R3cUWJsm5ZZOdD8KdDdZUkphZmunm08W/Q33NEGjQqnSRio01a28go/btzhfFSZlPhqMZ03NU2d3+g2ww1IpjGRT82XUagex8UP5wRCbziWHQZTr0Bj4kQ2jODlUQwW2WjGevOT0JATElIQXlQu9T0qbNV059o8Y3swCB0nxYEFWLT3vHZUYRBM3ZK0PR+9HbsydnhE5aux06zNh9osJEc/ZfsvyvqR2TGQG58LYoHxbGVetzxiuGKmj6wWj4oF2L4jv7Zq0HrlfzyQ1tSJ/mzmHGAV35oUn1WJaT3yCqmQUIzM2HBVFW+1SyUzm/05Vy44zuaY3R+so+M+jmy9tfNOff/GO43r49nztWeMw5zJjjGFlD+auuP8umTd7zQbBOSmflQ52oF4eClmTajdF7BoC4Pp5RJv6u75yxZq1gEIA0OygYqem5yR+14X9lY9BDk+UTuRs5UwQLnnPzoSDIo3n1slc9+Y9m7V8+BeF6tATtLSKfAe8kd9wvutIzBP333tJj8m4Sgf8FqUxzBiTyr2jTZyJqmLui+XKUvwLIF/H0fQp/prnQVFSOnPTOgEz3X5i6370xchZmoQoBTVdrvhbiVtu78oHWy+wzYWvL0yK8sx+tbQGqhWkI1EDAyFkDRQvDEGiAgJGzAagWpCFQAwEjZw0ULQxDoAECRs4JUDXwMPsMmImg7bUhMIqAkXMUHvfyctqL+TAE6iNwUlMp0nKs4Hkm+1aWe7ZzsTA9XjQgp7qmRrw1wqibKgttbQROhpy+cHPMCAvRf5dl4TrPTZulNeKtEcbaBcnid8tAw84UFqjwR7mLDpWGnGgVVlqwLG3PBmBYfB5rSRamx88XeqaZCmG/0H1YF7sk3ZPxKp4rRYAmJ24y7Ue5xXv8csKgsmH9LoZF1rQIbDGEg2P9H+UFioDjatzZtbqS32yIcMqiQELKhVujCzlDYcWxRmEtkGPYqxJEQQy10LCnG1fOjgnkY3tOvFAdQsQEuPDhkl7sHaP3kDZ994nc043YkCvs4ZyMV2Hi3x1joiuZ9qfsPdlgcsIADw4eY38gW5NeyUJSMysjoPwYPFRa7uFQafYG5xrKLeXwJeTcnKEASqjsBMk/BR4biEqa+B5S4H6hK1qUcCncg8SX+51dBXLjSP1BWeSeFa/ijEkE+a9lnSkIw2l6+ed7t8nbB2GX9RFAKQy1YjhU+il5LNvlea6493M9btmfT3iXeD2jeamBICtaqYnJjVf+4kqDiqHT8AVhULlATNL1TjZsBNetmZURCHmSihHynffF5oPiL7b7AQWeZh9tfwovi6LReG89AXTbxGTHKzlorrimaSLJZBgQU5bMfsm9rqTrQ9muUkrC3O2jTx+VGOllcIXm4SYP95asDyTblHk45WHo/cmQUyDRv+z1MYcSXNstN175C31GNCBNHY45cWYqDL2nADA9FPqpOQXiJvCd/SqtaBnO5GEbntM8utLnv9KVimlrlVEg3phcs/LrZMiZUwaVsaG5C6DsyXwj60bXRr4PTZMRL+OvFAfanLghJZ4JsyMnDmNG30BoBr/cwIP8firLKOBYgRgLcpPvlB4Kcdbh3iRA/sPYAdr1kZ63uoWM+fZic27kdANCQqmEGHcGiUpRVqGJB4RKP3f+FUYYHZ71/U4+gmwMnqRpRZv2KlH5oaLqNlfrGc16cPCuYfrpQh0yQatSeRSbzZFTAL8vToV9cCHcQpN3z2gweNfrmihdaFP62Ol0FkTm9ENn5I85bvdntboubu2EcKeuiotWDd6Gmq7BbZY8WyTnKRSyqTy19wkCKuAUZGxKQjfarvcdaXUPWfGbFvprudF9SN3l1NQgGzKlJmjOTvbUw9jz5sg5Jqy9OwsEUmIx4k535EKkZPEF9xBzyNDEDIQYet/KzQ6VboWshbs+AiIeWq+ngTwZ0YRhTndqKRzEPETcZomUnHaodDN0LeCtIMB8b87h3hB5yEDMVPMO+WvhxqBf9UOl//KShmsLwXcTpmpBMviZ7FG3ne0GoIaCeu0JQVPTc5M/dh1BUPp5rskbfZA+R6/a3Xp5Fo/sS8Lu3Nr77cTdX8gCGGIyJ8mOD5oqNLOeyprZHgLPJdJVEEv5xf1rXdfSnEGUalcbEOpDyfD85Laz/if2tAYCIuELWZqR5BnziGzFe7KGLK3iNHL2kWXYPm5CURv3hsFVGBigsH2VfdxWeVJebHVFUBU8rFnrYVRG06TFxs0ihvGZ2GbVCu8w1NS/6JlmL3Nyr2TNGALVETByekhFtmvdYp3RMxoSzQlZ3US4e3FzggJ7QhmMsH2VHhS71EfAmrV9TGnSjm47g8SemBCXSe8wB9cPyZ4MgYUIGDkjAEU6+pe9Pmb02t1CTFm06cnvq0zTbs/HRcCatQV4i5T0O5n/DCb0Q8OzXQ2BaghsUnOKBDQZKfj064ZOq6sGQBrQWNx6R5P25PdVppjY8zoIbJKcgmLqtLqWaI3GLXKmew1bymJhnzECW23WxpuT0Z7dKOoR8mrNuI+QPItiLwhATgY3WBPIyOMmjLRTPNfIvGK8MKCpjGvG3TRhFvheEGBA0q3RhZxoJk6Feyi7KSOihNPqRkdQWwi9Ztwt0mNh7gYBxlso9xeQc5NG5EBjhhPOsxafe0ItTs+cuBdHagEYAgkCmySnyMHOEAj5p+45Uyh3Kw6tgEVmQdyL4rWPDYEUgeLRWhVepjgW7XecCkPv40GZVOZFz2vEPRVnToJqhEE8tcLJkdn8LEOgSHP6jF2037FGGHOTvEbcNeKsEQaY1QpnLv72XRkCpZqTfuDofkcVAJqWHMTEiCv36QbYyTD0TSuzRtxZcXrcGAgY+mvCyTD0PQMJUws3csKxLXGtSl9huKXknNzvqPg5ieyxCoubm9QVTRs3U3PCmEyGwqUgp33MGn/XdzBuxUnBpYBPmap/TajIcjAbXTzhBc4Jh/SFgbjN/NWgsA+4h43Vi/6YdioD57yvLWM2ORUxtTI2noNkvyOFAvdgWBjuiOkdeGY/JEvfJsPw/iZrb/m7M0gkt4MnfufGjczyC+nvaDG5cz4Nac4yuXH6cAf/mjA3DAkUV4DIH+fBRUE4m/urQclOBf9cV3fqu0/LnD+mzcq3OZ5ayHg/VxBFTmZ3Ga5nCERTCrJSI2MeyqaLGXh2Gi4zDMKhlqy6oTk3bp8u0uZkRpi5JjfOsfBzw5C/uNIEv97CjYJwNrUlTnIP/jGt0gdRqUBXN61kzCanRyDsdwQwCm/4m70Ln/kQEYLGhueO1LqfCoNvqb1bbGiejNvH62poBKlgJuPMiCM7DMlPgaVZOrRwYzIcfee2xOnKGmJIjoZ6kCFjKy/ITIslNW/kcLWybEGmJjJmN2uRQkCQ4UOZ7oTUe2rduAbHnWMMO7epMPhAfprU3jlxE39NUyPO3DDkDzJBTPDr/c0gaZLbVP5Bwq391SCts6HNBqFM8b5mZargik0TGYvImSkyWu+p/AIeWpNapcjo+7kbmkOGFcW3tmell2Y0GQxeuX9N2BNbYdAvI5xZfzNIYAoDUm9mS5xkydHYYLaaaSljdXJKWAiS/Rd7Kao+sbNqb317Z5AoDX+Lz5KbZht2CW7xgNDsZEqWIS01O7yFHwbixd2iNMgcAqff1HxuJmN1ci5NtQrHqrW34kf7LNJiSzGw74sQeFTkex3Ps2TMJqcK7Zr/m/m54l8DVprnFyvFvUZ6R+MUDsf+e0YGGA+ZoLGY91zTNJOxhJzHzpg1Abe4N4CAKgNaUUgy1HQNbquOM7SUsXQqZQNZZiKcGQKMMDNtl5qgOQ/OHqQfNHxuIqORs2GOWdBVEGA5aPj7izhABsCYCx8bLIr9t7xvIqORs2WWWdiLERD5GD1+pyvrfJ3RPU1aVqVt4o+LWsmY3ee8gcV+DYFVEEBL1vhj2pbCV5dxd+T0teYzoXzUP7etFW+tcFqWsq2FLcxoum56DruFjLtq1vqCzUqYo/65ba14a4WzNfKYPG0Q2JvmZO3o6GZvYBIJGN27s+WLdzPNZLyK80ph0xci7kOn1OeEwyKIMABCU4mKiNVDZs4Mgb2Rk0GAeK0uhOgNpasgU7ghCPaO8e8hyZQp2jCtwE56s/MUWPa+PgK7IadIhVbCxpPOvc3e8sOkNVpmcOMy8Pn31TdMK2i0XDBUDPSTOqN4s+TXB5vb7Nwlwm6OisD9o8a2IDIVbgp7V+D1jIZEc0JWNGoTkxuv/MWVBpo51vAXBeFQwUBu0sbSsF9kzZwhArshp88bCjz7FQ9t9m6VhdnxSrZT2+zcClMLdwKB3TRrSYcKPv3LXh9zIn1VXufGK39ozFPb7FwFQwukHIFdkTMneSJIaO4+lP9ZG5dz4kn9KN6T2+ycptGej4vAKZLTDQgJxtkbl+dkgcgZDwjNCcJ9o3C2tNl5djrsw+UI7K3PuTzFFoIhsBMEjJw7ySgT8/wQMHKeX55bineCwMn1OXeCu4lZiID64mFVF8eSsDzy5P+OwTRnYSEx78dHwI+Ev9GVaSoG+jjMnL/euDy+NMMxtpDRyDmMtbluBAEVevs7ho3khYlhCKQIsDpraFfOyf8dg2nOtCjY89YQuJJArDFOTVjLzPu1TRMZbUAoylbfh2HggYxn4IH/4ODM3KMuaFCcZoSAcGcnz5RhJdhqpqWMpjl9tgpkaj+W4DHoEAYeWMTOqGBOIfEh2aUiAoF43W6kgbDXzptmMprmVG578nG8IaQMzSXKAff8S1qvcOg5HtZ/pGdGD82sg8CjdaItinWWjKY5bzCGbA9EsnRdK9q09/dy8sPo4R8QUpbmLkP6P+lqpj4CQ33NEEvQWHQ/1jTNZDRy3mQrm7V7W9FEOJpLl7Ip8SBy51f+uL/SFb9mKiIgTEOLZajpGtzilk7F2POCainj2ZNT4JLJ2JSE7nQFvY+JCAHxmxaIa7l9JGumPgLgP1TxBc3Z5U/9qLNDbCKj9Tlv8U8JxzlDbn5NBOW0ce4h5pChaRMKy9B7c5uPAGMBoY8fh8IWvS39HUN1GU1z3jSdejWfJyOaMJzf85ncUvLGBQViHiJu7M/uCxEQ7vZ3DIWYnZp3VqG8UkF4qisjaz/IojmZRsGNKRUMzdchAzHHyDv0jbnlI4CWtL9jyMfrdHyKgJAOgqam5yZ/YVqFPpBr8kYfpM/RK7tdgoDPn7P7O4a4z/lWIKQYvpZbr4CmHs7w+bnSzBSLI6Pw4R6cTHOeYWFYkmSVGf7vZ2iwywULOSlUh2olK3AOptsfAfpCliYWAwBhb+GTWx92ZwhkIzA0iNR9/H//mPOMv2O1gAAAAABJRU5ErkJggg==\n", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}1 & a_{2} & a_{0}\\\\a_{3} & a_{1} & 0\\\\\\frac{- a_{1} + a_{2} a_{3}}{a_{3}} & a_{0} & 0\\\\\\frac{a_{0} a_{3}^{2} + a_{1}^{2} - a_{1} a_{2} a_{3}}{a_{1} - a_{2} a_{3}} & 0 & 0\\\\a_{0} & 0 & 0\\end{matrix}\\right]$" ], "text/plain": [ "⎡ 1 a₂ a₀⎤\n", "⎢ ⎥\n", "⎢ a₃ a₁ 0 ⎥\n", "⎢ ⎥\n", "⎢ -a₁ + a₂⋅a₃ ⎥\n", "⎢ ─────────── a₀ 0 ⎥\n", "⎢ a₃ ⎥\n", "⎢ ⎥\n", "⎢ 2 2 ⎥\n", "⎢a₀⋅a₃ + a₁ - a₁⋅a₂⋅a₃ ⎥\n", "⎢─────────────────────── 0 0 ⎥\n", "⎢ a₁ - a₂⋅a₃ ⎥\n", "⎢ ⎥\n", "⎣ a₀ 0 0 ⎦" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Routh = sp.Matrix([\n", " [1, a2, a0], \n", " [a3, a1, 0], \n", " [b1, b2, b3], \n", " [c1, c2, 0], \n", " [d1, d2, 0]\n", "]) \n", "Routh" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "係数を代入して確認" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [], "source": [ "values=[(a3,2), (a2,3), (a1,4), (a0, 5)]" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}1 & 3 & 5\\\\2 & 4 & 0\\\\1 & 5 & 0\\\\-6 & 0 & 0\\\\5 & 0 & 0\\end{matrix}\\right]$" ], "text/plain": [ "⎡1 3 5⎤\n", "⎢ ⎥\n", "⎢2 4 0⎥\n", "⎢ ⎥\n", "⎢1 5 0⎥\n", "⎢ ⎥\n", "⎢-6 0 0⎥\n", "⎢ ⎥\n", "⎣5 0 0⎦" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Routh.subs(values)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "最左列をみると,2回符号が変わっているので,不安定(不安定極を二つもつ)ことがわかる." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (2) Hurwitzの方法" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "H4 = sp.Matrix([[a1, a3, 0, 0],[a0, a2, 1, 0],[0, a1, a3, 0], [0, a0, a2, 1]])\n", "H3 = H4[:3,:3]\n", "H2 = H4[:2,:2]\n", "H1 = H4[:1,:1]" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\left[\\begin{matrix}a_{1}\\end{matrix}\\right], \\ \\left[\\begin{matrix}a_{1} & a_{3}\\\\a_{0} & a_{2}\\end{matrix}\\right], \\ \\left[\\begin{matrix}a_{1} & a_{3} & 0\\\\a_{0} & a_{2} & 1\\\\0 & a_{1} & a_{3}\\end{matrix}\\right], \\ \\left[\\begin{matrix}a_{1} & a_{3} & 0 & 0\\\\a_{0} & a_{2} & 1 & 0\\\\0 & a_{1} & a_{3} & 0\\\\0 & a_{0} & a_{2} & 1\\end{matrix}\\right]\\right)$" ], "text/plain": [ "⎛ ⎡a₁ a₃ 0 0⎤⎞\n", "⎜ ⎡a₁ a₃ 0 ⎤ ⎢ ⎥⎟\n", "⎜ ⎡a₁ a₃⎤ ⎢ ⎥ ⎢a₀ a₂ 1 0⎥⎟\n", "⎜[a₁], ⎢ ⎥, ⎢a₀ a₂ 1 ⎥, ⎢ ⎥⎟\n", "⎜ ⎣a₀ a₂⎦ ⎢ ⎥ ⎢0 a₁ a₃ 0⎥⎟\n", "⎜ ⎣0 a₁ a₃⎦ ⎢ ⎥⎟\n", "⎝ ⎣0 a₀ a₂ 1⎦⎠" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "H1, H2, H3, H4" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( a_{1}, \\ - a_{0} a_{3} + a_{1} a_{2}, \\ - a_{0} a_{3}^{2} - a_{1}^{2} + a_{1} a_{2} a_{3}, \\ - a_{0} a_{3}^{2} - a_{1}^{2} + a_{1} a_{2} a_{3}\\right)$" ], "text/plain": [ "⎛ 2 2 2 2 ⎞\n", "⎝a₁, -a₀⋅a₃ + a₁⋅a₂, - a₀⋅a₃ - a₁ + a₁⋅a₂⋅a₃, - a₀⋅a₃ - a₁ + a₁⋅a₂⋅a₃⎠" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sp.det(H1), sp.det(H2), sp.det(H3), sp.det(H4)" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAADUAAABkCAYAAAAmNHgiAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAESklEQVR4Ae1cUW4TMRDdIr5RFSQOsL1BCzcIN6DiBvQG8Jn8wg0KJ0DlBi0nQOUG7QH4KBUn4L3Fkzj2brsbewYnsiXL9qxjz5sZj+3JJgeLxeK4aZpr5L70bblcnvY9+J808HSD+ds+HvDs4Kn34BPq7OynW79RUP1jDy+vQXtDug/qHChLBbGBAXx+3iCgARpJHagnrFklTHyMfK49nykogLlAnu0NKGjovTYYGd9EUzQ7THjvssytVpqAAvdvASxa3Fqo1EE5s1N3Dr6AVEEBUIvJ7lGabhWqoADozNLsRFtqoADmHSYxNTtVUM7sDq3NTkD5xySh5Si5ll4BFDdbP9G1t45+i/KD/zBXXQUUmL0Cg8wbCfTfIFyhVD35q62pDTTrxiGqzKpJRVMhx9AMHQZNkmmONs3yB0ped7InK1Bn2Tl/YEBr83uAlXyPKqh8stQdqWpKV775Rq+ayidL3ZGqpnTlm2/0vdSU6jEJZ7sW8pfrxUvU79gG/Wc+vcQjqYFygBjKZoy7S6gzBn5NGnJ0NXHdkgtN8yOAjYMsgFBrjP+Fl8dkIP4AmqDmmOgGQML7EzXEqz5NUyVpgiLzvLJTM30pBNvXZyua5poaurIzTtEArJqz0NRUJGUA6QIveCAeMeqTg2AKCgzTQfArV5VrvAiEoJ65hpTyLGsJIIxTcI0NmWXqfC9kABNNAQijtTOUqz1LGNAoCeqPG1jKrPMACL+HPfI1hDoDmm3WiZrml4ynqikwTsfASG3oGAj0TpjIXWq6dGqCjoER2fCLAsb+1JyFGiiAuUQmMK6nMKntUZxIDRQ0cRQisWqrrikrEOE8FVQokVLbVVOlaibka281xXcceO1W2+FDSSq1eSntwgfUVIvMHX+GvMtpDua7k8vemt8ua6eXd7VjUu9sIOL4xJM7D7onqEdBGdC4HORUv1UA1AQUGGXk6AsynREZJeNRcoCSA6Ama4oaQT5Fpnf6GqFZE7IEQE1ArXl+tEYPlhwALQ1UlgCoyZp6VD+uA010oC+dS4Pnoy6XpWkqwgQgBNQii0eM+oSE4kGB4ckB0FHmB2nRJX9HnhLUp7cbZS6hpKWNz28VAB0LipvkiUxmUQLQ1gHQIs0PgJICoMWBAiA6hqQA6Cjzy2xuz914M5Q061UCIHq55ACoGSgwTGaZ5v+K5gI0XlAvUcpPJrIEQC1BDW2sDmO3uWYJgBa3plYIEyoVVILwTD9aNWUq7oTJqqYShGf60aopU3EnTLaXmjI7Jongcc7jKbwGMyGESW9zmpgftFODmRBCGAuZ9DaniaZkPY0oazBzSEilaSri03nLFg9qMDOSTkhwC7cGM0PBTG1DkDWY6QutOEfhHEMNZvpaYt3sQAsN1GBmKP0p7eLW1BTmh/pWUEOSKY1eNVWaRob48V063zQJ++3cPzESAEHJm5khILZN/5mqj4EBGt9hGkx/AbKselUQXkMvAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}4\\\\2\\\\-12\\\\-12\\end{matrix}\\right]$" ], "text/plain": [ "⎡ 4 ⎤\n", "⎢ ⎥\n", "⎢ 2 ⎥\n", "⎢ ⎥\n", "⎢-12⎥\n", "⎢ ⎥\n", "⎣-12⎦" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sp.Matrix([sp.det(H1), sp.det(H2), sp.det(H3), sp.det(H4)]).subs(values)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (3) 確認" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$$\\frac{1}{s^4 + 2 s^3 + 3 s^2 + 4 s + 5}$$" ], "text/plain": [ "TransferFunction(array([1]), array([1, 2, 3, 4, 5]))" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "P = tf([1],[1,2,3,4,5])\n", "P" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1.28781548+0.85789676j, -1.28781548-0.85789676j,\n", " 0.28781548+1.41609308j, 0.28781548-1.41609308j])" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pole(P)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 【2】 Lyapunovの方法による安定判別" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "A = [[-2. 1.]\n", " [ 2. -3.]]\n", "\n", "B = [[0.]\n", " [1.]]\n", "\n", "C = [[1. 0.]]\n", "\n", "D = [[0.]]\n", "\n" ] } ], "source": [ "A = np.matrix([[-2, 1],[2, -3]])\n", "B = np.matrix([[0],[1]])\n", "C = np.matrix([1, 0])\n", "D = np.matrix([0])\n", "sys = ss(A, B, C, D)\n", "print(sys)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1., 0.],\n", " [0., 1.]])" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Q = np.eye(A.shape[0])\n", "Q" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "matrix([[17., 7.],\n", " [ 7., 9.]])" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#関数の仕様上,A^Tを代入していることに注意\n", "P = lyap(np.transpose(A),Q)\n", "P*40" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "matrix([[-1.00000000e+00, 5.55111512e-17],\n", " [ 5.55111512e-17, -1.00000000e+00]])" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "P*A + np.transpose(A)*P" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-1., -4.])" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "l, v = np.linalg.eig(A)\n", "l" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "※数式処理による理論解" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left[\\begin{matrix}- 4 p + 4 q + 1.0 & p - 5 q + 2 r\\\\p - 5 q + 2 r & 2 q - 6 r + 1.0\\end{matrix}\\right]$" ], "text/plain": [ "⎡-4⋅p + 4⋅q + 1.0 p - 5⋅q + 2⋅r ⎤\n", "⎢ ⎥\n", "⎣ p - 5⋅q + 2⋅r 2⋅q - 6⋅r + 1.0⎦" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy\n", "sympy.init_printing()\n", "sympy.var('p, q, r')\n", "Asym=sympy.Matrix(A)\n", "Psym=sympy.Matrix([[p, q],[q, r]])\n", "Qsym=sympy.Matrix(Q)\n", "Lyap = Psym*Asym + Asym.transpose()*Psym + Qsym\n", "Lyap" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left\\{ p : 0.425, \\ q : 0.175, \\ r : 0.225\\right\\}$" ], "text/plain": [ "{p: 0.425, q: 0.175, r: 0.225}" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq1 = sympy.Eq(Lyap[0,0], 0)\n", "eq2 = sympy.Eq(Lyap[0,1], 0)\n", "eq3 = sympy.Eq(Lyap[1,1], 0)\n", "sympy.solve([eq1, eq2, eq3], [p, q, r])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 【3】 フィードバック系の内部安定性と極零相殺" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "数式処理による理論解析" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\frac{s^{2} - 3 s + 2}{s^{2} + 2 s + 1}, \\ \\frac{s + 1}{s^{2} - 4}\\right)$" ], "text/plain": [ "⎛ 2 ⎞\n", "⎜s - 3⋅s + 2 s + 1 ⎟\n", "⎜────────────, ──────⎟\n", "⎜ 2 2 ⎟\n", "⎝s + 2⋅s + 1 s - 4⎠" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s=sp.symbols('s')\n", "K=(s**2-3*s+2)/(s**2+2*s+1)\n", "P=(s+1)/(s**2-4)\n", "K,P" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left( \\frac{\\left(s - 2\\right) \\left(s - 1\\right)}{\\left(s + 1\\right)^{2}}, \\ \\frac{s + 1}{\\left(s - 2\\right) \\left(s + 2\\right)}\\right)$" ], "text/plain": [ "⎛(s - 2)⋅(s - 1) s + 1 ⎞\n", "⎜───────────────, ───────────────⎟\n", "⎜ 2 (s - 2)⋅(s + 2)⎟\n", "⎝ (s + 1) ⎠" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K=sp.factor(K)\n", "P=sp.factor(P)\n", "K,P" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGUAAAAtCAYAAAC3d6XOAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAEHElEQVR4Ae2b4VHcMBCF75gUEEgHpIOQdHDpACYVAB3A5Nfdvwx0ECiBEiAVJKED6CAJHZD3+SSPfFg+63LnFUGaEdLJkvV2n3clW8v48fFxVNJcA7PZ7J1qV8p7qj9Y6eWV1cS5zCvlvxaWS+Xfyu+Vd5VNUyFlbhEHsCCCTlRgLaZpy3T2MnmrBgoprWqxbTR3X3IZZ1LBL6eGtypP1Wa2yNrSMZ/dlBQp/9qRcAsc/Z6ogKRjfr/UZOa+RAC7nInKihBHwKnKny+VDC+3qaUAQqRgLbwb3Kj+kbZY0nW2r9+UKfumA40Lie87zqzf2PLlUcrCVbEN9elcbViLSdLcYAHTtupm65qZ+0LrEKA8VhULuVE+0e8UK9CQ/y+ZkCLFnynfeXWqvtR1+b4voTQhRYpll/U1VLCI2dfvC5VmbkPzv3GYdkJsQ9dN1hQpnk8ZEAMB3l09qP1iaAUwn+Zlo0ECE3jYGNwrX1tgMiFFwpbUoQEr99UBqVwqpGT4DBRSCikZaiBDSMVSCikZaiBDSMVSCikZaiBDSOPpdFpijDIjprzRZ0YIcMqaUkjJUAMZQko6DtYXU76gfnZy7LryUO187S1pTRpIIkVzcjhVR5qozpkIgQ6EBpW0Jg2krilHIoIzB584z95Vm3moJ4DAodw4PPNAcysd1juV/jyphphqKVjJj3p0fhUOq7KNXHEELA0mTyJFN108GYSke7WvpAiNw+qwtMX7JtOte4RRMcnjUwasilvjWHuXBpOnuq8auybAZXGuvlc3plcw3Sfmm3obhwWByUOkteCOAV2JFCmBnRfriek/1wRCfRKmf7a24H6m1SfuS8Kh7GjAtSOEeK0qmtH9Hqkk0GDwpHlxW70Wd/XtlG1w8JEJG6QIdGfAta5jISgAUvyOi3XFJKrR4SEKZukDoT6dskX0Y9Jck+IEnKgMF22U7cNvAMg7Cf60EYStMfW7C50GTMeae+kD0VO2AWF3T1WT4rtJgGjAta5t+34ppcZhXZOWMTu06Xobqbdqr3YqLeMYc6T2Xm7Lj9eYqGy+T1iq/9pxh/eP1RtfiQUCnxtuLTcacK352L2xJT6PAWxrV3/c6P7iOP3GgtmiPyFTbWuTTfdaCXcoi+4RDSZvWIo64gpYL3iqqRNw/UV5qK1miLurDikfhCt0rfRnnYNk2iGndm2u/hxkG1WkCDBPEU9e9Q1LJRHwBF1neQDm8QljI6n9jxrAXVuK6s9KNgTaclJhGQ3/LGFyCLh28HoXbS91ucoWDSavLEUiHyqz82LxRDASW822BXh+NaO/wskDhUsjIQfu67tK1qqsZHPYKpz8UbpSWyOY3LsvtsHhVrjq/Vz+SKjow6NrWckmPLVrjenXu6/Y9U23s4HIbRPRR+aN4v4LRxyThL7lJfoAAAAASUVORK5CYII=\n", "text/latex": [ "$\\displaystyle \\frac{s - 1}{s^{2} + 4 s + 1}$" ], "text/plain": [ " s - 1 \n", "────────────\n", " 2 \n", "s + 4⋅s + 1" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gyr=sp.factor(P*K/(1+P*K))\n", "Gyr" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{\\left(s + 1\\right)^{2}}{\\left(s - 2\\right) \\left(s^{2} + 4 s + 1\\right)}$" ], "text/plain": [ " 2 \n", " (s + 1) \n", "──────────────────────\n", " ⎛ 2 ⎞\n", "(s - 2)⋅⎝s + 4⋅s + 1⎠" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gyd=sp.factor(P/(1+P*K))\n", "Gyd" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{\\left(s - 2\\right) \\left(s - 1\\right) \\left(s + 2\\right)}{\\left(s + 1\\right) \\left(s^{2} + 4 s + 1\\right)}$" ], "text/plain": [ "(s - 2)⋅(s - 1)⋅(s + 2)\n", "───────────────────────\n", " ⎛ 2 ⎞\n", " (s + 1)⋅⎝s + 4⋅s + 1⎠" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gur=sp.factor(K/(1+P*K))\n", "Gur" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left(s - 2\\right) \\left(s + 1\\right) \\left(s^{2} + 4 s + 1\\right)$" ], "text/plain": [ " ⎛ 2 ⎞\n", "(s - 2)⋅(s + 1)⋅⎝s + 4⋅s + 1⎠" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "phi_FB=sp.factor(sp.denom(P)*sp.denom(K) + sp.numer(P)*sp.numer(K))\n", "phi_FB" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 【4】 $P(s)$が安定な場合のフィードバック制御系解析\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (1) $r$から$y$までの伝達関数$G(s)$" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{1}{0.1 s^{3} + 1.2 s^{2} + 2.1 s + 1}$" ], "text/plain": [ " 1 \n", "───────────────────────────\n", " 3 2 \n", "0.1⋅s + 1.2⋅s + 2.1⋅s + 1" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import sympy as sp\n", "sp.init_printing()\n", "s=sp.Symbol('s')\n", "Psym= sp.expand( 1 / ((s+1)**2 * (0.1*s+1)) )\n", "Psym" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA7ElEQVQoFX2PPQ6CUBCEnz8HMPEGegN/egq9gfEKdpZSQmf0Bp5BO0spKCyBI9jaGUo7/OblPQLGuMkwO8vsMnSqqjJxHA+MMWcwAy/0GG6XjB5RFOXg5HWTu+01M0HfvmZW1kY+t3CG5K+Rl0tQslD+MvYbQ12sr7GwQs+BfjS0RoYSyncCxpnUSueCz1jnw2R7+IJBBx4gsRdpbD5YpgyTjQAX6CkwzYva1HCDQTFa1UPp/AFsMRzTNH3T3+FrEARPelu6uHa9/+PM6ZGY5Z1YRuUrGJQaNEpRVEM9ZNSn9xIqtxDSKquu2XcfYblg59TWTbsAAAAASUVORK5CYII=\n", "text/latex": [ "$\\displaystyle k$" ], "text/plain": [ "k" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ksym=sp.Symbol('k')\n", "Ksym" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{k}{k + 0.1 s^{3} + 1.2 s^{2} + 2.1 s + 1}$" ], "text/plain": [ " k \n", "───────────────────────────────\n", " 3 2 \n", "k + 0.1⋅s + 1.2⋅s + 2.1⋅s + 1" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gsym = sp.simplify( Psym * Ksym / (1 + Psym * Ksym) )\n", "Gsym" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (2) Bode線図とゲイン余裕" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "P = tf([1],[1,1])**2 * tf(1,[0.1, 1])" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(2, 1, figsize=(4, 3.5)) \n", "\n", "k=1\n", "\n", "gain, phase, w = bode(P*k, logspace(-2,3), plot=False)\n", "ax[0].semilogx(w, 20*np.log10(gain), color='k', lw=1)\n", "ax[1].semilogx(w, phase*180/np.pi, color='k', lw=1)\n", "\n", "bodeplot_set(ax)\n", "\n", "ax[0].semilogx(w, 0*w, c='c', ls='-', lw=1)\n", "ax[1].semilogx(w, -180*np.ones_like(w), c='c', ls='-', lw=1)\n", "ax[1].set_yticks([-270,-180,-90,0])\n", "# ゲイン余裕,位相余裕,位相交差周波数,ゲイン交差周波数\n", "gm, pm, wpc, wgc = margin(P*k)\n", "GM = 20*np.log10(gm) #デシベル値に変換\n", "ax[0].plot([wpc,wpc],[-GM,0], c='r', ls='-', lw=2)\n", "ax[0].scatter(wpc,-GM, alpha=0.5, c='k')\n", "ax[1].scatter(wpc,-180, alpha=0.5, c='k')\n", "\n", "fig.tight_layout()\n", "if (is_savefig):\n", " fig.savefig(figpath+\"ans/ch5_4_bode.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle 27.6763073196086$" ], "text/plain": [ "27.676307319608625" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "20*np.log10(gm)" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAABoAAAAOCAYAAAAxDQxDAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABJUlEQVQ4EZ2U/W3CMBDFE9QBUNmgjNAyQWGDlg3oHPmvYoSyQjsCG/AxAhsUZYPwe1FeiopjW5x0Ovt87z3nDlw2TVPYqqpad+tf4hRfkzv5PBVj+NJCFB0g+iT+iJA4Jii3YJ0UoyaKH3WkH8Qxxa1Il6uJ2n9pHzNwSXwrBMk7fgyQ7cjNIdLXxSyJt9AclnOAyS3TecyS+FHGbSXwOKSSi9cXmUQzGbJY67Lwbt2QgPMTL+6MEwmFZmM+31b/qyHLwmtGblmoPc75R3Ejlot367YwPN2w/M1P5zFL4i30DctLgOmZ3PHq1oGSNpXEt0IQbSg/E9/MxFptW+Kr6xz5Btdz0xv7JP6hry4K3V6P6Iyo4Su+su9fDNY1rnnt8f8WxV8AAUqEua7v5XIAAAAASUVORK5CYII=\n", "text/latex": [ "$\\displaystyle 0.0$" ], "text/plain": [ "0.0" ] }, "execution_count": 71, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.sqrt(21)-wpc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (3) Nyquist軌跡" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(-2, 0, '$-1$')" ] }, "execution_count": 72, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# 全体図(左),拡大図(右)\n", "fig, ax = plt.subplots(1,2,figsize=(6, 3)) \n", "\n", "k=100\n", "x, y, _ = nyquist(P*k, logspace(-3,3,1000), plot=False)\n", "\n", "for i in [0,1]:\n", " ax[i].plot(x, y, c='k', ls='-', lw=2)\n", " ax[i].plot(x, -y, c='k', ls=':', lw=2)\n", "\n", " ax[i].grid(ls=':', lw=0.5)\n", " ax[i].set_xlabel('Re')\n", " ax[i].set_ylabel('Im')\n", " \n", "ax[0].set_xlim(-40,120)\n", "ax[0].set_ylim(-80, 80)\n", "ax[1].set_xlim(-6,2)\n", "ax[1].set_ylim(-4,4)\n", "#点0と-1\n", "ax[1].scatter(0, 0, color='k')\n", "ax[1].annotate('$O$', xy=(0.2, 0), size=10)\n", "ax[1].scatter(-1, 0, color='k')\n", "ax[1].annotate('$-1$', xy=(-2, 0), size=10)\n", "\n", "# fig.savefig(figpath+\"ans/ch5_4_nyquist.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### (4) 安定性解析" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{k}{k + 0.1 s^{3} + 1.2 s^{2} + 2.1 s + 1}$" ], "text/plain": [ " k \n", "───────────────────────────────\n", " 3 2 \n", "k + 0.1⋅s + 1.2⋅s + 2.1⋅s + 1" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Gsym" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Routh-Hurwitzの安定判別法によれば,3次の場合の安定性の条件は$(1+k)>0$かつ$1.2 \\times 2.1 > 0.1\\times (1+k)$. したがって$k$の上限は" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAACMAAAAOCAYAAACl66WxAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABuUlEQVQ4Ea2UO1ICQRCGB+UAlEfA1MhHToA38HEDuYGEkMoNIDTV0EwCAo20uIEcQbkBfv/Wzjo9yzBslV3V29PPv2d6ZlubzcaNx+Ouc24Ii87hb3iIfSlDivCf4hsgB6mY0J7DOSRYjUwJvOn1ei/wbLFYnGB7RL6jr8KC4Rr/G/qamKfQvm1dNrIT54DEB9jsjESd0hpOghBzj78JZXHUTB/+ongnqjxH75Q7Mi5sGo+aFe9LWRw1I9AVAKnCcZMCvyV+pkUDyuK0KXqdKKjdO/zmEqNrPNNETtK8D45OpkYkqpEu7F9YEYNdtjUyeamLwD0/Mc7WZqili/tM8CSqq2fcdDxRCaManFozgGkEukNmfOh32BuPx0AHyjYc00wJeIS8DPIcusajl/Vf49HGajgt/YFFAF0hLpDVPWGtJkSS5l9UWJ1Tjl6hfylVbumviV04bUUToAtrGimrCGyGXyciQEPYfzDMkWakJihQcjit0WikXb+qaJDnl30KHHsllvh0rGqmGitr/ZfU5JL1mc9hncXRyagRBWqOMZl/jHdSWBdZOSI1rFfxgZzA/ul/Ft6/TxbnF1+X17jCZi8UAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle 24.2$" ], "text/plain": [ "24.2" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Kmax = 1.2 * 2.1 / 0.1 - 1\n", "Kmax" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "これは(2)で求めたゲイン余裕gmと一致している.フィードバック系が内部安定となる$k$の範囲は$00$かつ$3-a>0$,つまり$1" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(1,3,figsize=(12, 4)) \n", "\n", "a = [0.8, 2, 4]\n", "for i in [0, 1, 2]:\n", " L = 3 * tf([1],[1,-1]) * tf(1,[1, a[i] ])\n", " x, y, _ = nyquist(L, logspace(-3,3,1000), plot=False)\n", "\n", " ax[i].plot(x, y, c='k', ls='-', lw=2, label='$\\omega>0$')\n", " ax[i].plot(x, -y, c='k', ls=':', lw=2, label='$\\omega<0$')\n", "\n", " ax[i].grid(ls=':', lw=0.5)\n", " plot_set(ax[i],'Re','Im','best')\n", " \n", " ax[i].set_xlim(-4, 1)\n", " ax[i].set_ylim(-2.5, 2.5)\n", "\n", " #点0と-1\n", " ax[i].scatter(0, 0, color='k')\n", " ax[i].annotate('$O$', xy=(0.1, 0), size=10)\n", " ax[i].scatter(-1, 0, color='k')\n", " ax[i].annotate('$-1$', xy=(-1.5, 0), size=10)\n", " \n", "if (is_savefig):\n", " fig.savefig(figpath+\"ans/ch5_5_nyquist.pdf\", transparent=True, bbox_inches=\"tight\", pad_inches=0.0)" ] } ], "metadata": { "colab": { "name": "chap07.ipynb", "provenance": [] }, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }