Найти в Дзене
Исследование данных

Компьютер, который помещается на ладони

Так как мой блог посвящён анализу информации, то я буду рассказывать именно в этом контексте. Речь пойдёт про создание полностью автоматического спортивного секундомера, который я использую в домашних тренировках. В домашних условиях точно замерить время выполнения всех повторений спортивных упражнений (приседания, отжимания, упражнения с EZ-штангой и гантелями на бицепс). С помощью двух оптических датчиков и Raspberry Pi 5, которые были установлены на штативе для фотоаппарата. Идея очень простая: замерять время, которое проходит между срабатываниями датчиков. Получается, что я не просто замеряю время выполнения каждого повторения, но и могу узнать скорость. Очень компактный размер и наличие портов GPIO. Тут важно явно сказать, что Raspberry Pi 5 является полноценным компьютером, что позволяет легко запустить на нём API-микросервис. У него есть Wi-Fi и стандартная витая пара с разъемом RJ45 (8P8C). Часть домашней тренировки я снял на смартфон, а потом сравнил время на видео с логами ми
Оглавление
Raspberry Pi 5 перед началом проекта
Raspberry Pi 5 перед началом проекта

Так как мой блог посвящён анализу информации, то я буду рассказывать именно в этом контексте. Речь пойдёт про создание полностью автоматического спортивного секундомера, который я использую в домашних тренировках.

В чём идея проекта?

В домашних условиях точно замерить время выполнения всех повторений спортивных упражнений (приседания, отжимания, упражнения с EZ-штангой и гантелями на бицепс).

Как именно выполнялись замеры времени?

С помощью двух оптических датчиков и Raspberry Pi 5, которые были установлены на штативе для фотоаппарата. Идея очень простая: замерять время, которое проходит между срабатываниями датчиков. Получается, что я не просто замеряю время выполнения каждого повторения, но и могу узнать скорость.

Почему выбран именно Raspberry?

Очень компактный размер и наличие портов GPIO. Тут важно явно сказать, что Raspberry Pi 5 является полноценным компьютером, что позволяет легко запустить на нём API-микросервис. У него есть Wi-Fi и стандартная витая пара с разъемом RJ45 (8P8C).

Как проверялась правильность работы датчиков?

Часть домашней тренировки я снял на смартфон, а потом сравнил время на видео с логами микросервиса.

В каком формате записывались логи?

Сразу записывал в CSV, чтобы удобно было смотреть в Pandas и Matplotlib.

Как происходило получение данных?

В первой версии через SSH, а потом сделал простейший API.

Как вы подключали датчики?

Через порт GPIO. Использовал оптрон (оптопару) для защиты платы, чтобы сделать надёжную гальваническую развязку с внешним модулем. Два датчика (готовых модуля) были в отдельной цепи, которая питалась от аккумулятора 18650.

GPIO работает с аналоговыми датчиками напрямую?

Нет. Например, контроллер Arduino MEGA 2560 имеет встроенный АЦП для аналоговых датчиков (фоторезисторов, термисторов и потенциометров), а компьютер Raspberry Pi работает только с цифровыми данными. В моём случае это и не важно, так как нужно было регистрировать время между срабатываниями двух оптических датчиков.

Как сделать версию с ручным управлением?

Вместо датчиков можно использовать пульт и радиореле (не забывайте про защиту порта), чтобы вручную фиксировать факт выполнения упражнения, например, приседания. Но это неудобно, так как придётся постоянно держать пульт в руках. Как вариант, можно попросить девушку выступить в роли тренера с секундомером.

Вывод: развитие технологий и появление подобных компьютеров позволяют в домашних условиях буквально за пару часов создавать достаточно сложные устройства, которые ещё несколько лет назад могли вызывать сложности даже у крупных лабораторий и заводов.