Разработка и исследование мехатронной мобильной системы шарового типа



страница17/21
Дата20.09.2023
Размер1.09 Mb.
#118731
ТипДипломная работа
1   ...   13   14   15   16   17   18   19   20   21
bibliofond 551917
Свързани:
Конструктивное усовершенствование шасси самолета Ту
4.3 ПО системы управления

Итак, исследуемая система компьютерного управления имеет в себе несколько программных составляющих. Ее структура представлена на рис. 4.4. Описания составляющих приведены далее.





Рис. 4.4 - Структура программной составляющей системы управления роботом

Полевой терминальный задатчик - программа, предоставляемая магистрантом Ларионовой Еленой, созданная ею в рамках ее магистерской работы и предоставляющая терминальное задание модуля вектора скорости и его направления во времени для моделей системы.


Связка полевого терминального задатчика и модели объекта является сама по себе моделью системы, которая и предполагается к использованию для получения управляющих значений для вычислителя управления.
Вычислитель управления, программный ШИМ и драйвер LPT-порта являют собой ПО инструментально ЭВМ, которое описано далее.
Как упомянуто в постановке задачи (см. разд. 1.4), инструментальное ПО в системе должно выполнять 3 функции:
) Считывание управляющих импульсов либо с клавиатуры, либо из файла со значениями терминального управления в режиме реального времени и передачу в ШИМ.
) Формирование ШИМ полученных управляющих воздействий.
) Выдача полученных ШИМ-сигналов на LPT-порт.
Для реализации этой функции была написана программа на языке C++ и Assembler, описание этой программы представлено в Приложении 3.
Предполагаемая структура программы представлена на рис. 4.5.



Рис. 4.5 - Структура программы на инструментальной ЭВМ

Следует отметить, что в данной программе не реализовано считывание управляющих импульсов от терминального задатчика из файла. Это обусловлено тем, что записывание в файл этих значений не реализовано, так что автор посчитал ненужным пока делать эту доработку.


Общая структура программы такова.
В программе есть основной цикл. В нем происходит считывание нажатой клавиши (сюда же может быть добавлено считывание управляющих воздействий из файла), вывод текущих управляющих воздействий на экран при их изменении и формирование переменной, отвечающей за подаваемые в ШИМ управляющие воздействия. Внутри данного цикла присутствует мини-цикл, которые отвечает за реализацию ШИМ. Этот мини-цикл работает с частотой, максимально допустимой для работы с LPT-портом. В его первую итерацию все битовые выходные сигналы на движители выставляются в 1, а далее в нем проверяется номер текущей итерации; если он превосходит значение управляющего воздействия для каждого из сигналов, то бит соответствующего сигнала сбрасывается в 0. В конце мини-цикла эта битовая карта выводится в регистр LPT-порта.
Программа имеет два настраиваемых параметра: количество мини-циклов в основном цикле и пауза в конце итераций мини-цикла. Первый параметр отражает точность отработки сигнала, но его большое значение приводит к тому, что на движителях интегрирование ШИМ-сигнала не происходит по причине его затянутости. При последней реализации он был взят равным 4. Второй параметр - отражает частоту работы с LPT-портом. При последней реализации он был выставлен на максимум с обеспечением работоспособности порта - 2 (что соответствует задержке программы на 2 мс).
Выходом программы является битовая карта, которая подается на основной регистр LPT-порта. В этой карте нас интересуют первые 4 бита - те биты, которые подаются на первые 4 ножки вывода LPT-порта. Эти ножки соответствуют двум сигналам вращения двигателей вперед и двум сигналам вращения назад.
Управление с клавиатуры осуществляется нажатием следующих кнопок: Insert - увеличение управляющего воздействия на левом двигателе на 1 (максимум 4), Delete - уменьшение управляющего воздействия на левом двигателе на 1 (минимум -4), PageUp - увеличение управляющего воздействия на правом двигателе на 1 (максимум 4), PageDown - уменьшение управляющего воздействия на правом двигателе на 1 (минимум -4), Esc - выход из программы.
Следует пояснить, что если управляющее воздействие с тем или иным знаком равно значению первого из параметров программы, то и соответствующий двигатель будет постоянно крутиться в соответствующем направлении. Меньше этого параметра по модулю значение означает соответствующую долю сигнала в периоде всего импульса ШИМ-сигнала. При 0 сигнала нет, соответствующий двигатель не вращается.


Сподели с приятели:
1   ...   13   14   15   16   17   18   19   20   21




©obuch.info 2024
отнасят до администрацията

    Начална страница