
2 Техническое проектирование срв
2.1 Разработка диаграммы задач
Наш объект управления представляет собой сложный механизм, состоящий из нескольких комплексов элементов, которые работают независимо друг от друга. Поэтому целесообразно выделить в составе единого процесса управления мехатронной системой несколько задач, независимых друг от друга, но связанных между собой каналами передачи данных.
В результате исследований объекта управления мы разбили весь процесс управления на три уровня иерархии и выделили несколько задач.
Можно выделить следующие условия выделения задач:
– ОУ имеет несколько отдельно управляемых частей;
– в процессе управления есть несколько явно выраженных функций;
– управление разделено на несколько уровней иерархии;
– управляющие действия имеют различный характерный масштаб времени;
– в процессе управления необходимо ожидать некоторого условия, не прекращая управления другими процессами ОУ.
На данном этапе разработки необходимо:
1) выделить и обозначить (задать имя и числовой идентификатор) каждую задачу;
2) определить функции выполняемые каждой задачей;
определить какие данные являются входными и выходными для каждой задачи;
определить на каком уровне иерархии находится задача и как она связана с другими задачами системы;
определить качественно, как часто должна выполняться задача и сколько машинного времени она будет потреблять.
В графической форме перечисленные выше пункты должны быть представлены в виде диаграммы задач – структурной схемы, содержащей обозначения задач и взаимосвязей между задачами. Все взаимосвязи должны быть обозначены и описаны. Также должны быть показаны связи с аппаратными средствами ОУ (входы и выходы).
OP. Задача представляет собой визуальный интерфейс для удобного взаимодействия с оператором. По сути дела, это единственная задача, с которой оператор может каким-либо образом взаимодействовать. Так как по заданию мы реализуем программу следящего управления, то с помощью OP будет задаваться следующая точка позиционирования непосредственно, с помощью устройства указания, а затем в структурированном виде посылаться команды обработчику.
Функции данной задачи следующие:
загрузка и проверка на наличие ошибок сценариев работы;
структурирование и отправка параметров по специальному каналу интерпретатора данных;
отображение параметров текущего состояния ОУ;
предоставление оператору визуальных средств для удобного управления МС.
Входными данными для задачи OP являются сценарии работы МС в виде задаваемых с помощью устройства указания оператором точек позиционирования, регистрируемых посредством визуальных компонентов ввода. Со стороны основного процесса поступают данные о текущих координатах Xc и Yc, а также мгновенной скорости каждого двигателя Vx и Vy.
В качестве выходных данных выступают целевые координаты Xt и Yt.
Так как задача OP создана для взаимодействия с человеком, она находится на высоком уровне иерархии и является перемежающейся.
MoveX. Задача управления скоростью ШД. Предназначена для управления скоростью вращения ШД и текущей координатой выходного звена по оси X.
Функции:
расчет временных интервалов каждого из режимов движения;
расчет мгновенных значений ускорения, скорости, координаты X;
управление фрикционным тормозом по координате X;
выдержка времени стоянки.
Входными данными задачи является целевая координата Xt.
Выходными являются значение скорости ШД
Расчет временных характеристик производится с использованием типов данных с плавающей точкой, поэтому задача очень требовательна к машинному времени и относится к непрерывным задачам.
Step X. Задача формирующие скорость, это задачи отвечающие за формирование значения скорости для ШД.
Входными параметрами являются сигнал сброса счетчика шагов, количество шагов и скорость двигателя. Выходными данными являются значения состояний фрикционного тормоза B0 по координате X и сигналы на выводы параллельного порта, обозначенные как массив из четырех выходов BSM[4].
MoveY. Задача управления скоростью ДПТ, задает направление и значение скорости вращения ДПТ.
Выполняемые функции:
формирование значения разряда порта, определяющего направление вращения;
формирование значений разрядов порта, определяющих выбор скоростного режима;
определение мгновенной скорости вращения;
расчет временных интервалов на этапе разгона для инерционной оценки выходного звена;
управление фрикционным тормозом по координате Y.
В качестве входных данных задачи служат целевая координата Yt,, а также значение текущей координаты Yc, полученное от задачи подсчета импульсов.
На выходе задача MoveY имеет:
значение состояния фрикционного тормоза B1 по координате Y;
значение разряда порта SR, определяющего направление вращения ДПТ;
значение разряда порта S, определяющего скоростной режим ДПТ (низкий, средний, высокий, отсутствие подачи напряжения).
Данная задача также содержит достаточно сложные расчеты, как и задача управления скоростью ШД, и может считаться непрерывной задачей с высоким потреблением процессорного времени.
Goto0_X. Задача выхода в ноль выходного звена по координате X. Напоминает задачу управления скоростью ШД MoveX. Однако в отличие от последней движется только в отрицательном направлении и переходит в режим торможения и останова согласно сигналам датчика снижения скорости. Когда значение сигнала датчика начального положения устанавливается в единицу, считается, что выходное звено находится в начале координат и текущая координата Xc обнуляется.
Входные данные:
значение датчика снижения скорости SS;
значение датчика начального положения для координаты X PSP0.
Выходные данные:
значение состояния фрикционного тормоза B0 по координате X;
сигналы на выводах параллельного порта к обмоткам ШД BSM[4].
Goto0_Y. Задача выхода в ноль выходного звена по координате Y. Производит движение выходного звена в отрицательном направлении по координате Y пока значение датчика начального положения не будет равно единице. После остановки выходного звена текущая координата Yc обнуляется.
Входными данными является значение датчика начального положения по координате Y PSP1.
Выходные данные:
значение состояния фрикционного тормоза B1 по координате Y;
значения разряда порта SR, определяющего направление вращения ДПТ;
значение разряда порта S, определяющего скоростной режим ДПТ (низкий, средний, высокий, отсутствие подачи напряжения).
текущая координата Yc, равная нулю.
Encoder. Задача для подсчета текущей координаты Yc. Задача Encoder опрашивает значения однофазногофазного импульсного датчика положения и подсчитывает количество импульсов выходного узла.
В качестве входных данных служат один разряд параллельного порта, отвечающие за вход сигналов с импульсного датчика положения, условно представленные массивом PPS[].
На выходе Encoder имеет подсчитанную координату Yc.
Данная задача работает непосредственно с датчиком, поэтому она занимает низкий уровень иерархии. Вследствие малых расчетов она требует мало процессорного времени, однако должна выполняться с большой частотой для отслеживания импульсов без потерь.
Задача I/O в нашем случае отсутствует, так как остальные задачи среднего и низкого уровней взаимодействуют с устройством ввода/вывода напрямую, формируя готовые сигналы, которые впоследствии нужно только усилить.
Таким образом, описанные задачи составляют комплекс управления МС. И теперь на основе всего вышесказанного мы можем построить диаграмму задач системы управления мехатронным объектом. Диаграмма задач представлена на рисунке 2.1.
Рисунок 2.1 – Диаграмма задач системы управления мехатронным объектом