低価格車載 IoTブリッジをAWS IoTに繋げてみる

あらゆる機器をIoT化 USB/RS232C/RS485 接続でデータ取得及びコントロールが可能な機器であれば、どんなものでもインターネットと” ブリッジ” することが可能です。 “ブリッジ” する機器と通信に必要なアプリケーションソフトウェアは、お客様自身で自由に開発が可能な他、XSHELLで開発を行うことも可能です。

isaax を用いたリモート管理

isaaxをプリインストール。稼働状況をリアルタイム で確認できるほか、機器ごとに個別設定値をWeb上から設定したり、遠隔 でアプリケーションソフトウェアをアップデート可能。bridge電源がオフ場合も、次回起動時に自動的に 最新 アプリケーションソフトウェアを取得し、常に最新バージョンが実行されます。

様々な無線モジュールを搭載可能

レドーム内に無線モジュール接続用USBコネクタを2個用意。LTEモジュー ルとしてピクセラ社 PIX-MT100 を搭載可。オプションBluetoothアダプタを搭載すれ、BLE ゲートウェイとしても動作可能。いずれ 無線モジュール もポリカーボネートとABS製の頑丈なレドームに保護され破損心配がありません。

車載で使用に耐えるアルミケース

板厚1.5mm硬質アルミケースを採用。バスやトラック激しい振動に耐えます。放熱性も抜群で夏場でもファンレス動作OK。

12V/24V両対応電源回路

DC9 ~ 36V という広い電源電圧範囲を実現。12V 車と 24V 車 どちらでも使 えます。イグニッション時など一時的に電圧が動作可能範囲以 下になって も、独自設計 瞬停防止回路が約 2 秒間回路に電力を供給し続けます。

「XSHELL IoTブリッジ」とAWS IoTに接続する方法について

こちらのドキュメントでは弊社が開発しているIoTゲートウェイであるXshell IoTブリッジとAWS IoTを連携させ、メッセージを送信する方法について説明します。 手順は以下の通りです。
  1. AWS IoTコンソールの設定
  2. デバイスの設定
  3. サンプルスクリプトの実行

AWS IoTコンソール側の設定

まずはじめにAWS IoTコンソールにログインし、モノ(デバイス)の作成、認証のための証明書とキーペアの生成とダウンロード、ポリシーのアタッチなどを行います。 なお、このドキュメントではAWS IoTコンソール側での設定に関する詳細な説明はいたしません。公式ドキュメントに記載の手順を参考に作業を行っていただき、あらかじめ初期設定が終了し、証明書・キーペアがダウンロードされている前提で次項へ進みます。

デバイスの設定

デバイス側に必要な設定を行うため、Xshell IoTブリッジのターミナルに接続します。 作業ディレクトリとして、device-sdkを作成します。
$ mkdir ~/device-sdk && cd ~/device-sdk
AWS IoTコンソールからダウンロードした証明書、キーペア、ルートCAを置くcertsディレクトリをdevice-sdk/配下に作成し、ローカルマシンからXshell bridgeへアップロードします。 今回のサンプルアプリケーションはNode.jsで実行するため、必要な環境のインストールを行います。
$ curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
$ sudo apt-get install -y nodejs
次にAWS IoT Device SDK for JavsScript/Node.jsをインストールします。
npm install aws-iot-device-sdk
次にサンプルのスクリプトを以下の内容で作成します。ここではファイル名をindex.jsとします。また、認証ファイルの指定はそれぞれ実際のファイル名に置き換えてください。リージョンの変更が必要な場合はregionプロパティを変更します。
var awsIot = require('aws-iot-device-sdk');
var fs = require('fs');
// 認証ファイルの指定
var KEY = __dirname + '/certs/private.pem.key';
var CERT = __dirname + '/certs/certificate.pem.crt';
var TRUSTED_CA = __dirname + '/certs/root-CA.crt';
var device = awsIot.device(
{
   keyPath: KEY,
  certPath: CERT,
    caPath: TRUSTED_CA,
  clientId: 'someclientid',
    region: 'ap-northeast-1'
});
device
  .on('connect', function() {
    console.log('connect');
    device.subscribe('foo', {'qos': 1});
  });
device
  .on('message', function(topic, payload) {
    console.log('message', topic, payload.toString());
  });
最終的な構成は以下の通りとなります。
.
└── device-sdk
    ├── certs
    │   ├── certificate.pem.crt
    │   ├── private.pem.key
    │   └── root-CA.crt
    ├── index.js
    └── node_modules

サンプルスクリプトの実行

サンプルスクリプトを実行します。
node index.js
conndectと表示されるのでAWS IoTコンソールに移動し、ダッシュボードからデバイスにメッセージを送信します。サイドバーの[Test]から[Publish]の項目に設定したトピックfooを入力し、[Publish to topic]をクリックします。 ターミナルに戻り、先ほどダッシュボードから送信したメッセージが表示されれば成功です。
message tester {
  "message": "Hello from AWS IoT console"
}
]]>

上部へスクロール