Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Пошаговое руководство по развертыванию LoRa-шлюза RAK 831 на Raspberry Pi 3

История

Введение

Это пошаговое руководство для разработчиков, желающих создать свой LoRa-шлюз с помощью потрясающего модуля RAK831 LoRa radio front-end от RAK Wireless. Руководство предполагает базовые знания экосистемы Raspberry Pi, железа и Debian OS, а также GPIO и периферии Pi.

Что такое LoRa?

LoRa Alliance™ Technology. LoRaWAN™ — спецификация LPWAN (Low Power Wide Area Network) для беспроводных батарейных устройств в региональных, национальных или глобальных сетях. LoRaWAN адресует ключевые требования IoT: безопасную двустороннюю связь, мобильность и услуги локализации.

courtesy Semtech

Диаграмма выше показывает части LoRa-архитектуры. Некоторые важные части кратко объяснены ниже:

Ключевые особенности LoRa и протокола LoRaWAN

RAK 831 — это LoRa Radio frontend; он принимает входящие LoRa-пакеты и передает их агрегатору управления ПО/железу. Также может передавать LoRa-пакеты по запросу хоста. В нашем случае Raspberry Pi 3 — хост, управляющий RAK 831.

Выбор бэкхола

Бэкхол — это способ подключения Raspberry Pi к Интернету. Руководство фокусируется на Wi-Fi как бэкхоле, но можно использовать Ethernet или 3G/4G. Если есть Ethernet рядом со шлюзом, лучше использовать его вместо Wi-Fi или 3G/4G, так как дополнительный радиосигнал внутри корпуса создает шумы. Софт справляется с шумовой средой, но чем меньше шумов, тем лучше. Можно совместить с Power-over-Ethernet для минимизации кабелей.

Если выбираете Wi-Fi вместо Ethernet, старайтесь использовать донгл с внешней антенной и вынесите антенну за корпус для меньшего шума внутри.

Настройка железа:

Перед подключением и включением выполните настройки на Raspberry Pi и модуле RAK 831:

RASPBERRY PI

1) Получите Raspberry Pi 3 и подготовьте 8 ГБ micro SD с Raspbian. Можно купить NOOBS-карту с предустановленным софтом. Инструкции по прошивке ОС: https://www.raspberrypi.org/learning/hardware-guide/

2) Подключите Pi к блоку питания 5 В 2 А. ЭТО ОЧЕНЬ ВАЖНО. LoRa-модуль может потреблять пиковые 700 мА во время активных беспроводных транзакций, поэтому нужен качественный блок питания.

RAK 831:

1) Еще до включения подключите антенну из комплекта к антенному винтовому терминалу. ЭТО ОБЯЗАТЕЛЬНО.

Детали подключения:

Таблица подключения rak831 к Raspberry Pi:

rpi v3 to rak 831 pin connection

rak 831 silk screen map to the rak 831 pins.

rak 831 silk screen map to the rak 831 pins

Для понимания распиновки Raspberry Pi GPIO см.: https://www.raspberrypi.org/documentation/usage/gpio/

Заметки:

Включение SPI:

SPI по умолчанию выключен. Для включения:

Система перезагрузится. После входа выполните:

>ls /dev/*spi*

Pi должен ответить:

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

Это SPI-устройства на chip enable пинах 0 и 1. Обычно интерфейс поддерживает максимум два периферийных устройства, но есть случаи дेजзи-чейнирования нескольких устройств на одном chip enable.

Питание платы:

Беспроводные проекты часто требуют больше питания, чем хост-плата может дать через пины питания. Две схемы ниже описывают питание RAK 831 и Raspberry Pi 3:

1) Питание 5 В рельсы от Raspberry Pi

2) Отдельное питание 5 В рельсы на Raspberry Pi и RAK831

Установка программного обеспечения:

На Raspberry Pi выполните:

{
  "gateway_conf": {
    "gateway_ID": "id from install.sh output",
    "servers": [{
      "server_address": "router to connect to",
      "serv_port_up": 1700,
      "serv_port_down": 1700,
      "serv_enabled": true
    }],
    "ref_latitude": "lat of rak 831 gateway",
    "ref_longitude": "long of rak 831 gateway",
    "ref_altitude": 40,
    "contact_email": "contact email",
    "description": "short description"
  }
}

Примечание: Список валидных роутеров: https://www.thethingsnetwork.org/wiki/Backend/Connect/Gateway

Настраиваемые параметры в global_conf.json:

Файл находится в ./bin/global_conf.json от базы проекта после запуска install.sh. Параметры для редактирования:

1) Конфигурация «radio_0» или «radio_1», особенно Frequency и min/max frequency sweep.

2) Секция «gateway_conf», особенно gateway ID / EUI.

3) Порты server up/down в gateway_conf вместе с адресом TTN-сервера или вашим приложением.

Сброс платы:

При каждом запуске Pi хорошей практикой сбрасывать подключенный RAK831. Два способа:

Небольшой скрипт для сброса RAK831 перед доступом LoRa-драйвера к железу. Пример (GPIO 17 / pin 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». Вызывайте скрипт после каждой загрузки для чистого состояния концентратора.

На Raspberry Pi можно написать маленький C-инструмент для сброса RAK831. Библиотека wiringPi (https://wiringpi.com) упрощает доступ к GPIO. Пример RAK831_reset.c:

#include 
#include 
#define GPIO_RESET_PIN 0 // см. wiringPi mapping!
int main() {
  wiringPiSetup();
  pinMode(GPIO_RESET_PIN, OUTPUT);
  digitalWrite(GPIO_RESET_PIN, HIGH);
  sleep(5);
  digitalWrite(GPIO_RESET_PIN, LOW);
  return 0;
}

Компиляция и запуск:

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

Регистрация шлюза в сети TTN:

Чтобы узлы отправляли данные в облако, TheThingsNetwork предоставляет облачный сервис для парсинга и хранения данных от LoRa-узлов через LoRa...

Читать подробнее: Getting started with the RAK 831 Lora Gateway and RPi3

Производственный процесс

  1. Эффективный мониторинг температуры серверных с Raspberry Pi и Nagios
  2. Домашний энергетический центр: мониторинг солнечных панелей, тепловых коллекторов и температуры комнат на Ra…
  3. Интеграция данных сенсоров в Raspberry Pi: практическое руководство
  4. Создание умного домашнего контроллера 433 МГц с Sensorflare и Raspberry Pi
  5. Практическое руководство: real-time панорамирование/наклон для отслеживания лиц на Raspberry Pi
  6. Создайте автоматизированную аэропоническую систему с Raspberry Pi и датчиком влажности
  7. Интеграция импульсного радара Acconeer A111 с Raspberry Pi: практическое руководство
  8. Начало работы с TJBot: сборка, настройка и голосовое управление ИИ-роботом
  9. NanoPi K1 Plus за $35: Raspberry Pi-подобный SBC с 2 ГБ RAM, Allwinner H5, HDMI, Gigabit Ethernet — идеален для киосков, медиа-центров и DIY
  10. Построение дешевого одноканального LoRa-шлюза на Raspberry Pi