Страница 1 из 2
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 16:57
OLGA
Уважаемые пользователи столкнулся с такой проблемой при создании в ФЛПрог дозиметра на счетчике Гейрера, столкнулся с проблемой – при измерении естественного фона все работает в пределах нормы.
при проверке от источника излучений от старого тумлера с люминофором иРадий-226 226Ra количество им-сов на входе в ардуино возрастает с 13 -25 до 200 -230, а показания на 2004 вырастают на 10 -16 мр/ч.
Сначала боролся с входными цепями , но при разных схемных решениях количество им-сов на входе и выходе одинаковы.
боролся с помехами, насовал кондеров, стабилизировал 400В с преобразователя, ограничил вход в Ардуину на 4.5В.
Провал чужие (переработанные под свои цели ) программы и тот же результат.
После пришел к выводу, что при увеличении частоты следования им-сов скоростной счетчик перестает считать «большую» частоту.
Пробовал на версиях старых ФЛПрог тоже самое
Решение проблемы оказалось довольно простым индикатор 2004 был подключен по I2C.
Как только переделал подключение индикатора 2004 по стандартной схеме все стало на свои места.
при проверке от источника излучений Радий-226 226Ra показания индикатора 2004 стали соответствовать количеству им-сов на 2 входе ардуино.
Если кто может помочь объяснить причину такой работы скоростного счетчика и I2C?
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 17:01
nalnik
Осциллограф красивый.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 17:49
Sancho
[ref]OLGA[/ref], Фотки красивые, но проект, проблемный, .flp, помог бы больше.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 18:58
support
Я могу предположить что приоритет прерываний шины I2C выше чем приоритет прерываний задаваемых в пользовательской программе. И поэтому скорее всего, что пока обмен с дисплеем не завершится, работа счетчика блокируется. Попробую поискать, как можно поднять приоритет прерываний.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 20:41
ingener
Только сегодлня тестировал похожий проект - скоростной счетчик + пром. энкодер, четко считает не менее 500 Гц.
Диспленй 1602 подключен также по 12С, но блоки от Дрюнделя.
Галочку поставили на аппаратный таймер в настройках?
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 21:50
OLGA
В скоростном счетчике использовал "линию задержки"
файл с прогой "1602 по шине I2C Дозиметр" скоростной счетчик работает не корректно.
файл с прогой "1602 без I2C Дозиметр" скоростной счетчик работает правильно.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 03 ноя 2021, 22:39
support
Посмотрел проект. В принципе понятно в чем проблема. Сам счетчик отрабатывает нормально, но вся остальная логика работает уже в зависимости от цикла программы. и соответсвенно цикл выполнения программы удлиняется при использовании I2C. И часть импульсов на выходе блока скоростного счетчика просто остаются незамеченными остальными блоками.
Немного переделал Ваш проект, и если я правильно понял требуемую логику - должно заработать вне зависимости от дисплея
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 04 ноя 2021, 08:14
Sancho
support писал(а): 03 ноя 2021, 18:58
Я могу предположить что приоритет прерываний шины I2C выше чем приоритет прерываний задаваемых в пользовательской программе.
Приоритет прерывания по int0 следующий, после самого высокого rst. 100500 проектов у народа работает и с фазорезом и с дисплеем по i2c
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 04 ноя 2021, 15:58
KulibinOrsk
[ref=#ff8000]Sancho[/ref], ну как 100500 работает... с фазорезом... по одной фазе работает, а когда 3 фазы то все - уже нормально не работает. Пришлось выкинуть дисплей для того чтобы по 3-м фазам работало.
Если не в тему то удалите.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 02 сен 2022, 20:18
OLGA
Прошу помочь разобраться с работой датчика 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 показывают часы) связана с блоком скоростного счетчика.
Может кто поопытней поделится своими предположениями, в чем причина такой работы красного светодиода.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 04 сен 2022, 19:25
OLGA
Работа скоростного счетчика в проге с MH-Z19B похожа на проблему изложенную выше про дозиметр на счетчике Гейрера. Там, как и здесь прога тупит при большой частоте работы скоростного счетчика и I2C. А с MH-Z19B,чем больше длинна считываемого им-са, тем больше тупит прога. На уровнях около 5000ррм красный светодиод зажигается и горит постоянно, при снижении до 4000 - 4500ррм красный светодиод горит (мигает) только в момент времени когда на матрице 8x8 показывают часы, при снижении в промежутке от 1000 2000ррм работает согласно условленному алгоритму.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 08:29
OLGA
Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Да и значения СО 2 выше 2000ррм реально не достижимы в моих условиях.
Всем спасибо за просмотры.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 09:10
Dryundel
OLGA писал(а): 04 сен 2022, 19:25
Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Скорей очень специфичная. Мало кто занимается такими датчиками.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 11:21
ecoins
OLGA писал(а): 04 сен 2022, 19:25
Работа скоростного счетчика в проге с MH-Z19B похожа на проблему изложенную выше про дозиметр на счетчике Гейрера. Там, как и здесь прога тупит при большой частоте работы скоростного счетчика и I2C. А с MH-Z19B,чем больше длинна считываемого им-са, тем больше тупит прога. На уровнях около 5000ррм красный светодиод зажигается и горит постоянно, при снижении до 4000 - 4500ррм красный светодиод горит (мигает) только в момент времени когда на матрице 8x8 показывают часы, при снижении в промежутке от 1000 2000ррм работает согласно условленному алгоритму.
Проблема известная и схожа с проблемой которую мы разрешили с DS1820. Если Вы пришлете проект и мы общими усилиями переделаем его на диспетчер задач, то возможно удастся написать и библиотеку MH-Z19B с корректировкой показаний (а может получится и по прерываниям - надо смотреть) и проблема разрешится.
Задача полезная, MH-Z19B вроде должен быть, давно планировали заняться им , но руки не доходят.
А Вы в профессиональном редакторе FLProg работаете? Наибольшая трудоемкость подобных проектов обычно бывает связана в созданием интерфейса блока. и его отладки, доводки и сопровождения.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 12:15
rogekam
OLGA писал(а): 08 сен 2022, 08:29
Ответов по теме нет. Видимо очень сложная или очень простая проблема.
Пользовательский блок на датчик MH-19b тут:
viewtopic.php?f=74&t=7091&p=105062&hili ... 9B#p105062
Датчик соединяется по UART. Работает 2 года.
[spoiler]
4.GIF
[/spoiler]
[spoiler]
2.png
[/spoiler]
[spoiler]
3.png
[/spoiler]
[spoiler]
5.png
[/spoiler]
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 12:54
ecoins
rogekam писал(а): 08 сен 2022, 12:15
Пользовательский блок на датчик MH-19b тут: viewtopic.php?f=74&t=7091&p=105062&hili ... 9B#p105062
Датчик соединяется по UART. Работает 2 года.
Красивое решение. Вход дозиметр еще бы задействовать и убедиться что скоростной счетчик не барахлит ->Wi-Fi, UART буферированный или нет, особенности проекта и т.п.
А так красиво, пятерка.
А у Вас нет лишней печатной платы попробовать?
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 16:04
rogekam
ecoins писал(а): 08 сен 2022, 12:54
А у Вас нет лишней печатной платы попробовать?
Осталась плата использования в датчике MH-Z19B вывода PWM.
[spoiler]
7.jpg
[/spoiler]
На следующей неделе жду фоторезист, буду делать платы для задержавшихся проектов. Изготовлю и для MH-Z19B по UART. Конечно, вышлю почтой. Адрес в личку.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 16:57
ecoins
rogekam писал(а): 08 сен 2022, 16:04
На следующей неделе жду фоторезист, буду делать платы для задержавшихся проектов. Изготовлю и для MH-Z19B по UART. Конечно, вышлю почтой. Адрес в личку.
Спасибо, адрес отправил.
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 17:12
aidar_i
Вот код от Sancho. Обернул в блок, может подойдет
Скоростной счетчик.flp
об ошибках работы скоростного счетчика в ФЛПрог.
Добавлено: 08 сен 2022, 17:59
OLGA
ecoins писал(а): 08 сен 2022, 11:21
А Вы в профессиональном редакторе FLProg работаете?
В профессиональном редакторе FLProg работать не пробовал. мой проект размещен выше пост №10 MH-Z19b .flp.он простенький да и проблема с уровнем более 2000ррм
Отправлено спустя 5 минут 18 секунд:
[ref]rogekam[/ref], Пробовал пользовался блоками с форума и том числе и «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ррм это уже опасно для Вас.