Страница 1 из 2

Подключение реле нагрузки и датчиков 18b20 с помощью Arduino

Добавлено: Вс апр 30, 2017 1:58 pm
Neocivic
Специалисты помогите с простым для вас вопросом:

Есть связка Mega2560 + Ethernet Shild + реле + датчик температуры 18b20 (подключены к роутеру)
Настроил кнопки в МЖД и реле на включение выключение нагрузок.
Температуру могу видеть через броузер, но ни как не могу подключить к МЖД, чтобы вообще было видно, а так же с определённой периодичностью обновлялась. В этом и суть вопроса, на форуме не смог найти. Прошу помощи! Скетч стандартный из примера.

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 5:30 pm
Neocivic
Люди прошу помощи!

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 5:35 pm
Teo
Здесь обсуждали похожую проблему
viewtopic.php?f=8&t=3877

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 5:38 pm
serghei
С разбегу код не найду, но тема уже всплывает четвертый раз. Самое простое - запустите АМС. Там это все уже есть.

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 5:49 pm
Neocivic
Teo писал(а):Здесь обсуждали похожую проблему
viewtopic.php?f=8&t=3877
Спасибо! Начал штудировать, результат сюда отпишу, может другим поможет!

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 5:55 pm
Neocivic
serghei писал(а):С разбегу код не найду, но тема уже всплывает четвертый раз. Самое простое - запустите АМС. Там это все уже есть.
АМС попробовал, интересная и красивая программа. Установил, но к МЖД не подключал, использовал как самостоятельный сервер, показалась медленной. Ардуино хочу использовать исключительно, как контроллер датчиков.

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 6:25 pm
serghei
У АМС есть очень существенный плюс - он полностью автономен. А свое состояние просто сливает в МД. Никого не хочу агитировать. Но кажется проще годами держать включенный контроллер, чем боятся когда выключат свет и большой комп отвалится. Медленно работает вывод в браузер. А сам АМС отрабатывает код мгновенно.

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Вс апр 30, 2017 7:10 pm
Neocivic
serghei писал(а):У АМС есть очень существенный плюс - он полностью автономен. А свое состояние просто сливает в МД. Никого не хочу агитировать. Но кажется проще годами держать включенный контроллер, чем боятся когда выключат свет и большой комп отвалится. Медленно работает вывод в браузер. А сам АМС отрабатывает код мгновенно.
Тоже вариант, почему нет!

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Пн май 01, 2017 12:27 pm
Neocivic
Прошу помощи! Проштудировал указанную выше тему, там обсуждают подключение реле, но с этим как раз проблем нет, у меня реле работают. Интересует же - как подключить к МЖД датчик температуры, который в свою очередь подключен к контроллеру Ардуино. При прямом обращении через браузер по ссылке:

http://192.168.1.37/getdev?=T0

вижу такой результат:

T0:28AF67FE05000077:21.37; Где последние цифры - это показания датчика температуры. Как это прикрутить к МЖД, чтобы температура отображалась на сцене?

Re: Подключение реле нагрузки и датчиков 18b20 с помощью Ard

Добавлено: Пн май 01, 2017 6:34 pm
serghei
Вот параллельно идут две абсолютно одинаковые темы и просто руки опускаются ((.А помочь хочется, потому что сам пол года " въезжал" в тему. Чтобы передать любое число из любого скетча для ардуины с шилдом надо дописать в скетч процедуру передачи запроса
СпойлерПоказать

Код: Выделить всё

// отправляем значения на сервер majordomo

//значение напряжения
sprintf(buf, "GET /objects/?object=sensorVolt&op=m&m=eleChanged&t=%0d.%d HTTP/1.0", (int)Vrms, abs(Vrms));
//sprintf(buf, "GET /objects/?object=sensorVolt&op=m&m=eleChanged&t=%d HTTP/1.0", Vrms);
sendHTTPRequest(); 

//значение тока
sprintf(buf, "GET /objects/?object=sensorAmper&op=m&m=eleChanged&t=%0d.%d HTTP/1.0", (int)Irms, abs(Irms));
sendHTTPRequest(); 

//значение мощности
sprintf(buf, "GET /objects/?object=sensorVatt&op=m&m=eleChanged&t=%0d.%d HTTP/1.0", (int)apparentPower1, abs(apparentPower1));
sendHTTPRequest(); 
//delay(3000);  
Вместо Vrms подставьте свою температуру. Но так будет передоваться только целая часть. Чтобы передать дробную часть , её надо умножить на 100 , а потом на стороне МД разделить на 100. Полный код как пример смотрите ТУТ . Ну и дальше по тексту прием на стороне МД