Click here to load reader
Upload
toyoshi
View
8.796
Download
1
Embed Size (px)
DESCRIPTION
名古屋Ruby会議01での「RubyとArduinoではじめるフィジカルコンピューティング」の発表資料。
Citation preview
RubyとArdui noで始めるフィジカルコンピューティング
CSNagoya 豊吉隆一郎
Ardui no(アルドゥイーノ)とはI /Oモジュールと開発環境一式のことPCから簡単にセンサやアクチュエータを操作できる基本はUSB+AVRマイコンオープンソースなので互換品もあるよ(オレデュイーノと呼ばれる)Makeとかで人気
どんなことができるのか胎児がおなかを蹴ったらTwi tterに投稿自動で植物に水をやる機械光の残像で表示する電光掲示板Web経由でラジコンを操作する
” ”やってみたいなが 簡単に できる!
準備(道具・ソフト)Ardui no Duemi l anove(基本のモジュール)さまざまなバリエーションがある
ソフトウェアArdui no I DE(Processi ng,wi ri ng)Pdui no(Max,Pure Data)RAD(Ruby Ardui no Devel opment)
お好みの電子部品
RADを使うとこんな風に書ける
class MySketch < ArduinoSketch output_pin 7, :as => :led def loop blink led, 500 endend
7番ピンにl edという名前をつけて、0.5秒ごとに点滅させる
LED点灯の応用デモ
資料注)マトリックスLEDが点灯し文字が表示される
もう少し複雑なデモはてなスターがついたらパトライト点灯
Add star
Hatena Web hook
si natradruby
Ardui no
パトライト点灯!
Gai ner
RubyとArdui noフィジカルコンピューティング
CSNagoya 豊吉隆一郎
とGai nerで始める
資料注)Ardui noが故障したため
デモ準備
デモ用URLhttp: //b.hatena.ne. j p/toyoshi /
>誰かがスターをつけると光ります>誰かがスターをつけると光ります>誰かがスターをつけると光ります
サーバのコードはこんな感じrequire 'rubygems'require 'sinatra'require 'drb/drb'
post '/' DRb.start_service $ts = DRbObject.new_with_uri('druby://localhost:12345') $ts.write(["add-star", param[:username])end
WebHookからポストがあったらdRubyに投げる dRuby(ri nda)はi rbで動作している
注文が集中しています:http: //b.hatena.ne. j p/toyoshi /
Gai ner側のコードはこんな感じ$: << '.'require 'drb/drb'require 'funnel'include Funnel
DRb.start_service$ts = DRbObject.new_with_uri('druby://192.168.24.110:12345')gio = Gainer.new()loop {
p $ts.take(["take-test", nil])
gio.aout(0).value = 1sleep(5)gio.aout(0).value = 0
}
タプルスペース(ri nda)にtakeして取れたらアナログアウトに出力するだけ
注文が集中しています:http: //b.hatena.ne. j p/toyoshi /
まとめArdui noとRubyを使って簡単にフィジカルコンピューティングができることがわかった
ご清聴有難うございました。