El método/algoritmo PFA (Production Flow Analysis) es utilizado a la hora de ordenar las diferentes máquinas que actúan en un proceso de manufactura, y que son necesarias para fabricar un conjunto de piezas.
Este algoritmo (Disponible aquí en MatLab) nos permite calcular cual es el número de máquinas de cada uno de los tipos, así como el cómo agruparlas para poder obtener una distribución eficiente. Este algoritmo nos da como salida un número de células (manufacturing cells), formadas con las distintas máquinas, y en las que se producen unos tipos de pieza. Este algoritmo se basa en ir diagnoalizando la matriz del proceso mediante la agrupación en células y duplicación de máquinas. Se puede encontrar más inforamción sobre el método en:
- Handbook of cellular manufacturing
- Curso abierto Universidad de Chipre (Muy completo)
Otro tipo de ordenación de células es el ROC, que lo podéis encontrar también aquí: Método ROC
El código ha sido implementado en MatLab. La matriz del ejemplo es la de un proceso productivo donde se quieren fabricar 43 tipos de piezas con 16 tipos de máquinas.
El código en MatLab:
M=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0;
0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 1 0 1 0;
0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0;
0 0 0 0 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
0 0 0 0 1 0 0 1 1 0 0 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 1;
1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 1 1 0 1 1;
1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
1 1 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 0 1 1 0 0 1 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 1;
0 1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 1 0 1 0;
1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0;
0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0;
0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 0;
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;
0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0;
0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1;
];
fil = 16;
col = 43;
filC = 1;
colC = 1;
piezas = 0;
nummaq = 0;
%matriz de celulas
cel=zeros(300,col);
for iteracione = 1:16
%Calculamos piezas por máquina
for i = 1:fil
suma(i)=0;
for j = 1:col
if M(i,j) == 1
suma(i)=suma(i)+1;
end
end
end
%Calcular minimo de piezas por máquina
min =100;
for i = 1:fil
if ((suma(i) < min) && (suma(i) ~= 0))
min=suma(i);
end
end
%Miramos filas con minimo
maqmin=0;
for i = 1:fil
if suma(i) == min
maqmin=i;
break
end
end
aux2=zeros(1,10);
cont1=0;
for j = 1:col
if M(maqmin,j) == 1
cont1=cont1+1;
%aux2(cont1)=j=tipo pieza fabricada en maquina maqmin
aux2(cont1)=j;
end
end
for i = 1:fil
aux3=0;
for a = 1:cont1
h=aux2(a);
aux3 = aux3 + M(i,h);
cel(1,1+a+piezas)=aux2(a);
end
if (aux3>0)
nummaq=nummaq+1;
cel(nummaq+1,1)=i;
for a = 1:cont1
cel(nummaq+1,1+a+piezas)= M(i,aux2(a));
end
end
end
piezas = piezas+cont1;
for i=1:fil
for a = 1:cont1
M(i,aux2(a))=0;
end
end
end
Un saludo y espero que les haya servido de ayuda.
Resolución de distintos problemas en el ámbito de la ingenieria mediante el uso de la programación. Los programas abarcan todos los niveles de dificultad, así como la mayoría de las herramintas con las que contamos al programar. Si tienes cualquier duda a cerca de un programa, o quieres proponer alguna nueva entrada, no dudes en contactar escribiendo en cualquiera de las entradas del blog ¡Bienvenido!
lunes, 16 de marzo de 2015
Método PFA para células de fabriación
Etiquetas:
#MatLab,
células de fabricación,
manufactura,
manufacturing cell,
PFA,
ROC
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario