第1章 はじめに

このたびはArmadillo-IoT ゲートウェイG3Lをご利用いただき、ありがとうございます。

Armadillo-IoT ゲートウェイG3L(以下、Armadillo-IoT)は、Armadillo-IoT ゲートウェイG3をベースとして最低限必要となるインターフェースを実装した、各種センサとネットワークとの接続を中継する小型のIoT向けゲートウェイです。

Armadillo-IoTは、センサ接続用インターフェースとして、RS422/RS485、LAN、無線LAN(IEEE 802.11a/b/g/n)など一般的なセンサ接続に広く使われるインターフェースの他、Wi-SUNなど新しい省電力無線通信規格にも対応しています。また、WAN(Wide Area Network)用インターフェースとして、モバイル通信(LTE)も利用可能です。

Armadillo-IoTは標準OSとしてLinuxがプリインストールされているため、オープンソースソフトウェアを含む多くのソフトウェア資産を活用し、自由にオリジナルのアプリケーションを開発することができます。開発言語としては、C/C++言語だけでなく、JavaやRubyなどをサポートしています。さらにMQTTクライアントなど、クラウドサービスと親和性の高いソフトウェアスタックが用意され、ソフトウェア面でも開発の自由度と開発しやすさの両立を図っています。

以降、本書では他のArmadilloブランド製品にも共通する記述については、製品名をArmadilloと表記します。

1.1. 本書で扱うこと扱わないこと

1.1.1. 扱うこと

本書では、Armadillo-IoTの使い方、製品仕様(ソフトウェアおよびハードウェア)、オリジナルの製品を開発するために必要となる情報、その他注意事項について記載しています。Linuxあるいは組み込み機器に不慣れな方でも読み進められるよう、コマンドの実行例なども記載しています。

また、Armadillo-IoTの機能をサポートする専用アプリケーションについても、その使い方を中心に説明しています。

Armadillo-IoTは一つの機器だけで完結するものではなく、接続するセンサや、クラウドシステムなどとの連携が不可欠です。そのため、参照すべきドキュメントも多岐に渡ります。本書では、アットマークテクノが運営するArmadilloサイトを始め、開発に有用な情報を得る方法についても、随時説明しています。

1.1.2. 扱わないこと

本書では、一般的なLinux のプログラミング、デバッグ方法やツールの扱い方、各種モジュールの詳細仕様など、一般的な情報や、他に詳しい情報があるものは扱いません。また、(Armadillo-IoTを使用した)最終製品あるいはサービスに、固有な情報や知識も含まれていません。

1.2. 本書で必要となる知識と想定する読者

本書は、読者としてArmadillo-IoTを使ってオリジナルのゲートウェイ機器を開発するエンジニアを想定して書かれています。また、「Armadillo-IoTを使うと、どのようなことが実現可能なのか 」を知りたいと考えている設計者・企画者も対象としています。Armadillo-IoTは組込みプラットフォームとして実績のあるArmadilloをベースとしているため、標準で有効になっている機能以外にも様々な機能を実現することができます。

ソフトウェアエンジニア

端末からのコマンドの実行方法など、基本的なLinuxの扱い方を知っているエンジニアを対象読者として想定しています。プログラミング言語としてC/C++を扱えることは必ずしも必要ではありませんが、基礎的な知識がある方が理解しやすい部分もあります。

ハードウェアエンジニア

電子工学の基礎知識を有したエンジニアを対象読者として想定しています。回路図や部品表を読み、理解できる必要があります。

1.3. ユーザー限定コンテンツ

アットマークテクノ Armadillo サイトで購入製品登録を行うと、製品をご購入いただいたユーザーに限定して公開している限定コンテンツにアクセスできるようになります。

限定コンテンツを取得するには、21章ユーザー登録を参照してください。

1.4. 本書および関連ファイルのバージョンについて

本書を含めた関連マニュアル、ソースファイルやイメージファイルなどの関連ファイルは最新版を使用することをおすすめいたします。本書を読み始める前に、Armadilloサイトで最新版の情報をご確認ください。

1.5. 本書の構成

本書には、Armadillo-IoTをベースに、オリジナルの製品を開発するために必要となる情報を記載しています。また、取扱いに注意が必要な事柄についても説明しています。

◆ はじめにお読みください。

1章はじめに2章注意事項

◆ Armadillo-IoTゲートウェイの仕様を紹介します。

3章製品概要

◆ 工場出荷状態のソフトウェアの使い方や、動作を確認する方法を紹介します。

4章Armadilloの電源を入れる前に5章起動と終了7章動作確認方法

◆ 工場出荷状態のソフトウェア仕様について紹介します。

8章Linuxカーネル仕様9章Debian ユーザーランド仕様10章ブートローダー仕様

◆ システム開発に必要な情報を紹介します。

6章ソフトウェアの更新と初期化11章ビルド手順12章開発の基本的な流れ

◆ ハードウェアをカスタマイズする場合に必要な情報を紹介します。

13章SMSを利用する14章i.MX7Dualの電源制御15章SDブートの活用16章電気的仕様17章インターフェース仕様18章筐体形状/寸法図19章オプション品

◆ ソフトウェアのカスタマイズ方法を紹介します。

20章Howto

◆ ご購入ユーザーに限定して公開している情報の紹介やユーザー登録について紹介します。

21章ユーザー登録

1.6. 表記について

1.6.1. フォント

本書では以下のような意味でフォントを使いわけています。

表1.1 使用しているフォント

フォント例説明
本文中のフォント本文
[PC ~]$ lsプロンプトとユーザ入力文字列
text編集する文字列や出力される文字列。またはコメント

1.6.2. コマンド入力例

本書に記載されているコマンドの入力例は、表示されているプロンプトによって、それぞれに対応した実行環境を想定して書かれています。「/」の部分はカレントディレクトリによって異なります。各ユーザのホームディレクトリは「~」で表わします。

表1.2 表示プロンプトと実行環境の関係

プロンプトコマンドの実行環境
[PC /]#作業用PC上のrootユーザで実行
[PC /]$作業用PC上の一般ユーザで実行
[ATDE/ ~]#ATDE上のrootユーザで実行
[ATDE/ ~]$ATDE上の一般ユーザで実行
[armadillo /]#Armadillo上のrootユーザで実行
[armadillo /]$Armadillo上の一般ユーザで実行
=>Armadillo上の保守モードで実行

コマンド中で、変更の可能性のあるものや、環境により異なるものに関しては以下のように表記します。適時読み替えて入力してください。

表1.3 コマンド入力例での省略表記

表記説明
[version]ファイルのバージョン番号

1.6.3. アイコン

本書では以下のようにアイコンを使用しています。

[警告]

注意事項を記載します。

[ティップ]

役に立つ情報を記載します。

1.7. 謝辞

Armadilloで使用しているソフトウェアの多くは Free Software / Open Source Softwareで構成されています。Free Software / Open Source Softwareは世界中の多くの開発者の成果によってなりたっています。この場を借りて感謝の意を表します。