HTML код

Использование протоколов Modbus, SPI, I2c и прочих, проблемы и решения
Ответить
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

HTML код

#1

Сообщение Max » 05.10.2015{, 13:41}

Господа! подскажите HTML код символа лампочка "вкл" и "выкл", или создание пиктограммы типа лампочки, индикатора, или чего то подобного. Может кто писал код с индикацией на HTML странице всевозможных индикаторов с двумя состояниями для управления булеановскими командами...

keeper1978
Сержант
Сообщения: 128
Зарегистрирован: 26.09.2015{, 19:57}
Репутация: 2

HTML код

#2

Сообщение keeper1978 » 05.10.2015{, 16:54}

тоже интересует
Последний раз редактировалось keeper1978 05.10.2015{, 16:54}, всего редактировалось 1 раз.

XENOMAN
Рядовой
Сообщения: 33
Зарегистрирован: 05.10.2015{, 18:03}
Репутация: 2

HTML код

#3

Сообщение XENOMAN » 05.10.2015{, 18:42}

Для Ethernet шилда или в общем?

Я на визнете в первое время делал так. Создавал вэб сервер, добавлял вход (IMG), на этот вход через сравнение подавал адрес нужной картинки, в теле страницы вписывал <img src="(IMG)">. Топорно, но работает. Щас перешел на OpenHAB.

Изображение
Последний раз редактировалось XENOMAN 05.10.2015{, 19:49}, всего редактировалось 1 раз.

Oleg1345140
Лейтенант
Сообщения: 536
Зарегистрирован: 06.09.2015{, 07:09}
Репутация: 1
Откуда: Курган

HTML код

#4

Сообщение Oleg1345140 » 05.10.2015{, 19:11}

XENOMAN писал(а):Я на визнете в первое время делал так. Создавал вэб сервер, добавлял вход (IMG), на этот вход через сравнение подавал адрес нужной картинки, в теле страницы вписывал <img src="(IMG)">. Топорно, но работает. Щас перешел на OpenHAB.
На сегодняшний день единственный возможный вариант.

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

HTML код

#5

Сообщение Max » 05.10.2015{, 19:53}

XENOMAN писал(а):Для Ethernet шилда или в общем?Я на визнете в первое время делал так. Создавал вэб сервер, добавлял вход (IMG), на этот вход через сравнение подавал адрес нужной картинки, в теле страницы вписывал <img src="(IMG)">. Топорно, но работает. Щас перешел на OpenHAB.
Да, для спарка шильд+MEGA2660. Спасибо за подсказку, не догадался, что так можно.
Про OpenHAB (слышал про него) вопрос. Где про него толково на русском прочесть? Желательно с практическим воплощением.
По IP как сделали? На "белый" IP перешли, или удалось на "сером" IP выполнить проект? Вот думаю, как не переходя на "белый" IP сделать веб-сервер...

Аватара пользователя
yopopol
Рядовой
Сообщения: 91
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

HTML код

#6

Сообщение yopopol » 06.10.2015{, 18:26}

да,да,да!!!!
Очень хотелось бы увидеть примеры с Openhab/
И про настройку его же. 
В инете есть примеры с готовым кодом для ардуины,но тупо копировать не хочется.Вот  если бы Вы нас просветили,показали что,да как...

XENOMAN
Рядовой
Сообщения: 33
Зарегистрирован: 05.10.2015{, 18:03}
Репутация: 2

HTML код

#7

Сообщение XENOMAN » 06.10.2015{, 22:34}

Вкратце: все работает через HTML запросы. Например для обычного переключателя:

На карте(sitemap) создаете категорию:



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

sitemap test label="TEST"
{
    Frame {
       Group item=groupTest label="TEST" icon="firstfloor"
    }
}
Создаете объект(item):



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

Group All
Group groupTest       (All)

Switch ARDUINO_PIN       "PIN_LED"      (groupTest)
 

И затем создаете правило(Rule) для этого объекта:

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

rule "LED_ON"
     when  
         Item ARDUINO_PIN received command ON
     then
         sendHttpPutRequest("http://192.168.0.101/LED/on/")
     end
      
rule "LED_OFF"
     when  
         Item ARDUINO_PIN received command OFF
     then
         sendHttpPutRequest("http://192.168.0.101/LED/off/")
     end

Как видно из правила, оно посылает put запрос ардуинке при смене статуса объекта.

На ардуинке соответственно создан веб сервер с соответствующими страницами:

Изображение

Аватара пользователя
yopopol
Рядовой
Сообщения: 91
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

HTML код

#8

Сообщение yopopol » 07.10.2015{, 23:36}

а как принимать данные от датчиков или  данные о состоянии LED?

XENOMAN
Рядовой
Сообщения: 33
Зарегистрирован: 05.10.2015{, 18:03}
Репутация: 2

HTML код

#9

Сообщение XENOMAN » 08.10.2015{, 12:57}

Создаете объект:



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

Number Temp_TEST "Temperature [%.1f °C]" { http="<[http://192.168.0.101/SENSORS:60000:REGEX(.*?<TEMP>(.*?)</TEMP>(.*))]" }
Тут Number - тип(число), Temp_TEST - название(item name), "Temperature [%.1f °C]" - Отображаемый текст и единица измерения(то как объект будет называться в GUI).

{ http="<[http://192.168.0.101/SENSORS:60000:REGEX(.*?<TEMP>(.*?)</TEMP>(.*))]" } - собственно запрос переменной. Он вызывает страницу, и делает выборку регулярного выражения находящегося между тэгами <TEMP></TEMP>.

Далее не карту сайта добавляете:



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

Text item=Temp_TEST
В итоге получите что-то вроде этого:

Изображение

Далее переходим к настройке ардуины. Как я уже писал выше нам нужно чтобы наша переменная находилась между тэгами <ТЭГ></ТЭГ> т.е. тэги могут быть любыми, ну кроме тех что используются в html, <body> например).

Логично было бы в теле страницы вписать:

Изображение

Но, если посмотреть в скетч мы увидим:



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

_tspWebServer_client.println("<TEMP>");
_tspWebServer_client.println(_dht1t);
_tspWebServer_client.println("</TEMP>");
_tspWebServer_client.println("");
В браузере все будет как надо, но OpenHAB воспримет это как:


<TEMP>
значение
</TEMP>
Т.е. после обработки, перед переменно и после нее будет пустая строка.
В таком виде OpenHAB не воспримет данные.
Нужно привести их к виду:


<TEMP>значение</TEMP>
Решается это вот такими костылями:

Изображение

Ну и в итоге:

Изображение

p.s. Частота обновления переменной - раз в минуту, можно менять используя правила.
p.p.s. Это один из множества способов которым пользуюсь я, OpenHAB - очень гибкая среда, всё то же самое можно организовать при помощи MQTT, Modbus и пр.
Последний раз редактировалось XENOMAN 08.10.2015{, 17:19}, всего редактировалось 1 раз.

Аватара пользователя
yopopol
Рядовой
Сообщения: 91
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

HTML код

#10

Сообщение yopopol » 12.10.2015{, 20:48}

Спасибо большое за примеры.Интересовал именно вариант по локальной сети.А Openhab мне нравится своим интерфейсом.))

Добавлено (10.10.2015, 12:55)
---------------------------------------------
Я опять к Вам за помощью.Не могу установить Openhab, точнее устанавливаю,но не запускается.Если не сложно ,мини инструкцию по установке,сделайте пожалуйста.Уверен она многим пригодится.

Добавлено (10.10.2015, 13:06)
---------------------------------------------

Добавлено (11.10.2015, 23:41)
---------------------------------------------
это я рукожоп,тут с компом наковырял,вот и не запускалось )))
всё заработало,огромное спасибо за помощь

Добавлено (12.10.2015, 20:48)
---------------------------------------------
Еще раз привет.Подскажите пожалуйста как сделать реальный статус состояния выхода?
т.е. можно сделать страничку с статусом состояния выхода на ардуинке,но как привязать его к положению кнопки?
Последний раз редактировалось yopopol 10.10.2015{, 13:06}, всего редактировалось 1 раз.

XENOMAN
Рядовой
Сообщения: 33
Зарегистрирован: 05.10.2015{, 18:03}
Репутация: 2

HTML код

#11

Сообщение XENOMAN » 13.10.2015{, 13:21}

Что-то не очень понял чего Вы хотите, чтобы Кнопка следила за состоянием выхода Ардуины?
С возможностью управления или без?

Привязать кнопку к состоянию выхода - то же самое что и получать переменную. Просто вместо цифр будет ON или OFF.

В общем item выгляди так:



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

Switch     ARDUINO_PIN       "PIN_LED"      (groupTest)    { http="<[http://192.168.0.101/:60000:REGEX(.*?<PIN>(.*?)</PIN>(.*))]" }
Но в отличии от переменных тут надо отправлять конкретно значение ON или OFF.

Изображение

Если же Вам не нужно управлять выходом, а только выводить его значение, используйте item Contact вместо Switch, при помощи него можно выводить значение вроде "Open", "Closed", а не только 1 или 0.

p.s. и да, как я уже писал выше частота обновление - 1 раз в минуту.
Последний раз редактировалось XENOMAN 13.10.2015{, 13:27}, всего редактировалось 1 раз.

Аватара пользователя
yopopol
Рядовой
Сообщения: 91
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

HTML код

#12

Сообщение yopopol » 13.10.2015{, 22:06}

Еще раз спасибо большое за разъяснения.Нужно было привязать кнопку к состоянию выхода.

З.Ы. Ваши "костыли" перекостылил: переменную "ON-OFF" подаю сразу на вход странички,а уже в Arduino IDE вручную объединяю строки, 
 получается  :  Код_tspWebServer_client.println(("<PIN>")+(_gtv5)+("</PIN>")); когда на одной странице 6-10 переменных, в Flprog выглядит както красивее

worders
Рядовой
Сообщения: 3
Зарегистрирован: 05.12.2015{, 18:19}
Репутация: 0

HTML код

#13

Сообщение worders » 05.12.2015{, 18:29}

Есть предложение отдельно создать раздел по FLProg и OpenHab

Аватара пользователя
Сергей
Лейтенант
Сообщения: 578
Зарегистрирован: 31.08.2015{, 15:06}
Репутация: 6
Имя: Сергей
Контактная информация:

HTML код

#14

Сообщение Сергей » 06.12.2015{, 13:16}

worders писал(а):Есть предложение отдельно создать раздел по FLProg и OpenHab
предложения в "Новый функционал"на голосование.

viga5
Рядовой
Сообщения: 54
Зарегистрирован: 06.09.2015{, 09:59}
Репутация: 0
Имя: Виталий
Контактная информация:

HTML код

#15

Сообщение viga5 » 06.12.2015{, 13:43}

C OpenHab не работал не знаю
Себе нашел http://majordomo.smartliving.ru/
Там  легко сделать по нажатию кнопки на arduino меняется лампочка на экране и в меню.
2167719.jpg
 
6851790.jpg
С arduino отправляеться простой GET .

Аватара пользователя
Skull
Лейтенант
Сообщения: 423
Зарегистрирован: 08.09.2015{, 16:18}
Репутация: 1
Откуда: Мариуполь

HTML код

#16

Сообщение Skull » 06.12.2015{, 20:06}

Во! И по Алисе ветку пожалуйста откройте, у меня тоже Majordomo.

Naladchik
Лейтенант
Сообщения: 374
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 30
Откуда: Новосибирск
Имя: Павел

HTML код

#17

Сообщение Naladchik » 13.12.2015{, 12:28}

Господа, а мог бы кто нибудь выложить парочку более развернутых, чем в видеоуроках, примеров, где ардуинка в качестве веб-сервера или веб-клиента? Хотелось бы понять, насколько сложно это освоить неподготовленному человеку но имеющему желание. Буду благодарен.
Win7-64. FLProg Portable.
Изображение

kossn93
Сержант
Сообщения: 151
Зарегистрирован: 05.09.2015{, 14:41}
Репутация: 0
Откуда: Харьков

HTML код

#18

Сообщение kossn93 » 13.12.2015{, 12:42}

Naladchik писал(а):Господа, а мог бы кто нибудь выложить парочку более развернутых, чем в видеоуроках, примеров, где ардуинка в качестве веб-сервера или веб-клиента? Хотелось бы понять, насколько сложно это освоить неподготовленному человеку но имеющему желание. Буду благодарен.
+100 тоже с удовольствием бы посмотрел.

Аватара пользователя
yopopol
Рядовой
Сообщения: 91
Зарегистрирован: 06.09.2015{, 23:59}
Репутация: 0

HTML код

#19

Сообщение yopopol » 14.12.2015{, 13:32}

подгружать возможно.есть примеры на форуме про Алису....там мегасервер какой то мощный
,с SD картой работает.Но Mega 2560 както тормозит уж очень сильно.
А в Flprog пока не реализовано

worders
Рядовой
Сообщения: 3
Зарегистрирован: 05.12.2015{, 18:19}
Репутация: 0

HTML код

#20

Сообщение worders » 15.12.2015{, 21:59}

Подскажите как настроить на FLPROG передачу по MQTT ?
Спасибо!

Добавлено (15.12.2015, 21:59)
---------------------------------------------
XENOMAN писал(а):С возможностью управления или без?
Подскажите пожалуйста как сделать с возможностью управления?
Спасибо!

Ответить

Вернуться в «Протоколы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей