Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONCRETO ARMADO I
IC - 442
DOCENTE :
Ing. YACHAPA CONDEA, Rubn Amrico
ALUMNO :
AYACUCHO PER
2017
El clculo numrico de diseo de vigas se hace constante para un ingeniero estructural, por ello es que se
acude a herramientas de clculos, para facilitar los tediosos clculos matemticos en el diseo de estructuras.
El presente trabajo consiste en elaborar un programa que calcule el refuerzo de acero, el Momento ltimo y el
Momento Nominal de una viga de Seccin T, utilizando una herramienta de programacin (MATLAB).
Calculo del momento resistente ltimo de una seccin de la viga dado los datos que son necesarios
como la seccin de la viga, Cantidad de acero en la zona de traccin.
Calculo de la cantidad de acero dado la seccin de la viga, el momento resistente ltimo de la viga,
resistencia del concreto y resistencia del acero
Crear un Programa con una herramienta de programacin MATLAB, para el clculo de As, Mu, en
vigas de Seccin T.
Verificar la eficacia del programa con problemas aplicativos.
d
a
bw
b
a hf
d
a<hf
c. Seccin T.
Este caso se presenta en las secciones con momentos flector positivo y que a>hf
Se analizara en compresin de la viga tiene la forma de T
b
a hf
d
a>hf
0.85* hf * fc '*(b d )
Asf
fy
Mnf 0.85* fc '* hf *(b bw)(d hf / 2)
fy *( As Asf )
a
0.85* fc '* bw
Mnw 0.85* fc '* a * bw *(d a / 2)
Mn Mnf Mnw
Mn 0.85* fc '[hf (b bw)(d hf / 2) a * bw *(d a / 2)
6117 * d
ab 1 *( )
6117 fy
0.85* fc '
b *[ab * bw (b bw )hf ]
b * d * fy
Y siempre debe de cumplirse lo siguiente.
max 0.75b
Para la seccin T con el alma en traccin, el rea mnima de acero ser la menor determinada por.
0.8 fc ' * b * d
Asmin
fy
14.1* b * d
Asmin
fy
Para seccin T con el ala en contraccin.
0.8 fc ' * bw * d
Asmin
fy
14.1* bw * d
Asmin
fy
PARA EL DISEO DE UNA SECCIN T
En este tipo de secciones debe de verificarse que la seccin trabaje efectivamente como seccin T, para ello
se asume inicialmente, que solo el ala de la seccin contribuyen a la resistencia y se tiene que:
Mu /
As
fy ( d hf / 2)
As * fy
a
0.85* fc '* b
si a hf ,
entonces la sec cion sedisea como una sec cin rec tan gular de ancho " b "
si a hf ,
entonces se sigue el siguiente prose dim iento.
Primero se considera la resistencia aportada por las alas con un ancho igual a (b-bw)
0.85* hf * fc '*(b d )
Asf
fy
Mnf 0.85* fc '* hf *(b bw)( d hf / 2)
Si Mnf >Mn el diseo a concluido y el rea del acero es igual a Asf. En caso contrario, el alma debe resistir la
diferencia Mnw Mn Mnf .
Se considerar que el alma trabaja independientemente como una seccin rectangular, para la cual se calcula
Asw. El rea total de acero ser la suma de
As Asf Asw y adems se deber verificar que el acero permitido este dentro del rango permitido
por el cdigo.
Calculo del Momento Resistente Nominal (Mn) y el Momento resistente ltimo (Mu) de una viga de
seccin T.
Calculo de la cantidad de acero (As) en una viga de seccin T.
PRESENTACIN
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Outputs from this function are returned to the command line.
function varargout = untitled_OutputFcn(hObject, eventdata, handles)
% Get default command line output from handles structure
varargout{1} = handles.output;
% --------------------------------------------------------------------
function Untitled_1_Callback(hObject, eventdata, handles)
% --------------------------------------------------------------------
function Untitled_2_Callback(hObject, eventdata, handles)
close(untitled)
% --------------------------------------------------------------------
function Untitled_3_Callback(hObject, eventdata, handles)
CLOSE(untitled)
Caso1
% --------------------------------------------------------------------
function Untitled_4_Callback(hObject, eventdata, handles)
CLOSE(untitled)
Caso2
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before Caso1 is made visible.
function Caso1_OpeningFcn(hObject, eventdata, handles, varargin)
img=imread('Viga1.bmp');
axes(handles.axes1)
imshow(img)
handles.output = hObject;
% Choose default command line output for Caso1
handles.output = hObject;
guidata(hObject, handles);
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
set(hObject,'BackgroundColor','white');
end
if fc <= 280
Beta1=0.85
end
if and(280 < fc,fc <= 350)
Beta1=0.80
end
if and(350 < fc, fc <= 420)
Beta1=0.75
end
if and(420 < fc ,fc <= 490 )
Beta1=0.70
end
if fc >= 560
Beta1=0.65;
end
Beta2=num2str(Beta1,4);
peralte=altura-CG;
d=num2str(peralte,4);
if hf < a
set(handles.text44,'Visible','on');
set(handles.text45,'Visible','on');
set(handles.text46,'Visible','on');
set(handles.text47,'Visible','on');
set(handles.text48,'Visible','on');
set(handles.text57,'Visible','on');
set(handles.text55,'Visible','on');
set(handles.text56,'Visible','on');
set(handles.text39,'Visible','on');
set(handles.text40,'Visible','on');
set(handles.text41,'Visible','on');
set(handles.text42,'Visible','on');
set(handles.text43,'Visible','on');
set(handles.text49,'Visible','on');
set(handles.text50,'Visible','on');
set(handles.text51,'Visible','on');
set(handles.text52,'Visible','on');
set(handles.text53,'Visible','on');
Cuantia=As/(baseala*peralte);
p=num2str(Cuantia,4);
ab=0.85.*(6117.*peralte)./(fy+6117);
ab1=num2str(ab,5);
Cuantiabal=(((0.85.*fc).*((ab*basealma)+(baseala-
basealma)*hf))/(fy*baseala*peralte));
Cuantiabalan=num2str(Cuantiabal,5);
Cuantiabalmax=(0.75.*Cuantiabal);
Cuantiabalmaxi=num2str(Cuantiabalmax,5);
Asw=As-Asf;
Asw1=num2str(Asw,5);
a2=((Asw*fy)/(0.85*fc*basealma));
a22=num2str(a2,5);
Mnw=((0.85*fc*basealma*a2)*(peralte-(a2/2)))/100;
Mnw1=num2str(Mnw,7);
if hf >= a
set(handles.text44,'Visible','off');
set(handles.text45,'Visible','off');
set(handles.text46,'Visible','off');
set(handles.text47,'Visible','off');
set(handles.text48,'Visible','off');
set(handles.text57,'Visible','off');
set(handles.text55,'Visible','off');
set(handles.text56,'Visible','off');
set(handles.text39,'Visible','off');
set(handles.text40,'Visible','off');
set(handles.text41,'Visible','off');
set(handles.text42,'Visible','off');
set(handles.text43,'Visible','off');
set(handles.text49,'Visible','off');
set(handles.text50,'Visible','off');
set(handles.text51,'Visible','off');
set(handles.text52,'Visible','off');
set(handles.text53,'Visible','off');
Cuantia=As/(baseala*peralte);
p=num2str(Cuantia,4);
Cuantiabal=((0.85*fc*Beta1)*(1/fy)*(6117/(6117+fy)));
Cuantiabalan=num2str(Cuantiabal,5);
Cuantiabalmax=0.75*Cuantiabal;
Cuantiabalmaxi=num2str(Cuantiabalmax,5);
set(handles.edit1,'string','');
set(handles.edit2,'string','');
set(handles.edit3,'string','0');
set(handles.edit4,'string','0');
set(handles.edit5,'string','0');
set(handles.edit6,'string','0');
set(handles.edit7,'string','0');
set(handles.edit8,'string','0');
set(handles.edit9,'string','');
set(handles.edit10,'string','');
set(handles.edit11,'string','');
set(handles.edit12,'string','');
set(handles.edit13,'string','');
set(handles.edit14,'string','');
set(handles.text33,'string','');
set(handles.text36,'string','');
set(handles.text57,'string','');
set(handles.text58,'string','');
set(handles.text64,'string','');
set(handles.text61,'string','');
set(handles.text38,'string','');
set(handles.text44,'string','');
set(handles.text45,'string','');
set(handles.text46,'string','');
set(handles.text47,'string','');
set(handles.text48,'string','');
set(handles.text67,'string','');
set(handles.text68,'string','');
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% --- Executes just before Caso2 is made visible.
function Caso2_OpeningFcn(hObject, eventdata, handles, varargin)
img=imread('Viga2.bmp');
axes(handles.axes1)
imshow(img)
handles.output = hObject;
if fc <= 280
Beta1=0.85
end
if and(280 < fc,fc <= 350)
Beta1=0.80
end
if and(350 < fc, fc <= 420)
Beta1=0.75
end
if and(420 < fc ,fc <= 490 )
Beta1=0.70
end
if fc >= 560
Beta1=0.65;
end
Beta2=num2str(Beta1,4);
if Mu<0
%cuando el momento es negativo la zona de compresion se ubica en la
parte
%baja de la seccion por lo que se trata de una viga rectangular con
%base=basealma
set(handles.text23,'Visible','on');
set(handles.text24,'Visible','on');
set(handles.text25,'Visible','on');
set(handles.text26,'Visible','on');
set(handles.text28,'Visible','off');
set(handles.text29,'Visible','off');
set(handles.text30,'Visible','off');
set(handles.text31,'Visible','off');
set(handles.text32,'Visible','off');
set(handles.text33,'Visible','off');
set(handles.text34,'Visible','off');
set(handles.text35,'Visible','off');
set(handles.text36,'Visible','off');
set(handles.text37,'Visible','off');
set(handles.text38,'Visible','off');
set(handles.text39,'Visible','off');
set(handles.text40,'Visible','off');
set(handles.text41,'Visible','off');
set(handles.text42,'Visible','off');
set(handles.text43,'Visible','off');
set(handles.text44,'Visible','off');
set(handles.text45,'Visible','off');
set(handles.text46,'Visible','off');
set(handles.text47,'Visible','off');
set(handles.text51,'Visible','off');
set(handles.text52,'Visible','off');
set(handles.text53,'Visible','off');
set(handles.text54,'Visible','off');
peralte=altura-CG;
d=num2str(peralte,4);
aa=0.59.*0.90.*basealma.*(peralte.^2).*fc;
bb=-1.*(0.90.*basealma.*(peralte.^2).*fc);
cc=(-1*Mu)*100;
w1=(-1.*bb+(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
w2=(-1.*bb-(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
if w1<=w2
w=w1
else w=w2
end
As=((w*fc*basealma*peralte)/(fy));
As1=num2str(As,5);
Asmin=((0.8*((fc)^(1/2))*basealma*peralte)/(fy));
Asmin1=num2str(Asmin,5);
Asmin2=((14.1*basealma*peralte)/(fy));
Asmin3=num2str(Asmin2,5);
if Asmin<=Asmin2
Asmin4=Asmin2
else Asmin4=Asmin
end
if As<=Asmin4
As2=Asmin4
else As2=As
end
end
if Mu>=0
%se asume que solo el ala contribuye a la resistencia de la seccion y
se
%obtiene un valor inicial de As
set(handles.text23,'Visible','on');
set(handles.text24,'Visible','off');
set(handles.text22,'Visible','off');
set(handles.text48,'Visible','off');
set(handles.text25,'Visible','on');
set(handles.text26,'Visible','on');
set(handles.text28,'Visible','on');
set(handles.text29,'Visible','on');
set(handles.text30,'Visible','on');
set(handles.text31,'Visible','on');
set(handles.text32,'Visible','on');
set(handles.text33,'Visible','on');
set(handles.text34,'Visible','on');
set(handles.text35,'Visible','on');
set(handles.text36,'Visible','on');
set(handles.text37,'Visible','on');
set(handles.text38,'Visible','on');
set(handles.text39,'Visible','on');
set(handles.text40,'Visible','on');
set(handles.text41,'Visible','on');
set(handles.text42,'Visible','on');
set(handles.text43,'Visible','on');
set(handles.text44,'Visible','on');
set(handles.text45,'Visible','on');
set(handles.text46,'Visible','on');
set(handles.text47,'Visible','on');
set(handles.text51,'Visible','on');
set(handles.text52,'Visible','on');
set(handles.text53,'Visible','on');
set(handles.text54,'Visible','on');
peralte=altura-CG;
d=num2str(peralte,4);
Asa=(((Mu*100)/0.9)/(fy*(peralte-(hf/2))));
Asa1=num2str(Asa,5);
a=((Asa*fy)/(0.85*fc*baseala));
a1=num2str(a,5);
if a>hf
%se trata de una viga que trabaja como seccion T se trabajara en dos
etapas
%primero el aporte de la alas y luego el aporte del alma
peralte=altura-CG;
d=num2str(peralte,4);
Mnfala=((Asf*fy)*(peralte-(hf/2)))/100;
Mnfala1=num2str(Mnfala,7);
d2=altura-9
d22=num2str(d2,5);
Mnfala2=((Asf*fy)*(d2-(hf/2)))/100;
Mnfala22=num2str(Mnfala2,7);
aa=0.59.*0.90.*basealma.*(peralte.^2).*fc;
bb=-1.*(0.90.*basealma.*(peralte.^2).*fc);
cc=Mnw*100;
w1=(-1.*bb+(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
w2=(-1.*bb-(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
if w1<=w2
w=w1
else w=w2
end
Asw=((w*fc*basealma*d2)/(fy));
Asw1=num2str(Asw,5);
Asmin=((0.8*((fc)^(1/2))*basealma*d2)/(fy));
Asmin1=num2str(Asmin,5);
Asmin2=((14.1*basealma*d2)/(fy));
Asmin3=num2str(Asmin2,5);
if Asmin<=Asmin2
Asmin4=Asmin2
else Asmin4=Asmin
end
if Asw<=Asmin4
As2=Asmin4
else As2=Asw
end
%cuantia
Cuantia=(w*fc)/fy;
p=num2str(Cuantia,5);
%cuantia balanceada
Cuantiabal=((0.85.*fc.*Beta1).*(1./fy).*(6117./(fy + 6117)));
Cuantiabalan=num2str(Cuantiabal,4);
Ast=Asf+As2;
Ast1=num2str(Ast,5);
end
if a<hf
set(handles.text23,'Visible','on');
set(handles.text24,'Visible','on');
set(handles.text25,'Visible','on');
set(handles.text26,'Visible','on');
set(handles.text28,'Visible','off');
set(handles.text29,'Visible','off');
set(handles.text30,'Visible','off');
set(handles.text31,'Visible','off');
set(handles.text32,'Visible','off');
set(handles.text33,'Visible','on');
set(handles.text34,'Visible','on');
set(handles.text35,'Visible','on');
set(handles.text36,'Visible','off');
set(handles.text37,'Visible','off');
set(handles.text38,'Visible','off');
set(handles.text39,'Visible','off');
set(handles.text40,'Visible','off');
set(handles.text41,'Visible','off');
set(handles.text42,'Visible','on');
set(handles.text43,'Visible','on');
set(handles.text44,'Visible','on');
set(handles.text45,'Visible','off');
set(handles.text46,'Visible','off');
set(handles.text47,'Visible','off');
set(handles.text51,'Visible','off');
set(handles.text52,'Visible','off');
set(handles.text53,'Visible','off');
set(handles.text54,'Visible','off');
peralte=altura-CG;
d=num2str(peralte,4);
aa=0.59.*0.90.*baseala.*(peralte.^2).*fc;
bb=-1.*(0.90.*baseala.*(peralte.^2).*fc);
cc=Mu.*100
w1=(-1.*bb+(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
w2=(-1.*bb-(sqrt((bb.^2-4.*aa.*cc))))./(2.*aa)
if w1<=w2
w=w1
else w=w2
end
Cuantiamax=(0.75.*Cuantiabalan)
Cuantiamaxi=num2str(Cuantiamax,5);
As=((w*fc*basealma*peralte)/(fy));
As1=num2str(As,5);
Asmin=((0.8*((fc)^(1/2))*basealma*peralte)/(fy));
Asmin1=num2str(Asmin,5);
Asmin2=((14.1*basealma*peralte)/(fy));
Asmin3=num2str(Asmin2,5);
if Asmin<=Asmin2
Asmin4=Asmin2
else Asmin4=Asmin
end
if As<=Asmin4
As2=Asmin4
else As2=As
end
end
end
set(handles.text23,'string',d);
set(handles.text26,'string',Beta2);
set(handles.text24,'string',Asmin4);
set(handles.text25,'string',As2);
set(handles.text25,'string',Asa1);
set(handles.text37,'string',a1);
set(handles.text38,'string',Asf1);
set(handles.text39,'string',Mnfala22);
set(handles.text40,'string',Mnw1);
set(handles.text41,'string',As2);
set(handles.text42,'string',p);
set(handles.text43,'string',Cuantiabalan);
set(handles.text44,'string',Cuantiamaxi);
set(handles.text45,'string',Ast1);
set(handles.text41,'string','');
set(handles.text42,'string','');
set(handles.text43,'string','');
set(handles.text44,'string','');
set(handles.text45,'string','');
V. DESARROLLO DE LA APLICACIN:
VI. CONCLUSIONES:
Se contina el curso de Concreto Armado con el diseo de vigas de seccin Tipo T sometidas a
flexin.
VII. BIBLIOGRAFIA:
www.google.com