Статья опубликована в рамках: VI Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 18 ноября 2012 г.)
Наука: Информационные технологии
Скачать книгу(-и): Сборник статей конференции
- Условия публикаций
- Все статьи конференции
отправлен участнику
РАЗРАБОТКА СИСТЕМЫ УПРАВЛЕНИЯ ВРАЩЕНИЕМ АНТЕННЫ ЦИФРОВЫМИ МЕТОДАМИ.
Назарцев Максим Сергеевич
cтудент 4-го курса, кафедры «Информационные системы и технологии» СКФУ филиал в г. Пятигорск
E-mail: cher1945 @ mail.ru
Яловой Валерий Яковлевич
научный руководитель, старший преподаватель СКФУ в г. Пятигорск
Для эффективной работы в эфире радиолюбителям, прежде всего необходима направленная антенна. Неудобство при ручном вращении, неблагоприятные погодные условия и удаленность от рабочего места указывают на необходимость разработки автоматизированной системы управления вращением. В качестве управляющего объекта выбор был остановлен на ПК. Основные преимущества управления опорно-двигательным устройством с помощью ПК ― это широкие возможности для синхронизации текущего положения антенны с интерфейсом пользователя, гибкость в вычислениях и наглядность в отображении.
При разработке этого устройства ставились основные задачи:
1. Антенна должна легко реверсироваться, т. е. изменять направление вращения.
2. Антенна должна останавливаться в запретном секторе и после этого ее можно вернуть назад, в разрешенный сектор вращения (для сохранения ВЧ кабеля).
3. Управление вращением антенны должно осуществляться с рабочего места коллективной станции при минимальном количестве соединительных проводов.
4. Схема должна иметь блокировку от одновременного выбора противоположных направлений вращения.
5. Система управления вращением должна быть пылевлагозащищенной.
6. Возможность записи нескольких положений в память для последующего быстрого вывода, инициализация положения.
7. Изменение скорости вращения в доступных пределах.
Основная часть поворотного устройства ― двигатель. При выборе двигателя необходимо обращать внимание на массогабаритные данные нагрузки, а также способы управления его вращением. Для данной задачи подходит шаговый двигатель. Шаговый двигатель состоит из ротора ― постоянного магнита, который вращается внутри, и статора ― четыре катушки (север, восток, юг, запад), которые являются частью корпуса и не перемещаются. Ротор совершает вращение посредством последовательных импульсов напряжения постоянного тока, подаваемого к одной или двум катушкам одновременно.
Печатная плата аппаратной части выполнена по технологии ЛУТ Рисунок платы разрабатывался в программе SpintLayot 5.0
Рисунок 1. Схема аппаратной части блока управления
Рисунок 2. Рабочее окно программы Sprint Layot
Шаговые двигатели достаточно распространены в устройствах, в которых необходимо добиться точного перемещения механизмов. Существует много типов шаговых двигателей, но наиболее универсальными в плане управления являются 2-х фазные униполярные двигатели. Этот тип двигателей имеет две независимые обмотки с выводами от середины. Применение шагового двигателя обуславливает построение системы управления без использования обратных связей (датчиков угла и др.), естественно обеспечив достаточный момент, что бы исключить проскальзывание, но на всякий случай и для инициализации системы должен быть датчик начального положения. Для исключения накапливания ошибок из-за проскальзывания (если такое может случиться), можно применить контроль вращения выходного вала и, если обнаруживается проскальзывание — система инициализируется.
Основные технические характеристики двигателя:
· Максимальный статический синхронизирующий момент, нт, не менее — 0,25
· Единичный шаг, град — 1,8
· Погрешность обработки шага, % — 3
· Максимальная частота приемистости, Гц — 1200
· Номинальный ток питания в фазе, А — 1,5
· Номинальное напряжение питания устройства, В — 30
· Максимальная потребляемая мощность, Вт, не более — 8,8
· Масса, кг — 0,36
· Система управления вращением антенны состоит из аппаратной и программной части. Шаговой двигатель расположен в подставке-опоре, на цилиндрической трубке которой закреплена антенна. Управление микросхемой драйвера осуществляется с помощью параллельного LPT-порта персонального компьютера в режиме ECP/EPP младшими четырьмя выводами линий данных (D0—D3). Главный элемент схемы — транзисторный ключ КТ-829. Напряжение питания — 24 V.
Рисунок 3. Управляющие импульсы полушагового вращения двигателя
Существует несколько алгоритмов управления питанием обмоток двигателя. Самым простым является полношаговое управление [1], когда в любой момент времени запитана только одна из половинок обмоток.
Ротор при таком управлении принимает естественное положение относительно статора. Есть еще способ управления шаговым двигателем в полношаговом режиме, когда одновременно запитываются две фазы, таким образом удается увеличить момент на валу на 40 %. Главным недостатком полношагового управления являются сильные вибрации двигателя и малая дискретность шага, равная паспортному значению. Для того чтобы уменьшить вибрации и добиться более плавного и точного вращения вала существует более рациональный способ — управление в полушаговом режиме [1].
При такой работе вал двигателя за один цикл совершает половину шага и фиксируется между двумя естественными состояниями равновесия. Таким образом дискретность поворота вала увеличивается в 2 раза. Есть еще способ увеличить дробление шага ротора двигателя — микрошаговое управление — когда обмотка не просто запитывается, а запитывается определенным током. От отношения тока в соседних обмотках зависит положение ротора — чем больший ток течет в обмотке по отношению к соседней, тем ближе к ней смещается ротор и наоборот. Это позволяет увеличить дробление шага в десятки и сотни раз.
Программное обеспечение представляет собой специальный интерфейс для работы с LPT-портом, и пользовательский интерфейс в виде азимутального кольца, показывающее текущее положение антенны, а также настройки и данные привязки к местности. Сигналы на транзисторные ключи подаются через определённые интервалы времени, которые задаются программно с помощью функции остановки потока программы (SLEEP) и зависят от времени, за которое должна произойти отработка команды вращения. Изменяя величину задержки между шагами, можно в больших пределах регулировать скорость вращения вала. При выбранной в данном случае задержке в 1000 мкс с шаговым двигателем имеющем 200 шагов на оборот (400 полушагов) скорость вращения получается примерно 2,5 оборота в секунду.
В качестве инструментария для работы с портом была выбрана интегрированная среда разработки Delphi, позволяющая решать задачи в короткие сроки, удачно демонстрирует парадигмы процедурного программирования и объектно-ориентированного программирования, а также обладает простой и понятной архитектурой стандартных библиотек. Для работы под управлением операционной системы Microsoft Windows используются две функции WinAPI — Inp 32 и Out 32, входящие в состав стандартной библиотеки inpout32.dll. Пользовательский графический интерфейс был реализован на языке Action Script 3.0 в среде Flash Develop. Взаимодействие между Delphi и Flash осуществляется при помощи контейнера-объекта ActiveX Control for Flash Player [2].
Выбор состава технических и программных средств
В качестве инструментария для работы с портом была выбрана интегрированная среда разработки Delphi 7, позволяющая решать задачи в короткие сроки, удачно демонстрирует парадигмы процедурного программирования и объектно-ориентированного программирования, а также обладает простой и понятной архитектурой стандартных библиотек.
Delphi 7 — полное решение для разработки приложений от проектирования до развертывания по архитектуре, управляемой моделью (MDA), которое позволяет интегрировать моделирование, разработку и развертывание приложений для платформы Windows.
Ключевые возможности, появившиеся в Delphi 7 Studio:
· предварительный вариант средств для работы с Microsoft. NET Framework;
· Kylix 3.0 для Linux в составе пакета;
· бесплатная лицензия на развертывание многозвенных приложений (которая до этого была платной), использующих технологию DataSnap (прежнее название — MIDAS);
· полное решение проектирования и развертывания корпоративных приложений по технологии Model Driven Architecture (MDA);
· мощные и удобные средства разработки WEB-приложений;
· средства создания качественных кроссплатформенных отчетов Rave Reports;
· среда моделирования ModelMaker (по технологии UML).
Компания Borland первой предоставила разработчикам возможность перехода на .NET при помощи Delphi 7 Studio. Поддержка компанией Borland платформы .NET позволяет разработчиками, использующим Delphi, быстро и продуктивно создавать приложения для .NET с сохранением существующих инвестиций в информационные технологии. Теперь работа в Delphi 7 Studio позволяет программистам легко переносить имеющиеся у них знания, навыки и ресурсы на платформу .NET.
Delphi 7 Studio обладает возможностями проектирования и развертывания корпоративных приложений. Это позволяет разработчикам быстрее воспользоваться преимуществами разработки корпоративных приложений от концепции до коммерческой версии при помощи новой системы проектирования UML и технологии Model Driven Architecture (MDA).
Для работы под управлением операционной системы Microsoft Windows используются две функции WinAPI — Inp32 и Out32, входящие в состав стандартной библиотеки inpout32.dll.
В связи с тем, что разработанный алгоритм подразумевает использование графических возможностей и параллельных процессов взаимодействия с пользователем, было принято решение использовать язык Action Script при разработке графического интерфейса. В качестве интегрированной среды разработки Flash Develop.
ActionScript — объектно-ориентированный язык программирования, один из диалектов ECMAScript, который добавляет интерактивность, обработку данных и многое другое в содержимое Flash-приложений. ActionScript исполняется виртуальной машиной (ActionScript Virtual Machine), которая является составной частью Flash Player. ActionScript компилируется в байткод, который включается в SWF-файл.
Рисунок 4. Среда разработки Flash Develop
Среда разработки Flash Develop [3] позволяет достаточно быстро создавать приложения, а также обладает следующими преимуществами:
1. Высокая производительность разработанного приложения
2. Низкие требования разработанного приложения к ресурсам компьютера.
3. Удачная проработка иерархии объектов
Взаимодействие между Delphi и Flash осуществляется при помощи контейнера-объекта ActiveX Control for Flash Player.
Технические средства, достаточные для оптимальной работы программы:
1. Windows 9x/ME/NT/2000/XP/Wista/Windows 7.
Рабочие файлы программы
inpout32.dll — библиотека для работы с LPT-портом
Project1.exe — исполняемый файл
radio.swf — файл flash
Для запуска проекта необходимо запустить файл Project1.exe.
Интерфейс программы: структура программных модулей
Рисунок 5. Рабочее окно программы
Настройка поворотного устройства производится с помощью Мастера настройки поворотного устройства и состоит из четырех этапов:
Этап 1: Определение текущего местоположения и направления сторон света
Рисунок 6. Этап 1. Определение текущего местоположения и направления сторон света
При нажатии мыши на азимутальное кольцо режим изменения направления сторон света станет активным. Нужно знать где они расположены на местности и указать в программе. Для большей точности можно воспользоваться компасом. Далее вводится название населенного пункта, а так же широта и долгота. После этого необходимо нажать кнопку «Изменить местоположение » и перейти к следующему шагу.
Этап 2: Установка поворотного устройства в исходное положение.
Для того, чтобы система управления поворотным устройством могла определить положение антенны — последнюю необходимо установить в исходное положение, то есть точку отсчёта. Точная настройка положения происходит с помощью кнопки «Шаг», а значения меняются в полях ввода «Количество шагов» и «Скорость». Направления вращения определяется кнопками «По часовой стрелке» или «Против» [4].
Рисунок 7. Этап 2. Установка поворотного устройства в исходное положение
Рекомендуемая скорость работы устройства 200 мс интервала между импульсами. По окончанию корректировки позиции нужно нажать кнопку «Следующий шаг»
Этап 3: Синхронизация положения антенны с положением датчика на азимутальном кольце
Рисунок 8. Синхронизация положения антенны с положением датчика на азимутальном кольце
Для активации режима синхронизации необходимо нажать кнопку «Синхронизация». После этого выбрать такой угол на азимутальном кольце, который бы соответствовал реальному положению антенны. В случае необходимости сбросить счётчик.
Кнопка «Следующий шаг» выводит из «Мастера настройки повторного устройства»
Вращение же осуществляется в главном фрейме программы. Зеленый луч показывает текущий угол. Управление происходит так же, как и на этапе указания исходного положения — кнопками «Против часовой» и «По часовой» с параметрами скорости и величины угла.
Для работы программы обязательно нужно установить Shockwave Installer Slim, а также flashplayer 10 ax debug
Основная процедура программы:
begin
for i:= 1 to n do
begin
Out32($378,8); // 1000
Sleep(t);
Out32($378,4); // 0100
Sleep(t);
Out32($378,2); // 0010
Sleep(t);
Out32($378,1); // 0001
Sleep(t);
end;
где происходит подача импульса в LPT-порт через определённый промежуток времени, в течении которого программа «подвисает», sleep и расположена в теле цикла.
Изготовлен экспериментальный образец описанной системы, показавшей хорошие результаты на чемпионате Ставропольского края по радиосвязи на УКВ диапазоне и получившей положительные отзывы радиоспортсменов кандидатов и мастеров спорта.
Описанный принцип управления может использоваться в других отраслях.
Список литературы:
1.Гук М. Аппаратные интерфейсы ПК, СПб.: Питер, 2002. — 528 с.
2.Дарахвелидзе П., Марков Е.. Программирование в Delphi 7. BHV — СПб.: 2003. — 784 с.
3.Колин Мук. Action Script 3.0 для Flash. Подробное руководство, СПб.: Питер, 2011. — 287 с.
4.Кенио Т., Шаговые двигатели и их микропроцессорыне системы управления, М.: Энергоатомиздат, 1987. — 200 с.
отправлен участнику
Оставить комментарий