- Мой профиль
- Гости
- Опубликовать
10:17 Искатель проводки на PIC12F629 | |
В предлагаемом очень простом микроконтроллерном искателе проводки автор принял меры, повышающие надежность ее обнаружения. Прибор будет полезен не только в быту, но и всем, кому по роду работы часто приходится искать скрытые в стенах электропровода. Работа устройств, способных обнаружить электрические провода в стене, основана на улавливании создаваемого ими электромагнитного поля Обычно такое устройство представляет собой простейший усилитель на транзисторах или микросхеме, к входу которого подключена небольшая антенна, а к выходу — звуковой или световой сигнализатор. Уловив электромагнитное поле, приборы подают звуковые или световые сигналы. Их большой недостаток — чувствительность не только к полю сетевых проводов, но и к любому другому, создаваемому, например, близлежащими радио- и телепередатчиками или сотовыми телефонами. Это приводит к ложным срабатываниям, сильно затрудняя поиск. Идея разработанного устройства заключается в определении не только наличия электромагнитного поля, но и частоты его колебаний. Это позволяет отличить поле частотой 50 Гц, характерной для электросети, от всех других полей. Реализация идеи в аналоговой форме приводит к значительному усложнению устройства за счет введения в него фильтров, выделяющих сигналы только одной частоты. Микроконтроллер выполняет все нужные операции в цифровой форме, схема устройства остается очень простой. Прибор построен на восьмивыводном перепрограммируемом микроконтроллере PIC12F629. Однако с самого начала разработки предусматривалась возможность применить вместо него один из дешевых однократно программируемых микроконтроллеров PIC12C508, PIC12C509 и их модификаций. По этой причине многие возможности микроконтроллера PIC12F629 сознательно не использованы. Напряжение, наведенное на антенну WA1, поступает на вход усилителя на составном транзисторе VT1VT2, имеющего высокое входное сопротивление и большой коэффициент усиления. Коллектор составного транзистора соединен с выводом 5 микроконтроллера DD1 — входом его внутреннего таймера/счетчика TMR0. Подключение пьезоизлучателя звука НА1 между выводами 2 и 3 микроконтроллера позволило подать на излучатель переменное напряжение, амплитудой в два раза больше напряжения питания микроконтроллера, и значительно увеличить громкость звукового сигнала. В приборе имеются также световой сигнализатор (светодиод HL1) и кнопка включения/выключения SB1. Конденсатор С2 защищает вход, к которому подключена кнопка, от наводок, предотвращая самопроизвольные изменения состояния прибора. [img]/uploads/posts/2013-04/1364819257_04.jpg[/img] После нажатия на кнопку SB1 микроконтроллер выходит из "спящего" режима и подает команду включения светодиода HL1. Теперь антенну WA1 нужно вести вдоль стены, в которой, как предполагается, находится электропроводка. Микроконтроллер подсчитывает число периодов наведенного на антенну сигнала за определенный отрезок времени, т. е. измеряет его частоту. Обнаружив наводку частотой 50 Гц, прибор в течение 0,2 с подает звуковой сигнал частотой 1 кГц, погасив на это время светодиод HL1. Затем цикл измерения—сигнализации повторяется. Выключают искатель еще одним нажатием на кнопку SB1. После этого на всех выводах микроконтроллера будут установлены низкие логические уровни, а сам он перейдет в "спящий" режим. Для снижения энергопотребления переход в этот режим сопровождается выключением внутренних компараторов и детектора уменьшения напряжения питания микроконтроллера. В результате удалось добиться тока потребления менее 1 мкА и отказаться от обычного выключателя напряжения питания. На последней подпрограмме следует остановиться особо. Сразу после вызова она очищает регистр таймера/счетчика TMR0, настроенного подпрограммой инициализации на подсчет импульсов, поступающих на вывод 5 микроконтроллера. Накопленный за 0,1 с после очистки результат счета подпрограмма сохраняет во временном регистре, а затем анализирует. Если он лежит в нужном интервале (частота близка к 50 Гц), подпрограмма возвращает логическое значение TRUE. Если же изменения уровня на входе таймера не зафиксированы или их частота лежит вне заданного интервала, вызывающей программе будет передано логическое значение FALSE. Чувствительность можно увеличить намотав на феритовый стержень провод... В архиве исходный код программы на языкепрограммирования СИ, прошивки для PIC12F508 и PIC12F629, разводка печатной платы в формате LAY | |
|
Всего комментариев: 0 | |