Состав привода
Поворотный механизм состоит
из двух идентичных приводов, каждый из которых в свою очередь состоит
из шагового мотора с системой векторного управления, предварительного
редуктора и главного редуктора, на выходном валу которого установлен
датчик положения, измеряющий угол поворота этого вала.
Суммарный коэффициент передачи для двух редукторов равен 270.
И моторы и датчики осуществляют обмен данными с персональным компьютером посредством промышленной сети CAN.
Для этого в компьютер установлена специальная плата расширения с двумя CAN портами на выходе (используется один).
CAN (англ.
Controller Area Network — сеть контроллеров) — стандарт промышленной
сети, ориентированный, прежде всего, на объединение в единую сеть
различных исполнительных устройств и датчиков. (Википедия).
Питание цифровой и силовой части.
Питание для управляющей
(цифровой) и силовой части раздельное и составляет 15 Вольт и 48 ÷ 80
Вольт постоянного напряжения соответственно.
Цифровые схемы моторов и датчиков потребляют суммарно ток не более 1А.
Максимальный потребляемый ток каждого мотора равен 3А и ограничивается программно.
Для
максимально быстрого вращения моторов требуется повышенное напряжение,
по этому последовательно с источником питания 48 Вольт я установил ещё
один с номинальным напряжением 15 Вольт. На самих источниках есть
возможность регулировки выходного напряжения в небольших пределах.
Установив
на источнике 48 Вольт выходное напряжение 55 Вольт, удалось получить
суммарное напряжение для питания силовой части моторов 70 Вольт.
Это позволило вращать моторы практически с максимальной скоростью и получить скорость поворота антенны 20°/сек.
Из-за особенностей конструкции датчика пришлось применить вынесенный опорный вал.
Т.к. в комплекте не
оказалось заказанных подшипников пришлось применить те, что были в
наличии. Но они отличались внутренним диаметром (25 мм), а вал
изготовили под диаметр 30 мм. По этому был вынужден переточить вал на
новый диаметр и сделать заново канавку для стопорного кольца.
Затем приварил боковые фланцы для крепления швеллеров к соответствующим
валам, а так же вал азимутального редуктора к крепёжной трубе с болтами.
После токарных, сварочных и покрасочных работ поворотный привод был смонтирован на улице, на опорной мачте.
В качестве коммутационной коробки использовал мыльницу.
Внутри
расположена монтажная плата с кучей клемм, к которым подведены провода
CAN шины и питания цифровой части энкодеров (датчик угла поворота) и
моторов.
На монтажной плате предусмотрена возможность подключения оконечного терминального резистора 120 Ом (используется для CAN шины).
Разрешение энкодеров 4096 точек на 1 оборот, что позволяет получить точность 0,1°.
Т.к.
все устройства «висят» на одной шине, то для управления используется
всего три провода – два это собственно CAN шина и ещё один это общий.
Для работы с CAN шиной отлично подходит витая пара, её я и применил.
Ещё по двум витым парам подаётся питание цифровой части. Просто каждую
пару использовал, как один провод для уменьшения падения напряжения.
Таким образом, для работы с цифровой частью всех устройств потребовался
всего один стандартный сетевой кабель с четырьмя витыми парами.
Затем на привод установил сетчатую параболическую антенну диаметром 1,8 м.
В арматуре крепления
антенны (швеллеры) я предусмотрел возможность крепления противовесов, но
в целях проверки силовых возможностей привода устанавливать их не стал.
Позднее при испытаниях оказалось, что привод прекрасно справляется с
позиционированием подобной антенны и без противовесов, правда только при
питании силовой части моторов напряжением не менее 70 Вольт.
Напомню, что моторы работают с максимальным напряжением питания силовой части 80 Вольт.
Получается,
что 70 Вольт это разумный компромисс между минимальным и максимальным
напряжением – не слишком мало, но и не максимально высоко.
Кабели
от привода и от облучателя заведены в расположенный рядом щиток в
котором установлены клеммники и два электролитических конденсатора
ёмкостью 15000 мкф с рабочим напряжением 80 Вольт.
Конденсаторы
подключены к кабелям питания силовой части моторов в соответствии с
рекомендациями производителя этих моторов и служат для фильтрации
импульсных скачков напряжения в высоковольтных цепях.
Из щитка
кабели «идут» в помещение расположенное на втором этаже в
противоположной части дома. Там они подключены к источникам питания и к
компьютеру.
Для питания использовал два четырёхжильных электрических кабеля сечением 0,75 мм2.
Таким образом, каждый потребитель запитан по своим отдельным двум проводам.
Длина кабелей питания примерно 15 метров, а сетевого кабеля более 25 м.
Защита от осадков.
Для защиты от осадков использовал ПВХ материал, который используется для изготовления тентов, бассейнов и т.п.
Эта ткань зарекомендовала себя весьма неплохо при круглогодичном и многолетнем использовании.
Управление приводом.
Для управления приводом я написал соответствующее программное обеспечение.
Функциональные возможности:
Ввод координат вручную с точностью 0,1°;
Ввод координат через COM порт;
Отображение положения антенны в соответствующих окошках;
Отображение положения и перемещения антенны в реальном времени на панели «Радар»;
Установка максимальной скорости поворота антенны;
Отображение реальной скорости поворота антенны;
Отображение в дополнительном окне телеметрии с моторов и энкодеров.
Итог предварительных испытаний.
Поворотный
привод получился вполне работоспособный. Он без проблем сопровождает
любые спутники и сканирует окружающее пространство с максимальной
скоростью 20°/сек. Работает без противовесов, по крайней мере, сейчас,
т.е. в летнее время. Если зимой из-за загустевшей смазки в редукторах
ему придётся тяжело, то можно будет поставить противовесы и (или)
применить подогрев редукторов. Правда именно в этой конструкции можно
подогреть только редуктор элевации, т.к. он находится под кожухом. А вот
редуктор азимута подогреть весьма проблематично, он ведь находится на
улице и ни чем не закрыт. Это нужно будет учесть на будущее.
Выводы по результатам предварительных испытаний.
В этом приводе применён алгоритм позиционирования антенны по показаниям датчиков установленных на соответствующих осях.
При этом моторы управляются «по скорости».
Это значит, что моторам задаётся скорость и направление вращения.
Т.е.
зная заданные координаты и положение антенны (по датчикам) я
рассчитываю направление, скорость перемещения и отправляю эти данные
моторам.
Моторы крутятся до тех пор, пока датчики не покажут
приближение к заданной точке, после чего включается алгоритм торможения,
чтобы не проскочить эту самую точку.
Как только датчик покажет заданную точку или чуть более, то подаётся команда на полный останов мотора.
Теперь по поводу этого самого «чуть более».
Оказалось
(и предвиделось), что в реальных условиях ветер может с большой
скоростью качнуть антенну за заданную точку в пределах люфта редуктора.
Например,
антенна приближается к точке 180°. В позиции 179,9°, когда мотор ещё
работает и плавно подводит антенну к 180°, происходит порыв ветра и
антенна чуть ли не мгновенно проскакивает 180° и оказывается в позиции
180,1°.
Вот это и есть «чуть более».
Если этого не сделать, то программа не увидит заданных 180° и радостно поползёт дальше в ожидании нужной позиции.
Есть и другие похожие проблемы, когда антенна оказывается не там, куда её направили.
К примеру отправил я её на азимут 0°, а она чуть проскочила и оказалась в позиции 359,5°. Т.е. вообще не в своём секторе!
Это математически, ну а практически она находится там, где надо и болтается в люфте в пределах этого самого 0°.
Это один из минусов подобного алгоритма управления.
При чём жирных минусов!
Суммарный люфт, кстати, набрался примерно на 0,8°.
Это не так уж и много, всего то ± 0,4° от заданной позиции.
Но тут есть один подводный камень.
Если антенну откалибровать в одном крайнем положении люфта, то потом в работе максимальное отклонение составит уже 0,8°.
Так что калибровать антенну следует в середине люфта и в безветренную погоду.
Для
того, чтобы уйти от всех этих непонятностей по поводу положения антенны
на основе данных с датчиков я планирую применить другой режим работы
моторов и соответственно другой алгоритм позиционирования.
У моторов есть ещё один режим работы, который называется «по положению».
В этом режиме мотору задаётся направление, максимальная скорость вращения и на сколько шагов ему следует повернуть свой вал.
Ещё можно задать плавный старт и останов, а так же и саму эту «плавность».
Контроль осуществляет сам мотор своими «мозгами», опираясь, в том числе на свой внутренний энкодер.
Таким
образом, можно позиционировать антенну не задумываясь о том, проскочит
она заданную позицию или нет и опираться только на расчётные данные. А
внешние энкодеры использовать для калибровки антенны и для контроля во
время эксплуатации.
Такой алгоритм управления видится мне наиболее оптимальным.
Для смены алгоритма нужно только изменить программу, а «железо» менять не потребуется.
P.S.
Ну и напоследок ещё одно фото.
Поленился я сделать аварийное отключение питания.
Во время испытаний антенна ринулась вниз, затем упёрлась в свою мачту и у привода оказалось достаточно сил, чтобы погнуть её.
Комментарии
Отправить комментарий