Разработки ecoins

Библиотеки для разных контроллеров

Закрыто
ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Разработки ecoins

#1

Сообщение ecoins » 04.07.2019{, 07:39}

Уважаемые форумчане!
Наша команда проработала многие вопросы, связанные с планировании задач и событий, и выработала некоторый подход в создании
проектов, упорядочивания задач в проектах.
Подняли вопрос приоритетов выполнения задач и оптимизации времени работы цикла программы. Все блоки тем или иным образом
проверены по времени работы на логическом анализаторе. С уверенностью можно сказать, что применение подходов и принципов, заложенных в библиотеках Ecoins, позволяет в десятки раз ускорить обработку задач в проектах.
Задачи выполняются только тогда, когда это необходимо по условиям, в остальное время программа не затрачивает ресурсы
процессора для обработки задач.
Мы упорядочили и упростили блоки в Flprog, создали руководство по использованию блоков, наполнили их простыми примерами.
Также будем наполнять эти материалы примерами и понятными (надеюсь с Вашей помощью и участием) руководствами, которые
перерастут в некий учебный материал как для пользователей Flprog, так и для многих других.
====================================================================================================================
Устаревшее описание, но в нем есть полезное... ====================================================================================================================
Любые комментария и вопросы, а также найденные ошибки от форумчан будут услышаны. Всем желаем плодотворных дней дома.
P/S/ Далее будем выкладывать разделы, связанные с работой с пинами, выводом информации о контроллере, будут представлены блоки
для работы с микросхемами расширений MCP23017 и устройствами, датчиками и т.д.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14.11.2019 Обновление пользовательских блоков ДЮАИР(добавлен DS1820)
14.11.2019 Обновление библиотек ecoins для работы с пользовательскими блоками
14.11.2019 Добавлен кастомный контроллер ecoins v.1
15.08.2021 Полностью новая версия
=====================================================================================================================
Разработали подход и софт (библиотеки), когда одна и та же программа FLProg грузится в разные контроллеры с учетом разных пинков - nano, mege, due, esp8266, esp32, stm32.
Программа активно использует i2c и прерывания на пинах.
По результатам испытаний - stm32 это здорово, круто. Важной особенностью является то, что много выводов толерантны к 5в. Быстро грузится (при отладке полезно).
ESP32 - тоже хорош.
Mega2560 - 4 UART хорошо, но это все же только 8-разрядный контроллер, выплывают ограничения по быстродействию, особенно при работе со строками.
DUE - мощная машинка, но будущее не за ней.
ESP8266 - надо от него отходить. Только как совсем небольшие локальные устройства и мосты связи.
——-
Ещё раз про STM. Это и просто и здорово. Некоторые нюансы преодолены библиотеками (в частности работа с консолью).
=================================================
10.10.21 Изменения: добавлена работа генератора импульсов с uint32_t
17.10.21 Исправление ошибок. Существенно улучшен асинхронный протокол для дисплея Nextion.
---------------------------------------------------------------------
Тест (проверен на Nano,ESP8266,ESP32,STM32F103C,STM32F411,STM32F407)
FLProg_Test08_Sensor_Lcd_v01_190921.rar
(1.01 МБ) 221 скачивание
Тесты простого вывода DHT22 на консоль и LCD
Test_DHT22_Console_v01_171021.rar
(331.49 КБ) 154 скачивания
Test_DHT22_LCD_v01_171021.rar
(330.58 КБ) 154 скачивания
================================================
Новая версия (не требует дополнительных библиотек) - 19.10.21:
RT_00_HW_BASE_v6_78.rar
(107.18 КБ) 398 скачиваний
EIS_01_СИСТЕМАвер_1_30(17_10_21).rar
(559.49 КБ) 358 скачиваний
===================================================16.08.21 Обновление: исправлены ошибки, добавлены функции для STM32, в многофункциональном генераторе добавлен счетчик моточасов.
19.09.21 Обновление:исправлены ошибки, добавлены функции, улучшение интерфейсов блоков
Последний раз редактировалось ecoins 19.10.2021{, 18:03}, всего редактировалось 25 раз.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#2

Сообщение ecoins » 04.07.2019{, 23:39}

Rovki, некоторое время назад я писал о том, что наша команда займётся системой реального времени и прочее.
Несколько раз аккуратно на форме сообщалось, что и lcd теперь не тормозит систему (библиотека позволяет работать с несколькими lcd-44780 -i2c одновременно - до 16 шт, и ультразвуковой дальномер работает через один пин и не тормозит, и если пин с прерыванием, то работает с прерываниями, и dht22 не тормозит и т.п.
Вы первый который проявил к этому интерес.
Некоторое время назад мою активность в рамках правил форумов подрезал один из модераторов. Я немного поспорил и этим закончилось.
То чем мы занялись, это создание систем для промышленной автоматизации на основе:
1. FLProg
2. KaScada
3. Вычищенных или созданных заново необходимых библиотек на C++. Они могут использоваться независимо.
4. Разработанная система реального времени (предельно Упрощенная, но достаточно эффективная).
5. Переносимость на разные платформы в среде Arduino.
———
В планах есть намерение начать выкладывать результаты на форуме, но:
1. Это большой материал и наверное нужна отдельная ветка.
2. Это не для тех, кто призывает к низкому порогу вхождения в тему. По моему мнению это просто разные темы - простые поделки и профессиональные системы.
3. Желательно иметь поддержку модератора.
——-
По-моему мнению наработанные результаты интересны и перспективны.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#3

Сообщение ecoins » 05.07.2019{, 07:55}

1. Наша команда начнёт выкладывать на форуме материалы - в ближайшее время.
2. Мы придерживаемся открытости разработок. Личное отношение к идее магазина - негативное. Но это дело инициаторов этой задумки.
3. Рекламой на форуме, в которой меня заподозрил администратор, не занимаюсь - нет оснований.
4. Очень рад, проявленному интересу к теме, неожиданно.
5. Возможным препятствием вижу отношение организаторов форума. ‘В наших кругах принято относиться к разработчикам уважительно’ - с таким представлением наша команда рискует быть оправлена из форума администратором, который считает что только он вправе устанавливать правила и нормы поведения, определять принципы справедливости, решать что верно, а что нет. Надеюсь, этот барьер будет как-то совместными усилиями преодолен.
6. С уважением ко всем участникам. Восхищение разработчику и автору FLProg Сергею Глушенко.
7. Выкладывать материалы будем в этой теме.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#4

Сообщение ecoins » 05.07.2019{, 18:13}

Как и обещал начинаю выкладывать результаты работы с условным названием "Системы реального времени-RT"
Краткое описание выкладываемого демонстрационного проекта:
1. Многозадачная система.
2. LCD 20 x 4 на i2c. Работает в фоновом режиме. Не мешает другим задачам. В первой позиции мерцает звездочка (подтверждает, что система работает). Обновляет значение при их изменении и дополнительно при заданной периодичности. Допускает подключение в горячем режиме. Собственно под все устройства библиотеки так и пишутся. Это в том числе позволяет снизить значение проблемы плохих контактов - после появления питания или пере подключения, внешнее устройство восстанавливает работу. В силу аппаратных особенностей, библиотека получилась непростой. Позволяет одновременную работу до 16-дисплеев. Испытывал на 4-х одновременно работающих LCD, логическим анализатором наблюдал за загрузкой шины i2c - проблем не было, шина не перегружена.
3. Дальномер ультразвуковой HC-SR-04. Работает по прерываниям и без, если пин без прерывания. В режиме прерываний установлена периодичность измерения 50 мс. В отличии от стандартной библиотеки не подвисает и не тормозит. Встроены разные фильтры на всякие ошибки. Может работать через одни пин, собственно по другому мы сейчас и не используем эти дальномеры.
4. DHT-22. При периодическом измерении 2,5 сек в момент измерения блокирует процесс на 4 мс. Не страшно. Со временем тоже бы на прерывания надо перевести. Отфильтровывает ошибочные измерения и потому на ESP8266 тоже работает устойчиво.
5. Расширитель выхода на MCP23017 (i2c). Работает бойко, почти не потребляет временных ресурсов, шину i2c не перегружает. Родной блок в FLProg сильно тормозит - видимо там много операторов delay().
6. Один и тот же проект без переделки грузится:
в Nano (там памяти оперативной маловато и потому одну плату отключать приходится), Mega2560, DUE, ESP32, ESP8266, STM32. После перехода из FLProg в Arduino IDE, только меняется тип контроллера и номер порта - и так последовательно грузятся все контроллеры. Фото приложу.

Отправлено спустя 4 минуты 36 секунд:
IMG_2390.JPG
Это контролер Nano. Дальше видно стенд и там Mega2560 и DUE

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#5

Сообщение ecoins » 05.07.2019{, 18:14}

Это контроллеры на Mega и Due
Вложения
IMG_2391.JPG

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#6

Сообщение ecoins » 05.07.2019{, 18:16}

Это контроллеры ESP32, STM32, ESP8266
Вложения
IMG_2392.JPG

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Разработки ecoins

#7

Сообщение ecoins » 05.07.2019{, 18:20}

Здесь прикрепляю проект.
Все это связано с библиотеками, которые нужно поместить в директорию
Последний раз редактировалось ecoins 14.11.2019{, 19:37}, всего редактировалось 1 раз.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Поддержка ESP32

#8

Сообщение ecoins » 05.07.2019{, 18:22}

Пользовательские блоки - 4 мб - не подгружаются на этом сайте. По запросу могу послать по почте.

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Разработки ecoins

#9

Сообщение ecoins » 05.07.2019{, 19:15}

Добавляю ужатые (без data sheet) библиотеки
Последний раз редактировалось ecoins 14.11.2019{, 19:37}, всего редактировалось 1 раз.

Anydy

Поддержка ESP32

#10

Сообщение Anydy » 06.07.2019{, 07:05}

ecoins, Временно увеличил до 20Мб возможность загрузки файлов. Загружайте сюда!

krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06.09.2015{, 15:18}
Репутация: 12
Откуда: Калуга
Имя: Андрей

Поддержка ESP32

#11

Сообщение krom23 » 06.07.2019{, 11:58}

ecoins писал(а):
05.07.2019{, 18:13}
1. Многозадачная система.
То-есть операционная система, и это круто. ecoins, вы молодцы. До этого на сколько мне известно, ось ставили только на стмки, хотя могу ошибаться что только на них, а тут на мегу. Напишите мануал для тупых, с удовольствием почитаю :D .

krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06.09.2015{, 15:18}
Репутация: 12
Откуда: Калуга
Имя: Андрей

Раработки ecoins

#12

Сообщение krom23 » 06.07.2019{, 12:08}

Я предполагаю, что ecoins, со товарищи, готовят программу позволяющую устанавливать операционную систему в вышеперечисленные контроллеры. Если парни не будут сильно жадными, я их клиент, а если она будет совместима с FLP, то даже если будут сильно жадными (подожду репак на торренте :D ).

Аватара пользователя
Dev1
Майор
Сообщения: 1026
Зарегистрирован: 12.07.2016{, 18:04}
Репутация: 59
Откуда: Гондурас

Раработки ecoins

#13

Сообщение Dev1 » 06.07.2019{, 13:55}

Хранить все на форуме не совсем удобно. Темы растут как на дрожжах, потеряются. Имеет смысл перенести (по решению автора темы) в соответствующий раздел по ESP32 и дать права модератора по разделу. На мой взгляд будет удобней, для пользователей, качать библиотеки с облака(майл облако, яндекс диск, гугл диск). Вставляете у себя в подписи и в теме ссылку на диск-облако и пишите в теме только то что добавили-изменили. :smile37:
пысы: но более профессиональней использовать SVN, либо git(сложнее для новичка) :senile:
пысы2: я так вижу, на мой взгляд так удобней, чисто мое мнение. :fie:
Win10-64 FLProg v7.5.2 Portable :fie:

ecoins
Полковник
Сообщения: 2921
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 452
Откуда: Шатура
Имя: Энвер

Раработки ecoins

#14

Сообщение ecoins » 06.07.2019{, 14:31}

Пока будем выкладывать результаты в этой ветке.
Отдельно о пороге вхождения.
Одно из самостоятельных направлений наше команды, это использование блоков в FLProg детьми 8-12 лет - есть у нас такая детская академия. Очень дисциплинирует. Многократно приходиться шлифовать результаты, чтобы дети могли это использовать. Получается.
Дети используют разработанные блоки на FLProg - все их проекты с lcd и Kascad-ой.
Раньше использовали RemoteXY и Virtuino. Нашли основания зафиксировать проекты и детей, и свои, на KaScade.
-----
Как один из разработчиков, сейчас подчищаю некоторые библиотеки. Это у меня не основная деятельность, и потому периодически выпадаю из этого процесса. Со следующей недели к публикации результатов подключатся другие участники нашей команды - процесс пойдет активнее.
-----
P.S. Может показаться странным и излишним, но много сил отнимало и отнимает оптимизация библиотек и блоков по времени и используемой памяти.
По времени счет идет на десятки микросекунд, вылавливаешь их логическим анализатором. Это чувствительно для 8-разрядных контроллеров (Nano, UNO, Mega2560).
По памяти - разработан и используется подход масштабирования при наращивании кол-во используемых однотипных устройств, при котором добавляются только области оперативных данных для каждого из используемых устройств.

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Раработки ecoins

#15

Сообщение vovka1973 » 06.07.2019{, 19:55}

ecoins писал(а):
05.07.2019{, 18:16}
Это контроллеры ESP32, STM32, ESP8266
STM32 вы тоже в Flprog программируете?
Изображение

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Раработки ecoins

#16

Сообщение Rovki » 06.07.2019{, 20:17}

vovka1973 писал(а):
06.07.2019{, 19:55}
ecoins писал(а):
05.07.2019{, 18:16}
Это контроллеры ESP32, STM32, ESP8266
STM32 вы тоже в Flprog программируете?
В первом же посте написано ...конечно и 6 пост
Электронщик до мозга костей и не только

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Раработки ecoins

#17

Сообщение vovka1973 » 07.07.2019{, 08:31}

Rovki писал(а):
06.07.2019{, 20:17}
В первом же посте написано ...конечно и 6 пост
Автор не сделал этого ,а уже программируют stm32,наверно поделятся секретом как ?
Изображение

User8
Лейтенант
Сообщения: 341
Зарегистрирован: 12.06.2017{, 14:44}
Репутация: 103
Имя: Евгений

Раработки ecoins

#18

Сообщение User8 » 07.07.2019{, 09:13}

vovka1973, это давно есть в ардуино, другой вопрос как это работает.https://github.com/rogerclarkmelbourne/Arduino_STM32

com
Капитан
Сообщения: 831
Зарегистрирован: 31.05.2018{, 22:12}
Репутация: 83
Откуда: Санкт-Петербург
Имя: Ринат

Раработки ecoins

#19

Сообщение com » 07.07.2019{, 09:52}

Аж пятки защикотались от возможностей :), еще бы мануалов информации по больше

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Раработки ecoins

#20

Сообщение vovka1973 » 07.07.2019{, 13:10}

User8 писал(а):
07.07.2019{, 09:13}
это давно есть в ардуино, другой вопрос как это работает.
в ардуино то есть .я про flprog говорю он на нем делал
Изображение

Закрыто

Вернуться в «Команда ecoins»