Raspberry Pi / AruduinoでLoRaゲートウェイ / 端末(ノード)開発を学ぶ

はじめに 


筆者はエンジニアでない。このページの解圧に関してはウェブ情報紹介、オープンソース、Raspberry Pi、Arduino等について解説
筆者も一応はRaspberry PiArduinoを昔々入手し、一通り動かした後、手に負えず埃をかぶっている。従って以下に記載する開発例を自ら動かしたことはなく、単なる情報の提供である。
本テーマとは少しずれるが、LoRa開発キットはソラコムが「PoC」(LoRaゲートウェイとLoRa通信端末他、ハードはM2Bコミュニケーションズ)を販売している。ソラコムは得意のクラウドサービスとも結び付けてサポートしていると思われる。また間もなく(2016年12月)LoRa通信サービスと開始するソフトバンクも同じような開発キットを用意してくると思われる。多分プレスリリースでパートナーに指名した仏国Actility社のモノになると思われる。これらはLoRaWANをいかに使うかが目的となっているが、当ページはもっと深い(低い)レベル、LoRaゲートウェイや端末のハードソフト、またクラウド接続などを、開発例をなぞって一通り開発することが目的となっている。セミナーやサポートも充実しているようなので、LoRaWANのアプリケーション開発を学習するのに適している。


LoRaゲートウェイ・端末(ノード)・クラウドを安価に自力開発

Raspberry PiとArduinoの活用

教育用名刺サイズコンピュータボードRaspberryPiまたはArduino(両者ともハード・ソフトはオープンソース)でLoRa・Aruduinoゲートウェイ開発、Arduino LoRa端末(ノード)例が数多くアクセスできる。いくつか見た中で良さそうなのを紹介する。Raspberry Pi/Aruduinoをご存じない方のためにこのページ末に概略を記した。Raspberry PiはLinuxとC言語の技術を持たないと使いこなすのには骨が折れるかもしれない。Arduinoは小中学生でもつかこなしすことができるほど入門的なコンピュータボードなので、初心者向けである。

オープンソース注意事項

>オープンソースは基本的に提供者の善意による提供なので、その提供者に対して敬意と感謝を持ってほしい。もしその恩恵を強く感じたならば、こうした組織の一員として参加し、活動に協力したり(製作物{ソフトand/orソフト}の開示やサポートフォーラムのFAQ回答など)や相応のお金を得たら団体(NPOがほとんど)に献金をしていただきたい。
>オープンソースのハード・ソフトは教育用・研究用など個人的使用に関してはほとんど制約はないので気に欠けることは何もない。しかしビジネスに使用(お金儲け)は、制約がある場合やまったく無制限なケースなどさまざまな条件設定たなされている場合がある。GNU GPLGNU General Public LicenseCCCreative Commonsなどをよく調べたほうが良い。
>オープンソースは制作者のチェックだけであり、商品のように動作保証や製品保証はない。一般にはフォーラムが設けられており、参加メンバーが議論しあうとかFAQに回答している。

LoRa通信通信モジュール使用の際に留意すべきこと

>LoRa通信モジュールは現在のところまだ電波法の定める技適(技術基準適合試験)を取得しているのは、上記のM2Bコミュニケーションが開発製製、ソラコムが販売(PcO開発キットやクラウドサービスなども含め)している製品だけと思われる。しかし12月中にソフトバンクがLoRa通信サービスを開始するので、ソフトバンクだけでなく複数のメーカが技適問題はクリアしてくるので、選択肢は増えるであろう。
>このページで紹介する開発例は海外仕様(欧州868MHz)なので、日本のサブG通信帯(920MHz)と異なっている。すべての通信モジュールはSemtechICを採用している(まだSemtechしかLoRa通信ICは量産していない)ので欧州、米国、日本のいずれかに規格に設定できるようになっているはずである。ソースプログラムのその通信規格(868MHz・915MHz・920MHz)設定部を変更すれば国内使用も可能の筈である。以下にあるQiita.comのサイトにRaspberry PiによるLoRaゲートウェイとArduinoによるLoRaノード(端末)の開発例の中で、920MHz帯への変更の仕方が記述されている。技適問題さえ解決すれば実働が可能となる。 

The Things Networkでの学習例を和訳しqiita.comで開示 

The Things NetworkLoRaWANBluetoothのコミュニティのようだが会員登録をしていない(無料で会員になれる?)筆者はフルアクセスができない。様々なLoRaWANのハード・ソフトの実例を紹介し、サポートしあっているようだ。The Things NetworkについてはこのURLにある程度紹介がある。Raspberry Pi + LoRa通信モジュールでゲートウェイを開発し、Aruduino + LoRa通信モジュールで端末(ノード)を開発している。
また上記のように920MHz帯で使えるようにプログラム変更が加えられている。


このページのRaspberry PおよびAruduinoMEGA/DuePJRC社のTeensy によるLoRaゲートウェイとAruduinoによるLoRa通信端末(ノード)によりプライベートLoRaWANネットワークを開発している。この開発はEU H2020 WAZIUP projectの一環である。WAZIUPは最も開発が遅れているアフリカサハラ砂漠以南の国々(sub-saharian African countries)の農業・牧畜産業に最先端のIoTとビッグデータと導入して働く条件を改善しようとしている。
素人目にも懇切丁寧にハードの組み立てから、ソフトの開発まで説明されている。しかしLinuxやC言語の初心者にはかなりハードルは高そう。

説明・プログラムの中にCSMA(Carrier Sense Malti Access)や通信プロトコル”ack”等の追加例、GPSもある。LoRaはSigFOx同様、通信方式は極めてシンプル(原始的)で送信サイドは送りっぱなしで、受信側が受け取ったどうかの確認などはしていない。CSMAは複数の端末が同時に送信すると干渉しあってデータが壊れてしまうのを避けるための方式である。受信側が送信データを受け取った確認信号が”ack”である。この2つの通信機能を追加すると大幅に通信の信頼性が向上する。しかしCSMAや”ack"信号のやり取りは通信時間を増大させ、バッテリー駆動時間に大きな影響を与える。通信信頼性向上とバッテリー駆動時間はトレードオフの関係にあり、LoRaシステム設計の際、十分な検討が必要である。

余談だがスカイリー(横浜市、無線通信ソフトなどの開発会社)は先日の展示会でLoRaやSigFoxなどのLPWA/LPWANの通信信頼性を大幅に高めるソフト(プロトコルスタックSkWAN)を展示していた。同社は高度な通信関連のソフトを開発してきているので、こうしたソフトも広く浸透すると良いと思う。

クラウドプラットフォームはGoogleのリアルタイムデータベースfirebaseオープンデータIoTプラットフォームをMeta Labを使用して分析サービスしているThingspeak、およびNPOが提供するIoTプラットフォームfiwire多分ロイヤリティフリー、メンバーにならないとアクセスできないようでよくからない。活発に活動している様子)の3つが紹介されている。
Firebase の利用およびサポートは無料だがで使用できる。しかし一定量以上のデータ量になると、Googleクライドサービスの支払いが必要のようだ。Thingspeakはデータ量が少ない場合は無料で使用できるが一般には有償である。NPO提供のfirebaseは無償のようだが、会員となって貢献が必要らしい(会員でない筆者ではうまくアクセスできない)。

Arduinoによるゲートウェイ:中国 Dragino

AruduinoMEGAクラスが必要らしい)とDragino(多分Dragino YunLoRa通信用Arduinoアドオンボード)の2つのボードでゲートウェイとLoRaWAN端末(ノード)(こちらはUnoクラスで可)を製作している。Draginoは中国新センの会社で通信系のモジュールや装置を製造販売している会社である。LoRa通信モジュールは欧州と米国はサポートしているが日本(920MHz)はサポートせず技適も未取得なので、国内では使えない。参考資料として読んでほしい。

Raspberry PiPh.D. Eben UptonCambridge大学時代にWindows PCがコンピュータの代名詞となり、コンピュータ教育 はこのWidows PCだけに集中していることを憂い、コンピュータの本質を学べる教材用コンピュータとしてRaspberry Pi開発を決意、IntelIBMなどを経てBroadcom technical director & ASIC Architectの傍らでRaspberry Piの中核となるSoCを自力で開発した(Broadcom100人を超えるスタッフが協力したと言われる)。教育用コンピュータの価格を教科書と同じ$25-にするために、自らが創業したRaspberry Pi FoundationRaspberry Piおよびその開発環境を整備した。価格を抑えるためと思われるが、製造販売は大手インターネット販売会社RSコンポーネンツとPremier Farnell(インターネット販売URLはelement14に委託している。日本ではRSコンポーネントだけが販売し、サポートページも設けている。
Raspberry Pi2012年発売以来3年目を迎えた20163月で800万台出荷済みとしているので、現在(201612月)時点では1,000万台を超えているものと思われる。Raspberry Piは最新の20162月発売のRaspberry Pi 3B2012年初代Raspberry Pi性能の10倍とされ、Linux PCとして使用するのに十分の処理能力がある。従ってセルフコンパイルも可能。ボードの構成は極めてシンプルで基板表面に見えるのはDRAMEthernet制御IC、さらに小さなIC(多分電源IC)の3個のICとコネクタだけである。CPUを搭載したSoCDRAMの下に位置し(PoP :Package-on-Package構造)になっている。極めてシンプルな構造である。RSコンポーネンツのサポートページの中のFAQ5機種のRaspberry Pi比較表がある。
この比較表には掲載されていないが201511月発売のRaspberry Pi ZEROという組込用小型ボードがある。初代Raspberry Pi Aをシンプルにした製品で単価$5.0という驚きの価格でブームを巻き起こしており、未だに品不足状態とかで日本国内販売はない。並行輸入品が単価¥3,000-弱でインターネット販売されている。

ArduinoAtmel社製AVRCPUとしたArduinoコンピュータボード、C++タイプのArduino開発言語、Aruduino開発環境
Arduinoはイタリアで10年くらい前に開発され、Arduino LLCAruduino SRLが設計製造をし、様々なバージョンが販売されてきている。Wikiの情報によれば2013年で累積70万台が出荷とされているが、ハードもオープンソースの上、CPUAtmelAVRシリーズなので簡単にコピーできることから中国メーカなどが互換ボード(単価\1,000-またはそれ以下)を大量に販売するほか、IntelTIRenesas他多数のICメーカが自社CPUArduino互換ボードを製造販売しているので、その10倍もしくはそれ以上の台数が市場に出回っていると推測される。
インターネット販売スイッチサイエンスの社長金本氏が開発環境を日本語化して日本に紹介したことから、同社のホームページが販売だけでなく、サポート情報も提供している。またRaspberry Piとその関連製品も販売している。

LoRa・LoRaWAN技術のトップエンジニアの可能性が
LoRa通信だけでなく、クラウドや端末も含めて実際に自力で開発することができる開発例である。オープンソースの有効性が実感できる。
また10年以上前の話だが、将棋の羽生名人は、(「ヒトの成長に影響をあたえるものとしての)インターネットは高速道路だ」と梅田望夫氏(IT分野の知的リーダとして支持が高い)に語ったそうである。最近はAI将棋やAI碁がプロを打ち負かしたと話題となっているが、将棋を学ぶ上でも強力な道具であることを的確に表現した言葉である。

教育の分野でも海外ではMOOCという組織が、多くの教科を無償で提供し、日本のMOOC版のGACCOという組織も一流大学の著名な教授がインターネットで無料で授業を公開している。
オープンソースの開発例は何よりの教材であり、世界的にひどく立ち遅れている日本のLPWA/LPWAN技術の底上げのためにも、多くの若い人たちに、オープンソースの例から自力で技術を身に着けていただきたい。教えてくれるような人は極めて少なく、当然多忙なので教えている暇な無い。上記などのオープンソースの例で、一通りの学習を終えれば、一躍LoRa通信技術分野の第一線に躍り出ることも可能であろう。若い方々には是非チャレンジして欲しい。

次回は「Raspberry PiとArduinoでSigFox開発を学ぶ」を予定してたのだが、SigFox通信モジュールで電波法に定める技適をクリアした製品が見当たらないので、当面棚上げとしたい。通信モジュールが出てきたら改めてアップする。

LPWA/LPWAN分野ではさまざまな話題は尽きない。サブG帯のWiFi HaLowやNB-IoTの進展などは面白そうだが、製品がまともに出てくるのは1年くらい先のようなのでまだ時間がかかる。従ってLPWA/LPWANの稿は一度筆を置くことにした。
8月からの連ページだが新情報を記載したつもりだが、あっという間に陳腐化するはずなので、少し時間を置くだけで素晴らしい展開もあろう。追記をしたい。

次回はコンピュータ大革新をもたらす「AIスピーカ・AIアシスタント」






0 件のコメント:

コメントを投稿