OrangePI 2G iot

  • Михаил
  • 12 мин. на прочтение
  • 162
  • 14 Dec 2020
  • 23 May 2024

Orange Pi 2G-IoT предназначен для всех, кто хочет начать создавать с помощью технологий, а не просто потреблять их. Это простой, забавный и полезный инструмент, который вы можете использовать, чтобы начать контролировать мир вокруг себя.

Вот ключевые характеристики платы Orange Pi 2G-IoT:

1. Процессор: Allwinner A7, четырехъядерный Cortex-A7 с тактовой частотой 1.2 ГГц.

2. Оперативная память: 512 МБ DDR3 SDRAM.

3. Хранение данных: слот для microSD карты.

4. Связь: Ethernet, Wi-Fi 802.11 b/g/n, Bluetooth 4.0, 2G/3G сотовая связь.

5. Интерфейсы: HDMI, USB 2.0, GPIO.

6. Операционная система: поддерживает различные дистрибутивы Linux, а также Android.

Основные преимущества этой платы:

  • Встроенная поддержка сотовой связи для IoT-приложений.
  • Низкое энергопотребление.
  • Доступная цена для экспериментов и разработок.
     

Однако стоит учитывать, что производительность Orange Pi 2G-IoT может быть ниже, чем у более мощных одноплатных компьютеров, таких как Raspberry Pi.

Эта плата ориентирована на энтузиастов, DIY-мейкеров и разработчиков, которые хотят поэкспериментировать с недорогими одноплатными компьютерами для своих проектов, особенно связанных с Интернетом вещей.

Первым делом чтобы начать работать с платой, нам необходимо поставить ОС. На сайте производителя можно почитать про устройство, посмотреть характеристики, а так-же скачать ОС по вкусу. 

Как видим, выбор довольно впечатляющий. Для платы Orange Pi PC+ я ставлю Armbian Image, он и качается проще и достаточный для работы.

На сайте разработчика имеется как CLI версия, так и Desktop. Кто не представляет свою жизнь без GUI

Далее приступаем к процессу записи образа ОС на флешку.

Подключаемся через RS232. Если нет GUI.

Наблюдаем процесс загрузки.

Ну и наконец логинимся.

orangepi
orangepi

Настраиваем wifi.

sudo nmcli device wifi list
sudo nmcli device wifi connect 'smm' password '' ifname wlan0
ip addr

 

 

Теперь пользователь temproot должен иметь привилегии root:

root:x:0:0:root:/root:/bin/bash
temproot:x:0:0:temproot

 

Дальше пошел процесс настройки ZigBee CC2531 свистка и всех сопутствующих плюшек. Об этом можно почитать в разделе ZigBee.

После прошивки модема необходимо установить MQTT брокер (если еще не установлен).

Я использую Mosquitto (но чаще использую в DockerЕ), устанавливается так: 

sudo apt install -y mosquitto mosquitto-clients
sudo systemctl start mosquitto
sudo systemctl enable mosquitto.service

А если в Docker, то всего то

docker run --restart=always -p 1883:1883 -p 9001:9001 -v /opt/mosquitto/mosquitto.conf:/mosquitto/config/mosquitto.conf -v /mosquitto/data -v /mosquitto/log -d eclipse-mosquitto

Как всегда запускаем PuTTY и обновляемся.

sudo apt update
sudo apt -y upgrade

Все выпуски Node.js являются производными из официального репозитория APT. 

Однако это необходимо добавить в вашу систему вручную.

sudo apt update
sudo apt -y install curl dirmngr apt-transport-https lsb-release ca-certificates
sudo curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

 

apt install npm
apt install -y nodejs git make g++ gcc
npm install typescript -g

 

sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt 
sudo chown -R pi:pi /opt/zigbee2mqtt 
Установить зависимости

cd /opt/zigbee2mqtt

npm ci

или
npm install

 

Откройте файл конфигурации:

vi /opt/zigbee2mqtt/data/configuration.yaml

Настраиваем адрес mqtt сервера и порт usb стика СС25хх. 

Для базовой конфигурации, вероятно, подходят настройки по умолчанию.

Единственное, что нам нужно изменить, - это URL-адрес сервера MQTT и аутентификацию (если применимо).

# MQTT server URL
  server: 'mqtt://10.10.11.18'
  # MQTT server authentication, uncomment if required:
  # user: my_user
  # password: my_password

Так же указываем на каком порту у нас появился стик:
Для raspberry это возможно будут /dev/ttyACM0, /dev/ttyACM1
Для Orange Pi это будут /dev/ttyUSB0, /dev/ttyUSB1

Запуск в качестве демона с systemctl #

Чтобы запустить Zigbee2MQTT как демон (в фоновом режиме) и запускать его автоматически при загрузке, мы запустим Zigbee2MQTT с помощью systemctl.

vi /etc/systemd/system/zigbee2mqtt.service

Добавьте в этот файл следующее:

 

[Unit]
Description=zigbee2mqtt
After=network.target


[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=orangepi


[Install]
WantedBy=multi-user.target

Убедитесь, что конфигурация работает:

Запускаем Zigbee2MQTT

sudo systemctl start zigbee2mqtt.service

Проверяем статус

systemctl status zigbee2mqtt.service

Теперь, когда все работает, мы сделаем чтобы systemctl автоматически запускал Zigbee2MQTT при загрузке, это можно сделать, выполнив:

sudo systemctl enable zigbee2mqtt.service

Смотрим лог: 

sudo journalctl -u zigbee2mqtt.service -f

Видим, как весело наши zigbee устройства начинают нам кидать приветы.

Чтобы отправлять и получать SMS-сообщения на Orange Pi 2G-IoT, вам потребуется установить специальное программное обеспечение, которое будет взаимодействовать с модулем сотовой связи платы.

Вот основные шаги, которые вам нужно выполнить:

1. Подключите сим-карту к плате Orange Pi 2G-IoT. Убедитесь, что сим-карта активирована и имеет доступ к сети.

2. Установите программное обеспечение для работы с сотовой связью. Популярные варианты:
   - Gammu - кросс-платформенная утилита для работы с мобильными устройствами.
   - Modem Manager - менеджер модемов и сотовых соединений для Linux.
   - Канал AT-команд - напрямую управляйте модемом через AT-команды.

3. Настройте выбранное программное обеспечение, указав параметры сотовой связи и сим-карты.

4. Используйте команды или API выбранного ПО, чтобы отправлять и принимать SMS-сообщения.

Например, с помощью Gammu вы можете отправить SMS-сообщение командой:

gammu --sendsms TEXT "+79991234567" "Hello, world!"

А для получения входящих сообщений:

gammu --getallsms

Обратите внимание, что могут потребоваться дополнительные библиотеки и настройки в зависимости от выбранного программного обеспечения и особенностей вашей платформы Orange Pi 2G-IoT.

Также не забывайте об обработке ошибок и проверке статуса соединения, чтобы обеспечить надежную работу SMS-функциональности.