Описание приложения на ПК для работы с деревом конфигурации, загруженного из микроконтроллерного устройства с поддержкой MCT-протокола.

Описание приложения на ПК для работы с деревом конфигурации, загруженного из микроконтроллерного устройства с поддержкой MCT-протокола.

MCT-протокол.

MCT-протокол позволят получить доступ к выбранным ресурсам микроконтроллерного устройства (МКУ) и отображать результат в виде дерева конфигурации на ПК или другом устройстве. При этом, вся информация, необходимая для построения дерева конфигурации (ДК), хранится в памяти программ самого МКУ. Для обмена данными между МКУ и ПК может быть использован любой интерфейс связи (UART, CAN, USB, Ethernet). Кроме того, MCT-протокол, помимо функции обеспечения работы с ДК, может использоваться как сетевой интерфейс обмена данными между различными МКУ. Например, может быть сетевым протоколом для «умного дома». Для этого нет необходимости изучать документацию на устройство, потому что вся необходимая для связи информация уже содержится в ДК. Достаточно, зная серийный номер устройства (или широковещательный номер если устройство одно в сети), загрузить ДК. Основная идея работы с MCT-протоколом описана в статье.

Приложение для работы с деревом конфигурации на ПК.

Для начала работы необходимо скачать архив программы MkConfTree_base для ПК под Windows. Для работы нужно распаковать архив и запустить файл MkConfTree_base.exe. Скрин запущенного на ПК приложения MCT-конфигуратора (без загрузки дерева конфигурации), показан ниже.

Приложение MCT-конфигуратор имеет следующие вкладки управления:

  • «Save configuration to file» — сохранить конфигурацию в файл. Загруженную из устройства конфигурацию можно сохранить, после чего последняя сохраненная конфигурация будет загружаться при запуске приложения на ПК. Также можно вновь загрузить ранее сохраненные конфигурации из папки «init» директории, где хранятся файлы приложения. Файл, в котором хранится конфигурация, имеет формат JSON, его можно редактировать в текстовом редакторе, который поддерживает формат JSON.
  • «Load configuration from file» — загрузить конфигурацию из файла. Можно вновь загрузить ранее сохраненные конфигурации из папки «init» директории, где  хранятся файлы приложения.
  • Выбор параметров порта соединения с устройством. Есть возможность выбрать между COM-порт и UDP Ethernet.
  • «Load configuration from device» — загрузить конфигурацию из устройства. По этой вкладке можно загрузить дерево конфигурации непосредственно из МКУ.
  • Окно «S/N devices» необходимо для задания серийного номера устройства. Окно ввода уникального серийного номера МКУ. Также МКУ может иметь широковещательный номер (по умолчанию 65535).
  • «Start receiving» — запуск запроса пакетов от устройства. После нажатия этой вкладки приложение начинает отправлять запросы на получение значений параметров узлов ДК. При повторном нажатии запросы останавливаются.
  • «Save parameter selection» — сохранить выбранные параметры. В дереве конфигурации, слева от названия параметра, есть поле, где можно поставить галочку для выбора данного параметра (см. скриншот ниже). Все выбранные параметры можно запомнить в отдельном файле, который будет сохранен в папке «favorites» в директории, где хранятся файлы приложения. Файл с выбранными параметрами имеет формат JSON. Файл с выбранными параметрами содержит основные атрибуты параметра, по которым можно организовать отдельный опрос с целью чтения или изменения значений этого параметра.
  • «Load selection of options» — загрузить выбранные параметры. После нажатия этой вкладки можно отобразить ранее выбранные и сохраненные параметры.

На скриншоте ниже показано загруженное ДК из МКУ с серийным номером 4301. Работу с данным МКУ я описал в статье (Двухканальный дистанционный выключатель освещения).

Для того, чтобы начать работать с приложением, как только COM-порт (или UDP-порт) выбран, нужно загрузить ДК. Если ДК устройства загружается первый раз, то загрузка производится из вкладки «Load configuration from device». Если загрузка ДК прошла успешно, можно сохранить его в файл. Далее необходимо открыть выбранные узлы дерева. При нажатии на вкладку «Start receiving» программа конфигуратора начинает отправлять запросы на получение значений параметров из устройства, при повторном нажатии запросы останавливаются. Если связь устойчива, в колонке «Value» появятся и постоянно будут обновляться значения параметров от МКУ.

 ДК устройства имеет название корня и названия узлов. В каждом узле находятся несколько параметров, в колонках слева от значения отображаются свойства параметров:

  • ID узлов и параметров (колонка «ID»).
  • Тип значений параметра (колонка «Type»), возможные типы указаны в таблице ниже.
  • Атрибут чтения, записи и управления (колонка «Atrib»). Основные атрибуты это: «R» — только чтение «WR» — запись и чтение. Возможны другие атрибуты, назначенные при разработке программы устройства, например, вызов модального окна для расширения функционала работы с устройством. Работа с модальными окнами возможна только при продвинутом изучении работы MCT-протокола и после знакомства с самой программой для MCT-конфигуратора (информация будет размещена в будущих статьях).
  • Атрибут количества байт в слове значения параметра (колонка «Bytes»). Для различных типов данных может быть задано различное количество байт в слове значения параметра (см. таблицу).

Если атрибут параметра «WR», то значение параметра можно изменять с учетом типа параметра и его длины в байтах. Для начала редактирования значения надо «кликнуть» кнопкой мыши по выбранному значению параметра, при этом периодический опрос останавливается. Работают левая и правая кнопки мыши. После изменения значения параметра при помощи клавиатуры надо нажать «Ввод» или для отмены нажимается «Esc». Если было нажато «Ввод», то приложение MCT-конфигуратор отправляет измененное значение параметра в МКУ. Увидеть изменения можно после возобновления опроса.

Таблица.

Наименование (колонка «Type»)Описание типа данныхМинимальная длина в байтахМаксимальная длина в байтах
IntНатуральное число с знаком14
UintНатуральное число без знака14
BoolБулево значение (Bool): «y», «n» или «yes», «no» или «да», «нет» или «1», «0». Написание в колонке «Value»11
FloatЧисло с плавающей точкой44
HexЧисло в шестнадцатеричном формате например: 0x012ab55014
TimeФормат времени: hh:mm:ss44
CharТекстовая строка132

Архив приложения MCT-конфигуратора для ПК под Windows можно скачать здесь.

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

Описание двухканального устройства дистанционного включения освещения с использованием MCT-протокола

Описание работы с деревом конфигурации микроконтроллеров через MCT-протокол

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Back To Top