Генераторы D300

Вход в систему мониторинга

{{ S.auth.error }}

Обзор

{{ k.name }}
{{ k.value }}

Требуют внимания

Всё в порядке
{{ a.d.gen_name || 'Генератор' }} · {{ a.d.location_name || 'не привязан' }}
{{ t }}
и ещё {{ a.texts.length-4 }}

Топливо

Нет данных

Последние события

ВремяГенераторСобытие
{{ dt(e.time) }} {{ e.gen_name }}
{{ e.location_name || 'не привязан' }}
Событий пока нет
{{ l.name }}
{{ KIND[l.kind] }}{{ l.address ? ' · ' + l.address : '' }}
{{ l.total }} {{ l.running }} {{ l.alarm }} {{ l.offline }}
Мест не найдено

Генераторы

{{ d.gen_name || 'Генератор' }}

{{ d.location_name || 'не привязан' }} · на RP2040: {{ d.loc_hint }}
{{ stateOf(d).text }}
{{ d.gen_model }}
№ {{ d.gen_serial }}
инв. {{ d.gen_inventory }}
прибыл {{ dd(d.arrived.time) }}
Нагрузка
{{ f(d.data.gen_kw) }} кВт ({{ pct(d) }}%)
Сеть / генер.
{{ f(avg(d.data.mains_v),0) }} / {{ f(avg(d.data.gen_v),0) }} В
Топливо
{{ f(d.data.fuel_pct) }} %
Двигатель
{{ f(d.data.engine_c) }} °C · {{ f(d.data.oil_bar) }} бар
Батарея
{{ f(d.data.battery_v) }} В
Моточасы
{{ f(d.data.engine_hours) }} ч
{{ d.online ? 'Модуль связи на месте, но контроллер D300 не отвечает' : 'Нет связи с модулем RP2040' }}
{{ dt(d.last_seen) }}

{{ m.gen_name || 'Генератор' }}

переехал
{{ m.gen_model }}
№ {{ m.gen_serial }}
инв. {{ m.gen_inventory }}
Куда
{{ m.to_name }}
Дата переезда
{{ dt(m.time) }}
Переместил
{{ m.user_name || '—' }}
Моточасы
{{ f(m.dep_hours) }} ч
Топливо
{{ fuelTxt(m.dep_fuel) }}
{{ S.view.t==='filter' ? 'Таких генераторов сейчас нет' : 'Здесь пока нет генераторов' }}
Выберите место слева

Журнал перемещений

ДатаГенераторПереместилОткудаКудаОтъезд: моточасы / топливоПрибытие: моточасы / топливо
{{ dt(m.time) }} {{ m.gen_name }}
№ {{ m.gen_serial || '—' }}
{{ m.user_name || '—' }} {{ m.kind==='added' ? '—' : m.from_name }}
{{ m.note }}
{{ m.to_name }} первое место{{ f(m.dep_hours) }} ч · {{ fuelTxt(m.dep_fuel) }}
{{ dt(m.dep_time) }}
—
{{ f(m.arr_hours) }} ч · {{ fuelTxt(m.arr_fuel) }}
{{ dt(m.arr_time) }}
не подключалсяожидается подключение
Записей о перемещениях нет

Уведомления в Telegram

1. Откройте: {{ S.nsLink }}
2. В Telegram нажмите Start.
3.
Ссылка действует 15 минут.

Получать сообщения

О генераторах ваших мест: {{ zoneText }}. Генератор переехал — сообщения о нём переходят к новому месту.

Тихие часы

В это время только важное: аварии D300, опасные режимы, пропала сеть, нет связи, контроллер переведён в СТОП.

Какие сообщения — для всех моих генераторов

Отдельные генераторы

Если по конкретному генератору нужно больше или меньше сообщений, чем по остальным.

Генераторов в ваших местах нет.
{{ d.gen_name || 'Генератор' }} № {{ d.gen_serial }}
{{ d.location_name || 'не привязан' }}
особые: {{ ovCount(d.board_id) }}как у всех

Пользователи

{{ S.usersData.tg.configured ? 'Бот @' + S.usersData.tg.bot + ' подключён' : 'Бот Telegram не подключён' }}
Токен от @BotFather. Пустое поле и «Сохранить» — отключить бота.
Логин / имяРольМеста (рассылка)TelegramПоследний вход
{{ u.name }}
@{{ u.login }}
{{ ROLE[u.role] }} {{ zoneOf(u) }} {{ u.tg_name }}— {{ dt(u.last_login) }}

Администратор — всё, пользователи, бот, названия аварий; оператор — места и перемещения; просмотр — только смотреть. Места определяют, о каких генераторах пользователь получает сообщения.

Названия аварий D300

D300 сообщает аварии номерами битов (0–255) в трёх группах: останов, сброс нагрузки, предупреждение; номер одинаков во всех группах. Биты 0–7 — цифровые входы: их смысл зависит от подключения конкретного генератора, поэтому для модели можно завести свою таблицу. Остальные модели используют стандартную (список Datakom).

ТаблицаМоделиНазваний
{{ t.name }} стандартная все остальные
{{ m }}
{{ Object.keys(t.bits||{}).length }}

{{ curDev.gen_name || 'Генератор' }}

{{ stateOf(curDev).text }} {{ MODE[curDev.data.mode] || curDev.data.mode }}
{{ curDev.location_name || 'не привязан' }} · {{ curDev.gen_model }} · зав. № {{ curDev.gen_serial || '—' }}{{ curDev.gen_inventory ? ' · инв. № ' + curDev.gen_inventory : '' }}
загрузка…
Активные ошибки и предупреждения
  • {{ i.text }}
{{ curDev.online ? 'Контроллер D300 не отвечает модулю связи' : 'Нет связи с модулем RP2040' }}. Последние данные: {{ dt(curDev.last_seen) }}
Модель{{ curDev.gen_model || '—' }}
Номинал{{ curDev.rated_kw || '—' }} кВт
Заводской №{{ curDev.gen_serial || '—' }}
Инвентарный №{{ curDev.gen_inventory || '—' }}
Контроллер{{ ctrlText(curDev) }}
Обновлено{{ dt(curDev.last_seen) }}
Модуль связи{{ curDev.board_id }}
Впервые на связи{{ dt(curDev.first_seen) }}
{{ S.tab.events.length }} записей
ВремяСобытиекВтСеть, ВТопливоМоточасы
{{ dt(e.time) }} {{ f(e.data.gen_kw) }}{{ f(Array.isArray(e.data.mains_v) ? avg(e.data.mains_v) : e.data.mains_v, 0) }} {{ fuelTxt(e.data.fuel_pct) }}{{ f(e.data.engine_hours) }}
Событий нет
НачалоКонецРаботалНагрузкакВт·чТопливоПик, кВт
{{ dt(r.start_time) }}{{ r.stop_time ? dt(r.stop_time) : 'работает' }}{{ dur(r.run_s) }} {{ r.loaded ? 'да' : 'нет (тест / холостой)' }}{{ f(r.kwh) }}{{ r.fuel_pct==null ? '—' : '−' + f(r.fuel_pct) + ' %' }}{{ f(r.max_kw) }}
Запусков пока нет
МесяцЗапусковС нагрузкойЧасов работыкВт·чИзрасходованоЗаправленоПик, кВт
{{ r.month }}{{ r.runs||0 }}{{ r.loaded_runs||0 }}{{ ((r.run_s||0)/3600).toFixed(1) }}{{ f(r.kwh) }} {{ r.fuel_used ? '−' + f(r.fuel_used) + ' %' : '—' }}{{ r.fuel_added ? '+' + f(r.fuel_added) + ' %' : '—' }}{{ r.refuels ? ' (' + r.refuels + ')' : '' }}{{ f(r.max_kw) }}
Статистики пока нет
Мало данных для графика
{{ S.tab.extremes.extremes.length }} эпизодов
{{ S.me.extreme_names[r.kind] || r.kind }}
{{ r.n }} раз · всего {{ dur(r.total_s) }} · последний {{ dt(r.last) }}
НачалоДлительностьРежимХудшееПорог
{{ dt(x.start_time) }} {{ x.end_time ? dur(x.end_time-x.start_time) : 'продолжается (' + dur(S.tab.extremes.now-x.start_time) + ')' }} {{ x.level===2 ? 'Опасно' : 'Внимание' }}: {{ S.me.extreme_names[x.kind] || x.kind }}{{ valText(x) }}{{ limText(x.kind, x.lim, x.unit) }}
Генератор в экстремальных режимах не работал
ДатаПеремещениеПереместилОтъезд: последние данныеПрибытие: первое подключение
{{ dt(m.time) }} Добавлен в «{{ m.to_name }}»«{{ m.from_name }}» → «{{ m.to_name }}»
{{ m.note }}
{{ m.user_name || '—' }} первое место{{ dt(m.dep_time) }}
моточасы {{ f(m.dep_hours) }} ч · топливо {{ fuelTxt(m.dep_fuel) }}
данных не было
{{ dt(m.arr_time) }}
моточасы {{ f(m.arr_hours) }} ч · топливо {{ fuelTxt(m.arr_fuel) }}
не подключался (уехал дальше)
{{ m.wait_reconnect ? 'ожидается переподключение на новом месте' : 'ожидается первое подключение' }}
Перемещений не было

{{ M.err }}
{{ M.d.gen_model }} · № {{ M.d.gen_serial || '—' }}
Место в настройках RP2040: {{ M.d.loc_hint || '—' }}
{{ M.err }}
Откуда
{{ M.m.from_name }}
Куда
{{ M.m.to_name }}
сейчас: {{ M.m.now_location_name }}
Дата переезда
{{ dt(M.m.time) }}
Переместил
{{ M.m.user_name || '—' }}
Примечание: {{ M.m.note }}
Последние данные на этом месте {{ M.m.dep_time ? dt(M.m.dep_time) : '' }}
Моточасы
{{ f(M.m.dep_hours) }} ч
Топливо
{{ fuelTxt(M.m.dep_fuel) }}
Сеть / генер.
{{ f(avg(M.m.dep_data.mains_v),0) }} / {{ f(avg(M.m.dep_data.gen_v),0) }} В
Нагрузка
{{ f(M.m.dep_data.gen_kw) }} кВт
Двигатель
{{ f(M.m.dep_data.engine_c) }} °C · {{ f(M.m.dep_data.oil_bar) }} бар
Батарея
{{ f(M.m.dep_data.battery_v) }} В
Выработано всего
{{ f(M.m.dep_data.total_kwh) }} кВт·ч
Режим
{{ MODE[M.m.dep_data.mode] || M.m.dep_data.mode || '—' }}
Данных от генератора на этом месте не было.
Записей нет
{{ dt(e.time) }}{{ e.user_name ? ' · ' + e.user_name : '' }}
{{ LOCT[e.type] || e.type }} «{{ e.gen_name }}»{{ e.gen_serial ? ' № ' + e.gen_serial : '' }} из «{{ e.other_name }}» в «{{ e.other_name }}»
{{ e.note }}
Мест пока нет

Генератор переехал — сообщения о нём сами переходят к пользователям нового места. Какие именно сообщения получать, пользователь выбирает сам.

{{ M.err }}
{{ M.err }}
Этот генератор не входит в ваши места{{ M.d.location_name ? ' («' + M.d.location_name + '» вам не назначено)' : '' }}, сообщения о нём не приходят. Места назначает администратор.
Генератор «{{ M.d.gen_name }}» и вся его история (журнал, запуски, статистика, перемещения) будут удалены. Отменить можно только восстановлением из резервной копии.

Если модуль связи генератора ещё работает, генератор снова появится в «Новых генераторах» — уже без истории.

{{ M.err }}
{{ M.err }}

Первое число — «внимание», второе — «опасно». Напряжение, частота и масло проверяются через {{ S.me.limits.stable_s }} с после пуска.

{{ S.me.extreme_names[r[0]] }}{{ r[1] }}
{{ t.text }}