Presentation is loading. Please wait.

Presentation is loading. Please wait.

トキのカタチ2016 電子工作(Arduino)講習

Similar presentations


Presentation on theme: "トキのカタチ2016 電子工作(Arduino)講習"— Presentation transcript:

1 トキのカタチ2016 電子工作(Arduino)講習
東京大学大学院 工学系研究科 機械工学専攻 設計工学研究室 TA 岡本 真拓 TA 原田 隆尚 TA 飯塚 大和 2016/11/7

2 Agenda Arduinoを用いた作品の紹介(約15分) Arduinoで用いるプログラミング言語の紹介(約30分)
※TAは基本的には電子工作を含む作品のサポートを行います。 2016/11/7

3 Arduinoのプログラミング プログラミングの基礎知識 翻訳 (検証・送信) 2016/11/7

4 Arduinoのプログラミング setup()/loop() #define/void/int 算術演算子/比較演算子 if文 for文
pinMode() /digitalWrite() 2016/11/7

5 setup()/loop() Arduinoのプログラムは主にふたつのパートからなる void setup(){}
{}内の内容で初期設定を行う 例:入力・出力ピンの指定、シリアル通信の宣言など void loop(){} {}内の内容でArduinoに信号制御を行わせる 例:LEDの点灯・消灯、距離の計測など 2016/11/7

6 #define/void/int #define void型 int型 参考:double型(実数) 指定した記号に数値を割り当てる
例:#define LED 13 →LEDという記号に13という数値が割り当てられた void型 数値として“なにもない”という意味 0とは異なる int型 -32768~32767の間の整数を表現できる 例:int i = 13; →iは-32768~32767の間の整数を表現できる 参考:double型(実数) 2016/11/7

7 算術演算子/比較演算子 算術演算子 比較演算子 + 足す - 引く * 掛ける / 割る % 商の余り = 代入 文末のセミコロン忘れに注意
+ 足す - 引く * 掛ける / 割る % 商の余り = 代入 文末のセミコロン忘れに注意 例1: x = ; →xは18 例2: x = 4 ; x = x + 3 ; →xは7 比較演算子 == 等しい != 等しくない </> より大きい/小さい <=/>= 以上/以下 真なら1、偽なら0が返される 例:if( a == b ){} →()内の値は、aとbが等しければ1、 違えば0となる 2016/11/7

8 if文 If(){} else{} 参考:else if(){}/ブール演算子 条件によって異なる処理を行わせる場合に用いる
条件式が1ならば{}内を実行し、0ならば{}内は実行されない 例: if ( a==b ){ a = b ; } →aとbが等しければbの値をaに代入 else{} Ifの条件外のときに処理を行わせる場合に用いる 文法:if (条件式){実行文1}else{実行文2} 条件式が1ならば実行文1を実行し、0ならば実行文2を実行する 例: if ( a == b ){ a = b ; } else{ a = a + 1 ; } →aとbが異なればaの値をひとつ増やす 参考:else if(){}/ブール演算子 2016/11/7

9 for文 for(;;){} 一定の規則に従って実行文を繰り返したい場合に用いる 文法:for (前処理 ; 制御式 ; 後処理){実行文}
どこから、どこまで、どのような規則に従って繰り返すかを指定する 例:for ( i = 0 ; i <=5 ; i = i + 1 ){ x = x + i ; } 最初xが0だった場合、 1回目(i=0) x = x+i = 0+0 = 0 2回目(i=1) x = x+i = 0+1 = 1 3回目(i=2) x = x+i = 1+2 = 3 4回目(i=3) x = x+i = 3+3 = 6 5回目(i=4) x = x+i = 6+4 = 回目(i=5) x = x+i = 10+5 = 15 参考:多重ループ 2016/11/7

10 pinMode()/digitalWrite()
ピンの動作を入力か出力に設定する 文法:pinMode ( ピン番号 , ピン動作); ピン動作は、INPUT、OUTPUTなど 例:pinMode ( LED , OUTPUT ); →LED(13ピン)を出力に設定 digitalWrite() 指定したOUTPUTピンのデジタル出力を行う 文法:digitalWrite( ピン番号 , ピン出力); ピン出力はHIGH(5V)またはLOW(0V)のどちらか 例:digitalWrite( LED , HIGH ); →LED(13ピン)に5Vの電圧が加わる 2016/11/7

11 補足事項 コンピュータはプログラムのミスに対して柔軟性がなく融通が利かない ので、文法に忠実に書いてあげましょう。 よくあるミス
コンピュータはプログラムのミスに対して柔軟性がなく融通が利かない ので、文法に忠実に書いてあげましょう。 よくあるミス 全角スペースを使っている。 文末のセミコロンを忘れている。 カンマとセミコロンを間違えている。 括弧の種類を間違えている。 他の人にも見やすいプログラムを書くために 書籍やwebページを参考にしながら、適宜改行や段下げ(tab)をしましょう。 コメントアウト(//)を用いてプログラムの説明を加えましょう。 2016/11/7

12 Arduinoを使って既定課題を実施 ~12:00 2016/11/7

13 今後の流れ 【厳守】11/11(金)23:59までに、 ・氏名 ・具体的に何をどうしたいのか、入力・出力は何か (・問題がある場合は、どこがどう問題なのか) をFacebookページに投稿するか、以下のアドレスへメールして下さい。 ※申し訳ありませんが、期限後の提出には対応しかねます。 ※例年、講評会直前に機械的な問題の解決に追われる場合が多い   ので、計画的な制作をお願いします。 ※TAは基本的には電子工作を含む作品のサポートを行います。 2016/11/7


Download ppt "トキのカタチ2016 電子工作(Arduino)講習"

Similar presentations


Ads by Google