制御工学 RLCバンドパスフィルタの伝達関数 回路方程式が\begin{align}E _{I} =L\frac{di}{dt} + \frac{1}{C} \int i dt + Ri\end{align}のようなバンドパスフィルタを考える。いま出力が\begin{align}E_{... 2021.10.29 制御工学電気
電験 承認と許可の違い 電気工事士法第43条には自家用電気工作物を設置するものが「許可」を受けて主任技術者の免状を受けてないものを主任技術者に選任することができることが規定されている。電気法規にはたびたび「許可」と「承認」が出てくるので、法律用語としての違いをまと... 2021.10.27 電験
C/C++/C# C言語で漸化式を解く 漸化式とは前回計算した値を使い今の値を計算するような式である。今回は簡単な漸化式\begin{align}a_n=a_{n-1}+b\end{align}の形をした漸化式をC言語で計算する。ソース#include "stdio.h"doub... 2021.10.26 C/C++/C#プログラミング数学
プログラミング 零次ホールドのボード線図 零次ホールドの伝達関数は\begin{align}H(s)=\frac{1-e^{-sT}}{s}\end{align}\(T=0.1\)でボード線図を書くと次のようになる。\(T\)を変化させるほどにゲインが下がる。これはサンプル&ホール... 2021.10.24 プログラミング制御工学
制御工学 「制御基礎理論―古典から現代まで」を買いました 中野先生の本を買いました。・旧版・新版目次自動制御信号の伝達と伝達関数ブロック線図の構成要素ブロック線図の等価変換微分・積分要素のブロック線図等価変換の応用シグナルフロー線図ラプラス変換と自動制御ラプラス変換とラプラス変換表ラプラス逆変換と... 2021.10.24 制御工学本
MATLAB/simulink MATLABを使って零次ホールドを試す matlabを使って零次ホールドを試す。対象のシステムは\begin{align}G=\frac{s}{1+s}\end{align} 零次ホールドは\begin{align}H=\dfrac{1-e^{-sT}}{s}\end{align... 2021.10.23 MATLAB/simulinkディジタル制御プログラミング制御工学
ディジタル制御 システムの離散化と零次ホールド D/Aなどにより現在の出力が次の出力に移るまでの出力は一定値に保持されるのがふつうである。これを零次ホールドという。零次ホールドの伝達関数は\(u(t)-u(t-1)\)に対応するようにすればよいので\begin{align}G(s)= \... 2021.10.22 ディジタル制御制御工学古典制御
MATLAB/simulink MATLABで楕円を書く 楕円の座標は\begin{align}x&=a \cos \theta\\y&=b \sin \theta\end{align}で計算できる。\(a=b\)の時、円になる。a=2;b=5;theta=-2*pi:0.01:2*pi;x=a*... 2021.10.22 MATLAB/simulinkプログラミング幾何
python classを使って単層パーセプトロンを定義しORを実装する これの続き。単層パーセプトロンをclass定義して、動作確認にORを計算する。import mylibNN1 = mylib.NN()NN1.w1 = 0.5NN1.w2 = 0.5NN1.b = -0.2print(NN1.single_... 2021.10.20 pythonプログラミング機械学習
python 単層パーセプトロンを使ってORを作る 単層パーセプトロンを使ってORを作る。ORはABX000011101111import mylibprint(mylib.OR(0,0))print(mylib.OR(0,1))print(mylib.OR(1,0))print(mylib... 2021.10.18 pythonプログラミング機械学習
ディジタル制御 双一次変換を使って一次遅れ系の伝達関数を離散化する 一次遅れ系の伝達関数\begin{align}G(s)=\frac{K}{Ts+1}\end{align} を双一次変換で離散化する。\(s\)に \begin{align}s=\frac{2(1-z^{-1})}{ T_{s} (1+z^... 2021.10.12 ディジタル制御制御工学古典制御
MATLAB/simulink MATLABで忘却係数付き逐次最小二乗法を実装する 忘却係数付き逐次最小二乗法の更新則は \begin{align}\hat{\theta}_{N} &= \hat{\theta}_{N-1} + \dfrac{P_{N-1} z_{N} }{\rho + z_{N}^{T} P_{N-1}... 2021.10.11 MATLAB/simulink制御工学
制御工学 忘却係数付き逐次最小二乗法 忘却係数付き逐次最小二乗法とは次のようなものである。・評価関数\begin{align}J_{N}= \sum_{i=1}^{N} \rho^{N-i} \left ( y_{i} - z_{i}^{T} \theta \right )^2... 2021.10.10 制御工学
MATLAB/simulink インボリュート曲線を描く 歯車の設計にはインボリュート曲線が使われる。今回は基礎円とそこから延びるインボリュート曲線を描く。インボリュート曲線とは円柱に巻き付けられた糸を撓ませることなく引き出した時、糸の先端がたどる軌跡を示す曲線を言う。媒介変数を用いて\begin... 2021.10.09 MATLAB/simulinkプログラミング機械
数学 簡単な場合の最小二乗法 回帰式を\begin{align}\hat{y}=Ax+B\end{align}とする。残差の二乗和は\begin{align}J = \sum e_i^2 = \sum \{ y_i - (Ax_i + B) \}^2\end{align... 2021.10.06 数学
python 単層パーセプトロンを使ってANDを作る 単層パーセプトロンを使ってANDを作る。ANDはABX000010100111となるような演算である。一方で単層パーセプトロンとはそれぞれの入力\(x\)に重み \( w \) を乗じて和をとったもので\begin{align}y=\sum... 2021.10.06 pythonプログラミング機械学習
制御工学 オペアンプを使ってPID制御器を作る #1 以前MATLABでPID制御をシミュレーションした。今回はアナログ電子回路でPID制御を実装する。簡単に作る場合はオペアンプを用いればよく、かなり単純である。次回以降理論を追いつつ設計する。 2021.10.06 制御工学古典制御電子回路
C/C++/C# C言語でFizz Buzz これの続き。#include<stdio.h>int main() { int i, N = 36; for (i = 1; i <= N; i++) { if ((i % 3 == 0) && (i % 5 == 0)) { printf... 2021.10.04 C/C++/C#プログラミング
MATLAB/simulink MATLAB2021aにおけるfor文の計算速度 MATLABを使うときよく言われるのは「for文は遅い」だと思う。今回は2021aでその速度を調べた。使用したソースコードN=100000000;A1=1:1:N;A2=1:1:N;B1=zeros(1,N);ticfor i=1:1:NB... 2021.10.03 MATLAB/simulinkプログラミング