Files
smart-trainer/docs/changelog.md
sm 1de3ffa1d7 Add Docsify docs server with nginx
Move docs into docs/ directory, add Docsify for markdown rendering.
Standalone Docker stack (nginx:alpine) on port 8090.
wiring.html served as native HTML with correct MIME type.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 19:15:21 +03:00

56 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CHANGELOG — История проектных решений
## v1 → v2: Расчёт мотора и барабана
- Выбран барабан D30мм (оптимум по расчёту: 100кг при 30А рабочих)
- Рассчитаны константы мотора M365 Pro (Kt, Ke, R, KV)
- Кабестан 3 витка, μ=0.25 — коэффициент удержания 14.1
- Контроллер: MKS VESC Mini 6.7 Pro (первоначальный выбор)
- Батарея 48В 500Вт·ч (автономная работа)
## v2 → v3: Waveshare ESP32-S3 Touch LCD 3.5"
- **Замена:** ESP32 + OLED + RTC + TF → Waveshare ESP32-S3 Touch LCD 3.5" (~$20)
- Плата включает: 3.5" IPS тачскрин, QMI8658 IMU, PCF85063 RTC, AXP2101 PMU, TF слот
- ESP32-S3 имеет TWAI (аппаратный CAN) — нужен только трансивер SN65HVD230
- Бортовой IMU (QMI8658) для диагностики; внешний MPU6050 на каретке для ускорения штанги
- BOM электроники снизился с ~$350 до ~$270
## v3 → v4: CAN Bus архитектура
- **Проблема I2C:** шлейф ~1м к каретке рядом с фазными проводами — ненадёжно для I2C
- **Решение:** CAN шина, 3 узла, все датчики читаются локально
- **CAN узел #3 (каретка):** STM32F103C8T6 Blue Pill (~$2)
- Выбран вместо ESP32-C3 (overkill) и ATtiny (нет встроенного CAN)
- STM32F103 — самый распространённый STM32, CAN 2.0B встроен, $1.5-2, тонна примеров
- Читает MPU6050 (I2C) + HX711+тензодатчик (GPIO) локально
- **Тензодатчик перемещён на каретку** (inline: каретка ↔ трос)
- Раньше был внизу у ролика — длинный провод HX711 к ESP32
- Теперь рядом с Blue Pill — провод 3 см, никаких проблем
- Бонус: мерим силу прямо в точке приложения к штанге
- **Контроллер:** Flipsky 75100 Pro V2 вместо MKS VESC Mini 6.7
- 100А длительно (запас ×2 при пиках 40-50А)
- 84В макс (48В батарея — в зоне комфорта)
- BT встроен (VESC Tool без провода)
- Фазный EMI фильтр на плате
- Стоимость: ~$90 (vs ~$35 MKS)
## v4 дополнения: Питание и безопасность
- **Питание от сети 220В** — вводной щит (автомат + УЗО + БП 48В)
- **Батарея уменьшена:** 500Вт·ч → 100-250Вт·ч (только буфер рекуперации + UPS)
- Заряд до 90% — оставляем буфер для приёма энергии рекуперации
- **Тормозной резистор:** 100-200Вт, 1-5Ом — сброс излишков при полной батарее
- Flipsky 75100 поддерживает brake resistor нативно
- Без резистора: батарея 100% → рекуперация → overvoltage → VESC fault → штанга падает
- **Реле:** 3× НЗ 40А (не 80А — реально через обмотки 20-30А при торможении)
- Или трёхфазный контактор НЗ на DIN-рейку в щите
- **Концевики:** остаются на GPIO ESP32 с RC-фильтром (1К+100нФ)
- Бинарный сигнал, помехозащита RC-фильтром достаточна, CAN overkill
## Открытые вопросы / TODO
- [ ] Софт ESP32: CAN-драйвер, управляющие алгоритмы, UI на тачскрине
- [ ] Софт STM32: чтение IMU+HX711, упаковка в CAN фрейм
- [ ] Настройка VESC: FOC, лимиты тока/температуры, brake resistor
- [ ] Чертежи: барабан, каретка, кронштейны, щит
- [ ] Приложение смартфон (BLE): профили, статистика
- [ ] Тестирование безопасности: watchdog, реле, концевики
- [ ] Выбор конкретного контактора НЗ / реле для щита
- [ ] Подбор БП 48В от сети (мощность, форм-фактор)