はじめに

このガイドは、フィードバック制御や伝達関数を「これから学びたい人」や「基礎をやさしく復習したい人」に向けて、ゆっくり丁寧に解説することを目指しています。
学生の方、制御設計に関わる技術者の方、また「制御ってどんな世界なんだろう?」と気になっている方にも読みやすい内容です。
ここで身につくこと
伝達関数の意味や役割、フィードバック制御の基本構成、伝達関数を使った制御系の解析・設計の流れ、そしてよく使われるPID制御とのつながりまでやさしく紹介します。
実際の例を交えながら、「なんとなく分かった」ではなく “自分で考えられるようになる理解” を目指します。
読み進めるときのポイント
まずは第2章で「伝達関数ってこういうものなんだ」という感覚をつかみ、第3章でフィードバックの仕組みをゆっくり確認しましょう。
そのあとで解析や設計の章に進むと、理解が自然につながっていきます。
実践パートでは、手を動かしながら読み進めるとより定着しやすくなります。
読むときの心構え
微分やラプラス変換を少し知っているとスムーズですが、本編でも必要に応じてやさしく補足しているのでご安心ください。
あわてずに、一つひとつの章をじっくり進めていく気持ちで読んでいただければ大丈夫です。
伝達関数とは何か
まずは伝達関数の定義から
伝達関数とは、システムの「入力」と「出力」がどうつながっているかを、ラプラス変換を使って表した数式のことです。
時間とともに性質が変わらない「線形時不変システム」に対して使われます。
入力を U(s)、出力を Y(s) とすると、伝達関数 G(s) は
G(s) = Y(s) / U(s)
と書けます。
ラプラス変換の変数 s を使うことで、もともと難しい微分方程式が、シンプルな“代数の計算”に変わり、扱いやすくなります。
伝達関数を使うと何がメリット?
本来なら微分方程式を解かないと分からないシステムの動きを、たった1つの関数 G(s) にまとめられるのが大きなメリットです。
- 計算がラクになる
- システムの特徴がひと目で分かる
- 周波数ごとの応答が調べやすい
- フィードバック制御の設計に使いやすい
こうした理由から、制御工学の中心にある考え方として広く使われています。
イメージとしては、「中身が見えない箱(ブラックボックス)だけれど、どう反応するのかが分かる便利な関数」という感覚です。
身近な例で見てみよう
● RC回路の場合
入力電圧 → コンデンサ電圧 の関係は
G(s) = 1 / (RC s + 1)
で表せます。
高い周波数の信号は通しにくく、ゆっくり変わる信号はそのまま通す“ローパスフィルタ”としての性質が直感的に見えてきます。
● 積分器の例
G(s) = 1 / s は「積分する働き」を表します。
入力がたまっていくような応答(累積される動き)になります。
このように、伝達関数を見るとシステムがどんなふるまいをするのかが一気に分かるのです。
極(ポール)と零点(ゼロ)のイメージ
伝達関数は分母と分子で、
- 分母にある値 → 極(ポール)
- 分子にある値 → 零点(ゼロ)
と呼びます。
極は「システムが特に反応しやすい場所」で、安定性とも深く関係します。
零点は「特定の周波数で応答を弱める働き」を持っています。
極と零点の位置を見るだけで、システムのクセが読み取れるようになっていくのが制御の面白いところです。
注意しておきたい点
伝達関数が使えるのは、線形で時間によって性質が変わらないシステムだけです。
非線形な動きをする装置や、時間とともに変わるシステムでは、そのまま適用できない場合があります。
フィードバック制御の基本構成
フィードバック制御ってどんな仕組み?
フィードバック制御とは、“今の状態” を見ながら “どう動かすか” を自動で調整する仕組みです。
出力が目標値とどれくらい違うのかを常にチェックし、その差に応じて操作量を変える ― これがフィードバックの基本的な考え方です。
「閉ループ制御」と呼ばれることもあり、外からの影響(風や気温変化など)があっても、目標値に近づけやすいのが大きな特徴です。
フィードバック制御を形にした“基本のブロック図”
目標値 r
システムが到達したい理想の値。
例:室温を22℃にしたい → r = 22℃
出力 y
実際に測った値。センサーが計測します。
偏差 e = r - y
目標と現実の“ずれ”。このずれがコントローラの判断材料になります。
コントローラ
偏差 e をもとに「どれくらい操作すればいいか」を決める頭脳の部分。
例:サーモスタット、PIDコントローラなど。
プラント(制御対象)
実際に動いている装置そのもの。
例:暖房機、モーター、車のエンジン など。
センサ・アクチュエータ
センサ:状態を測る役割
アクチュエータ:操作量を実際の力や動きに変える役割
どんな流れで動いているの?(やさしい例)
このループが繰り返されることで、システムは少しずつ目標に近づいていきます。
身近なフィードバック制御の例
室温を一定に保つ空調システム
サーモスタットが温度を見ながら暖房・冷房を調整します。
車の巡航(クルーズ)制御
設定した速度からズレると、エンジン出力が自動で調整され、一定速度を保とうとします。
フィードバックの良いところと気をつけたいこと
フィードバック制御の最大の強みは、外乱(外からの変化)に強いことです。
たとえば気温が急に下がっても、自動で操作が強められ、室温を保ちやすくなります。
ただし、コントローラの設定がうまくないと、
・応答が遅くなる
・振動して安定しない
・目標にうまく近づけない
といった問題が出ることがあります。
そのため、コントローラの調整(ゲイン調整)やモデル理解がとても重要になります。
フィードバック制御系における伝達関数の使い方
まずは入出力の関係を伝達関数で見てみよう
制御対象を P(s)、コントローラを C(s) としたとき、もっとも基本的な「単位フィードバック制御系」の入出力関係は
Gy(s)=P(s)C(s)1+P(s)C(s)G_y(s)=\frac{P(s)C(s)}{1+P(s)C(s)}Gy(s)=1+P(s)C(s)P(s)C(s)
のように表されます。
この式は、コントローラのゲインや形(比例・積分・微分など)が変わると “システム全体の反応がどう変わるのか” がそのまま見える、とても便利な関係式です。
たとえば車のクルーズコントロールの場合
- P(s) … 車両の動く特性
- C(s) … 速度を調整するコントローラ
C(s) のゲインを上げるほど、設定速度への追従は速くなる一方、不安定になりやすいというトレードオフも読み取れます。
設計で大切になるポイント
応答の速さ(スピード感)
分子の P(s)C(s) が大きいほど、一般的には応答が速くなります。
ただしゲインを上げすぎると、振動(オーバーシュート)や不安定化につながるため、適度なバランスが重要です。
定常偏差(目標とのズレ)
「目標値にピタッと合わせたい」という場合に鍵になるのが 積分の働き(1/s) です。
コントローラ C(s) に積分を入れることで、時間が経つにつれてズレが小さくなり、最終的に偏差ゼロを実現しやすくなります。
外乱やノイズへの強さ
外乱が出力にどれくらい影響するか、センサーのノイズがどこまで伝わるか、といったことも伝達関数で計算できます。
これにより、
どの周波数帯を抑えたいか
どこを強調したくないか
などの判断ができ、より“実用的な”設計につながります。
実務ではどう使われているの?
実際の設計では、次のような流れが一般的です。
1.制御器の候補を 伝達関数 C(s) としてモデル化
2.シミュレーションで
- 応答の速さ
- 定常偏差
- 外乱応答
を確認
3.実機で微調整し、安全性と性能の両立を図る
伝達関数を使うことで、事前の検討がしやすくなり、本番での調整時間も大幅に短縮できます。
伝達関数はフィードバック設計の“共通言語”
フィードバック制御では、
- 性能
- 安定性
- 外乱への強さ
- ノイズへの弱さ
など、さまざまな条件を同時に満たす必要があります。
そのとき、伝達関数という共通の表現を使うことで、システム全体のふるまいをひと目で理解しやすくなるのが最大の魅力です。
フィードバック制御と伝達関数の設計・解析の利点
システムのつながりを“やさしく”表せる
伝達関数を使うと、システムの入出力関係をとてもシンプルに表現できます。
微分方程式を直接いじる必要がなく、掛け算や割り算で組み合わせるだけで全体のふるまいが見えてきます。
たとえばモーターやサーボ装置を「ひとつの箱(ブロック)」として扱い、
それぞれを並べたりつないだりするだけで解析が進むため、初心者にも直感的です。
安定して動くかどうかを判断しやすい
フィードバック制御で重要なのは、システムが
おだやかに落ち着くか(安定)
それとも
暴れてしまうか(不安定)
です。
伝達関数では、極(ポール)の位置を見るだけで安定性の見通しが立ちます。
これにより、設計中に
この設定は安全か?
もっと安定させるにはどうすべきか?
といった判断がしやすくなり、むやみに試行錯誤する必要が減ります。
性能の特徴が“極と零点”でひと目で分かる
伝達関数に含まれる 極(ポール) と 零点(ゼロ) の分布から、
- 立ち上がりの速さ
- 振動しやすさ
- 周波数帯ごとの応答(ノイズに強いかどうか)
といった性能を読み取ることができます。
周波数特性を調べれば、外乱やノイズに強い設計がしやすくなり、「どこを補償すべきか」「どの帯域を抑えたいか」などが明確に見えてきます。
PID調整や補償器設計がスムーズ
PIDコントローラや各種補償器を設計するときも、伝達関数はとても役立ちます。
- ゲインを上げたら応答がどう変わる?
- 積分を入れると誤差はどれくらい減る?
- 位相補償を入れると安定性はどう変わる?
といった効果を 数式上で定量的に確認できるため、
実物を何度も調整しなくても、設計の候補を効率よく絞れます。
複雑なシステムも部分ごとに考えられる
実際のシステムは、センサ・アクチュエータ・制御器・対象など多くの要素で構成されます。
伝達関数なら、それぞれを分割して考え、あとで組み合わせて全体の性能を確認できます。
これにより、
- 担当者ごとに部分設計を進める
- 統合時に全体の伝達関数を確認する
といった 効率的なチーム設計 が可能になります。
実務で感じる大きなメリット
実際の開発現場では、伝達関数があることで
- 設計の反復が速くなる
- チーム内で共通の言葉として使える
- 部品交換や改良の影響をすばやく見積もれる
といった大きな利点があります。
モデルを更新するだけで「全体にどんな影響が出るか」が分かるため、
検討スピードが上がり、リスクの予測もしやすくなります。
伝達関数は、フィードバック制御の“基盤”ともいえる考え方です。
設計・解析・調整のすべての場面で中心的な役割を果たし、システムを深く理解するための心強いツールになります。
PID制御と伝達関数
PID制御を伝達関数で見るとどうなる?
PID制御は、もっとも広く使われているフィードバック制御の方法です。
この制御器をラプラス変換で表すと
C(s)=Kp+Kis+KdsC(s)=K_p + \frac{K_i}{s} + K_d sC(s)=Kp+sKi+Kds
となり、比例(P)、積分(I)、微分(D)の3つの働きがすべてひとつの式にまとまります。
伝達関数で表すことで、周波数応答や安定性を直感的に理解しやすくなるのが大きな利点です。
3つの成分が持つ役割
● 比例(P:K_p)
ずれ(偏差)が大きいほど、強く補正しようとする働きです。
応答を速くしますが、強くしすぎると振動が増えたり、バタつきやすくなります。
● 積分(I:K_i)
小さなずれが長く続くと、それをじわじわ解消する働きをします。
定常偏差をなくせるのが強みですが、入れすぎると応答が遅くなり、不安定に向かうことがあります。
● 微分(D:K_d)
ずれの“変化の速さ”に反応して、振れすぎを抑える役割を持ちます。
過渡応答をなめらかにしてくれますが、ノイズを拾いやすいため扱いに注意が必要です。
PIDの調整(チューニング)はこの順番が楽
PIDを調整するとき、次の流れにすると分かりやすく進められます。
- まず微分は0で固定
- 比例ゲイン K_p を上げて、速さの限界を探す
- 積分 K_i を加えて定常偏差を減らす
- 微分 K_d を入れて過渡的なブレを抑える
- 必要に応じて K_p を微調整する
この順番は「動きの骨格 → 誤差の補正 → 振れの抑制」という流れになるため、初心者でも理解しやすく安全です。
実装するときに気をつけたいこと
PIDは便利ですが、実装では次の点に注意が必要です。
- 微分成分はノイズを増幅しやすいので、フィルタ(ローパス)を入れて使うのが一般的
- 積分成分は飽和すると「巻き戻し(ワインドアップ)」が起こりやすいため、アンチワインドアップの処理を入れることが多い
- ゲイン調整は一度に大きく変えず、少しずつ試しながら進めるのが安全
PIDは奥深い制御ですが、伝達関数で理解すると、
「どの成分をどれくらい入れるとどんな動きになるのか」がはっきり見えるようになります。
実践的な設計・解析の流れ
ここでは、実際に制御系を設計するときの流れを 手順ごとにわかりやすく解説します。
対象は、一次遅れ系や「質量+ダンパ」のような基本モデルをイメージすると理解しやすくなります。
① システムのモデル化(まずは動きを“かたち”にする)
はじめに、対象となるプロセスのふるまいを数式で表します。
運動方程式・エネルギーバランス・実験データなどを使って微分方程式を作り、それをラプラス変換すれば伝達関数が得られます。
一次遅れの例: τdydt+y=Ku\tau \frac{dy}{dt} + y = K uτdtdy+y=Ku
ラプラス変換をすると G(s)=Kτs+1G(s)=\frac{K}{\tau s + 1}G(s)=τs+1K
実機では、ステップ応答などの識別実験から K や τ を推定することも多いです。
② コントローラの設計(目標に合わせて“どんな制御にするか”を決める)
次に、どんな性能を目指すのかを整理します。
- 速く追従したいのか
- 振動を抑えたいのか
- 定常偏差をなくしたいのか
たとえば
- PI制御 → 定常偏差を小さくしたいとき
- PDやリード補償 → 立ち上がりを速くしたいとき
- PID → バランスよく応答を整えたいとき
といったように、目的に応じてコントローラを選びます。
③ 閉ループ伝達関数の導出(システム全体の動きを確認)
ブロック線図から閉ループ伝達関数をまとめると、典型的には
Gcl(s)=Gc(s)Gp(s)1+Gc(s)Gp(s)G_{\text{cl}}(s)=\frac{G_c(s) G_p(s)}{1 + G_c(s) G_p(s)}Gcl(s)=1+Gc(s)Gp(s)Gc(s)Gp(s)
この式から、安定性と応答を決める 極(ポール)がどこにあるか をチェックします。
極の位置が、立ち上がり・振動・減衰などの特徴を決めるからです。
④ 応答解析・性能評価(実際の動きが“理想に近いか”を確かめる)
ここでは、次のような評価を行います。
- ステップ応答:立ち上がり時間、オーバーシュート、定常偏差
- 周波数応答(ボード線図):外乱やノイズに強いかどうか
- 根軌跡:ゲインを変えたときの極の動き
これらを使うと、性能と安定性のバランスが取れているかを分かりやすく確認できます。
⑤ パラメータの調整と検証(安全に仕上げていくステップ)
まずはシミュレーションでパラメータを調整し、そのあと小規模な実験で実機の様子を確かめます。
注意すべきポイントは、
- アクチュエータの飽和
- センサノイズ
- モデル誤差
などです。
必要に応じて、アンチワインドアップ や ロバスト化 の工夫を加え、実装段階でのトラブルを防ぎます。
実務で大切にしたいこと
- モデルと実機は必ず違いが出るため、識別→検証→再設計 を繰り返す姿勢が重要
- 実務では、性能そのものより ロバスト性(変動に強いこと) を優先する場面が多い
- 設計 → シミュレーション → 小規模実験 → 実装 の流れで進めると安全
まとめ
伝達関数は“制御を理解するための道しるべ”
本記事で扱ってきたように、伝達関数はフィードバック制御を学ぶうえで欠かせない道具です。
システムの入力と出力の関係をシンプルに表し、ブロック線図と組み合わせて考えることで 全体のふるまいを直感的に掴めるようになります。
伝達関数を使えば、応答の速さ・安定性・外乱への強さなど、設計で大切になる要素を定量的に評価でき、問題点にも早く気づけるようになります。
本章のポイントをやさしく整理
伝達関数は「システムの説明書」
入力に対してどんな応答を示すのかを、式ひとつで表現できます。
複雑な微分方程式を解く必要がなく、理解も進みやすくなります。
ブロック線図で全体像をつかめる
制御器・プラント・センサなどのつながりを図として確認でき、
組み合わせることでシステム全体の応答が計算できます。
周波数応答や極・零点の評価で安定性がわかる
設計の早い段階で「危ない動作」を見つけやすくなり、
応答の余裕をどれくらい確保できているかを確かめられます。
PIDなどの実用的な制御も伝達関数で整理できる
比例・積分・微分がどんな効果を持つかを数式で確認しながら、
チューニングの方向性をはっきりさせることができます。
実務では“理論 → 解析 → 実測”の繰り返しが大切
モデル化、設計、解析、実験を行き来することで性能が徐々に高まり、
より信頼できる制御系が作れるようになります。
おわりに
伝達関数は、理論と実測の間をつなぐ橋のような存在です。
まずはシンプルなモデルから始めて、少しずつ精度を上げていくことで理解が深まります。
制御は積み重ねるほど面白くなっていく分野です。
ぜひ、自分のペースでじっくり取り組んでみてください。