По определению, выражения выполняются по разу по мере прохождения программы, начиная с первого выражения main (). В предыдущих разделах мы кратко говорили о выражении if. Оно позволяет нам выполнять по условию одно выражение или их последовательность, основываясь на вычислении истинности условия. Дополнение else дает возможность проверить несколько условий. Циклические выражения позволяют выполнять одно выражение или их последовательность, основываясь на вычислении истинности. Следующий псевдокод программы использует два цикла (#1 и #2), один условный оператор if (#5), один условный оператор if-else (#3), и второй условный оператор, назы-ваемый switch (переключатель) (#4).
// Pseudo code: Основная логика программы - пока пользователь хочет угадывать последовательности { #1
вывести на дисплей последовательность пока угадано неверно, и пользователь хочет угадать еще раз
{ #2
прочитать гипотезу увеличить счетчик попыток если угадано правильно
{ #3
увеличить счетчик угадываний установить got_.it в true
Хотя на протяжении всей книги я старался подчеркнуть, что все модули системы, как и сама система, предназначены для проведения экспериментов за компьютером или за столом, думаю, среди читателей найдутся желающие воплотить в жизнь отдельные модули или на базе предложенных модулей создать свою систему. Для тех, кто знаком с техникой безопасности и может работать с напряжением -220 В, в справочной части книги я хочу привести несколько практических советов по применению триака в модуле управления светом.Для этих целей вполне подойдет триак Q6025L6, Х44081 или аналогичный. В реальных конструкциях, с которыми мне приходилось сталкиваться, вполне успешно работают триаки с допустимым напряжением 400 В в закрытом состоянии, но лучше использовать 600-вольтовый вариант, если есть возможность выбора.Второе, о чем мне хотелось бы сказать, - это способ управления. Ниже я привожу реальную схему включения оптопары (рис. П.7). Включение диммера начинается с реле, контакты которого КР подключают нагрузку. Кроме тех соображений, которые мне не ведомы, подобное подключение обеспечивает большую электрическую безопасность. В Интернете есть статьи по тиристорному управлению, и, прежде чем принимать окончательное решение, я советую почитать рекомендации по выбору коммутатора. Или поискать эту информацию в литературе.
Говоря о смешанных системах, я упоминал другие системы, но не рассказывал о них. Приведу фрагмент статьи, восполняющий этот пробел.
Вначале - коммуникации в системе автоматизации дома.
Для создания работающей системы автоматизации дома мы должны расширить управление оборудованием до конкретного устройства, конкретного места или уровня замкнутой цепи. Чтобы сделать это, необходима некоторая точка сосредоточения, осуществляющая сетевое взаимодействие и позволяющая командам и данным перемещаться между системными компонентами.
Команды должны иметь возможность достигать оборудования везде в доме, где бы оно ни располагалось. Наиболее развитые системы автоматизации дома осуществляют двухстороннюю связь, допуская обратную связь от управляемого устройства к контроллеру или программе.
Есть несколько схем системной коммуникации, каждая со своими достоинствами и недостатками. Самые лучшие системы автоматизации дома используют системный центр, который объединяет несколько типов соединений, зависящих от выбранного оборудования и его использования. Наиболее общие типы системных центров включают:
типовую проводку в доме;
несущие силовых линий;
коаксиальный кабель;
специализированные соединители витых пар;
низковольтную проводку;
беспроводные радиочастотные сигналы;
беспроводные инфракрасные сигналы;
оптический кабель.
Если вы хотите использовать типовую проводку дома в качестве системной основы, ваши возможности будут несколько ограничены, но все же в вашем распоряжении останется достаточно много функций, предназначенных для автоматизации. Добавив модули контроллеров со специальными возможностями коммуникаций по силовым проводам, или используя беспроводные связи, вы сможете интегрировать значительное количество оборудования в автоматизированную систему дома со значительным объемом централизованного управления.
Вы завершили эксперименты с модулями, предложенными в начале книги, и отважились на создание собственной системы на базе этих модулей. Вы все тщательно продумали, опробовали, реализовали. Осталось насладиться результатами. Но вот беда - вам приглянулся угловой диван для гостиной, понравилось, что у него есть бар и полка, на которую можно положить роман для чтения на сон грядущий. В полке есть лампочка, которую вы включаете, когда читаете роман. Розетка для включения лампочки есть, выключатель разместился на проводе, включаемом в розетку. Но вам не нравится, что. этот выключатель вы не можете добавить в систему. Это раздражает всякий раз, когда вы им пользуетесь.
Вместе с тем, вам не нравится идея прокладывать новые провода к дивану. Вы только завершили прокладку проводов. Как поступить в этом случае?
Есть разные пути решения - использовать радиоканал, ИК-канал для передачи команд управления. Если же вдобавок вы хотите использовать возможности управления яркостью, но не хотите самостоятельно изготавливать диммер, то самое лучшее решение - применить устройство другой системы. Об этом я хочу рассказать немного подробнее.
Если вам приходится использовать устройства другой системы, в первую очередь, вам помогут специалисты, представляющие продукцию той фирмы, на которой вы остановили свой выбор. Например, вы используете систему XI0, но в качестве основной панели управления хотите использовать современную красивую сенсорную панель фирмы Crestron. Уверен, специалисты фирмы, у которой вы приобрели оборудование XI0, возможно, проектировали вашу систему, и помогут вам в этом. Так фирма «Умный дом» предлагает большое количество устройств XI0, но одновременно она представляет и продукцию Crestron.
В этой части книги я предлагаю расширить набор модулей. В первую очередь, за счет разработки модуля цифровых вводов.
Почему я не включил модуль цифровых вводов в первую часть?
Модуль, в основном, предназначен для подключения датчиков с «сухими контактами» или аналогичным выходом, имеющих два состояния - включено и выключено. Это противопожарные датчики, датчики охраны. К модулю цифровых вводов можно подключить пороговые датчики освещенности: освещенность достигла некоторой величины - датчик замы¬кает контакты; освещенность упала - датчик выключает контакты. Такими могут быть датчики температуры, влажности, давления, положения, термостаты и т.д. Большой интерес в этом ряду представляют датчики движения. С их помощью легко организовать автоматическое управление светом в коридоре, прихожей или на лестнице.Часть датчиков, например датчики освещенности и температуры, достаточно просто изготовить самостоятельно. Но пирометрические датчики движения даже в собственном исполнении могут оказаться слишком дорогими. Использовать противопожарные или охранные датчики в самостоятельном исполнении я не вижу смысла - они должны быть очень надежны, так как требования к устройствам, обрабатывающим их сигналы, очень жесткие.
Системы, работающие по протоколу Х10, - это другой ценовой полюс. Множество производителей выпускают как отдельные компоненты, так и законченные системы автоматизации. Можно использовать централизованное построение или создать децентрализованную систему. В качестве примера рассмотрим систему StarGate (JDS).
Как и предыдущая, она позволяет быстро объединить события с реакцией системы, создав программу обслуживания дома. Имеет система и схожий набор устройств, в котором, как и в других системах, есть все необходимое для создания подсистем управления светом, аудио- и видеооборудованием, климатической и охранной подсистемы, подсистемы управления, например, садовым оборудованием или гаражом.
О перечне модулей, составляющих физическое наполнение системы, можно судить по меню, которое открывается в программе после обращения к разделу Define основного меню.
При создании нового проекта система добавляет начало и конец программы.
После запуска программы и выбора New Schedule (через основное меню File или инструментальную панель - первая кнопка) в оглавлении мы готовы перечислить оборудование нашего проекта. Как и в случае с системой Landmark, начнем со света.
В настоящее время система поддерживается корпорацией АМХ (PHAST, Panja).
Почти все модули выполнены в виде печатных плат, предназначенных для установки в конструктив.С перечнем модулей можно ознакомиться на сайте производителя, но я приведу названия и назначение некоторых модулей из списка, который есть в моем архиве:
PLC-MCU - модуль центрального процессора системы;
PLB-AMP8 - 8- канальный усилитель (обслуживание аку¬стических зон);
PLB-AS16 - 16-канальный аудио коммутатор (матрица 16x16);
PLC-IN7 - модуль с семью цифровыми входами (для под¬ключения датчиков);
PLC-IRIN - модуль с тремя входами для приемников ИК управляющих кодов;
PLC-IROUT - модуль для подключения 4-х ИК-излуча-телей;
PLC-RL8 - релейный модуль с восьмью исполняющими реле;
PLL-MLC - управляемый диммер-выключатель.
В конструктиве (CardFrame) расположен центральный процессор. Конструктив имеет встроенный сетевой концентратор, к которому подключаются сетевые системные устройства (например, все выключатели света). Как и компьютерные хабы, он имеет вход и выход для объединения всех сетевых концентраторов.
Средства управления в составе системы представлены двумя базовыми решениями. Это настенный клавишный пульт с дисплеем для отображения информации и переносной пульт для ИК-управления. Кроме них система поддерживает работу сенсорных панелей АМХ с помощью специального модуля. Позже появилось множество универсальных ИК-пультов управления, способных запомнить большое количество кодов от пультов управления бытовыми устройствами. Некоторые их них, например фирмы Philips, могут полностью программироваться на компьютере, а затем загружаться через СОМ или USB-порт.