борьба с помехой

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем MESS, 11 мар 2014.

  1. MESS

    MESS Гик

    Уважаемые знатоки - посоветуйте.
    Отработал я нужный мне скетч, который отрабатывает реверсивное движение по сигналам на входах.
    Сигналы имитировал кнопками, подавая "1" на вход. Входы притянул к земле через 12кОм. На макете все заработало сразу.
    Перешел с сборке устройства. И тут непонятка : вход срабатывает по помехе сразу при подаче питания. Емкость включил 1000п- тоже самое. Экранированного провода под руками нет. Что это - очень сильные помехи вокруг или я не в теме?
     
  2. Airbus

    Airbus Радиохулиган Модератор

    Вообще-то "притягивают" к плюсу а не к земле
     
  3. acos

    acos Официальный гик Администратор

    вроде без разницы, к чему притягивать. главное чтоб было притянуто.
    а можно больше инфы? схемка там. ардуино или просто мега? разводка может
     
    9xA59kK нравится это.
  4. MESS

    MESS Гик

    Спасибо за ответы! Я и подтягивал и притягивал и стягивал - это все условности К плюсу бессмысленно , т.к. сигнал сам из "плюса". ардуино-мега2560 у меня. Длина проводника, воткнутого в разьем, до резистора -120мм.
    Подразумеваю, что это и есть антенна, но пока.... никак - тыкал резистор и в сам разьем. сегодня провод экранированный попробую и доложу.
     
  5. acos

    acos Официальный гик Администратор

    Результат повторяется всегда-всегда и сразу после включения? Или только часто, но не всегда? После макетки изменились только длины проводников?
     
  6. Alex19

    Alex19 Гуру

    Когда разберетесь отпишите пожалуйста, что было. Очень интересно, сам вечно в агрессивной среде по помехам.

    Лишь один раз столкнутся с нечто подобным. Но как это было, вспоминается с ужасом.

    Из-за наводок, как думал в начале, валилась программа. На стенде как часы, приносишь на производство, валится каждый раз в новом месте.

    Чего я только не делал и пром. блоки питания, пром. фильтры эми, все экранированные кабеля, конденсаторы, экранированные корпуса и разнесение силовой нагрузки в отдельный шкаф, до дросселей не дошел. Все помогало незначительно, лишь увеличивая время перед падением.

    В станке был полный винегрет с нагрузкой 5, 12, 220, 380 вольт. Производство, вокруг станки, моторы до 15КВатт. В дальнейшем выяснилось, что был простой дребезг контакта на прерывании. Переделал программу без прерываний и убрал всю защиту, засунув все в один шкаф. После этого как часы.

    UPD. На прерывании стоял переключатель, с подтяжкой на землю. Но меня это не спасло. С тех пор боюсь кнопок на прерываниях как чумы:).
     
    Последнее редактирование: 12 мар 2014
    MESS нравится это.
  7. acos

    acos Официальный гик Администратор

    Да, кнопки на прервании - зло) Хотя и так делают, первым делом запрещая прерывание в обработчике прерывания.
     
  8. Alex19

    Alex19 Гуру

    Для меня слабо сказано, после этого чуть не расстался с ардуиной. Вернулся к ней случайно и теперь только радует.

    Расписал подробно, чтобы отметить, что сама ардуина, на мой взгляд неплоха защищена от наводок.
     
  9. Unixon

    Unixon Оракул Модератор

    Просто между кнопкой и ногой на прерывании должен стоять ждущий одновибратор.
     
    Desert Ops и acos нравится это.
  10. Alex19

    Alex19 Гуру

    Спасибо, обязательно гляну что за зверь и проверю. Иногда это очень удобно, особенно для критических концевиков.
     
  11. Unixon

    Unixon Оракул Модератор

    Это не совсем защита от помех, скорее именно от дребезга. Задача - на ногу прерывания вместо шума запустить импульс заданной длины за которым следует определенная пауза. В течение периода колебания будет ровно одно прерывание. А вот запускать можно и от пикового детектора и от сглаживающего фильтра. Еще вариант - игнорировать любые прерывания в течение некоторого времени после включения питания, т.е. добавить в систему некоторую задержку для стабилизации параметров схемы.
     
  12. Airbus

    Airbus Радиохулиган Модератор

    Позволю с Вами не согласиться.Прерывания-великая вещь!Если конечно грамотно написать обработчик.На Асме это вообще без проблем на чистом Си тоже можно а вот на языке Ардуино-как то мутно.Вот про помехи есть интересная вещь у Di Halt http://tinyurl.com/q2q7aj2 и здесь же у него http://tinyurl.com/o53m9ys
     
  13. Alex19

    Alex19 Гуру

    Да это понятно, спасибо.

    UPD. Очень интересно удалось ли Вам MESS победить эту проблему. И если да, то как?
     
    Последнее редактирование: 12 мар 2014
  14. MESS

    MESS Гик

    Все-таки чудес не бывает! Ардуино реабилитирован. Источником сильных помех оказался самодельный USB- осциллограф. Прошу прощения за пену.
     
    acos нравится это.
  15. Alex19

    Alex19 Гуру

    Спасибо, за ответ. Слежу за помехами на ардуине очень внимательно.
     
  16. Airbus

    Airbus Радиохулиган Модератор

    Это какие ж должны быть помехи?:eek:У меня например в окно "смотрит" Телецентр во дворе вышка с GSM базовой станцией через стенку сосед-радиолюбитель морзянку стучит.У него на крыше огромная Антенна типа Yagi.И то никаких помех.Даже на Самопальной Ардуинке в которой даже электролитические конденсаторы не запаял (потому как подходящих по размеру нет):)
     
  17. acos

    acos Официальный гик Администратор

    Я не имел ввиду, что прерывания - зло) Прерывания это няняня). Просто довольно часто видел решения, когда на прерывания вешается обычная кнопка, которую должен нажимать пользователь. При том, что пользователь чисто физически не сможет нажать эту кнопку таким образом, чтобы мы пропустили это нажатие даже тупо из главного цикла, поэтому прерывания в таких случаях - это нонсенс.
    Когда у нас концевики - то тут другое, тут мне нравится решение Unixon, хотя запрещение прерываний в обработчике тоже (условно) нормальное решение. Правда, только в том случае если мы смело можем сказать CLI и не париться по поводу пропуска других прерываний) Ну или в прерывании просто выставлять флаг, что у нас было нажатие, а сбрасывать его в цикле. Правда в таком случае вообще не понятно - зачем на такой кнопке прерывание? Я что-то не помню, разве можно в AtMega328 адресно запретить конкретное прерывание?

    И да, чтоб два раза не вставать - нет никакого языка Arduino. Это просто такой фрэймворк на C++. Никто не мешает в Arduino писать практически так же, как на C, но с блэкджеком и digitalWrite :)
     
    Последнее редактирование: 13 мар 2014
    Desert Ops нравится это.
  18. MESS

    MESS Гик

    Я не знаю пока, что с осциллографом, но после отключения - порядок. Дома неохота разбираться. Разберусь позже. Чудеса не раз встречались в моей практике наладчика. Например -КУ-202 срабатывал как реле - слышно было. Цепь коммутировал нормально. Заменил на другой -тишина. "кто" стучал-кристалл? Кому скажи -засмеют.
    По поводу высокочастотных наводок - свечение всех светодиодов в шкафу управления лифтом. Но только в одном шкафу, именно он был виноват! Все было заземлено и перепроверено тремя бригадами.
    Понимаю только что все это какие-то отклонения от норм - чей то брак. Но мыслить некогда - быстрее бороться со следствием. и т.п.
     
    Последнее редактирование: 13 мар 2014
    acos нравится это.
  19. Viktor161

    Viktor161 Нуб

    Доброго времени суток уважаемые братья по несчастью!! Столкнулся с похожей ситуацией... Сконструировал я блок управления клапанами, в нем три релейных модуля на каждом висит мега и один типа главный, на нем по мелочи релюх и мега с которой сигналы идут на входы тех трех модулей. Так вот без нагрузки работает как часы, включаешь питание пошла прога на первом модуле, второй и третий должны молчать но они начинают работать то в случайной последоватетьности то повторяют за первым. Предполагаю что дело в помех, подскажите пожалуйста как с ней бороться??? Вы
     

    Вложения:

  20. ANV

    ANV Гуру

    Где схематика, схема соединений и диоды на реле?