2026-01-24 15:17:23 +03:00
2026-01-24 15:17:23 +03:00
2026-01-24 15:17:23 +03:00
2026-01-24 15:17:23 +03:00

Тренажер "Бесконечная Лестница"

Система управления тренажером "Бесконечная лестница" на базе Arduino Mega 2560.

Описание проекта

Данный проект представляет собой систему управления тренажером с функциями:

  • Управление скоростью двигателя (0-100%)
  • Два режима тренировки: по времени и по дистанции
  • Отображение параметров на LCD дисплее 16x2
  • Отображение скорости на LED матрице 8x MAX7219
  • Локальное управление кнопками
  • Радиоуправление (7 кнопок)
  • Система безопасности с аварийной остановкой
  • Сохранение параметров в EEPROM

Необходимое оборудование

  • Arduino Mega 2560
  • LCD дисплей 16x2 с I2C модулем (адрес 0x27)
  • LED матрица 8x MAX7219
  • Энкодер LPD3806-360BM-G5-24C
  • Драйвер двигателя с PWM управлением
  • Кнопки управления
  • Приемник радиоуправления

Установка библиотек

Способ 1: Через менеджер библиотек Arduino IDE

  1. Откройте Arduino IDE
  2. Перейдите в меню СкетчПодключить библиотекуУправлять библиотеками...
  3. Установите следующие библиотеки:
Библиотека Поиск в менеджере Автор
LiquidCrystal I2C LiquidCrystal I2C Frank de Brabander
LedControl LedControl Eberhard Fahle

Способ 2: Ручная установка

  1. Скачайте библиотеки:

  2. Распакуйте архивы в папку библиотек Arduino:

    • Windows: C:\Users\<Пользователь>\Documents\Arduino\libraries\
    • Linux: ~/Arduino/libraries/
    • macOS: ~/Documents/Arduino/libraries/
  3. Перезапустите Arduino IDE

Встроенные библиотеки (устанавливать не нужно)

Следующие библиотеки входят в состав Arduino IDE:

  • SPI.h — для работы с SPI шиной (LED матрица)
  • Wire.h — для работы с I2C шиной (LCD дисплей)
  • EEPROM.h — для сохранения параметров

Прошивка Arduino

Шаг 1: Подготовка

  1. Установите Arduino IDE (версия 1.8.x или 2.x)
  2. Установите необходимые библиотеки (см. выше)
  3. Подключите Arduino Mega 2560 к компьютеру через USB кабель

Шаг 2: Настройка Arduino IDE

  1. Откройте файл stairs_arduino.ino в Arduino IDE
  2. Выберите плату: ИнструментыПлатаArduino Mega or Mega 2560
  3. Выберите процессор: ИнструментыПроцессорATmega2560 (Mega 2560)
  4. Выберите порт: ИнструментыПорт → выберите COM-порт Arduino
    • Windows: COM3, COM4 и т.д.
    • Linux: /dev/ttyACM0 или /dev/ttyUSB0
    • macOS: /dev/cu.usbmodem*

Шаг 3: Загрузка прошивки

  1. Нажмите кнопку Загрузка (стрелка вправо) или используйте Ctrl+U
  2. Дождитесь сообщения "Загрузка завершена"
  3. Откройте Монитор порта (Ctrl+Shift+M) для проверки работы
    • Установите скорость: 115200 бод

Схема подключения

Управление двигателем

Пин Arduino Назначение
9 PWM выход
19 Enable выход

Кнопки локального управления

Пин Arduino Назначение
22 Выбор режима
23 Увеличение параметра
24 Уменьшение параметра
25 Сброс параметров
26 Старт
27 Стоп
30 Уменьшение скорости
31 Увеличение скорости
29 Аварийная кнопка (грибок)
32 Лазерные датчики безопасности

Радиоуправление

Пин Arduino Назначение
40 Скорость +
41 Скорость -
42 Старт/Стоп
43 Выбор режима
44 Сброс
45 Уменьшение
46 Увеличение

Датчики

Пин Arduino Назначение
2 Энкодер A (INT0)
3 Энкодер B (INT1)
33 Концевой выключатель

Дисплеи

Пин Arduino Назначение
20 (SDA) LCD I2C данные
21 (SCL) LCD I2C тактирование
51 (MOSI) LED матрица DIN
52 (SCK) LED матрица CLK
53 (SS) LED матрица CS

Светодиоды статуса

Пин Arduino Назначение
35 Зеленый (работа)
36 Красный (стоп)
37 Аварийный

Устранение неполадок

Arduino не определяется

Windows:

  • Установите драйвер CH340 (для китайских клонов Arduino)
  • Проверьте диспетчер устройств

Linux:

  • Добавьте пользователя в группу dialout:
    sudo usermod -a -G dialout $USER
    
  • Перезагрузите компьютер

Ошибка "avrdude: stk500v2_ReceiveMessage(): timeout"

  • Проверьте правильность выбора платы и порта
  • Попробуйте другой USB кабель
  • Нажмите кнопку Reset на Arduino перед загрузкой

LCD дисплей не работает

  • Проверьте I2C адрес (может быть 0x27 или 0x3F)
  • Проверьте подключение SDA/SCL
  • Настройте контрастность потенциометром на I2C модуле

LED матрица не работает

  • Проверьте подключение SPI (DIN, CLK, CS)
  • Проверьте питание матрицы (5V)

Лицензия

Проект разработан для КГЭУ (Казанский государственный энергетический университет).

Description
No description provided
Readme 72 KiB
Languages
C++ 100%