RAK831LoRaゲートウェイとRPi3の使用を開始する
このプロジェクトでは、RAK831 LoRaGatewayモジュールをバックホールとしてWiFiで稼働させるために必要なすべての手順を実行します。
このステップバイステップガイドは、RAKWirelessのすばらしいRAK831Loraラジオフロントエンドモジュールを使用して、独自のloraゲートウェイを開発したい開発者を対象としています。このガイドは、Raspberry pi ecoシステム、ハードウェア、および関連するDebianOSの基本的な知識があることを前提としています。このガイドは、RaspberryPiに存在するGPIOと周辺機器の基本的な知識も前提としています。それでは始めましょう。
LoRAとは何ですか?
LoRa Alliance™テクノロジー。 LoRaWAN™は、地域、国内、またはグローバルネットワーク内のワイヤレスバッテリ駆動のものを対象とした低電力ワイドエリアネットワーク(LPWAN)仕様です。 LoRaWANは、安全な双方向通信、モビリティ、ローカリゼーションサービスなど、モノのインターネットの主要な要件を対象としています。
上の図は、LoRaワイヤレスアーキテクチャのさまざまな部分を示しています。重要な部分のいくつかを以下に簡単に説明します:
LoRaテクノロジーとLoRaWANプロトコルの主な機能
・ジオロケーション:GPSフリーの低電力追跡アプリケーションを可能にします
・低コスト:インフラストラクチャへの投資、運用コスト、エンドノードセンサーの3つの方法でコストを削減します
・標準化:グローバルな相互運用性の向上により、LoRaWANベースのネットワークとIoTアプリケーションの採用と展開がスピードアップします
・LOW POWER:バッテリーの寿命を最大20年延長する低消費電力用に特別に設計されたプロトコル
・長距離:単一の基地局は、密集した都市/屋内地域に深く浸透し、さらに最大30マイル離れた農村地域を接続します
・安全:組み込みのエンドツーエンドのAES128暗号化
・大容量:基地局ごとに数百万のメッセージをサポートし、多くの顧客にサービスを提供するパブリックネットワーク事業者に最適です
RAK831はLorARadioフロントエンドです。つまり、着信loraデータパケットの受信者として機能し、それらをアグリゲーター管理ソフトウェア/ハードウェアホストに転送します。また、ホストボードの要求に基づいてLoRAデータパケットを送信することもできます。私たちの場合、ラズベリーパイ3はRAK831フロントエンドを制御するホストボードです。
バックホールとは何ですか?バックホールとは、Raspberry Piがインターネットに接続される方法を指します。このガイドでは、バックホールとしてWifiを使用することに焦点を当てていますが、イーサネットまたは3G / 4Gを使用することもできます。ゲートウェイの近くでイーサネットを利用できる場合は、WiFiまたは3G / 4Gよりもイーサネットをお勧めします。これは、エンクロージャー内に追加の無線信号があるとノイズが発生するためです。このソフトウェアはノイズの多い環境を処理できるため、大きな問題ではありませんが、ノイズが少ないほど良いです。この選択をPower-over-Ethernetと組み合わせて、ゲートウェイまでのケーブル接続を最小限に抑えることができます。
一方、イーサネットの代わりにWiFiを選択する場合は、外部アンテナ付きのドングルを使用し、アンテナをエンクロージャーの外側に移動して、ボックス内のノイズを減らしてみてください。
ハードウェアをセットアップします:
何かを接続して電源を入れる前に、ラズベリーパイとRAK831モジュールで次の構成を行ってみましょう。
RASPBERRY PI
1)ラズベリーパイ3ボードを入手し、ラズビアンソフトウェアで8GBのマイクロSDカードを準備します。ソフトウェアがプリロードされたnoobssdカードを購入することもできます。 SDカードのOSをフラッシュする方法については、次の手順に従ってください:https://www.raspberrypi.org/learning/hardware-guide/
2)ラズベリーパイを5v2amps電源に接続します。これは非常に重要です。 Loraモジュールは、アクティブなワイヤレストランザクション中に700 mAのピークを引き出す可能性があるため、ラズベリーパイに電力を供給するための優れた電源ブリックを備えています。
RAK 831:
1)ボードの電源を入れる前に、キットに含まれているアンテナを入手して、アンテナネジ留め式端子に接続します。これは必須です。
接続の詳細:
これは、rak831モジュールをラズベリーパイに接続する方法を示す表です。
Raspberry Piのピンレイアウトを理解するには、https://www.raspberrypi.org/documentation/usage/gpio/にアクセスしてください。
注:
- リセットピンは、ラズベリーパイ3の任意のGPIOに接続できます。
- RAK 831ボードの損傷を防ぐために、電源ピンを正しく接続することが重要です。
SPIを有効にする:
SPIペリフェラルはデフォルトではオンになっていません。有効にするには、次の手順を実行します。
-
sudo raspi-config
を実行します 。 - 下矢印を使用して、
9 Advanced Options
を選択します -
A6 SPI
まで下矢印 。 -
はい
を選択します SPI を有効にするように求められたとき 、 - また、
yes
を選択します カーネルモジュールの自動ロードについて尋ねられたとき。 - 右矢印を使用して
-
はい
を選択します 再起動を求められたとき。
システムが再起動します。戻ってきたら、ログインして次のコマンドを入力します
> ls / dev / * spi *
Piは
で応答する必要があります /dev/spidev0.0 /dev/spidev0.1
これらは、それぞれチップイネーブルピン0および1上のSPIデバイスを表します。これらのピンは、Pi内に配線されています。通常、これはインターフェースが最大2つの周辺機器をサポートすることを意味しますが、複数のデバイスをデイジーチェーン接続して、単一のチップイネーブル信号を共有できる場合があります。
ボードに電力を供給します:
他のワイヤレスプロジェクトと同様に、ホストボードが電源ピンを介して提供できるよりも多くの電力を必要とする傾向があります。以下の2つのスキームは、RAK831とラズベリーパイ3に電力を供給する方法を列挙しています。
1)RaspberryPiから5vレールに電力を供給します
2)RaspberryPiとRAK831の5vレールに別々に電力を供給します
ソフトウェアのインストール:
Raspberry piで、次の手順を実行して、重要なソフトウェアをインストールします。
- SPIを有効にする:
raspi-configユーティリティを使用してSPIを有効にし([5]インターフェイスオプション-> P4 SPI)、ファイルシステムも展開します([7]詳細オプション-> A1ファイルシステムを展開):
$ sudo raspi-config
- gitがインストールされていることを確認してください
Sudo apt-get updateSudo apt-get upgradeSudo apt-get install git
- ラズベリーパイでWi-Fi接続を管理する
- Wi-Fiクレデンシャルを設定します(詳細についてはこちらを確認してください)
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
そして、ファイルの最後に次のブロックを追加し、ネットワークに一致するようにSSIDとパスワードを置き換えます。
network ={ssid ="The_SSID_of_your_wifi" psk ="Your_wifi_password"}
- インストーラーのクローンを作成してインストールを開始します
$ git clone -b spi https://github.com/ttn-zh/ic880a-gateway.git〜/ ic880a-gateway $ cd〜 / ic880a-gateway $ sudo ./install.sh spi
- インストール手順では、リモート構成を有効にするかどうかを尋ねられます。 「y」または「yes」と入力して、インストールを続行します。コマンドラインインストールの開始時に、スクリプトは次のステップで重要なゲートウェイEUIを表示します。注意してください!
- リモート構成オプションを使用する場合は、次のGateway Remote ConfigリポジトリにゲートウェイEUI(B827EBFFFE7B80CD.jsonなど)という名前のJSONファイルを作成したことを確認してください:https://github.com/ttn -zh / gateway-remote-config。リポジトリをフォークし、適切な構成で
.jsonファイルを追加してから、フォークされたリポジトリをコミットします。完了したら、プルリクエストをマスターリポジトリに送信すると、ファイルは翌日リポジトリに表示されます。サンプルのjsonを以下に示します:
{"gateway_conf":{"gateway_ID": "install.shコンソール出力に書き留めたID"、 "servers":[{"server_address" : "接続先のルーター"、 "serv_port_up":1700、 "serv_port_down":1700、 "serv_enabled":true}]、 "ref_latitude":rak 831ゲートウェイの緯度、 "ref_longitude": rak 831ゲートウェイの長さ、 "ref_altitude":40、 "contact_email": "ゲートウェイ所有者の連絡先メールアドレス"、 "description": "簡単な説明"}}
注:
有効なルーターのリストについては、次のリンクを確認してください:https://www.thethingsnetwork.org/wiki/Backend/Connect/Gateway
- デフォルトでは、インストーラーはRaspeberry Piのホスト名をttn-gatewayに変更します(ネットワーク内の他のRaspberry Piとの衝突を防ぐため)。これは、非リモート構成モードでオーバーライドできます。
- HURRAYゲートウェイが機能するはずです。 jsonファイルがRPi3に正しくダウンロードされるように、翌日にゲートウェイを再起動してください。
- のglobal_config.jsonは、次のように調整する必要があることに注意してください。
https://github.com/TheThingsNetwork/gateway-conf/blob/master/US-global_conf.json
ここで聞いた古いポリパケットフォワーダーの代わりにmp_pkt_fwdを使用し、提供された手順で同じものをインストールすることを検討している場合:
https://github.com/kersing/packet_forwarder/tree/master/mp_pkt_fwd。ここでも、プロジェクトのルートにglobal_conf..jsonファイルが表示されます。必ずファイルを編集し(以下で説明するimpセクション)、コンパイル後に同じファイルをbinフォルダーにコピーしてください。
global_conf.json内のいくつかの構成可能なエンティティ:
global_conf.jsonファイルは、インストールスクリプトの実行後、プロジェクトディレクトリのベースから./bin/global_conf.jsonにあります。特定のゲートウェイ構成用にglobal_conf.jsonファイルで編集する可能性のあるエンティティのリストを次に示します。
1)「radio_0」または「radio_1」構成、特に周波数パラメーターと最小および最大周波数掃引パラメーター。
2)「gateway_conf」セクション。特にゲートウェイIDまたはゲートウェイのEUI。
3)同じgateway_confオブジェクト内のサーバーのアップポートとダウンポート、および使用可能な場合は独自のアプリケーションサーバーのアドレスのTTNサーバーアドレス。
出典:RAK831LoRaゲートウェイとRPi3入門
製造プロセス
- RaspberryPiとNagiosを使用して室温を監視する
- MoteinoとRaspberryPiを使用して室温を監視する
- センサーデータとRaspberryPiマイクロプロセッサーの統合
- SensorflareとRaspberryPiを備えた433MHzスマートホームコントローラー
- ラズベリーパイによるパン/チルトフェイストラッキング
- ラズベリーパイと湿度センサーを備えたエアロポニックス
- RaspberryPiでのA111パルスレーダーセンサーの使用
- TJBot入門
- 35ドルのNanoPiK1 Plusは、2倍のRAM(および異なるCPU)を備えたRaspberryPiのようなコンピューターです。
- LoRa – Raspberry Pi –シングルチャネルゲートウェイ–安い!
- RAK 831 LoraGatewayおよびRPi3の使用を開始する