|| 英語(English)
学習支援計画書(シラバス) 検索システム
(全課程からの提供) 
授業科目区分 科目名 単位数 科目コード 開講時期 履修方法
(全課程からの提供)
リベラルアーツ系科目
文理横断
ドローンプログラミング(春期集中講義)
Drone Programming
1 G266-01 2024年度
修学規程第4条を参照
担当教員名
*印は、実務経験のある教員を示しています。
授業科目の学習・教育目標
キーワード 学習・教育目標
1.ドローン 2.Python 3.動画像処理 4.マルチプロセス 5.ネットワーク Pythonを使って,小型ドローン(Ryze Tech. Tello)をプログラミング制御する方法を学ぶ .
授業の概要および学習上の助言
Ryze Tech社が公開している仕様に従ってTelloとUDP通信し,機体制御及び機体情報の取得を行うマルチプロセスプログラム を作成する. 【開発環境】 ・オペレーティングシステム:Linux ・言語: Python3(使用モジュールは主に socket, multiprocessing, opencv, pygame, matplotlib) 【注意事項】 ・Pythonの基礎が十分身についていることを前提にしているため,授業内での説明はしない. ・短期で広範な内容が扱うため,授業スライドやプログラムを十分に予習・復習した上で毎回の授業に臨むこと.
教科書および参考書・リザーブドブック
教科書:指定なし 参考書:指定なし リザーブドブック:指定なし
履修に必要な予備知識や技能
【不可欠 】 Pythonの基礎(①変数とリスト,②条件分岐,③繰り返し,④関数定義と呼び出し,⑤モジュールの使用) 【不可欠 】 VisualStudio Codeなどのプログラミング用テキストエディタの使用経験 【出来れば】 Linuxの使用経験(ウィンドウ環境での操作経験があればよい.コマンド環境での操作経験はなくてもよい)
学生が達成すべき行動目標
No. 学科教育目標
(記号表記)
H 与えられた基礎的なプログラムを理解し,要求通りに改造を施すことができる.
達成度評価
評価方法
試験 クイズ
小テスト
レポート 成果発表
(口頭・実技)
作品 ポートフォリオ その他 合計
総合評価割合 0 0 0 0 0 0 100 100
指標と評価割合 総合評価割合 0 0 0 0 0 0 100 100
総合力指標 知識を取り込む力 0 0 0 0 0 0 50 50
思考・推論・創造する力 0 0 0 0 0 0 0 0
コラボレーションと
リーダーシップ
0 0 0 0 0 0 0 0
発表・表現・伝達する力 0 0 0 0 0 0 0 0
学習に取組む姿勢・意欲 0 0 0 0 0 0 50 50
※総合力指標で示す数値内訳、授業運営上のおおよその目安を示したものです。
評価の要点
評価方法 行動目標 評価の実施方法と注意点
試験
クイズ
小テスト
レポート
成果発表
(口頭・実技)
作品
ポートフォリオ
その他 受講者が,与えられたプログラムを理解した上で,改造を施しているかを確認する.また,改造されたプ ログラムによって,ドローンが期待した動作をしているかをどうかを確認する.
具体的な達成の目安
理想的な達成レベルの目安 標準的な達成レベルの目安
マルチプロセスによる並行処理により,ドローンを自由に制御 できる. マルチプロセスによる並行処理により,ドローンを制御できる .
CLIP学習プロセスについて
一般に、授業あるいは課外での学習では:「知識などを取り込む」→「知識などをいろいろな角度から、場合によってはチーム活動として、考え、推論し、創造する」→「修得した内容を表現、発表、伝達する」→「総合的に評価を受ける、GoodWork!」:のようなプロセス(一部あるいは全体)を繰り返し行いながら、応用力のある知識やスキルを身につけていくことが重要です。このような学習プロセスを大事に行動してください。
※学習課題の時間欄には、指定された学習課題に要する標準的な時間を記載してあります。日々の自学自習時間全体としては、各授業に応じた時間(例えば2単位科目の場合、予習2時間・復習2時間/週)を取るよう努めてください。詳しくは教員の指導に従って下さい。
授業明細
回数 学習内容 授業の運営方法 学習課題 予習・復習 時間:分※
1   【プログラミングの前に】 ・PCの使い方 ・TelloとPCの接続方法 ・飛行練習 ・ドローンの仕組み 座学・演習 予習 復習 100 100
2   【ネットワークプログラミング(UDP)】 Telloに用意されているプロトコルを理解した上で,P ythonのsocketモジュールを使ってドローンとUDPソケ ット通信する方法を学ぶ. 座学・演習 予習 復習 100 100
3   【画像処理プログラミング】 Pythonのopencvモジュールを使って,ドローンから送 られてくるH.264ビデオストリームをPC画面に表示す る方法を学ぶ. 座学・演習 予習 復習 100 100
4   【ゲームパッドプログラミング】 Pythonのpygameモジュールを使って,USBゲームパッ ドから情報(ボタンと軸)を読み出して使う方法を学 ぶ. 座学・演習 予習 復習 100 100
5   【波形表示プログラミング】 Pythonのmatplotlibモジュールを使って,ドローンか ら送られてくる機体情報(姿勢,高度,バッテリー残 量)をリアルタイムにプロットする方法を学ぶ. 座学・演習 予習 復習 100 100
6   【マルチプロセスプログラミング】 Pythonのmultiprocessingモジュールを使って,複数 の仕事(①ジョイパッド入力の取り込み,②機体の制 御,③機体情報の可視化,④ビデオストリームの表示 )を並行に行う方法を学ぶ. 座学・演習 予習・復習 100 100
7   【フリータイム】 飛行実験のための時間(各自,自由な発想でプログラ ムを改造し,ドローンを飛行させる) 座学・演習 復習 100