Скорее всего, ближе к весне будет такая статья: я ожидаю макетки на STM32 с ethernet на борту. Вот и расскажу, как сделать веб-морду для управления микроконтроллером (на основе вебсокетов).
> Веб-сервер нужен как минимум для раздачи статики.
Нет: страничку отдает демон при помощи вебсокета (это если нет веб-сервера и сам демон сидит на 80-м порту).
> представьте себе сайт подобный хабру разработанный по вашему методу на вэб-сокетах
Фразу «В этом случае и без веб-сервера можно обойтись» надо читать правильно: не обязательно сносить веб-сервер. Статику отдавайте обычным апачем (скажем), а динамику — вебсокетами. Все просто.
> представьте себе сайт подобный хабру разработанный по вашему методу на вэб-сокетах
Будет вполне приличный сайт. И, кстати, все свежие комментарии сразу же будут появляться. Вебсокеты лучше CGI, если вам нужно обеспечить асинхронное общение сервера и клиента с минимальными задержками и минимальной нагрузкой (т.к. слать XHR по 10 раз в секудну — чересчур).
> Думаю именно то что вы приплели вэб-сокеты и не понравилось минусующим
Думаю, минусующие просто ничего про вебсокеты не слышали.
Интересно, может для них и webGL — чудо? ☺
Да что вы все прицепились к этим дуинам? Есть же STM32 (там этих входов — уйма), или можно прикупить за 10 баксов ethernet-модуль.
В вашем случае пока действительно, похоже, дешевле будет сделать на 1-wire. Но через некоторое время китайские макетки еще больше подешевеют, так что можно будет уже делать связь устройств между собой по ethernet.
Возможен еще гибридный вариант: к макетке идет куча проводов от (если использовать мультиплексоры, можно даже разнородных) датчиков. Макетка их опрашивает и «выплевывает» результат по CAN (нынешняя цена макетки — около 15 баксов) или ethernet (нынешняя цена макетки — около 40 баксов).
Еще не забывайте про аналоговые мультиплексоры: за 4 бакса вы имеете возможность микшировать 16 аналоговых каналов на 1 АЦП! Т.е. имея даже лишь 16 аналоговых входов на МК, можно при помощи 20 цифровых каналов последовательно опрашивать 256 аналоговых устройств!
> «Логических» областей в доме — 10 штук
Не обязательно вешать каждую «логическую» область на отдельный контроллер.
Кстати, если все-таки не страшна пайка, можно промежуточную логику хоть на двухбаксовых восьмибитных контроллерах сделать. У них, правда, обычно только USART для связи на длинные расстояния — но RS485 позволяет связывать устройства, находящиеся друг от друга на десятках (а то и сотнях) метров. Восьмибитки с CAN на борту стоят чуть подороже (бакса 4). Дальность линии получается еще больше.
Но, не буду забивать вам голову. Все вышесказанное я привел для рассмотрения возможных вариантов построения схемы.
Кстати, да: глянул цены на PIC18F458 (с ним я когда-то работал): дороговато. Дешевле действительно взять ARM хоть Cortex M3.
Но все равно, это будет выгоднее, если N-е количество аналоговых (причем, дешевых) датчиков находится недалеко от МКшки. И при этом суммарная стоимость микроконтроллера с обвязкой (а то и макетки, смотря что дешевле — чаще макетка намного дешевле) + датчиков будет ниже стоимости аналогичного количества 1-wire датчиков.
Я, похоже, сильно подотстал: китайцы хорошо преуспели в штамповке всяких разных 1-wire. Главное — чтобы датчики были полноценными (т.е. имели уникальные идентификаторы), иначе «не взлетит».
А насчет того, что «про 1-wire в сети много писано, а про CAN — мало», впервые слышу: как раз насчет 1-wire маловато материала, т.к. технология новая. А CAN-шина довольно-таки старая штука. Но с развитием МК с нормальной поддержкой ethernet и CAN отходит от дел. Сдается мне, лет через 5 все железяки уже не по CAN-протоколу общаться будут, а иметь встроенный ethernet с ipv6.
Проще уж тогда взять 100-ножечную STM32F4 за полтора десятка баксов (макетка).
Вот только, еще раз повторю: нормальное 3D сделать не получится без внедрения в каждый светодиод двухвходового элемента «И» на анод!