JapvaScriptでプログラミングできるマイコンボード、Tesselを触ってみました。Tesselは4つの専用モジュール用ポートと、総務省の工事設計認証(いわゆる技適)を受けたWi-Fiモジュールを搭載しているユニークなボードです。今回は実行環境の構築とTessel上に搭載されているLEDを点灯するためのサンプルプログラムの実行まで行いました。
使用したものは次の3つ。
1.Tessel メインボード
2.Tessel メインボードに付いてくるmicro USBケーブル
3.OS Xの入ったパソコン。OSのバージョンは10.9.4。
手順は次の通り。今回はstart.tessel.io/にならって環境構築を行いました。node.jsのインストールが終わっている方は3から読んでみてください。(クリックでその項目に飛びます)
1.Homebrewのインストール
2.node.jsのインストール
3.プログラムの実行
1.Homebrewのインストール
HomebrewはOS Xのパッケージ管理システムです。これを使うと簡単にアプリケーションのインストールができます。
インストールはターミナルアプリを開いて、次のコマンドを実行するだけです。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
少し時間がかかるので、落ち着いて待ちましょう。
2.node.jsのインストール
TesselはArduinoのArduino IDEやmbedのオンラインコンパイラのような開発環境が必要なく、代わりにJavaScriptの1つであるnode.jsを使い、ターミナル上でプログラムを実行します。
それではターミナルを再起動して、node.jsのインストールをインストールしてみましょう。コマンドはさっきよりも短いです。
brew install node
インストール中にビールジョッキの絵文字がでてきますが、文字化けではありません。Homebrewが自家醸造のアルコール飲料という意味なので、それに掛けたビール絵文字です。おしゃれですね。
インストールが終わるとnode.jsと一緒にnpmと呼ばれるnode.jsのパッケージ管理システムがインストールされます。これを使ってTesselの実行環境をインストールします。
npm install -g tessel
無事にインストールが終わったらtesselとパソコンを繋いで、tesselのファームウェアをアップデートします。
tessel update
3.プログラムの実行
プログラムを実行するディレクトリ作成とnpmの初期化を行うために次のコマンドを実行します。3行目を実行するといろいろ聞かれますが、何もタイプせずにenterを押していきます。質問が終わったあとにpackage.jsonが作成されれば成功です。
mkdir tessel-code cd tessel-code npm init
エディタを開いて、次のプログラムをtesse-codeディレクトリの下に保存します。保存名はblinky.jsにしましょう。
// Import the interface to Tessel hardware var tessel = require('tessel'); // Set the led pins as outputs with initial states // Truthy initial state sets the pin high // Falsy sets it low. var led1 = tessel.led[0].output(1); var led2 = tessel.led[1].output(0); setInterval(function () { console.log("I'm blinking! (Press CTRL + C to stop)"); // Toggle the led states led1.toggle(); led2.toggle(); }, 100);
Tesselを動かすコマンドはrunとpushの2つあります。runはプログラムをTesselのRAMに書き込むコマンドで、ctrl+cをタイプしたり、リセットボタンを押すとプログラムが消えます。pushはプログラムをTesselのFlashメモリに書き込むコマンドで、上書きするまでプログラムは消えません。モバイルバッテリーなどパソコン以外の電源で動作させるときに必要なコマンドですね。pushしたプログラムを消すとき用にeraseというコマンドも用意されています。今回はrunを実行します。
Tessel run blinky.js
実行してからLEDの点滅が始まるまでに少し時間がかかりますが、無事にLEDを光らせる事ができました。少し見辛いですが、LEDが4つ並んでいるところの右側の黄色と青が交互に点滅しています。
TesselはBLEやカメラや各種センサなどの対応モジュールが充実しているので、ぜひ触ってみてください!