Files
elmer/doc/history/2026-06-07-plans.md
T

3.6 KiB

Планы на 2026-06-07 (вечер)

1. 🔴 Исправить 16-ричный вывод параметров

Проблема: при считывании PID'ов на экран выводятся hex-коды вместо человеческих значений.

  • Температура ОЖ: 41053C вместо ОЖ: 20°C
  • Обороты: 410C1A2B вместо Обороты: 850 об/мин Причина: ObdDecoder.decode() не чистит \r \n из raw ответа → parseInt падает → возвращает raw. Фикс: добавить .replace("\r", "").replace("\n", "") в clean.

2. 🟡 Кнопки СЕРВЕР/ELM/ЭБУ — только до первой диагностики

После первого успешного "done" — убрать эти кнопки. Они нужны только для первоначальной проверки.

3. 🟢 Динамические тесты (две новые кнопки)

Появляются после первичной диагностики вместо СЕРВЕР/ELM/ЭБУ.

Тест 1: «На месте»

  • Подсказка: «Нажмите на педаль газа, поднимите обороты до 3000, держите 3-4 секунды, затем резко сбросьте газ. Нажмите СТАРТ когда готовы.»
  • Кнопка: «⏱ Тест на месте» → после нажатия → «▶ Старт»
  • После Старт: мониторинг RPM, MAP, STFT, LTFT — 5-10 секунд
  • Анализ: отклик дросселя, провалы, богатая/бедная смесь при сбросе

Тест 2: «В движении»

  • Подсказка: «Включите 2-ю передачу (АКПП — ручной режим), разгонитесь до ~3000 об/мин, держите несколько секунд, затем резко сбросьте газ. Нажмите СТАРТ ДО начала движения — программа сама отследит параметры.»
  • Кнопка: «🚗 Тест в движении» → после нажатия → «▶ Старт (нажать до движения)»
  • После Старт: мониторинг скорости, RPM, нагрузки, STFT — автоматическое определение начала движения и сброса газа
  • Анализ: поведение под нагрузкой, детонация, пропуски

4. 🟢 Flow кнопок

[Начало] → СЕРВЕР | ELM | ЭБУ | ОШИБКИ | ДИАГНОСТИКА
    ↓ после диагностики
[Результат] → ✕ Закрыть | ⏱ Тест на месте | 🚗 Тест в движении | поле ввода + ➤

5. 🟡 История — не терять

При переключении между тестами и чатом — сохранять вывод.

6. 🔧 Скрипты для тестов

Нужно создать server-side скрипты:

  • script/dynamic_idle.json — тест на месте (RPM, MAP, STFT, LTFT, дроссель, нагрузка)
  • script/dynamic_drive.json — тест в движении (RPM, скорость, нагрузка, STFT, MAP)

Оба скрипта должны:

  • Считывать параметры с высокой частотой (ATAT1 если v2)
  • Автоматически определять фазы: разгон → удержание → сброс
  • Отправлять результаты на сервер → LLM-анализ