Update TASKS.md — Orange Pi integration complete
This commit is contained in:
@@ -1,47 +1,65 @@
|
|||||||
# TASKS — Весовой контроллер
|
# Весовой контроллер — TASKS
|
||||||
|
|
||||||
## ✅ Выполнено
|
## ✅ Завершено
|
||||||
|
|
||||||
- [x] ESP32 + W5500 Ethernet — работает, получает IP по DHCP
|
### Железо
|
||||||
|
- [x] ESP32 + W5500 Ethernet — прошивка v2.0
|
||||||
- [x] DS3231 RTC + NTP синхронизация
|
- [x] DS3231 RTC + NTP синхронизация
|
||||||
- [x] MQTT подключение к VPS (77.222.43.248:1884)
|
- [x] WaveShare USB/RS232/RS485/TTL изолированный конвертер — подключён к A9
|
||||||
- [x] Веб-интерфейс: статус, журнал, настройки (http://192.168.20.xxx)
|
- [x] Orange Pi PC (Armbian) — основной контроллер вместо ESP32
|
||||||
- [x] Настройки в EEPROM (два MQTT сервера, пороги стабилизации)
|
- [x] USB-RS232 адаптер CH340 — работает на /dev/ttyUSB0
|
||||||
- [x] Парсер формата НЕВА ВСП4 (ww+00017.5kg)
|
|
||||||
- [x] Машина состояний: EMPTY→LOADING→STABLE→WAIT_GO→LEAVING
|
|
||||||
- [x] Команда GO от сервера через MQTT (scales/weighing/go)
|
|
||||||
- [x] Сервер автоматически отправляет GO через 5 сек (заглушка)
|
|
||||||
- [x] Реле светофор GPIO32/GPIO33 с дебаунсом 30 сек
|
|
||||||
- [x] **КРИТИЧЕСКИЙ БАग ИСПРАВЛЕН**: кабель был на DB9 пин 2 (выход чипа)
|
|
||||||
→ нужен пин 3 (вход R1IN чипа). Из-за этого не работало несколько дней.
|
|
||||||
|
|
||||||
## 🔄 В процессе
|
### ПО Orange Pi
|
||||||
|
- [x] Armbian Debian Trixie установлен
|
||||||
|
- [x] Python сервис scales.py — читает A9, шлёт в MQTT
|
||||||
|
- [x] Автозапуск через systemd (scales.service)
|
||||||
|
- [x] Протокол A9: STX+\x02 + +XXXXXXX + ETX+\x03, 9600 baud
|
||||||
|
- [x] Парсер веса: 7 цифр, последняя — десятая
|
||||||
|
|
||||||
- [ ] Подключение A9/TITAN — слабый RS232 сигнал, TTL выдаёт 0.2-1.2V
|
### MQTT интеграция
|
||||||
Решение: WaveShare USB/RS232 изолированный модуль (в пути, ~30 мая)
|
- [x] MQTT1 локальный: 192.168.20.9:1883 (Mosquitto, их сервер)
|
||||||
- [ ] Новый модуль MAX3232 (куплен, едет)
|
- [x] MQTT2 VPS: 77.222.43.248:1884 (esp32/Esp32Scales#2026)
|
||||||
|
- [x] Топик веса: scale/weight (простое число, кг)
|
||||||
|
- [x] Топик GO: scale/traffic/go (JSON с номером и весом)
|
||||||
|
|
||||||
|
### ИИ интеграция (их сервер 192.168.20.9)
|
||||||
|
- [x] Mosquitto установлен и настроен
|
||||||
|
- [x] weigh.env заполнен (WEIGH_MQTT_HOST=192.168.20.9)
|
||||||
|
- [x] cameras.env заполнен (Hikvision 192.168.21.84/85)
|
||||||
|
- [x] CAMERA_TIMEOUT=60 (камеры отвечают медленно)
|
||||||
|
- [x] app.py доработан: отправляет GO в MQTT после записи номера
|
||||||
|
- [x] Полный цикл проверен: машина → вес → снимок → номер O453M29 → запись в БД
|
||||||
|
|
||||||
|
## 🔄 В работе
|
||||||
|
|
||||||
|
- [ ] Финальный тест с реальной машиной (GO + светофор)
|
||||||
|
- [ ] Подключение реле светофора к GPIO Orange Pi
|
||||||
|
- [ ] Проверить что GO приходит на Orange Pi после распознавания
|
||||||
|
|
||||||
## 📋 Предстоит
|
## 📋 Предстоит
|
||||||
|
|
||||||
- [ ] Купить и подключить светофор
|
- [ ] GPIO для светофора (Red=PIN11/GPIO0, Green=PIN13/GPIO2)
|
||||||
- [ ] Настроить второй MQTT сервер (локальный, разработчики)
|
- [ ] Логика светофора в scales.py (сейчас только print)
|
||||||
- [ ] Интеграция с ИИ системой (камеры + номер авто)
|
- [ ] Статический IP для Orange Pi (сейчас через DHCP lease в MikroTik)
|
||||||
- [ ] Перенести команду GO из заглушки в реальную логику ИИ
|
- [ ] Настроить наш дашборд scales.zeroday.su под новую архитектуру
|
||||||
- [ ] Добавить время дебаунса реле в веб-настройки
|
|
||||||
- [ ] Пушнуть финальную прошивку v2 в репо
|
|
||||||
|
|
||||||
## 🐛 Известные проблемы
|
|
||||||
|
|
||||||
| Проблема | Статус |
|
|
||||||
|----------|--------|
|
|
||||||
| A9: слабый RS232, TTL 0.2-1.2V | Ждём WaveShare |
|
|
||||||
| MAX3232 деградирует после 5V | Куплен новый |
|
|
||||||
| Время на RTC иногда 2000-й год | NTP синхронизируется при старте, исправлено |
|
|
||||||
|
|
||||||
## 📡 Инфраструктура
|
## 📡 Инфраструктура
|
||||||
|
|
||||||
- Дашборд: https://scales.zeroday.su
|
- Orange Pi: 192.168.20.221 (DHCP, lease в MikroTik)
|
||||||
- MQTT VPS: 77.222.43.248:1884 (esp32/Esp32Scales#2026)
|
- Сервер ИИ: 192.168.20.9 (Ubuntu, docker compose)
|
||||||
- Топик данных: scales/weighing/event
|
- Дашборд ИИ: http://192.168.20.9:3000 (пароль: admin_agromilk_128*)
|
||||||
- Топик GO: scales/weighing/go
|
- MQTT брокер: 192.168.20.9:1883 (Mosquitto, анонимный)
|
||||||
- Веб ESP32: http://192.168.20.xxx (DHCP)
|
- MQTT VPS: 77.222.43.248:1884
|
||||||
|
- Весы A9: ttyUSB0, 9600 baud, tF=0, bt=4
|
||||||
|
- Камеры: rtsp://admin:11qaz22WSX@192.168.21.84/85:554/Streaming/Channels/101
|
||||||
|
|
||||||
|
## 🏗️ Архитектура
|
||||||
|
|
||||||
|
```
|
||||||
|
Весы A9 → RS232 → WaveShare → USB → Orange Pi
|
||||||
|
Orange Pi (scales.py) → MQTT → 192.168.20.9:1883
|
||||||
|
→ 77.222.43.248:1884
|
||||||
|
Сервер ИИ (weigh-service) ← MQTT ← scale/weight
|
||||||
|
Сервер ИИ → камеры → OCR → запись в БД
|
||||||
|
Сервер ИИ → MQTT → scale/traffic/go → Orange Pi → светофор
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user