DEVELOPMENT OF SOFTWARE FOR RIGID PAVEMENT THICKNESS DESIGN

advertisement
DEVELOPMENT OF SOFTWARE FOR RIGID PAVEMENT THICKNESS
DESIGN
MOHD KHAIRUL IDHAM BIN MOHD SATAR
A project report submitted in partial fulfillment of the
requirements for the award of the degree of
Master of Engineering (Civil – Transportation and Highway)
Faculty of Civil Engineering
Universiti Teknologi Malaysia
NOVEMBER 2009
iii
Dedicated to
my dad Mohd Satar bin Sa’ad, my mum Rosmiah bte Abd
Samad, my family and to a special person… for their love,
support and patience are awesome
also not forgotten to all my colleagues…., for their assistance
and encouragements towards the success of this study
iv
ACKNOWLEDGEMENT
First of all, I would like to praise God the Almighty for the guidance and
blessings towards the completion of this study. Very special thanks also to my
supervisors, Assoc. Prof. Dr Mohd Rosli Hainin and Dr. Haryati Yaacob. Thank you
for giving me the guidelines, and aiding me with the project, but the most
importantly was giving us the trust to handle this project. Your constructive criticism
are very much appreciated and accepted as an encouragement to make this study as
complete and as correct as possible.
I would like to give credits to all members for their continuous cooperation so
that I could finish this study before due date. Also thank you to all Highway and
Transport Laboratory staffs who helped me in completing this project.
Finally our parents should have all the credits because without them I would
never have the opportunity to pursue my studies in this very beautiful and prestigious
university. Thank you.
v
ABSTRACT
Rigid pavement is frequently misunderstood form of construction. Many
people assume that rigid pavement is costly and not effective. However, it has been
proven that it is good in term of the strength and durability to cater high traffic load
compare to flexible pavement. However, in order to have good rigid pavement, the
design procedures of the pavement should be properly applied. The vital issue in
pavement design is thickness. There are two main approaches of design the rigid
pavement thickness which are Portland Cement Association (PCA) method and
American Association of States Highway and Transportation Officials (AASHTO)
method. However, both methods are difficult to conduct manually and may produce
inaccurate result. The difficulties can be expressed in term of time consuming and
tedious calculation. Hence, it is very important to computerize the methods in order
to make it more accurate and quicker. Although there are available software in the
market but the software may not be user-friendly enough. It also does not allow the
user to compare between methods. Generally, both methods have their own concept
but there are still several same parameters considered. Therefore, the significance
comparison between both methods can be done to select most economical pavement
thickness design. Microsoft Visual Basic 6.0 was the tools used to develop the new
software. Software named as AnP Pave was successfully developed. Moreover,
based on the verification result there are only small difference between the software
and manual calculation. However, an improvement needs to be applied to make the
software capable to design pavement reinforcement and produce printable design
report.
vi
ABSTRAK
Turapan tegar sering disalaherti dari segi pembinaan dan penggunaanya.
Ramai beranggapan turapan tegar menelan kos yang tinggi berbanding peranannya.
Walau bagaimanapun, telah terbukti turapan ini mempunyai kekuatan dan
berkeupayaan menanggung beban trafik yang lebih tinggi berbanding turapan lentur.
Dalam mengahasilkan turapan tegar yang baik, proses rekabentuk hendaklah
dilaksanakan dengan kemas dan teratur. Ketebalan turapan merupakan perkara pokok
dalam proses ini. Terdapat dua kaedah utama dalam merekabentuk ketebalan jalan
iaitu kaedah Portland Cement Association (PCA) dan kaedah American Association
of State Highway and Transportation Officials (AASHTO). Namun, kedua-dua
kaedah ini agak rumit untuk dilaksanakan secara manual dan berkemungkinan boleh
menghasilkan keputusan yang kurang tepat. Maka, adalah penting pengiraan ini
dijalankan dengan bantuan perisian komputer untuk menghasilkan keputusan yang
lebih tepat dan cepat. Walaupun sudah terdapat perisian komputer terjual di pasaran,
tetapi ia agak sukar digunakan kerana kurang mesra pengguna. Selain itu, pengguna
tidak dapat membandingkan keputusan antara kedua-dua kaedah tersebut. Umumnya,
konsep kedua-dua kaedah adalah berbeza, tetapi terdapat beberapa parameter yang
sama yang diambilkira dalam kaedah-kaedah tersebut. Oleh itu, kedua-duanya boleh
dibandingkan dalam memilih ketebalan turapan yang lebih ekonomi. Microsoft
Visual Basic 6.0 digunakan untuk membangunkan perisian ini. Perisian baru ini
dinamakan AnP Pave. Berdasarkan ujian pengesahan, keputusan menunjukkan hanya
terdapat sedikit perbezaan antara kiraan secara manual dengan kiraan perisian ini.
Penambahbaikan atas perisian ini boleh dijalankan dengan memasukkan pengiraan
tetulang turapan dan menghasilkan laporan rekabentuk yang boleh dicetak.
vii
TABLE OF CONTENTS
CHAPTER
1
2
TITLE
PAGE
DECLARATION
ii
DEDICATION
iii
ACKNOWLEDGEMENTS
iv
ABSTRACT
v
ABSTRAK
vi
TABLE OF CONTENTS
vii
LIST OF TABLES
x
LIST OF FIGURES
xi
LIST OF ABBREVIATIONS
xii
LIST OF SYMBOLS
xiii
LIST OF APPENDICES
xiv
INTRODUCTION
1.1
Background of the Problem
1
1.2
Statement of the Problem
2
1.3
Objective of the Research
2
1.4
Scope of the Study
3
1.5
Significance of the Study
3
LITERATURE REVIEW
2.1
Introduction
4
2.2
Rigid Pavement
4
2.2.1 Jointed Plain Concrete Pavement (JPCP)
5
2.2.2
(JRCP)
Jointed Reinforce Concrete Pavement
6
viii
2.2.3
Continuous Reinforced Concrete Pavement
(CRCP)
2.3
Design of Rigid Pavement Thickness
7
8
2.3.1 Portland Cement Association (PCA) Method 8
2.3.1.1 Axle Load Distribution
2.3.2 AASHTO Method
15
Software Application Solution
17
2.4.1 APCA StreetPave Software
17
2.4.2 WinPAS Software
17
2.5
Comparison of PCA and AASHTO Methods
18
2.6
Introduction to Visual Basic 6.0
19
2.4
3
4
13
METHODOLOGY
3.1
Introduction
21
3.2
Data Collection
23
3.3
Flow Chart of Rigid Pavement Thickness Design
23
3.4
Comparison of the PCA and AASHTO Methods
25
3.5
Software Application
26
3.5.1 Application of Microsoft Visual Basic
26
3.5.2 Software Verification Test
27
FINDINGS AND DISCUSSION
4.1
Introduction
28
4.2
AASHTO and PCA Method Parameters / Variables
28
4.3
AnP Pave Software
31
4.3.1 Start Menu
31
4.3.2 Design Method Selection Menu
32
4.3.3 Traffic Input Data Form
32
4.3.4 PCA Method - Input Data Form
34
4.3.5 PCA Method - Axle Data Form
35
4.3.6 PCA Method – Result Form
37
4.3.7 AASHTO Method – Input Data Form
38
4.3.8 AASHTO Method – Result Form
39
ix
5
4.3.9 PCA and AASHTO Results
40
4.4
Verification of AnP Pave Software
41
4.5
Comparison of Thickness Due to Traffic
44
CONCLUSION AND RECOMMENDATION
5.1
Conclusion
47
5.2
Recommendation
48
REFERENCES
49
APPENDICES
51
x
LIST OF TABLES
TABLE NO.
TITLE
PAGE
2.1
Axle load distributions
13
2.2
Axle load categories
14
2.3
Comparison of PCA and AASHTO slab thickness
18
2.4
Comparison of PCA and AASHTO slab thickness
19
2.5
CRCP Plan View
7
2.6
CRCP Side View
8
2.7
AASHTO Method Nomograph
11
3.1
Study Flow Chart
15
3.2
PCA Method Flow Chart
18
3.3
AASHTO method flow chart
19
4.1
Input Parameters for AASHTO and PCA method
29
4.2
Input Parameters for AASHTO and PCA
42
4.3
Comparison of design thickness for AASHTO and
PCA method
4.4
Comparison of total fatigue and erosion for PCA
method using AnP Pave and manual calculation
4.5
43
43
Conversion factor between customary unit and
metric unit
44
4.6
Comparison due to traffic for first condition
45
4.7
Comparison due to traffic for second condition
46
xi
LIST OF FIGURES
FIGURE NO.
TITLE
PAGE
2.1
JPCP Plan View
5
2.2
JPCP Side View
6
2.3
JRCP Plan View
6
2.4
JRCP Side View
7
2.5
CRCP Plan View
7
2.6
CRCP Side View
8
2.7
AASHTO Method Nomograph
16
3.1
Study Flow Chart
22
3.2
PCA Method Flow Chart
24
3.3
AASHTO method flow chart
25
4.1
Start menu for AnP Pave software
31
4.2
Design Method Selection Menu
32
4.3(a)
Traffic data input for PCA method
33
4.3(b)
Traffic data input for AASHTO method
34
4.4
PCA method input data
35
4.5
PCA method axle data
36
4.6
Description on traffic category in PCA
36
4.7
PCA method result
37
4.8
PCA method recalculation
38
4.9
AASHTO method input data form
39
4.10
AASHTO method result
40
4.11
Comparison between PCA and AASHTO
41
4.12
Comparison due to traffic for first condition
45
4.13
Comparison due to traffic for second condition
46
xii
LIST OF ABBREVIATIONS
AASHTO
-
American Association of State Highway and Transportation
Officials
APCA
-
American Concrete Pavement Association
PCA
-
Portland Cement Association
JPCP
-
Jointed Plain Concrete Pavement
JRCP
-
Jointed Reinforced Concrete Pavement
CRCP
-
Continuously Reinforced Concrete Pavement
SA
-
Single Axle
TA
-
Tandem Axle
NS
-
No Shoulder
WS
-
With Shoulder
ND
-
No Dowel
WD
-
With Dowel
LSF
-
Load Safety Factor
ADT
-
Average Daily Traffic
ADTT
-
Average Daily Truck Traffic
ESAL
-
Equivalent Single Axle Load
xiii
LIST OF SYMBOLS
W18
-
Total 18-kip ESAL Application, AASHTO
Ec
-
Concrete Elastic Modulus,
k
-
Modulus of Subgrade Reaction
Sc
-
Modulus of Rupture
J
-
Load Transfer Coefficient
Cd
-
Drainage Coefficient
PSI
-
Design Serviceability Loss
So
-
Overall Standard Deviation
R
-
Reliability
ZR
-
Standard Normal Deviate
xiv
LIST OF APPENDICES
APPENDIX
A
TITLE
PAGE
Table and Figure for pavement thickness design
Using PCA Method
51
B
Coding written in module (VB Coding)
59
C
Coding written in Start Menu (VB Coding)
63
D
Coding written in Design Method Selection Menu
(VB Coding)
E
Coding written in PCA Method - Input Data Form
(VB Coding)
F
93
Sample of AASHTO method using manual
calculation (nomograph)
K
90
Coding written in AASHTO Method – Result Form
(VB Coding)
J
85
Coding written in AASHTO Method – Input Data
Form (VB Coding)
I
69
Coding written in PCA Method – Result Form
(VB Coding)
H
66
Coding written in PCA Method PCA Method - Axle
Data Form (VB Coding)
G
64
96
Sample of PCA method using manual calculation
(worksheet, nomograph)
97
CHAPTER 1
INTRODUCTION
1.1
Background of the Problem
Road infrastructure is essential in a new development area. New road
infrastructure projects constitute of large investments in order to serve to the public
for a long time. The investments have to be durable at the lowest life cycle cost and
the pavements have to sustain loads from increasing traffic intensity and heavy
traffic loads. Road structure encompasses several layers which are subgrade, subbase, road base and surface layer. From bottom until top of the road structure play an
important role to ensure the road is good enough to be serve to the public.
In general, there are two main pavement types which are flexible and rigid
pavement.
Rigid pavement is more complex to build, which required more
specialized equipment. The current preference within the road industry is to flexible
and composite road pavement. Flexible pavement bituminous surfacing while rigid
pavement consists of a thick concrete top surface. In addition, composite pavement is
where a flexible layer has been added on top of the surface of a rigid road, or where a
concrete layer exists below a bitumen top surface.
The last major concrete road built in the Malaysia was in the late 1980s [1].
On the other hand, concrete roads are widely used in developed country such as
Europe and United States for highway as well as rural roads. High initial cost is the
main reason why the usage of concrete pavement is less.
2
However, with proper design and construction, concrete pavement can cater
almost unlimited amounts of any type of traffic with ease, comfort and safely. The
surface is smooth, dust-free and provides good skid resistance. Therefore, it is
economical such that low in maintenance cost and it relatively permanence.
Consequently, to encourage the competition between different pavements, the
tools for designing robust concrete pavements have to be brought forward. In order
to emphasize concrete pavements as an alternative in road construction, the design
must also be competitive.
1.2
Statement of the Problem
Concrete pavement design has over the years become a more important part
for the promoting of concrete roads. High capital cost is balanced by the less cost of
pavement maintenance and longer design period. However, proper design of concrete
pavement needs to be emphasized in order to avoid lack of performance of concrete
pavement. Moreover, time taken during design stage may also increase the capital
cost. Although, many software application have been introduced to counter the
problems, but it may be expensive, not user-friendly and not allow the users to
compare which is more economical in term of the thickness between the design
methods. Due to that, this study concentrated on the development of software that
may help the design engineer as well as the contractor to choose the best pavement
thickness in term of design and cost.
1.3
Objectives of the Study
This study aims to develop software for rigid pavement thickness design. The
developed software is expected to achieve the following objectives:
3
i)
To analyze and recognize the difference between Portland Cement
Association (PCA) method and (American Association of State Highway and
Transportation Officials (AASHTO) method in term of the concept and
parameters used.
ii)
To develop software that allows the design engineer to compare the results
between two methods and select the prefer method.
1.4
Scope of the Study
This study considers all types of concrete pavement consist of jointed plain
concrete pavement (JPCP), jointed reinforced concrete pavement (JRCP) and
continuously reinforced concrete pavement (CRCP). However, it only focuses on
two design methods which are PCA method and AASHTO method. Microsoft Excel
and Microsoft Visual Basic 6.0 are tools used in order to achieve the objectives.
1.5
Significance of the Study
The significances of the study are as follows:
i)
Manual design may take longer time compared with computerized design.
Thus, at the end of the study, the software for rigid pavement design
thickness is developed that may minimize the time taken in design process.
ii)
Generally, the software also avoids human error made by the engineer during
the calculation because it was developed according to the standard method
and all calculation is computerized. Consequently, the result can be trusted
and unarguable.
iii)
Since, the software will comprise two design methods design engineer may
select preferred one by comparing both methods.
CHAPTER 2
LITERATURE REVIEW
2.1
Introduction
Generally, rigid pavement is used to carry larger traffic load and also as a
surface for weak sub-grade layer. Therefore, in order to provide a proper design
steps, it is very important to undergo detail study on the pavement. This chapter will
discuss about the types, concept, analysis and design process of rigid pavement using
PCA method and AASHTO method.
2.2
Rigid Pavement
There are a number of different types of concrete pavements that have been
built. However, it only has two basic elements. First, the pavement resists traffic
loads through flexure of concrete and if reinforcement is used, it is used for crack
control only. Secondly, concrete pavement contract due to drying shrinkage of
concrete and expand and contract due to thermal effects. Both movements must be
dealt with [2].
Generally, there are three conventional concrete pavements which are jointed
plain concrete pavement (JPCP), jointed reinforce concrete pavement (JRCP) and
continuous reinforced concrete pavement (CRCP). Conventional concrete pavement
5
is classified based on the jointing and/or reinforced system adopted. Pre-stressed and
precast concrete pavements are also used similarly as conventional concrete
pavement, but they have been used infrequently. Other types of concrete pavement
are roller compacted concrete (RCC) and porous concrete which used for specialized
application [2]. However, this study will only focus on the conventional concrete
pavement.
2.2.1 Jointed Plain Concrete Pavement (JPCP)
Jointed plain concrete pavement (JPCP) uses contraction joints to control
cracking and does not use any reinforcing steel. Transverse joint spacing is selected
such that temperature and moisture stresses do not produce intermediate cracking
between joints. This typically results in a spacing no longer than about 6.1 m (20
ft.). Two methods are used to provide load transfer across JPCP joints which are
aggregate interlock and dowels bar. Meanwhile, tie bars are typically used at
longitudinal joints [3]. Figure 2.1 and Figure 2.2 show the general view of the JPCP
Figure 2.1: JPCP Plan View [3]
6
Figure 2.2: JPCP Side View [3]
2.2.2 Jointed Reinforce Concrete Pavement (JRCP)
Jointed reinforced concrete pavement (JRCP) uses contraction joints and
reinforcing steel to control cracking. Transverse joint spacing is longer than that for
JPCP and typically ranges from about 7.6 m (25 ft.) to 15.2 m (50 ft.). Temperature
and moisture stresses are expected to cause cracking between joints, hence
reinforcing steel or a steel mesh is used to hold these cracks tightly together. Dowel
bars are typically used at transverse joints to assist in load transfer while the
reinforcing steel/wire mesh assists in load transfer across cracks [3]. Figure 2.3 and
Figure 2.4 show the general view of JRCP.
Figure 2.3: JRCP Plan View [3]
7
Figure 2.4: JRCP Side View [3]
2.2.3
Continuous Reinforced Concrete Pavement (CRCP)
Continuously reinforced concrete pavement (CRCP) does not require any
contraction joints. Transverse cracks are allowed to form but are held tightly
together with continuous reinforcing steel. Research has shown that the maximum
allowable design crack width is about 0.5 mm (0.02 inches) to protect against
spalling and water penetration. Cracks typically form at intervals of 1.1 - 2.4 m (3.5
- 8 ft.). Reinforcing steel usually constitutes about 0.6 - 0.7 percent of the crosssectional pavement area and is located near mid-depth in the slab [3]. General views
of CRCP are as shown in Figure 2.5 and Figure 2.6 below.
Figure 2.5: CRCP Plan View [3]
8
Figure 2.6: CRCP Side View [3]
2.3
Design of Rigid Pavement Thickness
Pavement must have an adequate thickness to support the loads which will be
applied to it during its service life and the design must be economical. Several
different factors enter in order to determine the thickness. Generally, concrete
pavement thickness required for a given road will depend on 4 factors [4]:
x
The properties of soil
x
The inclusion or omission of a base
x
The inclusion or omission of steel reinforcement
x
The intensity of the traffic
Many organization and individuals have given their attention on the thickness
design problems. Two popular design methods that commonly used as a basis of
thickness design are Portland Cement Association (PCA) method and AASHTO
method.
2.3.1 Portland Cement Association (PCA) Method
Portland Cement Association’s (PCA) thickness design procedure concrete
highway and streets was published in 1984, superseding that published in 1966 [5].
The PCA method is based on the following two criteria [6]:
9
x
Fatigue. It attempts to keep pavement stresses from repeated loads within
acceptable limits to prevent fatigue cracking.
x
Erosion. It attempts to limit the effects of pavement deflections at joints and
corners of slabs in order to control the erosion of subgrade materials and thus
minimize joint faulting.
There are several parameters that need to be considered and carried out
before calculate the thickness design. The procedures are as follows:
i)
Designer assigns input factors
ii)
Select trial thickness
iii)
Fatigue analysis
iv)
Erosion analysis
v)
Increase trial thickness minimum that just exceeds 100% for both fatigue and
erosion
The fatigue and erosion analysis are carried out to determine the equivalent
stress, erosion factor, and stress ratio factor for single and tandem axles. The
parameters are determined through specific tables and chart produced by PCA based
on information such as type of pavement, sub-base type, concrete modulus of
rupture, modulus of sub-grade reaction, k and traffic data[5]. All charts and tables
related to PCA method as shown in Appendix A. It takes about 170 calculations to
obtain the pavement thickness [7].
According to Ying-Haur Lee and Samuel H. Carpenter [8], there are
equations established in order to create the tables and charts developed by PCA. Two
different set of equations used to analyze fatigue and erosion respectively as follows.
Equation 2.1 and Equation 2.5 show the equivalent stress and equivalent deflection
respectively. Equivalent stress is used to determine allowable repetition for fatigue
analysis, while equivalent deflection used for erosion analysis.
Fatigue Analysis
ߪ௘௤ ൌ
͸ ൈ ‫ܯ‬௘
ൈ ݂ଵ ൈ ݂ଶ ൈ ݂ଷ ൈ ݂ସ ሺ“—ƒ–‹‘ʹǤͳሻ
݄ଶ
10
Where:
ߪ௘௤ ൌ ‡“—‹˜‡Ž‡–•–”‡••
݄ ൌ –”‹ƒŽ–Š‹…‡••
‫ܯ‬௘ ൌ
െͳ͸ͲͲ ൅ ʹͷʹͷ ൈ Ž‘‰ ሺ݈ሻ ൅ ʹͶǤͶʹ ൈ ݈ ൅ ͲǤʹͲͶ ൈ ݈ଶ ‫ۓ‬
ۖ
͵Ͳʹͻ ൅ ʹͻ͸͸Ǥͺ ൈ Ž‘‰ ሺ݈ሻ ൅ ͳ͵͵Ǥ͸ͻ ൈ ݈ െ ͲǤͲ͸͵ʹ ൈ ݈
Ȁ
ଶ
Ȁ
଴Ǥସସ଻ ሻ
‫۔‬ሺെͻ͹ͲǤͶ ൅ ͳʹͲʹǤ͸ ൈ Ž‘‰ሺ݈ሻ ൅ ͷ͵Ǥͷͺ͹ ൈ ݈ሻ ൈ ሺͲǤͺ͹Ͷʹ ൅ ͲǤͲͳͲͺͺ ൈ ݇
Ȁ
ۖ
‫ ە‬ሺʹͲͲͷǤͶ െ ͳͻͺͲǤͻ ൈ Ž‘‰ሺ݈ሻ ൅ ͻͻǤͲͲͺ ൈ ݈ሻ ൈ ሺͲǤͺ͹Ͷʹ ൅ ͲǤͲͳͲͺͺ ൈ ݇ ଴Ǥସସ଻ ሻ Ȁ
ଶସ ଴Ǥ଴଺
݂ଵ ൌ ቐ
ቀௌ஺௅ቁ
ቀ
ସ଼
்஺௅
଴Ǥ଴଺
ቁ
ൈቀ
ௌ஺௅
ଵ଼
ቁ
்஺௅
ൈቀ ቁ
ଷ଺
݄ଶ
݄
െ
ͲǤͺͻʹ
൅
݂ଶ ൌ ൝
ͺͷǤ͹ͳ ͵ͲͲͲ
ͳ
݂ଷ ൌ ͲǤͺͻͶ݂‫ݎ݋‬͸Ψ‫ܾ݈݁݃݀݁ܽݏ݄݁ݐݐܽ݇ܿݑݎݐ‬
݂ସ ൌ
ͳ
ሾͳǤʹ͵ͷ ൈ ሺͳ െ ‫ܸܥ‬ሻሿ
଴Ǥଶହ
݈ ൌ ቆ‫ ܧ‬ൈ
݄ଷ
ቇ
ሺͳʹ ൈ ሺͳ െ ߤଶ ሻ ൈ ݇ሻ
݇ ൌ ‘†—Ž—•‘ˆ•—„‰”ƒ†‡”‡ƒ…–‹‘
ܵ‫ ܮܣ‬ൌ ‹‰Ž‡ƒšŽ‡Ž‘ƒ†
ܶ‫ ܮܣ‬ൌ ƒ†‡ƒšŽ‡Ž‘ƒ†
‫ ܸܥ‬ൌ ͲǤͳͷሺˆ‘”ሻ
‫ ܧ‬ൌ ͶͲͲͲͲͲͲ’•‹
ߤ ൌ ͲǤͳͷ
Then, maximum allowable load repetition (Nf) is calculated based on the following
eq/Sc - Nf relationship. From Equation 2.2 to Equation 2.4 below, only one will be
used to calculate respective axle load. It totally depends on eq/Sc ratio as shown
below.
Ž‘‰ ܰ௙ ൌ ͳͳǤ͹͵͹ െ ͳʹǤͲ͹͹ ൈ ሺ
ߪ௘௤
ሻ
ܵ௖
ቀ
ఙ೐೜
ௌ೎
ቁ ൒ ͲǤͷͷ
ሺ“—ƒ–‹‘ ʹǤʹሻ 11
ସǤଶହ଻଻
ܰ௙ ൌ ቆ഑೐೜
ೄ೎
ି଴Ǥସଷଶହ
ଷǤଶ଺଼
ቇ
ܰ௙ ൌ ܷ݈݊݅݉݅‫݀݁ݐ‬
ఙ೐೜
ͲǤͶͷ ൏ ቀ
ቀ
ఙ೐೜
ௌ೎
ௌ೎
ቁ ൏ ͲǤͷͷ
ቁ ൑ ͲǤͷͷ
ሺ“—ƒ–‹‘ ʹǤ͵ሻ
ሺ“—ƒ–‹‘ ʹǤͶሻ
Where:
ܵ௖ ൌ ‘†—Ž—•‘ˆ—’–—”‡
The expected number of load repetitions dividing by Nf to calculate the percentage of
fatigue damage for each load and axle type. The total cumulative fatigue damage has
to be within the specified 100% limiting design criterion.
Erosion Analysis
ߜ௘௤ ൌ
ܲ௖
ൈ ݂ହ ൈ ݂଺ ൈ ݂଻ ሺ“—ƒ–‹‘ʹǤͷሻ
݇
Where:
ߜ௘௤ ൌ ‡“—‹˜‡Ž‡–…‘”‡”†‡ϐŽ‡…–‹‘
Ͷ͸Ǥͳʹ͹ Ͷ͵͹ʹǤ͹ ʹʹͺͺ͸
൅
െ
‫ͳ ۓ‬Ǥͷ͹ͳ ൅
݈
݈ଶ
݈ଷ
ۖ
ʹͳ͵Ǥ͸ͺ ͳʹ͸ͲǤͺ ʹʹͻͺͻ
ۖ ͳǤͺͶ͹ ൅
െ
൅
݈
݈ଶ
݈ଷ ܲ௖ ൌ
‫Ͳ۔‬Ǥͷͺ͹Ͷ ൅ ͸ͷǤͳͲͺ ൅ ͳͳ͵ͲǤͻ െ ͷʹͶͷǤͺ
݈
݈ଶ
݈ଷ
ۖ
ͳͲʹǤʹ ͳͲ͹ʹ ͳͶͶͷͳ
ۖ
‫ͳ ە‬ǤͶ͹ ൅ ݈ െ ݈ଶ ൅ ݈ଷ
ȀȀ
ȀȀ
ȀȀ
ȀȀ
ͳʹͺǤͺͷ ͳͳͲͷǤͺ ͵ʹ͸ͻǤͳ
‫ۓ‬െͲǤ͵Ͳͳͻ ൅
൅
൅
݈
݈ଶ
݈ଷ
ۖ
ͻ͹ǤͶͻͳ ͳͶͺͶǤͳ ͳͺͲ
ۖ ͳǤʹͷͺ ൅
൅
െ ଷ
݈
݈ଶ
݈
ܲ௖ ൌ
͹ʹǤͻͻ ͵ʹ͵Ǥͳ ͳ͸ʹͲ
‫۔‬
ͲǤͲͳͺ ൅
൅ ଶ ൅ ଷ
݈
݈
݈
ۖ
ͳͶ͸Ǥʹͷ ʹ͵ͺͷǤ͸ ʹ͵ͺͶͺ
ۖ
െ
൅
‫Ͳ ە‬ǤͲ͵Ͷͷ ൅
݈
݈ଶ
݈ଷ
ȀȀ
ȀȀ
ȀȀ
ȀȀ
12
ܵ‫ܮܣ‬Ȁͳͺ
݂ହ ൌ ቊ
ܶ‫ܮܣ‬Ȁ͵͸
Ȁ
ଶ
݇
݂଺ ൌ ൞ͳǤͲͲͳ െ ൬ͲǤʹ͸͵͸͵ െ
൰ Ȁ
͵Ͳ͵ͶǤͷ
ͳ
ͲǤͻͷ
ͲǤͺͻ͸
݂଻ ൌ ቊ
ͳ
Then, maximum allowable load repetition (Ne) is calculated based on the following
Equation 2.6 or Equation 2.7 as follows. Selection of the equation depends on the
value of C1 x P.
Ž‘‰ ܰ௘ ൌ ͳͶǤͷʹͶ െ ͸Ǥ͹͹͹ ൈ ሺ‫ܥ‬ଵ ൈ ܲ െ ͻሻ଴Ǥଵ଴ଷ െ Ž‘‰‫ܥ‬ଶ ‫ܥ‬ଵ ൈ ܲ ൐ ͻሺ“—ƒ–‹‘ ʹǤ͸ሻ
ܰ௘ ൌ ܷ݈݊݅݉݅‫݀݁ݐ‬
‫ܥ‬ଵ ൈ ܲ ൑ ͻሺ“—ƒ–‹‘ ʹǤ͹ሻ
Where:
ଶ
ܲ ൌ ʹ͸ͺǤ͹ ቆ
݇ଵǤଶ଻ ൈ ߜ௘௤
ܲ௖ ଶ
ቇ
ൌ
ʹ͸ͺǤ͹
ቆ
ቇ
݄ ൈ ݇ ଴Ǥ଻ଷ
݄
ͳͳͳͳͳ ൈ ሺͲǤͺͻ͸ ൈ ܲሻଶ ൈ ‫ܥ‬ଵ
቉
‫ ܨܧ‬ൌ ݈‫ ݃݋‬ቈ
݄ ൈ ݇ ଴Ǥ଻ଷ
݇
Ͷ ଶ
ൈ ൰ ‫ܥ‬ଵ ൌ ͳ െ ൬
ʹͲͲͲ ݄
ͲǤͲ͸
‫ܥ‬ଶ ൌ ቊ
ͲǤͻͶ
The expected number of load repetitions dividing by Ne to calculate the percentage of
erosion damage for each load and axle type. The total cumulative erosion damage
has to be within the specified 100% limiting design criterion.
13
2.3.1.1 Axle Load Distribution
Basically, this method requires the axle load distribution data. Axle load
distribution data for single, tandem and tridem axles may be obtained direct from
actual weigh station data or National axle load study. However, in absence of more
specific data, the axle load distributions in Table 2.1 may be used to generate the
expected repetitions of each magnitude of axle load for single and tandem axle
groups, depending on axle load category. The axle load category is selected from
Table 2.2 based on description of road and maximum axle loads.
Table 2.1: Axle load distributions [9]
Axle Load
(kips)
Category 1
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
1693.31
732.28
483.10
204.96
124.00
56.11
38.02
15.81
4.32
0.96
4
8
12
16
20
24
28
32
36
40
44
48
52
56
60
31.9
85.59
139.3.0
75.02
57.10
39.18
68.48
69.59
4.19
Axles per 1000 Trucks
Category 2
Category 3
Single Axle
233.60
142.70
116.76
47.76
23.88
16.61
6.63
2.60
1.60
0.07
182.02
47.73
31.82
25.15
16.33
7.85
5.21
1.78
0.85
0.45
Category 4
57.06
68.27
41.82
9.69
4.16
3.52
1.78
0.63
0.54
0.19
Tandem Axle
47.01
91.15
59.25
45.00
30.74
44.43
54.76
38.79
7.76
1.16
99.34
85.94
72.54
121.22
103.63
56.25
21.31
8.01
2.91
1.19
71.16
95.79
109.54
78.19
20.31
3.52
3.03
1.79
1.07
0.57
Table 2.2: Axle load categories [9]
14
15
2.3.2 AASHTO Method
The design guide for rigid pavements was developed at the same time as
flexible pavements and was published in the same manual [1]. AASHTO published
design guides in 1972, 1986, and 1993. The 1993 AASHTO Guide for Design of
Pavement Structure considers the following factors in the design of rigid pavement:
x
Effective modulus of subgrade reaction
x
Concrete elastic modulus
x
Concrete modulus of rupture
x
Load-transfer coefficient
x
Drainage coefficient
x
Reliability and standard deviation
x
Traffic load application
x
Serviceability loss
Based on the factors, Equation 2.8 below is established by AASHTO [2]:
Ž‘‰ଵ଴ ଵ଼
ο
ቁ
ͶǤͷ
െ ͳǤͷ
ൌ ୖ ଴ ൅ ͹Ǥ͵ͷŽ‘‰ଵ଴ ሺ ൅ ͳሻ െ ͲǤͲ͸ ൅
଻
ͳǤ͸ʹͶ ൈ ͳͲ
ͳ൅
ሺ ൅ ͳሻ଼Ǥସ଺
Ž‘‰ଵ଴ ቀ
‫ۇ‬
‫ۈ‬
൅ ሺͶǤʹʹ െ ͲǤ͵ʹ’୲ ሻ ‫ۈ‬
‫ۈ‬
‫ۈ‬
‫ۊ‬
‫ۋ‬
‫ ۋ‬ሺ“—ƒ–‹‘ʹǤͺሻ
‫ۋ‬
ͳͺǤͶʹ ‫ۋ‬
଴Ǥ଻ହ
ʹͳͷǤ͸͵ ൮
െ
൲
ୡ ଴Ǥଶହ
ቀ ቁ
‫ی‬
‫ۉ‬
݇
ୡ ୢ ሺ଴Ǥ଻ହ െ ͳǤͳ͵ʹሻ
Where:
ଵ଼ = traffic carried in ESALs
ୖ ൌ •–ƒ†ƒ”†‘”ƒŽ†‡˜‹ƒ–‡ˆ‘”†‡•‹”‡†”‡ƒ„‹Ž–›
଴ ൌ ‘˜‡”ƒŽŽ•–ƒ†ƒ”††‡˜‹ƒ–‹‘
ൌ •Žƒ„–Š‹…‡••‹‹‹…Š‡•
ο ൌ †‡•‹‰…Šƒ‰‡‹•‡˜‹…‡ƒ„‹Ž‹–›‹†‡š
ୡ ൌ ϐŽ‡š–—”ƒŽ•–”‡‰–Š‘ˆ–Š‡…‘…”‡–‡ሺ’•‹ሻ
16
ୢ ൌ †”ƒ‹ƒ‰‡…‘‡ˆϐ‹…‹‡–
ൌ Ž‘ƒ†–”ƒ•ˆ‡”…‘‡ˆϐ‹…‹‡–
ୡ ൌ ‘†—Ž—•‘ˆ‡Žƒ•–‹…‹–›‘ˆ…‘…”‡–‡ሺ’•‹ሻ
݇ ൌ ‘†—Ž—•‹•—„‰”ƒ†‡”‡ƒ…–‹‘ሺ’•‹Ȁ‹ሻ
Equation 2.8 above is difficult to solve directly. The AASHTO provides a
nomograph as shows in Figure 2.7 for determining the solution. However, the
accuracy of the design may be questioned due to the human error.
Figure 2.7: AASHTO Method Nomograph [5]
17
2.4
Software Application Solution
Generally, PCA method was introduced earlier in 1984 while AASHTO was
1993. The design methods were computerized in order to ensure accuracy of design.
By the computerization of the methods, it also makes the design process simpler and
shortens the duration. Most popular software that is available in the market is ACPA
StreetPave and WinPAS [2].
2.4.1
APCA StreetPave Software
StreetPave is mainly designed for use on streets and county roads, but it can
design highways as well. StreetPave represents a significant advance over PCAPave,
its predecessor program. Streetpave utilizes engineering analyses to produce
optimized concrete pavement thicknesses for city, municipal, county, and state
roadways using PCA method [10].
The ACPA claims that its software creates “equivalent” pavement designs for
concrete and asphalt sections based on the load carrying capacity. If this were true, it
would indeed be a powerful way to compare competing pavement sections [10].
However, the ACPA’s Streetpave software deliberately reduces the user’s
design input for subgrade strength prior running the pavement design calculation.
The result is that designs are calculated to be thicker than necessary. Thicker
pavement sections are more costly than standard sections [11].
2.4.2 WinPAS Software
This popular, user-friendly software program allows roadway pavement
thickness design and evaluation according to the 1993 American Association of State
18
Highway and Transportation Officials (AASHTO) Design Guide for Pavement
Structures, including traffic and overlay thickness methods
It explains all factors in the 1993 AASHTO Design Guide for Pavement
Structures, including reliability, traffic, soil support, serviceability, and concrete
properties. It also includes chapters on overlay thickness design and life-cycle cost
analysis [12].
2.5
Comparison of PCA and AASHTO Methods
Based on the study done by David L. Guell [13], several comparisons
between PCA and AASHTO have been produced. However, there are only certain
logical comparison can be done between them. One of the thickness comparisons
produced as shown in Table 2.3 below.
The table shows the comparison of the thickness produced by both methods
with the axle load of Category three. It shows that, for lower traffic volume, PCA
thickness is thicker, but when the traffic is higher, the AASHTO thickness is thicker.
It also stated that, the rate of increase of slab thickness with volume for the
AASHTO method is much greater than for the PCA method.
Table 2.3: Comparison of PCA and AASHTO slab thickness [13]
THICKNESS DUE TO TRAFFIC
TRAFFIC
AASHTO
PCA
VOLUME(Trucks)
(inches)
(inches)
200
6.9
7.9
1,460,000
7.5
8.4
800
8.8
8.4
5,840,000
9.4
8.9
1,600
9.7
8.3
11,680,000
10.4
8.8
19
There was also study conducted by Yang H. Huang [5] on the comparison of
the methods. The study also found that it was difficult to compare both methods
because AASHTO is based on reliability, using mean values for all variables,
whereas the PCA method does not consider reliability but incorporates load safety
factors and more conservative material properties. In the following comparison in
Table 2.4, it is assumed that the pavement is subjected to only one type of axle load
that is the same 18-kip single axle load, so the predominant mode of distress is
fatigue cracking.
Table 2.4: Comparison of PCA and AASHTO slab thickness [5]
THICKNESS DUE TO TRAFFIC
AASHTO
AASHTO(ESAL)
PCA(ESAL)
(inches)
1.2E+05
5
<100
2.6
PCA
(inches)
7.5
3.2E+06
6
500
7.9
7.4.E+06
7
3.0E+04
8.1
1.6E+07
8
5.0E+04
8.2
3.3E+07
9
>10E+7
8.3
Introduction to Visual Basic 6.0
Microsoft Visual Basic 6.0 was selected as a tool to develop the thickness
design software because of its capability of doing object-oriented programming. It is
a Microsoft Windows programming language. The programs are created in an
Integrated Development Environment (IDE). The IDE allows the programmer to
create, run and debug Visual Basic conveniently. IDE allows a programmer create
working programs in a fraction of the time that it would normally take to code
programs without using IDE. Visual Basic evolved from BASIC (Beginner’s Allpurpose Symbolic Instruction Code). BASIC was developed in the mid-1960s by
Professors John Kemely and Thomas Kurtz of Dartmouth Collage as a language for
writing simple programs, BASIC’s primary purpose was to help people learn how to
program.[14]
20
Visual Basic was one of the first products to provide a graphical
programming environment and a paint metaphor for developing user interfaces.
Graphical user interfaces mean that users are presented with a desktop filled with
little pictures called icons. Icons provide a visual guide to what the program can do.
These icons placed on the form have their underlying code written into the program
along with their properties and can react to different events such as mouse
movements and button clicks, thus Visual Basic is sometimes called an event-driven
language. An event must happen before Visual Basic will do anything. Event-driven
programs are reactive more than active, and that makes them more user friendly. [15]
CHAPTER 3
METHODOLOGY
3.1
Introduction
In this chapter, the process and procedures on how this study will be carried
out from beginning towards the end will be explained in detail. Initially, information
needs to be collected in order to explore the background of the study.
Next, selection of appropriate programming software for the development of
this new software will be executed. The programming software should be able to
recognize the requirement of the design method consequently carried out appropriate
output. Microsoft Excel and Microsoft Visual Basic are the tools to be used as
programming software in this study.
Finally, after development of the software, verification of the developed
software will be carried out in order to ensure accuracy of the software. Result from
the software will be compared with manual calculation. Figure 3.1 shows the flow of
this study.
22
START
Preliminary study
Problem Statement
Study objective
Literature review
Software development
PROGRAMMING
SOFTWARE
Microsoft Visual Basic
Microsoft Excel
Analysis
No
Result
OK?
Yes
Discussion
Report writing
FINISH
Report submission
Figure 3.1: Study Flow Chart
23
3.2
Data Collection
First of all, all the information related to the study was searched where the
background of study can be explored thoroughly. Information from various types is
recommended as we can widen the perspective in the study. The available sources
are the library, internet, electronic database, magazine, newspapers, journal etc. One
of the most reliable sources is verbal interview with the lecturers of from the related
field.
Several related data or information need to be collected before carried out this
study. This is to ensure the study will be conducted smoothly. The important
information required to achieve the study objectives were:
x
Design procedure of concrete pavement thickness by PCA
x
Design procedure of concrete pavement thickness by AASHTO
x
User Manual of Microsoft Visual Basic
x
User Manual of Microsoft Excel
3.3
Flow Chart of Rigid Pavement Thickness Design
In order to make design and development of the software easier to be
understood, it is necessary to present the steps and procedures in graphical form.
Flow chart is common and preferable method to illustrate the design steps and
procedure of software development. Figure 3.2 shows the design procedure of
concrete pavement thickness design using PCA method.
24
START
DESIGN INPUT
1. Traffic Data
2.
3.
4.
5.
6.
Modulus of Subgrade
Reaction, k
Modulus of Rupture, Sc
Design Period
Load Safety Factor (LSF)
Load Transfer Device
TRIAL THICKNESS
Yes
FATIGUE
ANALYSIS
EROSION
ANALYSIS
Exceed 100%?
Exceed 100%?
Yes
No
ACCEPT TRIAL
THICKNESS
END
Figure 3.2:PCA Method Flow Chart
Meanwhile Figure 3.3 shows the flow chart of concrete pavement thickness
design using AASHTO method. The design flow can be classified as direct
calculation where by put in all the input, then directly obtained the thickness.
25
START
DESIGN INPUT
1.
2.
3.
4.
5.
6.
7.
8.
9.
elastic modulus of concrete (Ec)
concrete modulus of rupture (Sc)
load transfer coefficient (J)
drainage coefficient (Cd)
design serviceability loss (PSI)
reliability (R)
overall standard deviation (So)
modulus of subgrade reaction (k)
traffic data
THICKNESS OBTAINED
END
Figure 3.3: AASHTO Method Flow Chart
3.4
Comparison of the PCA and AASHTO Methods
First comparison of the methods was the concept applied in method itself.
After that, comparison on the parameters used by the method has been analyzed.
Finally, comparison of pavement thickness was done to select the economical
thickness design. This step is the last step in the software. Although, it was difficult
to compare between the methods, but there are certain condition that they are logic to
be compared. The condition will be discussed in chapter 4.
26
3.5
Software Application
Programming software used in this study is Microsoft Visual Basic 6.0.
Basically Microsoft Visual Basic 6.0 developed entire software from the input until
the result obtained. It is user friendly, and user can easily create interface of the
software. The brief introduction of the software was discussed previously in chapter
2. Meanwhile, Microsoft Excel also been used for certain complicated calculation
during the development of the software. It used to do a quick comparison after the
software was successfully developed. All equation discussed in chapter 2 were used
in order to develop this software.
3.5.1
Application of Microsoft Visual Basic
Visual Basic is one of the most exciting developments in programming in
many years. Visual Basic is the next generation of basic programming and is
designed to make user-friendly programs easier to develop.
This project consists of two main objects which are forms and module.
Commonly, in a project there are several numbers of forms and only one module.
The forms contained the coding and object part.
The coding part is the place where the programmer gives an instruction to the
project by using the standard language. The coding placed in the form is commonly
unique and only used in the form. Meanwhile, the object part is where the
programmer set the interface of the program. Module is used for general declaration;
the coding placed in the module is usually shared among the forms in the same
project.
27
3.5.2
Software Verification Test
Once the software has been developed, verification is then carried out by
comparing manual calculations with the calculation performed by the software. If
there any calculation error produces by the software, it will be revised and
amendment will be carried out. There are several verification test conducted for this
software. It consists of comparison between:
x
manual calculation and software calculation for PCA method
x
manual calculation and software calculation for AASHTO method
x
calculation using AASHTO parameter and PCA parameter in order to
produce PCA pavement thickness
x
calculation using AASHTO parameter and PCA parameter in order to
produce AASHTO pavement thickness
CHAPTER 4
FINDINGS AND DISCUSSION
4.1
Introduction
This chapter presents the study on the parameters or variables used by the
AASHTO and PCA in order to complete the design of pavement thickness.
Identifying those parameters is the first step in developing AnP Pave Program.
Further in this chapter, it will explain details on the AnP Pave Program. The
explanation includes details on every menus and forms in the program. It also can be
used as a guide for the users to conduct or operate the software.
4.2
AASHTO and PCA Method Parameters / Variables
PCA method is based on general pavement design, performance, and research
experience, including relationships to performance of pavements in AASHO Road
Test and to studies pavement faulting [5]. It is accomplished by trial and error. A trial
thickness is checked for allowable fatigue and allowable erosion. If either fatigue or
erosion exceeds allowable limit, a thicker slab need to be considered. Meanwhile, if
fatigue and erosion within the limit, a thinner slab should be evaluated in order to
produce an economic design thickness.
29
Meanwhile, AASHTO method design is based on empirical equations
obtained from AASHO Road Test, with further modifications based on theory and
experience. The design method represented by the Equation 2.8. The simplified
approach of the method is also available by the nomograph as shown in Figure 2.7.
Table 4.1 shows the summary of the input variables or parameters required in
AASHTO and PCA methods.
Table 4.1: Input Parameters for AASHTO and PCA method
PARAMETER
Traffic
Concrete Elastic
Modulus, Ec
Modulus of Subgrade
Reaction, k
Modulus of Rupture,
Sc
Load Transfer
Drainage Coefficient,
Cd
Design Serviceability
Loss, PSI
Overall Standard
Deviation, So
Reliability, R or
Standard Normal
Deviate, ZR
Load Safety Factor
(LSF)
AASHTO METHOD
Total 18-kip ESAL
Application, W18
PCA METHOD
Total trucks
User defined
4x106 psi (27600 MPa)
User defined
User defined
User defined
User defined
User defined
x Coefficient, J
(Usually: 3.2 – 4.2)
User defined
x Dowel / Aggregateinterlock
x Shoulder / No shoulder
User defined
-
User defined
-
User defined
-
User defined
-
-
Based on type of road and
amount of trucks (1 - 1.3)
Several parameters are also not considered in PCA method which are:
x
Drainage Coefficient, Cd
x
Design Serviceability Loss, PSI
x
Overall Standard Deviation, So
x
Reliability, R or
x
Standard Normal Deviate, ZR
30
From the parameters listed in the table above, only two parameters can be
used directly to compare between both methods. The parameters are:
x
Modulus of Subgrade Reaction, k
x
Modulus of Rupture, Sc
Meanwhile, conversion of traffic calculation needs to be carried out before
the parameter can be used in order to compare between the methods.
PCA method has fixed value of 4x106 psi (27600 MPa) for Concrete Elastic
Modulus, Ec. Therefore, for the purpose of comparison, Concrete Elastic Modulus, Ec
for AASHTO method also need to be set the same value.
Although both methods have a same purpose which is to design thickness for
rigid pavement, but there are several different parameters considered in design
between the methods. Load transfers parameters for AASHTO method is
representing by the value of Load Transfer Coefficient, J. On the other hand, for
PCA method load transfer parameters considered either the pavement is doweled or
aggregate-interlocked and either the pavement has shoulder or not. Load Safety
Factor for PCA method need to be defined manually based on total of truck at
specific type of road but safety factor for AASHTO method is built in the equation as
well as the nomograph. Several parameters are also not considered in PCA method
which are:
x
Drainage Coefficient, Cd
x
Design Serviceability Loss, PSI
x
Overall Standard Deviation, So
x
Reliability, R or
x
Standard Normal Deviate, ZR
31
4.3
AnP Pave Software
After study on the parameters used in AASHTO and PCA method done, AnP
Pave software was developed by using Microsoft Visual Basic 6.0. This software
comprises of several menus and forms. The software is developed based on one
module and ten forms. There is unique coding written for every form. Appendix B
shows the VB coding written in the module. Some other important coding also
included in the subsequent appendices.
4.3.1 Start Menu
Figure 4.1 shows the start menu for this software. This menu introduces
briefly about the software and software’s developers.
Password is required to
proceed to the next form. The purpose of the password is to ensure security or
protection of the software. VB coding for this form can be refer at Appendix C.
Figure 4.1: Start menu for AnP Pave software
32
4.3.2
Design Method Selection Menu
As stated in the objectives in Clause 1.3, this program was design to make the
design process be easier and faster compared with manual design. Although, many
countries have been switched and practiced metric system but there also certain
countries still keep on using customary system. Moreover, certain design references
also maintain the customary system in design procedures. Therefore, this program
offers both unit systems. Figure 4.2 shows the menu for the method and unit system
selection. Users are able to select either want to use AASHTO method in metric or
customary unit system, and either PCA method in metric or customary unit.
Appendix D shows the VB coding of this form.
Figure 4.2: Design Method Selection Menu
4.3.3 Traffic Input Data Form
One of basic parameters in pavement design is traffic. Current traffic will be
used to predict future traffic. The thickness design will depend directly on the future
traffic. PCA method and AASHTO method use different unit of traffic which are
trucks and ESAL respectively.
Due to the different, two sets of traffic input data
menu were developed. Figure 4.3(a) shows menu of traffic input data for PCA
33
method. Meanwhile Figure 4.3(b) shows menu of traffic input data menu for
AASHTO method.
There are five data required in this form, which are:
x
Average daily traffic per direction
x
Design period
x
Annual growth rate
x
Percentage of truck
x
Proportion of truck in design lane
Figure 4.3(a): Traffic data input for PCA method
By set in your value in this form, this program will calculate the amount of
truck per day per direction and design truck for future traffic. All five data are
compulsory to be set by user except for average daily traffic (ADT in 1direction) is
optional if user has its own current amount of truck per day per direction (ADTT).
The current ADTT can directly be set at the next form.
34
Figure 4.3(b): Traffic data input for AASHTO method
The same traffic input data as in PCA required for the AASHTO method,
except for ADT value. Instead of ADT, ESAL is required to be set in here. This
program not provides conversion of ADT to ESAL directly because it required
extensive information on vehicles and axles.
4.3.4
PCA Method - Input Data Form
Figure 4.4 shows input data form for PCA method. In this form data required
are as follows [3]:
x
Trial thickness
x
Subbase - Subgrade Reaction, k
x
Modulus of Rupture, Sc
x
Average Daily Truck Traffic, ADTT
x
Type of Road for Load Safety Factor
x
Dowel / Aggregate-Interlock Joint
x
Concrete Shoulder / No Concrete Shoulder
Appendix E shows the VB coding of this form.
35
Figure 4.4: PCA method input data
4.3.5 PCA Method - Axle Data Form
Figure 4.5 shows the axle data form for PCA method. In this form, users are
required to fill in the axle load distribution which includes axle load and its
distribution per 1000 trucks. The distribution consists of single and tandem axle.
Besides, this form also provides an alternative solution for axle load distribution.
This alternative solution is taken from PCA which have four categories. User can
refer the description of every category by click the “Detail” command button at the
form in order to select an appropriate category. Figure 4.6 shows the table that will
be appears once the “Detail” command button was clicked. Appendix F shows the
VB coding of this form.
36
Figure 4.5: PCA method axle data
Figure 4.6: Description on traffic category in PCA
37
4.3.6
PCA Method – Result Form
Figure 4.7 shows the results form of the PCA method. In this form
recalculation is applicable in order to allow user to select the exact thickness value.
By clicking the “Recalculate” command button, user can change the trial thickness,
doweled or not and either have concrete shoulder or not. Figure 4.8 shows the form
when “Recalculate” button is clicked. After reselect those three parameters, the
software will recalculate the allowable fatigue and erosion simultaneously result
form will appear again. Appendix G shows the VB coding of this form.
Figure 4.7: PCA method result
38
Figure 4.8: PCA method recalculation
4.3.7
AASHTO Method – Input Data Form
This form is an input form for AASHTO method. Figure 4.9 shows AASHTO
method input data form. The parameters that are required to be filled by the user are
as follows [3]:
x
Total 18-kip ESAL Application, W18
x
Concrete Elastic Modulus, Ec
x
Modulus of Subgrade Reaction, k
x
Modulus of Rupture, Sc
x
Load Transfer Coefficient, J
x
Drainage Coefficient, Cd
x
Design Serviceability Loss, PSI
39
x
Overall Standard Deviation, So
x
Standard Normal Deviate, ZR
Appendix H shows the VB coding of this form.
Figure 4.9: AASHTO method input data form
4.3.8
AASHTO Method – Result Form
Figure 4.10 shows AASHTO method result form. This form is showing the
calculation work done by the software. The result of the pavement thickness was
obtained here. Appendix I shows the VB coding of this form.
40
Figure 4.10: AASHTO method result
4.3.9 PCA and AASHTO Results
If the objective of this software’s user is to compare the design thickness
between PCA and AASHTO method, Figure 4.11 is the ends form this software. This
form shows the briefly the comparison between PCA and AASHTO methods in term
of the input parameters and the final design thickness obtained by the software.
41
Figure 4.11: Comparison between PCA and AASHTO
4.4
Verification of AnP Pave Software
Validation of new design software is compulsory in order to ensure the
software produce the same output compare with manual design. The simple term is
to ensure no hesitation output by the software. In this verification stage, the data used
are as shown in Table 4.2.
42
Table 4.2: Input Parameters for AASHTO and PCA
DATA
AASHTO METHOD
PCA METHOD
Traffic
Design ESAL =5.0 x106
ADTT = 117
trucks/day/direction or
Design Traffic = 1.1 x 106
Concrete Elastic Modulus, Ec
4x106 psi
4x106 psi
Modulus of Subgrade
Reaction, k
100 pci
100 pci
Modulus of Rupture, Sc
650 psi
650 psi
Load Transfer
J = 3.2
Dowelled joint without
shoulder
Drainage Coefficient, Cd
1.0
-
Design Serviceability Loss,
PSI
1.7
-
Overall Standard Deviation, So
0.29
-
Reliability, R or
Standard Normal Deviate, ZR
R = 95% or ZR = -1.645
-
Load Safety Factor (LSF)
-
1.2
Other general data required are:
Design Period
: 20 years
Annual Growth Rate
:5%
Percentage of Truck
: 13 %
Proportion of truck in design lane
: 0.81
First Verification
Based on the data for AASHTO method stated in Table 4.2, design thickness
given by AnP Pave software is 9.49 inches. Meanwhile by using the comparison
option in software, design thickness for PCA method is 9.29 inches. Table 4.3 shows
the result of this verification.
Second Verification
Second verification was by using data for PCA method in Table 4.2, design
thickness from the Anp Pave is 9.29 inches while the AASHTO design thickness is
9.50 inches. The different is 0.21 inches compare with the thickness with AASHTO
input data. The different occurred because of rounding of the ADTT value. The result
is summarized in Table 4.3.
43
Third Verification
Third verification was the comparison between the software thickness design
values with manual thickness design value by AASHTO method. Based on the same
input data, design thickness projected by AASHTO nomograph is 9.50 inches. It
shows only 0.01 inches different between manual and software output which gave
9.49 inches. Appendix J shows the nomograph used as manual design approach.
Table 4.3 shows the results of this verification.
Forth Verification
Forth verification is same as the third verification, but it specifically for PCA
method. By using 9.5 inches as a trial thickness, total allowable fatigue and erosion
given by the AnP Pave Software was 54.6 % and 4.8 % respectively. Meanwhile, the
manual calculation by referring to the specific table and nomograph the total
allowable fatigue and erosion is 50.9 % and 4.7 % respectively.
These slight
different may be due to the rounding of the number. Generally, manual design using
rounded the value during calculation while software would calculate more precise
using exact value. Besides, the value of trial thickness provided in the tables for
manual calculation is also given in multiplication of 0.5 inches. Therefore, the
software is more accurate compare with manual calculation. Table 4.4 shows the
summary of the result of the verification. Manual design calculation is shown in
Appendix K.
Table 4.3: Comparison of design thickness for AASHTO and PCA method
SOFTWARE
Using AASHTO data
Using PCA data
MANUAL
AASHTO
METHOD
9.49
PCA
METHOD
9.29
9.42
9.29
9.50
(allowable fatigue
and erosion <100)
9.50
Table 4.4: Comparison of total fatigue and erosion for PCA method using AnP
Pave and manual calculation
TRIAL THICKNESS = 9.5 in
FATIGUE (%)
EROSION (%)
SOFTWARE
54.6
4.8
MANUAL
50.9
4.6
44
Note that, the verification was only done in customary unit system. This is
because calculation formula in the software is basically in customary unit system.
Therefore, only verification between the customary units was carried out.
Several conversion factors used to convert specified parameters in this
software. The conversion factor used to convert the metric unit system to customary
unit system and vice-versa. Table 4.5 below shows the units and the respective
conversion factor.
Table 4.5: Conversion factor between customary unit and metric unit [5]
UNIT
4.5
CONVERSION FACTOR
1 inches
25.4 millimeter (mm)
1 psi
0.0069 Mega Pascal (MPa)
1 pci
0.2713 Mega Newton per Cubic Meter (MN/m3)
1 kips
4.448221615 Kilo Newton (kN)
Comparison of Thickness Due to Traffic
Economical pavement thickness corresponded to the thickness itself. The
thicker the thickness means more expensive the pavement. Therefore, to have an
economical thickness, comparison between the methods need to be performed.
Although it is difficult to compare between AASHTO and PCA methods, but
according to David L. Guell [12], the most logical comparison can be expressed as
stated in Table 4.6 and Table 4.7 below. Meanwhile, Figure 4.12 and Figure 4.13
illustrate the result. All the thickness values were obtained from AnP Pave Software.
From the graph in Figure 4.12, it shows that if the traffic is lower, the
AASHTO thickness is lower than PCA thickness but AASHTO pavement is thicker
compare with PCA pavement if the traffic is higher. Same pattern occurred for the
second condition. However this clause only specified the comparison of the thickness
for axle load in category three. Basically, the result represented the same pattern for
all axle load category.
45
First Condition (Dowelled joint without concrete shoulder)
If PCA condition is set as below:
x
Dowelled
x
Without Shoulder
Then, Load Transfer Coefficient, J value for AASHTO = 3.2
Table 4.6: Comparison due to traffic for first condition
THICKNESS DUE TO TRAFFIC
TRAFFIC
(ESALs)
5.E+05
1.E+06
5.E+06
1.E+07
3.E+07
AASHTO
(inches)
6.37
7.26
9.49
10.56
12.47
PCA
(inches)
8.04
8.24
8.74
8.98
9.38
Figure 4.12: Comparison due to traffic for first condition
46
Second Condition (Aggregate interlocked joint without concrete shoulder)
If PCA condition is set as below:
x
Aggregate Interlocked
x
Without Shoulder
Then, Load Transfer Coefficient, J value for AASHTO = 4.2
Table 4.7: Comparison due to traffic for second condition
THICKNESS DUE TO TRAFFIC
TRAFFIC
(ESALs)
1.E+05
5.E+05
1.E+06
5.E+06
1.E+07
AASHTO
(inches)
5.54
7.54
8.47
10.91
12.1
PCA
(inches)
7.63
8.04
8.24
9.51
10.5
Figure 4.13: Comparison due to traffic for second condition
CHAPTER 5
CONCLUSION AND RECOMMENDATION
5.1
Conclusion
From this study, it can be concluded that although PCA and AASHTO have
their own concept and parameters used, there are also same parameters considered in
the design. The parameters are:
x
Modulus of Subgrade Reaction (k)
x
Modulus of Rupture (Sc)
x
Concrete Elastic Modulus (Ec)
-
Value for PCA method is fixed (4x106 psi). For purpose of
comparison, AASHTO value needs to be set as 4x106 psi because
x
Traffic
-
For purpose of comparison, conversion is required for traffic
calculation for each method.
Based on the verification result, it shows that the software can be used as
tools to design concrete pavement easier, faster and more accurate. In addition,
comparison of the thickness due to traffic loading show that, it is more economical to
used AASHTO method if the traffic is lower since the thickness is lower compare
with PCA method thickness. However, for higher traffic, it is more economical to
construct using PCA method because the AASHTO will produce thicker pavement.
48
5.2
Recommendation
This study was conducted in short and limited time, thus, there are still
several improvements can be done. In order to have a complete software for rigid
pavement thickness design, extensive study with extensive time frame is required.
It is hoped that further study will be conducted to include reinforcement
design for concrete pavement. Besides, it is also hoped that printable design report
can be produced by letter version of this software.
49
REFERENCES
1.
Elaine Ang. C&CA on the road to boost cement sales. The Star. . 2006,
October 23. Retrieved 3rd March 2009, from http://thestar.com.my
2.
Delatte N. Concrete Pavement Design, Construction, and Performance.
United States. Taylor & Francis. 2008
3.
http://training.ce.washington.edu. Date Accessed: 3rd March 2009.
4.
Glanville W. H. Concrete Roads Design and Construction.2nd Ed. London:
Her Majesty’s Stationery Office. 1965
5.
Huang, Y.H. Pavement Analysis and Design.2nd Ed. Upper Saddle River, NJ:
Prentice-Hall. 2004
6.
Paul H. Wright & Karen K, Dixon. Highway Engineering. 7th Ed. United
States.: Wiley. 2004
7.
Course on Concrete Road Pavement Design 2008. Kuala Lumpur. 17-18th
November 2008
8.
Ying-Haur Lee and Samuel H. Carpenter. PCAWIN Program for Jointed
Concrete Pavement Design. Tamkang Journal of Science and Engineering.
2001. 4(4): 293-300.
9.
Road Engineering Association of Malaysia. Guidelines to the Design of Plain
Concrete Pavement. REAM-GL 7/2004. 2004
10.
Randall-Reilly Publishing. Better Road Magazine. 2007.
11.
John Duval. Debunking Streetpave’s Claim of an “Equivalent” Asphalt
Design. Asphalt Institute. 2007
12.
American Concrete Pavement Association. (2004). Title of article. Concrete
Pavement Progress: Highway Issue, 40, 5.
13.
David L. Guell, (1985). Comparison of Two Rigid Pavement Design
Methods. Journal of Transportation Engineering. 111, 607-617.
14.
H.M. Deitel, P.J. Deitel and T.R. Neito. Visual Basic 6 How to Program.
Upper Saddle River, N. J.: Prentice-Hall. 1999
50
15.
Aida Wee Sze Chia (2006). Software Development for Water Pricing Model.
Master Degree Thesis. Universiti Teknologi Malaysia. Skudai.
51
APPENDIX A
Table and Figure for pavement thickness design Using PCA Method
1. Modulus of subgrade reaction, k
Table 1: Effect of Untreated Subbase on k Values
Table 2: Design k Values for Cement-Treated Bases
52
2. Axle Load Distribution
Table 3: Axle Load Distribution for a Given Facility
53
3. Fatigue Damage
Table 4: Equivalent Stresses for Slabs without Concrete Shoulders
Table 5: Equivalent Stresses for Slabs with Concrete Shoulders
54
Figure 1: Stress ratio factor vs. allowable load repetitions both with and without
concrete shoulders
55
4. Erosion Damage
Table 6: Erosion Factors for Slabs with Doweled Joints and no Concrete Shoulders
Table 7: Erosion Factors for Slabs with Aggregate Interlock Joints and no Concrete Shoulders
56
4. Erosion Damage- con’t
Table 8: Erosion Factors for Slabs with Doweled Joints and Concrete Shoulders
Table 9: Erosion Factors for Slabs with Aggregate Interlock Joints and Concrete Shoulders
57
Figure 2: Erosion factor vs. allowable load repetitions without concrete shoulders
58
Figure 3: Erosion factor vs. allowable load repetitions with concrete shoulders
59
APPENDIX B
Coding written in module (VB Coding)
Public trialthickness As Single
Public modulusk As Single
Public modulusrupture As Single
Public dperiod As Single
Public adtt As Single
Public radius As Single
Const Slabmodulus As Single = 4000000#
Const poissonratio As Single = 0.15
Public f2 As Single
Public f6 As Single
Public f7 As Single
Const f3 As Single = 0.894
Const f4 As Single = 0.953
Public c2 As Single
Public sal As Single
Public tal As Single
Public i As Integer
Public srepeat(9) As Single
Public trepeat(9) As Single
Public voltraf As Single
Public lsf As Single
Public Sestress(9) As Single
Public Tame As Single
Public Same As Single
Public ratiosa(9) As Single
Public allowfatsa(9) As Single
Public percentsa(9) As Single
Public Tapc As Single
Public Sapc As Single
Public Sedeflect(9) As Single
Public Testress(9) As Single
Public ratiota(9) As Single
Public allowfatta(9) As Single
Public Tedeflect(9) As Single
Public Powerta(9) As Single
Public allowerota(9) As Single
Public Powersa(9) As Single
Public allowerosa(9) As Single
Public amodulusk As Double
Public aec As Double
Public amodulusrupture As Double
Public totalfat As Single
Public totalero As Single
60
Public Sub expectrepeat(ByVal saptruck As Single, ByVal taptruck As Single, _
ByRef sexrepeat As Single, ByRef texrepeat As Single, ByRef vt As Single)
adtt = Val(frmpca.txtadtt.Text)
dperiod = Val(frmtraffic.txtdperiod.Text)
growthrate = Val(frmtraffic.txtgrowthrate.Text)
pf = (1 + (growthrate / 100)) ^ (0.5 * dperiod)
lanedist = Val(frmtraffic.txtlanedist.Text)
vt = adtt * pf * dperiod * 365 * lanedist
sexrepeat = vt / 1000 * saptruck
texrepeat = vt / 1000 * taptruck
End Sub
Public Sub radiusstiffness(ByVal modulusk As Single, ByVal trialthickness As Single, ByRef
radius As Single)
radius = (Slabmodulus * (trialthickness ^ 3) / (12 * (1 - (poissonratio ^ 2)) * modulusk)) ^ 0.25
End Sub
Public Sub equivalentstress(ByRef allowfatsa As Single, ByRef allowfatta As Single)
If frmunitsystem.optpuk.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption / 4.448221615)
ta = Val(frmresult.lbltallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption)
ta = Val(frmresult.lbltallsf(i).Caption)
End If
Call declaration
Sf1 = ((24 / sa) ^ 0.06) * (sa / 18)
Tf1 = ((48 / ta) ^ 0.06) * (ta / 36)
Sestress(i) = 6 * Same / (trialthickness ^ 2) * Sf1 * f2 * f3 * f4
Testress(i) = 6 * Tame / (trialthickness ^ 2) * Tf1 * f2 * f3 * f4
ratiosa(i) = Sestress(i) / modulusrupture
ratiota(i) = Testress(i) / modulusrupture
Call repeatnf(ratiosa(i), allowfatsa)
Call repeatnf(ratiota(i), allowfatta)
End Sub
Public Sub repeatnf(ByVal x As Single, ByRef nf As Single)
If x >= 0.55 Then
nf = 10 ^ (11.737 - 12.077 * x)
ElseIf 0.45 < x And x < 0.55 Then
nf = (4.2577 / (x - 0.4325)) ^ 3.268
Else
nf = 0
End If
End Sub
Public Sub equivalentdeflection(ByRef allowerosa As Single, ByRef allowerota As Single)
If frmunitsystem.optpuk.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption / 4.448221615)
ta = Val(frmresult.lbltallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption)
ta = Val(frmresult.lbltallsf(i).Caption)
End If
61
Call declaration
Sf5 = (sa / 18)
Tf5 = (ta / 36)
Sedeflect(i) = Sapc / modulusk * Sf5 * f6 * f7
Tedeflect(i) = Tapc / modulusk * Tf5 * f6 * f7
Powersa(i) = 268.7 * (modulusk ^ 1.27 * Sedeflect(i) ^ 2 / trialthickness)
Powerta(i) = 268.7 * (modulusk ^ 1.27 * Tedeflect(i) ^ 2 / trialthickness)
c1 = 1 - (modulusk / 2000 * 4 / trialthickness) ^ 2
Call repeatne(Powersa(i), c1, c2, allowerosa)
Call repeatne(Powerta(i), c1, c2, allowerota)
End Sub
Public Sub repeatne(ByVal c As Single, ByVal y As Single, ByVal adj As Single, ByRef ne As
Single)
If c * y > 9 Then
ne = 10 ^ (14.524 - 6.777 * (c * y - 9) ^ 0.103 - (Log(adj) / Log(10)))
ElseIf c * y <= 9 Then
ne = 0
End If
End Sub
Public Function total(ByRef p As Single, ByVal q As Single)
p=p+q
End Function
Public Function declaration()
If frmunitsystem.optpuk.Value = True Then
trialthickness = Val(frmpca.txttrialthick.Text / 25.4)
modulusrupture = Val(frmpca.txtmodulusrupture.Text / 0.0069)
modulusk = Val(frmpca.txtmodulusk.Text / 0.2713)
ElseIf frmunitsystem.optpus.Value = True Then
trialthickness = Val(frmpca.txttrialthick.Text)
modulusrupture = Val(frmpca.txtmodulusrupture.Text)
modulusk = Val(frmpca.txtmodulusk.Text)
End If
End Function
Public Sub equivalentstress1(ByRef allowfatsa As Single)
If frmunitsystem.optpuk.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption)
End If
Call declaration
Sf1 = ((24 / sa) ^ 0.06) * (sa / 18)
Sestress(i) = 6 * Same / (trialthickness ^ 2) * Sf1 * f2 * f3 * f4
ratiosa(i) = Sestress(i) / modulusrupture
Call repeatnf(ratiosa(i), allowfatsa)
End Sub
Public Sub equivalentstress2(ByRef allowfatta As Single)
62
If frmunitsystem.optpuk.Value = True Then
ta = Val(frmresult.lbltallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
ta = Val(frmresult.lbltallsf(i).Caption)
End If
Call declaration
Tf1 = ((48 / ta) ^ 0.06) * (ta / 36)
Testress(i) = 6 * Tame / (trialthickness ^ 2) * Tf1 * f2 * f3 * f4
ratiota(i) = Testress(i) / modulusrupture
Call repeatnf(ratiota(i), allowfatta)
End Sub
Public Sub equivalentdeflection1(ByRef allowerosa As Single)
If frmunitsystem.optpuk.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
sa = Val(frmresult.lblsallsf(i).Caption)
End If
Call declaration
Sf5 = (sa / 18)
Sedeflect(i) = Sapc / modulusk * Sf5 * f6 * f7
Powersa(i) = 268.7 * (modulusk ^ 1.27 * Sedeflect(i) ^ 2 / trialthickness)
c1 = 1 - (modulusk / 2000 * 4 / trialthickness) ^ 2
Call repeatne(Powersa(i), c1, c2, allowerosa)
End Sub
Public Sub equivalentdeflection2(ByRef allowerota As Single)
If frmunitsystem.optpuk.Value = True Then
ta = Val(frmresult.lbltallsf(i).Caption / 4.448221615)
ElseIf frmunitsystem.optpus.Value = True Then
ta = Val(frmresult.lbltallsf(i).Caption)
End If
Call declaration
Tf5 = (ta / 36)
Tedeflect(i) = Tapc / modulusk * Tf5 * f6 * f7
Powerta(i) = 268.7 * (modulusk ^ 1.27 * Tedeflect(i) ^ 2 / trialthickness)
c1 = 1 - (modulusk / 2000 * 4 / trialthickness) ^ 2
Call repeatne(Powerta(i), c1, c2, allowerota)
End Sub
63
APPENDIX C
Coding written in Start Menu (VB Coding)
Private Sub cmdmasuk_Click()
Password = txtPassword.Text
If Password = "123" Then
Unload frmstart
frmunitsystem.Show
frmunitsystem.Show
Else
txtPassword.Text = ""
txtPassword.SetFocus
End If
End Sub
Private Sub Form_Load()
lbldevelop.Caption = "Developed by:"
lbl1.Caption = "Mohd Khairul Idham bin Mohd Satar"
lbl2.Caption = "Assoc. Prof. Dr Mohd Rosli bin Hainin"
lbl3.Caption = "Dr. Haryati bin Yaacob"
End Sub
Private Sub Timer1_Timer()
ProgressBar1.Value = ProgressBar1.Value + 1
If ProgressBar1.Value >= ProgressBar1.Max Then
Timer1.Enabled = False
End If
If ProgressBar1.Value = 80 Then
txtPassword.Visible = True
cmdmasuk.Visible = True
ProgressBar1.Visible = False
lblwait.Visible = False
imgintro.Visible = True
End If
End Sub
64
APPENDIX D
Coding written in Design Method Selection Menu (VB Coding)
Private Sub cmdauk_Click()
Unload frmunitsystem
frmtraffic.Show
frmtraffic.cmdok2.Visible = True
frmtraffic.cmdok.Visible = False
frmaashto.lblauk1.Visible = True
frmaashto.lblauk2.Visible = True
frmaashto.lblauk3.Visible = True
optauk.Value = True
optaus.Value = False
frmtraffic.txtadt.Visible = False
frmtraffic.Label3.Visible = False
frmtraffic.Label2.Visible = False
End Sub
Private Sub cmdaus_Click()
Unload frmunitsystem
frmtraffic.Show
frmtraffic.cmdok2.Visible = True
frmtraffic.cmdok.Visible = False
frmaashto.lblaus1.Visible = True
frmaashto.lblaus2.Visible = True
frmaashto.lblaus3.Visible = True
optauk.Value = False
optaus.Value = True
frmtraffic.txtadt.Visible = False
frmtraffic.Label3.Visible = False
frmtraffic.Label2.Visible = False
End Sub
Private Sub cmduk_Click()
Unload frmunitsystem
frmtraffic.Show
frmtraffic.cmdok2.Visible = False
frmtraffic.cmdok.Visible = True
frmpca.lbluk1.Visible = True
frmpca.lbluk2.Visible = True
frmpca.lbluk3.Visible = True
optpuk.Value = True
optpus.Value = False
End Sub
Private Sub cmdus_Click()
Unload frmunitsystem
frmtraffic.Show
frmtraffic.cmdok2.Visible = False
frmtraffic.cmdok.Visible = True
frmpca.lblus1.Visible = True
frmpca.lblus2.Visible = True
65
frmpca.lblus3.Visible = True
optpuk.Value = False
optpus.Value = True
End Sub
Private Sub Form_Load()
lblfrmunitsystem.Caption = "AnP Pave - Method Selection"
End Sub
Private Sub cmdexit_Click()
End
End Sub
66
APPENDIX E
Coding written in PCA Method - Input Data Form (VB Coding)
Option Explicit
Private Sub cmdback_Click()
Unload Me
Unload frmtraffic
Unload frmunitsystem
frmunitsystem.Show
End Sub
Private Sub cmdclear_Click()
'Clearing The Input
txttrialthick.Text = ""
txtmodulusk.Text = ""
txtmodulusrupture.Text = ""
txtadtt.Text = ""
Opt1p3 = False
Opt1p2 = False
Opt1p1 = False
Opt1p0 = False
Optwithshoulder = False
Optnoshoulder = False
Optwithhdowel = False
Optnodowel = False
Opt1p3.TabStop = True
Opt1p2.TabStop = True
Opt1p1.TabStop = True
Opt1p0.TabStop = True
Optwithshoulder.TabStop = True
Optnoshoulder.TabStop = True
Optwithhdowel.TabStop = True
Optnodowel.TabStop = True
End Sub
Private Sub cmdok_Click()
frmpca.Hide
frmaxle.Show
End Sub
Private Sub cmdok2_Click()
If frmunitsystem.optpuk.Value = True Then
frmresult.lblkn.Visible = True
frmresult.lblkip.Visible = False
frmresult.lblus1.Visible = False
frmresult.lbluk1.Visible = True
ElseIf frmunitsystem.optpus.Value = True Then
frmresult.lblkn.Visible = False
frmresult.lblkip.Visible = True
frmresult.lblus1.Visible = True
67
frmresult.lbluk1.Visible = False
End If
frmresult.lbllsf.Caption = lsf
frmpca.Hide
frmaxle.cmdnext = True
frmresult.Show
End Sub
Private Sub cmdok3_Click()
If frmunitsystem.optpuk.Value = True Then
frmresult.lblkn.Visible = True
frmresult.lblkip.Visible = False
frmresult.lblus1.Visible = False
frmresult.lbluk1.Visible = True
ElseIf frmunitsystem.optpus.Value = True Then
frmresult.lblkn.Visible = False
frmresult.lblkip.Visible = True
frmresult.lblus1.Visible = True
frmresult.lbluk1.Visible = False
End If
frmresult.lbllsf.Caption = lsf
frmpca.Hide
frmaxle.cmdnext2 = True
frmresult.Show
End Sub
Private Sub Form_Load()
lblfrmpca.Caption = "AnP Pave - PCA Method (Input Data)"
End Sub
Private Sub Opt1p0_click()
lsf = 1#
End Sub
Private Sub Opt1p1_click()
lsf = 1.1
End Sub
Private Sub Opt1p2_click()
lsf = 1.2
End Sub
Private Sub Opt1p3_Click()
lsf = 1.3
End Sub
68
Private Sub Optnodowel_Click()
Call radiusstiffness(modulusk, trialthickness, radius)
If Optnoshoulder = True Then
Tapc = 1.847 + (213.68 / radius) + (1260.8 / radius ^ 2) + (22989 / radius ^ 3)
Sapc = 1.571 + (46.127 / radius) + (4372.7 / radius ^ 2) - (22886 / radius ^ 3)
f6 = 0.95
ElseIf Optwithshoulder = True Then
Tapc = 1.47 + (102.2 / radius) - (1072 / radius ^ 2) + (14451 / radius ^ 3)
Sapc = 0.5874 + (65.108 / radius) + (1130.9 / radius ^ 2) - (5245.8 / radius ^ 3)
f6 = 1.001 - (0.26363 - (modulusk / 3034.5)) ^ 2
End If
End Sub
Private Sub Optnoshoulder_Click()
frmedowel.Visible = True
Call declaration
f2 = 0.892 + trialthickness / 85.71 - trialthickness ^ 2 / 3000
f7 = 0.896
c2 = 0.06
Call radiusstiffness(modulusk, trialthickness, radius)
Tame = 3029 - 2966.8 * (Log(radius) / Log(10)) + 133.69 * radius - 0.0632 * radius ^ 2
Same = -1600 + 2525 * (Log(radius) / Log(10)) + (24.42 * radius) + 0.204 * radius ^ 2
End Sub
Private Sub Optwithhdowel_Click()
Call radiusstiffness(modulusk, trialthickness, radius)
If Optwithshoulder = True Then
Tapc = 0.0345 + (146.25 / radius) - (2385.6 / radius ^ 2) + (23848 / radius ^ 3)
Sapc = 0.018 + (72.99 / radius) + (323.1 / radius ^ 2) + (1620 / radius ^ 3)
f6 = 1
ElseIf Optnoshoulder = True Then
Tapc = 1.258 + (97.491 / radius) + (1484.1 / radius ^ 2) - (180 / radius ^ 3)
Sapc = -0.3019 + (128.85 / radius) + (1105.8 / radius ^ 2) + (3269.1 / radius ^ 3)
f6 = 1
End If
End Sub
Private Sub Optwithshoulder_Click()
frmedowel.Visible = True
Call declaration
f2 = 1
f7 = 1
c2 = 0.94
Call radiusstiffness(modulusk, trialthickness, radius)
Tame = (2005.4 - 1980.9 * (Log(radius) / Log(10)) + 99.008 * radius) * (0.8742 + 0.01088 *
modulusk ^ 0.447)
Same = (-970.4 + 1202.6 * (Log(radius) / Log(10)) + 53.587 * radius) * (0.8742 + 0.01088 *
modulusk ^ 0.447)
End Sub
Private Sub cmdexit_Click()
End
End Sub
69
APPENDIX F
Coding written in PCA Method PCA Method - Axle Data Form (VB Coding)
Private Sub cmdback_Click()
Unload Me
Unload frmpca
Unload frmtraffic
Unload frmunitsystem
frmunitsystem.Show
End Sub
Private Sub cmdcate1_Click()
cmdnext.Visible = False
cmdnext2.Visible = True
cmdnext3.Visible = False
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok3.Visible = True
frmpca.cmdok3.Default = True
frmresult.cmdcompare.Visible = False
frmresult.cmdcompare2.Visible = True
If frmunitsystem.optpuk.Value = True Then
sal = 22
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 36
For i = 0 To 8
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 22
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 36
For i = 0 To 8
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.96
txtsaptruck(1).Text = 4.23
txtsaptruck(2).Text = 15.81
txtsaptruck(3).Text = 38.02
txtsaptruck(4).Text = 56.11
txtsaptruck(5).Text = 124#
70
txtsaptruck(6).Text = 204.96
txtsaptruck(7).Text = 483.1
txtsaptruck(8).Text = 732.28
txtsaptruck(9).Text = 1693.31
txttaptruck(0).Text = 4.19
txttaptruck(1).Text = 69.59
txttaptruck(2).Text = 68.48
txttaptruck(3).Text = 39.18
txttaptruck(4).Text = 57.1
txttaptruck(5).Text = 75.02
txttaptruck(6).Text = 139.3
txttaptruck(7).Text = 85.59
txttaptruck(8).Text = 31.9
txttaptruck(9).Text = ""
txttal(9).Text = ""
cmdnext2.Enabled = True
End Sub
Private Sub cmdcate2_Click()
cmdnext.Visible = True
cmdnext2.Visible = False
cmdnext3.Visible = False
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 26
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 44
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 26
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 44
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.07
txtsaptruck(1).Text = 1.6
71
txtsaptruck(2).Text = 2.6
txtsaptruck(3).Text = 6.63
txtsaptruck(4).Text = 16.61
txtsaptruck(5).Text = 23.88
txtsaptruck(6).Text = 47.76
txtsaptruck(7).Text = 116.76
txtsaptruck(8).Text = 142.7
txtsaptruck(9).Text = 233.6
txttaptruck(0).Text = 1.16
txttaptruck(1).Text = 7.76
txttaptruck(2).Text = 38.79
txttaptruck(3).Text = 54.76
txttaptruck(4).Text = 44.43
txttaptruck(5).Text = 30.74
txttaptruck(6).Text = 45
txttaptruck(7).Text = 59.25
txttaptruck(8).Text = 91.15
txttaptruck(9).Text = 47.01
cmdnext.Enabled = True
End Sub
Private Sub cmdcate3_Click()
cmdnext.Visible = True
cmdnext2.Visible = False
cmdnext3.Visible = False
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.45
72
txtsaptruck(1).Text = 0.85
txtsaptruck(2).Text = 1.78
txtsaptruck(3).Text = 5.21
txtsaptruck(4).Text = 7.85
txtsaptruck(5).Text = 16.33
txtsaptruck(6).Text = 25.15
txtsaptruck(7).Text = 31.82
txtsaptruck(8).Text = 47.73
txtsaptruck(9).Text = 182.02
txttaptruck(0).Text = 1.19
txttaptruck(1).Text = 2.91
txttaptruck(2).Text = 8.01
txttaptruck(3).Text = 21.31
txttaptruck(4).Text = 56.25
txttaptruck(5).Text = 103.63
txttaptruck(6).Text = 121.22
txttaptruck(7).Text = 72.54
txttaptruck(8).Text = 85.94
txttaptruck(9).Text = 99.34
cmdnext.Enabled = True
End Sub
Private Sub cmdcate4_Click()
cmdnext.Visible = True
cmdnext2.Visible = False
cmdnext3.Visible = False
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 34
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 60
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 34
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 60
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
73
txtsaptruck(0).Text = 0.19
txtsaptruck(1).Text = 0.54
txtsaptruck(2).Text = 0.63
txtsaptruck(3).Text = 1.78
txtsaptruck(4).Text = 3.52
txtsaptruck(5).Text = 4.16
txtsaptruck(6).Text = 9.69
txtsaptruck(7).Text = 41.82
txtsaptruck(8).Text = 68.27
txtsaptruck(9).Text = 57.07
txttaptruck(0).Text = 0.57
txttaptruck(1).Text = 1.07
txttaptruck(2).Text = 1.79
txttaptruck(3).Text = 3.03
txttaptruck(4).Text = 3.52
txttaptruck(5).Text = 20.31
txttaptruck(6).Text = 78.19
txttaptruck(7).Text = 109.54
txttaptruck(8).Text = 95.79
txttaptruck(9).Text = 71.16
cmdnext.Enabled = True
End Sub
Private Sub cmddefault_Click()
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
cmdnext.Visible = True
cmdnext2.Visible = False
If frmunitsystem.optpuk.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.58
txtsaptruck(1).Text = 1.35
txtsaptruck(2).Text = 2.77
74
txtsaptruck(3).Text = 5.92
txtsaptruck(4).Text = 9.83
txtsaptruck(5).Text = 21.67
txtsaptruck(6).Text = 28.24
txtsaptruck(7).Text = 38.83
txtsaptruck(8).Text = 53.94
txtsaptruck(9).Text = 168.85
txttaptruck(0).Text = 1.98
txttaptruck(1).Text = 3.94
txttaptruck(2).Text = 11.48
txttaptruck(3).Text = 34.27
txttaptruck(4).Text = 81.42
txttaptruck(5).Text = 85.54
txttaptruck(6).Text = 152.23
txttaptruck(7).Text = 90.52
txttaptruck(8).Text = 112.81
txttaptruck(9).Text = 124.69
cmdnext.Enabled = True
End Sub
Private Sub cmddetail_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
frmdetail.Show
End Sub
Private Sub cmddetail_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
frmdetail.Hide
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub cmdnext_Click()
frmresult.txtthicknessresult.Text = frmpca.txttrialthick.Text
frmresult.Optwithshoulder = frmpca.Optwithshoulder
frmresult.Optnoshoulder = frmpca.Optnoshoulder
frmresult.Optwithhdowel = frmpca.Optwithhdowel
frmresult.Optnodowel = frmpca.Optnodowel
frmresult.Show
frmaxle.Hide
For i = 0 To 9
saptruck = Val(txtsaptruck(i).Text)
taptruck = Val(txttaptruck(i).Text)
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
frmresult.lblsaexrepeat(i).Caption = Format(srepeat(i), " #0,000 ")
frmresult.lbltaexrepeat(i).Caption = Format(trepeat(i), " #0,000 ")
frmresult.lblsal(i).Caption = Format(txtsal(i).Text, "###0")
frmresult.lbltal(i).Caption = Format(txttal(i).Text, "###0")
frmresult.lblsallsf(i).Caption = Format(txtsal(i).Text * lsf, "###0.0")
frmresult.lbltallsf(i).Caption = Format(txttal(i).Text * lsf, "###0.0")
Call equivalentstress(allowfatsa(i), allowfatta(i))
frmresult.lblsafatallowrepeat(i).Caption = Format(allowfatsa(i), "0,000")
frmresult.lbltafatallowrepeat(i).Caption = Format(allowfatta(i), "0,000")
75
Call equivalentdeflection(allowerosa(i), allowerota(i))
frmresult.lblsaeroallowrepeat(i).Caption = Format(allowerosa(i), "0,000")
frmresult.lbltaeroallowrepeat(i).Caption = Format(allowerota(i), "0,000")
If allowfatsa(i) <> 0 Then
frmresult.lblsafatpercent(i).Caption = Format(srepeat(i) / allowfatsa(i) * 100, "###0.0")
Else
frmresult.lblsafatpercent(i).Caption = Format(0, "###0.0")
End If
If allowfatta(i) <> 0 Then
frmresult.lbltafatpercent(i).Caption = Format(trepeat(i) / allowfatta(i) * 100, "###0.0")
Else
frmresult.lbltafatpercent(i).Caption = Format(0, "###0.0")
End If
If allowerosa(i) <> 0 Then
frmresult.lblsaeropercent(i).Caption = Format(srepeat(i) / allowerosa(i) * 100, "###0.0")
Else
frmresult.lblsaeropercent(i).Caption = Format(0, "###0.0")
End If
If allowerota(i) <> 0 Then
frmresult.lbltaeropercent(i).Caption = Format(trepeat(i) / allowerota(i) * 100, "###0.0")
Else
frmresult.lbltaeropercent(i).Caption = Format(0, "###0.0")
End If
Dim safatpercent(9) As Single
Dim tafatpercent(9) As Single
Dim totalfatsa As Single
Dim totalfatta As Single
Dim totalfat As Single
safatpercent(i) = Val(frmresult.lblsafatpercent(i).Caption)
tafatpercent(i) = Val(frmresult.lbltafatpercent(i).Caption)
Call total(totalfatsa, safatpercent(i))
Call total(totalfatta, tafatpercent(i))
Dim saeropercent(9) As Single
Dim taeropercent(9) As Single
Dim totalerosa As Single
Dim totalerota As Single
Dim totalero As Single
saeropercent(i) = Val(frmresult.lblsaeropercent(i).Caption)
taeropercent(i) = Val(frmresult.lbltaeropercent(i).Caption)
Call total(totalerosa, saeropercent(i))
Call total(totalerota, taeropercent(i))
Next i
totalfat = totalfatsa + totalfatta
frmresult.lbltotalfat.Caption = Format(totalfat, "###0.0")
totalero = totalerosa + totalerota
frmresult.lbltotalero.Caption = Format(totalero, "###0.0")
frmpca.txttrialthick.Text = ""
End Sub
Private Sub cmdnext2_Click()
frmresult.txtthicknessresult.Text = frmpca.txttrialthick.Text
frmresult.Optwithshoulder = frmpca.Optwithshoulder
76
frmresult.Optnoshoulder = frmpca.Optnoshoulder
frmresult.Optwithhdowel = frmpca.Optwithhdowel
frmresult.Optnodowel = frmpca.Optnodowel
frmresult.Show
frmaxle.Hide
For i = 0 To 9
saptruck = Val(txtsaptruck(i).Text)
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
frmresult.lblsaexrepeat(i).Caption = Format(srepeat(i), " #0,000 ")
frmresult.lblsal(i).Caption = Format(txtsal(i).Text, "###0")
frmresult.lblsallsf(i).Caption = Format(txtsal(i).Text * lsf, "###0.0")
Call equivalentstress1(allowfatsa(i))
frmresult.lblsafatallowrepeat(i).Caption = Format(allowfatsa(i), "0,000")
Call equivalentdeflection1(allowerosa(i))
frmresult.lblsaeroallowrepeat(i).Caption = Format(allowerosa(i), "0,000")
If allowfatsa(i) <> 0 Then
frmresult.lblsafatpercent(i).Caption = Format(srepeat(i) / allowfatsa(i) * 100, "###0.0")
Else
frmresult.lblsafatpercent(i).Caption = Format(0, "###0.0")
End If
If allowerosa(i) <> 0 Then
frmresult.lblsaeropercent(i).Caption = Format(srepeat(i) / allowerosa(i) * 100, "###0.0")
Else
frmresult.lblsaeropercent(i).Caption = Format(0, "###0.0")
End If
Dim safatpercent(9) As Single
Dim totalfatsa As Single
safatpercent(i) = Val(frmresult.lblsafatpercent(i).Caption)
Call total(totalfatsa, safatpercent(i))
Dim saeropercent(9) As Single
Dim totalerosa As Single
saeropercent(i) = Val(frmresult.lblsaeropercent(i).Caption)
Call total(totalerosa, saeropercent(i))
Next i
For i = 0 To 8
taptruck = Val(txttaptruck(i).Text)
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
frmresult.lbltaexrepeat(i).Caption = Format(trepeat(i), " #0,000 ")
frmresult.lbltal(i).Caption = Format(txttal(i).Text, "###0")
frmresult.lbltallsf(i).Caption = Format(txttal(i).Text * lsf, "###0.0")
Call equivalentstress2(allowfatta(i))
77
frmresult.lbltafatallowrepeat(i).Caption = Format(allowfatta(i), "0,000")
Call equivalentdeflection2(allowerota(i))
frmresult.lbltaeroallowrepeat(i).Caption = Format(allowerota(i), "0,000")
If allowfatta(i) <> 0 Then
frmresult.lbltafatpercent(i).Caption = Format(trepeat(i) / allowfatta(i) * 100, "###0.0")
Else
frmresult.lbltafatpercent(i).Caption = Format(0, "###0.0")
End If
If allowerota(i) <> 0 Then
frmresult.lbltaeropercent(i).Caption = Format(trepeat(i) / allowerota(i) * 100, "###0.0")
Else
frmresult.lbltaeropercent(i).Caption = Format(0, "###0.0")
End If
Dim tafatpercent(8) As Single
Dim totalfatta As Single
tafatpercent(i) = Val(frmresult.lbltafatpercent(i).Caption)
Call total(totalfatta, tafatpercent(i))
Dim taeropercent(8) As Single
Dim totalerota As Single
taeropercent(i) = Val(frmresult.lbltaeropercent(i).Caption)
Call total(totalerota, taeropercent(i))
Next i
Dim totalfat As Single
Dim totalero As Single
totalfat = totalfatsa + totalfatta
frmresult.lbltotalfat.Caption = Format(totalfat, "###0.0")
totalero = totalerosa + totalerota
frmresult.lbltotalero.Caption = Format(totalero, "###0.0")
frmpca.txttrialthick.Text = ""
End Sub
Private Sub cmdnext3_Click()
For i = 0 To 9
Dim sal(9) As Single
Dim tal(9) As Single
Dim totalsap As Single
Dim totaltap As Single
Dim esalsap(9) As Single
Dim esaltap(9) As Single
Dim esaltotalsap As Single
Dim esaltotaltap As Single
Dim totalesal As Single
Dim saptruck1(9) As Single
Dim taptruck1(9) As Single
Dim esal As Single
Dim adtt As Single
dperiod = Val(frmtraffic.txtdperiod.Text)
growthrate = Val(frmtraffic.txtgrowthrate.Text)
pf = (1 + (growthrate / 100)) ^ (0.5 * dperiod)
78
lanedist = Val(frmtraffic.txtlanedist.Text)
esal = frmaashto.txtawt.Text
If frmunitsystem.optpuk.Value = True Then
sal(i) = Val((frmaxle.txtsal(i).Text / 4.448221615 / 18) ^ 4)
tal(i) = Val((frmaxle.txttal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
sal(i) = Val(frmaxle.txtsal(i).Text / 18) ^ 4
tal(i) = Val(frmaxle.txttal(i).Text / 18) ^ 4
End If
saptruck1(i) = Val(frmaxle.txtsaptruck(i).Text)
taptruck1(i) = Val(frmaxle.txttaptruck(i).Text)
Next i
For i = 0 To 9
esalsap(i) = saptruck1(i) * sal(i)
esaltap(i) = taptruck1(i) * tal(i)
Call total(esaltotalsap, esalsap(i))
Call total(esaltotaltap, esaltap(i))
Next i
adtt = esal / (esaltotalsap + esaltotaltap) * 1000 / pf / dperiod / 365 / lanedist
frmpca.txtadtt.Text = adtt
frmaresult.cmdacompnext.Visible = True
frmaresult.cmdacompnext.Default = True
frmaresult.cmdacompare.Visible = False
frmpca.Show
If frmunitsystem.optauk.Value = True Then
frmunitsystem.cmduk = True
ElseIf frmunitsystem.optaus.Value = True Then
frmunitsystem.cmdus = True
End If
frmpca.txtmodulusk.Text = frmaashto.txtamodulusk.Text
frmpca.txtmodulusrupture.Text = frmaashto.txtamodulusrupture.Text
frmcomparison.lblmoduluskcomp.Caption = frmpca.txtmodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmpca.txtmodulusrupture.Text
frmpca.Show
frmaxle.Hide
End Sub
Private Sub cmdnext4_Click()
Dim sal(9) As Single
Dim tal(8) As Single
Dim totalsap As Single
Dim totaltap As Single
Dim esalsap(9) As Single
Dim esaltap(8) As Single
Dim esaltotalsap As Single
Dim esaltotaltap As Single
Dim totalesal As Single
Dim saptruck1(9) As Single
Dim taptruck1(8) As Single
79
Dim esal As Single
Dim adtt As Single
dperiod = Val(frmtraffic.txtdperiod.Text)
growthrate = Val(frmtraffic.txtgrowthrate.Text)
pf = (1 + (growthrate / 100)) ^ (0.5 * dperiod)
lanedist = Val(frmtraffic.txtlanedist.Text)
esal = frmaashto.txtawt.Text
For i = 0 To 9
If frmunitsystem.optpuk.Value = True Then
sal(i) = Val((frmaxle.txtsal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
sal(i) = Val(frmaxle.txtsal(i).Text / 18) ^ 4
End If
saptruck1(i) = Val(frmaxle.txtsaptruck(i).Text)
Next i
For i = 0 To 9
esalsap(i) = saptruck1(i) * sal(i)
Call total(esaltotalsap, esalsap(i))
Next i
For i = 0 To 8
If frmunitsystem.optpuk.Value = True Then
tal(i) = Val((frmaxle.txttal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
tal(i) = Val(frmaxle.txttal(i).Text / 18) ^ 4
End If
taptruck1(i) = Val(frmaxle.txttaptruck(i).Text)
Next i
For i = 0 To 8
esaltap(i) = taptruck1(i) * tal(i)
Call total(esaltotaltap, esaltap(i))
Next i
adtt = esal / (esaltotalsap + esaltotaltap) * 1000 / pf / dperiod / 365 / lanedist
frmpca.txtadtt.Text = adtt
frmaresult.cmdacompnext.Visible = True
frmaresult.cmdacompnext.Default = True
frmaresult.cmdacompare.Visible = False
frmpca.Show
If frmunitsystem.optauk.Value = True Then
frmunitsystem.cmduk = True
ElseIf frmunitsystem.optaus.Value = True Then
frmunitsystem.cmdus = True
End If
frmpca.txtmodulusk.Text = frmaashto.txtamodulusk.Text
frmpca.txtmodulusrupture.Text = frmaashto.txtamodulusrupture.Text
frmcomparison.lblmoduluskcomp.Caption = frmpca.txtmodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmpca.txtmodulusrupture.Text
frmpca.Show
frmaxle.Hide
End Sub
80
Private Sub Form_Load()
lblfrmaxle.Caption = "AnP Pave - PCA Method (Axle Data)"
If frmunitsystem.optpuk.Value = True Then
frmaxle.lblkn.Visible = True
frmaxle.lblkip.Visible = False
frmaxle.lblkn1.Visible = True
frmaxle.lblkip1.Visible = False
ElseIf frmunitsystem.optpus.Value = True Then
frmaxle.lblkn.Visible = False
frmaxle.lblkip.Visible = True
frmaxle.lblkn1.Visible = False
frmaxle.lblkip1.Visible = True
End If
End Sub
Private Sub cmdcate11_Click()
cmdnext.Visible = False
cmdnext2.Visible = False
cmdnext3.Visible = False
cmdnext4.Visible = True
frmpca.cmdok.Visible = False
frmpca.cmdok3.Visible = True
frmpca.cmdok3.Default = True
frmresult.cmdcompare.Visible = False
frmresult.cmdcompare2.Visible = False
If frmunitsystem.optpuk.Value = True Then
sal = 22
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 36
For i = 0 To 8
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 22
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 36
For i = 0 To 8
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.96
txtsaptruck(1).Text = 4.23
txtsaptruck(2).Text = 15.81
txtsaptruck(3).Text = 38.02
txtsaptruck(4).Text = 56.11
txtsaptruck(5).Text = 124#
txtsaptruck(6).Text = 204.96
81
txtsaptruck(7).Text = 483.1
txtsaptruck(8).Text = 732.28
txtsaptruck(9).Text = 1693.31
txttaptruck(0).Text = 4.19
txttaptruck(1).Text = 69.59
txttaptruck(2).Text = 68.48
txttaptruck(3).Text = 39.18
txttaptruck(4).Text = 57.1
txttaptruck(5).Text = 75.02
txttaptruck(6).Text = 139.3
txttaptruck(7).Text = 85.59
txttaptruck(8).Text = 31.9
txttaptruck(9).Text = ""
txttal(9).Text = ""
cmdnext2.Enabled = True
End Sub
Private Sub cmdcate21_Click()
cmdnext.Visible = False
cmdnext2.Visible = False
cmdnext3.Visible = True
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 26
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 44
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 26
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 44
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.07
txtsaptruck(1).Text = 1.6
txtsaptruck(2).Text = 2.6
82
txtsaptruck(3).Text = 6.63
txtsaptruck(4).Text = 16.61
txtsaptruck(5).Text = 23.88
txtsaptruck(6).Text = 47.76
txtsaptruck(7).Text = 116.76
txtsaptruck(8).Text = 142.7
txtsaptruck(9).Text = 233.6
txttaptruck(0).Text = 1.16
txttaptruck(1).Text = 7.76
txttaptruck(2).Text = 38.79
txttaptruck(3).Text = 54.76
txttaptruck(4).Text = 44.43
txttaptruck(5).Text = 30.74
txttaptruck(6).Text = 45
txttaptruck(7).Text = 59.25
txttaptruck(8).Text = 91.15
txttaptruck(9).Text = 47.01
cmdnext.Enabled = True
End Sub
Private Sub cmdcate31_Click()
cmdnext.Visible = False
cmdnext2.Visible = False
cmdnext3.Visible = True
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 30
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 52
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.45
txtsaptruck(1).Text = 0.85
txtsaptruck(2).Text = 1.78
83
txtsaptruck(3).Text = 5.21
txtsaptruck(4).Text = 7.85
txtsaptruck(5).Text = 16.33
txtsaptruck(6).Text = 25.15
txtsaptruck(7).Text = 31.82
txtsaptruck(8).Text = 47.73
txtsaptruck(9).Text = 182.02
txttaptruck(0).Text = 1.19
txttaptruck(1).Text = 2.91
txttaptruck(2).Text = 8.01
txttaptruck(3).Text = 21.31
txttaptruck(4).Text = 56.25
txttaptruck(5).Text = 103.63
txttaptruck(6).Text = 121.22
txttaptruck(7).Text = 72.54
txttaptruck(8).Text = 85.94
txttaptruck(9).Text = 99.34
cmdnext.Enabled = True
End Sub
Private Sub cmdcate41_Click()
cmdnext.Visible = False
cmdnext2.Visible = False
cmdnext3.Visible = True
cmdnext4.Visible = False
frmpca.cmdok.Visible = False
frmpca.cmdok2.Visible = True
frmpca.cmdok2.Default = True
If frmunitsystem.optpuk.Value = True Then
sal = 34
For i = 0 To 9
txtsal(i).Text = sal * 4.448221615
sal = sal - 2
Next i
tal = 60
For i = 0 To 9
txttal(i).Text = tal * 4.448221615
tal = tal - 4
Next i
ElseIf frmunitsystem.optpus.Value = True Then
sal = 34
For i = 0 To 9
txtsal(i).Text = sal
sal = sal - 2
Next i
tal = 60
For i = 0 To 9
txttal(i).Text = tal
tal = tal - 4
Next i
End If
txtsaptruck(0).Text = 0.19
txtsaptruck(1).Text = 0.54
txtsaptruck(2).Text = 0.63
84
txtsaptruck(3).Text = 1.78
txtsaptruck(4).Text = 3.52
txtsaptruck(5).Text = 4.16
txtsaptruck(6).Text = 9.69
txtsaptruck(7).Text = 41.82
txtsaptruck(8).Text = 68.27
txtsaptruck(9).Text = 57.07
txttaptruck(0).Text = 0.57
txttaptruck(1).Text = 1.07
txttaptruck(2).Text = 1.79
txttaptruck(3).Text = 3.03
txttaptruck(4).Text = 3.52
txttaptruck(5).Text = 20.31
txttaptruck(6).Text = 78.19
txttaptruck(7).Text = 109.54
txttaptruck(8).Text = 95.79
txttaptruck(9).Text = 71.16
cmdnext.Enabled = True
End Sub
85
APPENDIX G
Coding written in PCA Method – Result Form (VB Coding)
Private Sub cmdcompare_Click()
For i = 0 To 9
Dim sal(9) As Single
Dim tal(9) As Single
Dim totalsap As Single
Dim totaltap As Single
Dim esalsap(9) As Single
Dim esaltap(9) As Single
Dim esaltotalsap As Single
Dim esaltotaltap As Single
Dim totalesal As Single
Dim saptruck1(9) As Single
Dim taptruck1(9) As Single
If frmunitsystem.optpuk.Value = True Then
sal(i) = Val((frmaxle.txtsal(i).Text / 4.448221615 / 18) ^ 4)
tal(i) = Val((frmaxle.txttal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
sal(i) = Val(frmaxle.txtsal(i).Text / 18) ^ 4
tal(i) = Val(frmaxle.txttal(i).Text / 18) ^ 4
End If
saptruck1(i) = Val(frmaxle.txtsaptruck(i).Text)
taptruck1(i) = Val(frmaxle.txttaptruck(i).Text)
Next i
For i = 0 To 9
esalsap(i) = saptruck1(i) * sal(i)
esaltap(i) = taptruck1(i) * tal(i)
Call total(esaltotalsap, esalsap(i))
Call total(esaltotaltap, esaltap(i))
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
Next i
frmaashto.txtawt.Text = (esaltotalsap + esaltotaltap) / 1000 * voltraf
frmaresult.cmdacompnext.Visible = True
frmaresult.cmdacompnext.Default = True
frmaresult.cmdacompare.Visible = False
If frmunitsystem.optpuk.Value = True Then
frmunitsystem.cmdauk = True
ElseIf frmunitsystem.optpus.Value = True Then
frmunitsystem.cmdaus = True
End If
frmaashto.txtamodulusk.Text = frmpca.txtmodulusk.Text
frmaashto.txtamodulusrupture.Text = frmpca.txtmodulusrupture.Text
frmaashto.txtamodulusk.Enabled = False
frmaashto.txtamodulusrupture.Enabled = False
frmcomparison.lblmoduluskcomp.Caption = frmpca.txtmodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmpca.txtmodulusrupture.Text
86
frmresult.Hide
frmaashto.Hide
frmtraffic.Label3.Visible = False
frmtraffic.Label2.Visible = False
frmtraffic.txtadt.Visible = False
End Sub
Private Sub cmdcompare2_Click()
Dim sal(9) As Single
Dim tal(8) As Single
Dim totalsap As Single
Dim totaltap As Single
Dim esalsap(9) As Single
Dim esaltap(8) As Single
Dim esaltotalsap As Single
Dim esaltotaltap As Single
Dim totalesal As Single
Dim saptruck1(9) As Single
Dim taptruck1(8) As Single
Dim totalsaptap As Single
For i = 0 To 9
If frmunitsystem.optpuk.Value = True Then
sal(i) = Val((frmaxle.txtsal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
sal(i) = Val(frmaxle.txtsal(i).Text / 18) ^ 4
End If
saptruck1(i) = Val(frmaxle.txtsaptruck(i).Text)
Next i
For i = 0 To 9
esalsap(i) = saptruck1(i) * sal(i)
Call total(esaltotalsap, esalsap(i))
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
Next i
For i = 0 To 8
If frmunitsystem.optpuk.Value = True Then
tal(i) = Val((frmaxle.txttal(i).Text / 4.448221615 / 18) ^ 4)
ElseIf frmunitsystem.optpus.Value = True Then
tal(i) = Val(frmaxle.txttal(i).Text / 18) ^ 4
End If
taptruck1(i) = Val(frmaxle.txttaptruck(i).Text)
Next i
For i = 0 To 8
esaltap(i) = taptruck1(i) * tal(i)
Call total(esaltotaltap, esaltap(i))
Call expectrepeat(saptruck, taptruck, srepeat(i), trepeat(i), voltraf)
Next i
frmaashto.txtawt.Text = (esaltotalsap + esaltotaltap) / 1000 * voltraf
frmaresult.cmdacompnext.Visible = True
frmaresult.cmdacompnext.Default = True
frmaresult.cmdacompare.Visible = False
87
frmresult.Hide
frmaashto.Show
If frmunitsystem.optpuk.Value = True Then
frmunitsystem.cmdauk = True
frmunitsystem.cmdauk.Default = True
frmunitsystem.cmdaus.Enabled = False
frmunitsystem.cmdus.Enabled = False
frmunitsystem.cmduk.Enabled = False
ElseIf frmunitsystem.optpus.Value = True Then
frmunitsystem.cmdaus = True
frmunitsystem.cmdaus.Default = True
frmunitsystem.cmdauk.Enabled = False
frmunitsystem.cmdus.Enabled = False
frmunitsystem.cmduk.Enabled = False
End If
frmaashto.txtamodulusk.Text = frmpca.txtmodulusk.Text
frmaashto.txtamodulusrupture.Text = frmpca.txtmodulusrupture.Text
frmaashto.txtamodulusk.Enabled = False
frmaashto.txtamodulusrupture.Enabled = False
frmcomparison.lblmoduluskcomp.Caption = frmpca.txtmodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmpca.txtmodulusrupture.Text
frmresult.Hide
frmaashto.Hide
frmtraffic.Label3.Visible = False
frmtraffic.Label2.Visible = False
frmtraffic.txtadt.Visible = False
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub cmdpcompnext_Click()
frmresult.Hide
frmcomparison.Show
frmcomparison.lblpcomp.Caption = frmresult.txtthicknessresult.Text
frmcomparison.lblelasticcompa.Caption = Format(frmaashto.txtaec.Text, "#.##E+0")
frmcomparison.lblcomploadtransfer.Caption = frmaashto.txtaj.Text
frmcomparison.lblcomppsi.Caption = frmaashto.txtapsi.Text
frmcomparison.lblcompcd.Caption = frmaashto.txtacd.Text
frmcomparison.lblcompso.Caption = frmaashto.txtaso.Text
frmcomparison.lblcompzr.Caption = frmaashto.txtazr.Text
frmcomparison.lblcomplsf.Caption = frmresult.lbllsf.Caption
frmcomparison.lblcompreliability.Caption = frmaashto.comboazr.Text
If frmresult.Optnoshoulder = True Then
frmcomparison.lblcompshoulder.Caption = "NO SHOULDER"
ElseIf frmresult.Optwithhdowel = True Then
frmcomparison.lblcompshoulder.Caption = "WITH SHOULDER"
End If
If frmresult.Optnodowel = True Then
frmcomparison.lblcompdowel.Caption = "AGGREGATE INTERLOCK JOINT"
ElseIf frmresult.Optwithhdowel = True Then
frmcomparison.lblcompdowel.Caption = "WITH DOWEL JOINT"
88
End If
If frmunitsystem.optpuk.Value = True Then
frmcomparison.lblacomp.Caption = frmaresult.lblathicknessuk.Caption
frmcomparison.lblelasticcompp.Caption = Format(28000, "#.##E+0")
frmcomparison.lblpcompinch.Visible = False
frmcomparison.lblpcompmm.Visible = True
frmcomparison.lblacompinch.Visible = False
frmcomparison.lblacompmm.Visible = True
frmcomparison.imgpci.Visible = False
frmcomparison.imgmn.Visible = True
frmcomparison.imgmpa.Visible = True
frmcomparison.imgpsi.Visible = False
frmcomparison.imgmpa1.Visible = True
frmcomparison.imgpsi1.Visible = False
ElseIf frmunitsystem.optpus.Value = True Then
frmcomparison.lblacomp.Caption = frmaresult.lblathickness(0).Caption
frmcomparison.lblelasticcompp.Caption = Format(4000000, "#.##E+0")
frmcomparison.lblpcompinch.Visible = True
frmcomparison.lblpcompmm.Visible = False
frmcomparison.lblacompinch.Visible = True
frmcomparison.lblacompmm.Visible = False
frmcomparison.imgpci.Visible = True
frmcomparison.imgmn.Visible = False
frmcomparison.imgmpa.Visible = False
frmcomparison.imgpsi.Visible = True
frmcomparison.imgmpa1.Visible = False
frmcomparison.imgpsi1.Visible = True
End If
frmcomparison.lbltrafaashto.Caption = Format(frmaashto.txtawt.Text, "#.0E+0")
dperiod = Val(frmtraffic.txtdperiod.Text)
growthrate = Val(frmtraffic.txtgrowthrate.Text)
pf = (1 + (growthrate / 100)) ^ (0.5 * dperiod)
lanedist = Val(frmtraffic.txtlanedist.Text)
frmcomparison.lbltrafpca.Caption = Format(frmpca.txtadtt.Text * pf * lanedist * dperiod * 365,
"#.0E+0")
End Sub
Private Sub cmdnextvalue_Click()
txtthicknessresult.Text = txtthicknessresult.Text + 0.01
End Sub
Private Sub cmdpreviousvalue_Click()
txtthicknessresult.Text = txtthicknessresult.Text - 0.01
End Sub
Private Sub cmdrecalculate_Click()
frmresult.Hide
frmpca.Show
frmpca.txttrialthick.Text = frmresult.txtthicknessresult.Text
frmpca.cmdback.Visible = False
frmpca.Optwithshoulder.Value = False
frmpca.Optnoshoulder.Value = False
frmpca.Optwithhdowel.Value = False
frmpca.Optnodowel.Value = False
frmpca.txtmodulusk.Visible = False
frmpca.txtmodulusrupture.Visible = False
frmpca.txtadtt.Visible = False
frmpca.Opt1p3.Visible = False
frmpca.Opt1p2.Visible = False
89
frmpca.Opt1p1.Visible = False
frmpca.Opt1p0.Visible = False
frmpca.Frmeroadtype.Visible = False
frmpca.lbladtt.Visible = False
frmpca.lblmodulusk.Visible = False
frmpca.lblmodulusrupture.Visible = False
frmpca.lbltruck.Visible = False
frmpca.lbluk2.Visible = False
frmpca.lbluk3.Visible = False
frmpca.lblus2.Visible = False
frmpca.lblus3.Visible = False
frmpca.cmdclear.Visible = False
frmpca.Image1.Visible = False
frmpca.Image2.Visible = False
frmpca.Line1.Visible = False
frmpca.lblfrmpca.Caption = "AnP Pave - PCA Method (Recalculate Thickness)"
frmpca.txttrialthick.Left = 331.5
frmpca.txttrialthick.Top = 215
frmpca.lbltrialthick.Left = 313.5
frmpca.lbltrialthick.Top = 180
frmpca.lbluk1.Top = 196
frmpca.lblus1.Top = 196
frmpca.lbluk1.Caption = "(mm)"
frmpca.lblus1.Caption = "(in)"
frmpca.lbluk1.Left = 339.5
frmpca.lblus1.Left = 344.5
frmpca.Frmeshoulder.Left = 295.5
frmpca.Frmeshoulder.Top = 250
frmpca.frmedowel.Left = 295.5
frmpca.frmedowel.Top = 300
frmpca.Optwithshoulder.Left = 311.5
frmpca.Optnoshoulder.Left = 359.5
frmpca.Optwithshoulder.Top = 268
frmpca.Optnoshoulder.Top = 268
frmpca.cmdok3.Top = 355
frmpca.cmdok2.Top = 355
frmpca.cmdok.Top = 355
frmpca.cmdok3.Left = 295.5
frmpca.cmdok2.Left = 295.5
frmpca.cmdok.Left = 295.5
End Sub
Private Sub Form_Load()
lblfrmresult.Caption = "AnP Pave - PCA Method (Result)"
If frmunitsystem.optpuk.Value = True Then
lblkn.Visible = True
lblkip.Visible = False
lblus1.Visible = False
lbluk1.Visible = True
ElseIf frmunitsystem.optpus.Value = True Then
lblkn.Visible = False
lblkip.Visible = True
lblus1.Visible = True
lbluk1.Visible = False
End If
lbllsf.Caption = lsf
End Sub
90
APPENDIX H
Coding written in AASHTO Method – Input Data Form (VB Coding)
Private atraffic As Single
Private aj As Single
Private acd As Single
Private apsi As Single
Private aso As Single
Private azr As Single
Private athickness As Single
Private atrial As Single
Private logatraffic As Single
Private l As Integer
Private Sub cmdaok_Click()
frmaashto.Hide
frmaresult.Show
If frmunitsystem.optauk.Value = True Then
amodulusk = Val(frmaashto.txtamodulusk.Text / 0.2713)
aec = Val(frmaashto.txtaec.Text / 0.0069)
amodulusrupture = Val(frmaashto.txtamodulusrupture.Text / 0.0069)
ElseIf frmunitsystem.optaus.Value = True Then
amodulusk = (frmaashto.txtamodulusk.Text)
aec = (frmaashto.txtaec.Text)
amodulusrupture = (frmaashto.txtamodulusrupture.Text)
End If
atraffic = Val(txtawt.Text)
aj = Val(txtaj.Text)
acd = Val(txtacd.Text)
apsi = Val(txtapsi.Text)
aso = Val(txtaso.Text)
azr = Val(txtazr.Text)
logatraffic = Format(Log(atraffic) / Log(10), "###0.00")
athickness = 5#
Do Until atrial = logatraffic
atrial = Format(azr * aso + 7.35 * (Log(athickness + 1) / Log(10)) - 0.06 + (((Log(apsi / 3)) / Log(10))
/ (1 + (1.624 * 10 ^ 7) / (athickness + 1) ^ 8.46)) _
+ (4.22 - 0.32 * (4.5 - apsi)) * (Log((amodulusrupture * acd * (athickness ^ 0.75 - 1.132)) / (215.63 *
aj * (athickness ^ 0.75 - 18.42 / ((aec / amodulusk) ^ 0.25)))) / Log(10)), "###0.00")
athickness = athickness + 0.01
Loop
For l = 0 To 1
frmaresult.lbllogatraffic(l).Caption = logatraffic
frmaresult.lblatrial.Caption = atrial
frmaresult.lblathickness(l).Caption = Format(athickness, "###0.00")
Next l
If frmunitsystem.optpuk.Value = True Then
frmcomparison.lblpcomp.Caption = frmresult.txtthicknessresult.Text
frmcomparison.lblpcompinch.Visible = False
frmcomparison.lblpcompmm.Visible = True
frmcomparison.imgpci.Visible = False
frmcomparison.imgmn.Visible = True
frmcomparison.imgmpa.Visible = True
frmcomparison.imgpsi.Visible = False
ElseIf frmunitsystem.optpus.Value = True Then
frmcomparison.lblpcomp.Caption = frmresult.txtthicknessresult.Text
frmcomparison.lblpcompinch.Visible = True
91
frmcomparison.lblpcompmm.Visible = False
frmcomparison.imgpci.Visible = True
frmcomparison.imgmn.Visible = False
frmcomparison.imgmpa.Visible = False
frmcomparison.imgpsi.Visible = True
End If
If frmunitsystem.optaus.Value = True Then
frmaresult.lblathicknessuk.Visible = False
frmaresult.lblamm.Visible = False
ElseIf frmunitsystem.optauk.Value = True Then
frmaresult.lblamm.Visible = True
frmaresult.lblathicknessuk.Visible = True
frmaresult.lblathicknessuk.Caption = Format(athickness * 25.4, "###0.00")
End If
End Sub
Private Sub cmdback_Click()
Unload Me
Unload frmtraffic
Unload frmunitsystem
frmunitsystem.Show
End Sub
Private Sub cmdclear_Click()
txtacd.Text = ""
txtaec.Text = ""
txtaj.Text = ""
txtamodulusk.Text = ""
txtamodulusrupture.Text = ""
txtapsi.Text = ""
txtaso.Text = ""
txtawt.Text = ""
txtazr.Text = ""
comboazr.Text = ""
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub comboazr_Click()
If comboazr.Text = 50 Then
txtazr.Text = 0#
ElseIf comboazr.Text = 60 Then txtazr.Text = -0.253
ElseIf comboazr.Text = 70 Then txtazr.Text = -0.524
ElseIf comboazr.Text = 75 Then txtazr.Text = -0.674
ElseIf comboazr.Text = 80 Then txtazr.Text = -0.841
ElseIf comboazr.Text = 85 Then txtazr.Text = -1.037
ElseIf comboazr.Text = 90 Then txtazr.Text = -1.282
ElseIf comboazr.Text = 91 Then txtazr.Text = -1.34
ElseIf comboazr.Text = 92 Then txtazr.Text = -1.405
ElseIf comboazr.Text = 93 Then txtazr.Text = -1.476
ElseIf comboazr.Text = 94 Then txtazr.Text = -1.555
ElseIf comboazr.Text = 95 Then txtazr.Text = -1.645
ElseIf comboazr.Text = 96 Then txtazr.Text = -1.751
ElseIf comboazr.Text = 97 Then txtazr.Text = -1.881
92
ElseIf comboazr.Text = 98 Then txtazr.Text = -2.054
ElseIf comboazr.Text = 99 Then txtazr.Text = -2.327
ElseIf comboazr.Text = 99.9 Then txtazr.Text = -3.09
ElseIf comboazr.Text = 99.99 Then txtazr.Text = -3.75
End If
End Sub
Private Sub Form_Load()
lblfrmaashto.Caption = "AnP Pave - AASHTO Method (Input Data)"
End Sub
93
APPENDIX I
Coding written in AASHTO Method – Result Form (VB Coding)
Private Sub cmdacompare_Click()
frmaxle.cmdcate1.Visible = False
frmaxle.cmdcate2.Visible = False
frmaxle.cmdcate3.Visible = False
frmaxle.cmdcate4.Visible = False
frmaxle.cmdcate11.Visible = True
frmaxle.cmdcate21.Visible = True
frmaxle.cmdcate31.Visible = True
frmaxle.cmdcate41.Visible = True
frmaresult.Hide
frmaxle.Show
frmresult.cmdpcompnext.Visible = True
frmresult.cmdpcompnext.Default = True
frmresult.cmdcompare.Visible = False
frmresult.cmdrecalculate.Default = True
If frmunitsystem.optauk.Value = True Then
frmaxle.lblkn.Visible = True
frmaxle.lblkip.Visible = False
frmaxle.lblkn1.Visible = True
frmaxle.lblkip1.Visible = False
frmunitsystem.cmduk = True
frmresult.lbluk1.Visible = True
frmresult.lblus1.Visible = False
frmunitsystem.cmduk.Default = True
frmunitsystem.cmdus.Enabled = False
frmunitsystem.cmdaus.Enabled = False
frmunitsystem.cmdauk.Enabled = False
frmpca.txttrialthick.Text = frmaresult.lblathicknessuk.Caption
ElseIf frmunitsystem.optaus.Value = True Then
frmaxle.lblkn.Visible = False
frmaxle.lblkip.Visible = True
frmaxle.lblkn1.Visible = False
frmaxle.lblkip1.Visible = True
frmunitsystem.cmdus = True
frmresult.lbluk1.Visible = False
frmresult.lblus1.Visible = True
frmunitsystem.cmdus.Default = True
frmunitsystem.cmduk.Enabled = False
frmunitsystem.cmdaus.Enabled = False
frmunitsystem.cmdauk.Enabled = False
frmpca.txttrialthick.Text = frmaresult.lblathickness(0).Caption
End If
frmpca.txtmodulusk.Text = frmaashto.txtamodulusk.Text
frmpca.txtmodulusrupture.Text = frmaashto.txtamodulusrupture.Text
frmpca.txtmodulusk.Enabled = False
frmpca.txtmodulusrupture.Enabled = False
frmresult.cmdpcompnext.Visible = True
frmresult.cmdcompare.Visible = False
frmresult.cmdcompare2.Visible = False
frmcomparison.lblmoduluskcomp.Caption = frmaashto.txtamodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmaashto.txtamodulusrupture.Text
frmtraffic.Hide
End Sub
94
Private Sub cmdacompnext_Click()
frmaresult.Hide
frmcomparison.Show
frmcomparison.lblmoduluskcomp.Caption = frmaashto.txtamodulusk.Text
frmcomparison.lblmodulusrupturecomp.Caption = frmaashto.txtamodulusrupture.Text
frmcomparison.lblelasticcompa.Caption = Format(frmaashto.txtaec.Text, "#.##E+0")
frmcomparison.lblcomploadtransfer.Caption = frmaashto.txtaj.Text
frmcomparison.lblcomppsi.Caption = frmaashto.txtapsi.Text
frmcomparison.lblcompcd.Caption = frmaashto.txtacd.Text
frmcomparison.lblcompso.Caption = frmaashto.txtaso.Text
frmcomparison.lblcompzr.Caption = frmaashto.txtazr.Text
frmcomparison.lblcomplsf.Caption = frmresult.lbllsf.Caption
frmcomparison.lblcompreliability.Caption = frmaashto.comboazr.Text
If frmresult.Optnoshoulder = True Then
frmcomparison.lblcompshoulder.Caption = "NO SHOULDER"
ElseIf frmresult.Optwithhdowel = True Then
frmcomparison.lblcompshoulder.Caption = "WITH SHOULDER"
End If
If frmresult.Optnodowel = True Then
frmcomparison.lblcompdowel.Caption = "AGGREGATE INTERLOCK JOINT"
ElseIf frmresult.Optwithhdowel = True Then
frmcomparison.lblcompdowel.Caption = "WITH DOWEL JOINT"
End If
If frmunitsystem.optauk.Value = True Then
frmcomparison.lblacomp.Caption = frmaresult.lblathicknessuk.Caption
frmcomparison.lblelasticcompp.Caption = Format(28000, "#.##E+0")
frmcomparison.lblacompinch.Visible = False
frmcomparison.lblacompmm.Visible = True
frmcomparison.lblpcompinch.Visible = False
frmcomparison.lblpcompmm.Visible = True
frmcomparison.imgpci.Visible = False
frmcomparison.imgmn.Visible = True
frmcomparison.imgmpa.Visible = True
frmcomparison.imgpsi.Visible = False
frmcomparison.imgmpa1.Visible = True
frmcomparison.imgpsi1.Visible = False
ElseIf frmunitsystem.optaus.Value = True Then
frmcomparison.lblacomp.Caption = frmaresult.lblathickness(0).Caption
frmcomparison.lblelasticcompp.Caption = Format(4000000, "#.##E+0")
frmcomparison.lblacompinch.Visible = True
frmcomparison.lblacompmm.Visible = False
frmcomparison.lblpcompinch.Visible = True
frmcomparison.lblpcompmm.Visible = False
frmcomparison.imgpci.Visible = True
frmcomparison.imgmn.Visible = False
frmcomparison.imgmpa.Visible = False
frmcomparison.imgpsi.Visible = True
frmcomparison.imgmpa1.Visible = False
frmcomparison.imgpsi1.Visible = True
End If
frmcomparison.lblpcomp.Caption = frmresult.txtthicknessresult.Text
frmcomparison.lbltrafaashto.Caption = Format(frmaashto.txtawt.Text, "#.0E+0")
dperiod = Val(frmtraffic.txtdperiod.Text)
growthrate = Val(frmtraffic.txtgrowthrate.Text)
pf = (1 + (growthrate / 100)) ^ (0.5 * dperiod)
lanedist = Val(frmtraffic.txtlanedist.Text)
frmcomparison.lbltrafpca.Caption = Format(frmpca.txtadtt.Text * pf * lanedist * dperiod * 365,
"#.0E+0")
95
End Sub
Private Sub cmdexit_Click()
End
End Sub
Private Sub Form_Load()
lblfrmaresult.Caption = "AnP Pave - AASHTO Method (Result)"
End Sub
96
APPENDIX J
Sample of AASHTO method using manual calculation (nomograph)
(See next page)
TL
1200
.~
-=
1100
'J'",-
!OOO
;;2
:=
QOO
~
::=:
SOO
.'.><:..,
80
.t::
~
~
QO
Effect;-'c \h'dll!us of Subgrade
RCilclion.
100
k (pci)
Design Slab Thickness, D (inches)
I
I
'I
!'
1000500
I
.1 .05
Application of reliability
in ·thlsc,hart requires
the use of meari values
for alllhe input variables.
99.9
I
~
I
70
I
60 50
!
!
I
97
APPENDIX K
Sample of PCA method using manual calculation (worksheet, nomograph)
(See next page)
~nov
DoW~~jc)l~:,
COncrete
shoulder. yss_
Design. periOd,w
no--:-
y.eant
'."
Axel,
MuJtiPIIed
.
~
lotld,'
..
"
'
l'
,
..
.. 2'
=
,3,
'Eroston analySis
FatigUe analYsis
o,
:
'DarnaQe,
AJloWable
Allowable
Fatigue
repetltlons
percent
repetitions
percoot
5
e
7
,
4
"
8~Equivalent
21S
stTeS$_---
factor_ll._&_· __
10. Erosion
9. Stress ratio factor 0 ,,~3'
....
'Jif
.'1'(L~
3:2-
3f)·/f
30
a,g
36
'J3.'6
3/,;2
.'
(}II/
,
180D
bot]
..vOlX'
7·1()
1~/OoO
;;9 oro
'(}./WYl-
'
:JG
:;).,;/
:?..e.e. .
~Q
d-G'~
/69{)]
[ll.f',
'j:JG9
I
.-<j(; 9/
i:lo
/B
;}J,£
-<;183
7£ .JIJ£..
L6
If}!
~::;/IS
.;;<,
1"1,:;
(IA}.
OCl.o
g So,- CCrY
1'.-. e>oo
C'.lOO
1c2
Gj.02
CfS
. l[).tY7'
God·If.
..Iff).
5"-l. .fJ
71"
S2·l!f:
GD
sG
£:2
.;;
1"0
/fB
'36
~--':;..2..
32.
Bf5
QB>
~3.b
:1/1
.
."1.
i . IOO/DDO.
5·9
I~ SOOJJvJO
!J,/
~..l&O()
60S
.rod
0.03
.'
9",soo" 000
I.)
S.,'?f)qroo
r).o6'
IO/OOD,.OOO
ol
o£
f);O
.oo~.ooo
l' C),.
O(1? ~(;)00
0
.
2
0,,:2-
(),9J
1.'/
20/9
13(',00.)
$./.fO 000
.g£jll
./ooOJ.ooo
-,
3m,DOG
·,?If:.~
'
() -S'f'
O,QS
(.gO~ooo
0.:«;:
';19£9
2,:oa'1,- 0;:-0
0·.20
22903
3..'1f,t>CJ. ~)etl
0.60
0,0/72
I ;),3 $;;)5
0, (~Q.,OOO'
I . /Q
o,&t<.>
C>
n
(),3
SjfY,.ot>Q
.
,
$.3 07. 00:"
1B,.oOO/,
~)l!)
OtJi::'?
60..000 _'oQ0
BO,2I;tS
"'
CJ, /0
:JOT
/)a
..
o .()j,;
/f.o
tJ,r:.000
.log
' . /.@,,$.?
..
IJ'.~
...
11. Equlvalent stress
12. Stress ratio factor
0.'03
l-S'O/DO{)
Total' ,5'0,9
Total
-0.(1)
'.
ty'~(,1,
.'
1OO!QOO,OO~~
6· ~O;DO } .•(X)Q
--
4
3, S (lC ()rxJ
, ---
-
f/'.I;
2.8
""7
~
,....,
:/)
E
0..
""""
~
Q.c,'f .
:::
6
3.0
4
LE
d
-< ?5
-
Z
0
""
v
.J
...,
C(;
X
~
-<
-
3A
3.6
18
3.8
16
14
4.0
~
~
v,
IJJ
...J
100.000
8
6
30
~
C
2
u.J 20
1
C/)
u.J
~
3'
.-
,....
..J
F"'""
E'IJJ
(/)
t.I.J
-cZ
Z
4
2
. 10.000
8
cc
<
~
C
...J
-<
)
'/M
. t)/lQ)
80
40
7..
2.4
_- •...-----~.._-- ....------
"0
I~~
./?O
.'f
30.
~
0..
-d
::c::
<
rr.
1.000.000
ZI2
-8-- C ~ -@/cr.
•...
6 f-
60
tl·{,
4
25
•...
r.;;
'-'
-l
3.2
"
-l
~
X
~
-
1
w
100,000
8
c:c
-:(
~
C
r.r. 18
6
3.8
••
16
30
14
.•.
""'"
v
,
~
3.6
-
A-
-- 4.0
2
,00()
-
·w
. p::~",DCO
~
3.4
20
C
Z
u.J
0
..,.
')
f"'.
.,.;
~
[.IJ
E= if
3.0
J:j.'O
f"
o,.oc,,",
-l
-<
1
Download