Схема алгоритма ЛИ с ОФ
(для 4-х координатных СЧПУ).
Будем обозначать:
1) F (ai, bi) ® Fi
2) F (ai+1, bi+1) ® Fi + 1 и так далее.
Начало
Нет
Fi(a,d)>0
Шаг только по d Да шаг по d
Fi + 1= Fi + dкон Fi+1=Fi+aкон-dкон
Начало 3
Fi(a, g)>0 Нет
Шаг только по g Да Шаг по g
Fi + 1 = Fi - gкон Fi+1=Fi+aкон+gкон
Начало 2
Fi(a,b) Нет
Шаг только по b Да
Fi+1=Fi-bкон Fi+1=Fi+aкон-bкон
Начало 1
Шаг по a, ai+1=ai-1 где 1 ® dz
Нет
a=0
Да
Конец обрабатываемого
кадра
Конец
Во избежании ошибки на одну дискрету по координатам b, g, d необходимо на первом шаге выдать приращение dz по всем координатам.
Подготовка данных кадра управления программно включает в себя:
а) Сортировку конечных значений реальных координат и их идентификация с абстрактными координатами a, b, g, при этом в качестве a кон должна применяться наибольшая координата.
|
|
б) Выбор начала алгоритма зависит от цикла нулевых координат.
в) Необходимая частота выдачи элементов шагов по наибольшей координате определяется в заданной скорости Vk и угла.
fт = 1/T = Vkaкон/dz/(aкон2+bкон2+gкон2+dкон2)1/2
оценочной функции.
b I квадрант.
F(a,b)>0
R F(a,b)=0 решение траектории
движения изображающей
F(a,b)<0 точки
a
Если дуга окружности в других квадрантах, то
№ квадранта | Направление | |||
® | ¬ | |||
х | у | Х | у | |
1 | a -a -b b | b b -a -a | b -b -a a | a a -b -b |
F(a,b)=a2+b2-R2
Пересчёт значений F(a,b) для движения по часовой стрелке (®).
а) При шаге по a (если (F(ai,bi)£0))
F (ai+1, bi) = (ai+1)2+bi2-R2=F(ai,bi)+2ai+1
DF
б) При шаге по b (если F(ai,bi)>0)
F(ai, bi+1)=ai2+(bi-1)2-R2=F(ai,bi) - 2bi + 1
DF
Для повышения скорости движения алгоритм пересчёта F(a,b) можно усовершенствовать с учётом того, что:
а) При 0°<j<45° (1 участок) a– ведущая координата.
б) При 45°£j£90° (2 участок) b - ведущая координата.
Тогда: F(ai+1, bi+1) = F(ai+1,bi-1) = F(ai,bi) + 2(ai - bi) + 2
DF
Приращением ±1 соответствует элемент движения DF по a и b на ±dz.
Fi – частота шагов (определяет контурную скорость).
Если fi=const, то движение по окружности будет с Vk=var (переменным), что нежелательно с технологической точки зрения.
Поэтому: fi+1=fi±Vk/R
Где «+» – для первого полуквадранта,
«-» ¾ для второго полуквадранта.
Þ Тогда Vk – const.
Алгоритм круговой интерполяции.
Начало
(2 участок) Нет Да (1 участок)
ai-bi³0