ЭкоСреда ecoins

Мультиплатформенная среда реального времени - библиотеки, блоки, примеры

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

ЭкоСреда ecoins

#1

Сообщение ecoins » 30.05.2022{, 22:46}

В течении нескольких лет поддерживали несколько тем с разработками ecoins.
После глубокой переработки библиотек и блоков, создание новой структуры библиотек и блоков, открываем новую тему.
Выкладываем последние версии библиотек и в течении некоторого времени добавим пояснения и примеры.
----------------------------------------------------------------------------------------
1.Основная библиотека C++, которую следует подключить в Arduino IDE
ЗНАЧИТЕЛЬНЫЕ ОБНОВЛЕНИЯ: в т.ч. поддержка ESP32-C3, 1-Wire (в т.ч. и для ESP32).
RT_00_HW_BASE_v7.10_14.09.22.zip
(290.75 КБ) 37 скачиваний
//---Уточнения неточностей по ESP32
RT_00_HW_BASE_v7.10_18.09.22.zip
(289.57 КБ) 4 скачивания
RT_00_HW_BASE_v7.10_20.09.22.zip
(289.58 КБ) 9 скачиваний
----------------------------------------------------------------------------------------
2.Системные блоки - реальное время, счетчики и прочее полезное.
EIS.01---SYSTEM вер.3.14(14.09.22).zip
(718.3 КБ) 36 скачиваний
Внимание - была прикреплен н тот файл(EIS.02---DEVICE вер.3.15(20.09.22).zip), исправлено 21.09.22 16:45.
EIS.01---SYSTEM вер.3.15(20.09.22).zip
(721.76 КБ) 7 скачиваний
----------------------------------------------------------------------------------------
3.Блоки для работы с внешними устройствами
EIS.02---DEVICE вер.3.14(14.09.22).zip
(1.95 МБ) 31 скачивание
EIS.02---DEVICE вер.3.15(20.09.22).zip
(1.92 МБ) 11 скачиваний
----------------------------------------------------------------------------------------
4.Предыдущие блоки созданы с использованием профессионального редактора FLProg - это позволило создать удобные меню для расширенных возможностей и простоты использования.
На сегодняшний день к сожалению такие блоки занимают много мест и проекты средней сложности могут превышать 300мб.
Для преодоления этой проблемы ecoins разработали и будут поддерживать упрощенную библиотеку блоков, на которых размер проекта в 30-50 раз больше. Блоки всех библиотек совместимы.
EIS.10==SIMPLE_ALL вер.3.14(14.09.22).zip
(709.29 КБ) 30 скачиваний
EIS.10---SIMPLE_ALL вер.3.15(20.09.22).zip
(707.76 КБ) 8 скачиваний
----------------------------------------------------------------------------------------
5.Среда поддерживает контроллеры AVR,ESP,STM32,Rarpberry Pi Pico, SAMD21, Seeeduno XIAO. STM32 поддерживает обе известные CORE - от STM32 и от Roger Clark.
Как правило один и тот же тест может грузиться в контроллер без каких либо изменений. Выбор требуемого контроллера выполняется нас стадии компиляции или загрузки непосредственно в Arduino IDE. Перечень поддерживаемых контроллеров: ----------------------------------------------------------------------------------------
6.Все используемые библиотеки встроены в основную библиотеку и не конфликтует с другими внешними библиотеками.
----------------------------------------------------------------------------------------
7.Система реализует систему реального времени за счет быстрых библиотек и исключения использования в них операторов delay() - вместо них реализован оригинальный метод программных прерываний.
В зависимости от типа используемого контроллера, частоты использования интерфейса i2c - кол-во циклов loop() в сек лежит в диапазоне 15.000-150.000.
----------------------------------------------------------------------------------------
8.Общий тест устройств выполненный на блоках из упрощенной библиотеки.
Тест для Mega2560 также грузится в STM32F103C,STM32F4x1. RasppBerry Pi Pico и др.(без встроенного WiFi) 9.Тесты для дисплеев Nextion (используются в общих тестах п.8).
0160_Nextion_EIS.zip
(4.16 МБ) 3 скачивания
10.Тесты для планшетов с KaScada
****
===============================================================
ВНИМАНИЕ:
Для работы с ESP32 необходимо обновить версию ядра до последней,
для чего в Arduino IDE должна быть ссылка:
https://raw.githubusercontent.com/espre ... index.json

В Arduino IDE FLProg 7.5.2 в настройках устаревшая ссылка.
================================================================
Для справки:
В Arduino IDE мы используем следующие настройки (для контроллеров поддерживаемых библиотекой RT_HW_BASE.h)
https://files.seeedstudio.com/arduino/p ... index.json
https://github.com/stm32duino/BoardMana ... index.json
https://raw.githubusercontent.com/espre ... index.json
https://github.com/earlephilhower/ardui ... index.json
https://m5stack.oss-cn-shenzhen.aliyunc ... index.json
https://raw.githubusercontent.com/WeAct ... index.json
=================================================================
Последний раз редактировалось ecoins 26.09.2022{, 16:05}, всего редактировалось 32 раза.

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

ЭкоСреда ecoins

#2

Сообщение ecoins » 30.05.2022{, 22:47}

Первый достаточно тяжелый тест - испытан на Mega2560, ESP8266, ESP32, STM32F103C, STM32F411, STM32F407, Raspberry Pi Pico.
Test_01_MEGA2560.zip
(328.25 КБ) 134 скачивания
В тест включен дисплей Nextion 7".
Последний раз редактировалось ecoins 30.05.2022{, 23:13}, всего редактировалось 1 раз.

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

ЭкоСреда ecoins

#3

Сообщение ecoins » 30.05.2022{, 22:48}

Резерв для примеров 2.

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

ЭкоСреда ecoins

#4

Сообщение ecoins » 30.05.2022{, 22:49}

Резерв для примеров 3.

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

ЭкоСреда ecoins

#5

Сообщение ecoins » 30.05.2022{, 22:50}

Одно из направлений, о котором ecoins уже заявляло, это изготовление тестовых устройств для разных платформ с целью дальнейшего проектирования и изготовления промышленных контроллеров.
Так уж получилось, что впервую очередь стали появляться устройства на платформе Raspberry Pi Pico - оказалась доступной очень удобная инструментальная плата, контроллер очень удачный и в библиотеке мы добавили все необходимое.
Начали делать стенды на MEGA2560. На очереди STM32F103,STM32F411,STM32F407 - для них предстоит разработать, заказать и изготовить инструментальные платы. В планах ESP32 - тоже нужно проектировать инструментальную плату.
По просьбе некоторых заинтересованных лиц здесь сделаем описание такого устройства:
1.Короб из пластика или полированной фанеры, в котором расположены два аккумулятора 18650, устройства зарядки от 9в, выключатель, цифровой вольтметр, выходные разъемы питания. Корпус нарезается на лазерном комплексе (недавно приобрели) и собирается с применением 3D пластиковых деталей.
2. Сверху укрепляются контроллер на инструментальной плате, расширитель i2c под восемь устройства 5В и отдельно под восемь устройства 3в.
3.Тоже самое до 4-x устройств SPI.
4. На корпусе штатно укреплен дисплей 16х2 i2c для вывода некоторых сенсоров (DS1820,AHT20), ADC измеренного с установленного вместе с дисплеем потенциометра.
5.Дополнительно дисплей 20x4 через SPI(модуль на 74HC595);
6.Дополнительно устройство вывода через SPI (74HС595) с 8-ю светодиодами.
7.Дополнительное через UART подключается дисплей Nextion.
По выбору сенсоры из перечня поддерживаемых библиотеками ecoins.

Три первых устройства
Первых 3 устройства.jpg
Полностью укомплектованное устройство
Полностью укомплектованное устр-во.jpg
Вид сбоку
Вид сбоку.jpg
Последний раз редактировалось ecoins 04.06.2022{, 01:20}, всего редактировалось 3 раза.

Kot
Рядовой
Сообщения: 30
Зарегистрирован: 09.10.2021{, 11:54}
Репутация: 1
Имя: Дима

ЭкоСреда ecoins

#6

Сообщение Kot » 31.05.2022{, 09:19}

а как выбрать 3 микросхемы на 595 ?
у вас в настройках только 16 пин можно
мне 22 выхода надо

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

ЭкоСреда ecoins

#7

Сообщение ecoins » 31.05.2022{, 11:11}

Kot писал(а):
31.05.2022{, 09:19}
а как выбрать 3 микросхемы на 595 ?
у вас в настройках только 16 пин можно
мне 22 выхода надо
74hc595 x3.zip
(68.36 КБ) 41 скачивание
74hc595 x3.png
Непосредстенно на стенде с 3-мя 74HC595 не проверял, посмотрел на логическом анализаторе.
Для 3-x чипов в блоке на всякий случай установил скорость поменьше (1мГц).

Аватара пользователя
Phazz
Полковник
Сообщения: 2064
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 249
Откуда: Сургут
Имя: Анатолий

ЭкоСреда ecoins

#8

Сообщение Phazz » 31.05.2022{, 20:49}

А как использовать второе ядро в rp2040?

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

ЭкоСреда ecoins

#9

Сообщение ecoins » 01.06.2022{, 05:16}

Phazz писал(а):
31.05.2022{, 20:49}
А как использовать второе ядро в rp2040?
По этому вопросу рекомендую статью:
http://efim.adior.ru/index.php/36-arduino-pico
Если коротко - в IDE вручную добавить дополнительные секции setup1() и loop1() и вставить туда дополнительный код.
Возможно разработчика FLProg учтет такое пожелание и в FLProg появится такая опция.
Но это наверное произойдет после того как он обратит внимание на этот контроллер и будут запросы от пользователей FLProg.
Последний раз редактировалось ecoins 01.06.2022{, 13:13}, всего редактировалось 1 раз.

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

ЭкоСреда ecoins

#10

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

Вопрос из темы "Разработки ecoins"
Что я не так делаю ?
mega.png
MEGA_EXP.zip
(546.92 КБ) 31 скачивание
---------------
Теперь нужно брать библиотеки из этой темы.
В проекте были и ошибки.
Исправлено в трех вариантах:
1.На профессиональных блоках;
2.На простых блоках;
3.На простых блоках с небольшими изменениями на блоки ecoins.
MEGA_EXP_eis.zip
(557.37 КБ) 33 скачивания
MEGA_EXP_eis_Simple.zip
(45.39 КБ) 32 скачивания
MEGA_EXP_eis_Simple_2.zip
(29.67 КБ) 34 скачивания
-----------------------
Везде один результат
стенд.jpg
================
проект.png
проект_Simple.png
проект_Simple 2.png
=================
Файлы проектов(.flp) на простых блоках более чем в 30 раз компактнее.

Аватара пользователя
Imran
Сержант
Сообщения: 103
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 3
Имя: Имран

ЭкоСреда ecoins

#11

Сообщение Imran » 01.06.2022{, 17:28}

Ещё раз огромное спасибо, все работает.Хочу перейти полностью на ваши блоки но много чего пока не понимаю, А что если я буду переходить на ваши блоки плавно, изучая, конфликтовать не будут с штатными блоками ?

Не показывает дисплей строки, что не так делаю ? поясните пожалуйста. И ещё дисплей стробит в место того что бы отключался.
Screenshot_1.png
Проект
KOND_MEGA_EXP_v1.zip
(1.36 МБ) 26 скачиваний

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

ЭкоСреда ecoins

#12

Сообщение ecoins » 01.06.2022{, 19:16}

Imran писал(а):
01.06.2022{, 17:28}
Не показывает дисплей строки, что не так делаю ? поясните пожалуйста. И ещё дисплей стробит в место того что бы отключался.
Пример вывода строк:
KOND_MEGA_EXP_v3_eis.zip
(608.28 КБ) 37 скачиваний
KONG_eis.png
KOND_foto_3.jpg
-------------
Imran писал(а):
01.06.2022{, 17:28}
Ещё раз огромное спасибо, все работает.Хочу перейти полностью на ваши блоки но много чего пока не понимаю, А что если я буду переходить на ваши блоки плавно, изучая, конфликтовать не будут с штатными блоками ?
Можно использовать другие блоки.
Если Вы планируете использовать блоки ecoins всегда рекомендуем устанавливать блок "Диспетчер задач" - в примере на плате 1.
По Вашему примеру - рекомендуем разнести проект по разным платам. Это по совокупности повлечет целый ряд достоинств как по быстродействию, так и по удобстве отладки.

Аватара пользователя
Imran
Сержант
Сообщения: 103
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 3
Имя: Имран

ЭкоСреда ecoins

#13

Сообщение Imran » 02.06.2022{, 11:37}

ecoins писал(а):
01.06.2022{, 19:16}
рекомендуем устанавливать блок "Диспетчер задач"
Это очень важно ? я пока изучаю и не понимаю пока как он должен работать.
Обезаетльно блок блинк ?
И еше почему у меня стробит дисплей ? единица на нем должна постоянной или же в один импульс?

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

ЭкоСреда ecoins

#14

Сообщение ecoins » 02.06.2022{, 13:06}

Imran писал(а):
02.06.2022{, 11:37}
Это очень важно ? я пока изучаю и не понимаю пока как он должен работать.
Со временем станет понятна польза. А пока разбивайте большой проект по платам.
Imran писал(а):
02.06.2022{, 11:37}
Обезаетльно блок блинк ?
Блок блинк не обязателен.
Imran писал(а):
02.06.2022{, 11:37}
И еше почему у меня стробит дисплей ? единица на нем должна постоянной или же в один импульс?
Уточните вопрос, не понял его.

Аватара пользователя
Imran
Сержант
Сообщения: 103
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 3
Имя: Имран

ЭкоСреда ecoins

#15

Сообщение Imran » 02.06.2022{, 13:12}

ecoins писал(а):
02.06.2022{, 13:06}
Уточните вопрос, не понял его
подсветка дисплея на 1 он должен включаться а на 0 отключаться ? я сделал так он у меня мерцает, а в штатном блоке не мерцает стабильно работает.

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

ЭкоСреда ecoins

#16

Сообщение ecoins » 02.06.2022{, 14:12}

Imran писал(а):
02.06.2022{, 13:12}
подсветка дисплея на 1 он должен включаться а на 0 отключаться ? я сделал так он у меня мерцает, а в штатном блоке не мерцает стабильно работает.
На стенде тест работает:
LCD_OnOffLigth.zip
(479.77 КБ) 30 скачиваний
LCD_OnOffLigth.png
20220602_135952.jpg
20220602_135955.jpg
Возможно что у Вас в проекте?
Можете выделить проект и прислать, мы посмотрим.
Возможно(похоже) Вы используете одновременно на одном дисплее стандартные и наши блоки - у них в части управления подсветкой могут быть конфликты.
В Вашем большом проекте не рекомендую использовать стандартные блоки - они отнимают много процессорного времени.
Одна из функций диспетчера это расчет кол-во циклов loop() в сек - не удивлюсь если это меньше 100, а нормальный большой проект это 10000 и выше.

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

ЭкоСреда ecoins

#17

Сообщение ecoins » 04.06.2022{, 01:11}

По просьбе некоторых заинтересованных лиц здесь сделали описание изготавливаемых тестовых устройства - выложили в посте #5. viewtopic.php?t=8064#p114991
В этом месяце с учетом наличия комплектующих изготовим 8-м устройств на Raspberry Pi Pico, на остальных платформах в работе.
До 4-х устройств могут быть предложены заинтересованным проектировщикам. Если такие будут, пишите в "личное сообщение".

JonyBest
Сержант
Сообщения: 139
Зарегистрирован: 18.11.2015{, 22:42}
Репутация: 9
Откуда: Близко к Ставрополю
Имя: Евгений

ЭкоСреда ecoins

#18

Сообщение JonyBest » 04.06.2022{, 23:43}

Доброго времени! Подскажите - быстрый блок от Вас на 8574tT, аналогично блоку 74hc595, можно надеяться когда нибудь увидеть?

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

ЭкоСреда ecoins

#19

Сообщение ecoins » 05.06.2022{, 04:07}

JonyBest писал(а):
04.06.2022{, 23:43}
Доброго времени! Подскажите - быстрый блок от Вас на 8574tT, аналогично блоку 74hc595, можно надеяться когда нибудь увидеть?
1.Быстрый блок на 74HС595 - чип может работать или через аппаратный интерфейс SPI или через любые три пина, которые работают на выход.
2.Во втором случае быстродействие достигается через "быстрый" дискретный вывод основанный на прямом доступе к регистрам.
3."Быстрый" вывод особенно эффективен на "медленных" контроллерах AVR(UNO,Nano,Mega).
4.Мы делаем адаптеры для LCD типа HD44780 на 74HC595 поскольку блок работает гораздо быстрее чем через PC8574 и даже быстрее чем через прямое подключение дисплея к пинам контроллера по 4-х или 8-битной шины данных.
4.PC8574 работает через i2c и это изначально накладывает ограничение на быстродействие вывода. Этот чип имеет слабенькие выводы (по току) и в отличии от 74HC95 не позволяет включать их каскадом и записывать сразу по 8-32 бита.
5.Ввод-вывод для i2c неплохо реализуется на чипе MCP23017, и на него есть блок с развитыми возможностями.
6.С чипом PC8574 Вы можете работать используя блок i2c.Запись(EIS.02.DEVICE->11.ИНТЕРФЕЙСЫ->04.i2c.Запись).
7.Отдльный блок создать можно, но разве есть доступные кроме как для LCD модули на таком чипе?

Если это действительно актуально, то отдельный блок создать не сложно. Потребуется только уточнить требования к нему - интерфейс, настройки, меню.
Успехов.

Аватара пользователя
Di123
Капитан
Сообщения: 820
Зарегистрирован: 03.11.2018{, 19:38}
Репутация: 27
Имя: Дмитрий

ЭкоСреда ecoins

#20

Сообщение Di123 » 05.06.2022{, 08:03}

пробую через ваш блок вывести частоту в 1гц сос меной скважности от 0-100%
по началу всё хорошо
но после 64% происходит срыв периода в ноль
2022-06-05 11-53-04.JPG
2022-06-05_115609.png
2022-06-05_115609.png (3.5 КБ) 3205 просмотров

Ответить

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