Hatena::ブログ(Diary)

橋本詳解 RSSフィード

ここはメモ帳です

http://shokai.org
http://shokai.org/blog/

2009-07-16

[][]Arduino + BeagleBoard(Ubuntu) シリアルポートを読んでたまにファイルに書き出す

大学院棟の明るさをwebに公開中


http://shokai-b.mag.keio.ac.jp/light


ArduinoCdSをつけて明るさをとってシリアル通信させて、BeagleBoard側でRubyシリアル通信を読んでApache2のディレクトリに書き出してる。

赤いのがBeagleBoard。Ubuntu9.04をインストールしてApache2が動いている。RailsSinatraインストールできたしもはやなんでもできる。

R0012111

BeagleBoardストレージSDカードなので、あまり書き込みたくない。1000回受信したら1回だけ書き込むようにしといた。

あとシリアル通信の出力フォーマットがに=とか&とか付けちゃったのでそれをparseしてる

#!/usr/bin/env ruby

name = ARGV.shift || '/dev/ttyS2'
port = open(name, 'r')
count = 1000
begin
  port.each {|line|
    light = line.split('=')[1].split('&')[0] # 数値だけ取り出し
    puts light
    count+=1
    if count > 1000
      file = open('/var/www/light', 'w+')
      file.puts("light : #{light}")
      file.close
      count = 0
    end
  }
ensure
  port.close
end

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/shokai/20090716/1247733038