html5j エンタメ技術部第2回勉強会に行ってきた
TOP > てきとうにこらむ > ゲーム作りとプログラミング日記 > html5j エンタメ技術部第2回勉強会に行ってきた
html5j ハンズオン勉強会
html5j エンタメ技術部 第2回勉強会(ハンズオン)に行ってきた。 ArduinoとHTML5での連携をやったことが無いので、すごく興味があったため。
Arduino部分
基本的な部分は理解しているので、その辺りは難なく出来た。非常にわかりやすくて、楽しかった。
node
johnny-five
Node.jsからArduinoを制御するフレームワーク、johnny-fiveでArduinoとを連携させるところで躓いた。具体的には、以下のようなエラーが出てきた。
It looks like serialport didn't compile properly. This is a common problem and its fix is well documented here https://github.com/voodootikigod/node-serialport#to-install
僕の環境はWindows 7 Home Edition 64bit。
後で調べてみると、環境変数PATHにデフォルトのパスが指定されていなかった。
cmd(コマンドプロンプト)でexplorerやpingが通っていないことに気がついて、アレおかしいとおもったので、PATHを調べた。そうすると、あるはずの%SystemRoot%や、%SystemRoot%\\system32\\などがなかった。
デフォルトのパスを追加して、npm install johnny-fiveしなおしたら治った。
いろんな開発環境をインストールしていて、PATHを色々変更していたりしていたせいだと思います。迷惑をお掛けしてしまいました。申し訳ないです。
とりあえずLチカ
JavaScript と Arduino でオリジナルデバイスを作ろうを参考に01_strobe_led.jsを試す。
Windowsの場合、Arduino IDEのシリアルポートを選択する。僕の環境ではCOM3。
$ cat 01_strobe_led.js
var j5 = require("johnny-five"),
arduino = new j5.Board({port: 'COM3'});
arduino.on('ready', function() {
var led = new j5.Led({
pin: 13
});
led.strobe(200);
});
$ node 01_strobe_led.js
1400432366548 Connected COM3
1400432366549 Repl Initialized
>>
内部でシリアル通信をしているので、ArduinoのRXのLEDがチカチカするようだ。
スイッチのON/OFF
$ node 02_get_switch_event.js
1400432890606 Connected COM3
1400432890606 Repl Initialized
>> button - on
button - released
button - released
button - on
button - released
button - on
button - on
button - on
button - on
button - on
button - on
button - released
button - on
まとめ
今までは、基本的なことはArduinoにまかせて、その他をPCなりスマートフォンに任せようみたいな考えでつくってた。しかし、Arduinoが行うはずだった動作もPCでやらせてしまうことには意表をつかれた感じがした。
Arduinoは無限大の可能性があるということを確信できた、素晴らしい勉強会でした。ありがとうございました。