Rubyとそのゲーム用フレームワークであるMiyakoとマイ コンArduinoで温度計を作ってみた。
- マイコンArduin oを温度センサにつなぎ、温度を読み取ってUSB経由でPCに送信している(中身はシリアル通信)。
- PCではRubyプログラムが受信した温度を画面に表示している。
- この際、文字描画と図形描画のためにMiyakoワークフレームを利用している。
Rubyプログラムの中身は以下のとおり。主要部分を1つ目の「miyako_temp.rb」に書き、周辺部分は2つ目の「miyako_temp_lib.rb」に書いた。
なお、Arduinoには、サンプルスケッチに含まれている「AnalogInSerial」をそのまま書き込んだ。
本当はFirmataを書き込んでFunnelサーバー経由で温度の値を読み出したかったのだが、RubyクライアントプログラムとFunnelサーバーの接続が10秒くらいで切れてしまうため、シンプルにシリアルポートを読み取る方法(TEXCELL Rubyシリアル通信ライブラリ)を採用した。
なお、Ruby/Miyakoの勉強会を都内でやっております。興味のある方は気軽にご参加下さい。次回は3月21日(日)@新宿の予定です。