線形システム演習

科目基礎情報

学校 苫小牧工業高等専門学校 開講年度 令和05年度 (2023年度)
授業科目 線形システム演習
科目番号 0001 科目区分 専門 / 必修
授業形態 演習 単位の種別と単位数 履修単位: 2
開設学科 創造工学科(情報科学・工学系情報科学・工学コース) 対象学年 5
開設期 通年 週時間数 前期:2 後期:2
教科書/教材 ハンドアウトまたはWebClass経由での授業資料の配布を前提とする。
[参考図書] Philipp K. Janert 著 · 野原 勉 監訳 · 星 義克、米元 謙介 訳,エンジニアのためのフィードバック制御入門(2014),オライリー・ジャパン,ISBN: 978-4-87311-684-6。
(原書) Philipp K. Janert, "Feedback Control for Computer Systems," Oct. 2013, O'Reilly Media, Inc., ISBN: 9781449361693.
担当教員 吉村 斎

到達目標

(1) 位置,速度と微分のつながり,工学分野での微分の表記と微分方程式の意味,指数関数,制御とは何か,制御方法の違いを理解し,説明できる。制御系の物理モデルを古典と現代の制御理論に適合するモデルとして表現できる。
(2) 静的システム,動的システムおよび機械系,電気系のモデルの表し方を理解し,説明できる。古典制御理論を用いた制御系の基本的な設計ができ,その説明ができる。
(3) ラプラス変換の概念,動的システムの伝達関数,およびシステムのアナロジーを理解し,説明できる。
(4) 動的システムの応答とは何か,インパルス応答とその求め方,ステップ応答とその求め方を理解し,説明できる。
(5) 過渡特性,定常特性の意味,1次遅れ系のインパルス応答やステップ応答から,システムの過渡応答特性や定常特性を調べる方法,システムの極とは何か,またその意味を理解し,説明できる。
(6) 2次遅れ系のインパルス応答の求め方,2次遅れ系の過渡特性の形がシステムのパラメータの違いによってどのように異なるかを理解し,説明できる。
(7) システムの定常特性と最終地の定理を用いた定常値の求め方,極と過渡特性の関係からシステムの安定性調べる方法,ラウスの安定判別法を理解し,説明できる。
(8) フィードフォワード制御,フィードバック制御,制御系の設計,内部安定性,コントローラの設計パラメータを理解し,説明できる。
(9) PID制御,各制御法の役割と違いを理解し,説明できる。
(10) 制御系設計において満たすべき望ましい定常特性,種々の目標値や外乱に対する定常誤差の計算方法,定常偏差をおとするコントローラの設計方法を理解し,説明できる。
(11) システムの周波数応答,1次遅れ系の数は数特性,ボード線図の読み取り方を理解し,説明できる。
(12) ボード線図の合成,2次遅れ系のボード線図の特徴,周波数伝達関数とベクトル軌跡を理解し,説明できる。
(13) ナイキストの安定判別法,ゲイン余裕,位相余裕,安定余裕と制御系の応答の関係を理解し,説明できる。
(14) 制御系の評価とループ成形法の関係,ループ成形法による設計での重要点,位相遅れ,進みコントローラの設計の考え方とフィードバック制御系の特性の関係を理解し,説明できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安到達レベルの目安(可)未到達レベルの目安
評価項目1 達成目標(1)~(14)に使用する式の意味や英語を含む用語について説明できる。80%以上70%以上80%未満60%以上70%未満60%未満
評価項目2 達成目標(1)~(14)に必要な式の導出や計算ができる。80%以上70%以上80%未満60%以上70%未満60%未満
評価項目3 達成目標(1)~(14)に必要な数値シミュレーションをプログラムできる。80%以上70%以上80%未満60%以上70%未満60%未満
評価項目4 達成目標(1)~(14)を通して,制御系の解析,設計を行うことができる。80%以上70%以上80%未満60%以上70%未満60%未満
評価項目5 達成目標(1)~(14)の授業ノート・レポートおよび数値シミュレーションのプログラム・演習を行い,提出できる。80%以上70%以上80%未満60%以上70%未満60%未満

学科の到達目標項目との関係

 Ⅰ 人間性  1 Ⅰ 人間性
 Ⅱ 実践性  2 Ⅱ 実践性
 Ⅲ 国際性  3 Ⅲ 国際性
 CP2 各系の工学的専門基盤知識,および実験・実習および演習・実技を通してその知識を社会実装に応用・実践できる力  5 CP2 各系の工学的専門基盤知識,および実験・実習および演習・実技を通してその知識を社会実装に応用・実践できる力
 CP3 課題の本質を理解し,正しい倫理観の下で,自分の意見を論理的に表現できる力  6 CP3 課題の本質を理解し,正しい倫理観の下で,自分の意見を論理的に表現できる力
 CP4 他者を理解・尊重し,協働できるコミュニケーション能力と人間力  7 CP4 他者を理解・尊重し,協働できるコミュニケーション能力と人間力
 CP5 国際的素養を有し,継続的に自ら学ぶ力  8 CP5 国際的素養を有し,継続的に自ら学ぶ力

教育方法等

概要:
日本語,英語,数学,物理,電気・電子および情報の基礎知識を総合的に適用することで,さまざまな工学的応用分野で利用されている古典制御理論を学習する。
前期について,この科目は企業で「ロボットコントローラの設計」を担当していた教員が,その経験を活かし,「制御工学の古典制御の特性,最新の設計手法等」について演習形式で授業を行うものである。
授業の進め方・方法:
この科目は学修単位科目のため,事前・事後学習としてレポートを実施する。
授業に合わせて行う小テスト,授業ノート・レポートおよびプログラム演習を提出する必要がある。授業ノート・レポートとプログラム演習を活用して自学自習に取り組み,小テストに向けて準備することが必要である。授業ノート・レポートとプログラム演習は,指定されたファイル形式で提出期限までに,WebClassから提出すること。内容が不適切な場合には再提出を求めることがある。授業ノート・レポートとプログラム演習をすべて提出することが必要である。達成目標に示す単元ごとの小テスト,授業ノート・レポートおよびプログラム演習を100点法で採点し,小テスト40%,授業ノート・レポート30%,プログラム演習30%の割合で評価する(なお,小テストを実施しない場合,授業ノート・レポート50%,プログラム演習50%の割合で評価する)。
注意点:
準備する用具:ノート,A4レポート用紙,筆記用具,英和辞書,関数電卓。
前提となる知識:微分・積分,線形代数,ラプラス変換,電気回路・電子回路,ディジタル信号処理,3年次および4年次に行われる情報科学・工学実験II・IIIの知識が必要になる。また,説明のための文章力も必要である。
その他注意事項:理解度を確認するため,授業開始直後に前回の内容に関する確認試験を演習課題として行う場合があるので復習しておくこと。なお,授業予定に変更がある場合,授業中または当該開講日の前日までに連絡するので注意すること。
演習では前期で数値計算ソフトウェアScilab,後期はPythonを多用する。リファレンスやコーディング例を事前に調査し,積極的な活用ができるよう準備することが望ましい。

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 制御の基礎概念 制御の基礎概念を理解し,説明できる。
2週 制御の基礎概念 制御の基礎概念を理解し,説明できる。
3週 Scilabによるプログラミング - 微分方程式 Scilabのプログラミングを習得し,本講義で扱う制御系の応答をプログラミングできる。
4週 Scilabによるプログラミング - 伝達関数 Scilabのプログラミングを習得し,本講義で扱う制御系の応答をプログラミングできる。
5週 Scilabによるプログラミング - 極と零点 Scilabのプログラミングを習得し,本講義で扱う制御系の応答をプログラミングできる。
6週 Scilabによるプログラミング - 根軌跡法 Scilabのプログラミングを習得し,本講義で扱う制御系の応答をプログラミングできる。
7週 Scilabによるプログラミング - 線形モデルを作る(フィードバック制御) 線形モデルを理解し,説明できる。
8週 Scilabによるプログラミング - 線形モデルを作る(フィードバック制御) 線形モデルを理解し,説明できる。
2ndQ
9週 Scilabによるプログラミング - 線形モデルを作る(システムとダイナミクス) 動的システムの応答とは何か,インパルス応答とその求め方,ステップ応答とその求め方を理解し,説明できる。
10週 Scilabによるプログラミング - 線形モデルを作る(システムとダイナミクス) 動的システムの応答とは何か,インパルス応答とその求め方,ステップ応答とその求め方を理解し,説明できる。
11週 システムの要素 過渡特性,定常特性の意味,1次遅れ系のインパルス応答やステップ応答から,システムの過渡応答特性や定常特性を調べる方法,システムの極とは何か,またその意味を理解し,説明できる。
12週 システムの要素 過渡特性,定常特性の意味,1次遅れ系のインパルス応答やステップ応答から,システムの過渡応答特性や定常特性を調べる方法,システムの極とは何か,またその意味を理解し,説明できる。
13週 システムの要素 2次遅れ系のインパルス応答の求め方,2次遅れ系の過渡特性の形がシステムのパラメータの違いによってどのように異なるかを理解し,説明できる。
14週 システムの要素 2次遅れ系のインパルス応答の求め方,2次遅れ系の過渡特性の形がシステムのパラメータの違いによってどのように異なるかを理解し,説明できる。
15週 システムの安定性 極の求め方、極と過渡特性の関係からシステムの安定性を調べる方法、ラウスの安定判別法を理解し、説明できる。
16週
後期
3rdQ
1週 PID制御 (1) PID制御,各制御法の役割と違いを理解し,説明できる。
2週 PID制御 (2) PID制御,各制御法の役割と違いを理解し,説明できる。
3週 PIDチューニング (1) チューニングの目的,パラメータ変更による効果,代表的なチューニング法について理解し,主種のモデルへ適用し,説明できる。
4週 PIDチューニング (2) チューニングの目的,パラメータ変更による効果,代表的なチューニング法について理解し,主種のモデルへ適用し,説明できる。
5週 実装上の問題点 (1) 理論上と実際の実相を考えるうえで問題となるワインドアップやサンプリング間隔,非線形性などについて理解し,問題点と解決方法を説明できる。
6週 実装上の問題点 (2) 理論上と実際の実相を考えるうえで問題となるワインドアップやサンプリング間隔,非線形性などについて理解し,問題点と解決方法を説明できる。
7週 発展的なフィードバック制御 (1) ゲインスケジューリングや,フィードフォワードを併用した制御系について,その動作を実験的に理解し,説明できる。
8週 発展的なフィードバック制御 (2) ゲインスケジューリングや,フィードフォワードを併用した制御系について,その動作を実験的に理解し,説明できる。
4thQ
9週 シミュレーションによる制御系の検証 (1) システムの周波数応答,1次遅れ系の周波数特性,ボード線図の読み取り方を理解し,説明できる。
10週 シミュレーションによる制御系の検証 (2) ボード線図の合成,2次遅れ系のボード線図の特徴,周波数伝達関数とベクトル軌跡を理解し,説明できる。
11週 ケーススタディ(1) - キューの長さの制御 実問題に対してこれまで学んだ各制御手法を適用し,所望の動作を実現できる。また,その動作を説明できる。
12週 ケーススタディ(2) - 冷却ファンの制御 実問題に対してこれまで学んだ各制御手法を適用し,所望の動作を実現できる。また,その動作を説明できる。
13週 ケーススタディ(3) - ゲームエンジンのメモリ消費制御 実問題に対してこれまで学んだ各制御手法を適用し,所望の動作を実現できる。また,その動作を説明できる。
14週 ケーススタディ(4 - 1) - ケーススタディのまとめ (1) 実問題に対してこれまで学んだ各制御手法を適用し,所望の動作を実現できる。また,その動作を説明できる。
15週 ケーススタディ(4 - 2) - ケーススタディのまとめ (2) 実問題に対してこれまで学んだ各制御手法を適用し,所望の動作を実現できる。また,その動作を説明できる。
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4
変数の概念を説明できる。4
データ型の概念を説明できる。4
制御構造の概念を理解し、条件分岐を記述できる。4
制御構造の概念を理解し、反復処理を記述できる。4
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
主要な言語処理プロセッサの種類と特徴を説明できる。3
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。3
プログラミング言語は計算モデルによって分類されることを説明できる。3
主要な計算モデルを説明できる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4
ソフトウェアアルゴリズムの概念を説明できる。3
与えられたアルゴリズムが問題を解決していく過程を説明できる。3
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。3
整列、探索など、基本的なアルゴリズムについて説明できる。3
時間計算量によってアルゴリズムを比較・評価できることを説明できる。3
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。3
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。3
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。3
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。3
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。3
ソフトウェアを中心としたシステム開発のプロセスを説明できる。3
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。4
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。4
コンピュータシステムネットワークコンピューティングや組込みシステムなど、実用に供せられているコンピュータシステムの利用形態について説明できる。3
デュアルシステムやマルチプロセッサシステムなど、コンピュータシステムの信頼性や機能を向上させるための代表的なシステム構成について説明できる。3
集中処理システムについて、それぞれの特徴と代表的な例を説明できる。3
分散処理システムについて、特徴と代表的な例を説明できる。3
システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。3
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。3
プロジェクト管理の必要性について説明できる。3
WBSやPERT図など、プロジェクト管理手法の少なくとも一つについて説明できる。3
ER図やDFD、待ち行列モデルなど、ビジネスフロー分析手法の少なくとも一つについて説明できる。3
分野横断的能力汎用的技能汎用的技能汎用的技能日本語と特定の外国語の文章を読み、その内容を把握できる。3
他者とコミュニケーションをとるために日本語や特定の外国語で正しい文章を記述できる。3
他者が話す日本語や特定の外国語の内容を把握できる。3
日本語や特定の外国語で、会話の目標を理解して会話を成立させることができる。3
円滑なコミュニケーションのために図表を用意できる。3
円滑なコミュニケーションのための態度をとることができる(相づち、繰り返し、ボディーランゲージなど)。3
他者の意見を聞き合意形成することができる。3
合意形成のために会話を成立させることができる。3
グループワーク、ワークショップ等の特定の合意形成の方法を実践できる。3
書籍、インターネット、アンケート等により必要な情報を適切に収集することができる。3
収集した情報の取捨選択・整理・分類などにより、活用すべき情報を選択できる。3
収集した情報源や引用元などの信頼性・正確性に配慮する必要があることを知っている。3
情報発信にあたっては、発信する内容及びその影響範囲について自己責任が発生することを知っている。3
情報発信にあたっては、個人情報および著作権への配慮が必要であることを知っている。3
目的や対象者に応じて適切なツールや手法を用いて正しく情報発信(プレゼンテーション)できる。3
あるべき姿と現状との差異(課題)を認識するための情報収集ができる3
複数の情報を整理・構造化できる。3
特性要因図、樹形図、ロジックツリーなど課題発見・現状分析のために効果的な図や表を用いることができる。3
課題の解決は直感や常識にとらわれず、論理的な手順で考えなければならないことを知っている。3
グループワーク、ワークショップ等による課題解決への論理的・合理的な思考方法としてブレインストーミングやKJ法、PCM法等の発想法、計画立案手法など任意の方法を用いることができる。3
どのような過程で結論を導いたか思考の過程を他者に説明できる。3
適切な範囲やレベルで解決策を提案できる。3
事実をもとに論理や考察を展開できる。3
結論への過程の論理性を言葉、文章、図表などを用いて表現できる。3

評価割合

課題合計
総合評価割合100100
基礎的能力00
専門的能力100100