Говорят, что ремонт – это стихийное бедствие. На него вечно не хватает ни денег, ни времени. Почти каждый, кто начинает ремонт, думает, как и на чем можно сэкономить. Поэтому ремонт в своей квартире автор решил начать самостоятельно с переделки проводки, а для этого надо было разобраться в трассировке старой внутренней проводки. Потому и был изготовлен прибор, описание которого приведено в этой статье.
Вначале были найдены в радиолюбительской прессе и Интернете различные конструкции приборов для поиска скрытой проводки. Выбор пал на прибор, собранный на микроконтроллере компании Мicrochip PIC12F629, из статьи [1]. Подкупили характеристики и возможности прибора, простота схемы, доступность и невысокая цена комплектующих деталей.
В статье [1] приведена схема, чертеж печатной платы, а также дана ссылка для скачивания исходного текста программы для МК, написанная на языке высокого уровня Си и файла прошивки.
В [1] указано, что он отличается от большинства подобных приборов тем, что реагирует не только на наличие электромагнитного поля, но и на его частоту, а значит, «позволяет отличить поле частотой 50 Гц, характерной для электросети, от всех других полей», Значит, у этого прибора не должно быть ложных срабатываний. На самом деле он реагирует на диапазон частот от 30 до 70 Гц. Поэтому ложные срабатывания не исключены. Еще один небольшой недостаток этого прибора – это то, что при установке или замене батарей питания прибор «молчит», никак не индицируя свою готовность к работе.
Взяв за основу саму идею, автор написал программу на ассемблере и сделал так, чтобы прибор реагировал только на электромагнитное поле частотой 50 Гц, и добавил индикацию подсоединения элементов питания в виде 3-х звуковых и световых сигналов, после чего МК уходит в режим сна.
Применение в исходной схеме прибора [1] составного транзистора из двух КТ3102 и резистора нагрузки не оправдано, так как вполне достаточно одного транзистора, а в качестве нагрузки этого транзистора можно использовать подтягивающий резистор входа GP2, подключенный к выводу 5 внутри МК. В результате окончательный вариант схемы, по которой и был собран прибор для поиска скрытой проводки, показан на Figur 1.
В моем варианте искателя проводки используется напряжение питания до 3 В, так как имевшийся в наличии корпус не позволял установить в прибор
более двух гальванических элементов типоразмера ААА, но практика показала, что он вполне надежно работает и от двух таких элементов.
Основой прибора является МК типа PIC12F629 производства компании Microchip, назначение выводов которого, с учетом введенной в него программы, приведено в таблице.
№ | Bezeichnung | Termin |
1 | VDD | Напряжение питания 3 В |
2 | GP5 | Выход на пьезоэлектрический капсюль HA1 |
3 | GP4 | |
4 | GP3 | Свободный |
5 | GP2 | Вход таймера/счетчика TMR0 |
Sechs | GP1 | Вход команды Вкл./Выкл. от SB1 |
7 | GP0 | Выход на светодиодный индикатор HL1 |
8 | VSS | Gehäuse |
Работа схемы
Включение прибора и выключение его (перевод в режим SLEEP) осуществляется кнопкой SB1. Рабочий режим индицируется свечением светодиода HL1. Микроконтроллер DD1 PIC12F629 тактируется импульсами 4 МГц от внутреннего тактового генератора этого МК.
Когда антенна прибора находится далеко от проводки, транзистор заперт, и на входе таймера/счетчика TMR0 (вывод 5 DD1) присутствует уровень лог. «1», который создается за счет наличия внутреннего подтягивающего резистора.
На проводах скрытой в стене сетевой проводки имеется переменное напряжение 220 В/50 Гц. Поэтому, при поднесении прибора близко к трассе этой проводки, в антенне прибора наводится ЭДС, положительные полупериоды которой открывают VT1, и на входе таймера/счетчика TMR0 (вывод 5 DD1) формируется уровни лог. «0». Микроконтроллер ведет подсчет этих полупериодов и программно определяет их частоту. Если эта частота равна 50 Гц (или близка к этому значению), то на пьезоэлектрический излучатель (капсюль) HA1 кратковременно поступает сигнал звуковой частоты, а светодиод HL1 на это время гаснет.
Частота звукового сигнала подобрана экспериментально. Она приблизительно равна частоте собственного резонанса пьезоэлектрического капсюля HA1 и лежит вблизи 1,5 кГц.
Особенности программы для МК
Как было отмечено выше, программа написана на языке ассемблера в среде программирования MPLAB IDE (см. Auflistung).
Программа обеспечивает:
- оптимальную конфигурацию МК DD1;
- при подключении источника питания к прибору-искателю скрытой проводки начальную инициализацию МК и генерацию трех звуковых и световых сигналов, подтверждающих готовность прибора к использованию и последующее переключение прибора в энергосберегающий режим SLEEP (выключенное состояние с микропотреблением);
- переход МК в рабочий режим при первом нажатии кнопки включения/выключения прибора SB1;
- подсчет количества периодов входного сигнала, полученных за время равное 0,1 с;
- формирование микроконтроллером сигналов звуковой и световой сигнализации наличия электромагнитного излучения с частотой 50 Гц, если количество подсчитанных периодов входного сигнала за 0,1 с равно 5;
- переход МК в энергосберегающий режим SLEEP при повторном нажатии кнопки SB1 до следующего нажатия этой кнопки.
Конфигурация МК задана в программе следующими мнемоническими кодами:
- _CPD_OFF – защита EEPROM памяти МК выключена;
- _CP_OFF – защита памяти программ МК выключена;
- _BODEN_OFF – сброс по снижению напряжения питания запрещен;
- _MCLRE_OFF – сброс MCLRE недоступен;
- _PWRTE_ON – таймер задержки включения напряжения питания PWRT включен;
- _WDT_OFF – сторожевой таймер выключен;
- _INTRC_OSC_NOCLKOUT – включен внутренний тактовый генератор 4 МГц, причем тактовый сигнал не выводится из МК.
Пункты 4 и 7 позволяют использовать шесть из восьми выводов МК DD1 как линии порта ввода/вывода.
В листинге программы можно выделить несколько модулей:
- модуль инициализации;
- подпрограмму сообщения о включении рабочего режима и перехода в режим экономии питания (sleep) до момента нажатия кнопки SB1;
- модуль проверки наличия частоты 50 Гц;
- модуль звуковой и световой индикации наличия частоты 50 Гц;
- модуль включения/выключения (режим энергосбережения – SLEEP);
- подпрограммы задержек.
Замечу, что подпрограмм (ПП) задержек две: DELAY (300 мс) и DELAY_2 (744 мкс). DELAY используется для формирования интервалов времени световой и звуковой сигнализации при подключении батарей, а DELAY_2 используется при формировании сигнала звука. DELAY_1 и DELAY_3 – это вспомогательные метки в подпрограммах задержки.
Программа, представленная в данной статье, не идеальна и может быть легко переработана читателями под собственные требования.
Das Design und die Details
Корпус для прибора с батарейным отсеком на два элемента типоразмера ААА был найден случайно. Печатная плата разрабатывалась в программе Sprint-Layout 5.0 под свободное место в этом корпусе. Она изготовлена из одностороннего фольгированного стеклотекстолита толщиной 1,5 мм и размерами 26×19,5 мм. Чертеж печатной платы показан на Figur 2.
В качестве антенны используется отрезок многожильного монтажного провода длиной 100.200 мм, изогнутый по периметру корпуса прибора. Изменяя длину антенны, можно регулировать чувствительность прибора.
Кнопка SB1, так называемая, тактовая типа B3W-1100, B3W-4000 или им подобная. Эти кнопки встречаются на платах старых зарубежных телевизоров и другой аппаратуры. В качестве звукоизлучателя НА1 был использован пьезоэлектрический капсюль от детской музыкальной игрушки китайского производства.
Светодиод HL1 может быть любой маломощный диаметром 3 или 5 мм, хотя плата разрабатывалась под 3-миллиметровый диод.
В заключение замечу, что прибор полезен также электрикам, профессионально занимающимся поиском обрывов в скрытой проводке.
Архив bis проекту (Чертеж печатной платы в формате программе Sprint-Layout, файл исходного тексtа программы на ассемблере и файл прошивки):
[hidepost] Herunterladen [/hidepost]
Nachschlagewerke
- Потапчук М. Микроконтроллерный искатель проводки // Радио. – 2006. – №2. – С.44, 45.
Autor: Иван Шевченко (RW1ZK), г. Заозерск, Мурманской обл.
WordPress database error: [Table './meandr_base/anzpz_usermeta' is marked as crashed and last (automatic?) repair failed]
SELECT user_id, meta_key, meta_value FROM anzpz_usermeta WHERE user_id IN (1337) ORDER BY umeta_id ASC