Armadillo-810/840では、PUX社のソフトセンサーという画像処理ソフトウェアを利用することができます。 今回はソフトセンサーの「ナンバープレート認識」ソフトウェアを使ったデモをご紹介します。
ブログ
-
at_takuya.sasaki
-
at_ito
アプリケーションやドライバーの作りによりカーネルパニックが発生し、意図通りにソフトウェアが動作しない場合があるかと思います。その際、すでにフィールドに出している製品等ですと復帰ができず困る場合もあるかと思います。
そのような場合の対策として、カーネルパニックが発生すると、自動的に再起動する機能がありますので紹介します。 -
at_ito
Armadillo-IoTを使ったデモを作成する際、ArmadilloではRuby、クラウドのサンプルではjavascript等と複数の言語を使い分ける必要があります。
複数の言語を扱うのは面倒なので、Armadilloでもjavascriptが動かせないかと思い、Node.jsの実行環境をArmadilloに入れてみました。 -
at_mangetsu
Armadillo-IoTでSNMPエージェントを使用する方法を紹介します。
-
at_mangetsu
Armadillo-IoTで動作確認済みのBLE対応USBアダプタをご紹介します。
BLEセンサを複数接続して運用したい場合などにお役立ていただければと思います。 (2015年9月30日現在) -
at_takenoshita
SORACOM Airは、株式会社ソラコムから2015年9月30日に提供開始されたIoTデバイス向けデータ通信サービスです。LTE及び3G回線を使用可能です。
Armadillo-IoTは3Gに対応していますので、SORACOM Airを使うことができます。 早速、使ってみましょう。 -
at_mangetsu
Armadillo-IoTでSNMPを使いたい場合に、 SNMPエージェントをArmadillo-IoT上で動かす方法を紹介します。
-
at_mangetsu
Armadillo-IoT上で動作確認済みのBLE対応USBアダプタをご紹介します。
Armadillo-IoTにBLEセンサ/BLEデバイスを複数接続して動作させたい場合などの参考に役立てていただければ幸いです。 (2015年9月30日現在) -
at_kazutaka.bito
Armadillo-400シリーズは、タクトスイッチや、LCD拡張ボードのスイッチ(Armadillo-420を除く)について、 ボタン入力に応じて任意のコマンドを実行するswmgrというコマンドを使用できるようになっています。
ここでは、swmgrをタッチスクリーンのタッチに対応するように改造してみます。 -
at_kazutaka.bito
Armadillo-400シリーズの標準カーネルでは、タクトスイッチ、LCD拡張ボードのスイッチ(Armadillo420を除く)のボタン入力が実装されています。
ここでは、下記のようにGPIOを使ったボタン入力を追加してみます。 -
at_mangetsu
Armadillo-840に接続したカメラの画像をQt経由でLCD画面に表示させてみました。 カメラには Armadillo-810 カメラモジュール01(OP-A810-CAM01-00)を使用し、 Armadillo-840液晶モデル開発セットに接続してみました。
-
at_mangetsu
Armadillo-420上でPerl5を動かしてみました。
-
at_ito
M2MやIoTの実現に適したシンプルで軽量なプロトコルとしてMQTTというものがあります。MQTTはセンサー等のデバイスからデータを送受信する用途に使われることを想定しています。
Armadillo-IoTには、Rubyから簡単にMQTTが扱えますので、Armadillo-IoTの内部温度センサーの値を送信するサンプルプログラムを紹介します。 -
at_kazutaka.bito
Armadillo-IoT+RN4020アドオンモジュールで、 BLE照度センサー(http://www.robotsfx.com/robot/BLECAST_BL.html) から照度データを読んでみました。
-
at_takuya.sasaki
過去に「Armadillo-400シリーズでBLEを使ってみる 」というブログを書いてみました。
上記ブログと同じことを、Armadillo-840のカーネルバージョン3.4で動作できるかどうか試してみたいと思います。 -
at_kazutaka.bito
Armadillo-400シリーズでWebページ上で表とグラフを表示するサンプルデモを作ってみました。
-
at_takuya.sasaki
過去のブログ「Armadillo-420でWLI-UC-GNMを使ってアクセスポイントに接続する 」では、Atmark Distで試してみましたが、今度は Debian環境で試してみました。
-
at_takuya.sasaki
Armadillo-420の動作確認済デバイスに掲載されているUSB無線LANアダプタ [ BUFFARO WLI-UC-GNM]を使って アクセスポイントに接続するまでの手順を一通り試してみました。
-
at_takuya.sasaki
過去に書いたブログ「Armadillo-400シリーズでBLEを使ってみる」では、Armadillo-400シリーズのカーネルバージョンが2.6.xxと古いため、バックポートを実施しました。
しかし、Armadillo-IoTでは、カーネルバージョンが3.14に上がりましたので、バックポートが不要になります。 そこで、上記ブログと同じことを、Armadillo-IoTで、2015年7月時点の最新のbluez 5.32を使って試してみたいと思います。 -
at_ito
Aramdilloの開発環境であるATDEを使用する場合には、VMware等の仮想マシンを動作させるためのソフトウェアが必要になります。VMwareは多数の製品があるため、ここではVMwareの選び方を簡単に説明します。
-
at_ito
Armadillo-IoTを使用する際に、簡単にWebアプリケーションを作成したい場合があると思います。HTTPサーバーとCGIを利用してWebアプリケーションを作成することもできますが、事前知識が必要であまりお手軽ではありません。
ここではArmadillo-IoTに標準で入っているRubyのWebアプリケーションフレームワークであるSinatraを使用して、簡単にWebアプリケーションを作成し、動かしてみます。 -
at_kazutaka.bito
Armadillo-IoT開発セットと、RS232アドオンモジュールの未使用のGPIO使って、GPIOをI2C化する方法を確認しました。
RS232アドオンモジュールには、Armadillo-IoTとのコネクタ(60pin)の信号がスルーホールに出ているので、 動作確認にはこのスルーホールが活用できます。 -
at_kazutaka.bito
Armadillo-IoT+Armadillo-IoT EnOceanアドオンモジュール EN00で、 EnOcean通信のセンサーからデータを取得して、Herokuに通知する仕組みを作ってみました。
-
at_ito
Armadillo出荷時等にLinuxカーネルイメージ、ユーザーランドイメージを自動的に書き換える必要がある場合も多いかと思います。
ここではUSBメモリを使用して、Linuxカーネルイメージ、ユーザーランドイメージを書き換えるためのシェルスクリプトを紹介します。 -
at_ito
Armadillo出荷時等にLinuxカーネルイメージ、ユーザーランドイメージを自動的に書き換える必要がある場合も多いかと思います。
ここではTeraTermマクロを使用して、Linuxカーネルイメージ、ユーザーランドイメージを書き換えるためのTeraTermマクロを紹介します。 -
at_ito
Armadillo出荷時等にLinuxカーネルイメージ、ユーザーランドイメージを自動的に書き換える必要がある場合も多いかと思います。
ここではTeraTermマクロを使用して、Linuxカーネルイメージ、ユーザーランドイメージを書き換えるためのTeraTermマクロを紹介します。 -
at_kazutaka.bito
Armadillo-400シリーズでWebページ上で表を表示するサンプルデモを作ってみました。
-
at_kazutaka.bito
Armadilloで簡易的に固定IPアドレス(例:192.168.10.10)を設定するには、
[armadillo ~]# ifconfig eth0 192.168.10.10 up
というコマンドでできます。 -
at_kazutaka.bito
Armadillo-810開発セットをPCとLANで接続して、PCのWebブラウザから カメラの画像の動画(MJPG:10fps)
カメラの画像の5秒毎の静止画(JPEG)
静止画を10枚分のファイルのダウンロード
ができるサンプルデモを作ってみました。 -
at_kazutaka.bito
Armadillo-810開発セットに簡単にトグルスイッチを付ける方法を検討してみました。
ここでは、スイッチを1個つけれればいい、ということで、ピンコネクタが実装済みの起動モード設定のジャンパ(JP1)を使うことにします。 -
at_kazutaka.bito
Armadillo-400シリーズハードウェアマニュアに記載されている 「i.MX257のSoftware Pad Control Register(SW_PAD_CTL)とDrive Voltage Select Group Control Register(SW_PAD_CTL_GRP_DVS)で、 出力電流(Std, High, Max)、スルーレート(Slow, Fast)、プルアップ/プルダウンを変更することができます。」 について、端子の出力電流の設定を実際にしてみました。
-
at_takuya.sasaki
Armadillo-840でFullHD(1920x1080)のH.264動画を再生しようと試みましたが、以下のメッセージが出力されて、再生されませんでした。
-
at_takenoshita
トレジャーデータさんからfluent bitというものがリリースされたので、Armadillo-IoTで動かしてみました。
-
at_ito
Armadillo-IoT: dnsmasqをインストールするでインストールしたdnsmasqを使ってArmadillo-IoTをDNSキャッシュサーバーとして利用する方法を紹介します。
-
at_ito
Armadillo-IoT: dnsmasqをインストールするでインストールしたdnsmasqを使ってArmadillo-IoTをDHCPサーバーとして利用する方法を紹介します。
-
at_ito
Armadillo-IoTには有線LAN、無線LANや3Gが搭載されており、ルーターとしても使用できます。ルーターにはIPマスカレード、DHCPサーバー、DNSサーバー等の機能が必要になります。 ここでは、DNSキャッシュサーバーとDHCPサーバーとして利用できるdnsmasqをインストールする方法を紹介します。
-
at_takuya.sasaki
前回のeclipseのインストールまで完了した後は、Cで記述したソースコードをビルドしてみます。
1. Cプロジェクトの新規作成
GNOMEからEclipseを起動してください。 メニューの[ファイル]->[新規]->[Cプロジェクト]を選択すると以下のウィンドウが表示されます。
プロジェクト名に任意の名前(今回は hello とします)を入力して、[次へ]を押すと以下のウィンドウが表示されます。
-
at_takuya.sasaki
Armadillo上でCSVファイルをパースして、それぞれの要素ごとに処理を分岐させたい場合があるかと思います。今回は awk を使って簡単なスクリプトを書いてみました。
以下は、test.csvというCSVファイルをパースして、第1カラムが " ls" の場合、第2カラムに指定されたパスのlsを実行するという例です。 CSVファイル内をすべて処理し終わった後に、何らかの処理をしたい場合には、ENDの中に処理を記述できます。
awk ' BEGIN{ FS = "," } { for (i = 1; i <= NF; i++) { param[i] = $i } if( param[1] == "ls" ){ system("ls "param[2]""); } } END{ }' test.csv
-
at_takuya.sasaki
Armadillo-800シリーズの開発環境であるATDE5にeclipseをインストールして、C/C++のプログラムをビルドしてみたいと思います。 今回はeclipseのインストールまでを試してみました。
1. eclipseのインストール
eclipseは以下のサイトからダウンロード可能です。
http://www.eclipse.org/downloads/OSにはLinux、アーキテクチャは環境に合わせてください。今回はJavaではなく、C/C++のビルドを試しみたいので、パッケージには [Eclipse IDE for C/C++ Developers]を選択しました。
-
at_kazutaka.bito
用意するもの
- USB電源ケーブル
- USB電流電圧チェッカ
- USBバッテリ(PC、モバイルバッテリなど)
USBバッテリ--USB電源ケーブル--USB電流電圧チェッカ と接続する。
Armadillo-440開発セットで標準イメージで起動したとき 通常動作時の電圧(標準イメージ内のサンプルソフトfunctesterが動作中)
Armadillo-440開発セットで標準イメージで起動したとき 通常動作時の電流(標準イメージ内のサンプルソフトfunctesterが動作中)
Armadillo-440開発セットで標準イメージで起動したとき スリープ時の電圧(power-on suspend)
-
at_kazutaka.bito
当方がテストに使っていること以外に用途があるのかわからないが、備忘録的にメモしておく。
Armadilloと対抗機(USBキーボード等)を接続して、とりあえずイベントを拾えているかどうかの確認に、
[armadillo ~]# hexdump /dev/input/event0 0000000 f5d3 38c3 09ab 0000 0004 0004 005d 0007 0000010 f5d3 38c3 09cc 0000 0001 004c 0001 0000 0000020 f5d3 38c3 09d9 0000 0000 0000 0000 0000 0000030 f5d3 38c3 16ef 0003 0004 0004 005d 0007 0000040 f5d3 38c3 1709 0003 0001 004c 0000 0000
といった感じでhexdumpで反応を確認している。
この出力をファイルに残したいと思って、
-
at_kazutaka.bito
tarの解凍先を指定したい場合は、-Cオプションで指定できる。
例)temp.tar.gzを~/tmpに直接展開したい場合
tar zxvf temp.tar.gz -C ~/tmp/
-
at_kazutaka.bito
Armadillo-IoTで、3Gの接続状態を監視する方法は、 Armadillo-IoT ゲートウェイ スタンダードモデル 製品マニュアルの9.3.1. ifplugd でできる。
-
at_ito
ここでは、Linux上で.NET Framework互換の環境を実現するMonoを使用して、.NETアプリをArmadillo-440にて動かしてみます。
-
at_ito
Debianのデフォルトのエディタはnanoになっています。visudoコマンドや、gitコマンド等を使用した場合に、デフォルトのエディタが使われることがあります。nanoは単機能なコマンドなため、vimやemacs等の多機能なエディタに変更したい場合があるかと思います。 そのため、ここではATDE(Debian)のデフォルトのエディタを変更する方法を紹介します。
-
at_ito
テストを行う際に、自動的にコマンドを実行したり等、テストの自動化を行いたい場合があるかと思います。 今回は例として、シリアル通信ソフトウェアであるTera Termマクロを使って、起動テストを行う方法を紹介します。
-
at_takuya.sasaki
Armadillo-IoTのマニュアルでは、AWL13をアクセスポイント(AP)に接続させてIPアドレスを固定で割り振る方法を紹介しています。
[ 6.2.4.2. 手動で無線LANインターフェースを有効化する ]
https://manual.atmark-techno.com/armadillo-iot/armadillo-iotg-std_product_manual_ja-1.2.0/ch06.html#sec-net-wlanこの場合、インターネットに接続しようとしても、ホスト名解決ができず失敗するはずです。
-
at_takuya.sasaki
Armadillo-840にUSBカメラを接続し、LCDにUSBカメラの画像をQtで描画するサンプルは、以前以下のフォーラムでサンプルコードが提供されています。
[ QtでUVCカメラを表示させる ]
https://users.atmark-techno.com/forum/armadillo/1343このサンプルでは yuyv_to_rgb.h というソースコード内で、USBカメラからのYUYVの画像データを、LCDに表示するために RBG形式に変換しています。 この変換処理は、ARM Cortex-A9のNEONを使うことで高速化することが可能で、すでに実装もされています。
(#ifdef __ARM_NEON__
で囲まれた箇所です) -
at_kazutaka.bito
Armadillo-IoT+Armadillo-IoT 絶縁デジタル入出力/アナログ入力アドオンモジュール DA00で、 マグネットセンサーの接点のオープン/クローズ状態を取得して、Herokuに通知する仕組みを作ってみた。 ここでは、株式会社日本アレフの人感センサーAPX-101を使用する。 この人感センサーは動体を検知すると、赤い光が点灯して警報出力用にパルスを出力する。 Armadillo-IoTで警報出力のパルスの立ち上がりエッジを検出して、検出した時刻をHeroku送信する仕組みを作る。
-
at_kazutaka.bito
Armadillo-IoT+Armadillo-IoT 絶縁デジタル入出力/アナログ入力アドオンモジュール DA00で、 マグネットセンサーの接点のオープン/クローズ状態を取得して、Herokuに通知する仕組みを作ってみた。 ここでは、株式会社日本アレフのマグネットセンサーAD-1001/AD-1011を使用する。 このマグネットセンサーは、 マグネットが近いと、接点がクローズ マグネットが遠いと、接点がオープン になるようだ。