Складні функції в настройках віджету
Складні функції замість простих арифметичних операцій
У налаштуваннях кожного виджету є розділ "Арифметична операція". Начебто все просто там, помножив або розділив на потрібний коефіцієнт і отримав потрібне значення, наприклад, розділив вати на 1000 і отримав кіловати. Але серед арифметичних операцій причаївся потужний інструмент f(x) за допомогою якого можна описати будь-який параметр на основі даних, які моніторить ваш розумний лічильник, наприклад, реактивна енергія у VAR, що генерується тепло у гігокалоріях, джоулях або у ватах, або точка роси у градусах за Цельсієм. При розрахунку таких показників простою арифметичною операцією не обійдешся, зазвичай, це формула і досить складна.
Ось тут і прийде на допомогу інструмент f(x) у налаштуваннях "Арифметична операція", яким користуватись простіше, ніж здається.Основна ідея інструменту f(x): використовуючи вимірювані монітором параметри та синтаксис JavaScript, можна написати будь-яку формулу для отримання будь-яких нових параметрів моніторингу.
Для побудови формул використовуйте вимірювані монітором параметри у форматі:
- d.W1 - Потужність 1-ї лінії;
d.V2 - Напруга 2-й лінії;
d.A3 - Струм 3-й лінії;
та інші параметри.
Весь доступний список параметрів представлений у списку ліворуч у вікні редагування формули.
Важливо, регістр має значення!
Також треба пам'ятати загальноприйняті в математиці правила побудови виразів та порядок обчислення:
- Дії, записані у дужках;
- Множення та розподіл;
- Складання та віднімання.
Для складних розрахунків є математична бібліотека Math, яка надасть у ваше розпорядження тригонометричні функції, ступеня, коріння та логарифми. Нижче список об'єкта Math, який зберігає у своїх властивостях та методах різні математичні константи та функції.
-
Math.floor(a) округлює число a до наступного найменшого цілого числа;
Math.abs(a) повертає абсолютне значення числа a;
Math.pow(a, b) обчислює a у ступені b;
Math.sqrt(a) обчислює квадратний корінь числа a;
Math.log(a) обчислює натуральний логарифм числа a;
Math.sin(a) обчислює синус кута a в радіанах;
Math.cos(a) обчислює косинус кута a в радіанах;
Math.tan(a) обчислює тангенс кута a в радіанах;
Math.asin(a) обчислює арксинус числа a;
Math.acos(a) арккосинус числа a;
Math.atan(a) арктангенс числа a;
Також є список корисних констант:
Math.PI (число PI): 3.141592653589793Math.SQRT2 (квадратний корінь із двох): 1.4142135623730951
Math.SQRT1_2 (половина від квадратного кореня з двох): 0.7071067811865476
Math.E (число e або число Ейлера): 2.718281828459045
Math.LN2 (натуральний логарифм числа 2): 0.6931471805599453
Math.LN10 (натуральний логарифм числа 10): 2.302585092994046
Math.LOG2E (двійковий логарифм числа e): 1.4426950408889634
Math.LOG10E (десятковий логарифм числа e): 0.4342944819032518
Для перевірки правильності обчислень використовуйте кнопку "Перевірити", яка здійснить розрахунок з урахуванням наведених значень параметрів.
Для прикладу збудуємо графік «Точки роси» на основі температури та вологості, які легко виміряти за допомогою універсального монітора smart-MAIC D105.
Формула для знаходження точки роси не така вже й проста:Але в налаштуваннях віджету виглядає вона не так вже й страшно.
(237.7 * ((17.27*d.T1)/(237.7 + d.T1) + Math.log(d.T2/100))) / (17.27 - ((17.27*d.T1)/(237.7+d.T1) + Math.log(d.T2/100)))
Де: d.T1 – вимірювана температура та d.T2 – вимірювана вологість.
Успіхів у моніторингу!
Служба підтримки клієнтів працює на UserEcho