趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。※サイト移転しました(tomono.eleho.net ⇒ tomono.tokyo)
RSS icon
  • 環境情報をRaspberry PiでTweetしてみる

    投稿日 2012年 9月 16日 コメントはありません

    いろいろネタが揃ってきたので、 Raspberry Piで環境情報をつぶやかせてみることにしました。

    まず、環境を取得するハードウェアは、以前作った気圧計・温湿度計を使います。LCDの表示がついていますが、とりあえずはそのままにしておきます。Arduinoベースのこの気圧計・温湿度計は、5秒ごとに気圧、温度、湿度を測定し、9600bpsでUSBシリアルに送信してきます。

     次にソフトウェアです。いきなりRaspberry Piで動作させようとすると、スクリプトの編集が面倒なので、デスクトップのLinuxMint 64bitで先に作ってしまいます。

    1.Pythonのタイムゾーンライブラリをインストールします。

    所定の時刻でつぶやくために、タイムゾーンライブラリをインストールしました。

    2.つぶやきのPythonスクリプトを作成します。

    すでにtweepyでつぶやきそのものはできていますし、シリアルからのデータ受信もシリアルポートライブラリを動かしてみていますので、受信データを解釈してメッセージを組み立ててつぶやくだけです。

    ここでは所定の周期(の切りのいい時刻)でつぶやくようにプログラムを作成し、デバッグ完了後に30分に1回(毎時0分と30分)につぶやくように設定を変更しました。

    3.PC上で十分動作確認します。

    PC上の方が楽ちんですからね・・・。

    4.Raspberry Pi上に環境構築して動作させます。

    環境の構築方法はLinuxMintとなんら変わりません。apt-get、easy_installなどがそのまま使えます。
    環境構築したら、Raspberry Pi上にPythonのスクリプトを持っていって、動かすだけです。
    動かす際は、sshの先で動かすので、screenコマンドを使ってネットワークが切れていても動きつづけるようにしました。

    結果はこんな感じです。設置場所は室内のプリンタの脇なので、温度・湿度は気象観測的な意味ではまったく意味がありません。気圧の方は室内とはいえ、換気用の穴などでつながっていて、それなりに信用がおけそうな気がするので比較してみました。

    気象庁は東京の海面換算の気圧です。自宅の方は土地の標高が2~3mくらいに加えて、地上高が20mくらいありますので、20m強の海面高になります。気圧は概ね標高10mで1hPa減少しますので、若干(1hPa程度)低めの値ですが、遊びとしては十分な精度だと思います。

    なお、Twitterの方はしばらくしたら平常時は止めるつもりです。Raspbery Piで他の事もしたいので。


    コメントをどうぞ(日本語のみ/Only in Japanese)

    日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)