Wirenboard + IntraSCADA

О контроллере Wiren Board 6

Контроллер Wiren Board предназначен для домашней и промышленной автоматизации и мониторинга: опроса датчиков и счетчиков, использования в качестве УСПД, в системах АСКУЭ, для замены ПЛК, а также в системах «умного дома».

Контроллер построен на базе процессора Cortex A7, 800 MHz . На борту контроллера установлена операционная система Debian Linux.

Контроллер поддерживает протокол MQTT для всех подключаемых модулей расширения. На контроллере установлен MQTT брокер Mosquitto.

Подробную информацию о контроллере можно посмотреть на сайте производителя. 

Предварительные настройки

Для установки системы IntraSCADA на контроллер Wiren Board необходимо подключиться к контроллеру через SSH клиент. На сайте производителя подробно описана процедура подключения через SSH клиент.
Параметры для подключения (login/password): root/wirenboard

Заходим на контроллер  через терминал и по очереди выполняем следующие команды:

				
					apt update
su
apt install sudo
sudo apt install curl
				
			

Таким образом мы обновили список репозитариев и установили команду curl, которая необходима для установки системы IntraSCADA 

Установка системы IntraSCADA на контроллер Wiren Board 6

Для установки системы IntraSCADA  вводим следующую команду:

				
					curl -sL https://git.io/JYAeq | sudo -E bash -s ru
				
			

Вся процедура установки занимает около 4 минут.

В процессе установки могут быть сообщения такого рода:

				
					sudo: unable to resolve host wirenboard-ALMAJR36: Нет такого файла или каталога
				
			

На это можно не обращать внимание. Система устанавливается нормально. При желании можно избавиться от таких сообщений поправив файл /etc/hosts

В конце процедуры установки будет выдано сообщение:

				
					 Login: admin
 Password: 202020
 Web interface: http://192.168.0.128:8088/admin

 Complete! Thank you.
				
			

Имя и пароль для входа в систему и строка с адресом и портом. 

Первый запуск

Заходим в систему через веб браузер (Chrome, Safary):

				
					http://192.168.0.128:8088/admin
				
			

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

Откроется окно для ввода имени и пароля:

wb6 pm101

Вводим имя и пароль, которые были показаны в терминале и заходим в среду разработки (Project Manager):

wb6 pm201

Здесь выполняются все настройки проекта. Добавляются устройства, настраиваются экраны и выполняется подключение к каналам контроллера Wiren Board. Подробнее по настройкам можно посмотреть в документации нажав на кнопку со знаком вопроса в строке состояния.

Настройка

Для работы системы IntraSCADA с контроллером Wiren Board по протоколу MQTT необходимо установить плагин MQTT.

Подробная инструкция по настройке опубликована в документации по плагину MQTT

Настройка плагина MQTT

После установки плагина переходим к его настройкам:

wb6 pm301

В разделе Источники данных/Плагины выбираем плагин MQTTCLIENT и правой кнопкой мыши добавляем экземпляр этого плагина.

wb6 pm302

Здесь настраивать ничего не требуется. MQTT брокер находится локально на самом контроллере (127.0.0.1) и использует стандартный порт (1883).

Если плагин остановлен, его можно запустить нажав правой кнопкой мыши на экземпляре mqttclient1

Настройка каналов

Для работы с реальными каналами нужна лицензия. В данном примере используем бесплатную лицензию на 32 тега, которую можно получить в интернет магазине.

Лицензионный ключ нужно ввести на вкладке «Лицензии» и нажать кнопку «Активировать»:

wb6 pm501

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

wb6 pm401

В качестве примера воспользуемся двумя топиками:

  1. Зуммер (buzzer) — /devices/buzzer/controls/enabled
  2. Напряжение Vin — /devices/power_status/controls/Vin

1. Buzzer

Для настройки каналов переходим на вкладку «Каналы» и правой кнопкой мыши добавляем новый канал:

wb6 pm303
wb6 pm602
  1. Вводим название канала — buzzer
  2. Устанавливаем галку — «Чтение (подписка)»
  3. Вводим топик для чтения — /devices/buzzer/controls/enabled
  4. Для управления пищалкой ставим галку «Запись (публикация)»
  5. Вводим топик для публикации — /devices/buzzer/controls/enabled/on
  6. Вводим сообщение для публикации — value.  Будет передаваться 1 или 0 в зависимости от состояния кнопки, к которой мы привяжем этот канал.
  7. Привязать канал к устройству. Привяжем к свойству state вентилятора FAN_001 

2. Напряжение Vin

Для настройки канала считывания напряжения Vin  воспользуемся встроенным в систему сканером каналов.

Правой кнопкой мыши на папке All выбираем «Сканировать каналы»:

wb6 pm701

В окне сканера нажимаем кнопку «Сканировать». 

Открывается дерево доступных топиков контроллера WirenBoard: 

wb6 pm702

Находим топик Vin и двойным кликом переносим его в набор каналов. Аналогично можно перенести в этот набор и другие топики.

Нажимаем кнопку «Добавить каналы».

wb6 pm703

В результате мы получили канал с названием devices_power_status_controls_Vin 

Добавление устройства

В нашем демонстрационном примере нет устройства, к которому можно привязать этот канал. 

Добавим новое устройство — Универсальные/Датчик аналоговый:

wb6 pm801

Привяжем свойство value этого устройства к каналу, нажав кнопку привязки:

wb6 pm802

В окне привязки к каналу нажимаем кнопку OK на канале mqttclient1.devices_power_status_controls_Vin:

wb6 pm803

Канал привязан. Нажимаем кнопку «Сохранить»:

wb6 pm805

Визуализация

Разместим новое устройство AI_003  на контейнере с примерами устройств 1:

wb6 pm901

Нажатием правой кнопки мыши в области контейнера вызываем меню: Добавить элемент/Text.

wb6 pm903

Можно настроить цвет текста и размер. Это, разумеется,  не главное.

Главное, отобразить в этом поле значение канала. Нажимаем на три точки в строке «Значение» и выбираем пункт «Привязать».

wb6 pm904

Ставим галку на свойстве  value устройства AI_003  и нажимаем кнопку OK

Не забываем нажать кнопку «Сохранить».

На этом все настройки закончены. Можно посмотреть результат. 

 

В результате

Переходим на пользовательский интерфейс. 

В пользовательский интерфейс можно перейти набрав в адресной строке браузера:

				
					http://192.168.0.128:8088
				
			

Это тот-же запрос, как при входе в интерфейс разработчика (PM) без завершающего /admin

Второй вариант — просто нажать кнопку перехода на пользовательский интерфейс:

wb6 pm1001

Пользовательский интерфейс

wb6 ui1010
  1. При нажатии на кнопку вентилятора можно включать/выключать зуммер
  2. В пользовательском интерфейсе видим значение напряжения Vin.

Удаление

После тестирования, при желании, ситему IntraSCADA можно удалить выполнив эти команды:


Остановить систему:

				
					sudo systemctl disable ih-v5
				
			

Удалить папки:

				
					sudo rm -R /mnt/data/opt/ih-v5
sudo rm -R /mnt/data/var/lib/ih-v5