workshop @ make: tokyo meeting 02
TRANSCRIPT
![Page 1: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/1.jpg)
はじめてのArduinoワークショップ
小林茂(mayfair [at] iamas.ac.jp)2008年 11月 8日・多摩美術大学情報デザイン学科
![Page 2: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/2.jpg)
自己紹介
• 1970年愛知県名古屋市生まれ• 電子楽器メーカー(1993~2004)
– サウンドデザイナー– 技術研究所– ソフトウェアエンジニア
• IAMAS(2004~)– フィジカルコンピューティング– インタラクションデザイン
![Page 3: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/3.jpg)
このセッションの内容
• フィジカルコンピューティングとは?• Arduinoをスタンドアロンで使ってみる• ArduinoをPCとつないで使ってみる
![Page 4: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/4.jpg)
フィジカルコンピューティングとは?
• ニューヨーク大学の ITP*1でTom Igoeらが中心となって教えているコースの名前
• インタラクションデザインを教えるための方法の1つ
• コンピュータが理解したり反応できる人間のフィジカルな表現の幅をいかに増やすか
• デザインやアート教育の1つの分野として定着
*1 Interactive Telecommunications Program
![Page 5: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/5.jpg)
フィジカルコンピューティング関連書籍
Physical ComputingSensing and Controlling the Physical World with Computers
Dan O’Sullivan and Tom Igoe(Course Technology Ptr・2004年)
![Page 6: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/6.jpg)
フィジカルコンピューティング関連書籍
Making Things TalkArduinoで作る「会話」するモノたち
Tom Igoe 著・小林 茂監訳・水原文翻訳(オライリー・2008年)
![Page 7: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/7.jpg)
フィジカルコンピューティング関連書籍
Getting Started with ArduinoThe open source electronics prototyping platform
Massimo Banzi(O’Reilly Media・2008年)
![Page 8: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/8.jpg)
フィジカルコンピューティングとは?
一般的なPCから見た人間は?
• キー情報(ASCIIキーボードから)• マウス情報(1つのマウスから)
![Page 9: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/9.jpg)
Alto (1973)
出典:http://toastytech.com/guis/
![Page 10: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/10.jpg)
フィジカルコンピューティングの構成要素
• センサ(例:光、圧力、音、温度、加速度など)• アクチュエータ(例:LED、モータ、ソレノイドなど)• プロセッサ(例:マイコン、I/Oモジュール+PCなど)
→ものすごく簡単にまとめると プログラミング+電子工作
![Page 11: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/11.jpg)
フィジカルな世界とつなぐ方法
マイコンのみa
b
c
d
A
B
C
D
マイコンmicrocontroller
program
a0]=ain.o;aout.1 = 255;
![Page 12: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/12.jpg)
フィジカルな世界とつなぐ方法
マイコン+PC
a
b
c
d
A
B
C
D
マイコンmicrocontroller
PC
USB
program
a0]=ain.o;aout.1 = 255;
program
a0]=ain.o;aout.1 = 255;
![Page 13: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/13.jpg)
フィジカルな世界とつなぐ方法
I/Oモジュール+PC(GainerやPhidgetsなど)a
b
c
d
A
B
C
D
I/OモジュールI/O module
PC
USB
program
a0]=ain.o;aout.1 = 255;
![Page 14: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/14.jpg)
Arduinoとは?
• Hernando Barraganが IDII*2にいた時に開発を始めたWiringがベース
• 電子回路をプロトタイピングするためのオープンソースのプラットフォーム
• IDEとArduino I/Oボードから構成される
*2 Interaction Design Institute Ivrea
![Page 15: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/15.jpg)
Wiring
写真:SparkFun Electronics
![Page 16: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/16.jpg)
Arduino Duemilanove
写真:SparkFun Electronics
![Page 17: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/17.jpg)
Arduino IDE
![Page 18: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/18.jpg)
オープンソース・ハードウェアとは?
• ハードウェアのデザインデータがオープン– 回路図– 基板レイアウト
• ライセンスに基づいて自由に改変できる
![Page 19: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/19.jpg)
LilyPad Arduino
写真:SparkFun Electronics
![Page 20: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/20.jpg)
Arduino Pro Mini
写真:SparkFun Electronics
![Page 21: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/21.jpg)
Arduino ProtoShield
写真:SparkFun Electronics
![Page 22: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/22.jpg)
Arduino XBee Shield
写真:SparkFun Electronics
![Page 23: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/23.jpg)
FIO: Funnel I/O Module v1.0
![Page 24: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/24.jpg)
電圧~電流~抵抗
電気の流れは水の流れのようなもの
• 電圧– 2点間の高度(電位)の違い– 基準点が必要(GND)– 単位はボルト(V)
![Page 25: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/25.jpg)
電圧のイメージ図
低高
![Page 26: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/26.jpg)
電圧~電流~抵抗
電気の流れは水の流れのようなもの
• 電流– 電圧の高いところから低いところに流れる– 単位はアンペア(A)
![Page 27: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/27.jpg)
電流のイメージ図
少多
![Page 28: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/28.jpg)
電圧~電流~抵抗
電気の流れは水の流れのようなもの
• 抵抗– 電流の流れにくさ– 単位はオーム(Ω)
![Page 29: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/29.jpg)
抵抗のイメージ図
低 高
![Page 30: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/30.jpg)
電圧~電流~抵抗
よく出てくる補助単位の例
• 1,000倍を表すキロ(例:1kΩ)• 1,000,000倍を表すメガ(例:1MΩ)• 1
1,000を表すミリ(例:1mA)• 1
1,000,000を表すマイクロ(例:50µA)
![Page 31: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/31.jpg)
回路図ってなに?
![Page 32: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/32.jpg)
回路図ってなに?
回路図は電子回路の設計図
• シンボルで表した電子部品の接続を示したもの• シンボルに若干のバリエーションはあるが、基本的には全世界共通
![Page 33: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/33.jpg)
電源の回路図シンボル
+5V GND
![Page 34: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/34.jpg)
スイッチの回路図シンボルと部品例
![Page 35: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/35.jpg)
抵抗器の回路図シンボルと部品例
![Page 36: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/36.jpg)
可変抵抗器の回路図シンボルと部品例
![Page 37: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/37.jpg)
LEDの回路図シンボルと部品例
![Page 38: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/38.jpg)
Arduino入門
Make日本語版Volume 04特集「Sketchーハードウェアでスケッチする」
オライリー・ジャパン編(オライリー・ジャパン・2008年)
![Page 39: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/39.jpg)
Arduinoの各部紹介
デジタル入出力 x14
アナログ入力 x6GND +5V
GND
![Page 40: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/40.jpg)
ハードウェアにおける「Hello World!」
• LEDを一定の間隔で点滅させるExamples/Digital/Blink
• delay()の値を変更して間隔を変えてみる
![Page 41: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/41.jpg)
スケッチをアップロードする
![Page 42: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/42.jpg)
スイッチでLEDをコントロールする
+ - + -
![Page 43: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/43.jpg)
ブレッドボードってなに?
• 部品の足を穴にさすことで電子回路を形成• はんだ付け不要
– 部品を再利用できる– 回路を組み間違えてもやり直しできる– 耐久性にはやや注意が必要
![Page 44: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/44.jpg)
ブレッドボードの構造
• 横方向のブロックは背面で接続• 縦方向のブロックは未接続• 電源用のエリアは専用に用意されている
![Page 45: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/45.jpg)
参考:ジャンプワイヤの色分け
• 赤:電源の+側(+5V)• 黒:電源のー側(GND)• 白・青・黄:センサとの接続など
![Page 46: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/46.jpg)
もう少しいろいろ試してみよう
• ボリュームの値でLEDの点滅速度を変えるExamples/Analog/AnalogInput
• 光センサの値でLEDを点灯/消灯する
![Page 47: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/47.jpg)
ArduinoとPCをつなぐ方法
• 有線– シリアル– USB– Ethernet
• 無線– Bluetooth– IEEE 802.15.4 / ZigBee
どのようにデータをやり取りするかについて取り決め(=プロトコル)が必要
![Page 48: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/48.jpg)
プロトコル:Firmata
http://www.arduino.cc/playground/Interfacing/Firmata
• Hans-Christoph Steinerが提案• MIDIを参考にしたプロトコル• Arduino 0012から標準に
![Page 49: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/49.jpg)
Firmataに対応したPC側のライブラリ
• Pd (aka Pure Data)• Processing• Funnel• Linux C++• C++/openFrameworks
![Page 50: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/50.jpg)
質疑応答など
• Arduinoについて• フィジカルコンピューティングについて• Making Things Talkについて• その他
![Page 51: Workshop @ Make: Tokyo Meeting 02](https://reader035.vdocuments.us/reader035/viewer/2022081400/555926a6d8b42a88038b5502/html5/thumbnails/51.jpg)
はじめてのArduinoワークショップ
小林茂(mayfair [at] iamas.ac.jp)2008年 11月 8日・多摩美術大学情報デザイン学科