Raspberry PiにAllJoynフレームワーク「Standard Core」を移植する(1/6 ページ)
AllJoynは「家電を中心にさまざまな機器を接続し、情報交換を可能としたフレームワーク」です。さまざまな機器を対象としており、それにはRaspberry Piも含まれます。ルーター機能などを実装可能な「Standard Core」をRaspberry Piに移植します。
1.始めに
AllJoynは「さまざまな機器を接続し、情報交換を可能とするフレームワーク」であり、「アプリケーション」と「ルーター」から構成されます。実装についてはフレームワーク上に機能実装したアプリケーション(クライアント)を、機種ごとに開発する必要があるのですが実装の容易なフレームワークも用意されています。
前回はこの実装の容易なクライアントである「Thin+Java Client」をRaspberry Pi上に移植しました。GPIO制御などに機器/バージョン依存部分があり、かなり大変でしたが、今回はさらに踏み込んでFrameworkの中でも中核となる、「Standard Core」と呼ばれる部分を移植します。
・関連記事:Raspberry PiにAllJoynを移植して、IoTを自作する。
2. Standard Coreとは
前回も説明しましたが、AllJoynのフレームワークは「Standard Core」と「Thin Core」に分類されます。
- 1 Standard Core Framework: 比較的、強力なCPUの上で動作させることを想定した、ルーター機能や接続危機管理を含む全ての機能を実装。 以下、alljoynと呼びます。
- 2 Thin Core Framework: 比較的、小さいCPUでも動作することを想定してルーター機能等を省き、情報交換のみに特化して実装したもの。以下、ajtclと呼びます。
本来、Standard Coreは、上記のように、比較的、強力なCPUでの動作を想定したものです。しかし、Raspberry Piは初期型でもBogo MIPSが2.0のARM1176JZF-S(700MHz)に512MBのメモリを搭載していますし、Raspberry Pi2に至ってはクアッドコアCPU(ARM Cortex-A7)にメモリ1GBの構成なので、いずれでも問題なく動作するはずです(実際、私は初期型で動作させてみました)。
3. Standard Coreの移植
Standard Coreの移植はAllSeen Allianceの公開しているインストールガイド(Building Thin - Linux)を参考にしながら行いますが、前回、「Thin+Java Client(alljoyn-js)」(Thin CoreをベースにJavaScript解釈機能を持たせ、JavaScriptでアプリケーションを作成しAndroid端末から制御できるようにしたクライアント)を導入した経験があればさほど難しいことはありません。
3.1 環境整備
紹介したようにインストールガイドを参考にしながら行いますが、前回で、ほとんどの準備が終わっているため、そんなに難しくありません。また、余分なステップは、省いて進めます。前回の通りであれば整備は終わっていますが、念のために次のコマンドで、必要なツールを導入します。
apt-get install build-essential libgtk2.0-dev libssl-dev xsltproc libxml2-dev
pythonのバージョンを確認します。
python --version
通常は、2.7系になっているはずです。3.0系は、使用できません。
SConsをインストールします。
apt-get install scons
OpenSSLをインストールします。
apt-get install libssl-dev
3.2 ディレクトリの作成
Standard Coreを含むディレクトリを作成します。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Raspberry PiにAllJoynを移植して、IoTを自作する
「いろいろなデバイスがシームレスにつながり、簡単に操作できる」――IoTが目指すその姿を、Raspberry Piと機器相互接続フレームワーク「Alljoyn」で自作してみましょう。 - 「Alljoyn」のいまをクアルコムブースで見る
ET2015のクアルコムブースにて大きく展示されていたのは、機器相互接続フレームワーク「Alljoyn」のデモだ。機器連携シナリオ“ストーリー”の様子も紹介されている。 - 激化する“IoTの陣取り合戦”欠けているのは「共通言語」
IoTの未来像として、「いろいろなデバイスがシームレスにつながり、簡単に操作できる」様子が挙げられるが、AllSeen Allianceのディレクターはそのために必要なのは「共通言語だ」という。 - Allseen Allianceの中核技術「Alljoyn」とは何か
Linux Foundationが設立した非営利団体「Allseen Alliance」のキモとなるのが「Alljoyn」だ。IoTについて“現状の使いにくさ”の打破を目指す、この団体の中核技術を解説する。 - IoT団体によるUPnP(Universal Plug and Play)吸収を読み解く
インテルやサムスンらが主導するIoT標準化団体「OIC」が、UPnP(Universal Plug and Play)Forumを吸収した。UPnPの推進する“挿すだけで使える”をIoTに持ち込むことは理にかなっているように思えるが、AppleのHomeKitや、GoogleのProject Brilloに対する競争力はあるだろうか。