Tải bản đầy đủ (.pdf) (35 trang)

phần mềm thiết kế cốt thép cấu kiện bê tông cốt thép (tcvn 356 2005)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.02 MB, 35 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

ĐỀ TÀI NCKH CẤP SINH VIÊN

PHẦN MỀM THIẾT KẾ CỐT THÉP CẤU KIỆN
BÊ TÔNG CỐT THÉP (TCVN 356-2005)
S

K

C

0

0

3
2

9
5

5
1

9
2

MÃ SỐ: SV63 - 2009



S KC 0 0 2 5 1 2

THÀNH PHỐ HỒ CHÍ MINH, 2010


BỘ GIÁO DỤC ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA CƠ KHÍ MÁY
BỘ MÔN CÔNG NGHỆ TỰ ĐỘNG

NGHIÊN CỨU KHOA HỌC

PHẦN MỀM THIẾT KẾ CỐT THÉP CẤU KIỆN
BÊ TƠNG CỐT THÉP (TCVN 356-2005)

Mã số: SV63 - 2009

GVHD: Th.S. TRẦN TUẤN KIỆT
SVTH: VÕ VĂN ĐỒNG

TP. HỒ CHÍ MINH, 2010


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

I. Đặt vấn đề:
1.Đối tượng nghiên cứu: ................................................................................. trang 2

2.Tình hình nghiên cứu trong và ngoài nước ................................................. trang 2
3. Những vấn đề còn tồn tại .......................................................................... trang2
II. Giải quyết vấn đề:
.1 Mục đích để tài............................................................................................. trang 3
2. Phương pháp nghiên cứu ............................................................................. trang 3
3.Nội dung........................................................................................................ trang 3
3.1.1Giải thuật tính dầm ............................................................................... trang 4
3.1.2.Giải thuật thép cột đối xứng: .............................................................. trang 5
3.2.Phương pháp luận tính toán
3.2.1 Đối với dầm: ............... ............... ............... ............... ...............trang 6
3.2.2 Đối với cột: ............... ............... ............... ............... .............. .trang 6
4.Giao diện người dùng ................................................................................... trang 6
5.Các đoạn code chính trong phần mềm ........................................................ trang 11
III.Kết quả đạt được:
1.Tính khoa học .............................................................................................. trang 28
2.Khả năng ứng dụng thực tiễn ....................................................................... trang 28
3.Hiệu quả kinh tế xã hội. ............................................................................... trang 29
IV. Kết luận
Kết luận & đề nghị ................................................................................. trang 30
V. Phụ lục ............................................................................................................... trang 31
SVTH: Võ Vân Đồng –MS:06114031

Page 1


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

Phần I. ĐẶT VẤN ĐỀ

I. Đối tượng nghiên cứu:
-Visual Basic, Visual basic for Excel, Bê tông cốt thép, Sap 2000 (CSI), Excel,
Access.
II. Tình hình nghiên cứu trong và ngoài nước:
- Hiện nay, ở Việt Nam cũng như thế giới rất nhiều phần mềm thiết kế kết cấu xây
dựng như Micofeap, gear, bats, graps( Viện công nghệ Châu Á- AIT- Thái Lan), Prokon
(Anh), Stadd pro (REC) và các phiên bản Sap, Etabs (CSI). Mỗi phiên bản đều có thể thiết kế
theo tiêu chuẩn Anh, Eurocode…Và hiển nhiên TCVN đều không được đưa vào các phần
mềm này! Và cũng kể từ đây hàng loạt các các công ty cũng như các cá nhân đã xây dựng các
chương trình tính BTCT từ các dữ kiện nội lực tính ra từ các phần mềm trên đây. Tuy nhiên
đối với các phần mềm thương mại thì không dám tin tưởng (Hiện nay chưa có phần mềm
nào đảm bảo chất lượng với viện KHCN ngay cả các phần mềm tính toán phổ biến hiện nay
là FTW( Cty hài Hòa), RDW (CIC)…Còn các phần mềm do cá nhân viết trên Excel thì chỉ có
thể tính toán với số lượng nhỏ và công việc chọn lọc các giá trị nội lực từ các phần mềm tính
nội lực rất nhiều và phức tạp và cả thiếu chính xác.
- Vì đây là phần mềm theo tiêu chuẩn riêng từng nước do vậy mang tính chất không
phổ biến. Tuy nhiên trong phạm vi nào đó như khu vực Đông Nam Á thì TCVN được đưa ra
nghiên cứu.
III.Những vấn đề còn tồn tại:
. – Như đã nói ở trên vấn đề tồn tại lớn nhất khi tính toán kết thiết kế cốt thép theo tiêu
chuẩn nước ngoài thì không phù hợp và chính xác. Ngoài ra việc thay thế các hệ số tính toán
các tiêu chuẩn nước ngoài như CSA-94 cho phù hợp TCVN thì chỉ mang tính chất dùng để
kiểm tra sau khi tính toán bằng TCVN.
-Việc lập bảng tính trong Excel chỉ tính mang tính chất một chiều và riêng lẻ cho từng
cặp nội lực. Và khi lập trình VBA thì hạn chế là khó so sánh kết quả khi thay đổi tiết diện cấu
kiện.
-Chính vì mong muốn có một phần mềm tính toán cụ thể chính xác đặc biệt có thể thay
đổi phù hợp các tiêu chuẩn TCVN thì em viết phần mềm này.Vì thời gian có hạn nên vẫn còn
nhiều hạn chế( chưa mô hình nhà, chỉ tính với khung phẳng..) nhưng với sự ra đời phần mềm
này việt tính toán nhà từ một tầng một nhịp đến nhiều tầng nhiều nhịp thì chỉ vài cái nhấp

chuột. Và thao tác nhập xuất dữ liệu tương đối dễ dàng. Đẩy mạnh và tối ưu hóa công việc
thiết kế của các kĩ sư xây dựng.

SVTH: Võ Vân Đồng –MS:06114031

Page 2


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

Phần II. GIẢI QUYẾT VẤN ĐỀ
II.1 Mục đích để tài:
-Nghiên cứu về tính toàn BTCT bằng các công cụ hỗ trợ (ứng dụng công nghệ
thông tin trong xây dựng).
- Giải quyết bài toán tính cốt thép (nội lực được lấy từ Sap).
-Phục vụ sinh viên làm các đồ án môn học, đồ án tốt nghiệp và cả khi đã tốt
nghiệp đi làm.
-Có mã nguồn mở cho sinh viên học tập nghiên cứu.
-Lập trình thiết kế cốt thép như thế nào, con đường phát triển tương lai.
2.Phương pháp nghiên cứu:
-Đọc tài liệu về bê tông cốt thép.
-Nghiên cứu về Sap
-Sự liên quan giữa Excel với Sap.
-Tạo cơ sở dữ liệu cho cho chương trình.
-Chạy thử kiểm tra tính chính xác cho công trình.
-Và viết code hoàn chỉnh chương trình.
3.Nôi dung:
-Sau khi tính toán nội lực từ Sap, ta xuất ra Excel bao gồm nội lực (Element Forces Frames) và tên các tiết diện thiết kế(Frame Section Assignments) đặt tên tiết diện như sau

D200x300 đối với dầm, C200x200 đối với cột …Để soft có thể nhận biết tính toán.
- Sau đó nhập dữ liệu từ file Excel vừa xuất ra vào phần mềm.
-Chọn các điều kiện đầu vào bao gồm B, loại thép, hệ số an toàn…
-Nhấn các nút để tính toán.
-Xuất kết quả cốt thép bao gồm thứ tự tiết diện, thép cột đối xứng, đối với dầm thì xuất
cốt thép ở 3 tiết diện 2 gối và bụng ra Excel.(bao gồm momen âm và dương tài cùng một mặt
cắt)

SVTH: Võ Vân Đồng –MS:06114031

Page 3


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

3.1.Giải thuật tính dầm:

Cốt
đơn

m 

R ≥

M
 b Rbbho 2

Cốt

kép

>R

M=αm γb Rbho2+

M=αm γb Rbho2+RscAs’(ho-a’)

RsAs=ξγbRbbho

RsAs=ξγbRbbho+RscAs’

ξ= 1  1  2 m

As 

 b Rbbho
Rs

Tính As
và As

R 





1  SR (1  )
 scu

1.1

;

  0.85  0.008 b Rb
 sc ,u  500MPa,  b  1;
 sc ,u  400MPa,  b  1

αm=αR

A 's 

M   R b Rbbho2
Rsc (ho  a ')

As≥μminbho

Kiểm tra
μmin<μ

As
 R
 max   R b b
bho
Rs

Chọn và bố trí
cốt thép

SVTH: Võ Vân Đồng –MS:06114031


 R  b Rbbho2 Rsc
As 
 A 's
Rs
Rs

Page 4


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

3.1.2.Giải thuật thép cột đối xứng:

eo1=

ea=max(h/30;H/600)

M
N

4



l0
h


4
4

4

eo=ea1+ea
α=Es /Eb

( M lt  Nlt y )
φl= 1 
( M  Ny )

3

lb=bh
/12

η=1
y=h/2

Giả thiết:
Is=μobho(0.5h-a)2

μo=(1-3)%

6.4Eb
Ncr=
lo 2



 lb

 l



 0.11

 0.1  e0
h






   Is 







1
N
1
N cr

e=ηe0+0.5h-a


e’=ηe0+0.5h-a’

2a’>

x=2a’
As 

x

>ξRho

2a’-ξRho

Ne '
Rs (ho  a ')
As=AS’ 

μm=(μ1+μ)/2

N
 b Rbb

N (e  ho  0.5x)
Rsc (ho  a ')
εo=eo/h

∆μ>5%
∆μ=|μ1-μ|/μ


∆μ<5%



μ1=2As/(bho)

X1   R 



Nhận As và As’

As  A 's 
SVTH: Võ Vân Đồng –MS:06114031

1  R 
 ho
1  50 o2 

Ne   b Rbbx1 (ho  0.5x1 )
Rsc (ho  a ')
Page 5


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

3.2Phương pháp luận tính toán:
3.2.2 Đối với dầm:

Khi một công trình chịu nhiều tải trọng trước khi xuât hiện các phần mềm tính kết
cấu thì nội lực để tính toán là tổ hợp nội lực( tính nội lực từng tải trọng tác dụng, rồi tổ hợp
chúng lại với nhau).Đương nhiên nhưng khó khăn trong cách làm nay thì không thể kể hết rất
phức tạp dễ sai sót.Nhưng với sự ra đời của các phần mềm tính toán kết cấu việc thay vào đó
là tổ hợp tải trọng và đưa ra nội lực từng tải trọng hay tổ hợp của chúng lại với nhau rất đơn
giản, chính xác. Đối với việc thiết kế dầm thì tải trọng tính toán là tổ hợp bao của từng trường
hợp tổ hợp tải trọng khác. Tuy nhiên trong việc thiết kế dầm dàn mái một số công trình thì
nên tách lực gió ra khỏi tổ hợp tải trọng hoặc thiết kể trên từng tổ hợp riêng lẻ mới đạt độ
chính xác.
Khi tính toán dầm việc chọn mặt cắt lấy nội lực để tính là 3. 2 Đầu dầm nhịp và nhịp
dầm. Ở mỗi mặt cắt thì lấy giá trị momen âm dương đạt min max, ở Sap thì mặt định lấy mặt
cắt từ trái qua phải tương ứng cặp nội lực (Min;Max) ở mỗi mặt cắt trong hình sau. Min:
momen âm, max momen dương.

3.2.3. Đối với cột:
Trong việc thiết kế cốt thép cột thì ta không thể dùng tổ hợp bao vì tổ hợp bao không lấy
tương ứng đúng với cặp tổ hợp. Điều này dẫn tới thiết kế thép quá dư. Như vậy đối với thép
cột ta thiết kế từng tổ hợp nội lực nhỏ. Và sau đó chọn lấy cốt thép lớn nhất trong các tổ hợp
tính toán để phân bố toàn cột.
4.Giao diện người dùng:
SVTH: Võ Vân Đồng –MS:06114031

Page 6


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

Chọn File/Open để nhập File Excel.


Nhập các hệ số làm việc
SVTH: Võ Vân Đồng –MS:06114031

Page 7


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

-Hệ số biến dạng.
-Hs: Hệ số điều kiệnl làm việc
-Phi từ: Phi: Chọn khoảng đường kính cốt thép thiết kế.(mm)
-SS: Sai số cho phép khi chọn cốt thép.
- Chọn a,a’ để thiết kế chung cho cột và dầm.
-Giao diện tính toán (Element forces frames) ta có thể xem xét một cách chi tiết nội lực nào
hay cạp tổ hợp nội lực nào dùng để tính toán…
- Chọn phi thép thiết kế, phụ thuộc vào sai số cho phép muốn tính chính xác cần chọn sai số
từ nhỏ đến lớn và cần kiểm tra lại khi cho sai số quá lớn.
-Hệ số điều kiện làm việc, nên chọn mức vừa phải.

Lưu ý: Sau khi làm việc chọn Exit để thoát chương trình.
Các thủ tục xuất ra File Excel để tính toán.

Chọn số mặt cắt xuẩt ra ở dầm và cột là 3.

SVTH: Võ Vân Đồng –MS:06114031

Page 8



Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

Từ Display/Show tables

Không chọn các lực riêng lẻ.
Chọn tất cả các tổ hợp lực cần xuất. và chi tiết về tiết diện lẫn nội lực khung.

SVTH: Võ Vân Đồng –MS:06114031

Page 9


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

Xuất tất cả sang Excel

SVTH: Võ Vân Đồng –MS:06114031

Page 10


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.


Ta được File Excel với 3 Sheet như trên, sau đó lưu lại.
Mở chương trình :
-Từ Menu\Open\Browse đến thư mục cài chứa file excel vừa xuất ra từ Sap(Sap
2000v14.1)

: Để đọc CSDL từ File Excel vào chương trình

- Nhấp

- Nhấp
điều kiện đầu vào như B, thép…

: Để tính toán số liệu vừa nhập vào. Lưu ý phải chọn các

- Nhấp
: Để chương trình lọc các dữ liệu vừa tính toán đồng thời
chọn các tiết diện theo yêu cầu.

- Nhấp

: Để chương trình xuất ngược ra Excel.

SVTH: Võ Vân Đồng –MS:06114031

Page 11


Báo cáo NCKH: Phần mềm thiết kế cốt thép.


GVHD: Ths Trần Tuấn Kiệt.

Giao diện kết quả khi xuất sang Excel..
5. Một số đoạn code chính trong thiết kế cốt thép dầm và cột:
gama = Val(txths)
ab = 1
l=1
t=1
dem = 3
bb = 4
SVTH: Võ Vân Đồng –MS:06114031

Page 12


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

If MyFlexGrid.TextMatrix(1, 1) = "" Then
MsgBox ("Chua co du lieu de tinh"), vbOKOnly, "Warning"
Else
If ((txtdklv.Text <> "") And (txta.Text <> "") And (Txtaa.Text <> "") And (txths.Text <>
"")) = True Then
If ((IsNumeric(txta) = True) And (IsNumeric(txtdklv) = True) And (IsNumeric(Txtaa) =
True)) = True Then

a = Val(txta)
aa = Val(Txtaa)
'h = Val(txth)

ym = Val(txtdklv)
Rb = Val(TXTCSN)
'ar = xir * (1 - 0.5 * xir)
Rs = Val(txtcuongdotinhtoan)
Rsc = Rs
'--------------------------- tim omega----=>efr----------------------------------' TINH EB, ES=================================
Select Case Rb
Case 8.5
eb = 23000
Case 11.5
eb = 2700
Case 14.5
eb = 30000
Case 17
SVTH: Võ Vân Đồng –MS:06114031

Page 13


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

eb = 32500
Case 19.5
eb = 34500
Case 22
eb = 36000
End Select
Select Case Rs

Case 225
es = 210000
Case 280
es = 210000
Case 365
es = 200000
End Select
If Val(txtdklv) < 1 Then
smscu = 500
omg = 0.85 - 0.008 * Val(txtdklv) * Val(TXTCSN)
tinhx = (Val(txtcuongdotinhtoan) / smscu) * (1 - omg / 1.1)
xir = omg / (1 + tinhx)
ar = xir * (1 - 0.5 * xir)
Else
smscu = 400
omg = 0.85 - 0.008 * Val(txtdklv) * Val(TXTCSN)
tinhx = (Val(txtcuongdotinhtoan) / smscu) * (1 - omg / 1.1)
xir = omg / (1 + tinhx)

SVTH: Võ Vân Đồng –MS:06114031

Page 14


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

ar = xir * (1 - 0.5 * xir)
End If

'-----------------------------------------------------------------------------k=4
j=4
MyFlexGrid2.Cols = 4
MyFlexGrid2.Rows = n
Do While MyFlexGrid1.TextMatrix(bb, 1) <> ""
dem = dem + 1
bb = bb + 1
Loop
For i = 4 To dem
If Left(MyFlexGrid1.TextMatrix(i, 4), 1) = "c" Or Left(MyFlexGrid1.TextMatrix(i, 4),
1) = "C" Then
z = MyFlexGrid1.TextMatrix(i, 4)
b = Val(Mid(z, 2, 3))
h = Val(Mid(z, 6, 3))
muy = 0.0125
'MyFlexGrid.TextMatrix(i, 12) = z
'MyFlexGrid2.TextMatrix(i - 3, 1) = i - 3
Do While MyFlexGrid.TextMatrix(j, 1) = i - 3
If MyFlexGrid.TextMatrix(j, 5) = "" Then
'==========TINH COT========================
'===========thu tuc ho=====================
cc = j
Do While MyFlexGrid.TextMatrix(cc, 3) = MyFlexGrid.TextMatrix(cc + 1, 3)
SVTH: Võ Vân Đồng –MS:06114031

Page 15


Báo cáo NCKH: Phần mềm thiết kế cốt thép.


GVHD: Ths Trần Tuấn Kiệt.

cc = cc + 1
Loop
ho = 1000 * (Val(txtdklv) * Val(MyFlexGrid.TextMatrix(cc, 2)))
'=================================================
m = Val(Abs(MyFlexGrid.TextMatrix(j, 11)))
n = Val(Abs(MyFlexGrid.TextMatrix(j, 6)))
nlt = n
'M = Val(sheets1.Cells(l, 11))
mlt = m
eo1 = (m / n)
lap = 0
muy = 0.0125
'========tinhthep============================
Do
lap = lap + 1
If (h / 30) < Val(MyFlexGrid.TextMatrix(cc, 2)) * 1000 / 600 Then 'if 2
ea = hl / 600
Else
ea = h / 30
End If 'end if 2
eo = (eo1 * 1000 + ea)
phi = 1 + (mlt + nlt * (h / 2)) / (m + (n * h / 2))
iss = muy * b * (h - a) * ((0.5 * h - a) ^ 2)
ib = (b * h ^ 3) / 12
tinh1 = (6.4 * eb / (ho ^ 2))

SVTH: Võ Vân Đồng –MS:06114031


Page 16


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

tinh2 = (0.11 / (0.1 + eo / h)) + 0.1
tinh3 = (es / eb) * iss
Ncr = tinh1 * ((ib / phi) * tinh2 + tinh3)
Ncr = Ncr / 1000
n1 = 1 / (1 - n / Ncr) ' He so uon doc
e = n1 * eo + h / 2 - a ' Gia thiet a=a'
ee = n1 * eo - h / 2 + a
x = (n * 1000) / (gama * Rb * b)
If x < 2 * aa Then
x = 2 * aa
as1 = (n * ee) / (Rs * (h - a - aa))
' Ass = As1
muy1 = (2 * as1) / (b * (h - a))
v = Abs((muy1 - muy))
dtmuy = v / muy
muy2 = (muy1 + muy) / 2
muy = muy2
'------------------kiemtramuy-----Else
If x > (xir * (h - a)) Then
exo = eo / h
x = (xir + (1 - xir) / (1 + 50 * exo ^ 2)) * (h - a)
as1 = (n * 1000 * e - gama * Rb * b * x * (h - a - 0.5 * x)) / (Rsc * (h - a - aa))
'-----------------KIEMTRA

muy1 = 2 * as1 / (b * (h - a))

SVTH: Võ Vân Đồng –MS:06114031

Page 17


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

v = Abs((muy1 - muy))
dtmuy = v / muy
muy2 = (muy1 + muy) / 2
muy = muy2
'----------KIEMTRA
Else
as1 = n * 1000 * (e - h - a + x / 2) / (Rsc * (h - a - aa))
muy1 = (2 * as1) / (b * (h - a))
v = Abs((muy1 - muy))
dtmuy = v / muy
muy2 = (muy1 + muy) / 2
muy = muy2
End If
End If
Loop Until ((muy1 > 0.0005 And muy1 < 0.03) And dtmuy < 0.05) Or lap > 100 Or muy1 <
0.0005 Or as1 < 0 Or muy1 > 0.03
If muy1 < 0.0005 Or (as1 < 0) Or lap > 100 Or muy1 > 0.03 Then
If muy1 < 0.0005 Or (as1 < 0) Or lap > 100 Then
'Sheet1.Cells(t, 14) = "kttd"

MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = "kttd:gtd"
j=j+1
Else
MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = "kttd:ttd"
j=j+1
SVTH: Võ Vân Đồng –MS:06114031

Page 18


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

End If
Else
MyFlexGrid.TextMatrix(j, 13) = z
'Sheet1.Cells(t, 14) = Ass
MyFlexGrid.TextMatrix(j, 14) = Round(as1, 4)
MyFlexGrid.TextMatrix(j, 16) = Round(muy1, 4)
'MyFlexGrid.TextMatrix(t + 3, 14) = "kttd"
j=j+1
't=t+1
End If
Else
MyFlexGrid.TextMatrix(j, 13) = ""
j=j+1
End If

Loop
'j = j + 1
'l = l + 1
'
==================================================================
=========
'MyFlexGrid2.TextMatrix(k - 3, 1) = MyFlexGrid.TextMatrix(j, 6)
' MyFlexGrid2.TextMatrix(k - 3, 2) = MyFlexGrid.TextMatrix(j, 11)

'==================================================================
===========
'k = k + 1
'j = j + 1
SVTH: Võ Vân Đồng –MS:06114031

Page 19


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

'MyFlexGrid2.Rows = k
'Loop
'i = i + 1
' VAO DAM
Else
Do While MyFlexGrid.TextMatrix(j, 1) = i - 3
If MyFlexGrid.TextMatrix(j, 5) <> "" Then
'j = j + 1

'nhay = nhay + 1

'=============================================================
'MyFlexGrid2.TextMatrix(k - 3, 2) = MyFlexGrid.TextMatrix(j + 1, 11)
'MyFlexGrid2.TextMatrix(k - 2, 2) = MyFlexGrid.TextMatrix(j + 3, 11)
'MyFlexGrid2.TextMatrix(k - 1, 2) = MyFlexGrid.TextMatrix(j + 5, 11)
==================================================================
========================
z = MyFlexGrid1.TextMatrix(i, 4)
h = Val(Mid(MyFlexGrid1.TextMatrix(i, 4), 6, 3))
b = Val(Mid(MyFlexGrid1.TextMatrix(i, 4), 2, 3))
'MyFlexGrid2.TextMatrix(i - 3, 1) = i - 3
' MyFlexGrid2.TextMatrix(j - nhay + ab, 1) = MyFlexGrid1.TextMatrix(i, 4)
' MyFlexGrid.TextMatrix(j, 12) = z
m = Val(Abs(MyFlexGrid.TextMatrix(j, 11)))
muy = 0.0125
am = (m * 10 ^ 6) / (ym * Rb * b * (h - a) ^ 2)
If am < ar Then
SVTH: Võ Vân Đồng –MS:06114031

Page 20


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

ex = 1 - Sqr(1 - (2 * am))
as1 = (ex * ym * Rb * b * (h - a)) / Rs
If ((as1 / (b * (h - a))) > 0.0005 And (as1 / (b * (h - a)) < (xir * ym *

Rb / Rs))) = True Then
MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = Round(as1, 2)
j=j+1
Else
MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = "kttd"
j=j+1
End If
Else
am = ar
ass = ((m * 10 ^ 6) - am * ym * Rb * b * (h - a) ^ 2) / (Rsc * (h - a - aa))
If (ass / (b * (h - a))) > 0.0005 Then
as1 = (xir * ym * Rb * b * (h - a)) / Rs + (Rsc * ass) / Rs
If ((as1 / (b * (h - a))) > 0.0005 And (as1 / (b * (h - a)) < (xir * ym *
Rb / Rs))) = True Then
MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = Round(ass, 2)
MyFlexGrid.TextMatrix(j, 15) = Round(as1, 2)
j=j+1
' End If
Else
MyFlexGrid.TextMatrix(j, 13) = z
SVTH: Võ Vân Đồng –MS:06114031

Page 21


Báo cáo NCKH: Phần mềm thiết kế cốt thép.


GVHD: Ths Trần Tuấn Kiệt.

MyFlexGrid.TextMatrix(j, 14) = "kttd"
j=j+1
End If
Else
MyFlexGrid.TextMatrix(j, 13) = z
MyFlexGrid.TextMatrix(j, 14) = "kttd"
j=j+1
End If
'Else
'j=j+1
End If
Else
MyFlexGrid.TextMatrix(j, 13) = ""
j=j+1
End If
Loop
j=j+1
End If
Next i
Else
MsgBox " Du lieu nhap khong dung", vbOKOnly, "Warning"
End If
Else
canhbaothoat:
MsgBox " Chua thuc thi duoc vi co mot vai so lieu chua nhap", vbOKOnly, "Warning"

SVTH: Võ Vân Đồng –MS:06114031


Page 22


Báo cáo NCKH: Phần mềm thiết kế cốt thép.

GVHD: Ths Trần Tuấn Kiệt.

End If
End If
End Sub
b.Đoạn code lọc cốt thép để thiết kế :
Private Sub cmdx_Click()
Dim h, i, qq, kk, uu, k, t, lap, u, max, ab, w, y, f, q, mm
Dim ii, dd, nn, asm, dt, d, ss
Dim pd, pc, aa As Long
ss = Val(txtss)
uu = 0
dt = 1
nn = 2
mm = 0
lap = 3
k=4
qq = 4
i=4
ii = 4
h=4
t=4
u=4
ab = 0
'======================================

If txtpc = "" Or txtpd = "" Or txtss = "" Then
MsgBox (" Ban chua nhap tiet dien thep de thiet ke"), vbOKOnly, " Warning"

SVTH: Võ Vân Đồng –MS:06114031

Page 23


×