Користувальницькькі налаштування

Налаштування сайту


Сайдбар

Розділи

Загальний опис
Історія змін
Рекомендації щодо оновлення
Плани на майбутнє
Відомі проблеми
Онлайн демо
Люди
Трохи про безпеку

FAQ



Редагувати сайдбар

generators

Генератори

Модуль “Генератори” надає комплексну систему управління для відстеження генераторів електроенергії, їх часу роботи, споживання пального, графіків планового обслуговування та історії заправок. Система автоматично розраховує витрату пального, відстежує час роботи та планує обслуговування на основі мотогодин кожного з пристроїв.

  • Мотогодини автоматично розраховуються та зберігаються, відносно інтервалів між запуском та зупинкою генераторів
  • Споживання палива розраховується автоматично на основі часу роботи та розходу кожного генератора
  • Рівень пального в баку автоматично зменшується, коли генератор зупиняється
  • Рівень пального збільшується, коли реєструється заправка
  • Графік наступного планового технічного обслуговування, автоматично визначається на основі мотогодин попередніх
  • Передбачено можливість автоматичного визначення стану роботи генераторів, на основі One-Punch скриптів довільної замороченості

Ввімкнення модулю

alter.ini
;Вмикає власне сам модуль
GENERATORS_ENABLED=1
;Вмикає відображення сповіщення про працюючі генератори на панелі задач в області сповіщень
TB_GENERATORS_NOTIFY=1

Автоматичне визначення запуску

Приклади One-Punch скриптів, аліаси котрих, можна вказати для кожного з генераторів окремо. Обов'язково повинні встановлювати змінну $generatorState, з одним з наступних значень: 0 - генератор вимкнено, 1 - генератор працює.

на основі конкретного пристрою:

$ipUp='10.10.3.125'; // цей пристрій заживлено від генератора, він повинен бути живим коли генератор запущено і мертвим весь інший час
$generatorState=0;
    if (zb_PingICMP($ipUp)) {
     $generatorState=1;  
    }

на основі пари пристроїв з перевіркою по ICMP:

$ipDown='10.10.3.207'; //цей пристрій падає і залишається мертвим, коли немає електроенергії
$ipUp='10.10.3.125'; // цей пристрій заживлено від генератора, він повинен бути живим коли генератор запущено
$generatorState=0;
 
if (!zb_PingICMP($ipDown)) {
    if (zb_PingICMP($ipUp)) {
     $generatorState=1;  
    }
}

На основі датчика живлення Equicom PING3:

    $ip = '10.10.3.89';
    $community = 'yourcommunity';
    $oid = '1.3.6.1.4.1.35160.1.26.0';
 
    $snmp = new SNMPHelper();
    $resultRaw = $snmp->walk($ip, $community, $oid, false);
    $generatorState = 0;
    if (!empty($resultRaw)) {
        $snmpValue = zb_SanitizeSNMPValue($resultRaw);
        $generatorState = ($snmpValue == 1) ? 1 : 0; //якщо живлення є - рахуємо, що генератор запущено
    }

Загалом, як не складно помітити, все обмежено тільки вашою фантазією. Хоч по звуку запуск визначайте.

Для періодичної та автоматичної перевірки стану роботи генераторів, використовується періодичний, відповідний виклик з remoteAPI:

*/5 * * * *    /bin/ubapi "generators"

що очевидно має глибинний сенс, тільки для генераторів з автоматичним запуском.

generators.txt · Востаннє змінено: 2025/12/08 21:03 повз nightfly