jueves, 16 de octubre de 2025

02b.- Programación II - Actividad a desarrollar clase 16 de Octubre - Semestre (2026 - I) - Solución del Profesor

La Gobernación de Miranda desea instalar semáforos dentro de los túneles del edo. Miranda de forma de alertar accidentes o trabajos dentro de los mismo, los semáforos tienen una masa 12.2 kg aproximadamente. Estos semáforos se fijaran al techo de la entrada de los túneles con un sistema de soporte como se muestra en la figura:



Para fijar la estructura al techo se empleara dos segmentos independiente de guaya sobrante de otros proyectos. Cada segmento de guaya solo soporta 10 kg de masa. Elabore un programa que determine cual rango puedo reducir o aumentar el segmento X sin que las guayas terminen rompiéndose. Adicionalmente informe los valores de los ángulos Alfa y Beta para esas longitudes límites. 

Nota la cadena soporta masas de hasta 50 kg.

Solución

Analizamos los diagramas de cuerpo libre, se puede establecer lo siguiente considerando que el sistema esta en equilibrio:


El sistema es representado por dos (2) ecuaciones de cuatro (4) incógnitas (T1, T2, α y β). 

Del triangulo que conforma las dos (2) cuerdas y el techo conocemos dos (2) segmentos: el techo = 2 mts y la cuerda que absorbe la tensión T2 = 1.5 mts. Se puede desarrollar un programa en el cual se ingrese la dimensión de la cuerda que soporta la tensión T1 (segmento X) y así obtener los ángulos α y β usando la ley del coseno, por lo tanto podemos establecer:

X2 = (1.5)2 + (2)2 – 2(1.5)(2) cos β => 

β=arccos[(X2 - (1.5)2 - (2)2)/( – 2(1.5)(2))]

(1.5)2 = X2+ (2)2 – 2(X)(2) cos α => 

α =arccos[((1.5)2 - X2 - (2)2)/( – 2(X)(2))]

Al conocer α y β podemos determinar las tensiones T1 y T2 resolviendo el sistema de ecuaciones de dos incógnitas:

T2 cos β = T1 cos α => T2 = T1 (cos α / cos β) en consecuencia podemos sustituir T2 en la otra ecuación:

T1 seno α + T2 seno β = 122 newton => 

T1 seno α + T1 (seno β x cos α / cos β) = 122 newtons =>

T1 = [122 newton/( seno α + (seno β x cos α / cos β)]

Al obtener T1 determinamos también T2 y evaluamos si alguna de las dos NO soporta 10 kg x 10 mt/seg2 o lo que es lo mismo 100 newtons.

A partir de allí podemos iterar hasta obtener las medidas limites del segmento X. 


Programa (C++)

/* Programa para determinar los rangos limites del segmento

X en cual la estructura soportará el peso del semáforo según

la figura.

Elaborado por Carlos Ferrer

Rev. Oct 2024

*/

#include<iostream>

#include<math.h>

using namespace std;

main()

{

double beta=0,alfa=0; //Ángulos

double x,t1=0,t2=0; //Segmento X y tensiones t1 y t2

double x_menor,x_mayor; //limites mayor y menor del segmento X

double beta_mayor,beta_menor; //limites mayor y menor del ángulo beta

double alfa_mayor,alfa_menor; //limites mayor y menor del ángulo alfa


/*iteramos y calculamos los ángulos y las tensiones al 

ampliar el segmento x*/

x=1.5; //longitud inicial

while (t2<100)

{

x=x+0.001;

beta=acos((pow(2,2)+pow(1.5,2)-pow(x,2))/(2*1.5*2));

alfa=acos((pow(2,2)+pow(x,2)-pow(1.5,2))/(2*x*2));

t1= 122/(sin(alfa)+sin(beta)*cos(alfa)/cos(beta));

t2=t1*cos(alfa)/cos(beta);

}

x_mayor=x;

beta_mayor=beta*180/M_PI;

alfa_mayor=alfa*180/M_PI;


/*iteramos y calculamos los ángulos y las tensiones al 

reducir el segmento x*/

x=1.5;

while(t1<100)

{

x=x-0.001;

beta=acos((pow(2,2)+pow(1.5,2)-pow(x,2))/(2*1.5*2));

alfa=acos((pow(2,2)+pow(x,2)-pow(1.5,2))/(2*x*2));

t1= 122/(sin(alfa)+sin(beta)*cos(alfa)/cos(beta));

t2=t1*cos(alfa)/cos(beta);

}

x_menor=x;

beta_menor=beta*180/M_PI;

alfa_menor=alfa*180/M_PI;

//presentamos los resultados

cout <<"La longitud minima que puede disminuir la guaya X corresponde a = "<<x_menor<<" mts"<<endl; 

cout <<"lo cual ocurre cuando alfa = "<<alfa_menor<<" deg y beta = "<<beta_menor<<endl<<endl; 

cout <<"La longitud maxima que puede aumentar la guaya X corresponde a = "<<x_mayor<<" mts"<<endl; 

cout <<"lo cual ocurre cuando alfa = "<<alfa_mayor<<" deg y beta = "<<beta_mayor<<endl<<endl; 

system ("pause");

}


Programa (Python)


# Programa para determinar los rangos limites del segmento # X en cual la estructura soportará el peso del semáforo según # la figura. # Elaborado por Carlos Ferrer # Rev. Oct 2024

import math
import os
os.system("cls")
beta = 0  # Ángulo
alfa = 0  # Ángulo
x = 1.5  # longitud inicial
t1 = 0
t2 = 0  # tensiones t1 y t2

# Iteramos y calculamos los ángulos y las tensiones al ampliar el segmento x
while t2 < 100:
    x += 0.001
    beta = math.acos((2**2 + 1.5**2 - x**2) / (2 * 1.5 * 2))
    alfa = math.acos((2**2 + x**2 - 1.5**2) / (2 * x * 2))
    t1 = 122 / (math.sin(alfa) + math.sin(beta) * math.cos(alfa) / math.cos(beta))
    t2 = t1 * math.cos(alfa) / math.cos(beta)

x_mayor = x
beta_mayor = beta * 180 / math.pi
alfa_mayor = alfa * 180 / math.pi

# Iteramos y calculamos los ángulos y las tensiones al reducir el segmento x
x = 1.5
while t1 < 100:
    x -= 0.001
    beta = math.acos((2**2 + 1.5**2 - x**2) / (2 * 1.5 * 2))
    alfa = math.acos((2**2 + x**2 - 1.5**2) / (2 * x * 2))
    t1 = 122 / (math.sin(alfa) + math.sin(beta) * math.cos(alfa) / math.cos(beta))
    t2 = t1 * math.cos(alfa) / math.cos(beta)

x_menor = x
beta_menor = beta * 180 / math.pi
alfa_menor = alfa * 180 / math.pi

# Presentamos los resultados
print(f"La longitud minima que puede disminuir la guaya X corresponde a = {x_menor} mts")
print(f"lo cual ocurre cuando alfa = {alfa_menor} deg y beta = {beta_menor} deg\n")
print(f"La longitud maxima que puede aumentar la guaya X corresponde a = {x_mayor} mts")
print(f"lo cual ocurre cuando alfa = {alfa_mayor} deg y beta = {beta_mayor} deg\n")




No hay comentarios.:

Publicar un comentario