MViewer — программная среда для управления микропроцессорными устройствами
Программа MViewer устанавливается на ПК под операционной системой Windows (начиная с Windows 7). Устройство соединяется с ПК по интерфейсам USB, RS-485, CAN, Bluetooth и Ethernet. Одной из особенностей MViewer является то, что программа имеет возможность подключения и взаимодействия одновременно с неограниченным числом устройств как по одному, так и по разным интерфейсам. Функциональная схема взаимодействия с внешними устройствами ПО MViewer показана на рис. 1.
Основные возможности программы MViewer:
- интерпретация области памяти устройства в виде отдельных параметров;
- формирование структуры параметров в табличном представлении;
- выгрузка данных из памяти устройства и их форматирование;
- загрузка данных в память устройства;
- сохранение и воспроизведение конфигурации устройства;
- графическое представление полученных данных, в том числе от высокочастотных процессов;
- прослушивание подключенной к ПК CAN-шины, интерпретация полученных сигналов и отправка сформированных пакетов;
- конструирование графического интерфейса пользователя с возможностью его экспорта в автономное приложение;
- обеспечение удаленного доступа к устройству через сервер;
- загрузка микропрограммного обеспечения (прошивка);
- получение журнала событий устройства с сохранением и графическим представлением.
Далее рассмотрим более детально описанные возможности.
Интерпретация области памяти устройства в виде отдельных параметров
На этапе создания или обновления конфигурации устройства инженеры используют различные среды программирования. С их помощью в устройство записывается так называемая прошивка, определяющая его работу. Прошивка содержит в том числе конфигурацию области памяти. Для того чтобы ПО MViewer могло иметь актуальный список настроек интерпретации памяти того или иного устройства, необходимо загрузить перечень этих данных, после чего приступить к работе с устройством. Как правило, этот перечень доступен в среде разработки ПО.
Пользователю MViewer достаточно выбрать среду программирования и указать путь к проекту прошивки. Затем MViewer создаст набор настроек, необходимый для работы с текущим устройством.
Для пользователя MViewer область памяти будет поделена на группы, а группы — на отдельные параметры, имеющие уникальный адрес в памяти и несущие определенный функционал. Каждый параметр содержит настройки интерпретации, включающие название параметра, адрес в памяти устройства, формат отображения, систему счисления (для числовых форматов), диапазон допустимых значений, значение по умолчанию и другие.
Формирование структуры параметров в табличном представлении
Взаимодействие пользователя с устройством организовано с помощью таблицы параметров (рис. 2). В ней могут быть отображены как отдельные параметры, так и целые группы. Переход между группами и параметрами осуществляется посредством древовидной структуры слева от таблицы.
Выгрузка данных из памяти устройства и их форматирование
Основная функция ПО MViewer — чтение информации из памяти устройства. После подключения программы к устройству и выполнения протокольных запросов данные поступают в числовом виде, ограниченном размером ячеек памяти. Для пользователя важно представить эту информацию в виде, понятном для восприятия. Одни параметры несут информацию о времени, другие — зашифрованную комбинацию двоичного кода. MViewer позволяет конвертировать числовые значения каждой ячейки памяти в адекватный и понятный для пользователя формат отображения, указанный в проекте прошивки. Таким образом, пользователь получает полную картину текущего состояния настроек и конфигурации устройства в структурированном табличном виде.
Загрузка данных в память устройства
Помимо мониторинга состояния устройства, пользователю зачастую необходимо выполнять калибровку устройства и корректировать значения параметров непосредственно на месте эксплуатации. В таком случае с помощью MViewer можно самостоятельно изменить значение того или иного параметра. Важно, что доступ к редактированию каждого параметра определен на уровне прошивки устройства. Это защищает его от человеческого фактора и неблагоприятных последствий вмешательства в уязвимые настройки.
Сохранение и воспроизведение конфигурации устройства
Помимо возможности частного редактирования значений параметров, пользователю доступна их комплексная загрузка. Такой тип загрузки используется для инициализации изготовленных устройств, переноса и размножения удачной конфигурации с одного устройства на другое.
На первом шаге пользователь MViewer выполняет моментальное считывание всей памяти устройства. Затем эти данные доступны для дальнейшей загрузки непосредственно с данного ПК, а также могут быть сохранены в отдельный файл как для переноса на другой ПК, так и для архивирования текущей конфигурации.
Пользователь подключает целевое устройство к MViewer и выполняет моментальную загрузку на него выбранной конфигурации.
Графическое представление полученных данных
Во время мониторинга состояния устройства зачастую необходимо наблюдать динамику изменения тех или иных процессов. Табличный вид позволяет отобразить только текущее значение параметра. Для визуализации динамики изменения значений используется графическое представление.
MViewer содержит отдельное окно (рис. 3), на котором пользователь имеет возможность наблюдать изменение значений переменных в виде графиков. Каждая линия графика представляет собой совокупность точек значений параметров, считанных в разные моменты времени. По умолчанию все линии графика строятся относительно временной шкалы. Пользователь может выполнить построение графиков относительно значений одного из параметров.
На графике может быть отображено неограниченное число параметров. Для каждой линии доступно задание коэффициента, типа, толщины и цвета линии, отображение точек, построение точек без учета знака.
Доступен экспорт видимой области построения в изображения с расширениями .bmp и .jpg, а также координат точек в таблицу с расширением .xls.
Графическое представление высокочастотных процессов
Отдельно следует отметить, что существуют процессы внутри микропроцессорного устройства, динамику изменения которых отследить стандартными методами не всегда удается. Поскольку обмен информацией между ПК и устройством осуществляется по интерфейсам с ограниченной частотой работы, а обработка данных занимает некоторое время, высокочастотные процессы таким путем отслеживаются искаженно. Для решения этой проблемы внутри устройства на высокой частоте происходит предварительное накопление большого объема необработанной информации, и только после этого производится отправка считанного массива данных на ПК.
Мониторинг CAN-шины
Во многих устройствах, в том числе относящихся к автомобильной промышленности, для взаимной коммуникации и передачи информации используется CAN-интерфейс.
MViewer имеет инструмент, предназначенный для прослушивания подключенной к ПК CAN-шины, интерпретации полученных сигналов и отправки сформированных пользователем пакетов. Данный инструмент получил название «CAN-монитор» (рис. 4).
При подключении к устройству по интерфейсу CAN MViewer отображает текущие пакеты данных в CAN-шине, представленные в виде байт. С помощью редактора переменных CAN-монитора пользователь может сформировать из байт данных пакетов отдельные переменные и задать им формат отображения. Полученные переменные будут отображаться в отдельной таблице. Помимо табличного представления сформированные переменные могут быть перенесены пользователем на график.
CAN-монитор дает возможность пользователю подготовить собственные пакеты для отправки по CAN-шине. Пакеты данных могут быть отправлены единовременно по нажатию кнопки или периодически через заданный интервал времени.
Конструирование графического интерфейса пользователя с возможностью его экспорта в автономное приложение
Повышение удобства взаимодействия пользователя с устройством неизбежно привело к появлению в MViewer виртуального пульта управления (рис. 5). Этот инструмент представляет собой отдельное окно, содержащее набор визуальных элементов. Каждый элемент представлен в виде привычных для инженеров электротехнических компонентов (кнопки, тумблеры, выключатели, индикаторы), а также стандартных элементов интерфейса операционной системы Windows (текстовые поля, слайдеры).
Пользователю MViewer доступен редактор, в котором элементы размещаются на предназначенной для них области. Пользователь выполняет привязку элементов к конкретным параметрам устройств, задает настройки для каждого элемента, при необходимости добавляет отдельные вкладки. По завершении этих операций можно выйти из режима редактирования, после чего комплекс элементов начинает функционировать в соответствии с заданными настройками.
Для работы с теми или иными устройствами зачастую требуется отдельное программное обеспечение, предназначенное для операторов оборудования и инженеров, осуществляющих эксплуатацию. Программа MViewer позволяет не только оперативно создать требуемый пользовательский интерфейс, но и придать ему автономный вид в качестве самостоятельного приложения с расширением *.exe. Таким образом, оператор может использовать отдельное приложение с нужным набором компонентов и настройками соединения без установки MViewer.
Обеспечение удаленного доступа к устройству через сервер
MViewer предоставляет пользователю механизм удаленного доступа через Интернет. Контролирование процессов, анализ данных и прогнозирование износа оборудования доступны в любой точке земного шара благодаря взаимодействию программы с сервером.
В данном случае MViewer выступает в роли терминала и дублирует действия пользователя, находящегося на сайте ПО. При подключении к серверу ПО MViewer переходит из автономного в ведомый режим и загружает на сервер сведения о подключенных к ПК устройствах. Затем программа активно «слушает» команды от сервера и отправляет отчеты.
В системе взаимодействия электронных устройств с облачным сервисом программа MViewer играет роль связующего звена. В этом режиме MViewer производит сбор данных с устройств, первичную их обработку и передачу на сервер.
MViewer устанавливается на ПК с операционной системой Windows. На текущий момент связь ПК с устройствами реализуется по интерфейсам USB, RS-485, CAN, Bluetooth и Ethernet. MViewer поддерживает взаимодействие как с одним устройством, так
и с целой сетью. Программа позволяет осуществлять мониторинг информации устройства в реальном времени, сохранять ее и представлять в графическом виде, изменять и настраивать конфигурацию и параметры.
Для пользователя, прошедшего авторизацию на сайте ПО, доступен выбор активных (то есть подключенных к MViewer и серверу) на текущий момент устройств. Каждое из них содержит набор данных, характеристик или параметров, доступных для чтения из памяти устройства. Набор параметров определяется для каждого из устройств индивидуально и зависит от прошивки. Кроме того, для всех параметров заранее определен доступ к редактированию. Пользователь имеет возможность напрямую через сайт сервера корректировать те или иные характеристики устройства, разрешенные для редактирования.
Оператор, подключивший устройство к MViewer, видит действия пользователей сайта с этим устройством и в любой момент может разорвать соединение с сервером. MViewer позволяет сохранить текущие значения параметров в файл, а также загрузить их обратно в память устройства. Таким образом, можно создать резервную копию либо уникальную версию конфигурации.
Загрузка микропрограммного обеспечения (прошивка)
Важной частью эксплуатации микропроцессорного устройства является обновление его программного обеспечения. MViewer содержит инструмент, который взаимодействует с загрузчиком обновлений внутри устройства с целью записи актуальной версии ПО с верификацией.
В окне «Загрузчик» (рис. 6) пользователь имеет возможность загрузить файлы прошивки как для одного, так и для нескольких устройств одновременно. Помимо основной функции по загрузке программного обеспечения, данное окно содержит набор команд для устройства, например пересброс процессора, очистка памяти процессора, а также переход устройства из режима загрузчика в основную программу.
Получение журнала событий устройства с сохранением и графическим представлением
На протяжении своего жизненного цикла устройства могут накапливать и хранить важную информацию, предназначенную для анализа их работы и отладки. Эта информация именуется «журнал событий». Поскольку журнал событий хранится во внутренней памяти устройства, первоочередной задачей является предоставление пользователю доступа к журналу, а также выгрузка журнала на внешний носитель.
Данные журнала событий хранятся внутри устройства, как правило, в примитивном виде с целью экономии памяти. Из этого следует, что вторая задача состоит в корректной интерпретации журнала, а также информативном и понятном их представлении пользователю. Окно программы MViewer «Журнал событий» (рис. 7) предназначено для этих целей.
Описанный выше функционал программы MViewer позволяет предоставить пользователю весь спектр современных возможностей для установления связи с устройством: интерпретация, анализ и визуализация сигналов, получаемых от устройства, осуществление его настройки по доступным интерфейсам, считывание журнала событий, обновление ПО устройств, передача данных в Интернет, виртуализация пультов управления.
Примером успешного применения такой функции, как обновление ПО, может служить реализация механизма беспроводного обновления программного обеспечения рудничного электровоза. В частности, процедура обновления программного обеспечения управляющих модулей электровоза сама по себе занимает незначительное время. Однако в условиях шахты и при наличии требований по взрывобезопасности вскрытие корпуса электровоза, программирование и сборка могут занять у персонала длительное время — до одной смены. Применение же функции беспроводного доступа для обновления ПО позволяет сократить эту процедуру до нескольких минут.