「Armadillo(アルマジロ)」は、ARMコアプロセッサ搭載・Linux対応の組み込みプラットフォームのブランドです。
Armadilloブランド製品には以下の特長があります。
ARMプロセッサ搭載・省電力設計
ARMコアプロセッサを搭載しています。1~数ワット程度で動作する省電力設計で、
発熱が少なくファンを必要としません。
小型・手のひらサイズ
CPUボードは名刺サイズ程度の手のひらサイズが主流です。
名刺の1/3程度の小さなCPUモジュールや無線LANモジュール等、超小型のモジュールもラインアップしています。
標準OSとしてLinuxをプリインストール
標準OSにLinuxを採用しており、豊富なソフトウェア資産と実績のある安定性を提供します。
ソースコードをオープンソースとして公開しています。
開発環境
Armadilloの開発環境として、「Atmark Techno Development Environment (ATDE)」を無償で提供しています。
ATDEは、VMwareなど仮想マシン向けのデータイメージです。
このイメージには、Linuxデスクトップ環境をベースにGNUクロス開発ツールやその他の必要なツールが事前にインストールされています。
ATDEを使うことで、開発用PCの用意やツールのインストールなどといった開発環境を整える手間を軽減することができます。
50mm×50mmの小型モジュール型組み込みプラットフォーム
Armadillo-610は、Arm Cortex-A7コアのSoC「i.MX6ULL」(NXPセミコンダクターズ製)を搭載した、小型CPUモジュール型の組み込みプラットフォームです。
ユーザー自身が新たに拡張ボードを開発して機器に組み込むことを想定しており、
設計が煩雑になりがちなCPU周りはArmadillo-610をそのまま使い、開発セット用拡張ボードの回路図(購入者向けに無償で提供)を参考にして
設計開発が比較的簡単なインターフェース部分だけを拡張設計することにより、設計時間を節約しつつさまざまな形状の基板を実現することができます。
耐環境性能に配慮・省電力、産業用途向け
Armadillo-610は動作温度範囲-20℃~+70℃までをカバーする産業用途向けの仕様です。
また、わずか数W程度で動作するので、低消費電力が必須条件となるバッテリ駆動の機器にも適しています。
Armadillo Base OS搭載
「Armadillo Base OS」を搭載しています。
ユーザー自身がボードの機能を自由に設計・開発して書き込むことで、
多様な製品を作ることができます。
Device Tree Blob(DTB)作成ツール「at-dtweb」
使いたいインターフェースをブラウザ上のGUIで選択指定するだけでDevice Tree Blob(DTB)を作成できるツールです。Linuxカーネルのソースコードを手動で変更することなくGUIで選択したインターフェースを利用できます。
2.1.3. Armadillo Base OSとは
Armadillo Base OSは、アットマークテクノが提供する専用ディストリビューションです。
Linux5.10をベースに、コンテナ管理機能、ソフトウェアアップデート機能、ネットワークマネージャーなどに対応。
機能を限定したコンパクトなOSで、安全性の高い運用を実現します。
OSのコンパクト化
OS基盤の機能を最小限にしたことで、セキュリティリスクを低減しています。
アットマークテクノが継続的にアップデートを提供するため、
高セキュリティなIoT機器として長期間に渡り運用することができます。
コンテナによるアプリケーション運用
アプリケーションを「コンテナ」単位でOSから分離して管理できるため、コンテナごとのアップデートが可能です。
サンドボックス化されることにより、悪意あるソフトウェアからの攻撃に対する機器全体の保護に有効性を発揮します。
製品開発を開始するにあたり、Armadillo Base OS に関してより詳細な情報が必要な場合は、
「開発前に知っておくべき Armadillo Base OS の機能・特徴」 を参照してください。
Armadillo Twin は、アットマークテクノが提供する Armadillo Base OS 搭載のデバイスをリモートから運用管理することができるクラウドサービスです。
様々なタスクをリモートから実行できるようになり、 OS アップデートもサービス画面からの操作で行えるため、稼働中のデバイスは常に最新の状態を維持することができます。また、バグ修正やセキュリティ対策などのメンテナンスのほか、機能追加や設定変更、アプリケーションのアップデートなども行えるため、デバイスの設置現場に出向くことなく、計画的で効率的なDevOpsを実現することができます。
本書では、開発・量産・運用の各フェーズにおける Armadillo Twin の利用について記載しています。
ソフトウェアアップデート (OTA)
遠隔からデバイスのソフトウェアアップデートをすることで、長期的にセキュリティ性の高いシステムを保つと共に、新たな機能を提供することも可能です。本サービスで管理するデバイスに搭載されている Armadillo Base OS は、不正なソフトウェアへのアップデートを行わせない署名検証機能や、アップデートが失敗した際に自動で元の状態に戻るロールバック機能を備えています。そのため、安心してソフトウェアアップデートを利用することができます。
遠隔稼働監視
登録されたデバイスの死活監視をはじめ、CPU の使用率や温度、メモリの使用量、モバイル回線の電波状況、ストレージの空き容量や寿命を監視することができます。各値にはアラートの設定を行うことができ、異常を検知した場合はアラートメールを管理者に送信します。メールを受けた管理者は本サービスの遠隔操作機能を利用し、即座に対応を行うことができるため、システムの安定運用を行うことができます。
そのほか、本サービスに登録したデバイスは、自由にラベル名を付けたりグループを作成して管理することができるため、どのデバイスをどの場所に設置したか画面上で把握することが容易になります。また、デバイス本体に搭載されているセキュアエレメントを利用した個体認証により、不正なデバイスの登録を防ぎます。
遠隔操作
画面上で入力した任意のコマンドをデバイス上で実行することができます。本サービスは遠隔操作で一般的に使われる SSH(Secure Shell) のように固定グローバル IP アドレスの設定は不要です。そのため、通信回線の契約料金を安くできるだけではなく、インターネット上からのサイバー攻撃のリスクを抑制する効果も期待できます。
任意のコマンドは単一のデバイスだけではなく、グループ単位、また複数のデバイスを選択して一括して実行したり、時刻を指定するスケジュール実行にも対応しています。
Armadillo Twin は、下記の機能を提供します。
| |
---|
Armadillo-610 は シリアルナンバー:00B700430001 以降の個体で Armadillo Twin を利用することができます。 |
Armadillo-610の製品ラインアップは次のとおりです。
表2.1 Armadillo-610ラインアップ
名称 | 型番 |
---|
Armadillo-610量産ボード | A6100-U00Z |
Armadillo-610開発セット | A6100-D00Z |
2.2.1. Armadillo-610開発セット
Armadillo-610開発セット(型番: A6100-D00Z)は、Armadillo-610を使った開発がすぐに開始できるように、USBシリアル変換アダプタやACアダプタなど、開発に必要なものを一式にしています。また、拡張ボードの回路図は製品購入者向けに無償で公開しています。
表2.2 Armadillo-610開発セットのセット内容
Armadillo-610 |
Armadillo-610拡張ボード |
USB(Aオス-miniB)ケーブル |
USBシリアル変換アダプタ |
スピーカー |
ACアダプタ(12V/2.0A) |
ジャンパソケット |
ねじ |
スペーサ |
2.2.2. Armadillo-610量産ボード
Armadillo-610量産ボード(型番: A6100-U00Z)は、量産向けのラインアップです。
表2.3 仕様
プロセッサ | NXP Semiconductors i.MX6ULL |
ARM Cortex-A7 x 1
・命令/データキャッシュ 32KByte/32KByte
・L2 キャッシュ 128KByte
・内部 SRAM 128KByte
・メディアプロセッシングエンジン(NEON)搭載
・Thumb code(16bit 命令セット)サポート |
システムクロック | CPU コアクロック(ARM Cortex-A7): 528MHz
DDR クロック: 396MHz
源発振クロック: 32.768kHz, 24MHz |
RAM | DDR3L: 512MByte
バス幅: 16bit |
ROM | eMMC: 約3.8GB(約3.6GiB) |
SD | microSDスロット x 1 [] |
拡張インターフェース | LANx1、USBx2、UARTx8、SDx1 []、LCDx1、I2Sx2、S/PDIFx1、MQSx1、I2Cx2、SPIx4、CANx2、A/Dx7、PWMx8、GPIOx66等 [] |
カレンダー時計 | SoC内蔵リアルタイムクロック [] |
LED | 黄色(面実装) x 1 |
セキュアエレメント | NXP Semiconductors SE050 [] |
電源電圧 | DC 3.6〜4.5V |
消費電力(参考値) | 約0.8W(待機時)、約1W(LAN通信時) [] |
使用温度範囲 | -20~+70℃(結露なきこと) |
外形サイズ | 50×50mm |
Armadillo-610および開発セット付属の拡張ボードインターフェースレイアウトは次のとおりです。
各インターフェースの配置場所等を確認してください。
| |
---|
コネクタの挿抜寿命を記載していますが、製品出荷時における目安であり、
実際に挿抜可能な回数を保証するものではありません。
また、無理な挿抜は接触不良や破損の原因となりますので、取り扱いには十分ご注意ください。 |
2.3.1. Armadillo-610 インターフェースレイアウト
表2.4 Armadillo-610 インターフェース内容
部品番号 | インターフェース名 | 形状 | 備考 |
---|
CON1 | SDインターフェース | microSDスロット(ヒンジタイプ) | |
CON2 | 拡張インターフェース | 基板間コネクタ100ピン(0.4mmピッチ) | 挿抜寿命: 20回 |
CON10 | JTAGインターフェース | ピンヘッダ 8ピン(2mmピッチ) | コネクタ非搭載 |
LED5 | ユーザーLED | LED(黄色,面実装) | |
2.3.2. Armadillo-610 拡張ボード インターフェースレイアウト
表2.5 Armadillo-610 拡張ボード インターフェース内容
部品番号 | インターフェース名 | 形状 | 備考 |
---|
CON1 | SDインターフェース | SDスロット | |
CON2 | LANインターフェース | RJ-45コネクタ | |
CON3 | シリアルインターフェース | ピンヘッダ7ピン(1.25mm ピッチ) | 挿抜寿命: 40回 |
CON4 | Armadillo-610インターフェース | 基板間コネクタ100ピン(0.4mmピッチ) | 挿抜寿命: 20回 |
CON5 | USBホストインターフェース | Type-Aコネクタ(2ポートスタック) | |
CON6 | USB OTGインターフェース | Micro-ABコネクタ | |
CON7 | Groveインターフェース | ピンヘッダ 4ピン(2.54mmピッチ) | |
CON8 | ピンヘッダ 4ピン(2.54mmピッチ) | |
CON9 | ピンヘッダ 4ピン(2.54mmピッチ) | |
CON10 | ピンヘッダ 4ピン(2.54mmピッチ) | |
CON11 | LCDインターフェース | FFCコネクタ 50ピン(0.5mmピッチ) | 挿抜寿命: 20回 |
CON12 | 電源入力インターフェース | DCジャック | 対応プラグ: 内径 2.1 外形5.5mm |
CON13A | 電源出力インターフェース | 端子台 2ピン | |
CON13B | DIDOインターフェース | 端子台 7ピン | |
CON13C | RS485インターフェース | 端子台 3ピン | |
CON13D | オーディオインターフェース | 端子台 2ピン | |
CON14 | 電源出力インターフェース | ピンヘッダ 2ピン(2.54mmピッチ) | コネクタ非搭載 |
CON15 | RTCバックアップインターフェース | 電池ボックス | 対応電池: CR2032 |
CON16 | ピンヘッダ 2ピン(2.54mmピッチ) | コネクタ非搭載 |
CON17 | 内蔵RTCバックアップインターフェース | ピンヘッダ 2ピン(2.54mmピッチ) | コネクタ非搭載 |
CON18 | WLANインターフェース | 基板間コネクタ34ピン(0.5mmピッチ) | |
CON19 | 拡張インターフェース | ピンヘッダ10ピン(2.54mmピッチ) | コネクタ非搭載 |
CON20 | ピンヘッダ40ピン(2.54mmピッチ) | コネクタ非搭載 |
CON21 | ピンヘッダ10ピン(2.54mmピッチ) | コネクタ非搭載 |
CON22 | ピンヘッダ10ピン(2.54mmピッチ) | コネクタ非搭載 |
CON23 | リセットインターフェース | ピンヘッダ 2ピン(2.54mmピッチ) | コネクタ非搭載 |
CON24 | 電源入力インターフェース | ピンヘッダ 6ピン(2.54mmピッチ) | コネクタ非搭載 |
JP1 | 起動デバイス設定ジャンパ | ピンヘッダ 2ピン(2.54mmピッチ) | |
SW1 | ユーザースイッチ | タクトスイッチ | |
SW2 | リセットスイッチ | タクトスイッチ | |
SW3 | ONOFFスイッチ | タクトスイッチ | |
LED1 | LANスピードLED | LED(緑色,面実装) | |
LED2 | LANリンクアクティビティLED | LED(黄色,面実装) | |
LED3 | ユーザーLED | LED(緑色,面実装) | |
TH7 | Armadillo-610用スタッド | スペーサー M3 (L=3mm) | |
TH8 | スペーサー M3 (L=3mm) | |
TH13 | WLAN用スタッド | スペーサー M2 (L=1.5mm) | |
TH14 | スペーサー M2 (L=1.5mm) | |
Armadillo-610のブロック図は次のとおりです。
Armadillo-610 でストレージとして使用可能なデバイスを次に示します。
表2.6 ストレージデバイス
デバイス種類 | ディスクデバイス | 先頭パーティション | インターフェース |
---|
オンボード eMMC | /dev/mmcblk0
| /dev/mmcblk0p1
| オンボード |
オンボード eMMC (GPP) | /dev/mmcblk0gp3
| なし | オンボード |
SD/SDHC/SDXCカード | /dev/mmcblk1
| /dev/mmcblk1p1
| SDインターフェース(Armadillo-610: CON1) []
SDインターフェース(Armadillo-610 拡張ボード: CON1) [] |
USBメモリ | /dev/sd* []
| /dev/sd*1
| USB ホストインターフェース (Armadillo-610 拡張ボード: CON5) |
| GPP(General Purpose Partition)について |
---|
GPP は、eMMC の通常の記憶領域を割譲して eMMC 内部に作られた記憶領域です。 eMMC の通常の記憶領域とはアドレス空間が異なるため、/dev/mmcblk0 および /dev/mmcblk0p* に対してどのような書き込みを行っても /dev/mmcblk0gp* のデータが書き換わることはありません。 Armadillo-610 では、8 MiB の GPP を4つ作成しています。各領域の用途を表2.7「eMMCのGPPの用途」に示します。 表2.7 eMMCのGPPの用途 ディスクデバイス | 用途 |
---|
/dev/mmcblk0gp0
| ライセンス情報等の為の予約領域 | /dev/mmcblk0gp1
| 動作ログ領域 | /dev/mmcblk0gp2
| 動作ログ予備領域[] | /dev/mmcblk0gp3
| ユーザー領域 |
|
Armadillo-610のeMMCのパーティション構成を
表2.8「eMMCメモリマップ」に示します。
表2.8 eMMCメモリマップ
パーティション | サイズ | ラベル | 説明 |
---|
1 | 300MiB | rootfs_0 | A/B アップデートのA面パーティション(Linuxカーネルイメージ, Device Tree Blob, Alpine Linux rootfsを含む) |
2 | 300MiB | rootfs_1 | A/B アップデートのB面パーティション(Linuxカーネルイメージ, Device Tree Blob, Alpine Linux rootfsを含む) |
3 | 50MiB | logs | ログ書き込み用パーティション |
4 | 200MiB | firm | ファームウェア用パーティション |
5 | 2.7GiB | app | アプリケーション用パーティション |
Armadillo-610のeMMCのブートパーティションの構成を表2.9「eMMC ブートパーティション構成」に示します。
表2.9 eMMC ブートパーティション構成
ディスクデバイス | サイズ | 説明 |
---|
/dev/mmcblk0boot0
| 31.5 MiB | A/B アップデートのA面 |
/dev/mmcblk0boot1
| 31.5 MiB | A/B アップデートのB面 |
Armadillo-610のeMMCのGPP(General Purpose Partition)の構成を表2.10「eMMC GPP構成」に示します。
表2.10 eMMC GPP構成
ディスクデバイス | サイズ | 説明 |
---|
/dev/mmcblk0gp0
| 8 MiB | ライセンス情報等の為の予約領域 |
/dev/mmcblk0gp1
| 8 MiB | 動作ログ領域 |
/dev/mmcblk0gp2
| 8 MiB | 動作ログ予備領域[] |
/dev/mmcblk0gp3
| 8 MiB | ユーザー領域 |
Armadillo Base OS に含まれるソフトウェアのライセンスは、 Armadillo にログイン後に特定のコマンドを実行することで参照できます。
手順について、詳細は以下の Howto を参照してください。