Создать ПО нового устройства
Разрабатываем управляющую логику по согласованным требованиям. Определяем состояния, команды, взаимодействие с компонентами и способ настройки устройства пользователем или специалистом.
Изучаем назначение оборудования, доступные ресурсы и требования к его работе. Создаём управляющую логику, обмен данными и средства диагностики. Проверяем согласованные сценарии на доступном образце или стенде, включая обработку предусмотренных отказов.

Программное обеспечение оборудования определяет, как устройство выполняет свою задачу, обрабатывает команды и сообщает о состоянии. Мы начинаем с изучения аппаратной конфигурации, документации и условий эксплуатации. Уточняем, какие функции реализованы в самом устройстве, что делает приложение оператора и какие сведения нужно передавать на сервер или в корпоративную систему.
При модернизации важно сохранить проверенные сценарии и понять причины ограничений. Изучаем доступный код, интерфейсы, ресурсы памяти и вычислительные возможности. Затем согласуем состав изменений: новые режимы работы, обмен с внешними сервисами, диагностику или интерфейс настройки. Если документации недостаточно, сначала проводим техническое исследование и фиксируем границы реализуемого решения.
Проверка программной части требует образца устройства либо стенда, соответствующего целевой конфигурации. Вместе составляем сценарии нормальной работы и ожидаемых сбоев: потеря связи, некорректные данные, отключение питания и восстановление. Результаты таких проверок описываем в документации. Требования к специальным испытаниям и подтверждению соответствия, если они нужны проекту, выделяем в отдельный объём работ.
Разрабатываем управляющую логику по согласованным требованиям. Определяем состояния, команды, взаимодействие с компонентами и способ настройки устройства пользователем или специалистом.
Оцениваем возможности существующей аппаратной части и программной среды. Реализуем доступные улучшения с проверкой того, как изменения влияют на прежние рабочие сценарии.
Проектируем обмен командами, измерениями и событиями. Учитываем задержки, временную потерю соединения, повторную передачу и необходимость сохранять данные локально.
Создаём инструменты для просмотра состояния, параметров и журналов. Продумываем, какие действия доступны оператору, сервисному специалисту и администратору.
Программная логика для выбранной компонентной базы с учётом ресурсов и доступной среды разработки.
Прикладное ПО и системные службы для согласованной конфигурации, в том числе на базе Linux.
Взаимодействие с оборудованием через документированные интерфейсы и протоколы целевой системы.
Обмен по доступным соединениям; конкретные протоколы, например Modbus или MQTT, выбираем по задаче и возможностям устройства.
На оценку влияют доступность документации и образцов, состояние кода, аппаратная платформа, протоколы и перечень испытаний. Исследование неизвестных интерфейсов и изготовление стенда при необходимости оцениваем отдельно.
Начинаем с документации, образца устройства и требований к поведению. Если интерфейс неизвестен, выделяем исследование в самостоятельный этап. Затем согласуем функции, стенд, испытания, стоимость и сроки; закупку оборудования учитываем отдельно.
Проверяем документацию, образец, программную среду и доступ к исходному коду. Выделяем ограничения аппаратной части и вопросы, требующие исследования.
Результат: Описание платформы и перечень технических ограничений.
Фиксируем функции, состояния, команды и ошибки. Согласуем интерфейсы связи и критерии, по которым будет проверяться результат.
Результат: Спецификация команд, состояний и ошибок устройства.
Разрабатываем программные модули и инструменты диагностики. Проверяем взаимодействие с компонентами на доступном оборудовании или согласованном стенде.
Результат: Программные модули и инструменты отладки.
Выполняем согласованные сценарии, фиксируем результаты и ограничения. Передаём сборки, исходный код и инструкции по настройке и дальнейшему сопровождению.
Результат: Сборки, исходный код и протокол стендовых проверок.
Анализ устройства, документации и существующего программного обеспечения.
Управляющая логика и взаимодействие с компонентами оборудования.
Протоколы обмена, диагностика и средства настройки.
Стендовые проверки, сборки и техническая документация.
Оценим доступ к документации, исходному коду и средствам разработки, затем предложим варианты.
Для проверки взаимодействия обычно нужен образец или стенд с согласованной конфигурацией.
Да, если технические возможности позволяют. Способ связи и состав данных определяем при проектировании.
Сначала выделяем исследовательский этап: изучаем доступные материалы, наблюдаем работу образца и проверяем возможные способы взаимодействия. После этого можем оценить реалистичный состав изменений. Если технических данных недостаточно, прямо фиксируем, какие функции ещё не удалось подтвердить.
Да, если заранее согласованы интерфейсы и порядок изменений. Связываем требования к плате, управляющей логике и внешнему приложению, чтобы команды проверяли совместимость на общих этапах.