Системы цифрового управления многокоординатными следящими электроприводами. Гусев Н.В - 141 стр.

UptoLike

Составители: 

4.5. Алгоритмы формирования задающих воздействий при линейной и
круговой интерполяции
При рассмотрении алгоритмов формирования задающих воздействий ба-
зирующихся на обработке геометрии траектории движения и интерполяции в
реальном времени остановимся на варианте предлагаемом в аппаратном PCI
сервоконтроллере описанном в параграфе 4.4. Поскольку алгоритмы управле-
ния, реализуемые в таких системах, жестко привязаны к аппаратной платформе,
то наиболее целесообразно представить не только математическое описание ал-
горитмов, но и частично программный код.
Базовые алгоритмы линейной и круговой интерполяции, а также структу-
ры, приведенные ниже, взяты из библиотеки «Interpolation.c». Данные алгорит-
мы предназначены для решения траекторных задач возникающих при управле-
нии многокоординатными следящими электроприводами. Как уже было сказа-
но ранее, к траекторным задачам относятся: интерполяция и расчет заданной
величины контурной скорости с учетом разгона и торможения на каждом вы-
числительном такте.
Работа с линейной интерполяцией осуществляется вызовом процедуры
LineInterp_Make(Line, HWData);
на каждом такте интерполяции (см. рис. 4.25). Здесь Lineструктура с пара-
метрами кадра линейной интерполяции, HWDataструктура с параметрами
сервомодуля.
Параметры кадра, поступающие из персонального компьютера в серво-
контроллер, задаются в следующих полях структуры Line:
Line.X1=0; // Координата начальной точки по оси X, мкм
Line.X2=1000; // Координата конечной точки по оси X, мкм
Line.Y1=0; // Координата начальной точки по оси Y, мкм
Line.Y2=1000; // Координата конечной точки по оси Y, мкм
Line.V1=0; // Начальная контурная скорость, мкм/с
Line.V2=1000; // Конечная контурная скорость, мкм/с
Line.a_c=1000; // Контурное ускорение, мкм/c
2
Line.Plane=2; // Плоскость интерполирования XY
Рис. 4.25. Линейная интерполяция (Line.X_out, Line.Y_out, Line.Z_out, Line.K_outсигнал за-
дания на ЦАП либо на контур положения в зависимости от настроек сервомодуля)
141