Как отсеять слабые импульсы?
- Войдите на сайт для отправки комментариев
Пт, 13/12/2019 - 10:09
Здравствуйте.
К ардуино подключен монетопремник через прерывания, все работает хорошо, но есть одно НО.
Например если рядом замкнуть два провода или включить мощное оборудование, в ардуино проскакивает импульс, который соответственно считается за монету.
Как я понимаю в проводе образуется слабое напряжение и ардуино его ловит как импульс.
Как можно отсеять импульсы напряжением до 1в например, что бы помехи не воспринимались как импульс?
В общем случае - отфильтровать. А конкретно - там много чего знать нужно из того, что Вы нам не сказали
Что именно нужно знать дополнительно?
провода от монетоприёмника к дуне в заземлённый экран.
ant2003, нужно не отсеивать помехи, а сделать так, что б их не было вообще. Тотальное экранирование в первую очередь, всё что выходит из экрана одеть в ферритовые кольца, все сигналы на длинных проводах переделать на токовое управление. Посмотрите как устроено промышленное оборудование.
Готов заплатить за помощь, так как чувствую что сам не справлюсь. Вот почта: ant2003собака_яндекс_точка_ру если кто то готов помочь, напишите как с вами можно связаться.
Что именно нужно знать дополнительно?
Характеристики сигналов и точно знать чем отличается нужный сигнал от ненужного. Например, пока я слышу нечто странное. 1В - никак не может вызвать прерывание. Видимо, разница не в напряжении, а в длительности. Какие длительности?
Короче, нужно взять осциллограммы на которых видны полезные и паразитные сигналы, внимательно смотреть, сравнивать и, для начала, чётко понять какие именно лишние сигналы появляются, чем они отличаются от полезных сигналов. И только тогда можно будет что-то делать..
Нужный ему, от валидатора, в диапазоне 40-80мс. Частота следования импульсов - примерно того же порядка. Помеха - ~200ns.
Зачем прерывание с такими временнЫми, конечно, не особо понятно...
Если всё так, то достаточно простейшего ФНЧ на 10 (скажем) мс. Но лучше бы увидеть осциллограммы
К сожалению осциллограмму в ближайщее время не смогу сделать, но я думаю sadman41прав что помеха - ~200ns.
Правильно я понимаю что нужно во время срабатывания прерывания определять время и если разница меньше времени импульса ~50 мс то это прерывание просто не учитывать?
Время можно и не учитывать. А то, что прерывание будет по каждому пуку прерывать ход выполнения основной программы - учитывать. Допустим, пошла постоянная пульсирующая помеха...
К сожалению осциллограмму в ближайщее время не смогу сделать, но я думаю sadman41 прав что помеха - ~200ns.
Ну, вообще-то, отлаживать электронные устройства без осциллографа, это как гвозди без молотка забивать.
Если sadman41, прав, то
Правильно я понимаю что нужно во время срабатывания прерывания определять время и если разница меньше времени импульса ~50 мс то это прерывание просто не учитывать?
Можно и так, но это не так просто, как Вам кажется. Не уверен, что Вы сумеете это корректно сделать. Есть более простой путь. Перед пином поставить ФНЧ с постоянной времени, скажем в 10мс. Тогда все сигналы, в 10мс будут ослаблены на 37 %, а сигналы в 1мс - на 90%. Т.е. сигнал, короче 1 мс "не пролезет" через фильтр.
Фильтр делается из двух деталей резистора и конденсатора. Источник сигнала на резистор, другой конец резистора на конденсатор, другой конец конденсатора на землю, а точка соединения резистора и конденсатора - на пин.
Здесь "Вх" - это источник сигнала, а "Вых" - пин ардуины.
Постоянная времени в секундах = сопротивление резистора в омах умноженное на ёмкость конденсатора в фарадах.
Например, 4,7КОм и 2,2мкФ дадут 10,34 мс - примерно то, что надо. Это означает, что сигналы с длительность 1мс будут ослаблены на 90%
Поставьте и программно ничего делать не надо.
Но, это только если наши (вернее, нашего коллеги) предположения о сигналах верны.
Я борюсь так: (Не монетоприёмник)
А такая схема не будет работать? Ранее советовали впаять 103 конденсатор 0,01 мкФ как на рисунке, в результате вместо нескольких импульсов стал приходить один.
Правильно я понимаю что бы все заработало нужно конденсатор 2.2 мкФ к земле подсоединить?
да и подать на пин сигнал через резистор 4.7 ком