ЭкоСреда ecoins

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

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

ЭкоСреда ecoins

#481

Сообщение vovka1973 » 15.01.2023{, 21:05}

hallozin1 писал(а):
15.01.2023{, 20:57}
Поставьте блок в проект и будет 4095
работает :smile9:
Изображение

hallozin1
Рядовой
Сообщения: 16
Зарегистрирован: 02.08.2021{, 12:43}
Репутация: 4
Имя: Алексей

ЭкоСреда ecoins

#482

Сообщение hallozin1 » 17.01.2023{, 11:05}

Не компилируется при добавлении блока дисплея с входом типа string

Отправлено спустя 4 минуты 4 секунды:
при добавлении блока servo тоже не того
Вложения
Снимок экрана (10).png
Снимок экрана (9).png

Naladchik
Капитан
Сообщения: 719
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 121
Откуда: Новосибирск
Имя: Павел

ЭкоСреда ecoins

#483

Сообщение Naladchik » 17.01.2023{, 13:14}

hallozin1 писал(а):
17.01.2023{, 11:09}
Не компилируется...
символ подчеркивания продублированПоказать
11.png
красное-ошибка, зеленое-как должно быть
Win7-64. FLProg Portable.
Изображение

hallozin1
Рядовой
Сообщения: 16
Зарегистрирован: 02.08.2021{, 12:43}
Репутация: 4
Имя: Алексей

ЭкоСреда ecoins

#484

Сообщение hallozin1 » 17.01.2023{, 13:44}

Naladchik, увы, но не помогает

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

ЭкоСреда ecoins

#485

Сообщение JonyBest » 20.01.2023{, 22:32}

hallozin1 писал(а):
17.01.2023{, 11:09}
Не компилируется при добавлении блока дисплея с входом типа string
Подтверждаю. Пропустили точку между "id_249400957 "и "custom"
Ругается на пустое значение суффикса с блоками int и др
СпойлерПоказать
Скриншот 20-01-2023 222833.jpg

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

ЭкоСреда ecoins

#486

Сообщение ecoins » 20.01.2023{, 23:07}

JonyBest писал(а):
20.01.2023{, 22:32}
Подтверждаю. Пропустили точку между "id_249400957 "и "custom"
Точку пропустил поправил, в новой версии уже будет исправлено, а пока прошу самостоятельно в блоке поправить и пользоваться.
По использованию String - не рекомендуется к частому употреблению, поскольку сама операция проверки изменения строки занимает время. В упрощенных блоках это еще и сохранение входной переменной при каждом вхождении. Там где это можно, лучше применять блок фиксированного вывода.
32-разрядных контроллерах перечисленное менее критично.
JonyBest писал(а):
20.01.2023{, 22:32}
Ругается на пустое значение суффикса с блоками int и др
Об этом вроде есть указания в описаниях.
Дело в том, что если не требуется использование суффикса или заголовка, не следует использовать пустое место - для этого используется символ ~ (тильда). Здесь проявляется особенность компилятора, возможно со временем найти какой-нибудь способ обхода - пока используйте "тильду".

Agat
Рядовой
Сообщения: 37
Зарегистрирован: 07.01.2023{, 12:29}
Репутация: 2
Имя: Дмитрий

ЭкоСреда ecoins

#487

Сообщение Agat » 21.01.2023{, 17:49}

Работаю с датчиками BME280 и BMP280 подключенными медной витой парой 15метров! Датчик ВМЕ280 работает без проблем, если выставить частоту шины 50. Но ВМР280 не работает..

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

ЭкоСреда ecoins

#488

Сообщение ecoins » 21.01.2023{, 22:17}

Agat писал(а):
21.01.2023{, 17:49}
Работаю с датчиками BME280 и BMP280 подключенными медной витой парой 15метров! Датчик ВМЕ280 работает без проблем, если выставить частоту шины 50. Но ВМР280 не работает..
Датчик BMЕ280 отличается от BMP280 наличием сенсора влажности - на BMP280 он отсутствует. Библиотека для BMP280 отличается от BME280 отсутствием опроса влажности. Можно пользоваться и блоком BME280.
Полагаю возможны две причины описанной проблемы:
1.Указан не тот адрес. Под чип выделены адреса 0x76 и 0x77 и в некоторых модулях выведен отдельный пин для изменения адреса. Некоторые производители устанавливает жестко один из адресов и однозначности их выбора я не обнаружил. Чаще всего так, как по умолчанию в блоках, но для конкретного модуля может понадобиться сменить адрес.
Особенно на этапе исследования рекомендую применять в проекте блок eсoins i2c.scan - он выводит в монитор порта адреса всех устройств, подключенных к шине.
2.Возможная причина связанная с питанием сенсора, который работает от 3.3в. Многие поставщики модуля пишут, что модуль работает от 3.3 или 5в, так я сжег приличное кол-во модулей(они горят не сразу, некоторое время работают). Изредка на модулях стоит понижающий стабилизатор, тогда можно использовать и 5в.
----------------
Сенсор оказался сложный и капризный к величине питания, дорогой. Много памяти требует для сохранения многочисленных калибровочных коэффициентов, которые индивидуальны для каждого чипа и прописаны в нем в момент изготовления.
Это один из сенсоров, который возвращает измеренные показания без контрольной суммы - в блоке мы используем некоторые ухищрения, чтобы повысить вероятность получения достоверных данных, но...
Конечно, это один из немногих сенсоров, который меряет давления. Сенсор BMP180 дешевле, проще и вроде вполне неплохо меряет(это неподтвержденное исследованием суждение).
-------------
Успехов.

Agat
Рядовой
Сообщения: 37
Зарегистрирован: 07.01.2023{, 12:29}
Репутация: 2
Имя: Дмитрий

ЭкоСреда ecoins

#489

Сообщение Agat » 22.01.2023{, 07:13}

ecoins писал(а):
21.01.2023{, 22:17}
Полагаю возможны две причины описанной проблемы:
Спасибо за развернутый ответ! Первую причину исключаю, адреса естественно просканировал, да и подключал на короткий провод - все работает! На счет питания - буду смотреть, может быть, т.к. запитаваю от 5В.
Да, еще важный момент! Подключаю BMP280 на короткий провод - работает! параллельно датчику подключаю витую пару 15м со свободными концами - показания с датчика сразу пропадают! Вывод - индуктивность провода сбивает считывания показаний..

Отправлено спустя 1 час 27 минут 17 секунд:
Запитал от 3,3В. Результат тот же: на 15м проводе ВМР280 не работает, ВМЕ280 работает! На коротком проводе работают оба.

slsl
Рядовой
Сообщения: 25
Зарегистрирован: 08.12.2021{, 22:41}
Репутация: 3
Имя: Вячеслав

ЭкоСреда ecoins

#490

Сообщение slsl » 22.01.2023{, 08:41}

Agat писал(а):
22.01.2023{, 07:13}
Вывод - индуктивность провода сбивает считывания показаний..
Ёмкость ...
Ещё попробуйте поиграться: использовать одну пару, использовать жилы разных пар, использовать две пары - в каждой паре с жилой на массу.

Agat
Рядовой
Сообщения: 37
Зарегистрирован: 07.01.2023{, 12:29}
Репутация: 2
Имя: Дмитрий

ЭкоСреда ecoins

#491

Сообщение Agat » 22.01.2023{, 09:11}

slsl писал(а):
22.01.2023{, 08:41}
Ещё попробуйте поиграться: использовать одну пару, использовать жилы разных пар, использовать две пары - в каждой паре с жилой на массу.
посадил жилы из пары на GND - работает!

Аватара пользователя
nalnik
Подполковник
Сообщения: 1321
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 96
Откуда: Кисловодск
Имя: Александр

ЭкоСреда ecoins

#492

Сообщение nalnik » 22.01.2023{, 09:43}

А подтяжка от SDA-SCL к плюсу питания есть, и какая?
Я хочу быть добрее, но люди сами нарываются.

Agat
Рядовой
Сообщения: 37
Зарегистрирован: 07.01.2023{, 12:29}
Репутация: 2
Имя: Дмитрий

ЭкоСреда ecoins

#493

Сообщение Agat » 22.01.2023{, 10:48}

nalnik писал(а):
22.01.2023{, 09:43}
А подтяжка от SDA-SCL к плюсу питания есть, и какая?

на датчиках распаяны резисторы

slsl
Рядовой
Сообщения: 25
Зарегистрирован: 08.12.2021{, 22:41}
Репутация: 3
Имя: Вячеслав

ЭкоСреда ecoins

#494

Сообщение slsl » 22.01.2023{, 11:39}

Agat писал(а):
22.01.2023{, 09:11}
посадил жилы из пары на GND - работает!
Т.к. сигнал не симметричный, использовать витуху - не камильфо, - повив увеличивает емкость кабеля.
А не заземленные жилы - как антенны помех.
Предпочтительнее для данного случая кабели без повива, например, типа CQR

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

ЭкоСреда ecoins

#495

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

Agat писал(а):
22.01.2023{, 08:40}
Запитал от 3,3В. Результат тот же: на 15м проводе ВМР280 не работает, ВМЕ280 работает! На коротком проводе работают оба.
С Вами очень интересно и содержательно общаться - Вы методичны, точны и содержательны.
И Вы на практике начали заниматься удаленными датчиками, видимо для мониторинга оборудования (15м).
-----------
1.О том, что известно. Чтобы снизить вероятность ошибок в блоках/библиотеках, можно попробовать использовать во всех случаях блок BME280, при желании в нем можно отключить опрос несуществующего в BMP280 опрос влажности(есть опция в параметре "Период измерения влажности"). По результатам можно оценочно судить о качестве BMP280 - возможно модуль конструктивно выполнен как-то не так, или что-то с чипом(хотя это вряд-ли) или еще что-то.
----------
2.Предположений может быть много, но наиболее действенный способ это увидеть.
-Можно посмотреть коды ошибок. В библиотеке они есть, вывод в блоке не предусмотрен, но при его и добавить не сложно.
-Можно посмотреть что происходит на шинах SDA,SCL осциллографом - сам этим методом почти не пользуюсь, но исследование фронтов и выбросов может дать дополнительную информацию.
-Очень хорошие результаты может дать исследование того, что происходит на шине i2c используя логический анализатор. Для нас это один из основных инструментов при разработке библиотек и тестирования проектов, в т.ч. и тестовых. Есть ли у Вас такая возможность?
===============
Вы подняли интересную тему - измерение и сбор данных на физической установке(так я это увидел).
Предложение: может Вы откроете отдельную тему по этой проблематике.
Решений может много - это локальные контроллеры с WiFi+MQTT, это и какие-то простые проводные сети, это и шина CAN, это и простые беспроводные решения и т.п. Писать можно много, а вот достичь масштабируемой практики цель привлекательная.
В этой теме ecoins принял бы активное посильное участие.
----------------------
Спасибо.

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

ЭкоСреда ecoins

#496

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

hallozin1 писал(а):
17.01.2023{, 11:09}
Не компилируется при добавлении блока дисплея с входом типа string
Только что проверил - скомпилировалось.
hallozin1 писал(а):
17.01.2023{, 11:09}
при добавлении блока servo тоже не того
Возможно у Вас очень старые библиотеки и блоки?
Дело в том, что в последних версиях мы убрали проект блоков servo(он изначально не был отлажен).
-------
Нам было бы проще разобраться, если можно посмотреть проект и знать версию библиотеки, которая Вами используется. Версию библиотек можно подсмотреть в отчете, выводимый в монитор порта блоками, которые есть в библиотеках блоков.

Agat
Рядовой
Сообщения: 37
Зарегистрирован: 07.01.2023{, 12:29}
Репутация: 2
Имя: Дмитрий

ЭкоСреда ecoins

#497

Сообщение Agat » 22.01.2023{, 14:11}

ecoins писал(а):
22.01.2023{, 13:43}
Есть ли у Вас такая возможность?

Спасибо за оценку и помощь.
логического анализатора нет. но по косвенным признакам можно судить, что причиной являются емкость и помехи на длинной витой паре. если заземлить парные жилы датчик работает!
И хорошо, что в ваших блоках есть возможность снизить частоту шины, с частотой по умолчанию не работает ни ВМР280 ни ВМЕ280!
Хорошо, создам отдельную тему, в проекте будет много датчиков на длинном проводе (может постепенно перейду на CQR, как советовал уважаемый slsl) и данные будут отправляться по MQTT.

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

ЭкоСреда ecoins

#498

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

Agat писал(а):
22.01.2023{, 14:11}
Хорошо, создам отдельную тему
Отлично, буду ждать и будем участвовать.

evgen123
Сержант
Сообщения: 144
Зарегистрирован: 23.05.2020{, 13:31}
Репутация: 5
Откуда: Краснодар
Имя: Евгений

ЭкоСреда ecoins

#499

Сообщение evgen123 » 22.01.2023{, 19:37}

Ув. Ecoins.
Вы test board не поправляли?

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

ЭкоСреда ecoins

#500

Сообщение ecoins » 22.01.2023{, 21:27}

evgen123 писал(а):
22.01.2023{, 19:37}
Ув. Ecoins.
Вы test board не поправляли?
С каким тестом - для Arduino IDE или FLProg у Вас не работает?
-----
Доделываем некоторые детали под Nextion и возможно сразу выложим промежуточную версию.

Ответить

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