Разработка программ реализации заданного комплекса, Разработанные функции интерполяций - Разработка микропроцессорной системы управления робототехническим комплексом

Для участков контура, которые задаются линейной функцией, используем метод линейной интерполяции по ЦДА. А для участков, которые описываются функцией для окружности, используем круговую интерполяцию по оценочной функции.

Алгоритмы методов интерполяций

А) Линейная интерполяция по ЦДА

B) Круговая интерполяция по методу оценочной функции

Разработанные функции интерполяций

А) Линейная интерполяция по ЦДА

Function [n, m] = Lin_CDA(xk, yk, d)

%UNTITLED Summary of this function goes here

% Detailed explanation goes here

X=[0,xk];

Y=[0,yk];

H=d*1.4

Kx=floor(xk/h) %Shagi po X

Ky=floor(yk/h) %Shagi po y

Ncm=ceil(log2(max(Kx, Ky)))

A=2.^Ncm

P=zeros(1,5);

N=zeros(1,2300);

M=zeros(1,2300);

DX=0;

DY=0;

I=0;

J=0;

N(1,1)=0;

M(1,1)=0;

For t=2:2300

If i<Kx %Dvijenie po X

DX=dX+Kx;

If dX>(a-1) %Perepolnenie v summatore-shag po X

DX=dX-a;

P(t,2)=dX;

P(t,3)=1;

I=i+1;

N(1,t)=n(1,t-1)+h; %shagi

Else

P(t,2)=dX;

P(t,3)=0;

I=i+0;

N(1,t)=n(1,t-1); %shagi

End;

If j<Ky %Dvijenie po Y

DY=dY+Ky;

If dY>(a-1) %Perepolnenie v summatore-shag po Y

DY=dY-a;

P(t,4)=dY;

P(t,5)=1;

J=j+1;

M(1,t)=m(1,t-1)+h; %shagi

Else p(t,4)=dY; %Net perepoln-net shaga

P(t,5)=0;

J=j+0;

M(1,t)=m(1,t-1); %shagi

End;

P(t,1)=t-1;

If i==Kx

If j==Ky

Break

Else

Continue

End;

End;

End;

End;

End

B) Круговая интерполяция по методу оценочной функции

Function [t, m] = Krug_Otsen(xk, yk, r)

%UNTITLED2 Summary of this function goes here

% Detailed explanation goes here

W=[0:pi/180:2*pi];

X=r*cos(w);

Y=r*sin(w);

T=zeros(1,10); %Shagi po x

M=zeros(1,10); %Shagi po y

T(1,1)=0;

M(1,1)=r;

P=zeros(1,8);

P(1,6)=r;

P(1,8)=0;

I=0;

J=0;

P(1,4)=0;

P(1,7)=0;

For n=2:450

P(n-1,8)=p(n-1,4)+p(n-1,7);

If p(n-1,8)<=0 %Shag po osi X

P(n,1)=n-1; %N

I=i+1;

P(n,2)=i; %i

P(n,3)=p(n-1,3)+1; %xi

P(n,4)=p(n-1,4)+2*p(n-1,3)+1; %Fxi

P(n,5)=p(n-1,5); %j

P(n,6)=p(n-1,6); %Yj

P(n,7)=p(n-1,7); %Fyj

M(1,n)=p(n,6);

T(1,n)=p(n,3);

Elseif p(n-1,8)>0 %Shag po osi Y

P(n,1)=n-1; %N

J=j+1;

P(n,5)=j; %j

P(n,6)=p(n-1,6)-1; %Yj

P(n,7)=p(n-1,7)-2*p(n-1,6)+1; %Fyj

P(n,2)=p(n-1,2); %i

P(n,3)=p(n-1,3); %xi

P(n,4)=p(n-1,4); %Fxi

T(1,n)=p(n,3);

M(1,n)=p(n,6);

End;

If p(n,3)==xk

If p(n,6)==yk

P=p

M=m

T=t

Break

End;

End;

End;

End

Похожие статьи




Разработка программ реализации заданного комплекса, Разработанные функции интерполяций - Разработка микропроцессорной системы управления робототехническим комплексом

Предыдущая | Следующая