ПЛК: Astra Linux: Управление бесколлекторными двигателями - видео HD
smart 4984 ролика
Astra Linux: Управление бесколлекторными двигателями - видео.
В этом видео мы подключим бесколлекторные двигатели к компьютеру с операционной системой Astra Linux, настроим нужное программное обеспечение, и поймем общую схему работы с двигателями, а также с абсолютными энкодерами положения вала.
Astra Linux — это российский дистрибутив Линукс, который сертифицирован для специальных применений. В этом видео мы будем использовать версию Орел, Common Edition с hardened ядром.
У меня есть бесколлекторный двигатель со встроенными датчиками Холла и встроенным квадратурным энкодером. Также есть небольшой бездатчиковый бесколлекторный двигатель.
Имеется магнитный абсолютный энкодер положения вала.
Для подключения двигателей и энкодеров к компьютеру с Astra Linux будем использовать контроллеры бесколлекторных двигателей компании Сервосила.
Контроллеры бывают прямоугольной или круглой формы. На контроллерах есть разъемы для подключения двигателей, энкодеров, датчиков Холла и питания.
Контроллерам двигателей требуется напряжение питания от 7 до 60 вольт DC. Я приспособил блок питания от старого ноутбука. Блок питания выдает напряжение 19.7 вольт. Я раздвоил кабель и плоскогубцами закрепил разъемы для подключения кабелей к контроллерам.
Сборку начнем с шин данных USB и CANbus. Обыкновенный кабель USB используется для подключения одного из контроллеров к управляющему компьютеру или PLC. Остальные же контроллеры подключаются друг к другу гирляндой с помощью кабелей шины CANbus. Тот единственный контроллер, который подключен по USB к комьютеру, становится шлюзом USB-в-CABbus для всех остальных контроллеров в цепочке.
Теперь можно подключить двигатели. Я пока подключу только силовые фазы двигателей, и запущу двигатели в режиме с бездатчиковым управлением. Плоскогубцами я заранее одел нужные разъемы на кабели фаз двигателей.
Осталось только подключить электропитание к обоим контроллерам двигателей. Обязательно соблюдайте полярность подключения питания. Напряжение питания допускается любое в диапазоне от 7 до 60 вольт.
На контроллерах двигателей есть клеммы для подключения питания, помеченные знаками плюс и минус.
В Astra Linux контроллер Сервосила определяется, как виртуальный последовательный порт.
Давайте запустим Терминал и найдем этот виртуальный последовательный порт в списке устройств в Линукс.
Контроллеры посылают телеметрическую информацию через этот порт с помощью текстовых сообщений.
Контроллеры посылают телеметрию в текстовом виде.
Обратите внимание, что телеметрия идет от всей цепочки контроллеров, а не только от того, который подключен к компьютеру по USB.
После настройки виртуального последовательного порта, можно установить графическую программу Сервоскоп. Для этого надо разархивировать скачанный архив с программой, запустить Терминал, перейти в директорию с разархивированными файлами, и запустить скрипт.
В программе Сервоскоп выбираем правильный последовательный порт и подключаемся к нему.
В списке устройств видны оба наших контроллера.
Два раза шелкните на имени устройства, чтоб открыть окно, через которое можно настраивать и управлять контроллером.
Можно открыть сразу несколько окон.
Проверьте, что телеметрия показывает правильное напряжение питания.
Следующий шаг — это запуск процедуры Автонастройки контроллеров.
Из выпадающего списка выбираем команду «Auto-Configuration». Указываем максимальный ток из фазы-в-фазу, который двигатель может выдержать.
Указываем количество полюсов ротора двигателя.
Эти параметры берутся из документации на двигатель.
Во время Автонастройки контроллер посылает серию импульсов для измерения различных характеристик двигателя. Эти импульсы и заставляют двигатель вращаться и ускоряться. Контроллер использует результаты измерений для самонастройки под конкретный двигатель.
Будьте осторожны, потому что двигатель несколько раз ускоряется до максимальной скорости во время процедуры Автонастройки.
Повторный гудок сигнализирует окончание процедуры автонастройки.
Теперь надо повторить такую же процедуру Автонастройки для второго двигателя.
Процедура автонастройки формирует базовую конфигурацию контроллера.
Конфигурацию потом можно настраивать и оптимизировать под конкретные задачи уже вручную.
Выбираем из списка команду Electronic Speed Control. Задаем скорость в 200 электрических оборотов в секунду.
Нажимаем кнопку Send.
Двигатель начинает вращаться с заданной скоростью.
Задаем скорость 200 оборотов в секунду, но в обратную сторону.
Двигатель работает в бездатчиковом режиме.
В заключение фильма продемонстрирую подключение магнитного энкодера положения вала с цифровым интерфейсом BISS-C.
Датчики могут быть как линейные, так и угловые.
Специальный кабель соединяет энкодер с контроллером. Для подключения энкодеров на контроллере есть специальный разъем.
Информация с датчика применяется в различных режимах сервоуправления и direct drive режимах.
Телеметрию с датчика можно посмотреть в окне управления двигателем.