Runtime /Микроконтроллеры AVR и Configurator

Микроконтроллеры AVR и Configurator

В промышленных SCADA системах широкое распространение получил язык функциональных блоков FBD (Function Block Diagram). Данный язык прост в понимании, нагляден и удобен для прикладных специалистов, не имеющих специальной подготовки в области информатики.
Простота и удобство языка FBD, а также низкая стоимость и доступность микроконтроллеров AVR подтолкнули меня к идее совместить язык FBD и микроконтроллеры AVR. В августе 2013 года я приступил к работе. Все что необходимо для работы программаторы, микроконтроллеры, макетные платы я приобрел на Aliexpress. Получилось достаточно дешево, за 2000 рублей я приобрел два программатора, пару десятков макетных плат, с десяток микроконтроллеров, пять плат arduino nano. Площадкой обсуждения проекта выбрал cxem.net, а в последствии создал на horizontautomatics.ru ветку форума.
Configurator и микроконтроллеры AVR
Horizont Configurator это визуальная среда построения алгоритмов работы устройств, в том числе и микроконтроллеров. В качестве языка программирования среда использует язык функциональных блоков (FBD Function Block Diagram). Алгоритм создается путем формирования блок-схемы из библиотечных блоков, которые объединяются друг с другом непосредственно линиями связи – графическими связями. При компилировании проекта Configurator формирует исполняемый программный код, в него закладывается ядро программы, кода используемых FBD блоков и сам алгоритм. После сборки кода запускается компилятор, для соответствующего микроконтроллера. В итоге после сборки проекта получается исполняемый микроконтроллерный код.
Configurator и микроконтроллеры AVR
Configurator и микроконтроллеры AVR
Проект превзошел мои ожидания, проект напоминает детский конструктор "Lego", а благодаря эффективному использованию ресурсов микроконтроллера данный конструктор применим даже на младших сериях микроконтроллеров. На данный момент проект полностью работоспособен, загрузить установочный пакет можно здесь.
Стоит отметить, что проект открытый, любой желающий может посмотреть исходный код любых функциональных блоков, а при желании и добавлять новые блоки. Программа Configurator позволяет просматривать программный код, полученный из блок-схем при сборки проекта.

Итог:
1. Написал ядро исполнительной программы. ( Итог 6 месяцев )
2. Добавил множество типов микроконтроллеров: ATtiny13A, ATmega8, .. (более 50 видов)
3. Добавил описание FBD блоков
        -Порты ввода-вывода;
        -Логические блоки (и,или,не,исключающее и,больше);
        -Блоки для работы с вещественными числами (сложение, вычитание, умножение, деление,..)
4. Добавил возможность как создания собственных FBD блоков.

Перспективы:
1. Добавление новых типов микроконтроллеров, описание новых FBD блоков.
2. Добавить поддержку режима отладки.
3. Добавить описание FBD блоков для связи со SCADA системами.
Configurator и микроконтроллеры AVR