С целью изучения вибрационных нагрузок на колесного робота был разработан испытательный стенд, на основе электромотора с эксцентриком мощностью 5W и максимальным напряжением 36V. Управление стендом осуществляется с пульта, позволяющего помимо дистанционной активации также регулировать вибрационную нагрузку на испытуемую модель путем изменения скорости работы электромотора.
Техническая составляющая эксперимента основана на использовании платформы ArduinoUno и Piezzo-датчиков с резисторами для съёма данных о вибрационных нагрузках. Блок RaspberryPi отвечает за создание сервера для передачи данных между персональным компьютером пользователя и платой Arduino.
Программный комплекс включает в себя скетч для Arduino, позволяющий отладить работу Piezzo-датчиков. С этой целью были созданы экземпляры com-портов, пронумерованные соответственно входам на плате Arduino, обеспечивающих скорость обмена данными 9600бит/сек. Были заведены переменные, в которые прописывались данные с датчиков, а так же переменные, отвечающие за прием входных команд с персонального компьютера пользователя. Также нами были созданы функции проверки входных данных и отправки собранных, которые в случае «успеха» записывают показания датчиков в назначенную переменную и пересылают на персональный компьютер. [1, стр.1]
Собранные данные передаются в виде массива. Для более удобного анализа был разработан программный комплекс на C#. Это позволило не только упростить работу с выходными данными, выводя их в виде графиков, но и управлять комплексом Arduino для получения показаний в нужный момент времени (рис.1) [4, стр.48]
На представленном графике ось Х отображает момент времени, а ось Y — частоту колебаний.
Рис. 1. График вибрационной нагрузки
Основной технической задачей при разработке испытательного вибрационного стенда является обеспечение стабильного питания основного электромотора, как от сети, так и от портативного зарядного устройства для стабильного поддержания напряжения. В цепь необходимо включить регулятор оборотов электродвигателя для изменения силы нагрузки вибростенда на испытуемую модель.
Выбор регулятора оборотов осуществлялся с учетом следующих факторов:
‒ мощность электромотора;
‒ мощность регулятора (должна соответствовать, либо быть больше мощности электромотора);
‒ максимальный ток, на который рассчитан регулятор (должен соответствовать, либо быть больше, чем ток, который потребляет электродвигатель;
‒ Тип тока (постоянный или переменный). В нашем случае используется электродвигатель постоянного тока. [2, стр.7]
Для сборки стенда были использованы следующие компоненты: коллекторный двигатель постоянного тока RS-385, регулятор оборотов, собранный на таймере NE555, и внешний аккумулятор с выходным током 1А и напряжением 36V.
Выбор этих компонентов обусловлен простотой схемы дальнейшей сборки и небольшой ценой используемых элементов. Схема регулятора представлена на рисунке 2.
Рис. 2. Схема стандартного широтно-импульсного регулятора оборотов
Таймер NE555 следит за напряжением на конденсаторе С1, которое снимает вывод THR. Как только напряжение достигает максимума, открывается внутренний транзистор, который замыкает вывод DIS на «землю». В этот же момент на выходе OUT появляется логический ноль, конденсатор начинает разряжаться через выход DIS. Когда напряжение на нем становится равно нулю, система переключается в противоположное состояние, на выходе GND транзистор закрывается. Конденсатор начинает снова заряжаться, и всё повторяется. Заряд конденсатора С1 проходит по пути R4 — верхнее плечо R1 — D2, а разряд по пути D1 — нижнее плечо R1 — DIS. Когда крутится переменный резистор R1, меняются соотношения сопротивления верхнего и нижнего плеча, что, соответственно, меняет отношение длинны импульса к паузе.
Частота задается в основном конденсатором С1 и так же зависит от сопротивления на R1. Резистор R3 обеспечивает подтяжку выхода к высокому уровню, так как там выход с открытым коллектором, который не способен самостоятельно выставить высокий уровень.
Подключение ШИМ-регулятора осуществляется через 4 клеммы: две для подачи электропитания и две для соединения с электромотором.
Стендом можно управлять на расстоянии и получать данные с модулей и датчиков. За дистанционное управление и сбор данных отвечает блок на базе RaspberryPi.
RaspberryPi — это микрокомпьютер, помещенный на одной плате размером не больше современного смартфона. Он базируется на четырёхъядерном процессоре из серии ARMCortex-A53 с тактовой частотой 1.2 Гц, оперативной памятью номиналом 1ГБ, встроенным Wi-fi 802.11n и модулем Bluetooth 4.1. Вместо жёсткого диска операционная система устанавливается на Flash-карту.
Официальной операционной системой для всех моделей RaspberryPi является Raspbian — это Unix-подобная операционная система, состоящая полностью из бесплатного программного обеспечения, разработанная корпорацией RaspberryPI Foundation. [3, стр.5]
Для получения удаленного доступа к RaspberryPi необходимо на плате запустить ssh-сервер. Поскольку Raspbian является Unix-подобной системой, в ней есть терминал. В командной строке необходимо ввести функцию sudoraspi-config. После выполнения предыдущих действий откроется меню настроек Raspi-config. Далее следует выбрать пункт ssh, который запускает сервер. Для получения доступа к консоли RaspberryPi через SSH можно использовать программу Putty или Unix-подобную операционную систему с установленным ssh-сервером. Для проверки правильности запуска сервера в терминале вводится команда sshpi@192.168.1.1, где pi — учетная запись пользователя RaspberryPi, a 192.168.1.1 — ip-адрес микрокомпьютера. Если все настроено правильно, система запросит установить пароль. Наиболее удобный и быстрый способ связи RaspberryPi с персональным компьютером — это связь без пароля. С помощью утилит из Open SSH реализуется аутентификация по открытым ключам тремя шагами:
- Для генерации ключей аутентификации на персональном компьютере используется команда ssh-keygen.
- Установка сгенерированных ключей на RaspberryPi используется команда
- ssh-copy-id –I ~/.ssh/id_rsa.pub pi@192.168.1.1
- Для добавления секретного ключа в агент аутентификации на персональном компьютере используется команда ssh-add.
После выполнения данных команд подключение к удаленному ssh-серверу будет выполняться без ввода пароля. [3,стр.19]
Литература:
1. http://arduino.ru
2. www.easyelectronics.ru
3. http://kip-world.ru
4. Джереми Блум. Изучаем Arduino. Инструменты и методы технического волшебства. –БХВ-Петербург — 2018. — 336 с.