Страница 54 из 80

Разработки ecoins

Добавлено: 12.06.2021{, 12:30}
Vint
Добрый день, уважаемый ecoins. В блоке сенсоров у DS1820 не активируется выход "err". И возможно ли вместо "T=-0.1" приписать другое значение, а то -0,1 совпадает с реальной температурой.

Разработки ecoins

Добавлено: 12.06.2021{, 13:37}
ecoins
ecoins писал(а):
29.05.2021{, 23:16}
Добрый день, уважаемый ecoins. В блоке сенсоров у DS1820 не активируется выход "err". И возможно ли вместо "T=-0.1" приписать другое значение, а то -0,1 совпадает с реальной температурой.
По выходу err - в новой версии будет выход ок и он будет работать.
А какую температуру лучше прописать ? Раньше было NAN, но потом оказалось, что не все программные ядра от Arduino поддерживают это значение.

Разработки ecoins

Добавлено: 12.06.2021{, 14:37}
Vint
Спасибо за оперативный ответ! да любую больше 100, к примеру 255

Разработки ecoins

Добавлено: 12.06.2021{, 18:37}
o615ye161
o615ye161 писал(а):
08.06.2021{, 21:31}
ecoins, подскажите пожалуйста почему блок BME280 не запускается, можете загрузить себе скетч?
и второй вопрос на вашем блоке ка из Flp можно MCP23017 регистр А использовать одновременно как вход и выход?
Вопрос про BME актуален,а вот MCP23017 всё таки регистр A или B не могут одновременно работать как вход и выход, отсюда следующий вопрос возможно сделать ваш блок по аналогии стандартного Flprog но в вашем исполнении чтобы регистр А или В мог работать на вход и выход одновременно.

Разработки ecoins

Добавлено: 12.06.2021{, 20:42}
ecoins
o615ye161 писал(а):
12.06.2021{, 18:37}
Вопрос про BME актуален
Очень сильно завяз с оптимизацией с учетом нового редактора ПБ - сильно дорабатывается базовый Soft - самому не нравится, что завязли, решим как-то со временем.
o615ye161 писал(а):
12.06.2021{, 18:37}
вот MCP23017 всё таки регистр A или B не могут одновременно работать как вход и выход, отсюда следующий вопрос возможно сделать ваш блок по аналогии стандартного Flprog но в вашем исполнении чтобы регистр А или В мог работать на вход и выход одновременно.
Одной из особенностей MCP21017 - это обмен через i2c. Это не очень быстрый интерфейс. Когда каждый из регистров А и В определен как вход или выход, то обмен выполняется отправкой небольшого кол-ва байт.
Если управление делается побитно, то если делать прямолинейно - кол-ва обмена увеличивается примерно в 20 раз и для этого интерфейса это становится ощутимо - во время обмена по i2c основной код проекта не выполняется.
Потому выбрано такое решение - компромисс между удобством и скоростью.

Разработки ecoins

Добавлено: 12.06.2021{, 23:31}
o615ye161
ecoins писал(а):
12.06.2021{, 20:42}
Одной из особенностей MCP21017 - это обмен через i2c. Это не очень быстрый интерфейс. Когда каждый из регистров А и В определен как вход или выход, то обмен выполняется отправкой небольшого кол-ва байт.
Если управление делается побитно, то если делать прямолинейно - кол-ва обмена увеличивается примерно в 20 раз и для этого интерфейса это становится ощутимо - во время обмена по i2c основной код проекта не выполняется.
Потому выбрано такое решение - компромисс между удобством и скоростью.
Жаль, потому как в проекте есть два выхода в регистре В, остальные работают как вход из за двух выходов ставить еще одну микруху MCP23017 не целесообразно, жаль жаль

Разработки ecoins

Добавлено: 02.07.2021{, 16:46}
ecoins
По просьбе пользователя выкладываю вариант для LCD HD44780 40x4:
1. Библиотека для Arduino IDE. Настроена для автономной работы. В дальнейшем будет встроена в RT_HW_BASE.h.
RT_11_HW_HD44780_v1.1.zip
(42.27 КБ) 27 скачиваний
2.Пользовательские блоки.
EIS.03.Дисплеи вер.1.5 (02.07.21).zip
(97.31 КБ) 30 скачиваний
3.Тест
Test LCD 40x4.zip
(261.1 КБ) 33 скачивания
Проверяли только на lcd 20x4. Вроде должно работать и 40х4.
-----------------------------------------------------------
P.S. Много работаем над над библиотекой RT_HW_BASE.h. Уже поддерживает STM32F1,STM32F4 на двух платформах.
Пробуем Raspberry Pi Pico. Настроили для Arduino Zero - ждем посылку с контроллерами.

Разработки ecoins

Добавлено: 05.07.2021{, 13:13}
ecoins
ecoins писал(а):
02.07.2021{, 16:46}
По просьбе пользователя выкладываю вариант для LCD HD44780 40x4:
Продолжение. Расширенный тест с учетом результатов от пользователя

Разработки ecoins

Добавлено: 05.07.2021{, 14:18}
ecoins
По теме генерация пачек импульсов - может будет полезно.

Разработки ecoins

Добавлено: 11.07.2021{, 11:50}
tolochko
Здравствуйте уважаемые
Столкнулся с такой штукой
Если использовать блок датчика со2 на отдельной плате
И применить диспетчер задач то данные на Скаду с датчика приходят не корректно со знаком -
Поставил блок на плату с датчиками температуры стало нормально
С чем это может быть связано?
Датчик Т_Вл_Со2 на УНО.flp
(3.27 МБ) 19 скачиваний

Разработки ecoins

Добавлено: 11.07.2021{, 17:06}
ecoins
tolochko писал(а):
11.07.2021{, 11:50}
Здравствуйте уважаемые
Столкнулся с такой штукой
Если использовать блок датчика со2 на отдельной плате
И применить диспетчер задач то данные на Скаду с датчика приходят не корректно со знаком -
Поставил блок на плату с датчиками температуры стало нормально
С чем это может быть связано?
После обращения к внешнему датчику, который у Вас подключен через SoftSerial задержка 1сек - ждет ответа от датчика и не получает. Несколько иначе надо делать. И еще кое-что.
Смотрим, чуть позже ответим подробнее.

Разработки ecoins

Добавлено: 11.07.2021{, 17:32}
tolochko
Заранее спасибо
Буду жать ответ

Разработки ecoins

Добавлено: 11.07.2021{, 19:44}
ecoins
Для ответа для постов #1095,1097 выкладываю совсем новые библиотеки и блоки.
Прежде всего для тех, кому интересна тема STM32.
1.Теперь библиотека одна - поддерживает много разных контроллеров.
RT_00_HW_BASE_v6.01.zip
(119.18 КБ) 50 скачиваний
Таблица прикладывается.
Контроллеры_RT_HW_BASE_v02_110721.pdf
(148.2 КБ) 53 скачивания
Уже есть Raspberry Pi Pico (испытывается), Arduino Zero (заказана и в пути).
2.Библиотека пользовательских блоков одна.
Иерархическая система доступа, всё в новом редакторе.
Много удобных утилит (счетчики, генераторы, конверторы и т.д.).
Есть сенсоры DHT22,DS1820 (библиотека 1-Wire внутри своя, на основе стандартной). Сенсоры будут добавляться.
Включена библиотека LCD HD44780. В режимах i2c, SPI поддерживает дисплеи 40x4 - спасибо одному из участников форума, довели совместными усилиями.
EIS.01.СИСТЕМА вер.1.12 (11.07.21).zip
(594.08 КБ) 43 скачивания
3.Проверена на STM32F103C,STM32F103R,STM32F103V,STM32F407,STM32F411, Seeeduino XIAO M0.
И на обычных контроллерах конечно (AVR,DUE,ESP8266,ESP32).

Разработки ecoins

Добавлено: 11.07.2021{, 19:52}
ecoins
Тесты к предыдущему посту.
FPROG_Test01_BOARD_v01_100721.zip
(456.23 КБ) 30 скачиваний
FPROG_Test02_LED_DHT22_DS1820_v01.zip
(681.96 КБ) 25 скачиваний
FPROG_Test03_SHED_LED_DHT22_DS1820_LCD_v01.zip
(1.43 МБ) 38 скачиваний
Тесты на C++ продублированы в примерах к библиотеке RT_HW_BASE.h в Arduino IDE.
Раньше создание таких примеров отнимало много времени, но неожиданно открыли новую возможность:
создаем проекты в FLProg на наших блоках с комментариями и после испытания сохраняем их в формате .ino, которые и сохраняем в библиотеке.
Оказалось ну очень удобно и быстро....

Разработки ecoins

Добавлено: 11.07.2021{, 20:19}
ecoins
Фото стенда.
IMG_3065.jpg
В контролеры Arduino UNO, Arduino Nano, STM32F103C, STM32F411CE, STM32F407VE
загружен один и тот же проект (третий из поста 1081) непосредственно из Arduino IDE, менялся только тип контроллера и номер порта - больше никаких изменений в проекте.
В этом проекте не используются никакие внешние библиотеки, кроме RT_HW_BASE.h и непосредственно из CORE соответствующего контроллера.
Для STM32 поддерживаются оба ядра (в них есть отличия, которые библиотека обрабатывает).

Разработки ecoins

Добавлено: 11.07.2021{, 20:27}
ecoins
Сравнение быстродействия разных контроллеров по самому простому тесту - среднее время цикла loop() на одном и том тесте.
Измерено логическим анализатором.
LA_стенд.png
Arduino UNO,Nano - 20ms;
STM32F103C - 7ms;
STM32F411CE-5ms;
STM32F407VE-4ms.
В действительности быстродействие (в совокупности) STM32 существенно выше, чем у AVR,DUE,ESP8266(и несколько больше чем у ESP32). Так на одних и тех же частотах у них побыстрее шина i2c - это оказалось неожиданным и для нас.

Разработки ecoins

Добавлено: 11.07.2021{, 21:00}
ecoins
tolochko писал(а):
11.07.2021{, 17:32}
Заранее спасибо
Буду ждать ответ
1.Благодарим за то, что Вы используете наши блоки.
Ваш тест несколько изменил на основе новой библиотеки и новых блоков.
FLProg_Датчик T_H_CO2 _v2.zip
(1.14 МБ) 39 скачиваний
2.Проверили на стенде.
Копия IMG_3066.jpg
3.Понравилась Ваша плата по расчету влажности. После наших изменений она возможно не вполне работает.
Если Вы её доработаете, то мы с учетом Ваших рекомендаций с интересом включили бы его в библиотеку и сделали бы пользовательский блок.
4.Какие особенности увидели в исходном варианте:
4.1. В проекте UART0 используется для MоdBus. В блоке чтения газа (видимо на этапе отладки) были оставлены строки использования этого же порта для вывода считанного значения из датчика - соответственно при работе с KaScada (если Вы используете его в качестве внешнего пульта) или другой SCADA возможны сбои.
4.2.Опрос внешнего датчика СО2 осуществляется через программный UART. Отправляется команда и сразу чтение из порта. Это правильнее делать несколько иначе. Соответственно если датчика нет, то зависание на 1 сек (и это еще видимо спасибо за реализации SoftSerial - могло висеть вечно). Этот блок надо делать иначе.
4.3.Почти не предусмотрено средства для отладки - без них сложно отлаживать подобные проекты.
5. В Ваш проект мы встроили несколько отладочных средств:
5.1. Мерцает светодиод на плате каждые 250мс - по нему видно как "тормозит" плата каждые 5 сек (такое время опроса мы установили в проекте).
5.2. Есть блок вывода на консоль (терминал Arduino IDE) - при не подключенном мастере его можно использовать (в комментариях написано как).
5.3. Добавлена плата вывода на LCD через i2c - работает очень шустро. На него выведены пять параметров, три флага ok для сенсоров и мерцающий символ в первой позиции - по нему тоже видно, когда проект тормозит.
6.0. Ну и встроили разные новые сервисные блоки - так проект получается и проще, и понятнее.
7.0. Этот же проект мы грузили и в STM32 - все хорошо работает. Рекомендуем поглядывать в эту сторону :smile427:
-----
Успехов.

Разработки ecoins

Добавлено: 11.07.2021{, 22:25}
tolochko
Спасибо
сегодня уже не смогу проверить
Завтра обязательно отпишусь

Разработки ecoins

Добавлено: 13.07.2021{, 16:11}
tolochko
здравствуйте
переделал плату с вашими замечаниями
блок психрометра действительно не работает как надо
он кстати не мой его если не ошибаюсь делал nalnik
я думаю чтоб он корректно работал нужно данные с термометров получать синхронно
а ваши блоки опрашиваются по очереди как я понимаю
у меня еще была проблема с модбасом с одной платой работал с двумя уже нет
сейчас немного переделал ушел от float вроде работает пока понаблюдаю
Да и я не понимаю что такое консоль где смотреть данные

Отправлено спустя 4 минуты 26 секунд:
Да я термодатчики сухой и мокрый переставил на одну плату
посмотрю что получится

Разработки ecoins

Добавлено: 13.07.2021{, 16:33}
ecoins
tolochko писал(а):
13.07.2021{, 16:16}
я думаю чтоб он корректно работал нужно данные с термометров получать синхронно
а ваши блоки опрашиваются по очереди как я понимаю
Это не имеет большого значения. И у Вас они опрашиваются последовательно.
tolochko писал(а):
13.07.2021{, 16:16}
Да и я не понимаю что такое консоль где смотреть данные
Консоль - это монитор порта.