Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти

 
Расширенный поиск

800486 Сообщений в 11226 Тем- от 88209 Пользователей - Последний пользователь: kenguru7

21 Июль 2018, 02:59:09
ADSL.Kirov.RuОбщиеПроекты посетителейТема: Погода по области
Страниц: 1 ... 19 20 [21] 22 23   Вниз
Печать
Автор Тема: Погода по области  (Прочитано 15061 раз)
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #300 : 11 Январь 2017, 07:12:00 »

В смысле JS-библиотек или датчиков?
Для построения графика используется библиотека Flot
А датчик сечас остался только один рабочий - в Победилово. Его предоставляет OlegaBaranov.
Записан

что-нибудь жизнеутверждающее

hobo
Постоялец
***
Сообщений: 143



« Ответ #301 : 12 Январь 2017, 06:41:48 »

Для построения графика используется библиотека Flot
Спасибо. Именно это и интересовало.
Записан
Rolw
Ветеран
*****
Пол: Мужской
Сообщений: 622



« Ответ #302 : 12 Январь 2017, 15:36:54 »

Хочу поставить датчик у себя . Я в Костино. Сервак есть. Не програмист.. Температуру смотрю с темропары на кухне,выставил наружу на 0.5 метра от кирпича на 6 этаже. Показывает больше на 5 градусов чем на СТС киров всегда. Но моя более является правдой. В машине температура на 2-3градуса ниже, которая стоит во дворе.
« Последнее редактирование: 12 Январь 2017, 15:44:09 от Rolw » Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #303 : 12 Январь 2017, 18:54:13 »

Написал в личку
Записан

что-нибудь жизнеутверждающее

hobo
Постоялец
***
Сообщений: 143



« Ответ #304 : 13 Январь 2017, 06:39:47 »

О каких датчиках речь?
Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #305 : 13 Январь 2017, 06:58:37 »

Температурных. Которые температуру на улице меряют.
Записан

что-нибудь жизнеутверждающее

hobo
Постоялец
***
Сообщений: 143



« Ответ #306 : 14 Январь 2017, 07:34:15 »

Температурных. Которые температуру на улице меряют.
Понятно, что не цену на дрова не Луне. А как информация с них попадает на график?
Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #307 : 14 Январь 2017, 10:17:53 »

Главное, чтобы информация о температуре снаружи попала в подключенный к интернету компьютер, а дальше уже дело техники.
Записан

что-нибудь жизнеутверждающее

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 507



« Ответ #308 : 26 Июнь 2017, 12:22:27 »

Нововятск, район 25 магазина.

http://vvgnovanet.narod.ru/

Вывел температуру, влажность, давление ( esp8266 BME280 ) ---- > thingspeak.com
Статистика за 5  часов - сутки ( позже добавлю неделю  )
Обновление 5 минут.
За вёрстку сайта по голове не бить, ибо не силён )))
Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #309 : 26 Июнь 2017, 20:10:21 »

Гм. А с этого thingspeak.com как-то в удобоваримом формате данные получать можно? Тогда можно было бы и сюда на сайт добавить.
Не так вставкой JavaScript-виджета, а текущую температуру например?
Записан

что-нибудь жизнеутверждающее

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 507



« Ответ #310 : 26 Июнь 2017, 20:20:49 »

Ну если кто-то напишет подобное для нашего форума то добавлю в прошивку ))

Код:
// Функция отправки показаний с термодатчика на MQTT
void TempSend() {
  float temp = bme.readTemperature();
  client.publish(MQTT::Publish("test/temp", String(temp)).set_retain(1));
  Serial.println(temp);
  t=temp;
  float pressure = bme.readPressure() / 133.33;
  client.publish(MQTT::Publish("press", String(pressure)).set_retain(1));
  Serial.println(pressure);
  p=pressure;
  float Hum = bme.readHumidity();
  client.publish(MQTT::Publish("Hum", String(Hum)).set_retain(1));
  Serial.println(Hum);
  h=Hum;
  delay(10);
}
// ------------------------------------  отправка данных на  Thingspeak.com --------------------------------
void Thingspeak() {

  if (!wclient.connect(host, 80)) {
    Serial.println("connection failed");
    return;
  }
  String url = apiKey;
  url += "&field1=";
  url += String(t);
  url += "&field2=";
  url += String(h);
  url += "&field3=";
  url += String(p);
  url += "\r\n\r\n";

  Serial.print("Sending data: ");
  Serial.println(url);

  wclient.print("POST /update HTTP/1.1\n");
  wclient.print("Host: api.thingspeak.com\n");
  wclient.print("Connection: close\n");
  wclient.print("X-THINGSPEAKAPIKEY: " + apiKey + "\n");
  wclient.print("Content-Type: application/x-www-form-urlencoded\n");
  wclient.print("Content-Length: ");
  wclient.print(url.length());
  wclient.print("\n\n");
  wclient.print(url);

  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" degrees Celcius Humidity: ");
  Serial.print(h);
  Serial.println("% send to Thingspeak");
  while (wclient.connected()) {
    String line = wclient.readStringUntil('\n');
    if (line == "\r") {
      break;
    }
  }
  String line = wclient.readStringUntil('\n');
  Serial.println("Feedback from Thingspeak.com:");
  Serial.println("==========");
  Serial.println(line);
  Serial.println("==========");
  Serial.println("closing connection");
  wclient.stop();
}

есть в принципе api запрос https://api.thingspeak.com/channels/291647/feeds.json?results=1

последняя строчка

26T17:59:41Z","entry_id":1113,"field1":"18.37","field2":"62.48","field3":"742.92\r\n\r\n"}]}
field1 температура
field2 влажность
field3 давление

ps время + 3часа

вот ещё пример скрипта нашел, может пригодится.
Код:
schedule("*/5 * * * *", function () {      //запускаем наш скрипт каждые 5 мин
createState('Thingspeak.field1', '');         //создаем переменную field1 в iobroker
createState('Thingspeak.field2', '');         //т.д...
createState('Thingspeak.field3', '');
createState('Thingspeak.field4', '');
createState('Thingspeak.field5', '');
createState('Thingspeak.field6', '');
createState('Thingspeak.field7', '');
createState('Thingspeak.field8', '');

var request = require('request');
var id_chennal = 12345;                      //Создаем переменную и записываем в нее нужный нам номер id канала  Thingspeak
request({                                    //Отправляем запрос на Thingspeak
    url: "https://api.thingspeak.com/channels/"+id_chennal+"/feeds.json?results=1",   //URL api Thingspeak
    method: 'GET',                          // Метод GET
 }, function(error, response, body){       //обрабатываем результат
    if(error) {
        log(error);                       //выводим в лог в случаи ошибки ответа от сервера
        } else {
        //log(body);                        //выводим в лог ответа в виде строки. 
    var jsob_obj = JSON.parse(body);      //преобразуем json ответ от сервера в объект
    var field1 = jsob_obj.feeds[0].field1;   //вытаскиваем значения field1 из ответа от сервера
    var field2 = jsob_obj.feeds[0].field2;   //т.д...
    var field3 = jsob_obj.feeds[0].field3;
    var field4 = jsob_obj.feeds[0].field4;
    var field5 = jsob_obj.feeds[0].field5;
    var field6 = jsob_obj.feeds[0].field6;
    var field7 = jsob_obj.feeds[0].field7;
    var field8 = jsob_obj.feeds[0].field8;
   setState("javascript.0.Thingspeak.field1"/*Thingspeak.field1*/, field1);  // записывает значения field1 в переменную iobroker
   setState("javascript.0.Thingspeak.field2"/*Thingspeak.field2*/, field2);  // т.д...
   setState("javascript.0.Thingspeak.field3"/*Thingspeak.field3*/, field3);
   setState("javascript.0.Thingspeak.field4"/*Thingspeak.field4*/, field4);
   setState("javascript.0.Thingspeak.field5"/*Thingspeak.field5*/, field5);
   setState("javascript.0.Thingspeak.field6"/*Thingspeak.field6*/, field6);
   setState("javascript.0.Thingspeak.field7"/*Thingspeak.field7*/, field7);
   setState("javascript.0.Thingspeak.field8"/*Thingspeak.field8*/, field8);
   
    }
});
});
« Последнее редактирование: 26 Июнь 2017, 22:10:25 от vvgNovanet » Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #311 : 27 Июнь 2017, 09:31:51 »

Вроде добавил, спасибо.
Надеюсь, там на thingspeak.com нет лимита на количество обращений в сутки Улыбка У меня раз в 10 минут забирает.
Записан

что-нибудь жизнеутверждающее

vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 507



« Ответ #312 : 27 Июнь 2017, 11:52:12 »

Вроде добавил, спасибо.
Надеюсь, там на thingspeak.com нет лимита на количество обращений в сутки Улыбка У меня раз в 10 минут забирает.

Тоже интересовался, вроде нет.
Записан
vvgNovanet
Ветеран
*****
Пол: Мужской
Сообщений: 507



« Ответ #313 : 28 Июнь 2017, 00:25:22 »

Хочу поставить датчик у себя . Я в Костино. Сервак есть. Не програмист.. Температуру смотрю с темропары на кухне,выставил наружу на 0.5 метра от кирпича на 6 этаже. Показывает больше на 5 градусов чем на СТС киров всегда. Но моя более является правдой. В машине температура на 2-3градуса ниже, которая стоит во дворе.
Вот аналогичная проблема, замучился бегать с датчиком, искать подходящее место.
Один чёрт кажет на 4 градуса выше. + от солнца никуда не деться.
Выносил датчик на лыжной палке ))) 1 метр от дома, один хрен не помогает )) + весной глыбой льда мою конструкцию снесло ))). Пробовал несколько датчиков и все кажут + 4, + 5 градусов выше.
Вообщем забил я на это дело, пусть кажет температуру за окном.
Записан
Blackman
Администратор
*****
Пол: Мужской
Сообщений: 1505



WWW
« Ответ #314 : 28 Июнь 2017, 07:33:43 »

Его прикрывают обычно защитой от солнца такой тарельчатой, типа как на рисунке.
Или вот по ссылке целая тема об защите от прямых солнечных лучей: http://meteoclub.ru/index.php?action=vthread&forum=7&topic=4312 там из одноразовых тарелок такую конструкцию строят.
Записан

что-нибудь жизнеутверждающее

Страниц: 1 ... 19 20 [21] 22 23   Вверх
Печать
ADSL.Kirov.RuОбщиеПроекты посетителейТема: Погода по области
Перейти в: