﻿Як запустити програму стенда

== Що в архіві

- StandDL24.exe — сама програма
- Diagnostika.exe — показує, чи бачить компʼютер прилади (потрібна, якщо щось не підхопилось)
- nalashtuvannya.json — налаштування
- чотири ярлики .bat на кожен випадок
- ця інструкція

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

== Перший запуск

1. Розпакуйте архів у будь-яку папку, наприклад C:\Stand. Папка має бути така,
   куди Windows дозволяє писати: програма тримає поруч базу результатів.
2. Підключіть прилади USB-кабелями і ввімкніть їх.
3. Запустіть StandDL24.exe або ярлик Запустити.bat.

Програма сама знайде прилади і розкладе їх по позиціях. Який прилад на якій
позиції стоїть, вона запамʼятає за його номером, тому наступного разу вони
стануть на свої місця самі.

Якщо прилади не знайшлись, запустіть Diagnostika.exe (ярлик
Діагностика.bat). Вона створить поруч файл dl24-diagnostika-....txt,
надішліть його мені, і я скажу, у чому річ.

== Позиції і серійні номери

При першому запуску вільні позиції займають знайдені прилади. Зіставте
серійні номери на екрані з фізичними позиціями перед початком тестування.
Потім привʼязка зберігається незалежно від гнізда USB-хаба.

Якщо старий прилад відʼєднали, його позиція залишається за ним. Новий прилад
не замінює його автоматично. Для заміни закрийте програму після підтвердження
OFF і змініть serial потрібної позиції у nalashtuvannya.json на номер із
діагностики. Не призначайте один номер двом позиціям. Після підключення
приладу, якого не було під час запуску, перезапустіть програму.

== Подивитись без приладів

Ярлик Демо без приладiв.bat піднімає два несправжні прилади просто в
програмі: видно позиції, показання, уставки, «Пуск» і «Стоп». Розряд там іде
у 120 разів швидше за справжній, тобто елемент «сідає» за кілька секунд, і
відразу видно, як рядок лягає в базу. Нічого підключати не треба.

Цифри в демо несправжні: там усередині найпростіша модель елемента, вона
потрібна тільки щоб показати хід роботи, відсічку і запис рядка. Справжню
ємність дадуть ваші прилади.

== Як іде тест

1. Зверху впишіть, хто працює, і номер стенда.
2. На позиції виставте струм і поріг відсічки, типово це 20 А і 2,8 В.
3. Натисніть «Пуск».

Далі програма веде розряд сама: показує напругу, струм, набрану ємність і час,
а коли напруга падає до порога, вимикає навантаження. Поріг тримає саме
програма: прошивка приладу його запамʼятовує і показує на екрані, але сама за
ним не вимикає, це перевірено. Додатково в прилад пишеться його власний
таймер, тож якщо ноутбук зависне або програма закриється, прилад вимкне
навантаження сам.

Коли розряд завершився, рядок автоматично лягає в Google-таблицю: дата, час,
оператор, стенд, позиція, ємність в Аг.

== Обмеження захисту

За наявним описом HID-прошивки V1.1.0 записаний поріг напруги сам прилад
не виконує. Його тримає програма. Апаратний таймер перевіряється перед ON
і обмежує тривалість роботи, але не гарантує вимкнення саме на 2,8 В
при зависанні ноутбука чи фізичному обриві USB.

При втраті відповідей програма намагається виконати OFF і повторює спроби,
не вважаючи прилад вимкненим без підтвердження. Якщо видно
«OFF НЕ ПІДТВЕРДЖЕНО», відключіть елемент вручну. Для гарантованої
незалежної від ноутбука відсічки потрібен окремий апаратний захист.
Перші випробування проводьте під наглядом за сценарієм приймання.

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

== Про ємність

Команди обнулення лічильників для цієї ревізії приладу немає, тому лічильник
на екрані приладу так і продовжує рости від тесту до тесту. Це не заважає:
програма запамʼятовує значення на старті і в таблицю пише різницю, тобто
ємність саме цього елемента. Паралельно вона рахує ємність сама, за струмом і
часом, і якщо дві цифри розійдуться більше ніж на 5%, це буде видно в журналі.

Команда апаратного RESET для цієї ревізії не підтверджена, і програма не
перебирає невідомі команди приладу: таким перебором можна зачепити його
калібрування і захисти.

== Google-таблиця

У файлі nalashtuvannya.json потрібні два рядки:

- spreadsheet — посилання на вашу таблицю
- credentials_file — імʼя файла доступу, який я надішлю разом із програмою

Щоб програма могла писати в таблицю, відкрийте її, натисніть «Поділитися» і
дайте права редактора пошті з того файла доступу. Без цього Google запис не
пропустить.

Поки spreadsheet порожній, програма працює як є: результати лягають у
локальну базу stand.db поруч із програмою.

Якщо інтернету немає, нічого не губиться: результати лежать у базі і поїдуть
у таблицю, щойно звʼязок зʼявиться. Кнопка «Надіслати в таблицю» робить це
вручну.

== Якщо щось пішло не так

- програма не відкривається або зникає відразу: запустіть ярлик
  Запуск з журналом.bat, поруч зʼявиться файл zhurnal.txt із причиною,
  надішліть його мені. Якщо вікно не встигло навіть відкритися, поруч
  залишиться startup-error.txt, він потрібен так само
- прилад зник посеред тесту: програма вимкне навантаження і позначить тест
  як помилку, щоб його було видно
- програма не бачить таблиці: результати лишаються в базі, у верхньому рядку
  видно, скільки рядків чекає відправки
- потрібно зупинити тест руками: кнопка «Стоп» на позиції
