LAN Control. Система удаленного управления через локальную сеть, Интернет и ПДУ

Появилась вторая версия устройства Lan Control V2

Более функциональное устройство, рекомендую посмотреть XControl

Обновление №4 (16.02.2013). Выставил  на продажу.

Почти 2 года назад, я разработал устройство Universal Device (http://unidev.org.ua/), но, как оказалось, оно слишком многофункциональное, вторая его проблема была в том, что он очень зависим от ПК. Мне присылали много писем, в которых пользователи устройства перечисляли плюсы и минусы. Теперь я решил разработать устройство, которое будет подходить большинству критериев:

  1. Устройство должно быть независимо от ПК.
  2. Управление функциями ПК (Винамп, курсор и т.д.) тоже бессмысленно.
  3. Уменьшить количество индикаторов.
  4. И самый важный критерий: полное удаленное управление на любом расстоянии (разумеется, через инет).

Еще писали, понравилось то, что такое многофункциональное устройство уместилось на односторонней плате, поэтому, и это я тоже постарался уместить на односторонней плате.

Какой интерфейс применить? Не долго думая, я выбрал Ethernet, а в качестве интерфейсной микросхемы —  ENC28J60. С момента появления этой микросхемы, уже создано много самоделок (например http://www.rlocman.ru/shem/schematics.html?di=55066), они подключаются к роутеру, и имеют WEB интерфейс, это значит, что с помощью браузера до устройства можно достучаться через его IP, к тому же, не только в пределах локальной сети, настроив в роутере проброс порта, можно получить доступ по IP роутера через  любое устройство, подключенное к инету. Но если такие устройства уже есть, зачем же мне разрабатывать еще одно? Если у Вас IP статический, то зная его, вы всегда можете получить доступ к устройству через инет, но статический есть далеко не у всех, а если вы используете GPRS/3G инет (как я, CDMA), то статический адрес приходится покупать за дополнительную плату. Но в моем устройстве нет этого недостатка, к нему можно получить доступ с помощью логина и пароля, не зная IP.

Я разработал устройство с такими характеристиками:

  1. Подключение к роутеру с помощью витой пары.
  2. Количество выходящих каналов: 7 (максимальный ток 500мА на каждый), выходящее напряжение равно напряжению питания.
  3. Количество входящих каналов: 4.
  4. Сеть 1-wire, к которой можно подключить до 20 датчиков DS18B20.
  5. Управление и настройка устройства с помощью браузера.
  6. Возможность управления выходящими каналами с помощью пульта с RC5.
  7. Возможность устанавливать имя для каналов и датчиков, сохраняется в энергонезависимой памяти.
  8. Обновление прошивки через USB.

К сожалению, ENC28J60 требует обвес, у меня так и не получилось сделать для него одностороннюю плату, поэтому, я решил купить готовый модуль:

Покупал здесь: http://www.ebay.com/itm/ENC28J60-Ethernet-LAN-Module-Arduino-AVR-LPC-STM32-/280706213546?pt=LH_DefaultDomain_0&hash=item415b64e6aa#ht_3749wt_1037 . Цена 7$, Но при этом, у нас уже есть сама микра и разъем с трансформатором с светодиодами, если покупать это по отдельности, то цена будет точно выше 7$.

Схема 1. Питание:

Питание 6-35В постоянного тока, понижается до 5В с помощью импульсного стабилизатора MC34063A. Дроссель советую брать минимум на 1А.

Схема 2:

Микроконтроллер Atmega32, память AT24C64, в качестве ключей выходных каналов используется микросхема ULN2003. Питание Ethernet модуля требует 3,3В, поэтому, установлен стабилизатор REG1117-3.3. Для приема сигналов с пульта установлен TSOP1736, перемычкой возле него можно отключить возможность приема комманд с ПДУ. 2 транзистора 2N7002 используются для 1-wire, рядом 2 диода защищают линию от попадания напряжени, выше напряжения питания (если будет длинный провод, то буду наводки), еще установлен один датчик DS18B20. PORT6 для подключения Ethernet модуля. Ну  и паръем USB для подключения к ПК. Перемычка BOOTLOADER предназначена для перевода устройства в режим обновления прошивки.

Получилась вот такая плата:

Я здесь забыл поставить перемычку бутлоадера. Вверху слева показано, куда надо подключать модуль. Выходящие замыкаются на землю, тоесть, если Вы хотите подключить светодиод, то его «+» надо подключит к VCC а «-» к одному из каналов. Входящие каналы считаются активными, если замкнуты на землю (GND). Дополнительные датчики DS18B20 подключаются  разъему U4.

Теперь надо прошить МК. Прошейте его файлом bootloader.hex, затем выставьте фьюзы LOW=0x3F, HIGH=0xDA, если программа вашего программатора не позволяет просто выставить верхний и нижний байты, тогда зайдите сюда http://avr.roboforum.ru/calc.html?part=ATmega32, слева введите эти 2 байта и увидите, как правильно надо расставить фьюзы. Бутлоадер прошит, теперь программатор не нужен. Вставьте МК в устройство, подключите кабель USB, установите перемычку бутлоадера, и затем подключите питание, комп должен найти новое HID устройство и установить его (драйверы не нужны), устройств успешно переведено в режим прошивки. Для прошивки используются 3 файла: bootloadHID.exe – программа хоста, boot.bat файл и командами и LAN_Control.hex – это сама прошивка, когда будете обновлять прошивку, то замените этот файл новым. Все 3 файла должны лежать в одной директории. Запустите boot.bat, должно выскочить черное окно, в нем пару минут будут бегать цифры и оно закроется, прошивка завершена.

Отключите перемычку, подключите питание, загорится D6 на 1 секунду и потухнет, если пока он горит, установить перемычку бутлоадера, то установляться стандартные настройки, это нужно обязательно сделать при первом включении. После их установки дважды мигнет светодиод. Стандартные настройки такие:

  • IP: 192.168.1.170.
  • MAC: 84.85.88.16.0.41.
  • Порт: 80

Если зайти в меню вашего роутера, то ВОЗМОЖНО там будет отображаться подключение этого устройства, но далеко не всегда (у меня он вообще его не показывал). Чтобы убедиться, что есть нормальная связь между компом и устройством (они должны быть в одной локальной сети, тоесть, подключены к одному роутеру), откройте Командную строку и напишите ping 192.168.1.170, должно придти 4 ответа:

Это значит, что связь нормальная.

Откройте браузер и перейдите по адресу http://192.168.1.170/, должно появиться примерно такое окно:

У меня подключен один внешний датчик, поэтому отображается 2. Теперь можно управлять выходными каналами, но лучше сначала задать им имена, нажмите Настройки, появится такая страница:

 

И задайте для каждого компонента имя(латинскими буквами). Для этого, выберите Термодатчик, номер 1 и введите какое то имя, затем для каждого термодатчика, после этого, для 7 выходных и 4 входных каналов. Теперь нажмите Выходящие каналы.

 

Как видите, у меня для первого канала установлено имя «one», для второго – «two» и т.д. Если выход активный, то возле него будет ON, если не активный – OFF. Чтобы изменить состояние, нажмите «Изменить».

Примерно так же выглядит вкладка «Входящие каналы»:

 

Продолжаем настройку устройства. Для этого, нужно зайти в панель администрирования. Для этого, при включенном устройстве нужно установить перемычку бутлоадера и перейти по адресу http://192.168.1.170/admin.

 

Здесь можно изменить IP адрес, МАС и порт(остальное пока что не нужно). Установленные изменения применяются только после перезагрузки устройства. Имейте ввиду, что порт 80 – это стандартный порт сервера, если он будет не 80, а к примеру, 200, то в адресной строке после IP надо через двоеточие указывать порт, тоесть http://192.168.1.170:200/.

Теперь попробуем достучаться к устройству через инет, зная его IP.

Для начала, нужно настроить проброс порта на IP устройства. После этого, его кто-то перейдет с внешней сети IP:порт_устройства, то запрос перейдет на само устройство.

Настройка проброса порта не вызывает никаких трудностей, у меня роутер WR1043 с прошивкой OpenWrt. Для настройки проброса нужно зайти в веб-интерфейс роутера (обычно http://192.168.1.1), затем Сеть->Межсетевой экран, там найдите Перенаправления и нажмите Добавить.

 Имя введите любое, Протокол TCP+UDP или просто TCP, Внешний порт – это порт устройства, Внутренний IP адрес – это IP устройства, Внутренний порт можете оставить пустым. Сохраните и примените настройки. Попробуйте достучаться к устройству через инет(можно делать и в локальной сети). Узнайте IP роутера во внешней сети, для этого можно открыть http://speedtest.net/, в самом большом окне внизу слева будет отображаться ваш IP. Теперь откройте в браузете этот IP, и через двоеточие порт (к примеру, у меня http://130.185.30.125:80/), должно отобразиться то же самое что и при переходе по IP устройства.

Теперь наше устройство доступно через инет. Но мы подключались к нему зная IP, а если мы его не знаем?

Для этого, я создал небольшой сервис, принцип его работы в том, что пользователь на нем регистрируется, затем вводит логин и пароль в панели администрирования, и устройство с установленной периодичностью отправляет логин, пароль и порт на этот сервис, сервис вычисляет IP, откуда пришли дынные (это будет IP роутера во внешней сети) и сохраняет данные в базе данных. Затем, пользователь заходит на сайт, вводит логин и пароль, после чего отображается страница с фреймом, в котором переход по IP:port. Теперь более подробно.

Регистрируется на сайте http://kibermaster.net/, затем открываем http://lc.kibermaster.net/, «Регистрация» и вводим те же самые логин, пароль и имейл, которые на http://kibermaster.net/. Теперь заходим в админ-панель устройства (у меня http://192.168.1.170/admin), вводим там логин, пароль, частоту репорта (как часто отправлять данные на сервис) и IP роутера по внутренний сети (обычно 192.168.1.1), сохраняем, вытягиваем перемычку бутлоадера и перезагружаем устройство. Если частота репорта не равна 0, тогда при включении будет отправлять на сервис данные устройства, так же, они будут отправляться через установленный интервал времени (частота репорта). Вот видео:

Обновление №1 (11.2.2012). Добавлен термостат, автоматическое управление каналами в зависимости от температуры.

Недавно написал статью, а меня уже завалили письмами с вопросами и пожеланиями:).

Многие хотят функцию термостата, ведь как класно, когда возвращаешься на дачу и преждевременно включаешь через мобилку подогрев воды в душе:). Сегодня добавил эту возможность.

Итак, внешний вид веб-формы немного поменялся:

Немного переименовал меню и добавил пункт меню «Термостат»:

Сначала надо выбрать канал, который будет подключен к исполнительному устройству (к примеру, к электронагревателю), выберем третий.

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

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

У меня часто спрашивают, куда я подключил роутер если я живу в дали от города и у меня нет кабельного инета. Я купил роутер с USB интерфейсом TL WR1043ND, подключил к нему USB модем (у меня UMW190, но можно использовать любой другой) и теперь этот роутер раздает инет по WiFi и кабелю. Но роутер совсем не обязательно, можно просто подключить устройство к разъему Ethernet компа и разрешить доступ в инет подключенным устройствам. Но в таком случае, веб-интерфейс можно открыть только тогда, когда ПК включен.

Обновление №2 (26.10.2012). Добавил сохранение номера термодатчика.

Мне в комментах и на почту писали, что после подключения/отключения термодатчиков сбивались их порядковые номера, поэтому, возникали определенные неудобства, в частности, с термостатом. Теперь номер датчика сохраняется, а при подключении новых датчиков, они будут добавлять в конец. Обнуление списка происходит при установке стандартных настроек.

Обновление №3 (17.12.2012). Убрана дробная часть при расчете температуры термостата.

Несколько пользователей писали, что им не нравится, что работа термостата зависит от чисел после точки, да и врятле оно кому то нужно.

Обновление №4 (16.02.2013). Выставил  на продажу.

Так как в последнее время у меня часто покупают этот девайс и делать каждый раз плату мне уже надоело, я заказал несколько плат на заводе:


Приобрести устройство можно в нашем интернет-магазине.

Скачать файлы статьи (600 Kb)

219 комментариев LAN Control. Система удаленного управления через локальную сеть, Интернет и ПДУ

  • djdfy007

    А что за кварц (номинал) на PC6,PC7 и для чего он нужен?

  • THK

    Возможно получить исходники прошивки?
    Хочу выкинуть лишние, для меня, функции (RC-5, загрузчик, лишние I/O) и собрать прошивку под ATmega168…

  • djdfy007

    Собрал плату,осталось дождаться модуля ENC28J60 из Китая.Было бы неплохо добавить в прошивку включение/отключение каналов по времени.

  • rromcic

    Было бы неплохо добавить в прошивку включение/отключение каналов по времени.

    А также было бы неплохо добавить и импульсное вкл/выкл. И можно вопрос где купить готовое устройство?

  • rromcic

    Вы про этот ENC28J60 ? Я могу заказать с ebay пару штук, отправлю

  • djdfy007

    Тоже все еще жду этот модуль…прошил мк загрузчиком, расставил фьюзы LOW=0x3F, HIGH=0xDA, в итоге по ISP больше он не отвечает. Столкнулся в добавок с проблемой что девайс не определялся по USB, после танцев с бубном и снижения напряжения питания до 4.3В определилось HID устройство после чего успешно удалось прошить рабочей прошивкой (Наверное продавец всучил SMD стабилитроны не на 3.6в, ну да ладно).
    P.S Было бы неплохо если бы вы обнародовали цены на готовое устройство. Мужики на работе тоже заинтересовались, а собрать квалификация не позволяет.

  • Kibermaster

    мда, уже более 20 человек хотят приобрести… Думаю и правда, заказать платки и сделать несколько десятков. Цена будет 80$ за полностью готовое устройство. Если для народа это не дорого, то могу сделать

  • THK

    Прежде всего хочу сказать огромное СПАСИБО!
    Девайс получился суперский!
    Единственная загвоздка — в прошивке выложенной в конце статьи
    http://kibermaster.net/wp-content/uploads/blogs_files/lan-control-sistema-udalennogo-upravleniya-cherez-lokalnuyu-set-internet-i-pdu/lan-control.rar
    От 3.02.2012 отсутствует функция термостата… 🙁

    В связи с этим вопрос: Не мог-бы уважаемый Kibermaster, обновить файлы к статье или выслать их на почту bogovicbkru (собирал устройство, только из-за термостата).

  • THK

    Разобрался, что было с нетом, почему скачивался старый файл.
    Винда глючила, выдавала его из temporary. Почистил историю, скачался новый файл! 🙁

    PS Отправил письмо на Вашу почту…

  • THK

    Вот и новая проблема появилась. 🙁
    Повесил я на девайс датчик, прописал имя, ф-и термостата, все работает ОК.
    Решил добавить еще датчик, в результате новый датчик занял место первого, а первый переместился вниз списка. Получается, что номера датчиков не как не связаны с их адресами и именами и при любом обновлении 1-wire сети придется переконфигурировать устройство. А кто даст гарантию, что во время поиска датчаков (при включении устройства) первый всегда будет первым, а пятнадцатый, так и останеться пятнадцатым?

    Предлагаю номер и имя датчика связать с его адресом, при этом надо предусмотреть возможность удаления датчика из этого списка (в случае замены, например), а вновь обнаруженные датчики добавлять в конец списка или на первое свободное (после удаления) место.

    Можно надеяться на такое обновление? И как скоро это может произойти?

  • Vitel

    Как вы создавали программ,прописывали в ней IP адресс,и создавали веб интерфейс?я начинающий программмер,буду рад принять все советы

  • xtrigger

    Зачетный проект, почти как мастеркитовский MP707, но есть небольшие недоработки в логике термостата, видно человек не сталкивался с системами регулирования.
    Если есть возможность обязательно добавьте гистерезис для управления температурой.
    Ваша схема будет работать хорошо при большой инерционности процесса регулирования, как например водяной многолитровый бойлер или электробогреватель помещения.
    Но если процесс быстрый, то нужна обязательно настройка предела включения температуры и выключения. Попробуйте этим устройством управлять холодильником, он будет включаться и выключаться каждую минуту, что приведет к сгоранию компрессора, штатный механический термостат холодильника имеет разницу (гистерезис)между включением и выключением до 5-7 градусов.
    Для примера подсмотрите как это реализовано в том же мастеркитовском MP707.
    http://s2.ipicture.ru/uploads/20120509/B4wA3U35.jpg

  • alvydas001

    Очень интересный проект. Можно ли увидеть «Исходный код».

  • alvydas001

    Большое спасибо, только ссылка с ошибкой…
    P. S. Исходный код интересно, потому что, я думаю термостат делать с Arduino 🙂

  • rromcic

    Zdrastvui, segodnea nawel vremeni podkliuciuti polucennoie ustroistvo. Krome krasnogo dioda nicio ne rabotaet, ni po lan ni po usb… 4to delati?

  • rromcic

    Sorry vse reshilosi, problema byla v slabom pitanii. Vse rabotaet velikolepno, lexko i bystro nastraivaetsea. Jdem i drughih ustroistv 😉

  • rromcic

    Реально в новой прошивке добавить время и управление выходами по времени?

  • belyay

    Еще вопрос созрел, сколько метров экранированного кабеля можно на термодатчики?

  • belyay

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

  • belyay

    всем доброго дня, столкнулся с такой проблемой когда был подключен только один датчик на проводе в 8 метров то все показывало без проблем, а когда сегодня попытался подключить еще один датик через другой провод (8х0,22 квадрата, по ними же идет и управление светом и боллером через реле, длина провода примерно 12 метром) то не чего не вышло теперь вообще стало показывать 0 датчиков. провод не экранированый. датчик гожий так как я его пока подключил на плату и все показывает.

    • Kibermaster

      ну так это же явно проблема в датчиком. Еще заметил такую хрень: если на датчике ножки не круглые, а прямоугольные, то они очень сильно тупят

  • belyay

    а как бы это точно проверить? может экранированый провод поможет? еще померил напряжение на плате и на конце провода все одинаково и потерь нет. что бы можно сделать и еще не разу не встречал датчики с круглыми выводами. щас жду с китая может от туда такие приедут, посмотрим. еще раз хочу сказать спасибо за устройство. конечно хотелось видеть хотябы на одном канале гесторизист в 5-10 градусов, а то боллер будет часто клацать.

  • belyay

    Решилась проблема с помощью подтяжки резистора на 4к7 на другом конце провода. Теперь все стабильно показывает.

  • rastamanoff

    Прекрасный проект Kibermaster.Спасибо.
    Делаю ремонт,меняю проводку и заодно пробрасываю «витую пару» на точки которыми буду управлять(ел.теплый пол,вентилятор и тд.)Ваше устройство очень подходит под управления этой системой.
    Думаю собирать.Есть вопросы:
    -возможна ли замена узла питания на MC34063 на обычный стбилизатор на КРЕНке 5В ? Есть проблемы с покупкой дроселя,живу в сельськой местности.
    -возможна ли замена узла питания 3,3В (REG1117-ненайти) на например стабилизатор на LM317 ?
    -зачем нужен джампер на 20-ой ноге Atmega32 к TSOP1736 ?
    Перерисовал принципиальную схему в sPlan7,0 поскольку в Diptrace не очень читабельно — есть файл.

    • Kibermaster

      34063 можно заменить на кренку, но она будет сильно греться, из-за этого уменьшение кпд, да и входящее напряжение нужно стараться понизить. Дроссель можно поставить другого номинала (+/- 50%).
      1117 можно заменить на 317, но сам 3,3в стабилизатор можно найти где нить на виеокарте или сист. плате.
      Джампер нужен для отключения управления с пду.

  • rastamanoff

    Добрый день Kibermaster.
    Разбираюсь с МС34063.Ваша схема немного отличается от типовой:-отсутствует резистор 0,3 Ом между 6-ой и 1-ой,8-ой,7-ой ногой;да и диода 1N4007 на входе в типовой схеме нет.Зачем это сделано?
    Дело в том что купил я микросхемы в DIP корпусе.Разрабатываю свою плату.Вот и думаю по какой схеме разводить.
    3,3В все-таки буду делать на LM317(есть в SMD корпусе).
    Есть две видеокарты на разборку,смотрю какие-то дроселя есть на них.

    • Kibermaster

      0.3 можно не ставить, он для защиты от перегрузки.
      диод нужен для защиты от подключения в неправильной полярности(из-за которой микра сгорает).

  • rastamanoff

    Добрый вечер Kibermaster.
    Почти закончил плату.И вот ,при проверке обнаружилось ,что я посадил 9 вывод UNL2003 на +5В (думал управлять реле с катушкой 5В),а не на VCC.Как Вы считаете при таком включении будет работать?

  • rastamanoff

    ???А реле с катушкой на 5В — невключит?

  • rastamanoff

    Та понятно,но неохота перемычку через всю плату делать.Это я в смысле эстетики.
    Спасибо за ответы будем пробовать.

  • rastamanoff

    Добрый вечер.
    Катастрофически нехватает времени все доделать .Сделал плату…паяю.Фотоотчет на моей странице http://rastamanoff.ucoz.ua/index/lan_control_sistema_udalennogo_upravlenija_cherez_lokalnuju_set_internet_i_pdu/0-71

  • rastamanoff

    Добрый вечер.
    При пайке запорол 2N7002.Подскажите можно-ли их заменить и чем.

  • rastamanoff

    На тех что покупал транзисторах надпись К72.Нашел с на платах с надписью 702 он или не он?

  • rastamanoff

    C транзисторами разобрался впаял с маркировкой 702,взяты с материнской платы.Маркиравка W12 тоже они (2N7002) просто разные производители.
    Возник вопрос по диодах.Планирую применять 1N4148.В SMD маркировках особо нерубаю.Как вы считаете пойдут ли вместо diode1812 и diode1206(я так понимаю это размеры)? Ну а на обвеске USB стоят стабилитроны 3,6В ?
    Извените за беспокойство.

    • Kibermaster

      diode1812 — это любые шотки с током не менее 1А, из распространенных — 1N5819, а 4148 не подойдут, возле usb — стабилитроны 3,3в. Диоды на порту С желательно тоже шотки, но можно вообще не ставить.

  • rastamanoff

    Добрый вечер.
    Собрал устройство.Прошил бутлоадер.Включил на плате — не определяет как HID устройство.
    Вверху в коментах люди что-то писали про понижение питания до 4,3В.Целесообразно ли это делать?

  • rastamanoff

    Перемычку поставил.Винда не находит.
    Что интересно у меня USB HID мышка,так вот в момент когда питание с LAN control снимаю мышка на долю секунды подсвечиваться ярче.
    В диспетчере устройств видно только мышку.

  • rastamanoff

    Фото платы http://rastamanoff.ucoz.ua/Lan/plata_V4.gif.
    Та проверял я,и сверял с вашей платой.Сейчас попробую залить LAN_Control.hex без бутлодера через програматор — посмотрю че будет.

    • sv

      Добрый день, уважаемый rastamanoff!Не могли бы поделиться файлом печатки дляLAN Control. Система удаленного управления через локальную сеть, Интернет и ПДУ. Я был бы Вам очень благодарен.

  • rastamanoff

    Иам на плате стабилитрон один неправильно показан.Я впаял его согласно схемы

  • rastamanoff

    Перепайка стабилитрона ефекта не дала.Перепрошивка контролера тоже.
    Фото
    http://rastamanoff.ucoz.ua/Lan/IMG_0231.jpg
    http://rastamanoff.ucoz.ua/Lan/IMG_0229.jpg
    http://rastamanoff.ucoz.ua/Lan/IMG_0233.jpg

    • Kibermaster

      если заливаете без бутлоадера, то юсб работать не будет.
      По плате: во первых, у вас плата флюсом загажена, во вторых, резистор 1.5k на usb у вас точно не 1,5, по-мойму вы все 3 поставили на 68ом

  • rastamanoff

    Вы правы,моя оплошность извеняюсь.Перепаял на 1,5 кОм.
    Но невидит всеравно комп устройство.Завтра попробую еще винду переставить.

    • Kibermaster

      винда врятле здесь виновата. Лучше перепроверьте правильность установки фьюзов, проверьте питание на ножках мк и и тактирование кварта (на XTAL1 должно быть напряжение, равное половине напряжения питания)

  • rastamanoff

    Так и есть нету тактирования ,на XTAL1 — 0,78 В.
    Фузы выставил так —
    http://rastamanoff.ucoz.ua/Lan/untitled.jpg

  • rastamanoff

    Подозрения у меня на кварц,хотя впаивал новый.Заменить нечем,ищу.
    Попробовал кварц на 11,0592 МГц — комп начал отзываться на неизвестное устройство по USB.Но на XTAL1 напруга 0,7В

    • Kibermaster

      работать будет только с кварцем 16мгц.
      Работоспособность еще можно поверить так: включить девайс (к компу можно не подключать). если на 18 ноге появилось примерно +5в, значит он запустился, если нет — искать глюк дальше.

  • rastamanoff

    Поменял кварц — запустился бутлодер.Прошил прошивку.Все гуд.Спасибо за подсказки.
    При первом включении установил перемычку ,светодиод мигнул два раза.Все в порядке.Незнаю джампер бутлодера вытягивать или он остается?
    Связи нет.Командная строка выдает:
    -статистика Ping для 192.168.1.170.Пакетов отправлено =4 получено =0 потеряно =4 .100% потерью.
    Еще раз перепроверяю все соединения.

  • rastamanoff

    Спешу сообщить связь есть все запустилось.Спасибо большое kibermaster.
    Будем тестировать,о результатах отпишусь.

  • Владимир Слюсарчук

    Здравствуйте kibermaster
    я собрал ваше устройство управления нагрузками через сеть
    но оно у меня не заработало . Процесор отзывается , светодиод включается на 1сек. Но по сети не видимо на пинги не отзывается. Светодиоды из ENC28J60 светят при подключеном кабеле сети зеленый светит постоянно желтый мигает когда в браузере даю запрос на любой локальный ip адрес. без ENC28J60 процесор ведет себя точно также. на плате нашел один косяк — неправильно развел дорожки около сетевого гнезда и все
    помогите советом где ещё капнуть

    • Kibermaster

      на фотке, которую вы прислали мне на имейл(хотя надо было загружать сюда), нет ethernet модуля так как его компоненты разведены на плате. Покажите хотя бы схему, чтобы я знал, где копать.
      usb загрузчик хоть работает?

  • Владимир Слюсарчук

    загрузчикк работает но не знаю сколько должна длиться прошивка через ХИД у меня — несколько секунд

  • Владимир Слюсарчук

    потом если считать код из МЕГИ32 то там много свобоного места

  • Владимир Слюсарчук

    на почту послал

  • Владимир Слюсарчук

    Вопрос а какие данные хранятся в 24С64

  • Владимир Слюсарчук

    вот фотка моей платы на Радикале

    http://s019.radikal.ru/i613/1212/4d/13f22dee6aaf.jpg

  • Владимир Слюсарчук

    Единственное что ds18b20 и транзисторы 2n7002
    Я не ставил

  • Владимир Слюсарчук

    Схема. из даташита и еще не знаю насчет резистора RBIAS какой он точно должен быть.
    может ещё MOSI и MISO местами поменять хотя это и не правильно

  • Владимир Слюсарчук

    Кстати трансформатор называется amfenol rj45trafo-lt

  • Владимир Слюсарчук

    заработало. но как прошить новой прошивкой которая выложена сейчас на сайте не знаю (прошивал старой когдато скачал )там нет файла lan_control.hex или я чего-то не знаю

  • Владимир Слюсарчук

    сильно греется 34063

  • Владимир Слюсарчук

    нашел ,перешил. появился термостат.

  • rromcic

    Добрый вечер. Вот пришла зима и время потестировать устройство на газовом котле и сразу столкнулся с проблемой — отсутствие «гесторизиста» хоть на 1 градус, а то при достижении минимальной температуры (например 20 градусов) реле включается и сразу через 5 секунд когда температура 20,10 градусов выключается и так шелкает до бесконечности. Просьба добавить гесторизист или просто отрезать данные за запятой на датчике температуры, думаю никому не нужны, в таком случае реле будет работать пока не достигнет 21 градуса. Также происходит и с бойлером. Спасибо!!!

    • Kibermaster

      Я постараюсь до понедельника убрать десятичные с термостата. Прямо сейчас не могу так как времени в обрез.

      • rromcic

        Спасибо буду ждать, думаю полезно и для других.

        • Kibermaster

          Исправил, проверьте плиз.

          • rromcic

            Спасибо огромное, вечером попробую отпишусь.

            • rromcic

              После прошивки как отображалась температура с дробью так и отображается 🙁

              Количество датчиков: 1
              1. camera: +28.40 °C

              • Kibermaster

                она то отображается, но на термостат не влияет

                • rromcic

                  Давай обсудим выше описанную мной ситуацию. У меня стоит на минимальных 20 градусов. Если температура в комнате 18 — реле включается пока температура подымется до 21 градусов. После этого когда падает на 20.95 включается, 21 выключается. Как убить данныч вопрос?

                  • rromcic

                    Может не резать после запятой а округлять?

                  • rromcic

                    «После этого когда падает на 20.95 включается, 21 выключается. » правильно было чтоб включалось на 20.00

                    • rromcic

                      А самое правильное будет добавление функции гесторизиста. Поставил термостат на Т 20 градусов. Гесторизиста = x, (пример х ставим 1). А термостат настроить совсем по другому алгоритму:
                      Реле ON при Т-х (19 градусов) и держит ON до Т+х (21 градусов) и переходит в OFF пока не будет опять 19 градусов.

                      Если поставить х = 0.5 градусов то реле включится на 19.5 градусов, отключится при 20.5 вот так и будет поддержана температура 20 градусов

                    • Kibermaster

                      На счет гистезиса, память атмеги полностью забита, больше туда ничего не влезит.
                      Я постараюсь на этой неделе проверить термостат, просто последний девайс отдал другу так как он мне сейчас не нужен.

                    • rromcic

                      Насчет памяти могу уверенно сказать что у кого динамичкский ИП используют сервиса DYNDNS или подобных. А насчет проверки давай по моему примеру и я отвечу как реагирует, увидите что не есть OK. Кау держать 20 градусов в доме?

                    • rromcic

                      У меня на момент радио термостат. Задаю 20 градусов, он включает котел в 19 и отключает при 21. Такой алгоритм был бы правильным и на вашем устройстве. Алгоритм с верхними и нижними как оно сейчас нефункционален.

  • rromcic

    Либо в термостате на один выходящий канал восможность задать 2 параметра температуры, нижние и верхние.

    Извините за столько сообщений все идеи приходят не сразу 🙂

    • Kibermaster

      ок, я попробую сделать еще одну версию прошивки с гистезисом.

      • rromcic

        Еще раз спасибо за быстрый отзыв и решение проблемы!!! Теперь для нижних работает гистезис +1 градус. Если стоит на минимальных 20 градусов, то выход включается когда температура падает под 20 градусов и выключается когда достигает 21 градуса. Теперь уютно в доме температура всегда между 20-21 и без постоянных включений/выключений. Будем ждать тоже самое и для верхних, для включения кондиционера на лето.
        И еще заметил что температура 20.05 отображается не верно как 20.5, не критично но можно исправить косяк в следущей прошивке.

        Спасибо за прекрасное устройство для автоматизации дома!!!

        • rromcic

          «И еще заметил что температура 20.05 отображается не верно как 20.5, не критично но можно исправить косяк в следущей прошивке.»

          Также температура 20.00 отображается как 20.0, где-то он режит первый нолик после «.»

  • Владимир Слюсарчук

    доброго времени суток
    скажите пожалуйста , в каком компиляторе вы делали вашу прошивку и могли бы вы добавить возможность использовани выводов микроконтроллера 2,3,4 в качестве выходов

    спасибо

    • Kibermaster

      Использовались последние версии AVR Studio 4 и тулчейна.
      Переделать сейчас не могу, так как времени нет, но разрабатываю устройство, у которого будет возможность изменять количество входов и выходов

  • Владимир Слюсарчук

    когда ждать новое устройство и будет ли оно просто в изготовлении как предыдущее

    • Kibermaster

      готово будет месяца через полтора. Оно в изготовлении сложней, но я планирую заказать платы на заводе.
      И пишите через reply, иначе комменты буду удалять

  • Aleksandr

    Всем привет!!!
    Здравствуй Kibermaster.
    Заинтересовался Вашим проектом его функционалом и хотелось бы еще прояснить такую вещь, а можно Вашим девайсом включать удаленно через инет, например сетевой фильтр, компьютер? И как, это реализовать?

    • Kibermaster

      Нужно подключить выход устройства к кнопки включения компа или фильтра и потом через веб-форму включить и выключить соответствующий выход

  • wergud

    Интересная штука, намереваюсь ее собрать, а брата напрягу , чтоб он реализовал это на андройде с возможностью отправки и принятия смс команд , может что и получиться.

  • wergud

    Вы какой прогой рисовали схему?
    DipTrace 1.4.
    Просто у меня с ней не открывается , пишет некорректный файл

  • Владимир Слюсарчук

    уважаемый автор

    я переделал немного вашу программу так чтобы можно было испоьзовать все восем выходов порта А индикаторный светодиод перенес на другой порт

  • wergud

    Совсем запутался в комплектующих*) Где можно посмотреть список?, сижу тут ищу на еbay запчасти.

  • Vitalij

    Собрал ваше устройство. Автору большое спасибо! Есть несколько вопросов: Гистерезис для отопления лучше сделать изменяемым хотя бы в пределах от 0 до 5 градусов что бы котёл отопления не часто срабатывал(подобрал экспериментально, второй год работает самодельный термостат на отоплении дома). Как можно включить пароль на устройстве что бы заходить в управление устройством не через сайт кибермастера, а с любого компьютера через пароль хоть во внутренней сети или через интернет( если у меня постоянный IP)

  • Владимир Слюсарчук

    Еще раз здравствуйте уважаемый автор
    хочу еще раз поднять вопрос о защите доступа к устройству . хоть там и осталось всего 120 байт sram но все же как бы туда интегрировать например .HTACCESS

    • Kibermaster

      сорри, но как я и писал, памяти не достаточно чтобы сделать какую либо защиту. Разве что статический пароль, но толку от него как то мало.
      Да и сейчас я разрабатываю девайс с нормальной защитой. Только вот у меня постоянно на счет него появляются новые идеи, которые я в нем воплощаю. Поэтому, хз когда будет готово.

  • Владимир Слюсарчук

    а если перенести устройство на atmega64a

    • Владимир Слюсарчук

      а как в принципе (теоретически ) впихнуть .htaccess в микроконтроллер ? читал что он кладется в область (папку) которая должна быть защищена а тут я к сожелению не могу монять куда и как это вставить . может намекнёте как ?

      • Kibermaster

        .htaccess, насколько знаю, вообще используется для серверов на апаче.
        Файл впихнуть не получится. Дело в том, что сами страницы на девайсе не хранятся, они генерируются «на лету».

    • Kibermaster

      Если буду переписывать под другой мк, тогда разработка моего нового девайса вообще затянется на неопределенный срок

  • serges

    Извините за бестолковость, но уважаемый Kibermaster, Вы пишите в самом начале, что не можете выложить исходники, но в файлах к статье в архиве все есть!
    И проект компилируется…
    Очень прошу, объясните о каких, в таком случае, исходниках идет речь.
    Я почему спрашиваю? Хочу контроллер АТмега64 поставить в TQFP.

  • serges

    Здравствуйте!
    В скачанном мною архиве нет файлов boot.bat и файла прошивки LAN_Control.hex.
    Я что — то опять не так понял?
    Помогите, пожалуйста!

  • serges

    Спасибо!
    Опять просмотрел…

  • klyops

    Уточните пож-та:
    — какое напряжение можно коммутировать на 7 выходящих каналах (Постоянное 12Вольт можно?,а переменное 220Вольт?)?
    — каково питание LAN Control (от сети LAN)?

    • Kibermaster

      Напряжение на выходах равно напряжению питания устройства, тоесть, в данном случае от 6 до 30 вольт постоянного тока. Для коммутации переменного 220 советую использовать реле, обмотка которого подключается к одному с выходов, а управляющие контакты уже коммутируют 220В

  • klyops

    Уточните еще пож-та:
    1. Возможно ли как то поднять ток коммутации с 500мА, скажем до 2 или 3 А либо это делать через реле как 220В?
    2. Куда подключать коммутируемое («+» надо подключит к VCC, а «-» к одному из каналов)-> т.е. коммутация идет по минусу, верно?
    3. Импульсный стабилизатор MC34063A, используемый для питания всего устройства надо как-то настраивать (подкручивать) или он автоматически 6-30 преобразует в 5 Вольт?
    4. Не совсем ясен механизм настройки пульта с RC5?
    5. Как подключаются термодатчики и какие сюда подходят?
    Спасибо за ответы)

    • Kibermaster

      1. Можно вместо одной 16-пиновой микры поставить 7 транзисторов с нужной мощностью, но реле здесь как то лучше.
      2. Да, коммутация минусом.
      3. Номинал задающий резисторов подобраны именно под 5В, поэтому настраивать не нужно.
      4. На пульте есть цифровые кнопки 0-9. Нажимаете 1, изменяется первый выход, нажимаете 2 — второй, и так все 7 выходов.
      5. DS18B20, у них 3 ноги, на четвертой картинке указано, какой куда подключать, подключаются все параллельно

  • klyops

    Добрый день.
    По поводу подключения дополнительного DS18B20 к U4 все понятно, но куда подключать основные уточните пож-та по ножкам (GND, DQ, VCC) и появятся ли они автоматом в web мордашке?

  • klyops

    ок, но куда подключать то?

    • Kibermaster

      кого именно? в статье же написано что и куда.
      Пишите через Reply, иначе буду удалять коменты

      • klyops

        Я извиняюсь, но не совсем понял куда подключаются DS18B20.
        То ли все к U4, то ли основные куда то, а дополнительные к U4, либо основные к U13, а дополнительные к U4, либо это как то в связке с U12 (там же 4й входящий). Ведь точно из статьи этого не видно. Извините, что отвлекаю на себя время, но мне это достаточно важно…

        • Kibermaster

          На DS18B20 есть 3 пина, VCC, DQ и GND,, все они подключаются к разъему U4. Если у вас несколько датчикво, то все они подключаются так же параллельно. Советую почитать про microLAN

  • romankorotkix

    Здравствуйте уважаемый Kibermaster,Не сочтите за наглость а возможно чтоб вы сделали версию прошивки где:
    при входе на страницу три пункта меню.
    1.(состояние) сразу показывало состояние входящих исходящих каналов.
    2.(управление)включение выключение исходящих каналов.
    3.(настройки)

  • romankorotkix

    XControl коммерческий проэкт, нет схемы и платы.А LAN Control доступный для повторения.

  • lifesasa09

    Здравствуйте.У вас очень хорошая работа получилась, восхищаюсь!
    Подскажите, чем Вы пользовались для создания проекта? Могли бы Вы объяснить какие файлы за что отвечают? AVR начал изучать недавно.

  • lifesasa09

    Мне нужно добавить управление реле в проект. Это сложно сделать?

  • janlam

    Добрый день,

    Собрал сие чудо девайс. Зашил буутлоадер в мегу32. Выставил фюзы как в коментариях видел в понипрог по картинке. Вставляю микруху в девайс ставлю перемычку, подключаю УСБ. Включаю питание жёлтый светик не дёргаетса. В устройствах УСБ появляетса неопознанное устройство. 2 квартса поменял ставлю новые, без изменений. Проверил на сопли, не обнаружено. Прозванивал вроде всё как надо. Куда копать дальше немогу понять. Пробывал прошивать повторно, шёт всё как положено. Пртошиваю тоже с квартсем на 16МХг. Помогите пжлста на что ещё обратить внимание. с питаниями вроде всё впорядке. настораживает питание 2.8 вольта которое идёт на УСБ. И шюпаю квартс тестером 0,7 вольта. Осцилограф не дёргаетса на кристале. То есть он не включаетса, не могу понять по какой причине. На 18ую ногу 5 волть приходит. Прочитал все комменты не нашол ответ с моей проблемой.

  • janlam

    В понипрог выставил как на картинке в одном и комментариев, на которую ваш комментарии был что фюзы выставлены правельно.

    • Kibermaster

      Если на кварце нет сигнала, тогда или фьюзы не правильно стоят, или проблема с кварцем/микроконтроллером.
      Пишите через ответ, иначе комменты буду удалять

      • janlam

        Фюзы выставляю так> http://rastamanoff.ucoz.ua/Lan/untitled.jpg
        Как я могу проверить внутрнний кварц? Снять микруху, на макетке дать 5 волть на неё и на хтале должно что то проишодить?

      • janlam

        Ставлю микруху в Atmel Fusebit Doctor. Все фюзы сбивает на заводские и всё стирает. Затем подключаю программатор, зашиваю флeш буутлоадером. Затем выставляю фюзы, прошиваю. Всё прога не видит микруху. Вешаю кристал на 12 и 13 ногу, естественно кандёры на другой стороне на землю. Программа видит процессор. Соответственно микруха шётса правельно и переключаетса на внешний кварц. С микрухой всё вроде как впорядке так как доктор делает своё дело. Кварцы в девайсе поменял уже три раза все три раза ставил новые, благо в наличии 10 штук. Ну что то не хочет заводиться агрегад. В виндовсе пишет неопознанное устройство и хоть тресни. Вообше не понимым в чём трабла. У кого какие мысли есть?

      • janlam

        Ну ни в какую не идёт.. Доктором возвращаю микруху на заводские установки. Фюзы всё возвощается. Прошиваю, выставлаю фюзы всё как положено. Проделывай данную операзию 5 раз. Поменял ешё раз кварц на девайсе. Вставляю микруху в девайс и всё по прежнему не известное устройство. На Хтал1 0,801 В и на Хтал2 0,801 В. Уже голова разрываета, вообше не пойму в чём загвоздка.

  • janlam

    Повесил датчики.Полёт нормальный. Автору респект. Есть вопрос. Меняю в маин.с ип так как у меня рутер на 0.ххх настроен. Ставлю ИП 192.168.0.50, так же ставлю рутер 192.168.0.1. Компилирую в АВР студио 4. Заливаю прошивку. А он мне всё равно каким то образом втыкает 192.168.1.170. Или у меня компилятор не то что то делает? Копилятор пишет вроде всё окей. Только один варнинг игнорированный. Чего не так прикручиваю не понимим. Поможете? Мож не ту студию юзаю? Со студией на вы, так что попрошу не пинать сильно.

  • sv

    Добрый день,уважаемый Kibermaster!
    Загорелся повторить созданное Вами утройство. Читая коментарии понял что, существует печатная плата созданная в Sprint- Layout и где отсутствуют SMD элементы, не могли бы поделится файлом., а также очень трудно разглядеть принципиальные схемы. Не могли бы предоставить схемы в том формате, в котором они создавались. Буду Вам очень признателен.

  • sv

    Извените, пожалуйста.
    Это выложил rastamanof, если конечно опять не ошибся.
    Теперь обращаюсь к rastamanoff:»Не могли бы Вы, поделиться файлом печатки?»

  • sv

    Я думаю rastamanoff здесь появится.
    Где можно узнать почту его?

  • danis

    Добрый день! Уважаемый Kibermaster, не могли бы Вы подсказать как правильно прошить МК? Сначала загрузить bootloader.hex при заводских фьюзах МК, а потом установить фьюзы DA и 3F. Или как? И ещё биты должны быть с инверсией (ponyprog) или прямые (uniprof). Спасибо

  • danis

    Добрый день! Начну с первого. Бутлоадер прошил. компьютер нашёл новое HID устройство и установил драйвера. Тут всё ОК. Далее поставил перемычку и пытался прошить МК при помощи трё файлов bootloadHID.exe, boot.bat файл и командами и LAN_Control.hex. Открылось чёрное окно и бегали цифры как у вас написано только не пару минут, а где то секунд 10 максимум, потом окно закрылось. Я подумал почему так быстро, дальше я снял перемычек и подал питание светодиод загорелся в этот момент я назад поставил перемычек и светодиод опять моргнул два раза.
    По Вашим записям вроде всё верно. Но почему-то устройство не пингуется. Что не верно? Модуль, ENC28J60 покупал готовый. Но по ip 192.168.1.170 устройство не отвечает. Помогите пожалуйста что дальше и как быть. Хотел также спросить перемычку потом снять? Или снимаешь то светодиод опять один раз моргает. Похоже что у меня не загружается прошивка программы. Что я делаю не правильно. Заранее спасибо.

  • danis

    Здравствуйте уважаемый Kibermaster!
    Хотел у вас про консультироваться. Собрал две платы, подключил к локальной сети при этом на одной плате сменил ip Адрес. Вроде всё нормально, но потом я заметил что поочерёдно платы начали пропадать. Поставил каждую плату на ping и действительно поочерёдно платы теряют пакеты. В чём проблема подскажите пожалуйста. И как её исправить. Просто мне очень нужно чтоб несколько плат находились в одной локальной сети.

  • danis

    Поменял mac адрес всё заработало. Спасибо.

Leave a Reply