加速度センサーを使い、「人の動きと連動して動作するUWPアプリ」を作るラズパイ3&Toradex、Windows 10 IoT Coreで楽しみながら検証するIoT実践入門(4)(1/3 ページ)

ITエンジニアに向け、「ビジネスに貢献するIoT活用」の第一歩を踏み出す「ひらめき」を得てもらうための本連載。今回は、IoTハードウェアと加速度センサーを使い、Unityで作成したUWPアプリを操作するシステムを作ってみよう。

» 2016年06月16日 05時00分 公開
[薬師寺国安PROJECT KySS]

連載バックナンバー

 本連載は、ITエンジニアが「ビジネスに貢献するIoT活用」の第一歩を踏み出す「今後のひらめき」を得てもらうためのIoT実践講座だ。数千円から1万円ほどで入手できるIoTボードコンピュータとIoTデバイス向けのOS、そして、いつでも/どこでも/どれでも使えることを視野に入れた「ユニバーサルWindowsプラットフォーム(UWP)アプリ」とUnityを題材に、“業務におけるIoT活用”の実践ノウハウをお届けしていく。

photo 本連載で使う機材の1つ「Raspberry Pi 3 Model B」

 前回は、「人体感知センサー」と「Webカメラ」を使って「サーバルーム簡易監視&防犯システム」を作ってみた。今回は、「加速度センサー」を使って、Raspberry Pi 3やToradexに配置した「Unityで作成したUWPアプリ」を動かす簡易システムを作ってみよう。具体的には、ブレッドボード(電子回路の試作・実験用の基板)に配置した加速度センサーを動かすと、Unity 5.3上に配置した“Cube”が傾きに応じて動くというものだ。

【事前準備】UnityとVisual Studioについて

 本企画では今後のIoT活用・応用の範囲を広げる目的から、3DのUIを簡単に作れるゲーム向けの開発環境である「Unity」とマイクロソフトの開発ツールである「Visual Studio 2015」(以下、VS2015)を、「UWPアプリとして書き出す」ために用いる。

 Unityの基礎や操作方法が分からない人は、最初に「連載:ゲーム開発初心者のためのUnity入門」を参照いただき、楽しみながらUnityの基礎を学び、環境を構築してほしい。この連載は、Unityで3Dゲームを作るまでのいろいろな処理を解説したもので、Unityの開発環境の構築手順をイチから説明している。


加速度センサーを接続する

photo 今回使用した加速度センサー「ADXL34搭載三軸加速度センサモジュール」

 今回は、「ADXL34搭載三軸加速度センサモジュール」(2300円前後)という加速度センサーと、ジャンパーワイヤーを4本用意した。

 IoTハードウェアのGPIOとジャンパーワイヤー、ジャンパーワイヤーとブレッドボード、ブレッドボードと加速度センサーは、以下のようにつなぐ。


Toradexの場合

  1. ジャンパーワイヤー(GND)をGPIOの3番ピン(GND)、ブレッドボードのF15番とつなぐ
  2. ジャンパーワイヤー(VCC)をGPIOの33番ピン(+3.3V PWR)、ブレッドボードのF16番とつなぐ
  3. ジャンパーワイヤー(SDA)をGPIOの5番ピン(I2C_SDA)、ブレッドボードのF22番とつなぐ
  4. ジャンパーワイヤー(SCL)をGPIOの6番ピン(I2C_SCL)、ブレッドボードのF21番とつなぐ
  5. ブレッドボードのG16番、G17番をショートさせる
  6. 加速度センサーは、ブレッドボードのJ15(GND)〜J20番(SCL)に立てて差す
photo Toradexの場合

Raspberry Pi 3の場合

  1. ジャンパーワイヤー(GND)をGPIOの6番ピン(Ground)、ブレッドボードのF15番とつなぐ
  2. ジャンパーワイヤー(VCC)をGPIOの1番ピン(3.3V DC Power)、ブレッドボードのF16番とつなぐ
  3. ジャンパーワイヤー(SDA)をGPIOの3番ピン(SDA1,I2C)、ブレッドボードのF22番とつなぐ
  4. ジャンパーワイヤー(SCL)をGPIOの5番ピン(SCL1,I2C)、ブレッドボードのF21番とつなぐ
  5. ブレッドボードのG16番とG17番をショートさせる
  6. 加速度センサーは、ブレッドボードのJ15(GND)〜J20番(SCL)に立てて差す
photo Raspberry Pi 3の場合(出典:マイクロソフト「I2C Accelerometer Sample」)

Unity 5.3のプロジェクトを用意する

 今回作成するUnity 5.3のプロジェクトは、画面上に「Cube(立方体)」と、加速度センサーの値を表示する「uGUIのText」を配置するだけの簡単なものだ。プロジェクト名は何でもいいが、今回は「CubeAccelerometer」としておいてほしい。

 続いて、配置したCubeには「AccelerometerScript」を、uGUIのTextには「TextScript」を追加しておく。

 実際のコードは、このプロジェクトをUWPに書き出してからVS2015上で編集していくので、それぞれのスクリプトの中身は、ここでは標準で記述されている「void Start()」と「void Update()」だけが書かれていればよい。

 最後に、UWPにプロジェクトを書き出す。書き出し方は、第2回「ユニバーサルアプリ実行環境をRaspberry Pi 3とToradexに配置する」を参照してほしい。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。