しろねこらぼ(旧)

しろねこの気まぐれ技術日記

ブログ移転のお知らせ

新しいブログしろねこらぼ - しろねこの気まぐれ技術日記へ移転します。

二次元平面上に置かれた二点間の距離を求める

二次元平面上に置かれた二点間の距離は \begin{align} d(p_{1},p_{2})=\sqrt{(x_{2}-x_{1})^2+(y_{2}-y_{1})^2} \end{align} で与えられる。カレントディレクトリに function d =distance(P1,P2) d=sqrt((P2(1,1)-P1(1,1))^2+P2(1,2)-P1(1,2)^2); end とした…

巡回セールスマン問題がおもしろそうなのでmatlabでシミュレーションしてみる #1

巡回セールスマン問題とは、あるセールスマンが複数の都市を訪れるとき、どのような順番で巡回すれば最も効果的(時間、移動距離、交通費等)かを解くグラフ理論の有名な問題の一つである。 この問題の難しい点は巡回する都市の数が多くなると計算量が爆発的…

位相空間の定義を眺める

集合に対し,部分集合の族が次の条件 \begin{align} S \in \mathcal{O} ,\phi \in \mathcal{O}\\ U_{1} , \cdots , U_{m} \in \mathcal{O} \Rightarrow \bigcap_{k=1}^{m} U_{k} \in \mathcal{O}\\ U_{\lambda} \in \mathcal{O} (\forall \lambda \in \Lambd…

プラトンの多面体定理をオイラーの多面体定理を使わずに証明する

正角形の内角の和は \begin{align} \pi (n-2) \end{align} より、一つの角は \begin{align} \frac{\pi (n-2)}{n} \end{align} となる。 ここで、正多角形をいくつか張り合わせ立体を作ることを考える。いくつか張り合わせ立体にするためには平面にならないよ…

pythonで記述した関数を別ファイルに記述し直してimportする

いつも忘れるのでまとめておく。 pythonのバージョンはpython3.7を利用している。始めに次のようなコードを考える。 print('Hello! python') これを関数化して別ファイルに移せば import greeting greeting.helloworld() def helloworld(): print('Hello! py…

異なるブロック線図で表されるシステム同士を等価変換する条件を求める

下図で示すようなシステムの伝達関数を考える。 まず、このシステムの伝達関数は \begin{align} W_{1}(s)=\dfrac{G(s)}{1+G(s)H(s)} \end{align} で表すことができる。ここで次のような別のシステムについて考える。 \begin{align} W_{2}(s)=\dfrac{G_{1}(s)…

ルービックキューブの自由度

の立方体で作られるルービックキューブの回転は、重複と逆回転を考えなければ \begin{align} 24n \end{align} となるが、最小の回転軸数は \begin{align} 3(n-1) \end{align}

matlabでの伝達関数の定義法

matlabでの伝達関数の定義は単純で、例えば次のような伝達関数 \begin{align} G(s)=\dfrac{1}{s^{2}+2s+3} \end{align} であれば Np = [0, 1] Dp = [1, 2, 3] P = tf(Np, Dp) とすればいい。 matlabのLisenceを所持していない場合、Python_Controlパッケージ…

浮体に働く復元力

浮体に働く浮力ベクトルとその大きさは \begin{align} B = mg \hspace{5mm} W = - \rho g V \end{align} で表すことができる。浮体座標系から見れば \begin{align} \boldsymbol{f}_{g}^{n} = {}^{t} \begin{pmatrix} 0 & 0 & B \end{pmatrix} \hspace{5mm} \…

回転行列から回転角を求める

回転行列について\begin{align} \begin{pmatrix} \cos \psi \cos \theta& \cos \psi \sin \phi \sin \theta - \cos \phi \sin \psi & \sin \phi \sin \psi + \cos \phi \cos \psi \sin \theta \\ \cos \theta \sin \psi& \cos \phi \cos \psi + \sin \phi \s…

クォータニオンを定義する

クォータニオンは1つの実部と3つの要素を持つ虚部からなる。は \begin{align} \boldsymbol{\varepsilon}= {}^{t} \begin{pmatrix} \varepsilon_{1} & \varepsilon_{2} & \varepsilon_{3} \end{pmatrix} \end{align} である。ここで、は \begin{align} \bol…

ボード線図を作図する

前回、二次遅れ系の伝達関数 \begin{align} G(s)=\dfrac{K}{Ts+1} \end{align} を例に、ゲイン線図と位相線図からなるボード線図を作図する過程を示した。 これによれば、ゲイン線図は \begin{align} \left | G(j\omega) \right | = \dfrac{K\sqrt{1+T^{2}\o…

因数分解と零点

中学生のころに学ぶ因数分解とは \begin{align} (x+a)(x+b)=x^2+(a+b)x+ab \end{align} のように式を積の形で表す操作である。上の例ではが因数に当たる。このような式の段階では分かりづらいが、方程式が出現してからはその有用さは明らかである。 次のよう…

ボード線図作図のためのゲイン線図と位相線図

二次遅れ系の伝達関数 \begin{align} G(s)=\dfrac{K}{Ts+1} \end{align} を例に、ゲイン線図と位相線図からなるボード線図を作図する。 はじめにとしてフーリエ変換すると \begin{align} G(j \omega)&=\dfrac{K}{1 + j \omega T } \end{align} また、このシ…

ばねマスダンパ系の状態方程式

ばねマスダンパ系の状態方程式を導出する。 まず、ばねマスダンパ系の運動方程式は \begin{align} M \ddot{x}(t) + C \dot{x}(t) + k x(t) = f(t) \end{align} ここでは質量、は減衰係数、はばね定数、は変位である。 はじめに \begin{align} x_{1}(t) = x(t…

制御偏差と定常偏差

フィードバック制御系において目標値が変化したり外乱が加わると制御量が変化する。制御量は出力とも呼ばれ、制御量と目標値の差は(制御)偏差と呼ばれる。 適切に設計されたフィードバック制御系であれば徐々に偏差は減少するが、定常状態となった後にも残…

pandasを使ったcsvファイルの読み込み

pandasを使ったcsvファイルの操作が思いのほか使いやすかったので残しておく。 pandasがインストールされている環境で import pandas as pd df = pd.read_csv('FILEPASS/FILENAME.csv',encoding = 'cp932',usecols=[2]) print(df) とすればcsvファイルの2列…

二次遅れ系の過渡応答の極大極小値

前回二次遅れ系の伝達関数 \begin{align} G(s)=\dfrac{\omega_{n}^2}{s^2 + 2 \zeta \omega_{n} s+ \omega_{n}^2} \end{align} についての行過ぎ量を求める式 \begin{align} f(t) = 1 - (-1)^n e^{ -\zeta \dfrac{n \pi }{\sqrt{1-\zeta^2}} } \hspace{5mm} …

二次遅れ系のインディシャル応答と行過ぎ量

次のような二次遅れ系の伝達関数 \begin{align} G(s)=\dfrac{\omega_{n}^2}{s^2 + 2 \zeta \omega_{n} s+ \omega_{n}^2} \end{align} について、不足振動となるの行き過ぎ量を考える。 この場合の応答は \begin{align} y(t)=1-\dfrac{e^{- \zeta \omega_{n} …

回転行列の固有値と固有ベクトル

軸周りの回転を表す回転行列 \begin{align} \textbf{C}_{x}(\boldsymbol{η}) = \begin{pmatrix} 1 & 0 & 0\\ 0 & \cos \phi & \sin \phi \\ 0 & -\sin \phi & \cos \phi \end{pmatrix} \end{align}の固有値は \begin{align} \begin{vmatrix} t-1 & 0 & 0\\ 0…

RLC直列回路の共振周波数

直列回路の共振周波数を求める。直列回路のインピーダンスは \begin{align} Z=R+j \left ( \omega L - \frac{1}{\omega C} \right ) \end{align} 共振の条件は= 0]より \begin{align} \omega L - \frac{1}{\omega C} & = 0\\ \omega^2 L C &= 1 \end{align} …

最終値の定理

時間関数について、の値をラプラス変換により得られた結果より直接求める場合最終値の定理を用いると便利である。 \begin{align} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = sX(s) - x(0) \end{align} 左辺について次のような極限 \begin{align} \li…

初期値の定理

時間関数について、の値をラプラス変換により得られた結果より直接求める場合初期値の定理を用いると便利である。 \begin{align} \int_{0}^{\infty} \dfrac{dx(t)}{dt} e^{-st} dt = sX(s) - x(0) \end{align} 両辺の極限をとって \begin{align} \lim_{s \to…

オイラー角を用いた回転表現

空間に置かれた剛体の回転について考える。今、剛体の姿勢をを用いて \begin{align} \boldsymbol{η} = \begin{pmatrix} \phi \\ \theta \\ \psi \end{pmatrix} \end{align}と定義する。ここではRoll、Pitch、Yawそれぞれの角度を示している。剛体の回転は独…

itコマンドによる斜体指示の問題点と解決策

はてなブログで数式を書く際、などについてはTeXのコマンドを使うことができないので\it{μ}などと記述する。しかしこの方法は \begin{align} \it{μ}^2 \end{align} となり、不具合が生じる。これはitコマンドが1993年にリリースされた LaTeX2e の New Font S…

正実性と強正実性

伝達関数 \begin{align} G(s)=\dfrac{K_{p} (s - \it {σ}_{1})(s - \it {σ}_{2}) \cdots (s - \it {σ}_{m})}{(s - \lambda_{1})(s - \lambda_{2}) \cdots (s - \lambda_{m})} \end{align} について、実部と虚部をとすると \begin{align} G(s)=M+jN \end{alig…

ガウス分布とデルタ関数

制御工学ではインパルス応答など呼び方は異なるが、デルタ関数を用いる機会が多い。デルタ関数とは \begin{align} \delta(s)=\begin{cases} \infty \hspace{3mm} &(x=0)\\ 0 &(x \neq 0) \end{cases} \end{align} で定義される超関数である。 ガウス分布は正…

二次遅れ系のインパルス応答

次のような二次遅れ系の伝達関数 \begin{align} G(s)=\dfrac{\omega_{n}^2}{s^2 + 2 \zeta \omega_{n} s+ \omega_{n}^2} \end{align} について、インパルス応答を調べる。 インパルス応答を入力したときの出力[tex;Y(s)]は \begin{align} Y(s)=\dfrac{\omega…

ラプラス変換の線形性

線形性とは、 \begin{align} f(x_{1}+x_{2}) &= f(x_{1})+f(x_{2})\\ f(ax_{1})&=af(x_{1}) \end{align} のような性質を満たす関数のことである。 ラプラス変換についてもこの線形性は成り立つ。 まず \begin{align} \mathcal{L} [ax_{1}(t) + bx_{2}(t)] \e…