台車制御

# 概要
台車をタミヤのギアボックスでベルトによって駆動させ、速度制御、加速度制御を考えます。![68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3430353438342f65313762613737362d653531332d663236632d363861652d6636363735323936366332332e6a706567.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/04f2e5d9-2f63-0ee4-94ed-5e6f704a132b.jpeg)
振り子は外して、加速度センサーを台車に取り付けます。
結論から書くと、速度をオブザーバで推定し、制御は単純にP制御にしました。Pゲインはとりあえずで定めました。
離散システムのPゲインは、発散する境界が2つあるように思います。
連続系では理論上1つしか出ないですが（今回のシステムでは）。
その後、制御系を追加したシステムの応答から周波数応答はを推定するところで終わっています。

<!--
#運動方程式
以前書いた記事から
https://qiita.com/hiRina/items/1a44894a83f247de223a

```math
Ma_{台} = -Fr-c_{台}*v_{台}+F\\
```
印加電圧と電流・逆起電圧の関係より

```math
V=R_e*i+K*(d\theta_M)/dt
```
モーターの回転角θMと台車の速度には次の関係があるとします。Rm：プーリ半径、n:ギア比

```math
v_{台} = Rm*n*\theta_M
```
モーターの機械特性より、ギアボックスの慣性モーメントJM、粘性係数CM、摩擦トルク損失：τ損より

```math
J_M(d^2\theta_M/dt^2)+c_M*(d\theta_M/dt)=K*i-\tau_損-(F+Fr)*R_m n
```
以上3つの式をまとめることで状態方程式を作ります。今回は完全に線形に仮定できるので微小近似が必要ないです。
すべてθMでまとめると

```math
(J_M+M*Rmn^2)(d^2\theta_M/dt^2)+(c_M+c_{台}*Rmn^2)*(d\theta_M/dt)=K*i-\tau_損-(F+Fr)*R_m n
```
となります。電流でなく電圧指令にするならば

```math
(J_M+M*Rmn^2)(d^2\theta_M/dt^2)+(c_M+c_{台}*Rmn^2+K^2/R_e)*(d\theta_M/dt)\\
=K/R_e*V-\tau_損-(F+Fr)*R_m n
```
と、粘性項が増加することになります。
気になる問題としては

* ベルトばね
* ギアかみ合わせ：バックラッシュ

です。

#定数同定
直に計った係数

```math
M=0.5kg  \\
Rm*n = 0.000213631
```
モータ同定で得た数値：https://qiita.com/hiRina/items/85f65909cf695be00e72

```math
tson:1.95639*10^-4;\\
JM:1.238*10^-7;\\
cM:1.87928*10^-7;\\
R=2.002Ω\\
K=0.00194
```
$Fr、c_{台}$については定常電流から同定します。一定電流になるまで待ち、そのときの角速度と電流値は線形な応答をします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/8fdec55f-3846-987c-9a8a-9fba10c73ca1.png)
傾きは$(c_M+c_{台}*Rmn^2)/K $で
切片は$(\tau_損+Fr*R_m n)/K$ となるので

```math
(c_M+c_{台}*Rmn^2)/K = 0.000323 \\
\therefore c_M = 1.879*10^-7\\
\therefore c_{台}*Rmn^2 = 4.365*10^-7\\
\therefore c_{台} = 9.56\\
(\tau_損+Fr*R_m n)/K = 0.165293157\\
\therefore \tau_損+Fr*R_m n = 0.0003198\\
\therefore \tau_損 = 1.95639*10^-4\\
\therefore Fr*R_m n = 1.24208 * 10^-4\\
\therefore Fr = 0.5814147\\
```
偶然ですが、ギアボックスの摩擦とレールの摩擦項の数値は大体同じオーダーを取りました。粘性摩擦項も大体同じオーダーですね。装置をもっと精度良く作れば良いのですが、レールの場所によって微妙に摩擦具合が変わってしまっています（手で押してわかる）。あと、プーリーのＲｍを精度良く出さないとだいぶ問題が出てきます。最初はテープで隙間を埋めてプーリを入れていましたが、３Ｄプリンタでジグを作って変えてやりました。
以上より方程式ができます。

```math
(d^2\theta_M/dt^2)=-17.01*(d\theta_M/dt)+6590.18*V-2180.89
```
2180.89は摩擦項由来なので、速度の方向によって正負が反転します。ここは

```math
(d^2\theta_M/dt^2)=-17.01*(d\theta_M/dt)+6590.18*(V±0.33091)
```
として、速度に合わせて±を変えてやりましょう。
1入力:電圧、1出力：$(d\theta_M/dt)$　で伝達関数で書くと

```math
(d\theta_M/dt) = 6590/(s+17.01) *V
```
周波数応答は
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/0e7f0df9-0c12-71a8-b093-62cd98ec2f93.png)
17.01と大きい値を取っているので応答が悪くなるのが速いです。17rad/s =3Hz程度で半分に落ちてしまっています。
共振等はないシステムとなります。
観測できるのはθMのみなので、制御系を設計する場合オブザーバで$(d\theta_M/dt)$を推定しながら、フィードバックする事になります。

#制御系設計：速度
オブザーバを入れて単純にＰ制御で入れてみたところ、振動し、失敗しました。これは、Ｐゲインが大きすぎて周波数特性のカットオフ周波数が増加し、位相が強め合うような部分が生まれてしまったからでしょう。Ｐゲインを下げると振動は消えました。

```C++
 NeedVoltage = 0.0025811*(TargetVelocity + 1*(TargetVelocity - x1_n1));
```
という適当なゲイン：１のコントローラでよいことにしました。ゲイン10で発散しました。x1_n1はオブザーバの計算結果です。

#制御系を入れたシステムの周波数特性
目標速度をsinで与えてその時のシステムの応答から周波数特性を推定します。

* T= 100正規化:0.01sでサンプリング
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/777cf390-b269-4cfd-9e11-4d565c419d85.png)
青：オブザーバによる現在推定速度　　オレンジ：目標速度
少し、遅れがありますが振幅もあまり違わずいい結果になっていると思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/5204bdbc-604d-f088-122f-45b2cfb2a3f4.png)
8（0.08s）ほど遅れがあります。

* T = 50
* 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/e4fa0492-1e43-60a1-e452-b3c3ed8290ce.png)

8（0.08s）ほど遅れがあります。

* T=25
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/71642416-c22a-63a2-2b6b-f4cede68fbb1.png)
振幅も下がってきました。
6ほど遅れがあります。

* T = 12.5
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/330fa496-e6e0-3e8f-8e18-572476a56517.png)
4ほど遅れがあります。

* T= 4
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/dcb691ff-43f2-4aa1-8126-ea400826a005.png)
遅れは1程度だが、振幅が下がりすぎてこの帯域では使い物にならない。

遅れ時間を位相[rad]に直すには
角速度で割ればよい。
以上より、周波数応答を書くと次のようになる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/2cf6a655-3351-355e-f6cb-09db5fcfbf9c.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/c81169a4-41c5-f28e-7057-eb5aa187588e.png)
カットオフ周波数は0.2あたり = 0.2rad/0.01 = 20rad/sになった。
制御する前のシステムのカットオフ角周波数は17.01rad/s なのでわずかにしか増加していない。
また、位相遅れについては電圧が1sample以上確実に遅れるので何とも言えない。

また、ゲインを上げて、振幅をさげると、
P=3
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/972977c2-d213-83c7-16be-59c01e2be583.png)

P=7
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/4d70f995-b1dc-31db-b174-53aca3fe86ad.png)
のように共振する場合がある。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/90545974-60ad-88ba-bb3f-3f1f527c5ef6.png)
振幅を上げると共振しない。

これは

*　バックラッシュによって、最初の角速度が出すぎている
*　摩擦項によってオブザーバの入力誤差が生じている

可能性を考える。
2番の場合、入力電圧より実際は少なく印加したことになる。つまり、計算上の電圧が大きくなる。よってオブザーバの計算結果の速度は実際より大きく計算されることになる。これを戻そうとして失敗する。
ということが原因だと考える。
P=7、振幅100,w=25 の先ほどの共振状態で、オブザーバに摩擦項を導入し結果を見ると

```C++
            TargetVelocity = 100*sin(Time*0.06283*5);
            //--------------オブザーバ------------
            if(x1_n>=0){
                x1_n1 = 0.8435805*x1_n + 60.601585 * (NowVoltage-0.3) +12.837197*(thetaM[0]-x2_n);
                x2_n1 = 0.0091957*x1_n + 1 * x2_n +0.3115941* (NowVoltage-0.3)+ 0.8435805*(thetaM[0]-x2_n);
            }else{
                x1_n1 = 0.8435805*x1_n + 60.601585 * (NowVoltage+0.3) +12.837197*(thetaM[0]-x2_n);
                x2_n1 = 0.0091957*x1_n + 1 * x2_n +0.3115941* (NowVoltage+0.3)+ 0.8435805*(thetaM[0]-x2_n);
            }
            //-------------コントローラ-----------
            NeedVoltage = 0.0025811*(TargetVelocity + 7*(TargetVelocity - x1_n1));
```

としたが、結局
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/5fea76fe-29b8-10e4-04ae-67ea27fc243b.png)
発散してしまった。
モーター角[rad]は2*PI()/5 = 1.25rad単位で値をとるが
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/2d80dab3-9324-32e9-a24c-45eec15c8e63.png)
より、回転量はかなり小さいことがわかる。

つぎに、バックラッシュ対策を導入する。角度が変化した（前回との角度差より）とき、1.2566rad（エンコーダ数値単位）だけ変化するまで、変化していない（θM　const）と考え、1.2566rad以上変化したとき、1.2566rad足し引きすることにする。
足し引きは、前回の変化が・・・
いろいろやってみたがP=7では共振は必ず発生した。

そもそも、エンコーダーの分解能が2PI/5rad で　サンプリングが0.01sなので角速度分解能は126rad/sであるので、目標値としてこれより小さい数値はあるかないか、どうかという1，0判定のようなものなのでバタついてしまうのかもしれない。

P=3ならバタつかない。
P=7でバタつく理由はわからなかったが、今後の課題として、放置することにする。

#加速度制御
台車に振子を付けた場合、入力は台車加速度で速度ではない。実際、一定速で走る電車のなかの人は加速時は力を受けるが、速度が一定になると電車から力を受けたようには感じなくなるだろう。
というわけで、加速度制御が必要になる。

```math
(d^2\theta_M/dt^2)=-17.01*(d\theta_M/dt)+6590.18*(V±0.33091)
```
であるので、入力Ｖに対し直に加速度に変わる直達部分と速度が上がると加速度を消す粘性項の2つでできている。
加速度はオブザーバ出力$d\theta_M/dt$ と　入力電圧で知ることができる。
目標加速度から逆に必要入力電圧を推定する事ができる。それを入力電圧とすると

```math
V = (d^2\theta_M/dt^2+17.01*(d\theta_M/dt))/6590.18 ± 0.33091
```
とすれば目標加速度にする事ができるのではないだろうか。それっぽい感じにはできた。

#加速度オブザーバと二階微分器
今回の台車は位置（エンコーダ値）、電流がわかる。
ではエンコーダーの2階微分とオブザーバではどのように出力が違うのだろうか？

* 加速度というのは電流の直達項が存在するためステップ応答のような急峻な変化が有る。よって二回微分のようなローパスを挟む必要性のあるものを使って求めると、真の加速度との差が大きい
* オブザーバでは求まる数値はモデルの精度に依存する。さらに正確性の検証が難しい
* 台車では摩擦の影響が強く、速度の正負で働く方向が逆になるのでオブザーバが振動的な挙動となる危険がある。速度の閾値を与え、有る速度以下では動いていないと仮定してモータートルク・粘性摩擦もないとして0としてしまうか。
-->

#2020_5_19追記
再度、式構築、システム同定について見直した。記録としてここに残す
前書いたものは良くなかったので削除した

#システムモデル
###安定な振り子の場合
![Invert1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/7cf10a85-3881-ffe0-e260-5a3c92f018eb.png)

```math
M\ddot{x}=-\mu_1\dot{x}+F-H\\
```

![Invert2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/62280a7e-1a6a-d929-0425-d2d5c78e25b2.png)

```math
J\ddot{\theta}=-\mu_2\dot{\theta}-VLsin\theta -HLcos\theta\\
m\frac{d^2}{dt^2}(x+Lsin\theta)=H\\
m\frac{d^2}{dt^2}(L-Lcos\theta) = V-mg
```
よって

```math
H=m\ddot{x}+mL\ddot{\theta}cos\theta -mLsin\theta \dot{\theta}^2\\
V=mg+mL(\ddot{\theta}sin\theta+cos\theta\dot{\theta}^2)
```
二乗項は今後ムシする（非線形制御無理泣）

モーターは

```math
F=Tr\\
V=RI+K\omega\\
T=KI\\
\dot{x}=n\omega
```
より

```math
\begin{align}
F&=KrI\\
&=\frac{Kr}{R} ( V-K\omega)\\
&=\frac{Kr}{R} (V-\frac{K}{n}\dot{x})
\end{align}
```

以上有用な式を持ってくると

```math
\begin{align}
F&=\frac{Kr}{R} (V-\frac{K}{n}\dot{x})\\
J\ddot{\theta}&=-\mu_2\dot{\theta}-VLsin\theta -HLcos\theta\\
H&=m\ddot{x}+mL\ddot{\theta}cos\theta \\
V&=mg+mL\ddot{\theta}sin\theta\\
M\ddot{x}&=-\mu_1\dot{x}+F-H\\
\end{align}
```
H,Lを代入すると

```math
\begin{align}
J\ddot{\theta}&=-\mu_2\dot{\theta}-(mg+mL\ddot{\theta}sin\theta)Lsin\theta -(m\ddot{x}+mL\ddot{\theta}cos\theta)Lcos\theta\\
M\ddot{x}&=-\mu_1\dot{x}+ \frac{Kr}{R} (V- \frac{K}{n}\dot{x})-m\ddot{x}-mL\ddot{\theta}cos\theta\\
\end{align}
```

$sin\theta ~= \theta,cos\theta ~= 1$として線形化し
$x,\theta$の項でまとめる

```math
\begin{align}
J\ddot{\theta}&=-\mu_2\dot{\theta}-(mg+mL\ddot{\theta}sin\theta)Lsin\theta -(m\ddot{x}+mL\ddot{\theta}cos\theta)Lcos\theta\\
\therefore(J+mL^2)\ddot{\theta}&=-mgL\theta-\mu_2\dot{\theta}-mL\ddot{x}\\
M\ddot{x}&=-\mu_1\dot{x}+ \frac{Kr}{R} (V- \frac{K}{n}\dot{x})-m\ddot{x}-mL\ddot{\theta}cos\theta\\
\therefore (M+m)\ddot{x}&=-(\mu_2+\frac{K^2r}{Rn})\dot{x}+\frac{Kr}{R}V-mL\ddot{\theta}
\end{align}
```

以上で支配方程式が導出された。
ここの定数を求めるのは誤差の問題と信頼性に欠ける事から、支配方程式として導出を行う。
簡略のため次のように書き換える


```math
\begin{align}
\ddot{\theta} &= -k\theta-c_2\dot{\theta}-\beta\ddot{x}\\
\ddot{x} &=  -c_1\dot{x}+b_1V-\alpha\ddot{\theta}\\ 
\end{align}
```
全ての定数は正である。

**θの回転方向を逆に設定した（反対側から倒立振子を見る）場合、つまりxの進行方向に対して微小θ>0が重心xをプラスに進める時(今回の座表の取り方)、$\beta\ddot{x},\alpha\ddot{\theta}$の係数は負になります。θの取り方を逆にすると、係数は正になります。**

**倒立状態の場合は、$k,\alpha,\beta$の項が負になります。**

Vから、$x,\theta$への伝達関数は

```math
\left(
    \begin{array}{ccc}
      s^2+c_1 s &  \alpha s^2\\
      \beta s^2 & s^2+c_2 s+k\\
    \end{array}
  \right)
\left(
    \begin{array}{ccc}
      X\\
\theta\\
    \end{array}
  \right)
=
\left(
    \begin{array}{ccc}
      b_1V\\
     0\\
    \end{array}
  \right)
```
よって

```math
X=\frac{b_1(s^2+c_2s+K)}{(s^2+c_1s)(s^2+c_2s+K)+\alpha\beta s^4} V\\
\theta=\frac{-\beta b_1s^2}{(s^2+c_1s)(s^2+c_2s+K)+\alpha\beta s^4} V\\
```
これは、電圧を掛けるとθは負の方向に進行するという事がわかる。

#状態方程式表現

```math
\frac{d}{dt}
\left(
    \begin{array}{ccc}
      x\\
\theta\\
\dot{x}\\
\dot{\theta}\\
    \end{array}
  \right)
=
\left(
    \begin{array}{ccc}
     0&0&1&0\\
0&0&0&1\\
0&\alpha K/(1-\alpha\beta)&-c_1/(1-\alpha\beta)&\alpha c_2/(1-\alpha\beta)\\
0&-k/(1-\alpha\beta) & \beta c_1 /(1-\alpha\beta) &-c_2 /(1-\alpha\beta)\\
    \end{array}
  \right)

\left(
    \begin{array}{ccc}
      x\\
\theta\\
\dot{x}\\
\dot{\theta}\\
    \end{array}
  \right)

+
\left(
    \begin{array}{ccc}
   0\\
0\\
b_1/(1-\alpha\beta)\\
-\beta b_1 /(1-\alpha\beta)\\
    \end{array}
  \right)
V
```
となる。

倒立状態の場合

```math
\begin{align}
\ddot{\theta} &= k\theta-c_2\dot{\theta}+\beta\ddot{x}\\
\ddot{x} &=  -c_1\dot{x}+b_1V+\alpha\ddot{\theta}\\ 
\end{align}
```
全ての定数は正である。

```math
\frac{d}{dt}
\left(
    \begin{array}{ccc}
      x\\
\theta\\
\dot{x}\\
\dot{\theta}\\
    \end{array}
  \right)
=
\left(
    \begin{array}{ccc}
     0&0&1&0\\
0&0&0&1\\
0&\alpha K/(1-\alpha\beta)&-c_1/(1-\alpha\beta)&-\alpha c_2/(1-\alpha\beta)\\
0&k/(1-\alpha\beta) &- \beta c_1 /(1-\alpha\beta) &-c_2 /(1-\alpha\beta)\\
    \end{array}
  \right)

\left(
    \begin{array}{ccc}
      x\\
\theta\\
\dot{x}\\
\dot{\theta}\\
    \end{array}
  \right)

+
\left(
    \begin{array}{ccc}
   0\\
0\\
b_1/(1-\alpha\beta)\\
\beta b_1 /(1-\alpha\beta)\\
    \end{array}
  \right)
V
```
となる。

#システム同定
###振り子
まず、振り子単体で手で持ち上げ、離し、自由振動させたときの応答を見る
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/e8083252-6108-ad02-5483-115a97bcfc40.png)
一般的な減衰である。データに飛びが有る気がするが気にしないことにする

```math
\ddot{\theta}= -k\theta- c_2\dot{\theta}
```

に適合するよう、係数を求める。エクセルのソルバーを利用した。
![solber.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/ce527977-b681-c51c-8246-f74e98b3e669.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/a1d96cf0-db49-3bfc-5cc1-842273de9575.png)

```math
\ddot{\theta} = -k\theta-c_2\dot{\theta}\\
k=72.8\\
c=0.685\\
```
ほとんど一致させる事ができた。
振り子の固有振動数は$\sqrt{k} = 8.5rad/s = 1.35Hz$である。

###台車

```math
X=\frac{b_1(s^2+c_2s+K)}{(s^2+c_1s)(s^2+c_2s+K)+\alpha\beta s^4} V\\
```
を$alpha=0$として近似し、数値を求める。但し、制御実験をした際、3.1Hzで振動気味だったため、アルファの項によって生成される極が3.1Hzにあり、アルファ項をムシして制御するとその極が励起され制御に悪影響をもたらす可能性がある。しかし、数値的に小さいという予想は間違いではないはず（振り子の質量が台車の質量に対し十分大きければそんなにおおきな項にならないと思われるため）

```math
X=\frac{b_1}{s(s+c_1)}V\\
G=\frac{b_1}{s(s+c_1)}
```
積分器+LPFという構成になっている。
いろいろな周波数でSIN波をVに与え、Xの応答を見る
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/49ff9fd7-c50f-329b-30f4-fc1e48018122.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/9017c78f-a8fb-914d-8274-61379f73893b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/2d8abd6f-5b98-5781-3479-6b1f9cd90ce2.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/714b6d27-8322-cd5f-8e3d-2a95497aacd0.png)
積分器が付いているので当然だが、低周波ほどxの振幅は大きくなっている。
$c_1[rad/s]$がLPFのカットオフ周波数である。7~20rad/sはカットオフに引っかかっていないとして$b_1$を同定してみよう

引っかかっていないとすると

```math
|G(jw)| = \frac{b_1}{w}\\
\therefore ln(|G|) = ln(b_1)-ln(w)
```
より、ゲインは$ln(w)$に傾き-1で線形のはずです。計測値で同様に行うと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/e6703afc-3d39-60cc-ab2f-6918ad6e572a.png)
線形性が見られます。

```
傾きは-1.38 切片5.96
```
となります。傾きが１でも２でもないのが怪しいですが

```math
b_1=exp(5.96) = 390
```
と同定できました。

$c_1$については位置についてフィードバック系を組んだ時の臨界減衰となるフィードバックゲインを利用しました。
自信がないので書いてませんが$c_1 = 12$となりました。

###摩擦項の扱い
記述しなかったが、台車系には摩擦項が入る。今回は摩擦項を打ち消すよう、次のよう入力電圧に加えた
位置xが、制御間隔時間Ｔ(=0.01s)だけ前の位置pre_xと比較し大きい場合　　->  負方向の摩擦　-> V+0.22
位置xが、制御間隔時間Ｔ(=0.01s)だけ前の位置pre_xと比較し小さい場合　　->  正方向の摩擦　-> V-0.22
として与えた。
![blog7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/405484/6259ecda-7a1c-f82d-6008-59b2a156590d.png)

0.22という数値は動いている台車が止まる時の平均電圧である。これで動摩擦力を打ち消すことができると考えた。
結果としては、sin電圧を加えた際、ない場合よりも動きがsin的になった、ない場合低電圧では動かないためON,OFF感がある動きであった。