ESTE BLOG SE MANEJA COMO UN LIBRO. SI VAS AL INDICE ENCONTRARAS TODOS LOS TEMAS ORDENADOS POR MATERIAS. MUCHAS GRACIAS.

Como sabe un Ingeniero que viga ponerle a un edificio, casa, muelle, etc?


Buenos días, tardes o noches. Yo soy un estudiante de Ingeniería Mecánica que se encuentra cursando el 3er año de su carrera en Argentina. Esto es relevante a la hora de responder esta pregunta porque curse materias de física 1,2 y 3, Materias de mecánica, termodinámica y estática de materiales etc. Es decir, una gran parte Técnica propiamente dicha de la carrera. 
En mi experiencia como alumno, calculamos y dimensionamos en el papel diferentes objetos sometidos a diferentes solicitaciones de todo tipo, por lo tanto me encuentro apto para contarles que hace exactamente o por lo menos, que piensa un ingeniero a la hora de decir que viga hay que poner o que dimensiones tiene que tener determinada pieza en una estructura. 

Bueno.. comencemos entonces, obviamente hay muchas cosas que hay que tener en cuenta y por eso no es un proceso sencillo ni lleva poco tiempo. 


1- Función.

Lo primero que hay que hacer al enfrentarnos a un problema de Dimensionamiento (como se le llama), es determinar PARA QUE va a ser hecha o QUE FUNCIÓN va a cumplir en la estructura la pieza que queremos dimensionar. Que quiero decir con esto? Es decir, si yo estoy diseñando una columna, yo se que esa columna va a tener que aguantar parte del peso de la estructura, la gente que camina arriba, etc. Por lo tanto esa columna esta sometida a COMPRESIÓN.  
Resultado de imagen para compresion
Si yo lo que quiero diseñar es un cable que va a aguantar parte del peso de un puente, entonces ese cable va a estar sometido a TRACCIÓN. 


Bueno, como podemos ver, existen varios tipos de solicitaciones. En definitiva hay tracción, compresión, flexion y torsion. Ni mas, ni menos. Normalmente los diferentes objetos están sometidos a varios tipos de solicitaciones (esfuerzos) . Cuando pasa este tipo de cosas se dice que hay "Solicitación multiple".


2- Determinación de los esfuerzos.


Genial! Una vez que identificamos que esfuerzo va a sufrir nuestra pieza (muchas veces es evidente y muchas otras no tanto). Ahora lo que tenemos que definir es que cantidad , expresado en NEWTONS (medida de fuerza), va a tener que aguantar. Normalmente esto se hace haciendo un análisis de esfuerzos en los ejes coordenados (x,y,z) y se termina así, los esfuerzos. 
Dependiendo del problema esto puede ser mas o menos difícil. A modo introductorio voy a mencionar que este tipo de ejercicios se acomplejan mucho si tienen mas o menos grados de libertad. Quiero decir... que si están muy agarradas, poco agarrados etc. 

Resultado de imagen para determinacion de esfuerzos

3- Punto de máxima solicitación.

Ahora supongamos que ya calculamos esto, nos tomo nuestro tiempo pero ya lo hicimos. Lo siguiente a determinar es el PUNTO DE MÁXIMA SOLICITACIÓN. La manera fácil de explicar este concepto es la siguiente:
Supongamos que quieren armar un puente para cruzar un rió y dispones de un tablón de madera muy largo... Todo el mundo sabe, por mera intuición que si pones el tablón y caminas sobre el, donde tenes mas posibilidades de caer al rió porque se rompa el tablón? En el medio. Si. Es intuitivo el concepto! 
Este análisis se hace haciendo unos gráficos de los distintos esfuerzos en la pieza o estructura y donde tenemos los mayores esfuerzos es donde haremos el análisis del próximo paso. Normalmente existen varios lugares críticos o SECCIONES criticas.
Algunos se preguntaran, Porque tengo que analizar una sección en particular? La respuesta rápida es la siguiente: Si sabemos cual es el punto mas débil de todos, y ese aguanta, entonces toda la estructura debería aguantar.


4- Criterios.

Supongamos entonces que ya disponemos de la sección mas solicitada de nuestra estructura. Ahora lo que tenemos que hacer es definir un CRITERIO que vamos a seguir para asegurarnos de que las decisiones que tomemos no sean las equivocadas. Que quiere decir esto? Existe, por ejemplo, el criterio de Tresca que define a la máxima tension por la tension de corte que presente la estructura. La tension de Von Mises, por ejemplo, define a la máxima tension por el conjunto de las tensiones presentes en el problema. 
Oye oye, mas despacio cerebrito.... Jajaja

Que es la tension? La tension es el la fuerza dividido el area a la que este siendo ejercida. Es una cuasi "presión" por así decirlo, pero que va por dentro de los materiales.  En la jerga se le suele hablar del "estrés" que esta sufriendo un material o pieza. 
Que es la dichosa, "tension máxima"? En general se habla de que todos los materiales sufren un determinado comportamiento al ser sometidos a la tension. Primero se comportan de forma "elástica" y después de forma "plástica" hasta que de repente se rompen.


Resultado de imagen para tension de fluencia


Normalmente cuando diseñamos algo, queremos que eso mantenga la forma original para la que fue creado por lo tanto diremos que la tension máxima sera la tension de fluencia. 


(BREVE EXPLICACIÓN DE LOS TIPOS DE TENSIONES) --- Cuando un material se encuentra dentro de la parte elástica, quiere decir que recupera su forma original tras dejar de ejercerla esa tension, cuando se encuentra en la zona plástica, quiere decir que ya no recuperara el total de lo que se deformo.
Por lo tanto, la tension de fluencia sera aquella tension para la cual el material deja de comportarse de manera elástica. Entonces este sera nuestro limite. Estas tensiones varían de acuerdo al material. 

Obviamente, no todo se trata de ese valor de fluencia, debido a que los diferentes materiales, dependiendo de para que uno quiera hacer el dimensionamiento, se comportan de diferente manera. No es lo mismo que nosotros queramos diseñar un edificio que no tendrá que moverse en ningún momento, a una bicicleta que ira rebotando y pegándose contra todo. 
O quizás queramos que sea mas liviana , sacrificando un poco de la "resistencia a los golpazos". Este análisis se hará de acuerdo para que quiera que se use la pieza.

5- Otras consideraciones.

Acá ya entramos en un terreno un poco mas difícil de explicar. Debido a que, dependiendo del problema considerado, habrá o no distintas cosas a tener en cuenta.

En el caso de una columna sometida a compresión, esta podría sufrir "pandeo", por lo tanto habrá un calculo especifico para definir las tensiones máximas dependiendo de este ultimo.
Resultado de imagen para pandeo
Resultado de imagen para pandeo de columna

En el caso de una calle por ejemplo, los efectos de dilatación por efecto térmico serán muy apreciables, por lo tanto las placas de pavimento chocaran unas con otras generando tensiones de compresión unas con las otras. Aumentando los efectos de solicitación. 
Resultado de imagen para calle rota por calor

Efectos de cargas dinámicas: Hay casos donde las cargas aplicadas a la estructura se aplican repentinamente y a una velocidad determinada. Estas condiciones generan un aumento bastante drástico de las tensiones que debe aguantar la estructura. Este efecto también se puede dar por vibraciones.
La manera mas fácil de verlo es: Si caminas despacio por un trampolín casi que no se va a mover. Ahora si saltamos, amplificamos la fuerza de tal manera que este se dobla apreciable mente.

Fatiga: La fatiga es un aspecto complejo del análisis, ya que es muy estadístico y se determina a través de ensayos experimentales. Normalmente, se especifica la cantidad de "ciclos" a los que se vera sometido una carga y se estima el esfuerzo máximo que podrá ser ejercido.

Resultado de imagen para fractura por fatiga metales

Tensiones remanentes: Este efecto se da muchas veces en la construcción de distintas piezas prefabricadas. Donde por diferentes procesos de manufactura, la pieza ya contiene tensiones de compresión y tracción a lo largo de todo el material.

Resultado de imagen para tensiones residuales


Concentradores de tensiones y generadores de fisuras: Normalmente un concentrador de tensiones es un lugar de la estructura que por su forma (factores geométricos), incrementa las tensiones PUNTUALMENTE, en la estructura o pieza. Estos pueden ser agujeros de formas irregulares, esquinas angulosas (producto de soldaduras, malos diseños, etc.).

Resultado de imagen para concentrador de tensiones

Imagen relacionada
Resultado de imagen para concentrador de tensiones

Normalmente este análisis general de consideraciones se demora bastante. Un buen calculo estructural y dimensionamiento de una pieza compleja con multiples solicitaciones, sometido a cargas cíclicas y efectos de desgaste, con condiciones especificas de construcción (tensiones remanentes, concentradores de tensiones,etc) demora muchísimo tiempo. 

FINALMENTE


Una vez que hemos llegado hasta este punto, tomando todas las consideraciones necesarias para el buen desempeño de nuestra pieza o estructura, llega el momento de dimensionar. 

Una vez alcanzados este estado, ya se disponen de todas las ecuaciones que normalmente relacionan diferentes constantes ingenieriles de los materiales, sus tensiones y las dimensiones del objeto. Entonces, definimos que pieza nos conviene mas utilizar para la tension o solicitación que queremos soportar. A veces podremos elegir, otras veces no por como es la construcción. 
Ahora agarramos una tabla de dimensiones de piezas prefabricadas (o no), y le damos valores a los distintos parámetros. Hasta que cumpla con todas las condiciones que nosotros impusimos.

Resultado de imagen para TABLA DE DIMENSIONES de vigas

NO OLVIDARSE

Es de vital importancia tener en cuenta que nunca se podrá hacer un calculo perfecto. Normalmente todas las teorías de mecánica de materiales siempre tienen simplificaciones. Por ejemplo: que los materiales son homogéneos e isotropos, etc. Pero esto no necesariamente es así! 
Y ahora que? Diras. Todo al pedo? No. Existe un factor, llamado factor de seguridad que contempla el uso de simplificaciones en el problema. 

Supongamos que no se como calcular en una determinada parte de un barco la solicitación que va a interactuar porque puede ser extremadamente variable. Bueno, como desconocemos, multiplicamos x2 o x3 o x4 las diferentes dimensiones. Normalmente, en vez de aumentar las dimensiones (por que no necesariamente tiene que seguir una linealidad), se divide la tension máxima. 

SIEMPRE SE DEBE APLICAR UN FACTOR DE SEGURIDAD.

Esto no quiere decir que ahora tenemos que poner a 10 personas en un ascensor cuando dice máximo 3.... por mas que este diseñado para 10 personas, se espera que se suban solo 3 para que se aseguren que esas 3 suban sin morir en el intento... 

Espero que les haya servido! / les haya interesado. Muchas gracias!

Si tenes ganas de recibir mas contenido de calidad, entonces hazte patreon! Tu ayuda me motiva.
www.patreon.com/Apuntesing

FORTRAN + ANALiSIS NUMERICO (Euler simple h variable)

Bueno, ahora vengo a presentares algo increíble... Un libro de fortran! Si. Descarga completamente gratuito, si leen atentamente tendrán todo lo que necesitan para interpretar el lenguaje fortran con facilidad. 

Este lenguaje de programación se utiliza para aplicaciones en ingeniería y matemática generalmente. Por lo tanto vengo a dejar también algunos programas interesantes.

Para los que no sepan de que va... el análisis numérico es la rama de la matemática que se encarga de utilizar las herramientas matemáticas previamente obtenidas para la resolución de problemas numéricos. Los problemas numéricos son aquellos que no pueden ser resueltos de manera analítica (es decir, haciendo cuentas con el lápiz y papel) y necesitan de una APROXIMACIÓN numérica. Un valor que, dependiendo del problema, se encontrara tan cerca del resultado que podemos asumir que es el resultado.

En el análisis numérico no se obtiene una función resultado como en la resolución analítica. Acá obtenemos una serie de puntos discretos (con un determinado error dependiendo del método de resolución seleccionado, cada uno con sus ventajas y desventajas) que serán la aproximación numérica de la función resultado. 

Libro de fortran: Descarga acá

Programa de análisis numérico: EULER SIMPLE.

Este método de resolución se basa en la aproximación por serie de Taylor utilizando los 2 primeros términos. Es una aproximación muy burda pero logra grandes resultados cuando se utiliza un intervalo relativamente chico y un paso de aproximación igual de chico.
Utiliza poca memoria y es fácil de programar. 
Desventajas: falla al hacer análisis de intervalos grandes. 

Este programa en particular que dejo escrito es con "h variable". Esto significa que el programa por si mismo corrige el paso para que los resultados tengan menos de un error previamente explicitado. Las desventajas son obvias... Quizas la h tiene que hacerse tan chica que nunca llega al final del intervalo, aparte que después buscar la respuesta que queres es dificultoso.. a menos que lo escribas en un archivo (altamente recomendable).

!en este programa alocan los vectores desde 1 y no desde 0
PROGRAM Eulersimple
implicit none 

real, allocatable::  v(:)
real xf,h
integer n,var 
REAL, PARAMETER :: ee=2.71828

 var= 2   !cantidad de componentes del vector
 allocate (v(var))
 v(1)=0.
 v(2)=5.
 xf=10.
 h=1.
    

 n=int((xf-v(1))/h+0.5)
 open(unit=2, file='puntos.dat', status='replace')
 write(2,*) v 
 call calculador(v,var,h)
 write(*,*) h
 deallocate(v)
 close(2)
 call system ("gnuplot -persist puntos.p")
 read(*,*) 

 CONTAINS

 FUNCTION vprima (v,var)
   integer var
   real :: v(var), vprima(var)
   vprima(1)= 1 !la derivada de x siempre es 1
   vprima(2)= -20*v(2)+ 7*(ee**(-0.5*v(1)))
  END FUNCTION vprima

 SUBROUTINE calculador (v,var,h)
  real:: v(var),h
  integer var

   do while (v(1)<=xf)
    h=ajustapaso(h, v)
    v= v+h*vprima(v,var)
    write(2,*) v
   end do 
  end subroutine calculador
  
FUNCTION ajustapaso(h,v) !aca ajusta el paso. Avanza 2 veces h/2 y 1 vez h, luego calcula la diferencia y compara con una tolerancia
  real:: h, tol, v(0:1), vec1 (0:1), vec2(0:1), ajustapaso
  logical ok 

  tol=0.005
  ok=.true.
  do while (ok)
    vec1= v+h*vprima(v,var)
    vec2= v+(h/2)*vprima(v,var)

  !print*,maxval(abs(vec2-vec1))
    if (maxval(abs(vec2-vec1))>=tol) then !aca compara con la tolerancia
      h=h/2.
      else
      ok=.false.
    end if
  end do
  ajustapaso=h
END FUNCTION ajustapaso


END PROGRAM 


                                                                       Muchas gracias.

PLANOS VARIOS

En la siguiente entrega les vengo a presentar una serie de planos hechos "a mano alzada" en fusion360. Son de mi autoria, libre distribucion y utilizacion. Todos los presentes son planos pensados para el taller, es decir sufrieron modificaciones en la ejecucion y planificacion de los mismos.

Estos "artefactos" ... muebles, son para practicar en la utilizacion de herramientas, maneje de metales varios, soldadura, acabados etc. 






Bueno en este caso en particular para la mesa, los tornillitos aclarados en los planos fueron reemplazados por uniones soldadas.  La mesa fue soldada con electrodo.





En este caso, fue agregada una planchuela en la base del mismo. El zapatero fue soldado integramente con mig.



Las ménsulas están en proceso. Sin embargo, debido a que no fui a comprar el material exacto que necesitaba para seguir el plano y agarre lo primero que encontré tirado en el taller... estoy haciéndolas un poco diferente. Agarre una tira de acero inoxidable, corte 2 tiras de 20 cm de largo, las pulí y le hice dos agujeros en las puntas. Después corte otras dos tiras de 25 cm de largo, las pulí y las soldé aproximadamente a 1 cm del agujero de las otras dos.. Todavía falta ponerle un redondo a 45 para mayor sostén. 

Les aviso para los que no sepan, manejar inoxidable es mucho mas difícil que hierro común, se calienta distinto. Les aviso porque me queme como un condenado. Entre que las piezas son chicas y con los guantes se hacen difíciles de manejar, dando puntadas te quemas todos los dedos jaja. Quedaron "Bien". En breve subiré como quedan finalmente.


Galpón, planos a mano alzada, sin calculo ni cimentación. Solo estructura metálica.


Continuación, se hizo en 3d y se modifico el reticulado interior.




Programas escritos en PASCAL

Les presento algunos programas que tengo guardado cuando aprendi a programar en PASCAL. Pascal suele ser un lenguaje de programacion que se utiliza a modo de aprendizaje. Los programas que siguen fueron escritos para la resolucion de enunciados de guias de ejercicios practicos. 

Programa numero 1. En este programa se puede visualizar claramente el uso de diferentes tipos de variables y la utilizacion de while , if sucesivos y case-of.

program banco;
var
saldoin,saldoF,montoD,montoR,saldointermedio:real;
operacion:char;
error:boolean;
begin
error:=false;
saldointermedio:=0;
writeln('Ingrese saldo Inicial');
Readln(saldoin);
saldoF:=Saldoin;
writeln('Ingrese D para deposito, R para retiro, F para finalizar');
readln(operacion);
while (operacion  <> 'f' ) do
begin
case operacion of
'd','D':
begin
writeln('Ingrese monto de deposito');
readln(montoD);
saldoIntermedio:=saldointermedio+montoD;
writeln('Indique siguiente operacion');
readln(operacion);
end;
'r','R':
begin
writeln('Ingrese monto a retirar');
readln(montoR);
saldointermedio:=saldointermedio-montoR;
if montoR>5000 then
writeln('Superaste el limite de extraccion');
operacion:='f';
error:=true;
if (saldointermedio+saldoin)<0 p="" then=""> begin
writeln('Saldo insuficiente');
operacion:='f';
error:=true;
end
else
begin
writeln('Indique siguiente operacion');
readln(operacion);
end;
end;
end;
end;
saldoF:=saldoin+saldointermedio;
if error then
writeln('Volver a iniciar el programa')
else
writeln('El monto total es: ',saldoF:6:2);
end.

-----------------------------------------------------------------------------------------------------------
Programa numero 2. En este programa se puede visualizar la utilizacion de vectores y matrices (array's). A su vez tambien se hace uso de las funciones (function) y subrutinas (procedure) propias de lenguajes de programacion mas avanzados.

program Ejercicio;
type
TV= array[1..100,1..6] of real;
Vec= array[1..100] of byte;
var
Ma:tv;
Result:Vec;
N,L:byte;
Prom:real;

procedure IngresoD(var Ma:tv; var N:byte);
var
i,j:byte;
begin
writeln('Ingrese Numero de ciudades');
readln(N);
for j:=1 to 6 do
begin
For i:=1 to N do
read(Ma[i,j]);
end;
end;

Function Promedio(Ma:tv; N,J:byte):byte;
var
i,Cont:byte;
calc,prom:real;
begin
calc:=0;
for i:=1 to N do
calc:=calc + Ma[i,j];
Prom:=(calc/N);
cont:=0;
for i:=1 to N do
if Prom > (Ma[i,j]) then
cont:=cont+1;
promedio:=cont;
end;

function Comparacion(Ma:tv; N:byte):byte;
var
Resta,Maximo:real;
NUMCIU,i:byte;
begin
maximo:=0;
for i:=1 to N do
begin
Resta:=Ma[i,1]-Ma[i,6];
if Maximo <= Resta then
begin
Maximo:=Resta;
NUMCIU:=i;
end;
end;
Comparacion:=NUMCIU;
end;

procedure PorEncima(Ma:tv;var Result:Vec; N:byte; Prom:real; var L:byte);
var
i:byte;
begin
L:=1;
for i:=1 to N do
If (Ma[i,6]-Prom)>20 then
begin
Result[L]:=i;
L:=L+1
end;
end;

Procedure LecturaM(Result:Vec; L:byte);
var
i:byte;
begin
for i:=1 to L do
write(Result[i]:10);
end;

begin
IngresoD(Ma,N);
writeln('Para el año 2000, estuvieron ',Promedio(Ma,N,1),' ciudad por debajo del promedio');
Writeln('El numero de ciudad que mas ha disminuido el porcentaje es: ',Comparacion(Ma,N));
Prom:=Promedio(Ma,N,6);
PorEncima(Ma,Result,N,Prom,L);
writeln('Las ciudades que estuvieron un 20% por encima del promedio fueron: ');
LecturaM(Result,L);
end.

---------------------------------------------------------------------------------------------------------
Ejercicio 3. En este ejercicio, a la vez que se usan de manera fluida los vectores tambien se puede apreciar el uso de la escritura por archivo. (Dificil de tratar en pascal, pero de gran utilidad para migrar hacia otros lenguajes mas avanzados).

program DonantesEjercicio;
type
TVDNI=array[1..100] of longint;
TVGS=array[1..100] of string;
TVSX=array[1..100] of char;
TVEd=array[1..100] of byte;
var
VDNI:TVDNI;
VGrupSang:TVGS;
VSexo:TVSX;
VEdad:TVEd;
N:byte;
Ganador:string;
Arch:text;

Procedure Inicializacion(var VDNI:TVDNI; var VGrupSang:TVGS; var VSexo:TVSX; var VEdad:TVEd ; var N:byte);
var
i:byte;
begin
writeln('Ingresar cantidad de donantes de sangre');
readln(N);
for i:=1 to N do
begin
writeln('Ingresar DNI');
readln(VDNI[i]);
writeln('Ingresar Grupo sanguineo');
readln(VGrupSang[i]);
writeln('Ingresar Sexo');
readln(VSexo[i]);
writeln('Ingresar edad');
readln(VEdad[i]);
end;
end;

function MenorGrup(VGrupSang:TVGS; N:byte):string;
var
i,O,A,AB,B,Lugar:byte;
x:string;
VecMin:TVEd;
Min:integer;
begin
O:=0;
A:=0;
AB:=0;
B:=0;
for i:=1 to N do 
begin
x:=VGrupSang[i];
case x of
'0','O','o': O:=O+1;
'A','a':A:=A+1;
'AB','ab':AB:=AB+1;
'B','b':B:=B+1;
end;
end;
VecMin[1]:=O;
VecMin[2]:=A;
VecMin[3]:=AB;
VecMin[4]:=B;
Min:=300;
for i:=1 to 4 do
if VecMin[i]
begin
Min:=VecMin[i];
Lugar:=i;
end;
case Lugar of 
1:MenorGrup:='O';
2:MenorGrup:='A';
3:MenorGrup:='AB';
4:MenorGrup:='B';
end;
end;

Procedure ArchivoP(N:byte; VGrupSang:TVGS; Ganador:string; VEdad:TVEd; VDNI:TVDNI);
var
i:byte;
begin
rewrite(Arch);
for i:=1 to N do
begin
if (VGrupSang[i]=Ganador) then
begin
if (VEdad[i]>=20) and (VEdad[i]<=25) then
Begin
Write(Arch, VDNI[i]:10,VEdad[i]);
writeln();
end;
end;
end;
close(Arch);
end;

begin
Inicializacion(VDNI,VGrupSang,VSexo,VEdad,N);
Ganador:=MenorGrup(VGrupSang,N);
Assign(Arch,'EJERCICIO.txt');
ArchivoP(N,VGrupSang,Ganador,VEdad,VDNI);
end.

----------------------------------------------------------------

Bueno espero que les haya servido de algo estos programas, si es que llegaron tan abajo jaja.
Es solo una parte de lo mucho que tuve que programar en este lenguaje, pero que no tiene importancia alguna puesto que es solo de aprendizaje.