Sync from remote server: 2025-10-12 18:56:41
This commit is contained in:
52
ATD/CalcoloBiax_PCL.m
Executable file
52
ATD/CalcoloBiax_PCL.m
Executable file
@@ -0,0 +1,52 @@
|
||||
function [Y_PCL,Z_PCL,asseY_PCL,asseZ_PCL,AlfaX_PCL,AlfaY_PCL] = CalcoloBiax_PCL(SpePCL,...
|
||||
ii,jj,ax,ay,asseY_PCL,asseZ_PCL,Y_PCL,Z_PCL,...
|
||||
AlfaX_PCL,AlfaY_PCL,elab_option,rPCL,IDcentralina,DTcatena)
|
||||
|
||||
if elab_option == 1 % Punto fisso a fondo foro
|
||||
% calcolo il coseno dell'angolo di inclinazione
|
||||
cosBeta = (1 - ax(ii,jj).^2).^0.5;
|
||||
Yi = -1*SpePCL(ii)*cosBeta; % -1 per adattare il segno di CosBeta. le progressive sono da fare a ritroso
|
||||
% Spostamento lungo l'asse Z registrato dal nodo i
|
||||
Zi = SpePCL(ii)*ax(ii,jj); % -1 per adattare il segno
|
||||
% Rollio
|
||||
AlfaX_PCL(ii,jj) = asind(ay(ii,jj));
|
||||
% Inclinazione
|
||||
AlfaY_PCL(ii,jj) = -1*asind(ax(ii,jj));
|
||||
% Matrici singoli spostamenti
|
||||
asseY_PCL(ii,jj) = Yi;
|
||||
asseZ_PCL(ii,jj) = Zi;
|
||||
if ii==1
|
||||
Y_PCL (ii,jj) = Yi;
|
||||
Z_PCL (ii,jj) = asseZ_PCL(ii,jj);
|
||||
else
|
||||
Y_PCL(ii,jj) = Y_PCL(ii-1,jj) + Yi;
|
||||
Z_PCL(ii,jj) = Z_PCL(ii-1,jj) + asseZ_PCL(ii,jj);
|
||||
end
|
||||
elseif elab_option == -1 % Punto fisso nella sezione
|
||||
% calcolo il coseno dell'angolo di inclinazione
|
||||
cosBeta = (1 - ax(rPCL-ii+1,jj).^2).^0.5;
|
||||
Yi = SpePCL(rPCL-ii+1)*cosBeta; %Le progressive sono da fare ad avanzamento
|
||||
% Spostamento lungo l'asse Z registrato dal nodo i
|
||||
if strcmp(IDcentralina,'ID0068') && strcmp(DTcatena,'DT0106')
|
||||
Zi = SpePCL(rPCL-ii+1)*ax(rPCL-ii+1,jj);
|
||||
else
|
||||
Zi = -1*SpePCL(rPCL-ii+1)*ax(rPCL-ii+1,jj);
|
||||
end
|
||||
% Rollio
|
||||
AlfaX_PCL(rPCL-ii+1,jj) = asind(ay(rPCL-ii+1,jj));
|
||||
% Inclinazione
|
||||
AlfaY_PCL(rPCL-ii+1,jj) = -1*asind(ax(rPCL-ii+1,jj));
|
||||
% Matrici singoli spostamenti
|
||||
asseY_PCL(rPCL-ii+1,jj) = Yi;
|
||||
asseZ_PCL(rPCL-ii+1,jj) = Zi;
|
||||
|
||||
if ii==1
|
||||
Y_PCL (rPCL-ii+1,jj) = Yi;
|
||||
Z_PCL (rPCL-ii+1,jj) = asseZ_PCL(rPCL-ii+1,jj);
|
||||
else
|
||||
Y_PCL(rPCL-ii+1,jj) = Y_PCL(rPCL-ii+2,jj) + Yi;
|
||||
Z_PCL(rPCL-ii+1,jj) = Z_PCL(rPCL-ii+2,jj) + asseZ_PCL(rPCL-ii+1,jj);
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user