Geek & Monolitr
Monolitr Monolitr
Привет, технарь. Я тут ковыряюсь с новой стойкой для силовых, она автоматически подбирает вес на дисках в зависимости от скорости подъема. Хочешь заглянуть в прошивку и сделать ее еще умнее? Твоя точность могла бы здорово сэкономить кучу лишних повторений.
Geek Geek
Конечно, самое интересное – это прошивка. Можем добавить слияние данных с датчиков, немного искусственного интеллекта для прогнозирования нагрузки, подстроить PID-регуляторы и ускорить отклик. Давай репозиторий, я готов погружаться, пора сократить эти лишние итерации.
Monolitr Monolitr
Вот тебе набросок, чтобы начать. Структура репозитория: ``` powerrack-firmware/ ├─ src/ │ ├─ main.c // главный цикл, инициализация периферии │ ├─ sensor.c // драйверы АЦП, ИМУ, энкодера │ ├─ pid.c // универсальная реализация ПИД-регулятора │ ├─ ai_predict.c // простая линейная регрессия или мини-нейросеть │ └─ config.h // константы, данные калибровки ├─ include/ │ ├─ sensor.h │ ├─ pid.h │ ├─ ai_predict.h │ └─ config.h ├─ tests/ │ └─ test_pid.c ├─ docs/ │ └─ design.md └─ Makefile ``` В `main.c` нужно настроить таймеры, DMA для данных датчиков и запустить ПИД-цикл. `ai_predict.c` может загружать небольшую модель предсказания весов из памяти; позже можно будет заменить её на TensorFlow Lite Micro. Сделай `pull`, прошелся по плате, выжми несколько подходов и дай прошивке привыкнуть к твоему темпу. Удачи!
Geek Geek
Звучит как отличный проект! Сейчас заберу репозиторий, прошью плату и запущу быструю калибровку. Поиграю с PID-параметрами для каждой скорости, подключу ИМУ для обучения простой модели регрессии, а потом протестирую автоматическую подстройку с набором грузов. Скажи только, какой микроконтроллер и какие характеристики датчика – чтобы я сразу подготовил драйвера. Сделаем эту стойку умнее робота-пылесоса!
Monolitr Monolitr
Понял. Бери STM32F407VET6 – ARM Cortex‑M4, 168 мегагерц, куча DMA и 12-битный АЦП. Для IMU подойдёт BNO055 или MPU‑6050, триосевой гироскоп и акселерометр на 1 килогерц, I2C интерфейс. Подключи датчик на грифе для точного измерения веса – 500 импульсов на оборот, 120 грамм на импульс. Когда прошьёшь, сделай тестовый подъем, настрой PID для каждой зоны скорости и подавай данные с IMU в регрессию. Когда ляжешь на скамью, позволь прошивке автоматически настраиваться, и смотри, как эти бесполезные повторения исчезнут. Пора проверять возможности.
Geek Geek
Крутые очки – STM32F407VET6, BNO055, энкодер 500‑count. Сейчас запущу HAL, настрою I2C, DMA для АЦП и таймер. Потом быстрая тестовая подъемка для калибровки энкодера, настройка ПИД-регулятора по полосам скоростей, подам данные IMU в регрессию и запустим автокоррекцию. Посмотрим, как эти бесполезные повторения исчезнут. Поднимай штангу!
Monolitr Monolitr
Ждать недолго, всё готово. Выходи на базу, считывай кодер, фиксируй параметры, дай ИИ предсказать. Если платформа не сдвинется под твоей рукой – отлично. Иначе – подтягивай, следующий подход, и сделаем из этого места идеальное место для работы. Сосредоточься, будь безжалостен.