Инструменты пользователя

Инструменты сайта


doku.php_concept:структура_взаимодействия_по

Это старая версия документа!


Структура программного взаимодействия

В устройстве выделяется 3 уровня программного обеспечения:

  • верхний (пользовательский интерфейс оператора «прибора»);
  • основной (программное обеспечение основного вычислительного модуля);
  • аппаратный (программное обеспечение модуля обладающего своим MCU);

Пользовательский интерфейс оператора (верхний уровень)

Данный уровень программного обеспечения предназначен для взаимодействия оператора с прибором. Он обеспечивает:

  • авторизацию пользователя в системе;
  • логирование действий пользователя;
  • отправки команды на выполнение рецепта;
  • логирование действий элементов системы при выполнении рецепта;
  • остановку выполнения рецепта;
  • логирование результатов выполнения рецепта;
  • отображение в удобном для пользователя виде результатов выполнения рецепта (таблицы, графики и т.п.).

С точки зрения физического уровня пользовательский интерфейс (далее GUI) взаимодействует с основным вычислительным модулем (далее материнская плата) посредством USB, RS-232/485, Ethernet (LAN, Wi-Fi, GSM), Bluetooth. GUI отправляет команды управления (номера рецептов) в материнскую плату, где находится модуль исполнения рецептов, обрабатывающий команды и выполняющий рецепты последовательно из сформированной очереди.

Структура посылки верхнего уровня.

№ байта Определение Значение Описание Примечание
0 Start байт 0x02 Фиксированное значение
1 ID устройства 1…255
2 Количество байт данных 1…255 Количество байт данных c 1-го по N
3 ID команды 0x00…0xFF Младший байт
4 ID команды 0x00…0xFF Старший байт
5 Данные 0x00…0xFF
3 0x00…0xFF
N Данные 0x00…0xFF
N+3 Stop байт 0xA5 Фиксированное значение

Перечень команд протокола верхнего уровня.

№ П/П ID команды Описание
1 0x1000 Установка времени
2 0x1001 Запустить рецепт
3 0x1002 Выполнение рецепта
4 0x1003 Остановить рецепт
5 0x1004 Результаты рецепта

ПО материнской платы (основной уровень)

Под основным уровнем программного обеспечения подразумевается программа выполняемая по основном вычислительном модуле. Задачи данного программы уровня:

  • Выполнение основной логике прибора. В данном случае в приборе реализованы алгоритмы всех возможных рецептом. Каждый рецепт имей свой идентификатор доступный пользователя ПК. Так же данная программа хранит в себе все тайминги для выполнения рецептов и ключевые значения для проверки правильности его выполнения. В данном уровне кода реализованы все алгоритм сценариев отработки ошибок. Что имеется в виду — ошибка аппаратного уровня (модуля) может повлиять на работу не только самого модуля но и других узлов входящих в состав прибора. По этому основной уровень программного обеспечению все цело и полностью владеет информацией критериях ошибок от каждого из модулей и алгоритма поведения всего прибора при возникновении такой ошибки в одном из модулей.
  • Возможность конкурирования. Основной код программы должен обеспечить получение от пользователя конфигурационных данных своего узла. Разбить эти данные на соответствующие конфигурационные параметры и отправить их соответствующему модулю аппаратного уровня. В случае отсутствие и аппаратного модуля (узла) своего собственного MCU (данный модуль подключен на прямую к вычислительному модулю по одному из физических интерфейсов SPI, I2C, UART и является ведомой периферией для вычислительного модуля), вычислительный модуль повторяет алгоритм хранения и применения параметров как был описано для аппаратный уровня с одним уточнение что данные параметры хранятся во FLASH памяти вычислительного модуля. Данная часть программного обеспечения знает абсолютно все о физических интерфейсах взаимодействия с периферийными модулями.
  • Взаимодействие с пользователем (ПК) производится через отправку следующих сообщений:
a.	Применить свойство.
б.	Выполнить команду.
в.	Вычитать состояние
г.	Отправить сообщение

Для такого взаимодействия доступны следующие физические интерфейсы (USB, RS-232/485, Ethernet (LAN, Wi-Fi, GSM), Bluetooth).

Модуль исполнения рецептов

Задача модуля разложить рецепт согласно таблицы рецептов на выполняемые шаги и перечень устройств задействованных в данном шаге.

doku.php_concept/структура_взаимодействия_по.1729625872.txt.gz · Последнее изменение: 2024/10/22 19:37 — administrator