プログラミング

科目基礎情報

学校 高知工業高等専門学校 開講年度 令和06年度 (2024年度)
授業科目 プログラミング
科目番号 N3015 科目区分 専門 / 必修
授業形態 講義・演習 単位の種別と単位数 履修単位: 2
開設学科 SD エネルギー・環境コース 対象学年 3
開設期 通年 週時間数 2
教科書/教材 M.Banzi「Arduinoをはじめよう」,この他に授業に必要な情報は資料として配布する。参考書:「明快入門C」などのC言語解説書
担当教員 芝 治也

到達目標

1.PC等でプログラム開発を行う方法を修得し,C言語による高度なプログラミング技法を用いたプログラム開発を行うことができる。
2.マイクロコンピュータモジュールを制御するための基礎技術を修得し,制御のためのプログラム開発を行うことができる。
3.マイクロコンピュータで必要となる外部回路を設計できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1PC等の基本操作が行え,C言語による高度なプログラミング技法を用いたプログラムを記述することができる。C言語による高度なプログラミング技法を用いたプログラムを記述することができる。PC等の基本操作が行えず,C言語による高度なプログラミング技法を用いたプログラムを記述することができない。
評価項目2課題をより効果的に解決するための制御プログラムを記述できる。課題を解決するための制御プログラムを記述できる。課題を解決するための制御プログラムを記述できない。

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

学習・教育到達度目標 (B) 説明 閉じる

教育方法等

概要:
「プログラミング基礎」で学んだ内容を基礎とし,PC等でプログラム開発する方法とマイクロコンピュータを中心とした回路設計技法の修得を目指す。Arduinoマイコンモジュールを制御するための基礎技術を学び制御プログラムの記述手法を修得する。体験的な学習を通じて,論理的思考能力の修得および問題解決能力の向上を目指す。
授業の進め方・方法:
演習内容について,教科書やプリントを用いて,1時間程度説明する。残りの時間を使って,コンピュータを用いた演習を行う。演習は動作確認を行うことで終了する。演習の内容を報告書にまとめ,求めに応じて提出する。定期試験も実施する。
注意点:
定期試験を70%,平素の学習状況(課題等。自主性,積極性に欠ける場合には減点することもある)と報告書(内容,提出期限の順守状況)や相互評価などを30%の割合で総合的に評価する。報告書には,作業を通じて理解できた内容,考察が含まれていること。学年の評価は前学期と後学期の平均とする。
初めから,教えてもらうつもりでは,問題を解決する能力の向上は望めない。授業中はノートをとり,わからない内容については積極的に質問すること。他の学生と相談することは構わないが,各自が主体的に取り組むことが必要である。授業時間内に作業完了しない場合には,放課後等に作業することも必要となる。

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

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス 授業の進め方,評価方法などについて理解する。
エディタの基本操作,実行可能プログラムの作成法, ディレクトリの基本操作などについて理解する。
2週 Arduinoマイコンモジュールの概要とプログラム開発環境の使用方法について学ぶ Arduinoモジュールの構造と機能概要およびプログラム開発環境の使い方を理解する。
3週 C言語の主要命令の振り返りとArduino独自の命令 C言語の主要命令を思い出す。Arduino独自の命令を理解する。
4週 出力ポートの活用手法について学ぶ 出力ポートに接続されたLEDの点灯制御手法を理解する。制御プログラムを実装する。
5週 入力ポートの活用手法について学ぶ 入力ポートに接続されたスイッチ回路の設計手法を理解する。実習用回路を作成する。
6週 生成AIを使った課題解決実習 AIを使って課題を解決させる実習を行う。人間が考えるプログラムと生成AIが出力するプログラムの違いやAIを利用する利点・危険性について理解する。
7週 PWM制御による電力制御について学ぶ PWM制御により電力を制御する手法を理解する。制御プログラムを実装する。
8週 PWM制御による電力制御について学ぶ PWM制御により電力を制御する手法を理解する。制御プログラムを実装する。
2ndQ
9週 モータドライブ回路とモータの回転制御手法について学ぶ ハーフブリッジ,フルブリッジ回路によるモータの回転制御手法について学ぶ。
10週 モータドライブ回路とモータの回転制御手法について学ぶ モータドライブ回路とモータの回転制御プログラムを実装する。
11週 A/D変換について学ぶ アナログ量をディジタル量に変換する原理とマイコンによる処理プログラムについて学ぶ。
12週 A/D変換について学ぶ アナログ量をディジタル量に変換する原理とマイコンによる処理プログラムについて実装する。
13週 A/D変換について学ぶ アナログ量をディジタル量に変換する原理とマイコンによる処理プログラムについて実装する。
14週 割り込み処理について学ぶ マイコンの割り込み要因と種別,その応用例について学ぶ。
15週 割り込み処理について学ぶ 状態変化割り込み処理を実装する。
16週 期末試験 1週から15週までに学んだ知識が定着していることを確認する。
後期
3rdQ
1週 タイマー割り込みについて学ぶ タイマー割り込みについて学ぶ。
2週 タイマー割り込みについて学ぶ タイマー割り込み処理を実装する。
3週 タイマー割り込みについて学ぶ タイマー割り込み処理を実装する。
4週 タイマー割り込み,状態変化割り込みを応用する タイマー割り込みと状態変化割り込みを併用した処理を実装する。
5週 通信規格について学ぶ UAER,I2Cなどの通信規格について学ぶ。
6週 複数の機器間で通信を行う 通信規格に則って複数の機器間の情報通信を実装する。
7週 複数の機器間で通信を行う 通信規格に則って複数の機器間の情報通信を実装する。
8週 複数の機器間で通信を行う 通信規格に則って複数の機器間の情報通信を実装する。
4thQ
9週 EEPROMについて学ぶ, EEPROMを活用したデータ保管について学ぶ。
10週 EEPROMについて学ぶ, EEPROMを活用したデータ保管を実装する。
11週 総合実習 数名のグループで課題解決型演習を行う。自ら課題を設定し,Arduinoを中心とした装置により課題解決を検討する。課題解決手法を提案する。
12週 総合実習 課題解決のための装置を設計する。
13週 総合実習 課題解決のための装置を製作する。制御プログラムを実装する。
14週 総合実習 課題解決のための装置を製作する。制御プログラムを実装する。
15週 総合実習,相互評価 各グループの作品を相互評価する。
16週 期末試験 1週から15週までに学んだ知識が定着していることを確認する。

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

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3
論理演算と進数変換の仕組みを用いて基本的な演算ができる。3
コンピュータのハードウェアに関する基礎的な知識を活用できる。3
情報伝達システムやインターネットの基本的な仕組みを把握している。3
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。3
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。3
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。3
情報セキュリティの必要性および守るべき情報を認識している。3
個人情報とプライバシー保護の考え方についての基本的な配慮ができる。3
インターネット(SNSを含む)やコンピュータの利用における様々な脅威を認識している3
インターネット(SNSを含む)やコンピュータの利用における様々な脅威に対して実践すべき対策を説明できる。3
専門的能力分野別の専門工学機械系分野計測制御プログラムを実行するための手順を理解し、操作できる。2
定数と変数を説明できる。2
整数型、実数型、文字型などのデータ型を説明できる。2
演算子の種類と優先順位を理解し、適用できる。2
算術演算および比較演算のプログラムを作成できる。2
データを入力し、結果を出力するプログラムを作成できる。2
条件判断プログラムを作成できる。2
繰り返し処理プログラムを作成できる。2
一次元配列を使ったプログラムを作成できる。2
計測制御自動制御の定義と種類を説明できる。2
フィードバック制御の概念と構成要素を説明できる。2

評価割合

試験発表相互評価平素の学習状況ポートフォリオ報告書合計
総合評価割合70055020100
基礎的能力100050015
専門的能力5000002070
分野横断的能力100500015