Ложные прервания Ардуино!!!!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Друзья, просто беда. SOS!! Буду краток,

Хочу использовать внешение прерывание Ардуино RISSING.

Почему при касании любым оголенным проводом к питанию ардуиино, срабатывает прерывание!!!! ПОЧЕМУ!!!!! ну просто беда....

Все делал как надо, подключал с начала кнопку через RC цепи, ставил кондеры по питанию....все проходил!!!

 

Любая наводка на общей земле приводит к вызову обработчика прерывания!!! ЧТО ДЕЛАТЬ!!!

Ну не могу я без кнопок и связью с внешним миром. А любое срабаытванеи реле, или все сто связано с общей землей приводит к смене состояния!!!!!

 

 

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

zvr_84, а нам стало быть нужно гадать, как вы кнопку включили, есть ли стягивающий или подтягивающий резистор..

zvr_84
Offline
Зарегистрирован: 23.05.2016

Добрый день. Спасибо, что откликнулись.

Кнопка обыкновенная, двухконтактная. Подключена на +5В через RC цепь, номинал 1кОМ и 10мкФ. Когда замкнута кнопка, то она замыкается на землю (все как в литературе) Вход на прерывание считываем через триггер Шмитта(для инвресии и ровных фронтов).

zvr_84
Offline
Зарегистрирован: 23.05.2016

Конпка нужна для того, чтобы я выбирал какая часть программы выбиралась (включен ли ручной или атоматический режим работы моего "умного дома"). Так вот, впринципе все хорошо, но до тех пор, пока у меня не происходит комутация элетромагнитного клапана (12В) через Реле SRD-05VDC-SL-C(же готовый шилд c обвязкой и т.п.). Полчуается, что во время комутации реле, (как я уже потом выяснял упытным путем) "нормально общий контакт" видимо как-то связан с общей землей схемы....И как раз во время касания общей земли происходит "срабатывание" прывания и моя программа уходит по другому пути. Я потом уже просто собирал отдельно схему и "тыкал" просто оголенным проводком по массе....Так вот - тыкну, тыкну, и вызывается обработчик в программе (сработал переход с низкого на высокий фронт). МОЖЕТ Я ЧЕГО НЕПОНИМАЮ с прерываниями.

Да, вход 3 (с него читаю прерывания) уе пробывал как вход указывать pinMode (3, INPUT)....просто я ниге не нашел четкой мысли, что в случае прерывания его как вход нужно определять, хотя у нас же апартано подтягивающие резистр включен.

Я не великий спец, но читаю, учусь....КОРОЧЕ БЕДА,,,,,,,,

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

рисуй схему. какой блок питания. какой триггер шмидта и т.д.

nik182
Offline
Зарегистрирован: 04.05.2015

Попробуйте конденсатор 100пф с максимально короткими ногами прямо на ножку с прерыванием и землю. Резистор 1к как можно ближе к ножке с прерыванием. Сигнал на прерывание через резистор. Обычно помогает.

Pyotr
Offline
Зарегистрирован: 12.03.2014

zvr_84 пишет:

 

Да, вход 3 (с него читаю прерывания) уе пробывал как вход указывать pinMode (3, INPUT)....просто я ниге не нашел четкой мысли, что в случае прерывания его как вход нужно определять, хотя у нас же апартано подтягивающие резистр включен.

Я не великий спец, но читаю, учусь....КОРОЧЕ БЕДА,,,,,,,,

Я тоже не великий спец. Вывод МК не надо  устанавливать на вход, он по умолчанию так установлен. 
А вот перед моментом ожидаемой помехи его можно установить на выход в LOW и тогда импульс не проидет, что равносильно отключению прерывания. 
Обработчик можно вызывать программно, переключая выход из 0 в 1.
Но это всё грабли, всё-равно надо устранять помеху.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

zvr_84 пишет:

Добрый день. Спасибо, что откликнулись.

Кнопка обыкновенная, двухконтактная. Подключена на +5В через RC цепь, номинал 1кОМ и 10мкФ. Когда замкнута кнопка, то она замыкается на землю (все как в литературе) Вход на прерывание считываем через триггер Шмитта(для инвресии и ровных фронтов).

Частота среза вашего фильтра 16 Герц.
http://vt-tech.eu/articles/calculators/165-simple-rc-filters.html
Ниже некуда.
С таким фильтром вообще не может быть никаких помех.
Да ещё и с триггером Шмитта...
А как вы подаёте на эту кнопку привязку к 5-ти Вольтам?

zvr_84
Offline
Зарегистрирован: 23.05.2016

Спасибо Всем! Вчера сдуру спалил андрюху! Ездил за новым! Поэтому не отвечал! Питание беру с него же! Просто вешаю +5В на кнопку через RC фильтр.
Тыкаешь в землю или же срабатывает Реле - такая вот песня, срабатывает прерывание! Причем интересно заметил, что если просто реле щелкает или же управляет слабой нагрузкой, например диодами, то такого не происходит! А вот если я комутирую 12 В клапана - происходит срабатывание! Чую, что тут что-то с возникающей разностью потенциалов, между плюсом питания и землей! Грешил на наводки от клапана, его катушки! Пох....тыкаешь просто в любое место пакетной платы в землю - срабатывает обработчик на тип прерывания rissing. Схему начерчу, позже выложу! Учень нужна помощь! Может кто-нидь схему предложит?! Рабочую!!!!! У себя проверит???? Нужны пару кнопок и пару реле для управления эл.клапанами!

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

zvr_84 пишет:
Чую, что тут что-то с возникающей разностью потенциалов, между плюсом питания и землей!

В правильную сторону чуете. С этой проблемой сталкивается очень много любителей использовать INT0/INT1. Я даже картинки как-то раз приводил, от чего такое происходит.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

zvr_84 пишет:

........Просто вешаю +5В на кнопку через RC фильтр.

А вот с этого места поподробнее, пожалуйста.
А то у меня в голове ваша схема не складывается.
Что такое " просто вешаю 5 Вольт на кнопку" ?
А потом " просто" замыкаете 5 Вольт на землю?

zvr_84
Offline
Зарегистрирован: 23.05.2016

Нет, все как в книжке! Через резистр на 5в. Параллельно кнопке кондер!
А про землю, я имел ввиду что даже когда кнопку не трогаем, ничего не нажимаем, а просто торгуем любым замкнутым проводком землю схемы в макетной плате, срабатывает прерывание!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Нет, все как в книжке! Через резистр на 5в. Параллельно кнопке кондер!
А про землю, я имел ввиду что даже когда кнопку не трогаем, ничего не нажимаем, а просто торгуем любым замкнутым проводком землю схемы в макетной плате, срабатывает прерывание!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Чего делать-то?! Посмотрю Ваши картинки! Просто с телефона пишу... Как быть, ума не приложу!!!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Даааа, именно так, все и происходит!!!! Касаюсь земли, срабатывает прерывание!!!!! Помогите!!!! Или воообще отказаться от них? Dimax, HELP!!!

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

zvr_84, ну если вы прочли ту заметку, то наверное уже догадываетесь, что ни кнопка, что висит на прерывании ни резисторы на ней и прочее -никаких боком не относятся к проблеме. Ваша помеха скорее всего приходит на другие входы/выходы. Она может прийти даже по питанию. Нам неизвестно что и как вы включали, т.к. схем вы не рисовали, фотографий изделия не присылали. Так что советовать конкретнее нечего..

Pyotr
Offline
Зарегистрирован: 12.03.2014

Хорошая книжица у меня есть, хоть и старая - 1990г: Дж.Барнс  Электронное конструирование: методы борьбы с помехами.
В инете тоже видел. 

zvr_84
Offline
Зарегистрирован: 23.05.2016

ОК, друзья нарисую схему! Она безумно проста!

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

zvr_84 пишет:
ОК, друзья нарисую схему! Она безумно проста!

это только кажется....

lean_74
Offline
Зарегистрирован: 22.12.2015

Еще с эры пояния Синклеров помню - чем больше керамики по питанию, тем лучше, плюс все не используемые выводы на +пит или -пит, в зависимости от логики, далее на кнопочку повесить не один кондей, а пару(а то и три) на 1мкф, 0,1 и 100пФ., а про максимально короткие выводы, еще раньше было сказано.

zvr_84
Offline
Зарегистрирован: 23.05.2016

Друзья, а есть в моем случае принципиальное отличие между керамикой и электролитическими кондерами! Где какие вешать? Схему сегодня нарисую!

nik182
Offline
Зарегистрирован: 04.05.2015

Ещё раз. Повесте керамический конденсатор 100-1000 пикофарад между ножкой прерывания и землёй. Максимально короткими ногами, особенно в сторону INT ноги. К ноге INT припаяйте резистор 1К и все подключения через него. Включить внутреннюю подтяжку или зашунтировать конденсатор резистором 10к (либо подключить 10к между + и INT, если логика отрицательная). Проверить срабатывание прерывания от помех. Если срабатывания происходят, то проблемы через другие ноги. Все не использованные надо запрограмировать в режим ВЫХОД. Если прерывания от помехи всё ещё происходят, напаять керамических конденсаторов как можно ближе к вводам питания процессора. Если прерывания от помехи ещё происходят - искать ошибки программы.

zvr_84
Offline
Зарегистрирован: 23.05.2016

ОК....спасибо огромное!!!! Но схему все равно кину сегодня! Вечером буду пробовать!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Как тут фото вставить?

zvr_84
Offline
Зарегистрирован: 23.05.2016

zvr_84
Offline
Зарегистрирован: 23.05.2016

Друзья, сделал как советовали. Поставил 1 кОМ к входу INT, и все через него теперь подсоединяю. Поставил кремику на 1000пкФ на этот же вход (вход - земля). Вроде бы все получилось. Нет помех...СПАСИБО!!!!

 

НО!!! Земетил такой прикол интересный....смотрите. Ессли я цепляю реле-шилд....и комутирую +12В, то в том случае, если у меня "по умолчанию" питание клапана замкнуто, т.е. на "нормально замкунтый" вход подулючено питание +12В, а зетем я коммутирую, и как бы "разрываю птание", то появляется ложное прерывания опять!!!! А ВОТ ЕСЛИ НАОБОРОТ, "нормально разомкунтый" - питание клапана, и я его разрываю, подавая на реле LOW, то все СУПЕР!!! Никаких ложных наводок нет...ПОЧЕМ ТАК? Кто как думает?

 

Кстатит, теперь "тыкаю" в птание GND - все ОК!!!!

 

zvr_84
Offline
Зарегистрирован: 23.05.2016

ЧЕГО-ТО ТУТ НЕ ТАК....ВСЕ РАВНО ЖОПА!!!! ЛОЖНЫЕ ПРЕРЫВАНИЯ!!!! ((((((((((((((((

zvr_84
Offline
Зарегистрирован: 23.05.2016

КАК ТОЛЬКО ЦЕПЛЯЮ РЕЛЕ-ШИЛД - ТАКАЯ ВОТ ПРОБЛЕМА ВЫСКАКИВАЕТ!!!!

zvr_84
Offline
Зарегистрирован: 23.05.2016

Вот тут еще парадокс, получается, что почему-то в этом реле шилде все таки есть общая землся между силовой частью и питанием самого реле. Я делаю по другому, и вот что получается. Если у меня есть общая земля между моим клапаном и моей схемой, то как только происходит как-то дрребезг или касание земли любым метлическим преметом, возникает ЛОЖНОЕ ПРЕРЫВАНИЕ!!!!

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

zvr_84, у вас наверняка то, о чём я писал в #9. У вас 3 провода связывает реле и ардуино. И по любому из 3х может пролезть микросекундная помеха. Без хорошего осциллографа вы не сможете узнать откуда она, а значит подобрать "лекарство".  Единственный вариант обхода проблемы  -полная 100% опторазвязка  платы ардуины и реле.

zvr_84
Offline
Зарегистрирован: 23.05.2016

Добрый день! Я это пробывал через шилды с опторнами встроенными! Чего-то ума не дал!

Тут другой вопрос интересный! Я не очень силен в электротехнике, но вот выходит! Вся эта петрушка с-прерыванием вощниает тогда, когда я просто соединяю землю двух источников! 5 и 12 ведь они же оба постоянны! Это же допустимо! И вот именно если их соеденить, и и в этот момент и возникают помехи! Сам понимаю, что только развязать земли! Но как-то глупо выходит! Типовые схемы, а так себя ведут!

Pyotr
Offline
Зарегистрирован: 12.03.2014

zvr_84 пишет:

ЧЕГО-ТО ТУТ НЕ ТАК....ВСЕ РАВНО ЖОПА!!!! ЛОЖНЫЕ ПРЕРЫВАНИЯ!!!! ((((((((((((((((

Попробуйте поставить импульсный диод параллельно клапану, у самого клапана, в обратном включении.

zvr_84
Offline
Зарегистрирован: 23.05.2016

Ставил! Все ставил! Никак....видимо только как-то развязать земли!!!!

Pyotr
Offline
Зарегистрирован: 12.03.2014

А на самой дуне по питанию ставили 0.01-0.1 мкф непосредственно к ногам МК?

zvr_84
Offline
Зарегистрирован: 23.05.2016

Дуня от USB питаю пока....куда именно ставить кондеры?

Pyotr
Offline
Зарегистрирован: 12.03.2014

На МК atmega328   8 и 22 выводы-земля, а 7 и 20 питание, поможет-нет не знаю, попытка не пытка...

zvr_84
Offline
Зарегистрирован: 23.05.2016

Спасибо!!!!! Но все таки наверно буду покупать твердотельное реле! Надеюсь забыть о помехах! Ототзывы положительны!