Jump to content
Дмитрий Дмитрий

Сенсорный выключатель

Recommended Posts

Здравствуй, добрый Алл.

Задумал сделать сенсорный выключатель (блокировщик) двери. Задача: при двойном прикосновении к поверхности пластикового выключателя подать на управляющий контакт +5В.

Реализация:  Использовать контроллер емкостного сенсора AT42Q1010, микроконтроллер PIC10F200.

Логика: при полном закрытии двери,  срабатывает геркон, подается +5В на схему. На схеме расположены емкостной контроллер AT42Q1010 и микроконтроллер PIC10F200. Емкостной контроллер при прикосновении пальца дает сигнал на цифровой выход. Этот выход соединен со входом PIC10F200. В PIC10F200 крутится программа, определяющая двойное прикосновение, с заданными промежутками времени (ориентируюсь на обычный двойной клик мыши). Как только определяет двойной клик - подает на три GPIO выхода +5В, и уходит в пустой цикл, до снятия питания.

С одного GPIO питаются светодиоды: 2 шт, 1.8 В, 1 мА, удалены на 3 метра, подключены кабелем 3х2.5 мм2.

Со второго GPIO активируется герконовое реле 5В, 10мА, размыкающее наружную клавишу открытия двери.

С третьего GPIO питаются светодиоды: 2 шт, 1.8 В, 1 мА, удалены на 3 см. Они находятся в том же выключателе, где будет смонтирована схема.

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

Вопросы:

1. Нормально ли цеплять светодиоды прямо к PIC контроллеру, на такую дистанцию? Потери посчитал, выходит в районе 1%. Думаю проблем быть не должно, но чувствую кощунственность решения.

2. Нормально ли PIC контроллер отнесется к многократному хард ресету? Дверью пользуюсь 50 раз в день. Это каждый раз снятие питания, включение обратно.

3. Какое время на загрузку ожидать от схемы? Т.е. через какое время после полного закрытия двери я смогу заблокировать дверь. Судя по документации на емкостной контроллер , оно меньше 100 мс. Микроконтроллер PIC около 30 мс (reset time). Я нигде не ошибся?  

4. Нужно ли вставлять резистор между герконовым реле блокировки двери и микроконтроллером? Расстояние от микроконтроллера до реле около 2 метров. Насколько я понимаю, желательно использовать токоограничительный резистор около 1 кОм, но методика точного расчета номинала мне не известна.

5. Нужно ли вставлять резистор между дальними свтодиодами и контроллером? Ближним и контроллером? Для понижения напряжения я планирую в обоих случаях использовать резисторы 1.5кОм и последовательно подключать два диода 1.8 В,  1 ма. Этого достаточно? Диоды и резистор располагаются на крышке выключателя.

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

7. Имел ли кто дело с таким емкостным контроллером? Насколько plug and play решение? На внутреннюю часть выключателя планирую наклеить медную фольгу, номиналы конденсаторов и резистора подобрать на столе. Потом все собрать на печатной плате, смонтировать в корпус выключателя. Не уплывет ли со временем точность такого сенсора? Может быть на плате предусмотреть какие-то элементы для подстройки в будущем?

8. Я выбрал самый младший из PIC  контроллеров. Могу ли я столкнуться с нехваткой памяти в своей задаче? Портов хватает. Может быть я не учел какой-то еще ресурс, которого не хватит для выполнения этой задачи?

Даташит на емкостной контроллер  https://ru.mouser.com/datasheet/2/268/40001946A-1145216.pdf

Даташит на PIC  контроллер http://ww1.microchip.com/downloads/en/DeviceDoc/40001239F.pdf

С уважением,

Дмитрий.

Edited by Дмитрий Дмитрий

Share this post


Link to post
Share on other sites

резисторы на светодиоды обязательно, потому что просад по питанию будет, я так тоже думал всех надурить и последовательно включит два светодиода ну мол с 5В падение до 3В как раз для питания и таких блоков было 5 так они мне скидывали напряжение до 2В МК даже нехотел стартовать, а поставил резисторы все внорме.

на геркон думаю тоже нужен резистор для сглаживания бросков да и RC цепочку неплохо было бы а то будет дребезг контактов.

я както тоже купил отдльно емкостный даттчик и он он работал очень отвратительно, 90% ложные срабатывания творил что хотел. потом взял готовый модуль на TTP223 и все шикарно заработало. я тоже собирал на столе потом когда устанавливал на место уже нетак работало потом опять на стол опять все хорошо и так по кругу, а ТТР все хорошо.

МК думаю все равно сколько раз вы его вкл и выкл.

Share this post


Link to post
Share on other sites

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

В итоге принял решение использовать оптопару CPC1016N. http://www.ixysic.com/home/pdfs.nsf/www/CPC1016N.pdf/$file/CPC1016N.pdf

Буду признателен, если кто-нибудь посмотрит даташит на оптопару и скажет потянет ли она такую нагрузку. Если я все верно прочитал, то предел оптопары 100 мА , при фактическом токе около 20 мА. Я никакой другой важный параметр не пропустил?

Нагрузка на оптопару:

а. два диода изображенных на схеме, находятся в сантиметре от оптопары. Каждый диод: U=1.9 В, I=5мА.

б. два диода удаленных на 4м, подключены последовательно + резистор на 100 Ом. Каждый диод: U=1.9 В, I=5мА

в. геркон-реле, U=5 В, I=10 мА, R=500 Ом.

 

Также прикладываю схему. Интересует правильность выбора емкостей конденсаторов и номинала  резисторов.

Сдвоенные конденсаторы перед коннектором антенны - чтобы удобнее было подстраивать.

Schematic_switch_Sheet-1_20180522164230.pdf

Share this post


Link to post
Share on other sites

Вебинар STM32G0 – новый лидер бюджетных 32-битных микроконтроллеров от STMicroelectronics

Компания Компэл приглашает вас 25 сентября принять участие в вебинаре, который посвящен новому семейству микроконтроллеров STM32G0. Вебинар рассчитан на технических специалистов и тех, кто хорошо знаком с семейством STM32. На вебинаре будут освоены современные методы тестирования производительности микроконтроллеров на примере самых бюджетных 32-битных семейств общего назначения STM32G0 и STM32F0 и проведено их подробное сравнение.

Подробнее

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Илья Говжеев
      Поделитесь опытом , кто уже пробывал из arduino сделать программатор pic? 

    • By Терентенко Андрей
      Добрый день! Имею следующую ситуацию : на базе  PIC16f676  создал приблуду для "управления нештатной магнитолой с руля", а именно  сигнал с руля это 4,8в и в зависимости от нажатой кнопки падает дискретной до 0.8в мк с помощью АЦП отслеживает  на магнитолу паралельно кнопкам кинул оптрони которыми управляет МК. Питание от LM с фильтрующими конденсаторами. При тестових прогонах всё работало как надо (программно реализовано защиту от дребезга аж на 0.1 сек в поисках решений) и в машине  и от штатного БП . Но заметил закономерность сейчас на улице - 2 и при первом запуске минут 5, МК "шумит" несоотвецтвует нажатия на руле кнопке  на магнитоле ! Сигнал с руля смотрел стабильный без дребезга , притом когда тестил вынес магнитолу подключил всё работало гуд но пока устанавливал закручивал она остыла и начинались эти тацы . Кто что подскажет? МК или ЛМ могут так реагировать на температуру ? Прошу прощения у модераторов за повторение теми (может в этом разделе будет актуальней)
    • By Splav
      Речь пойдет о таймере цикличного включения вентиляции гаража.
      Стояла задача обеспечить принудительную вентиляцию гаража.
      Оставлять включенным вентилятор круглые сутки - неоправданно.
      Включать его периодически вручную... Неудобно и лишено смысла.
      Поэтому было решено включать его на определенное время через разные интервалы времени, в зависимости от субъективного восприятия наличия сырости в гараже.
      Вменяемых вариантов в продаже я не нашел.
      Можно, конечно, приобрести на Али программируемый суточный таймер или что-то подобное...
      Да, можно, но мне кажется, что собрать из подручных деталей тоже можно, ну и мозги потренировать.
      За основу был выбран PIC12F675, потому что он у меня был.
      По уму здесь должен стоять PIC12F629, он дешевле, в нем нет АЦП, который в конструкции не используется и отключен.
      Итак.
      Время работы выбрано фиксированным и неизменным - 1 час.
      Время простоя - в зависимости от режима.
      1 час - 2 часа - 3 часа.
      (Изначально я планировал другие задержки: 2-3-5 часов. На практике в моих гаражных условиях эти интервалы оказались слишком большими)
      Индикация осуществляется всего 1 светодиодом.
      Переключение режимов и управление - всего 1 кнопкой.
      Схема:

      Коротко о работе:
      Кнопка.
      Опрос кнопки 10 раз в секунду. Антидребезг и подавление помех 0,3с - 3 опроса подряд кнопка нажата.
      Короткое нажатие на кнопку(от 0,3 до 2 с) - переключение режимов по кругу. 1 - 2 - 3 - OFF - 1 - 2 -  ....
      Длинное нажатие на кнопку (дольше 2 с) - смена состояния реле.
      Если оно было включено - выключается.
      Если было выключено - включается. Интервалы работы реле при этом соответствуют режиму.
      В режиме OFF длинное нажатие ничего не меняет.
      Переключение режима или смена состояния реле происходят при отпускании кнопки.
      Светодиод.
      Индикация режимов светодиодом:
      1 - 1 раз в 2 секунды загорается, если реле не включено. Проблеск света.
            1 раз в 2 секунды гаснет, если реле включено. Проблеск тени.
      2 - 1 раз в секунду загорается, если реле не включено.
            1 раз в секунду гаснет, если реле включено.
      3 - 2 раза в секунду загорается, если реле не включено.
            2 раза в секунду гаснет, если реле включено.
      OFF - загорается раз в 5 секунд. Контроль того, что МК не завис.
      Режимы работы.
      Время работы циклического таймера по режимам:
      1 - 1 час работы / 3 часов отдых. 6/24
      2 - 1 час работы / 2 часа отдых.  8/24
      3 - 1 час работы / 1 часа отдых.  12/24
      Работа.
      При отключении питания, пока не разрядились конденсаторы фильтра, МК отключает все выходы, сохраняет текущие данные в память, ждет 15 сек в таком состоянии и возобновляет работу, если отключение было кратковременным и емкостей фильтра питания хватило.
      Если отключение питания было длительным то, при возобновлении питания, загружает сохраненные данные из памяти и продолжает работу.
      При первом включении, после программирования МК, устройство работает в 1-ом режиме.
      Программа писалась в MPLab X IDE v4.05.
      Прошивка:fan_cycle_timer.hex

      Плата для устройства не разрабатывалась. Все было собрано на макетке.
      В блоке питания использован стандартный трансформатор для монтажа на плату ТПК 2х9V с 2-мя вторичными обмотками на 9В.
      Использовал только одну из них. Вторая - не подключена, в "воздухе"
      Реле - HLS-14F1D-DC12V-C. С обмотка на 12В, и одной группой переключающих контактов на 10А/240VAC.
      Устройство собрано в корпусе щитка для автоматов на 8 модулей. Производитель VIKO.
      Закреплена плата на щиток через резьбовые дистанционные втулки с резьбой М3.
      В качестве вентилятора - вытяжной вентилятор диаметром 125мм ВЕНТС 125С
      Устройство на данный момент отработало в гараже все лето, температура воздуха в тени доходила до 32 градусов.
      Перегревов элементов и зависаний контроллера пока не было.
       
      Несколько фото для общего представления о конструкции.

    • By Rusteka
      Продам микросхемы. Все микросхемы новые, в наличие.
      1. PIC18LF4550-I/P Microchip 65шт
      2. ATtiny85-20PU [DIP-8] Atmel 200шт
      3. PIC18LF452-I/L Microchip 50шт
      4. A29L040L-70F Amic 50шт
       
       

       



       
    • By yarosh
      Не могу никаким софтом поменять текст в бегущей строке.  Год выпуска 2011,  сделана на pic,  есть ps\2 порт под клаву, с нее залить новый текст не вышло, разные варианты пробовал но так и не смог.
      Есть ком порт, по нему с компом связь есть, но ничем сменить текст или очистить немогу, в программе терминал после коннекта если нажать send и отправить что нибудь на строку происходит секундное моргание и текст остается прежний. 
      В проге Stroka 2.9 отправка ничего не меняет,  только моргает секунду.
      фото внутрянки прилогаю.





×
×
  • Create New...