Умный дом

НЕХ-файл модуля цифровых вводов

Выводы RA0-RA2 используются в «макетном варианте» для индикации!

:10000000830100308А00042820308400403016200С :1000100083010330C200FF30C10040308400413012 :100020001A2083019E2A04068001840A0406031D07 :1000300013280034F00026208000840A040870068B :10004000031900341B2883120313C100C21B31287В

10005000421B392842088A004108C10A0319C20A12 1000600082008313421883174108C10A84000008E4 02007000080086

1004860083018C1E432A1A08080083013408533A54 10049600031D0800FC2A8301BF00831203130C1EF0 1004A600502A3F0899000800F401F5010310F30CE7 1004B600F20C031C652A7008F40771080318710A08 1004C600F5070310F00DF10D7208730403190034DB 1004D600592AF8308301850007309F00F8308316CB 1004E6008500FE3086009030831298000630831611 1004F60098006830990083120610051408008301DD 10050600AD01AE013008A4003108A500D030A40723 10051600A5070A30F200F3012408F000F101572282 1005260025087407AD0075080318750AAEOOF100BA 100536002D08F00008006C22AB01AC01AB2A2B0899 100546002F3E8400831320308000ABOA0319ACOAC7 100556002C08803AF00080307002063003192B0216 10056600031CA22A4430AF000608A700A8010430E5 10057600F000280DA80CA70CF00BBC2AEA2AAB0148 10058600AB0AAC012C08803AF000803070020630CD 1005960003192B020318DB2A4322A6002B082F3E41 ЮО5А6ОО84ОО831326О88ОО0АВОА0319АСОАС52АО7 1005B60082227008A9007108AA002806031DE52AF0 1005C60027082906031DEA2A2430B20048221816F5 1005D6000508F839F83A0319F32A0508C005851401 1005E6008C1EF72A4322A6002608443A0319C22A7B 1005F600EA2A83014008B900BA016430F200F30127 100606003A08F1003908F000B0237408BB007508F9 10061600BC003B08303EA0006430F200F3013C0809 10062600F1003B08F00057223A08F1003908F000C3 100636007408F002031CF1037508F1020A30F20097 100646000030F301B0237408B7007508B800370806 10065600303EA1000A30F200F3013808F1003708F5 10066600F00057227408BD007508BE006430F20021 10067600F3013C08F1003B08F00057223A08F1006C 100686003908F0007408F002031CF1037508F10242 100696003D08F002031CF1033E08F1027008B500A4 1006A6007108B6003508303EA2004430AF00240879 1006B600303EB0002508303EB1002008B2002108C7 1006C600B3002208B4001812061483169816831273 1006D600AB01AC01772B2B082F3E84008313000857 1006E6004E22AB0A0319AC0A2C08803AF00080307F 1006F6007002063003192B02031C6E2BAB01AC01F2

:100706002C08803AF00083307002E83003192B027F

:Ю0716000318912ВАВОА0319АСОА832ВАВ01АС016Е

:100726002C08803AF00080307002063003192B0244

:100736000318A72B2B082F3E84008313203080003C

:Ю074600АВОА0319АСОА932В061083169812831270

:1007560018168510F830C0000800F601F11FBA2BF4

:100766OOFOO9FOOAO319FlO3FlO97617F61773O871

:100776008039F606F31FC62BF209F20A0319F303B2

:10078600F309C62BF601F401F50172087304031D83

:10079600CF2BF001F10100341F30F6040310F60AE6

:1007A600F20DF30D031CD22BF30CF20C730871023D

:1007B600031DDF2B72087002031CE72B7208F00280

:1007C6007308031C730AF102F40DF50DF60BF61A05

:1007D600D72BF61FF32BF409F40A0319F503F509D1

:1007E6007408F2007508F300761F0034F009FOOA69

:0A07F6000319F103F1090034F8348F

:00000001FF

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

Я уже говорил, что наиболее интересными датчиками бу­дут датчики движения, противопожарные датчики, датчики температуры (пороговые измерители температуры), датчи­ки положения (в частности, герконовые).

Рассмотрим их по порядку, начиная с простейшего - гер­конового датчика.

Іерконовьій датчик (название происходит от сокращения «герметизированные контакты») представляет собой пару: магниточувствительные контакты в стеклянной колбе и по­стоянный магнит. Реальный датчик, конечно, имеет пласт­массовые корпуса и для контактов, и для магнита. Когда кон­такты попадают в поле постоянного магнита, они замыкаются (или переключаются для варианта с контактами на переклю­чение). Естественно, соединив один вывод контактов с выво­дом модуля цифровых вводов, а другой - с общим проводом модуля, мы получаем сигнал о взаимном положении контак­тов и магнита. Если контакты укрепить на дверной короб, а магнит - на дверь, при закрытой двери контакты замкнут­ся, а при открытой разомкнутся. Этот сигнал Можно исполь­зовать в основной программе, чтобы инициировать любые события.

Положим, мы установили герконовый датчик на входную дверь. Теперь вполне можно реализовать программу «Возвра­щаюсь я с работы...», о которой я говорил в предисловии. На­помню: «Возвращаюсь я с работы. Система встречает меня - зажигает свет в прихожей, кипятит воду для кофе (конечно, чайник я наполняю утром). А когда я перехожу в гостиную с чашкой кофе, она включает телевизор на моей любимой про­грамме новостей, чтобы я, усевшись в любимое кресло, посмот­рел, что произошло в мире за день. Свет на кухне и в прихо­жей, который я, конечно, забыл выключить, она выключит сама».

Для реализации подобной программы все, собственно, есть.

Можно установить герконовые датчики на дверь туалета, а основную программу построить так, чтобы при первом от­крывании двери свет в туалете включался, а при втором от­крывании выключался. Естественно, в систему необходимо добавить релейный модуль для управления светом или мо­дуль с триаком, о котором речь пойдет ниже.

Герконовые датчики, несмотря на всю свою простоту, мо­гут найти множество применений в экспериментах с систе­мой «Умный дом».

Рассмотрим, как можно сделать датчик температуры. В качестве датчика температуры можно использовать термо­резистор. Сделав делитель из терморезистора и обычного ре­зистора, подключив напряжение к делителю, можно снимать сигнал напряжения на терморезисторе при изменении тем­пературы. Теперь осталось подключить компаратор и реле, чтобы при достижении некоторого значения напряжения реле включалось (с модулем цифровых вводов можно исполь­зовать вместо реле транзистор с открытым коллектором). Используя в качестве обычного резистора пару из перемен­ного и постоянного резистора, можно изменять заданное на­пряжение срабатывания. Подобных схем великое множе­ство, при необходимости вы можете использовать любую. Можно построить и свою схему, в основе которой может ле­жать чувствительность к температуре не только терморезис­тора, но транзистора и т. д.

Как в системе можно использовать подобный датчик? На­пример, можно настроить датчик на срабатывание при тем­пературе ниже -15° и поместить термочувствительный эле­мент за окном. В качестве индикатора «похолодания» можно использовать свет в прихожей. Действия программы будут следующими: температура за окном упала ниже -15°. Когда открывается входная дверь, снабженная герконовым датчи­ком, свет в прихожей выключается и включается вновь - не забудьте теплое пальто!

Я уже говорил, что, управляя бытовой аппаратурой с по­мощью ИК-кодов, сталкиваешься с проблемой определения ее текущего состояния - включен телевизор или выключен? Здесь тоже можно использовать датчик температуры для бе­зусловного выключения телевизора в заданное время, по­скольку включенный телевизор греется, а выключенный нет.

Датчики движения. Насколько я понимаю, они появились как датчики в составе охранных систем. Есть несколько раз­новидностей подобных датчиков. С моей точки зрения, наи­более интересны пирометрические датчики движения. Но они достаточно дороги. Более дешевыми могут оказаться мик­роволновые датчики.

Есть еще один вид датчиков, которые могут найти практи­ческое применение даже при самостоятельном изготовлении. Это датчики протечек. Датчики, реагирующие на появление воды там, где ее не должно быть. Установив подобные датчи­ки возле батарей отопления, в местах ввода горячей и холод­ной воды, возле стоков раковин, можно избежать серьезных неприятностей при появлении протечек воды. Сигнализируя об аварии, система выручит вас на этапе, когда еще не поздно перекрыть вентили или перестать пользоваться раковиной и вызвать специалиста для устранения неисправности. Хотя надежнее, я думаю, будут все-таки готовые датчики.

Есть еще одно применение модуля цифровых вводов, о котором я упоминал раньше, - системное устройство управ­ления.

Само системное устройство управления - это клавишный пульт. Контакты при нажатии клавиши замыкают один из вхо­дов модуля на общий провод. Восемь входов модуля позволяют сделать простой пульт с восьмью клавишами, что позволяет подать восемь команд. Достаточно ли этого? Достаточно для управления всеми светильниками в комнате. Или всеми ос­новными светильниками в квартире. Этого хватит для управ­ления одним аудио - или видеоустройством, например видео­магнитофоном. Но управлять телевизором будет неудобно, поскольку трудно будет ввести номер канала. Для ввода номе­ра канала обычные пульты имеют цифровую клавиатуру с цифрами от 0 до 9. Чтобы увеличить количество клавиш уп­равления, достаточно добавить кнопки не с одним контактом на замыкание, а с двумя. Если первые восемь кнопок будут менять состояние одного бита, то остальные - состояние двух бит одновременно. Для случая использования модуля с клави­атурой в программу контроллера следует добавить задержку на 10-50 мс перед определением состояния входов:

If ((PORTA&OxFF) != OxFF)

{

For (i=0; i<1000; i++);

DINSTAT = DINSTAT&PORTA;

}

Необходимость в задержке связана с «дребезгом» контак­тов и неодновременным замыканием контактов у двухконтак­тных кнопок.

Применение кнопок с двумя замыкающими контактами, то есть замыкающими первый вход и второй, первый и тре­тий и т. д. одновременно, позволит добавить на пульт еще семь клавиш управления. Одновременное замыкание второго и третьего, второго и четвертого и т. д. - добавит еще шесть клавиш. Даже 21 клавиши управления для пульта, мне кажет­ся, более чем достаточно для любых применений этого реше­ния к построению клавишного пульта управления.

Позже мы обсудим вопрос о том, что можно сделать в экс­периментах, если в квартире не заложено достаточно боль­шого количества проводов, а менять проводку нет возможно­сти. Я имею в виду использование радиоканала. Это же решение можно применить и к пульту управления, построен­ному на основе модуля цифровых вводов, для превращения его в переносной пульт управления.

Резюме. Мы расширили возможности системы за счет ново­го устройства - модуля цифровых вводов. Рассмотрели и не­сколько применений этого модуля. И, как мне кажется, с по­явлением нового модуля система приобрела новое качество.

Умный дом

Вторая версия основной программы на языке С++

/****************^ * TOC o "1-3" h z Copyright (С) 2006 by Vladimir Gololobov * * vgololobov@yandex. ru * * * * This program is free software; you can redistribute it …

Циклы

Циклы выполняют выражения или блоки выражений до тех пор, пока выражение условия не становится истинным. Наша программа требует двух циклов (один вложен в дру­гой). Пока пользователь желает угадывать последовательно­сти: { …

Две полезные схемы

Первая схема относится к настенному выключателю, работа­ющему по протоколу XI0. Что полезного можно почерпнуть из этой схемы? Например, организацию сканирования сети и управления триаком. Схему я привожу, как она сохранилась …

Как с нами связаться:

Украина:
г.Александрия
тел./факс +38 05235  77193 Бухгалтерия
+38 050 512 11 94 — гл. инженер-менеджер (продажи всего оборудования)

+38 050 457 13 30 — Рашид - продажи новинок
e-mail: msd@msd.com.ua
Схема проезда к производственному офису:
Схема проезда к МСД

Оперативная связь

Укажите свой телефон или адрес эл. почты — наш менеджер перезвонит Вам в удобное для Вас время.