Считывание датчиков из Ардуины!
Модератор: immortal
-
- Сообщения: 97
- Зарегистрирован: Сб янв 23, 2016 3:57 pm
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Считывание датчиков из Ардуины!
Здравствуйте!
Знаю, что подобных вопросов поднималось много, на прошу как для ребенка, по простому помочь, подсказать: как считать показания датчиков ДХТ (температура, влажность) из Ардуины в МД?
При этом, Ардуниа умеет по гет-запросу выдавать значения температуры и влажности в формате:
http://xx.xx.xx.xx/command?36=TEMP гет запрос
и ответ
Temp=20
Humidity=40
Как это прописать в МД?
Знаю, что подобных вопросов поднималось много, на прошу как для ребенка, по простому помочь, подсказать: как считать показания датчиков ДХТ (температура, влажность) из Ардуины в МД?
При этом, Ардуниа умеет по гет-запросу выдавать значения температуры и влажности в формате:
http://xx.xx.xx.xx/command?36=TEMP гет запрос
и ответ
Temp=20
Humidity=40
Как это прописать в МД?
-
- Сообщения: 198
- Зарегистрирован: Сб янв 16, 2016 12:18 am
- Откуда: Минск
- Благодарил (а): 16 раз
- Поблагодарили: 15 раз
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Считывание датчиков из Ардуины!
Есть 2 принципиально отличающихся механизма:
1. Ардуино с изернет шилдом прикидывается вебстраничкой (сервером). МЖД через заданные промежутки времени парсит эту страничку используя механизм вебпеременных.
2. Ардуино с изернет шилдом прикидывается браузером (клиентом) и запрашивает у МЖД страничку вида http://192.168.1.1/objects/?object=ardu ... atura&v=36
скетчи для 1 и 2 вариантов легко получить из примеров, что идут с библиотекой изернет шилда.
1. Ардуино с изернет шилдом прикидывается вебстраничкой (сервером). МЖД через заданные промежутки времени парсит эту страничку используя механизм вебпеременных.
2. Ардуино с изернет шилдом прикидывается браузером (клиентом) и запрашивает у МЖД страничку вида http://192.168.1.1/objects/?object=ardu ... atura&v=36
скетчи для 1 и 2 вариантов легко получить из примеров, что идут с библиотекой изернет шилда.
-
- Сообщения: 97
- Зарегистрирован: Сб янв 23, 2016 3:57 pm
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Считывание датчиков из Ардуины!
А можете дать пример строчки запроса ардуина, который бы менял значение температури в об екте Temp1.temp,flair писал(а):Может проще чтобы ардуина писала сразу в МД без запросов...?
Буду признателен!
спасибо
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Считывание датчиков из Ардуины!
StryzhakA писал(а): А можете дать пример строчки запроса ардуина, который бы менял значение температури в об екте Temp1.temp,
Буду признателен!
спасибо
Код: Выделить всё
http://192.168.1.1/objects/?object=Temp1&op=set&p=temp&v=36
-
- Сообщения: 198
- Зарегистрирован: Сб янв 16, 2016 12:18 am
- Откуда: Минск
- Благодарил (а): 16 раз
- Поблагодарили: 15 раз
Re: Считывание датчиков из Ардуины!
в скетче который я вам давал есть эта функция - причем реализована и температура и влажность.StryzhakA писал(а):А можете дать пример строчки запроса ардуина, который бы менял значение температури в об екте Temp1.temp,flair писал(а):Может проще чтобы ардуина писала сразу в МД без запросов...?
Буду признателен!
спасибо
-
- Сообщения: 97
- Зарегистрирован: Сб янв 23, 2016 3:57 pm
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Считывание датчиков из Ардуины!
А что означает это v=36 в конце?ErmolenkoM писал(а):StryzhakA писал(а): А можете дать пример строчки запроса ардуина, который бы менял значение температури в об екте Temp1.temp,
Буду признателен!
спасибоКод: Выделить всё
http://192.168.1.1/objects/?object=Temp1&op=set&p=temp&v=36
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Считывание датчиков из Ардуины!
http://majordomo.smartliving.ru/Main/LibraryStryzhakA писал(а): А что означает это v=36 в конце?
пункт 1.3
P.S. Есть прекрасная ВиКи по проекту: http://majordomo.smartliving.ru там описано все.
-
- Сообщения: 97
- Зарегистрирован: Сб янв 23, 2016 3:57 pm
- Благодарил (а): 3 раза
- Поблагодарили: 1 раз
Re: Считывание датчиков из Ардуины!
Да я вспомнил, спасибо Вам, попробую разобраться.flair писал(а):в скетче который я вам давал есть эта функция - причем реализована и температура и влажность.StryzhakA писал(а):А можете дать пример строчки запроса ардуина, который бы менял значение температури в об екте Temp1.temp,flair писал(а):Может проще чтобы ардуина писала сразу в МД без запросов...?
Буду признателен!
спасибо
-
- Сообщения: 397
- Зарегистрирован: Вт май 31, 2016 6:56 pm
- Откуда: Россия Карелия Петрозаводск
- Благодарил (а): 96 раз
- Поблагодарили: 57 раз
Re: Считывание датчиков из Ардуины!
Помогите пожалуйста разобраться.
Плата ESP8266
Среда разработки Arduino IDE и библиотеки.
Питаюсь менять в majordomo значения свойства status объекта LAMP1
В итоге в поле status меняется на слово test а не на мне нужное значение 0 или 1.
Как исправить?
Если ввести в браузере строку
То свойство status меняется на нужное мне значение, работает хоть на компе хоть на комуникаторе.
Пробовал вызывать метод хоть с компа хоть с esp8266, метод в обе их случаях вызывается.
но status меняет сам метод а не запрос.
Плата ESP8266
Среда разработки Arduino IDE и библиотеки.
Питаюсь менять в majordomo значения свойства status объекта LAMP1
Код: Выделить всё
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
//#include <WiFiClient.h>
#include <ESP8266HTTPClient.h>
#include <ESP8266mDNS.h>
.......
// функция отправляет majordomo значения свойства status объекта LAMP1
void sendServer(bool state) {
http.begin("http://192.168.43.218/objects/");
String post = "object=LAMP1&op=set&p=status&v=0";
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
int httpCode = http.POST(post);
http.end();
}
......................
Как исправить?
Если ввести в браузере строку
Код: Выделить всё
http://192.168.43.218/objects/?object=LAMP1&op=set&p=status&v=0
Пробовал вызывать метод хоть с компа хоть с esp8266, метод в обе их случаях вызывается.
Код: Выделить всё
http://127.0.0.1/objects/?object=LAMP1&op=m&m=refresh&status=0
Сервер МД на x86 micro pc ssd + HDD, OC Debian, терминал Xiaomi Redmi note 7
Мои исходники для мд управляемых устройств https://github.com/vgamaev/ESPMDDEVICE
Мои исходники для мд управляемых устройств https://github.com/vgamaev/ESPMDDEVICE