Arduino資料一覧

RubyでArduinoをコントロールする方法(arduino_firmataでLチカ)

2017/04/23更新

対応バージョン: ruby 2.3.1, arduino_firmata 2.3

RubyでArduinoをコントロールするにはarduino_firmataというgemを使えば簡単である。

ここではサンプルとしてLチカをやってみる。

Rubyを動かす母艦はUbuntu 16.04とする。

Firmata書き込み

arduino_firmataはFirmataプロトコルを使ってArduinoと通信するので最初にFirmataのプログラムをArduinoに書き込んでおく。

この手順は以下の資料に示してあるので割愛する(Arduino IDEを使うかgortコマンドにて書き込む)。

関連資料・記事

arduino_firmataインストール

次にarduino_firmataをインストールする。arduino_firmataはgemを使って簡単にインストールできる。

% sudo gem install arduino_firmata

結線

Lチカ用にこのような簡単な結線を行う。

アノード側には330Ωの抵抗を挟む。

arduino_firmata動作確認(Lチカ)

以下のようなコードを書いて実行すれば簡単にLチカができ、その他にもArduinoの様々な操作ができる。

尚、ArduinoFirmata.connectで接続するポートは環境によって異なるので使用している環境に合わせて指定する。

led.rb
require "rubygems"
require "arduino_firmata"

arduino = ArduinoFirmata.connect "/dev/ttyACM0"

puts "firmata version #{arduino.version}"

while true
  arduino.digital_write 13, true
  sleep 1
  arduino.digital_write 13, false
  sleep 1
end
実行
% ruby led.rb
firmata version 2.3

関連資料・記事

参考サイト