Skip to content

Instantly share code, notes, and snippets.

@kouhei1970
Created May 29, 2020 09:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kouhei1970/a14516f11bcb3ffa07a711c858a574eb to your computer and use it in GitHub Desktop.
Save kouhei1970/a14516f11bcb3ffa07a711c858a574eb to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 制御用関数の再発明"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"趣味で制御用の関数を作って、モータの制御などを考察しようとしています。\n",
"\n",
"車輪の再発明系ですね(笑)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## よく使うモジュールのインポート"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 伝達関数を定義する関数\n",
"numpyの多項式関数poly1d()を駆使して、伝達関数を定義する関数を作ってみました。\n",
"\n",
"分母と分子の共通の極については約分する機能付きです。"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"def tf(num,den):\n",
" \n",
" num=np.poly1d(num)\n",
" den=np.poly1d(den)\n",
" \n",
" z=num.r\n",
" p=den.r\n",
"\n",
" \n",
" zreal=z[np.isclose(z.imag,0.0)].real\n",
" zcomp=z[~np.isclose(z.imag,0.0)]\n",
" preal=p[np.isclose(p.imag,0.0)].real\n",
" pcomp=p[~np.isclose(p.imag,0.0)]\n",
"\n",
" zzreal=zreal\n",
" zzcomp=zcomp\n",
" ppreal=preal\n",
" ppcomp=pcomp\n",
" \n",
" #分母分子から共通の極を見つけ出して削除する\n",
" for x in zreal:\n",
" ppreal=ppreal[~np.isclose(ppreal, x)]\n",
"\n",
" for x in preal:\n",
" zzreal=zzreal[~np.isclose(zzreal, x)]\n",
"\n",
" for x in zcomp:\n",
" ppcomp=ppcomp[~np.isclose(ppcomp, x)]\n",
"\n",
" for x in pcomp:\n",
" zzcomp=zzcomp[~np.isclose(zzcomp, x)]\n",
" \n",
" zz=np.concatenate([zzreal, zzcomp], 0)\n",
" pp=np.concatenate([ppreal, ppcomp], 0)\n",
" \n",
" \n",
" num=np.poly1d(zz, r=True, variable = \"s\")*num.coef[0]\n",
" den=np.poly1d(pp, r=True, variable = \"s\")*den.coef[0]\n",
"\n",
" return [num, den]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 伝達関数の演算用関数\n",
"\n",
"制御系を設計したり解析したりするために伝達関数を結合したり、掛け合わせたり、逆数をとったりして\n",
"開ループ伝達関数や閉ループ伝達関数を作り出すための演算よう関数群"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"def tf_add(sys1, sys2):\n",
" num=sys1[0]*sys2[1]+sys1[1]*sys2[0]\n",
" den=sys1[1]*sys2[1]\n",
" return tf(num.coef, den.coef)\n",
"\n",
"\n",
"def tf_multi(sys1, sys2):\n",
" num=sys1[0]*sys2[0]\n",
" den=sys1[1]*sys2[1]\n",
" return tf(num.coef, den.coef)\n",
"\n",
"def tf_inv(sys):\n",
" return tf(sys[1].coef, sys[0].coef)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 伝達関数表示用関数\n",
"\n",
"これは思いっきりショボいです。変数がsではなくxででます。\n",
"\n",
"時間があったら改善したいですが、優先順位は低いです。"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"def tf_print(sys):\n",
" num=sys[0].coef\n",
" den=sys[1].coef\n",
" m=len(num)\n",
" n=len(den)\n",
" s=''\n",
" for i in range(m):\n",
" if i!=m-1:\n",
" if ~np.isclose(num[i],0.0):\n",
" s=s+'{:.2e} s^{} +'.format(num[i],m-i-1)\n",
" \n",
" else:\n",
" if ~np.isclose(num[i],0.0):\n",
" s=s+'{:.2e}'.format(m-i-1)\n",
" \n",
" print(s)\n",
" print('---------------------')\n",
" print(sys[1])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ステップ応答計算用関数\n",
"\n",
"単位ステップ応答を計算します。\n",
"\n",
"ヘビサイドの展開定理の自分なりの実装です。"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"def step(sys,st,et,step=1000, debug=False):\n",
"\n",
" n=len(sys[1])\n",
" p=sys[1].r\n",
" if debug==True:\n",
" print('order={}'.format(n))\n",
" print('Pole={}'.format(p))\n",
" \n",
" y=np.zeros(step)\n",
" t=np.linspace(st, et, step)\n",
"\n",
" for i in range(n):\n",
" k=sys[0](p[i])/sys[1].deriv()(p[i])/p[i]\n",
" \n",
" if debug==True:\n",
" print('k{}={}'.format(i+1,k))\n",
"\n",
" y=y+(k*np.exp(p[i]*t)).real\n",
" \n",
" k=sys[0](0)/sys[1](0)\n",
" if debug==True:\n",
" print('k{}={}'.format(i+2,k))\n",
"\n",
" y=y+k\n",
" \n",
" return t,y "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 単位ランプ応答計算用関数\n",
"\n",
"単位ランプ応答を計算します。\n",
"\n",
"ヘビサイドの展開定理の自分なりの実装です。"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"def ramp(sys,st,et,step=1000, debug=False):\n",
"\n",
" n=len(sys[1])\n",
" p=sys[1].r\n",
" if debug==True:\n",
" print('order={}'.format(n))\n",
" print('Pole={}'.format(p))\n",
" \n",
" y=np.zeros(step)\n",
" t=np.linspace(st, et, step)\n",
"\n",
" for i in range(n):\n",
" k=sys[0](p[i])/sys[1].deriv()(p[i])/p[i]/p[i]\n",
" \n",
" if debug==True:\n",
" print('k{}={}'.format(i+1,k))\n",
"\n",
" y=y+(k*np.exp(p[i]*t)).real\n",
" \n",
" k=sys[0](0)/sys[1](0)\n",
" if debug==True:\n",
" print('k{}={}'.format(i+2,k))\n",
"\n",
" y=y+k*t\n",
" \n",
" k=(sys[0].deriv()(0)*sys[1](0)-sys[0](0)*sys[1].deriv()(0))/(sys[1](0))**2\n",
" if debug==True:\n",
" print('k{}={}'.format(i+3,k))\n",
" \n",
" y=y+k\n",
" \n",
" return t,y "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 計算サンプル\n",
"以降は計算のサンプルです"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1次遅れシステムのステップ応答"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=1\n",
"Pole=[-1.]\n",
"k1=-1.0\n",
"k2=1.0\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"sys=tf([1],[1, 1])\n",
"t,y=step(sys,0, 10, debug=True)\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2次振動系のステップ応答"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=2\n",
"Pole=[-1.88495559+5.99377677j -1.88495559-5.99377677j]\n",
"k1=(-0.5+0.15724272550828775j)\n",
"k2=(-0.5-0.15724272550828775j)\n",
"k3=1.0\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"z=0.3\n",
"omega=2*np.pi\n",
"\n",
"sys=tf([0,omega**2],[1, 2*z*omega, omega**2])\n",
"t,y=step(sys,0, 5, debug=True)\n",
"\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 1次遅れシステムのランプ応答"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=1\n",
"Pole=[-1.]\n",
"k1=1.0\n",
"k2=1.0\n",
"k3=-1.0\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"sys=tf([1],[1, 1])\n",
"t,y=ramp(sys,0, 10, debug=True)\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### DCモータ、PI制御器、1の伝達関数の生成\n",
"伝達要素を必ず分母分子がある形にしなければならないので定数要素の表現が不自然です。改善事項です。"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[poly1d([0.00659]), poly1d([7.500000e-12, 3.410105e-07, 4.390550e-05])]\n",
"[poly1d([ 0.1, 10. ]), poly1d([1., 0.])]\n",
"[poly1d([1.]), poly1d([1.])]\n"
]
}
],
"source": [
"#1724DCモータの諸元\n",
"R=3.41\n",
"K=6.59e-3\n",
"L=75e-6\n",
"D=1.4e-7\n",
"J=1e-7\n",
"\n",
"kp=0.1\n",
"ki=10\n",
"\n",
"motor=tf([0,K],[J*L, D*L+J*R, D*R+K**2])\n",
"cont=tf([kp, ki],[1, 0])\n",
"one=tf([0,1],[0,1])\n",
"print(motor)\n",
"print(cont)\n",
"print(one)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### DCモータのステップ応答"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=2\n",
"Pole=[-45338.94883714 -129.11782952]\n",
"k1=0.4286667719668313\n",
"k2=-150.52375736426163\n",
"k3=150.09509059229478\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"t,y=step(motor,0, 0.1, step=10000, debug=True)\n",
"\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### PI制御閉ループ伝達関数の計算"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[poly1d([4.9425e-15, 4.9425e-13]), poly1d([5.62500000e-23, 2.55757875e-18, 5.27179125e-15, 4.94250000e-13])]\n"
]
}
],
"source": [
"sys_num=tf_multi(cont,motor)\n",
"sys_den=tf_add(one, tf_multi(cont,motor))\n",
"motor_pi_control=tf_multi(sys_num, tf_inv(sys_den))\n",
"print(motor_pi_control)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### DCモータのPI制御系のステップ応答"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=3\n",
"Pole=[-43308.73679798 -2060.88457336 -98.44529533]\n",
"k1=0.04918488593736748\n",
"k2=-1.032820727876966\n",
"k3=-0.016364158060413938\n",
"k4=1.0000000000000129\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"t,y=step(motor_pi_control,0, 0.1, step=10000, debug=True)\n",
"\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 解析的に解いた伝達関数との比較\n",
"以下はて計算で伝達関数を求めた結果と今回作った関数で算出した伝達関数両方で計算した結果の比較です。\n",
"\n",
"一致しました。"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"#閉ループ伝達関数の分子と分母\n",
"\n",
"Dcom=np.poly1d([J*L, D*L+J*R, D*R+K**2+K*kp, K*ki])\n",
"No=np.poly1d([K*kp, K*ki])\n",
"\n",
"mot_pi=tf([K*kp, K*ki], [J*L, D*L+J*R, D*R+K**2+K*kp, K*ki])\n"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=3\n",
"Pole=[-43308.73679798 -2060.88457336 -98.44529533]\n",
"k1=0.04918488593736748\n",
"k2=-1.032820727876966\n",
"k3=-0.016364158060413938\n",
"k4=1.0000000000000129\n",
"order=3\n",
"Pole=[-43308.73679798 -2060.88457336 -98.44529533]\n",
"k1=0.049184885937367355\n",
"k2=-1.0328207278769626\n",
"k3=-0.016364158060403866\n",
"k4=1.0000000000000004\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"t,y1=step(motor_pi_control,0, 0.01, step=1000, debug=True)\n",
"t,y2=step(mot_pi,0, 0.01, step=1000, debug=True)\n",
"\n",
"plt.plot(t,y1,linewidth=5)\n",
"plt.plot(t,y2)\n",
"\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### DCモータのランプ応答"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"order=3\n",
"Pole=[-43308.73679798 -2060.88457336 -98.44529533]\n",
"k1=-1.1356804555809423e-06\n",
"k2=0.0005011540875350965\n",
"k3=0.0001662259024805328\n",
"k4=1.0000000000000129\n",
"k5=-0.0006662443095600539\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"t,y=ramp(motor_pi_control,0, 0.005, step=10000, debug=True)\n",
"\n",
"plt.plot(t,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"6.59e-04 s^1 +0.00e+00\n",
"---------------------\n",
" 3 2\n",
"7.5e-12 x + 3.41e-07 x + 0.0007029 x + 0.0659\n"
]
}
],
"source": [
"tf_print(mot_pi)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[poly1d([0.000659, 0.0659 ]), poly1d([7.500000e-12, 3.410105e-07, 7.029055e-04, 6.590000e-02])]\n"
]
}
],
"source": [
"print(mot_pi)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"poly1d([0.000659, 0.0659 ])"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mot_pi[0]"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.isclose(0.0,0.0000001)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.7.4"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment