Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. ioBroker скрипты
    6. Esp8266+pzem-004t

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Esp8266+pzem-004t

    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      v965 last edited by

      Ребята помогите создать скрипт который бы высчитывал количество KW в день, месяц,год.

      Сейчас у меня трудится вот такой````
      createState('kwh','',{type:'number',role:'value',read:true});

      on({id: 'mqtt.0.ESP00CF2D7B.pmwh', change: 'ne'}, function (obj) {
      setState('javascript.0.kwh', obj.newState.val/1000);;
      });

      Но естественно он показывает общее число киловат за весь период времени.
      1 Reply Last reply Reply Quote 0
      • I
        instalator last edited by

        @v965:

        Ребята помогите создать скрипт который бы высчитывал количество KW в день, месяц,год.

        Сейчас у меня трудится вот такой````
        createState('kwh','',{type:'number',role:'value',read:true});

        on({id: 'mqtt.0.ESP00CF2D7B.pmwh', change: 'ne'}, function (obj) {
        setState('javascript.0.kwh', obj.newState.val/1000);;
        });

        Но естественно он показывает общее число киловат за весь период времени. `  
        

        Данные хранишь в MySql? запросом из БД вытягивай данные

        1 Reply Last reply Reply Quote 0
        • V
          v965 last edited by

          Да всё верно в MySql. Но как мне их вытащить за нужный промежуток времени?

          1 Reply Last reply Reply Quote 0
          • I
            instalator last edited by

            @v965:

            Да всё верно в MySql. Но как мне их вытащить за нужный промежуток времени? `

            http://forum.iobroker.net/viewtopic.php?f=16&t=2447

            1 Reply Last reply Reply Quote 0
            • V
              v965 last edited by

              @instalator:

              @v965:

              Да всё верно в MySql. Но как мне их вытащить за нужный промежуток времени? `

              http://forum.iobroker.net/viewtopic.php?f=16&t=2447 `
              Спасибо.

              Ну ,а всё же.

              Сделал вот так````
              var mysql = require('mysql');

              var connection = mysql.createConnection({
              host: 'localhost',
              user: 'root',
              password: 'dietpi',
              database: 'mysql',
              socketPath: '/var/run/mysqld/mysqld.sock'
              });var count, udh, ud_c, date;
              var java_id = 'javascript.0.';
              connection.connect(function(err) {
              if (err) {
              log('error connecting: ' + err.stack);
              return;
              }

              log('connected as id ' + connection.threadId);
              });//создаем подключение к базе
              connection.connect(function(err) {
              if (err) {
              log('error connecting: ' + err.stack);
              return;
              }
              log('connected as id ' + connection.threadId);
              });

              Теперь в логе вижу вот такие данные  filename="Новый текстовый документ (2).zip" index="0">~~
              Произвольно выбрал любой доступный сейчас параметр например mqtt.0.esp8266.ESP0000CBB0.freemem как из него запросить значения за определённый промежуток времени?
              
              + Точка отсчёта по дате это же не нулевые значения, а любое произвольное число которое было в день запроса.
              
              Получается мне нужно найти разницу в значениях между датами.
              
              Что то не могу я понять как это сделать хоть застрелись :D
              
              Мне нужно вывести всего несколько значений например: За 24 часа, за месяц, за год.
              1 Reply Last reply Reply Quote 0
              • I
                instalator last edited by

                @v965:

                Произвольно выбрал любой доступный сейчас параметр например mqtt.0.esp8266.ESP0000CBB0.freemem как из него запросить значения за определённый промежуток времени?

                • Точка отсчёта по дате это же не нулевые значения, а любое произвольное число которое было в день запроса.

                Получается мне нужно найти разницу в значениях между датами.

                Что то не могу я понять как это сделать хоть застрелись 😄

                Мне нужно вывести всего несколько значений например: За 24 часа, за месяц, за год. `

                https://ru.stackoverflow.com/questions/ … 0%BC%D0%B8

                1 Reply Last reply Reply Quote 0
                • V
                  v965 last edited by

                  Понял, спасибо! Это не для меня, будем искать другие решения.

                  Понимаю что если есть опыт в написании скриптов то помощь бесценна (ссылка).

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

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

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  905
                  Online

                  31.8k
                  Users

                  80.0k
                  Topics

                  1.3m
                  Posts

                  2
                  7
                  3381
                  Loading More Posts
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes
                  Reply
                  • Reply as topic
                  Log in to reply
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                  The ioBroker Community 2014-2023
                  logo