Заказчик
Частное лицо
Проект
Необходимо разработать электронное устройство, предназначенное для сбора данных / опроса счётчиков электроэнергии Меркурий 230 и отправки собранных данных системам верхнего уровня (системам АСУТП, диспетчеризации и т.д.) по протоколу MODBUS RTU. Особенностью данных счётчиков электроэнергии является неполная поддержка протокола MODBUS RTU, как следствие, становится невозможным выполнить некоторые запросы, например, авторизацию, со стороны типового Master-устройства.
Фактически, назначение MODBUS-устройства - двунаправленное преобразование транзакций со стороны 100%-MODBUS Master-а в сторону не совсем 100%-MODBUS счётчика электроэнергии, и обратно.
Структурную схему Адаптера можно представить в виде:
Из схемы видно, что устройство-адаптер помимо обмена по протоколу MODBUS RTU через физический интерфейс RS485 должно обеспечить счётчик электроэнергии гальванически развязанным питанием
напряжением 5 В и током до 500 мА.
Полный список задач выглядит следующим образом:
- разработка принципиальной схемы устройства-адаптера с учётом озвученных требований
- разработка топологии печатной платы будущего устройства
- разработка встраиваемого ПО для микроконтроллера - ключевого элемента устройства
Решение
Как и во всех предыдущих случаях ([1], [2]), разработка/проектирование и схемотехники, и топологии будущей печатной платы устройства выполнялась с помощью свободного ПО KiCAD. 3Д-рендер одной из ревизий печатной платы представлен ниже:
Разработка встраиваемого ПО для микроконтроллера семейства STM32F4 от ST Microelectronics выполнялась с использованием Eclipse + GDB + OpenOCD. Встраиваемое ПО, в свою очередь, опирается на следующие зависимости:
- STM32F4 HAL Library
- FreeRTOS - операционная система реального времени для МК.
- FreeMODBUS - библиотека для добавления MODBUS-slave функционала устройству.
- приватная библиотека, реализующая функционал поведения устройства в роли MODBUS-мастера, разработанная в рамках проекта по ссылке.
Как и во всех предыдущих проектах, во время разработки использовалась система контроля версий git и система автодокументирования кода doxygen.
Результаты
По состоянию на сентябрь 2018 года устройство проходит испытания.