об ошибках работы скоростного счетчика в ФЛПрог.

Вопросы по встроенным блокам
OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#1

Сообщение OLGA » 03.11.2021{, 16:57}

Уважаемые пользователи столкнулся с такой проблемой при создании в ФЛПрог дозиметра на счетчике Гейрера, столкнулся с проблемой – при измерении естественного фона все работает в пределах нормы.
при проверке от источника излучений от старого тумлера с люминофором иРадий-226 226Ra количество им-сов на входе в ардуино возрастает с 13 -25 до 200 -230, а показания на 2004 вырастают на 10 -16 мр/ч.
Сначала боролся с входными цепями , но при разных схемных решениях количество им-сов на входе и выходе одинаковы.
боролся с помехами, насовал кондеров, стабилизировал 400В с преобразователя, ограничил вход в Ардуину на 4.5В.
Провал чужие (переработанные под свои цели ) программы и тот же результат.
После пришел к выводу, что при увеличении частоты следования им-сов скоростной счетчик перестает считать «большую» частоту.
Пробовал на версиях старых ФЛПрог тоже самое
Решение проблемы оказалось довольно простым индикатор 2004 был подключен по I2C.
Как только переделал подключение индикатора 2004 по стандартной схеме все стало на свои места.
при проверке от источника излучений Радий-226 226Ra показания индикатора 2004 стали соответствовать количеству им-сов на 2 входе ардуино.
Если кто может помочь объяснить причину такой работы скоростного счетчика и I2C?
Вложения
доз.PNG
на рисунке количество им-сов 9 уровень фона 10 . частота около 5 Гц
доз1.PNG
на рисунке количество им-сов 48 уровень фона 40, но на 2 входе уно их как видно больше в 10 раз, чем на экране 2004.

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

об ошибках работы скоростного счетчика в ФЛПрог.

#2

Сообщение nalnik » 03.11.2021{, 17:01}

Осциллограф красивый.
Я хочу быть добрее, но люди сами нарываются.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#3

Сообщение Sancho » 03.11.2021{, 17:49}

OLGA, Фотки красивые, но проект, проблемный, .flp, помог бы больше.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#4

Сообщение support » 03.11.2021{, 18:58}

Я могу предположить что приоритет прерываний шины I2C выше чем приоритет прерываний задаваемых в пользовательской программе. И поэтому скорее всего, что пока обмен с дисплеем не завершится, работа счетчика блокируется. Попробую поискать, как можно поднять приоритет прерываний.
Автор программы FLProg.

Аватара пользователя
ingener
Лейтенант
Сообщения: 556
Зарегистрирован: 14.10.2018{, 00:26}
Репутация: 20
Имя: Андрей

об ошибках работы скоростного счетчика в ФЛПрог.

#5

Сообщение ingener » 03.11.2021{, 20:41}

Только сегодлня тестировал похожий проект - скоростной счетчик + пром. энкодер, четко считает не менее 500 Гц.
Диспленй 1602 подключен также по 12С, но блоки от Дрюнделя.
Галочку поставили на аппаратный таймер в настройках?

OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#6

Сообщение OLGA » 03.11.2021{, 21:50}

В скоростном счетчике использовал "линию задержки"
файл с прогой "1602 по шине I2C Дозиметр" скоростной счетчик работает не корректно.
файл с прогой "1602 без I2C Дозиметр" скоростной счетчик работает правильно.
Вложения
с 1602 без I2CДозиметр .flp
(863.87 КБ) 47 скачиваний
1602 по шине I2C Дозиметр .flp
(837.57 КБ) 48 скачиваний

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#7

Сообщение support » 03.11.2021{, 22:39}

Посмотрел проект. В принципе понятно в чем проблема. Сам счетчик отрабатывает нормально, но вся остальная логика работает уже в зависимости от цикла программы. и соответсвенно цикл выполнения программы удлиняется при использовании I2C. И часть импульсов на выходе блока скоростного счетчика просто остаются незамеченными остальными блоками.

Немного переделал Ваш проект, и если я правильно понял требуемую логику - должно заработать вне зависимости от дисплея
Вложения
1602 по шине I2C Дозиметр .flp
(732.02 КБ) 78 скачиваний
Автор программы FLProg.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#8

Сообщение Sancho » 04.11.2021{, 08:14}

support писал(а):
03.11.2021{, 18:58}
Я могу предположить что приоритет прерываний шины I2C выше чем приоритет прерываний задаваемых в пользовательской программе.
Приоритет прерывания по int0 следующий, после самого высокого rst. 100500 проектов у народа работает и с фазорезом и с дисплеем по i2c
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

об ошибках работы скоростного счетчика в ФЛПрог.

#9

Сообщение KulibinOrsk » 04.11.2021{, 15:58}

Sancho, ну как 100500 работает... с фазорезом... по одной фазе работает, а когда 3 фазы то все - уже нормально не работает. Пришлось выкинуть дисплей для того чтобы по 3-м фазам работало.
Если не в тему то удалите.

OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#10

Сообщение OLGA » 02.09.2022{, 20:18}

Прошу помочь разобраться с работой датчика MH-Z19B и скоростного счетчика.
Сделал часы на матрицах 8x8 на чипе max7219(регулировкой яркости на фоторезисторе) с показаниями температуры, давления, влажности и углекислого газа СО 2 на датчике MH-Z19B (STM32F051K86 внутри). Вывод PWM датчика MH-Z19B используется для подсчета СО 2 в ррм. Измерение ширины PWM-сигнала т.е. длинны импульса дает значение содержания СО 2.

Измерение СО 2 производится с помощью блока скоростного счетчика. Показание выродится на на матрицу 8x8 на чипе max7219 и значения больше 1000ррм и до 2000ррм выводятся на желтый, и больше или равно 2000ррм на красный светодиод. При открытом окне показания MH-Z19B 407- 410ррм. При закрытом окне и двери в комнату уровень СО 2 повышается до 1000 ррм при нахождении там в течении 5 часов. Так же при дыхании на непосредственно на датчик СО 2 повышается значение уровня СО 2 повышается до 4000 - 4500ррм.
Но при этом красный светодиод горит (мигает) только в момент времени когда на матрице 8x8 показывают часы, а когда бегущая строка вообще не горит. Желтый уровень СО 2 (в промежутке от 1000 2000ррм) работает правильно. И регулировка яркости матрицы тоже происходит момент времени когда на матрице 8x8 показывают часы.
Смею предположить, что такая работа красного светодиода (горит только в момент времени когда на матрице 8x8 показывают часы) связана с блоком скоростного счетчика.
Может кто поопытней поделится своими предположениями, в чем причина такой работы красного светодиода.
Вложения
MH-Z19b .flp
(2.47 МБ) 21 скачивание

OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#11

Сообщение OLGA » 04.09.2022{, 19:25}

Работа скоростного счетчика в проге с MH-Z19B похожа на проблему изложенную выше про дозиметр на счетчике Гейрера. Там, как и здесь прога тупит при большой частоте работы скоростного счетчика и I2C. А с MH-Z19B,чем больше длинна считываемого им-са, тем больше тупит прога. На уровнях около 5000ррм красный светодиод зажигается и горит постоянно, при снижении до 4000 - 4500ррм красный светодиод горит (мигает) только в момент времени когда на матрице 8x8 показывают часы, при снижении в промежутке от 1000 2000ррм работает согласно условленному алгоритму.
Вложения
рис.jpg

OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#12

Сообщение OLGA » 08.09.2022{, 08:29}

Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Да и значения СО 2 выше 2000ррм реально не достижимы в моих условиях.
Всем спасибо за просмотры.

Аватара пользователя
Dryundel
Полковник
Сообщения: 2401
Зарегистрирован: 22.05.2017{, 23:15}
Репутация: 783
Откуда: Ярославль
Имя: Андрей
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#13

Сообщение Dryundel » 08.09.2022{, 09:10}

OLGA писал(а):
04.09.2022{, 19:25}
Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Скорей очень специфичная. Мало кто занимается такими датчиками.

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

об ошибках работы скоростного счетчика в ФЛПрог.

#14

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

OLGA писал(а):
04.09.2022{, 19:25}
Работа скоростного счетчика в проге с MH-Z19B похожа на проблему изложенную выше про дозиметр на счетчике Гейрера. Там, как и здесь прога тупит при большой частоте работы скоростного счетчика и I2C. А с MH-Z19B,чем больше длинна считываемого им-са, тем больше тупит прога. На уровнях около 5000ррм красный светодиод зажигается и горит постоянно, при снижении до 4000 - 4500ррм красный светодиод горит (мигает) только в момент времени когда на матрице 8x8 показывают часы, при снижении в промежутке от 1000 2000ррм работает согласно условленному алгоритму.
Проблема известная и схожа с проблемой которую мы разрешили с DS1820. Если Вы пришлете проект и мы общими усилиями переделаем его на диспетчер задач, то возможно удастся написать и библиотеку MH-Z19B с корректировкой показаний (а может получится и по прерываниям - надо смотреть) и проблема разрешится.
Задача полезная, MH-Z19B вроде должен быть, давно планировали заняться им , но руки не доходят.
А Вы в профессиональном редакторе FLProg работаете? Наибольшая трудоемкость подобных проектов обычно бывает связана в созданием интерфейса блока. и его отладки, доводки и сопровождения.

rogekam
Рядовой
Сообщения: 77
Зарегистрирован: 24.06.2020{, 21:21}
Репутация: 28
Откуда: RUS31
Имя: Egor

об ошибках работы скоростного счетчика в ФЛПрог.

#15

Сообщение rogekam » 08.09.2022{, 12:15}

OLGA писал(а):
08.09.2022{, 08:29}
Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Пользовательский блок на датчик MH-19b тут: viewtopic.php?f=74&t=7091&p=105062&hili ... 9B#p105062
Датчик соединяется по UART. Работает 2 года.
СпойлерПоказать
4.GIF
СпойлерПоказать
2.png
СпойлерПоказать
3.png
СпойлерПоказать
5.png

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

об ошибках работы скоростного счетчика в ФЛПрог.

#16

Сообщение ecoins » 08.09.2022{, 12:54}

rogekam писал(а):
08.09.2022{, 12:15}
Пользовательский блок на датчик MH-19b тут: viewtopic.php?f=74&t=7091&p=105062&hili ... 9B#p105062
Датчик соединяется по UART. Работает 2 года.
Красивое решение. Вход дозиметр еще бы задействовать и убедиться что скоростной счетчик не барахлит ->Wi-Fi, UART буферированный или нет, особенности проекта и т.п.
А так красиво, пятерка.
А у Вас нет лишней печатной платы попробовать?

rogekam
Рядовой
Сообщения: 77
Зарегистрирован: 24.06.2020{, 21:21}
Репутация: 28
Откуда: RUS31
Имя: Egor

об ошибках работы скоростного счетчика в ФЛПрог.

#17

Сообщение rogekam » 08.09.2022{, 16:04}

ecoins писал(а):
08.09.2022{, 12:54}
А у Вас нет лишней печатной платы попробовать?
Осталась плата использования в датчике MH-Z19B вывода PWM.
СпойлерПоказать
7.jpg
На следующей неделе жду фоторезист, буду делать платы для задержавшихся проектов. Изготовлю и для MH-Z19B по UART. Конечно, вышлю почтой. Адрес в личку.

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

об ошибках работы скоростного счетчика в ФЛПрог.

#18

Сообщение ecoins » 08.09.2022{, 16:57}

rogekam писал(а):
08.09.2022{, 16:04}
На следующей неделе жду фоторезист, буду делать платы для задержавшихся проектов. Изготовлю и для MH-Z19B по UART. Конечно, вышлю почтой. Адрес в личку.
Спасибо, адрес отправил.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

об ошибках работы скоростного счетчика в ФЛПрог.

#19

Сообщение aidar_i » 08.09.2022{, 17:12}

Вот код от Sancho. Обернул в блок, может подойдет
Скоростной счетчик.flp
(79.81 КБ) 45 скачиваний

OLGA
Сержант
Сообщения: 100
Зарегистрирован: 04.08.2021{, 09:21}
Репутация: 0
Имя: Павел

об ошибках работы скоростного счетчика в ФЛПрог.

#20

Сообщение OLGA » 08.09.2022{, 17:54}

ecoins писал(а):
08.09.2022{, 11:21}
А Вы в профессиональном редакторе FLProg работаете?
В профессиональном редакторе FLProg работать не пробовал. мой проект размещен выше пост №10 MH-Z19b .flp.он простенький да и проблема с уровнем более 2000ррм

Отправлено спустя 5 минут 18 секунд:
rogekam, Пробовал пользовался блоками с форума и том числе и «MH-Z19b_ESP8266_interval_OFFczp_(CODE).ubi» и пришел к выводу, что по UART показания СО 2 не соответствуют действительности. У меня часы, температура на DS18B20, датчики, давления, влажности, СО 2 и на Arduino Nano 3.0 и по UART показания скачут плюс минус 200-400ррм (Бегущая строка мах7219, на дисплеем 2*16 было больше500 -1000ррм) при открытом окне. Предполагаю, что уровни по UART (в MH-Z19B внутри STM32F051K86) не согласуются, хотя в пишут должно быть нормально. А на скоростном счетчике показания в норме: При открытом окне показания MH-Z19B 407- 410ррм. При закрытом окне и двери в комнату уровень СО 2 повышается до 1000 ррм при нахождении там в течении 5 часов. И при 1000ррм уже состояние сонное и голова тяжелеет. Так же сравнивал показания с заводскими измерителями СО 2,показания плюс 20ррм минус 10ррм (у знакомых брал, бытовой диапазон 400-2000ppm).
У Вас на графике средний уровень 600ррм, у меня при за ночь не подымается выше 500ррм при закрытом окне и при открученном на 1-2 мм диске вентиляционного отверстия в стене . У всех условия разные, но больше 1000ррм это уже опасно для Вас.

Ответить

Вернуться в «Штатные блоки»