Магазин / аукцион / FPR / donate / услуги / RSS / распечатать / вход 
Мой мир
Вконтакте
Одноклассники
Google+

Центральный контроллер умного дома

В прошлой статье было вводное слово о том, что из себя представляет вся сеть для «умного дома». Сейчас я хочу затронуть центральный контроллер немного подробнее. Во-первых, какие на него возложены задачи; во-вторых, какими средствами и методами эти задачи будут решены.

Задачи, перед центральным контроллером, стоят довольно простые. Он должен дать возможность компьютеру взаимодействовать с оконечными устройствами: датчиками и устройствами управления. Для подобной задачи хватит даже простейшего микроконтроллера на уровне ATTiny2313. Но я хочу заложить на будущее возможность некоторой автономности от управляющего компьютера. Ведь никто не застрахован от случаев когда отключают электричество и тогда вся сеть превратится в мертвое железо. Плата с микроконтроллером и некоторой пачкой оконечных детекторов потребляют небольшое количество электричества, что позволяет поддерживать систему в рабочем состоянии. Естественно, что всю систему, вместе с управляемым оборудованием, один аккумулятор не выдержит, а вот поддержать систему в режиме ожидания — сможет довольно долго.

Кроме определенной мобильности я хочу заложить в центральный контроллер серию органов чувств и управления. Это одна из причин по которым я заложил дорогой микроконтроллер. Что именно меня интересует в ATMega16A/ATMega32A:

Еще меня интересует возможность быстрого прототипирования с использованием микроконтроллера ATMega16A. Это достигается благодаря большому корпусу в DIP40. Его можно впаять в любую монтажную плату и легко производить дальнейшее прототипирование платы на этой же монтажной плате. Быстрое прототипирование «в железе» ускоряет поиск ошибок и дает возможность видеть результат в процессе проектирования. Просто не все тонкости видно когда рисуешь проект на бумаге. Частенько руки делают на автомате то, что сознание не сразу нарисует на бумаге.

После подготовки прототипа можно будет изготовить проект в ЛУТ и продолжить отлов мелких схемотехнических ошибок. Если багов не обнаружится, то дальше можно будет произвести заказ получившейся платы на производстве.

Вполне возможно, что я буду прототипировать плату не на монтажке, а с использованием отладочной платы PinBoard v1.1 или OrcaBoard Rev.2. В зависимости от того, кто из них будет больше подходить под поставленную задачу с минимальными финансовыми затратами.

Сопряжение компьютера и центрального контроллера будет происходить по USB. Хотя на стадии проектирования и отладки, можно обойтись обычным COM-портом. Но в действующем устройстве я закладываю работу с USB портом. Точнее с переходником USART в USB, на микросхеме FTDI FT232RL. Со стороны компьютера будет видно обычный COM-порт, что позволит быстро отлаживать систему через терминал, не прибегая к различным ухищрениям типа работы с HID.

С шиной пока еще не решил, буду делать либо на 1-Wire (Micro-LAN), либо на RS-485. Скорость обмена данными буду брать в зависимости от качества связи и протяженности линии связи. Поддерживаемые скорости которые будут точно реализованы:

Протокол передачи данных еще в разработке. Возможно будет использоваться ModBus. Но не исключена разработка своего собственного протокола. Так как протокол ModBus подразумевает клиент-серверную организацию передачи данных, а я закладываю возможность общения между устройствами. И в этом случае при прослушивании шины невозможно будет понять кто засоряет канал связи. Еще ModBus не поддерживает арбитраж, а в моем случае он необходим, чтобы не происходило коллизий.

Дополнительные порты

В качестве дополнительных портов я хочу предусмотреть:

Для чего делать прямое подключение некоторых устройств? Ответ довольно прост. Во-первых, прямое подключение имеет более высокую скорость. Во-вторых, сделать небольшую обвязку на плате дешевле чем городить дополнительную плату и пытаться её разместить в корпусе. В-третьих, вся работа с устройствами осуществляется компьютером, но компьютер является одним из слабых звеньев. Если вдруг, компьютер отключится из-за пропадания питания, то устройства не будут знать, что им делать с накапливающимися данными. В то же время, центральный контроллер может независимо от компьютера разослать по сети уведомление, что пропало электричество и необходимо перейти в режим ожидания. В-четвертых, дополнительные кнопки для вызова определенных функций не помешают, а позволят повысить эффективность использования оборудования. В-пятых, имея выходы на реле (или транзисторы, если нагрузка небольшая) мы можем управлять подключенными устройствами или вообще запустить управляющий компьютер по расписанию.

Вот так выглядит концепт центрального контроллера.

• Перейти в раздел микроконтроллеры


Комментарии

Включите JavaScript для комментирования.


Сообщайте нам о замеченных ошибках на: web@orcinus.ru. Все пожелания и советы будут учтены при дальнейшем проектировании сайта... Мы готовы сотрудничать со всеми желающими. Мнение авторов может не совпадать с точкой зрения редакции сайта www.orcinus.ru. В некоторых случаях, мнение автора может не совпадать с мнением автора! Phone: +7-902-924-70-49.

Рейтинг@Mail.ru LiveInternet Rambler's Top100 Яндекс.Метрика