工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

RAK 831 LoRaゲートウェイをRaspberry Pi 3に導入するステップバイステップガイド

このプロジェクトでは、RAK 831 LoRaゲートウェイモジュールをWi-Fiをバックホールとして稼働させるために必要なすべてのステップを説明します。

ストーリー

はじめに

このステップバイステップガイドは、RAK Wirelessの優れたRAK831 LoRa無線フロントエンドモジュールを使用して、独自のLoRaゲートウェイを開発したい開発者を対象としています。このガイドは、Raspberry Piエコシステム、ハードウェア、関連するDebian OSに関する基本的な知識があることを前提としています。また、Raspberry Piに搭載されているGPIOとペリフェラルの基本知識も必要です。さあ、始めましょう:

LoRaとは?

LoRa Alliance™ Technology. LoRaWAN™は、地域、国家、グローバルなネットワークにおいて、ワイヤレスでバッテリー駆動の「モノ」を対象とした低電力広域ネットワーク(LPWAN)仕様です。LoRaWANは、IoTの主要要件である安全な双方向通信、モビリティ、ローカライゼーションサービスをターゲットとしています。

courtesy Semtech

上図はLoRa無線アーキテクチャの各部分を示しています。重要な部分を簡単に説明します:

LoRaテクノロジーとLoRaWANプロトコルの主な特徴

・GEOLOCATION:GPSフリーの低電力トラッキングアプリケーションを実現

・LOW COST:インフラ投資、運用費、エンドノードセンサーの3つの面でコスト削減

・STANDARDIZED:グローバルな相互運用性の向上により、LoRaWANベースのネットワークとIoTアプリケーションの採用と展開を加速

・LOW POWER:プロトコルが低消費電力向けに設計され、バッテリー寿命を最大20年まで延長

・LONG RANGE:単一基地局で密集都市部/屋内への深い浸透、さらに農村地域を最大30マイルまでカバー

・SECURE:エンドツーエンドのAES128暗号化を内蔵

・HIGH CAPACITY:基地局あたり数百万メッセージをサポートし、多くの顧客にサービスを提供する公共ネットワーク運用者に最適

RAK 831はLoRa無線フロントエンドであり、着信LoRaデータパケットを受信してアグリゲーター管理ソフトウェア/ハードウェアホストに転送します。ホストボードのリクエストに基づいてLoRaデータパケットを送信することもできます。ここではRaspberry Pi 3がホストボードとしてRAK 831フロントエンドを制御します。

バックホールの選択

バックホールとは? バックホールとは、Raspberry Piをインターネットに接続する方法を指します。このガイドではWi-Fiをバックホールとして使用しますが、Ethernetや3G/4Gも使用可能です。ゲートウェイの近くにEthernetがある場合は、Wi-Fiや3G/4Gよりも優先してください。これは、エンクロージャー内に追加の無線信号があるとノイズが発生するためです。ソフトウェアはノイズ環境を処理できますが、ノイズが少ないほど良好です。この選択をPower-over-Ethernetと組み合わせれば、ゲートウェイまでの配線を最小限に抑えられます。

一方、Wi-Fiを選択する場合は、外部アンテナ付きのドングルを使用し、アンテナをエンクロージャー外に出して内部ノイズを減らしてください。

ハードウェアのセットアップ:

接続と電源投入の前に、Raspberry PiとRAK 831モジュールで以下の設定を行います:

RASPBERRY PI

1) Raspberry Pi 3ボードを用意し、Raspbianソフトウェアが入った8GB microSDカードを準備。NOOBSプリロード済みSDカードを購入しても可。OSのフラッシュ方法はこちら: https://www.raspberrypi.org/learning/hardware-guide/

2) Raspberry Piを5V 2A電源に接続。これは非常に重要です。 LoRaモジュールはアクティブな無線トランザクション中にピーク700mAを消費する可能性があるため、Raspberry Piを駆動するための優れた電源アダプターを用意してください。

raspberry pi v3

RAK 831:

1) ボードに電源を入れる前に、キットに同梱されていたアンテナを取り出し、アンテナスクリューターミナルに接続。これは必須です。

Raspberry Pi v3, RAK 831 module and a LoRa Node

接続詳細:

RAK831モジュールとRaspberry Piの接続方法を示すテーブル:

rpi v3 to rak 831 pin connection

The rak 831 silk screen map to the rak 831 pins.

rak 831 silk screen map to the rak 831 pins

Raspberry Piのピンレイアウトについては、https://www.raspberrypi.org/documentation/usage/gpio/ を参照してください。

注意点:

SPIの有効化:

SPIペリフェラルはデフォルトでオフです。有効化するには以下を実行:

Raspi-config for SPI

システムが再起動します。再起動後、ログインして以下のコマンドを入力:

>ls /dev/*spi*

Piは以下で応答するはず:

/dev/spidev0.0 /dev/spidev0.1

これらはチップイネーブルピン0と1のSPIデバイスを表します。これらのピンはPi内部でハードウェア的に配線されており、通常は最大2つのペリフェラルをサポートしますが、デージーチェーンで単一のチップイネーブル信号を共有するケースもあります。

ボードへの電源供給:

無線プロジェクトでは一般的に、ホストボードが供給ピンで提供できる電力以上を必要とします。以下の2つのスキームで、RAK 831とRaspberry Pi 3への給電方法を列挙します。

1) Raspberry Piから5Vレールを供給

2) Raspberry PiとRAK831の5Vレールを別々に供給

ソフトウェアインストール:

Raspberry Piで以下のステップを実行して必須ソフトウェアをインストール:

raspi-configユーティリティでSPIを有効化([5] Interfacing options -> P4 SPI)し、ファイルシステムも拡張([7] Advanced options -> A1 Expand filesystem):

$ sudo raspi-config

Sudo apt-get update
Sudo apt-get upgrade
Sudo apt-get install git

$ 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

{
“gateway_conf”: {
“gateway_ID”: “インストール時のコンソール出力でメモした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

https://github.com/TheThingsNetwork/gateway-conf/blob/master/US-global_conf.json

mp_pkt_fwdを古いpolyパケットフォワーダーの代わりに使用したい場合は、こちらでインストール手順を参照:

https://github.com/kersing/packet_forwarder/tree/master/mp_pkt_fwd. また、プロジェクトのルートにあるglobal_conf..jsonファイルの該当セクション(後述の重要セクション)を編集し、コンパイル後にbinフォルダにコピーしてください。

global_conf.jsonで設定可能な主な項目:

global_conf.jsonファイルは、インストールスクリプト実行後、プロジェクトディレクトリのベースから ./bin/global_conf.json にあります。特定のゲートウェイ設定に合わせて編集したい主な項目:

1) “radio_0” または “radio_1” の設定、特に周波数パラメータと最小/最大周波数スイープパラメータ。

2) “gateway_conf” セクション。特にゲートウェイIDまたはゲートウェイのEUI。

3) gateway_confオブジェクト内のサーバーアップ/ダウンポートと、TTNサーバーアドレスまたは独自アプリケーションサーバーのアドレス(利用可能な場合)。

ボードのリセット:

Raspberry Piを起動するたびに、接続されたRAK831 LoRaモジュールをリセットするのが良い習慣です。2つの方法があります:

LoRaドライバーがハードウェアにアクセスする前にRAK831をリセットする小さなシェルスクリプトを作成できます。内容は以下の例(Raspberry PiのGPIO 17(ピン11)がRAK831のリセットピンに接続されていると仮定):

#!/bin/bash
echo “17” > /sys/class/gpio/export
echo “out” > /sys/class/gpio/gpio17/direction
echo “1” > /sys/class/gpio/gpio17/value
sleep 5
echo “0” > /sys/class/gpio/gpio17/value
sleep 1
echo “0” > /sys/class/gpio/gpio17/value

これらの行を「rak831_reset.sh」というファイルに保存。ユーザーは毎回ブート後にこのスクリプトを1回呼び出し、コンセントレーターICをクリーンな状態にする必要があります。

ホストシステムがRaspberry Piの場合、GPIOピンにアクセスするために「wiringPi」ライブラリを使用した小さなCツールを書けます。ライブラリは https://wiringpi.com からダウンロード可能。インストールと使用方法は同サイトを参照。RAK831_reset.cの内容例:

#include <wiringPi.h>
#include <unistd.h>
#define GPIO_RESET_PIN 0 // wiringPiマッピング参照!
int main() {
wiringPiSetup();
pinMode(GPIO_RESET_PIN, OUTPUT);
digitalWrite(GPIO_RESET_PIN, HIGH);
sleep(5);
digitalWrite(GPIO_RESET_PIN, LOW);
return;
}

ユーザーは毎回ブート後にこのツールを1回呼び出し、コンセントレーターICをクリーンな状態にする必要があります。

gcc -Wall -o blink blink.c -lwiringPi
sudo ./blink

ゲートウェイをTTNネットワークに登録:

ノードがデータをクラウドに送信できるようにするため、TheThingsNetworkはLoRaノード経由で送信されたデータを解析・保存するクラウドサービスを提供します。

Read More Detail :Getting started with the RAK 831 Lora Gateway and RPi3

製造プロセス

  1. Raspberry PiとNagiosで室温を効率監視
  2. ホームエナジーセンター:Raspberry PiとMoteinoで太陽光発電、ソーラー熱、室温を監視
  3. センサーデータをRaspberry Piに統合:実践ガイド
  4. SensorflareとRaspberry Piで433MHzスマートホームコントローラーを構築
  5. Raspberry Piでリアルタイムパン/チルト顔追跡 - 実践ガイド
  6. Raspberry Piと湿度センサーで作る自動エアロポニックスシステム
  7. Acconeer A111パルスレーダーをRaspberry Piと統合:実践ガイド
  8. TJBot入門:組み立て、設定、音声制御で自分だけのAIロボットを構築
  9. 35ドルのNanoPi K1 Plus:2GB RAM、Allwinner H5 CPU、HDMI、ギガビットEthernet搭載のRaspberry PiライクなSBC、キオスク、メディアセンター、DIYに最適
  10. Raspberry Piで低コストLoRaシングルチャネルゲートウェイを構築
  11. Raspberry Pi 3 と RAK831 モジュールで LoRa ゲートウェイを構築するステップバイステップガイド