はじめに

このたびは Armadillo-X2 をご利用いただき、ありがとうございます。

Armadillo-X2は、GUIを必要とする機器や映像出力機器などに最適なCPUボードです。 Googleが提供するオープンソースのGUI開発環境「Flutter」に標準対応しており、 モバイルアプリフレームワークを活用することで、容易にGUIアプリケーションを開発できます。 また、エッジAI処理、機械学習を低消費電力で実行する専用のハードウェア機能を搭載しており、 高度な物体認識や情報の識別をおこなうシステムを開発することが可能です。 さらにUSB3.0、Gigabit Ethernet、MIPI-CSIといった高速なインターフェースをそなえ、 高付加価値なシステムの構築に利用いただけます。

Armadillo-X2にはLinuxベースのディストリビューションとして専用設計のArmadillo Base OSを 搭載しています。Armadillo Base OSはユーザーアプリケーションをコンテナとして管理する機能、 Armadillo Base OS自体とコンテナの両方を安全にリモートアップデートする機能、ネットワークや HWセキュリティに関する機能を集約したコンパクトなArmadillo専用OSです。

ユーザーアプリケーションはOCI規格に準拠したPodmanコンテナ内で動作するため、ライブラリの依存関係 はコンテナ内に限定されます。コンテナ内ではDebian Linux やAlpine Linuxといった様々なディストリ ビューションをユーザーが自由に選択し、Armadillo Base OSとは無関係に動作環境を決定、維持する ことが可能です。また、コンテナ内からデバイスへのアクセスはデバイスファイル毎に決定することが できるので、必要以上にセキュリティリスクを高めることなく装置を運用することが可能です。

Armadillo Base OSとユーザーアプリケーションを含むコンテナはどちらも、Armadillo Base OSの リモートアップデート機能で安全にアップデートすることができます。Armadillo Base OSはアップデートの 状態を2面化しているので電源やネットワークの遮断でよって中断してもアップデート前の状態に復旧します。

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

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

1.1.1. 扱うこと

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

また、本書では、アットマークテクノが運営するArmadilloサイトをはじめ、 開発に有用な情報を得る方法についても、随時説明しています。

1.1.2. 扱わないこと

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

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

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

ソフトウェアエンジニア
端末からのコマンドの実行方法など、基本的なLinuxの扱い方を知っている エンジニアを対象読者として想定しています。プログラミング言語として C/C++を扱えることは必ずしも必要ではありませんが、基礎的な知識がある方 が理解しやすい部分もあります。
ハードウェアエンジニア
電子工学の基礎知識を有したエンジニアを対象読者として想定しています。 回路図や部品表を読み、理解できる必要があります。

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

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

  • 各種信頼性試験データ・納入仕様書等製造関連情報

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

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

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

1.5. 本書の構成

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

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上 Linuxの root ユーザで実行

[armadillo /]$

Armadillo上 Linuxの一般ユーザで実行

[container /]#

Podmanコンテナ内で実行

Armadillo上 U-Bootの保守モードで実行


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

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

表記 説明

[VERSION]

ファイルのバージョン番号


1.6.3. アイコン

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

[警告]

注意事項を記載します。

[ティップ]

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

[注記]

用語の説明や補足的な説明を記載します。

1.7. 謝辞

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