#1
Сообщение
support » 06.11.2018{, 12:47}
На сегодняшний день, в программе FLProg получился более менее законченный функционал как для контроллеров Arduino, так и для контроллеров ESP8266. Конечно, пока хватает и косяков, и недоделок, и хотелок. Но все они так сказать «не глобальные», и вполне могут быть исправлены и реализованы, как у нас на работе говорят «в порядке текущей эксплуатации».
Я понял, что пришло время, определится, а что глобального делать дальше? Почитав форум и сопоставив пожелания пользователей со своими возможностями, знаниями, да и честно говоря, желаниями, я выделил следующие возможные направления.
1. Оптимизация отрисовки схемы в проекте для контроллера. Честно скажу, логика отрисовки не сильно изменилась с первых версий программы. Конечно, регулярно я её “подлатываю”, ставлю новые «костыли», но всё это половинчатые меры. С той поры и у меня появились новые знания, много новых решений было отработанно на Скаде. И теперь по-хорошему надо просто переписать отрисовку с нуля. Скорее всего, это улучшит отзывчивость системы, позволит ввести фишки вроде масштабирования, позиционирования окна на неисправных блоках, поиск блоков, переменных на схеме, переход на переменную. Ориентировочное время реализации 2 – 3 месяца.
2. Расширение возможностей скады. После выхода скады, меня удивило практически полное отсутствие обратной связи по ней. Ни сообщений об ошибках, ни какого-то либо активного обсуждения на форуме. Я решил, что как говорится «не стрельнуло». Но когда я сообщил о приостановке работы над скадой, то получил много пожеланий о развитии скады. Я так понимаю необходимо просто «прокачать» скаду. Сроки реализации оценивать сложно, это скорее плановый процесс, который будет развивать скаду от версии к версии. Но вот насколько он важен?
3. Добавление поддержки контроллеров STM. Ну, тут объяснять не надо, и так понятно. Какое то количество плат на различных контроллерах STM у меня уже есть. Базовые принципы вроде разобрал, но работы всё равно очень много. Ориентировочно интеграция займёт 3 - 5 месяцев.
4. FLProg IOT сервер. Это совершенно новая моя идея, и сейчас я озвучиваю её в первый раз. Родилась она после изучения форума, ну и рассмотрения систем вроде MajorDoMo, Openhab, ioBroker, IoTManager. Сейчас все эти системы очень популярны, и востребованы. Поизучав «матчасть», честно говоря, мне ни одна не понравилась. Ну конечно это моё личное мнение, не хочу развивать холивар. Но с моей точки зрения, всё-таки они в большинстве своём во первых громоздкие, во вторых очень тяжелы в установке, требуют определённых знаний и умений в настройке, да и вообще нужен бубен шамана. Ну и конфигурирование этих систем всё-таки требует знания программирования (пускай и на уровне скриптов). Я считаю, что это не наш путь. Я решил (ещё на этапе создания Скады) немного расширить слоган проекта. Теперь это “Iot для непрограммистов”. При создании скады я пользовался принципом “компьютер – как контроллер”. Почему бы его не применить и для Iot сервера (ну или облака если хотите).
Теперь сама суть идеи. Это будет новый тип проекта (что ни будь вроде «Iot сервер»). Он так же будет иметь своё дерево, в котором можно будет создавать страницы веб интерфейса, будет ветка схемы, и ветка мастеров. Сервер будет являться Modbus TCP слейвом для устройств. Страницы вэб интерфейса будут создаваться по принципу, который сейчас используется для создания вэб интерфейса настройки ESP8266 только более расширенному. Схема будет использовать привычный нам язык FBD ( и LAD – возможно, ещё не решил).
Подключение к устройствам будет происходить по протоколу Modbus TCP. Сервер будет слейвом, устройство мастером. Это во первых позволит устройству кроме общения с сервером общаться с другими устройствами (слейвами) напрямую, во вторых исключит необходимость проброса портов и белого IP, поскольку инициатором соединения будет устройство. Переменные модбас можно будет использовать в логической схеме сервера, и в веб интерфейсе сервера. Кроме того в вэб интерфейсе сервера конечно можно будет использовать любые переменные схемы. Ну, в общем, по аналогии со скадой.
При компиляции проекта будет создаваться набор файлов на PHP и папок с ресурсами (скриптами, стилями, картинками) которые необходимо будет закинуть на сервер. В случае с PHP в качестве сервера может быть что угодно, арендованный хостинг, отдельный компьютер, малинка, апельсинка. Это может быть как сервер в интернете, так и локальный сервер в сети. Со временем, скорее всего, появится возможность создавать свои виджеты и блоки по аналогии с пользовательскими блоками на С, но только на PHP. Естественно с возможностью обмена ими и составления своих библиотек. Время реализации – ну не знаю…. Думаю за пару - тройку месяцев бетку можно выпустить, ну а потом только расширять.
Это глобальные направления развития. Все они очень интересны, все они продуманны, и вполне реализуемы. Но я трезво смотрю на свои возможности. Более менее плотно работать я могу только на вахте, дома у меня уже два инвалида (про мать я говорил, а тут ещё и у отца онкология, и вырезали половину желудка), поэтому времени на проект не остаётся. Исходя из этого, всё сразу я просто физически не потяну. Поэтому хочу провести голосовалку. Что более востребовано сейчас, и более интересно в ближайшем будущем. Ну и конечно вы можете в данной теме описывать своё виденье будущего программы, возможно, свои замечания по предложенным направлениям.
Ну и что точно будет сделано в ближайшее время.
1. Естественно IR управление для ESP8266
2. Возможность подключения к облаку Kascada. Пока разбираюсь с этим.
3. Реализация работы ESP с RemoteXY (надеюсь получится)
4. Ну и по мере необходимости устранение найденных ошибок
Так что голосуем, пишем свое мнение, для меня оно очень важно.
Автор программы FLProg.