BACHELOR BACHELORARBEIT Herr Matthias Maul Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) Roßwein, 2013 Fakultät Maschinenbau BACHELORARBEIT Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) Autor: Matthias Maul Studiengang: Stahl- und Metallbau Seminargruppe: SM09w1-B Erstprüfer: Prof. Dr.-Ing. Torsten Laufs Zweitprüfer: Prof. Dr. rer. pol. Silke Meyer Einreichung: Roßwein, 07.10.2013 Bibliografische Beschreibung: Maul, Matthias: Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) – 2013 – 97 Seiten Mittweida, Hochschule Mittweida, Fakultät Maschinenbau, Bachelorarbeit, 2013 Referat: Die Einführung europäischer Regeln macht es notwendig, neue Verfahren zur Nachweisführung von Stahlbauteilen anzuwenden. Ziel des Bachelorprojekts ist die Entwicklung eines Computerprogramms, das zur Nachweisführung von Stahlbauteilen dient. Grundlage für das Programm bilden die allgemeinen Bemessungsregeln für den Hochbau nach DIN EN 1993-1-1. Im theoretischen Teil des Bachelorprojekts werden die Abläufe zur Nachweisführung nach DIN EN 1993 aufgestellt. Daraus werden Struktogramme entwickelt und nach diesen das Computerprogramm erstellt. Die Ergebnisse, die ausgegeben werden, werden mit vorhandenen Berechnungen verglichen. I Inhaltsverzeichnis 1 2 Einleitung ..................................................................................................................... 1 1.1 Ziel der Arbeit ........................................................................................................ 1 1.2 Abgrenzung ........................................................................................................... 2 Bemessungsregeln nach EC3..................................................................................... 3 2.1 Überblick zum Eurocode ........................................................................................ 3 2.2 Klassifizierung der Querschnittsklassen ................................................................. 4 2.3 Bemessungsalgorithmen nach DIN EN 1993-1-1 ................................................... 9 2.3.1 Querschnittsnachweise (Einzelnachweise) ....................................................... 9 2.3.1.1 Zugbeanspruchungsnachweis ................................................................... 9 2.3.1.2 Druckbeanspruchungsnachweis ...............................................................10 2.3.1.3 Nachweis einachsiger Biegebeanspruchung ............................................11 2.3.1.4 Nachweis der Querkraft ohne Torsion ......................................................12 2.3.2 Querschnittsnachweise (kombinierte Nachweise) ...........................................13 2.3.2.1 Interaktionsnachweis aus Querkraft und Torsion ......................................13 2.3.2.2 Nachweis der Biegung und zugehöriger Quer- und Normalkraft ...............14 2.3.2.2.1 Algorithmen für Querschnittsklasse 1 und 2 .........................................14 2.3.2.2.2 Algorithmen für Querschnittsklasse 3...................................................20 2.3.2.2.3 Algorithmen für Querschnittsklasse 4...................................................21 2.3.2.3 2.3.3 3 Nachweis zweiachsiger Biegung ..............................................................22 Stabilitätsnachweise ........................................................................................26 2.3.3.1 Nachweis gegen Biegeknicken.................................................................26 2.3.3.2 Nachweis gegen Biegedrillknicken ...........................................................30 2.3.3.3 Nachweis für auf Druck und Biegung beanspruchte Bauteile ...................34 Einführung in die Programmierung ...........................................................................37 3.1 Allgemeines zum Projekt.......................................................................................37 3.2 Programmerstellung ..............................................................................................37 3.3 Das Struktogramm ................................................................................................38 II 3.4 3.4.1 Das Hauptprogramm .......................................................................................41 3.4.2 Variablen .........................................................................................................42 3.4.3 Operatoren ......................................................................................................44 3.4.4 Kontrollstrukturen ............................................................................................44 3.5 4 5 Erstellung des Quelltextes ....................................................................................41 3.4.4.1 Bedingungen: if-else ................................................................................44 3.4.4.2 Mehrfachbedingungen: switch ..................................................................45 3.4.4.3 Schleifen ..................................................................................................46 Das Kompilieren eines Programms .......................................................................47 Vorstellung der Programmierumgebung ..................................................................48 4.1 Syntax-Hervorhebung ...........................................................................................48 4.2 Erstellen eines neuen Projektes ............................................................................49 4.3 Hauptdatei und Formulare ....................................................................................51 4.3.1 Hauptdatei.......................................................................................................51 4.3.2 Formulare........................................................................................................52 4.4 Steuerelemente.....................................................................................................53 4.5 Ereignisse .............................................................................................................55 Darstellung des Computerprogramms......................................................................58 5.1 Überblick zum Programm ......................................................................................58 5.1.1 Einbinden einer Datenbank .............................................................................58 5.1.2 Ausgeben der angezeigten Werte ...................................................................59 5.1.3 Textfelder ........................................................................................................60 5.2 Hauptmenü ...........................................................................................................61 5.3 Einzelnachweise ...................................................................................................64 5.3.1 Nachweis der Zugbeanspruchung ...................................................................64 5.3.2 Nachweis der Druckbeanspruchung ................................................................65 5.3.3 Nachweis der einachsigen Biegebeanspruchung ............................................67 5.3.4 Nachweis der Querkraftbeanspruchung ohne Torsion .....................................68 5.4 Kombinierte Nachweise ........................................................................................69 5.4.1 Nachweis von Querkraft und Torsion ..............................................................69 5.4.2 Nachweis der Biegung um die y-Achse, zugehöriger Quer- und Normalkraft ..70 5.4.3 Nachweis der Biegung um die z-Achse, zugehöriger Quer- und Normalkraft ..74 5.4.4 Nachweis zweiachsiger Biegung, dazugehörige Querkräfte und Normalkraft ..77 III 5.5 5.5.1 Nachweis auf Druck beanspruchter Stäbe.......................................................79 5.5.2 Stabilitätsnachweis bei einachsiger Biegebeanspruchung ...............................80 5.5.3 Stabilitätsnachweis bei Druck- und Biegebeanspruchung ...............................82 5.6 6 7 Stabilitätsnachweise .............................................................................................79 Versionsgeschichte ...............................................................................................84 Vergleichende Berechnungen ...................................................................................86 6.1 Beispiel 1: Tragfähigkeit eines Querschnitts unter My und Vz ................................86 6.2 Beispiel 2: Nachweis eines HEB 300 mit My, Vz, N ................................................88 6.3 Beispiel 3: Pendelstütze ........................................................................................90 6.4 Beispiel 4: BDK Einfeldträger ................................................................................91 6.5 Beispiel 5: Fassadenstütze mit Biegebeanspruchung ...........................................93 6.6 Vergleich der Ergebnisse ......................................................................................96 Zusammenfassung .....................................................................................................97 Abbildungsverzeichnis ..........................................................................................................98 Tabellenverzeichnis ............................................................................................................100 Literaturverzeichnis ............................................................................................................101 Selbstständigkeitserklärung ................................................................................................102 1 Einleitung -1- 1 Einleitung 1.1 Ziel der Arbeit Die Einführung europäischer Regeln macht es notwendig, neue Verfahren zur Nachweisführung von Stahlbauteilen anzuwenden. Berechnungen von Hand sind aufwendig, benötigen viel Zeit und beinhalten eine größere Rechenfehler-wahrscheinlichkeit. Um die Nachweise schneller und sicherer führen zu können, werden Computerprogramme eingesetzt, bei denen über Eingabemenüs die entsprechenden Nachweise geführt werden. Es existieren bereits Programme, die mit dem Tabellenkalkulationsprogramm Microsoft Excel geschrieben wurden. Diese haben den Nachteil, dass keine klaren Strukturen erkennbar sind. Daher werden diese Programme schnell unübersichtlich. Außerdem sind sie an ein Betriebssystem von Microsoft gebunden sind. Darum wurde das Computerprogramm, dass im Laufe dieser Bachelorarbeit entwickelt wurde, in der Programmiersprache C++ geschrieben. Dadurch kann das Programm auch auf anderen Betriebssystemen ausgeführt werden, unabhängig davon, mit welchem Betriebssystem programmiert wird. Außerdem kann das Design der Anwendung vom Programmierer besser bestimmt werden. So kann das Programm benutzerfreundlicher gestaltet werden. Ziel des Bachelorprojekts ist die Entwicklung eines Computerprogramms, das zur Nachweisführung von Stahlbauteilen dient. Grundlage für das Programm bilden die allgemeinen Bemessungsregeln für den Hochbau nach DIN EN 1993-1-1 (Dezember 2010). Die Anwendung soll die Querschnitts- und Stabilitätsnachweise für einzelne Stahlbauteile anzeigen. Die Anwendung wird mittels “Microsoft Visual Studio 2010 Professional“ programmiert, das über das Programm “DreamSpark“ von Microsoft bereitgestellt wird. Im theoretischen Teil des Bachelorprojekts werden die Abläufe zur Nachweisführung nach DIN EN 1993 aufgestellt. Daraus werden Struktogramme entwickelt und nach diesen das Computerprogramm erstellt. Außerdem werden Einblicke in die Programmierung gegeben. Das Hauptmenü und die einzelnen Nachweise werden in separaten Fenstern angezeigt, die im Laufe der Bachelorarbeit vorgestellt werden. Die Ergebnisse, die ausgegeben werden, werden mit vorhandenen Berechnungen verglichen. 1 Einleitung 1.2 -2- Abgrenzung Das Computerprogramm wird mit Hilfe von Microsoft Visual Studio entwickelt und getestet. Das entwickelte Programm beinhaltet nur Nachweise im Grenzzustand der Tragfähigkeit nach den allgemeinen Bemessungsregeln nach DIN EN 1993-1-1. Besondere Regeln, z.B. für den Brandfall oder für die Bemessung von Kranbahnen, werden nicht berücksichtigt. Die entsprechenden Querschnitts- und Stabilitätsnachweise werden auf Grundlage von Schnittgrößen geführt. Diese müssen in den entsprechenden Eingabefeldern im Programm eingegeben werden. Besondere Regelungen für hochfeste Stähle werden nicht berücksichtigt. Aus diesem Grund bietet das Programm nur eine Auswahl von Stahlgüten (S235 bis S460). Die Stabilitätsnachweise werden mit dem Ersatzstabverfahren geführt. Besondere Regelungen für das Beulen von plattenförmigen Bauteilen nach DIN EN 1993-1-5 sowie Regelungen für mehrteilige Bauteile werden in diesem Bachelorprojekt nicht berücksichtigt. Auf Regelungen, die Anschlüsse sowie deren Verbindungsmittel betreffen, werden nicht eingegangen. Zur Nachweisführung von Stahlbauteilen ist es notwendig, den gegebenen Querschnitt in eine der 4 Querschnittsklassen einzuordnen. Im theoretischen Teil wird zwar die Vorgehensweise zur Querschnittsklassifizierung erklärt, jedoch wird diese im folgenden Projekt nicht weiter betrachtet. Es wird lediglich ein von Matthias Maul erstelltes Programm, die gegebene Querschnitte in ihre Querschnittsklasse einordnet, in dieses Projekt integriert, sodass dieser Aspekt der Nachweisführung abgedeckt werden kann. Das entwickelte Programm prüft nicht die Richtigkeit dieser Eingabe. Entsprechend der Querschnittsklasse wird vom Programm das jeweilige Verfahren zur Nachweisführung ausgewählt. Im Fall der Querschnittsklassen 1 und 2 wird das plastische Verfahren, bei Querschnittsklasse 3 das elastische Verfahren genutzt. Wenn vom Benutzer Querschnittsklasse 4 gewählt wurde wird das elastische Verfahren am effektiven Querschnitt angewendet. Die effektiven Querschnittswerte müssen von Hand berechnet und an den entsprechenden Stellen in das Programm eingegeben werden. Im Zuge der Bachelorarbeit werden keine praktischen Versuche durchgeführt. Um die Ergebnisse des Programms dennoch überprüfen zu können, werden sie mit theoretischen Beispielen, die [L3] entnommen wurden, verglichen. 2 Bemessungsregeln nach EC3 -3- 2 Bemessungsregeln nach EC3 In diesem Kapitel werden die Grundlagen aufgezeigt, die benötigt werden, um die Nachweisführung von Stahlbauteilen nach DIN EN 1993 durchzuführen. Dafür wird ein kurzer Einblick in die Klassifizierung von Querschnitten gegeben und Ablaufdiagramme für die einzelnen Nachweise aufgestellt. 2.1 Überblick zum Eurocode Auf der Grundlage der Römischen Verträge wurde 1975 von der Kommission der Europäischen Gemeinschaften ein Programm für das Bauwesen beschlossen. Dieses Programm beinhaltet die Ausarbeitung von einheitlichen technischen Regelwerken für die Tragwerksplanung von Bauwerken. Die Regelwerke sollten zunächst als Alternative zu den bestehenden Vorschriften gelten und sie schließlich ersetzen. “Das Eurocode-Programm umfasst die folgenden Normen, die in der Regel aus mehreren Teilen bestehen: EN 1990 Eurocode, Grundlagen der Tragwerksplanung. EN 1991 Eurocode 1, Einwirkung auf Tragwerke. EN 1992 Eurocode 2, Entwurf, Berechnung und Bemessung von Stahlbetonbauten. EN 1993 Eurocode 3, Entwurf, Berechnung und Bemessung von Stahlbauten. EN 1994 Eurocode Verbundbauten. 4, Entwurf, Berechnung und Bemessung von Stahl-Beton- EN 1995 Eurocode 5, Entwurf, Berechnung und Bemessung von Holzbauten. EN 1996 Eurocode 6, Entwurf, Berechnung und Bemessung von Mauerwerksbauten. EN 1997 Eurocode 7, Entwurf, Berechnung und Bemessung in der Geotechnik. EN 1998 Eurocode 8, Auslegung von Bauwerken gegen Erdbeben. EN 1999 Eurocode 9, Entwurf, Berechnung und Bemessung von Aluminiumkonstruktionen.“ [N1, S. 6] Die Fassung eines Eurocodes enthält u.a. einen nationalen Anhang. Dieser nationale Anhang enthält Informationen, die im Eurocode für nationale Entscheidungen offen gelassen wurden. Sie sind bei der Tragwerksplanung für das jeweilige Land unbedingt zu beachten. 2 Bemessungsregeln nach EC3 -4- Die Parameter des nationalen Anhangs umfassen: • • • • • • “Zahlenwerte für Teilsicherheitsbeiwerte und/oder Klassen, wo die Eurocodes Alternativen eröffnen, Zahlenwerte, wo die Eurocodes nur Symbole angeben, Landesspezifische, geographische und klimatische Daten, die nur für ein Mitgliedsland gelten, z. B. Schneekarten; Vorgehensweisen, wenn die Eurocodes mehrere zur Wahl anbieten; Vorschriften zur Verwendung der informativen Anhänge, Verweise zur Anwendung des Eurocodes, soweit diese ergänzen und nicht widersprechen.“ [N1, S. 7f] 2.2 Klassifizierung der Querschnittsklassen Bevor die Nachweise geführt werden können, ist es notwendig Profile über das c/t-Verhältnis druckbeanspruchter Querschnittsteile in eine der vier Querschnittsklassen (QK) einzuteilen. Querschnitte der Klasse 1: “können plastische Gelenke oder Fließzonen mit ausreichender plastischer Momententragfähigkeit und Rotationskapazität für die plastischen Berechnung ausbilden.“ Querschnitte der Klasse 2: “können die plastische Momententragfähigkeit entwickeln, haben aber aufgrund örtlichen Beulens nur eine begrenzte Rotationskapazität.“ Querschnitte der Klasse 3: “erreichen für eine elastische Spannungsverteilung die Streckgrenze in der ungünstigsten Querschnittsfaser, können aber wegen örtlichen Beulens die plastische Momententragfähigkeit nicht entwickeln.“ Querschnitte der Klasse 4: “sind solche, bei denen örtliches Beulen vor Erreichen der Streckgrenze in einem oder mehreren Teilen des Querschnitts auftritt.“ [N2, S. 44] 2 Bemessungsregeln nach EC3 -5- Die Einteilung des Profils in eine dieser Querschnittsklassen gibt Informationen, nach welchen Verfahren die Beanspruchbarkeit der Profile (plastisch oder elastisch) berechnet werden kann. Für die Nachweise von Profilen der Querschnittsklassen 1 und 2 können plastische Querschnittwerte genutzt werden. Für Profile der Querschnittsklasse 3 sind elastische Querschnittswerte zu benutzen. Bei Profilen der Querschnittsklasse 4 müssen die wirksamen Querschnittswerte nach EN 1993-1-5 berechnet werden. QK Rotationsvermögen 1 2 3 4 hoch gering keines keines Tabelle 1 Querschnittsklassen [L1 Tab. 8.8a, S. 8.8] Verfahren zur Bestimmung der Beanspruchungen plastisch elastisch elastisch elastisch Verfahren zur Bestimmung der Beanspruchbarkeit plastisch plastisch elastisch elastisch, am effektiven Querschnitt 2 Bemessungsregeln nach EC3 Tabelle 2 Klassifizierung druckbeanspruchter Querschnittsteile [N2, Tab 5.2, S. 46] -6- 2 Bemessungsregeln nach EC3 Tabelle 3 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) [N2, Tab 5.2, S. 47] -7- 2 Bemessungsregeln nach EC3 -8- Tabelle 4 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) [N2, Tab 5.2, S. 48] Für die einzelnen Querschnittsteile sind die Klassifizierungen durchzuführen. Die höchste Querschnittsklasse der Teile ist gleichzeitig die Querschnittsklasse des gesamten Querschnitts. 2 Bemessungsregeln nach EC3 2.3 -9- Bemessungsalgorithmen nach DIN EN 1993-1-1 Die Teilsicherheitsbeiwerte sind für die Nachweise nach DIN EN 1993-1-1 NA wie folgt festgelegt: γM0 = 1,0 γM1 = 1,1 γM2 = 1,25 Im Hauptmenü des erstellten Programms können über die Menüleiste die einzelnen Nachweise ausgewählt werden. 2.3.1 Querschnittsnachweise (Einzelnachweise) In dem erstellten Programm sind Querschnittsnachweise auswählbar. 2.3.1.1 über den Menüpunkt Einzelnachweise die Zugbeanspruchungsnachweis Für den Nachweis der Zugbeanspruchung muss die Querschnittsklasse nicht beachtet werden. Der Bemessungswert der einwirkenden Zugkraft NEd muss geringer sein, als der Bemessungswert der Zugbeanspruchbarkeit Nt,Rd. Für Nt,Rd ist der kleinere der folgenden Werte einzusetzen: Bemessungswert der plastischen Beanspruchbarkeit Npl,Rd oder Bemessungswert der Zugbeanspruchbarkeit Nu,Rd. 2 Bemessungsregeln nach EC3 -10- Zugbeanspruchungsnachweis Bemessungswert der Zugbeanspruchbarkeit: , = , , = = 0,9 ∙ ∙ ∙ Nachweis: , ≤1 Abbildung 1 Zugbeanspruchungsnachweis 2.3.1.2 Druckbeanspruchungsnachweis Der Bemessungswert der einwirkenden Druckkraft NEd muss geringer sein, als der Bemessungswert der Druckbeanspruchbarkeit Nc,Rd. Löcher für Verbindungsmittel müssen nicht berücksichtigt werden, wenn sie mit den Verbindungsmitteln gefüllt sind (Ausnahme: übergroße Löcher). In Abhängigkeit der Querschnittsklasse wird Nc,Rd wie folgt berechnet: Druckbeanspruchungsnachweis QK 1,2,3 !, =% "∙#$ &' Nachweis: !, ≤1 Abbildung 2 Druckbeanspruchungsnachweis QK 4 !, = "()) ∙#$ %&' 2 Bemessungsregeln nach EC3 2.3.1.3 -11- Nachweis einachsiger Biegebeanspruchung Für den Nachweis der Biegebeanspruchung ist es notwendig, den Bemessungswert der Biegebeanspruchbarkeit Mc,Rd zu berechnen und anschließend mit dem Bemessungswert der Biegemomente MEd zu vergleichen. Der Bemessungswert der Biegebeanspruchbarkeit ist von der Querschnittsklasse abhängig und berechnet sich nach den folgenden Gleichungen. Nachweis einachsiger Biegebeanspruchung QK 1 und 2 +!, =+ = , , QK 3 +!, =+ , = , QK 4 ,-. +!, = , ##,-. Nachweis: + +!, ≤1 Abbildung 3 Nachweis der Biegebeanspruchung Wie beim Druckbeanspruchungsnachweis müssen eventuelle Löcher im Druckbereich nicht beachtet werden, wenn sie mit Verbindungsmittel gefüllt sind. Um die Löcher im Zugbereich vernachlässigen zu können muss folgende Bedingung erfüllt sein: #, 0,9 ≥ # 2 Bemessungsregeln nach EC3 2.3.1.4 -12- Nachweis der Querkraft ohne Torsion Um den Nachweis durchführen zu können, ist es notwendig, die wirksame Schubfläche AV zu berechnen. Damit kann der Bemessungswert der Querkraftbeanspruchbarkeit Vc,Rd bestimmt werden. Die folgende Tabelle zeigt, mit welchen Formeln AV berechnet werden kann. Querschnittsform I und H Herstellung Lastrichtung gewalzt || zum Steg U T gewalzt gewalzt I, H und Kasten geschweißt I, H, U und Kasten geschweißt Rechteckhohlquerschnit gewalzt te mit gleichförmiger Blechdicke Rundhohlquerschnitte alle und Rohre mit gleichförmiger Blechdicke A Gesamtquerschnittsfläche b Gesamtbreite h Gesamthöhe ℎ6 = 5ℎ − 2 ∙ 3# 8 Stegblechhöhe r Ausrundungsradius tf Flanschdicke || zum Steg || zum Steg || zum Steg || zum Flansch || zur Trägerhöhe || zur Trägerbreite alle − 223# + 3# 536 + 278 ≥ ℎ6 36 − 223# + 3# 536 + 78 3# − 2 ∙ 3# + 536 + 278 2 ∑5ℎ6 ∙ 36 8 − ∑5ℎ6 ∙ 36 8 ∙ℎ 2+ℎ ∙2 2+ℎ 2∙ ; AV tw Stegdicke (bei veränderlicher Stegdicke sollte der kleinste Wert eingesetzt werden) Für hier nicht ausgeführte Querschnittsformen sollte Av sinngemäß bestimmt werden. Lastrichtung z: Avz = Av Lastrichtung y: Avy = Av Tabelle 5 Wirksame Schubflächen Av [L1, Tab 8.16] Wenn ein Nachweis auf der Basis der plastischen Querkraft nicht möglich ist, steht eine Alternative (elastische Bemessung) zur Verfügung. 2 Bemessungsregeln nach EC3 -13- Querkraftnachweis plastische Bemessung elastische Bemessung Berechnung Av nach Tabelle 5 <!, = < , = = > √3 A B = Nachweis < <!, <C, ∙ D 2FG. B E ∙3 = < ∙ DC EC ∙ 3 , Nachweis B ≤1 /J√3 ∙ K ≤1 Der Nachweis mit der elastischen Bemessungsvariante wird vom erstellten Programm nicht durchgeführt. 2.3.2 Querschnittsnachweise (kombinierte Nachweise) Über den Menüpunkt kombinierte Nachweise sind die Interaktionsnachweise anwählbar. Bei den kombinierten Nachweisen ist zu beachten, dass die Einzelnachweise erfüllt sein müssen. Diese Voraussetzung wird vom Programm nicht überprüft. 2.3.2.1 Interaktionsnachweis aus Querkraft und Torsion Bei gleichzeitiger Wirkung von Querkraft und Torsion ist der Bemessungswert der Querkraftbeanspruchbarkeit Vpl,Rd auf Vpl,T,Rd abzumindern. Vpl,T,Rd berechnet sich in Abhängigkeit vom Querschnitt wie folgt: Querschnitt Vpl,T,Rd (Vpl,Rd nach Abschnitt 2.3.1.4) I- und H-Querschnitte B, < ,L, = 1 − < , M 1,25 > A / √3 U-Querschnitte Q B, B6, P < ,L, = P 1 − − M 1,25 > A / > A/ P √3 √3 O Hohlprofile Q T B, P S< , < ,L, = 1 − P S 1,25 > A / O R √3 Tabelle 6 Berechnung Querkraftbeanspruchbarkeit mit Torsion T S S< S R , 2 Bemessungsregeln nach EC3 -14- Der Nachweis für die Interaktion aus Querkraft und Torsion lautet < < ,L, ≤1 2.3.2.2 Nachweis der Biegung und zugehöriger Quer- und Normalkraft Bevor der Nachweis geführt werden kann, muss überprüft werden, ob die Einzelnachweise der Normalkraft-, Querkraft- und Momentenbeanspruchung (NEd ≤ NRd, VEd ≤ VRd, MEd ≤ MRd) erfüllt sind. Anschließend muss der Einfluss der Querkraft und Normalkraft auf die Biegebeanspruchung überprüft werden. Überschreitet die einwirkende Querkraft 50% der Querkraftbeanspruchbarkeit, muss die Momentenbeanspruchbarkeit reduziert werden. Auch bei NEd ≥ 0,5NRd muss die Momentenbeanspruchbarkeit reduziert werden. Auf den nachfolgenden Seiten werden die Algorithmen für den Nachweis der Biegung und zugehöriger Quer- und Normalkraft in Abhängigkeit vom gewählten Profil sowie der Querschnittsklasse aufgeführt. 2.3.2.2.1 Algorithmen für Querschnittsklasse 1 und 2 Die nachfolgenden Algorithmen zeigen die Vorgehensweise zur Nachweisführung in Abhängigkeit des gewählten Profils, sowie der Achse, um der die Biegung erfolgt. 2 Bemessungsregeln nach EC3 -15- Nachweis der Biegung um y-Achse für I-, H- und U-Querschnitte , < ,C, ∙ = = )$ A √V "U ∙> %&' Berechnung Av nach Tabelle 5 < ≤ 0,5< + ,C, , , Einfluss der Querkraft muss nicht berücksichtigt werden X=0 ≤ 0,25 , und 0,5ℎ6 36 ≤ ? Einfluss der Normalkraft muss nicht berücksichtigt werden Einfluss der Normalkraft muss berücksichtigt werden +`, , = Nachweis: + a + , , + bc bc ,de , , ≤ +`, , , ∙ < = , − 223# ≤ 0,5 > 0,5< ,C, Abminderung der Streckgrenze 2< 51 − X8 3 X=Y − 1Z < ,C, \],C = ^,_ " = , 51 − \],C X8 " ], Bedingungen nicht erfüllt \= , ? Bedingungen erfüllt =0 \=0 = ≤ ≤ 0,25 , ? und 0,5ℎ6 36 51 − X8 Einfluss der Normalkraft muss nicht berücksichtigt werden = =0 \=0 +`], , = Nachweis: Einfluss der Normalkraft muss berücksichtigt werden = = \ = 51 − X8 +], , a +], + ? bc bc ,de , ≤ +`], Abbildung 5 Nachweis der Biegung um y-Achse für I- und U-Querschnitte (QK 1, 2) , ], − 223# \ ≤ 0,5 2 Bemessungsregeln nach EC3 -16- Nachweis der Biegung um die z-Achse für I-, H- und U-Querschnitte , = ∙ )$ A √V < , , = "U ∙> + ,C, = fgh,_ ∙#$ %&' Berechnung Av nach Tabelle 5 < ≤ 0,5< , , ij j #$ %&' ? ], Bedingung erfüllt Bedingung nicht erfüllt Einfluss der Normalkraft muss nicht berücksichtigt werden Einfluss der Normalkraft muss berücksichtigt werden =0 \=0 +`,C, =k \= + + ,C, ,C, +C, = , − 223# l1 − m bce n o ü7 ce ü7 Nachweis: ≤ +`,C, < > 0,5< , , Abminderung der Streckgrenze 2< X=Y − 1Z < ,C, +],C, = + ,C, 51 − X8 Einfluss der Querkraft muss nicht berücksichtigt werden X=0 ≤ %&' ≤ 0,5 >\ ≤\ \], = = ≤ , ? Bedingung nicht erfüllt Einfluss der Normalkraft muss berücksichtigt werden = =0 \=0 + = k ],C, +],C, 51 − \], X8 ℎ6 36 Bedingung erfüllt Einfluss der Normalkraft muss nicht berücksichtigt werden +`],C, ], = \= = ], − 223# \ ≤ 0,5 l1 − m −\ n o ü7 1−\ ü7 = Nachweis: +C, ≤ +`],C, Abbildung 6 Nachweis der Biegung um z-Achse für I- und U-Querschnitte (QK 1, 2) = = >\ ≤\ 2 Bemessungsregeln nach EC3 -17- Nachweis der Biegung um die y-Achse für rechteckige Hohl- oder Kastenquerschnitte , < + = "∙#$ %&' )$ A √V ,C, = "U ∙> , , = fgh,$ ∙#$ %&' Berechnung Av nach Tabelle 5 < ≤ 0,5< < ,C, Querkraft muss nicht berücksichtigt werden =` %&' `pq gh,rq Für Hohlquerschnitte − 223 ≤ 0,5 \6 = , = + + a + , , , , Nachweis ≤ +`, , bc bc ,de ,C, Abminderung der Streckgrenze 2< X=Y − 1Z < ,C, \],C = ^,_ " = , 51 − \],C X8 " ], = = \ = 51 − X8 Für Kastenquerschnitte − 223# \6 = ≤ 0,5 +`, > 0,5< ], − 223# \ ≤ 0,5 +`], , = + + a , , + Nachweis ≤ +`], , bc bc ,de , , Abbildung 7 Nachweis der Biegung um y-Achse für rechteckige Hohlquerschnitte (QK 1, 2) 2 Bemessungsregeln nach EC3 -18- Nachweis der Biegung um die z-Achse für rechteckige Hohl- oder Kastenquerschnitte , < = , ∙ = = ∙> A √3 Berechnung Av nach Tabelle 5 < ≤ 0,5< , , Querkraft muss nicht berücksichtigt werden =` + ,C, = , ,C ∙ < > 0,5< , , Abminderung der Streckgrenze 2< X=Y − 1Z < , , +],C, = + ,C, 51 − X8 `pq gh,rq ], Für Hohlquerschnitte − 2ℎ3 \# = ≤ 0,5 = + ,C, a + ,C, Nachweis + ≤ +`,C, bc bc ,de " = = ], \# = 51 − X8 Für Kastenquerschnitte − 2ℎ36 \# = ≤ 0,5 +`,C, \], = ^,$ " = , 51 − \], X8 \# ≤ 0,5 # k +],C, +],C, +`],C, − 2ℎ3 = s1 − > bce A t ü7 U ce) ) Nachweis + ≤ +`], , ü7 = = >\ ≤\ Abbildung 8 Nachweis der Biegung um z-Achse für rechteckige Hohlquerschnitte (QK 1, 2) 2 Bemessungsregeln nach EC3 -19Nachweis der Biegung für Rundrohrquerschnitte , < = ,C = , , = ∙ )$ A √V "U ∙> %&' Berechnung Av nach Tabelle 5 < ≤ 0,5< ,C, Querkraft muss nicht berücksichtigt werden = +`, , =+ + , ∙ < > 0,5< ,C, Abminderung der Streckgrenze 2< X=Y − 1Z < , , ], , , 51 − b,u 8 \],C = = , ],C 51 − \],C X8 = ` pq ` ^,rq \ = 51 − X8 \ ≤ 0,5 Nachweis + ≤ +`, , +`], , = k + − 2v3 , , + Nachweis + ≤ +`], , Abbildung 9 Nachweis der Biegung für Rundrohre (QK 1, 2) 1− 1 − 0,5\ , , 2 Bemessungsregeln nach EC3 2.3.2.2.2 -20- Algorithmen für Querschnittsklasse 3 Querschnitte, die in Querschnittsklasse 3 eingeordnet sind, können wegen örtlichen Beulens keine plastische Momententragfähigkeit entwickeln. Daher werden diese Nachweise mit elastischen Werten geführt. Nachweis der Biegung für doppeltsymmetrische I- und H-Querschnitte Biegung um y-Achse Biegung um z-Achse < Nachweis für dir Randfaser + , wx, = + ≤ , , ≤ 0,5< X=0 Nachweis für Faser Mitte Flansch < ,C, = = ∙> A √3 ≤ 0,5< X=0 ,C, ,y wx, = < > 0,5< X=Y 2< < ,C, ,C, − 1Z Berechnung AV,y nach Tabelle 5 − Berechnung Av nach Tabelle 5 < ,C, < > 0,5< X=Y 2< < ,C, ,C, − 1Z = 51 − X8 Nachweis + , ℎ − 3# + ≤ E 2 ,y Abbildung 10 Nachweis der Biegung für I-Querschnitte (QK 3) ] Nachweis +C, + ≤ X , ,C 51 − X8 2 Bemessungsregeln nach EC3 -21Nachweis der Biegung für alle anderen Querschnitte Biegung um z-Achse Biegung um y-Achse < ,C = )$ A √V "U ∙> < %&' Berechnung Av nach Tabelle 5 < ≤ 0,5< ,C, X=0 + < Nachweis + , , , 51 − X8 )$ A √V "U ∙> %&' Berechnung Av nach Tabelle 5 > 0,5< X=Y , = 2< < ,C, ,C, − 1Z < ≤ 0,5< X=0 ≤1 < , , + > 0,5< X=Y Nachweis +C, , ,C 51 − X8 2< < , , , , − 1Z ≤1 Abbildung 11 Nachweis der Biegung für andere Querschnitte (QK 3) 2.3.2.2.3 Algorithmen für Querschnittsklasse 4 Bei Querschnitten der Querschnittsklasse 4 tritt örtliches Beulen vor Erreichen der Streckgrenze auf. Daher müssen die Querschnittswerte reduziert werden und der Nachweis am effektiven Querschnitt durchgeführt werden. Für den Nachweis auf Biegung sind folgende effektiven Werte erforderlich: Aeff – wirksame Querschnittsfläche Weff,min – wirksames Widerstandsmoment eN – Verschiebung der Hauptachse der wirksamen Fläche Aeff bezogen auf die Hauptachse der Bruttoquerschnittsfläche A 2 Bemessungsregeln nach EC3 -22Nachweis der Biegung für alle Querschnitte Biegung um y-Achse < < ≤ 0,5< X=0 = ,C = ∙> A √3 < ,C, = ## < > 0,5< 2< X=Y < ,C, Nachweis: w Biegung um z-Achse + + , + z` , ##, 51 − X8 ,C, − 1Z < ≤ 0,5< X=0 , ∙> > 0,5< 2< X=Y < , , Nachweis: ≤1 w = ## A √3 < , , Abbildung 12 Nachweis der Biegung für alle Querschnitte (QK 4) 2.3.2.3 = = + +C, + z`C , ##,C 51 − X8 , , − 1Z ≤1 Nachweis zweiachsiger Biegung Für den Nachweis von Profilen mit zweiachsiger Biegebelastung müssen zunächst die Bemessungswerte der Momententragfähigkeit MN,y,Rd und MN,z,Rd mit Hilfe der Algorithmen nach Abschnitt 2.2.2.2 ermittelt werden. Anschließend kann mit folgenden Formeln der Nachweis geführt werden. Für die Querschnittsklassen 1 und 2 gilt: Querschnitt Konstanten α I-Querschnitte 2 Runde Hohlquerschnitte 2 1,66 Rechteckige Hohlquerschnitte ≤6 1 − 1,13 alle anderen Querschnitte 1 Tabelle 7 Bestimmung der Konstanten Alpha und Beta mit = , β 5 ≥1 1,66 1 − 1,13 1 2 ≤6 2 Bemessungsregeln nach EC3 -23- Nachweis der zweiachsigen Biegung für alle Querschnitte Bestimmung MN,y,Rd und MN,z,Rd bzw. MNV,y,Rd und MNV,z,Rd nach Abschnitt 2.2.2.2 Bestimmung α und β nach Tabelle 7 s + , +`, , Nachweis: | } +C, t +s t ≤1 +`,C, Abbildung 13 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 1, 2) 2 Bemessungsregeln nach EC3 -24- Für Querschnittsklasse 3 gilt Nachweis der zweiachsigen Biegung für alle Querschnitte < < , , ,C, = = = = > A √3 > A √3 Berechnung Av nach Tabelle 5 < < ≤ 0,5< X =0 ≤ 0,5< XC = 0 Bestimmung X ,C, > 0,5< < > 0,5< 2< X =Y < ,C, Bestimmung XC , , + < XC = Y , , + , + Nachweis: J1 − X K , +C, ,C 51 − XC 8 Abbildung 14 Nachweis zweischsiger Biegung für alle Querschnitte (QK 3) 2< < , , ≤1 ,C, − 1Z , , − 1Z 2 Bemessungsregeln nach EC3 -25- Für Querschnittsklasse 4 gilt: Nachweis der zweiachsigen Biegung für alle Querschnitte < < , , ,C, = = = = > A √3 > A √3 Berechnung Av nach Tabelle 5 < < ≤ 0,5< X =0 ≤ 0,5< XC = 0 ## Bestimmung X ,C, > 0,5< < > 0,5< 2< X =Y < ,C, Bestimmung XC , , + < XC = Y + , , ##, + 2< < , , Nachweis: z` +C, + z`C + ≤1 , ##,C 51 − XC 8 J1 − X K Abbildung 15 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 4) ,C, − 1Z , , − 1Z 2 Bemessungsregeln nach EC3 2.3.3 -26- Stabilitätsnachweise “Schlanke Tragwerke des Stahlbaus können durch Stabilitätsversagen ihre Standsicherheit verlieren, lange bevor die Fließspannung in den Bauteilen erreicht wird. Folgende Arten von Stabilitätsversagen werden unterschieden: - Knicken: seitliches Ausweichen druckbelasteter Stäbe oder Stabwerke - Drillknicken: Torsionsverformung druckbelasteter Stäbe - Biegedrillknicken: seitliches Ausweichen biegebelasteter Stäbe oder Stabwerke - Beulen: flächiges Ausweichen von dünnen Platten oder Schalen unter Druckbelastung“ [L1, S. 8.23] Der Nachweis gegen Stabilitätsversagen kann auf unterschiedlichen Wegen geführt werden, z.B. der Spannungsnachweis nach Theorie II. Ordnung. In den folgenden Abschnitten wird das Ersatzstabverfahren gezeigt, bei dem ein Einzelstab bzw. ein gedanklich aus einem Stabwerk getrennter Stab mit den realen Randbedingungen nachgewiesen wird. 2.3.3.1 Nachweis gegen Biegeknicken Für planmäßig zentrisch belastete Druckstäbe sind folgende Gleichungen für den Nachweis erforderlich. 2 Bemessungsregeln nach EC3 -27- Nachweis gegen Biegeknicken planmäßig druckbeanspruchter Querschnitte ~!y = • ∙ € Knicklängenbeiwert β nach Abbildung 1 Knicken um y- Achse = !y, Knicken um z-Achse ; ∙•∙E ~!y !y,C ‰‰‰ ≤ 0,2 ˆ Bestimmung des Schlankheitsgrades †‡ !y ‰‰‰ > 0,2 ˆ Œ = χy = 1,0 1 • + ‹• Œ ≤ 1,0 ‰‰‰ ˆC ≤ 0,2 ’, = Œ − ‰‰‰ ˆ ŒC = ’, ≤1 Nachweis ’, 1 ‰‰‰C •C + ‹•C − ˆ ŒC ≤ 1,0 1 ‰‰‰C − 0,2K + ˆ ‰‰‰C ‘ •C = Ž1 + •C Jˆ 2 Knicklinie und Beiwert α nach Tabelle 8 und 9 mit b Abbildung 16 Nachweis Biegeknicken ‰‰‰ ˆC > 0,2 χz = 1,0 1 ‰‰‰ − 0,2K + ˆ• ‘ • = Ž1 + • Jˆ 2 Knicklinie und Beiwert α nach Tabelle 8 und 9 mit ‚ƒ ∙ ∙„_ …ƒ†‡ "# ‰‰‰ ˆC = ‹ ` $ Bestimmung des Schlankheitsgrades ‰‰‰ = Š ˆ = = ŒC b 2 Bemessungsregeln nach EC3 -28- Alternativ kann der Schlankheitsgrad mit Hilfe von Abbildung 18 ermittelt werden. Für Querschnittsklasse 4 gilt: A = Aeff. Abbildung 17 Knicklängenbeiwerte einfacher Stäbe [L1, S. 8.24] Knicklinie a0 a b c d Imperfektionswert α 0,13 0,21 0,34 0,49 0,76 Tabelle 8 Imperfektionsbeiwerte [L1, Tab. 8.24b, S. 8.24] Abbildung 18 Knicklinien [N2, Abb. 6.4, S. 65] 2 Bemessungsregeln nach EC3 Tabelle 9 Auswahl der Knicklinie [N2, Tab. 6.2, S. 64] -29- 2 Bemessungsregeln nach EC3 2.3.3.2 -30- Nachweis gegen Biegedrillknicken “Bei biegebeanspruchten Stäben kann Stabilitätsversagen auftreten, wobei der Druckgurt des Trägers ausknickt und zusätzlich zu einer Verdrillung des Trägers eine seitliche Verformung stattfindet. Dieses Stabilitätsversagen wird als Biegedrillknicken […] bezeichnet. In folgenden Fällen braucht kein BDK-Nachweis geführt werden: - wenn der Druckgurt seitlich gehalten ist (z.B. bei Verbundträgern). - wenn Biegung um die schwache Achse vorliegt. - bei Stäben aus Hohlprofilen. + - falls gilt: ˆ•…L < 0,4 oder •+ ≤ 0,16. !y Der EC 3 bietet drei Alternativen zum Nachweis der Sicherheit gegen Biegedrillknicken: - Nachweis nach dem Ersatzstabverfahren [DIN EN 1993-1-1/6.3.2.1]. - vereinfachter Nachweis des Druckgurtes auf Knicken [DIN EN 1993-1-1/6.3.2.4]. - Nachweis einer ausreichenden seitlichen Stützung [DIN EN 1993.1.1/BB.2.2].“ [L1, S. 8.33] In diesem Abschnitt wird nur das Verfahren nach dem Ersatzstabverfahren aufgezeigt. Folgende Gleichungen sind nach diesem Verfahren anzuwenden: Querschnittsklasse 1 2 3 4 Widerstandsmoment Wy Wpl,y Wpl,y Wel,y Weff,y Tabelle 10 Widerstandsmoment 2 Bemessungsregeln nach EC3 -31- Nachweis gegen Biegedrillknicken biegebeanspruchter Querschnitte ˆ•…L = Š , +!y Bestimmung Mcr nach Abschnitt 2.2.3.2.1 Œ…L = 1 •…L + ‹•…L − •ˆ•…L Œ…L ≤ 1,0 1 –zv—˜ℎ k Œ…L ≤ ˆ•…L •…L = 0,5™1 + •…L Jˆ•…L − ˆ•…L, K + •ˆ•…L š Bestimmung αLT nach Tabelle 11 und 12 ˆ•…L, = 0,4 • = 0,75 Abminderung von Œ…L um Momentenverteilung zwischen den seitlichen Lagern zu berücksichtigen Œ…L,-œ = Œ…L Œ…L,-œ ≤ 1,0 1 –zv—˜ℎ k Œ…L,-œ ≤ ˆ•…L = 1 − 0,551 − •! 8 Ž1 − 2,0Jˆ•…L − 0,8K ‘ –zv—˜ℎ Bestimmung von kc nach Tabelle 13 +’, Abbildung 19 Nachweis BDK = Œ…L,-œ , Nachweis: + ≤1 +’, b ≤1 2 Bemessungsregeln nach EC3 -32- Knicklinie a b c d Imperfektionsbeiwert αLT 0,21 0,34 0,49 0,76 Tabelle 11 empfohlene Imperfektionsbeiwerte [N2, Tab. 6.3, S. 68] Querschnitt gewalztes I-Profil Grenzen geschweißtes I-Profil andere Querschnitte Tabelle 12 empfohlene Biegedrillknicklinien [N2, Tab. 6.4 und 6.5, S. 68f] Tabelle 13 empfohlene Korrekturbeiwerte [N2, Tab. 6.6, S. 69] ℎ• ≤ 2 2 ℎ• > 2 2 ℎ• ≤ 2 2 ℎ• > 2 2 - Biegedrillknicklinien b c c d d 2 Bemessungsregeln nach EC3 -33- Für doppeltsymmetrische I-Profile lässt sich das ideale Biegedrillknickmoment Mcr wie folgt berechnen: +!y = Ÿ ∙ s‹J˜ + 0,25 ∙ F K + 0,5 ∙ F t !y,C mit Ÿ nach Tabelle 14 !y,C ˜ = = ; ∙ • ∙ EC € E6 + 0,039 ∙ € ∙ EL EC zp: Abstand vom Angriffspunkt der Belastung zum Schwerpunkt (bei rückdrehender Wirkung der Belastung positiv) Tabelle 14 Momentenbeiwert [L1, Tab. 8.34a, S. 8.34] 2 Bemessungsregeln nach EC3 2.3.3.3 -34- Nachweis für auf Druck und Biegung beanspruchte Bauteile Der Stabilitätsnachweis eines Stabes, der auf Druck und Biegung belastet ist, wird mit folgenden Gleichungen durchgeführt: Stabilitätsnachweis auf Druck und Biegung beanspruchter Bauteile Bestimmung der Interaktionsbeiwerte kyy, kyz, kzy und kzz nach Tabelle 15, 16 und 17 Bestimmung des Abminderungsbeiwertes für BDK Œ…L nach 2.2.3.2 Bestimmung der Abminderungsbeiwerte für Biegeknicken Œ und ŒC nach 2.2.3.1 Bestimmung der Querschnittswerte und Zusatzmomente nach Tabelle 18 Œ ŒC b b +• + •C + + Nachweis: , + Δ+ + , Œ…L , + Δ+ + , Œ…L Abbildung 20 Stabilität Druck und Biegung b b , +• C und , + •CC +C, + Δ+C, +C, ≤1 +C, + Δ+C, +C, ≤1 b b 2 Bemessungsregeln nach EC3 Tabelle 15 Interaktionsbeiwerte für verdrehsteife Bauteile [N2, Tab. B.1, S. 88] Tabelle 16 Interaktionsbeiwerte für verdrehweiche Stäbe [N2, Tab. B.2, S. 89] -35- 2 Bemessungsregeln nach EC3 -36- Tabelle 17 Äquivalente Momentenbeiwerte [N2, Tab. B.3, S. 89] QK 1 NRk My,Rk Mz,Rk ∆My,Ed ∆Mz,Ed 0 0 ∙ ∙, ∙, QK 2 , ,C Tabelle 18 Werte für NRk, Mi,Rk und ∆Mi,Ed [L1, Tab. 8.39a, S. 8.39] 0 0 ∙ ∙, ∙, QK 3 , ,C 0 0 ∙ ∙, ∙, ∙ ## ∙ , ##, ∙ , ##,C ∙ z`, ∙ ∙ z`,C ∙ QK 4 , ,C 3 Einführung in die Programmierung -37- 3 Einführung in die Programmierung 3.1 Allgemeines zum Projekt Das hier beschriebene Projekt wurde mit der Programmiersprache C++ entwickelt. C++ ist eine durch die Internationale Organisation für Normung (ISO) genormte Programmiersprache. Die Entwickler hatten das Ziel, eine möglichst effiziente Programmiersprache zu entwickeln. C++ ist eine Weiterentwicklung von C. Mit C++ wurde C um objektorientierte Konzepte erweitert. Da C++ nur aus sehr wenigen Schlüsselwörtern besteht, erhält sie ihre eigentliche Funktionalität durch die C++-Standardbibliothek (standardisierte Bibliothek, stellt unter anderen Zeichenketten und einfache Funktionen zur Verfügung) sowie zusätzlicher Bibliotheken und Frameworks. Programme können nicht von selbst ausgeführt werden, denn sie benötigen eine Laufzeitumgebung. Eine Laufzeitumgebung ist ein Programm, das zwischen dem erstellten Programm und dem Betriebssystem vermittelt. .NET ist eine entwickelte Software-Plattform, die u.a. aus einer Laufzeitumgebung (Common Language Runtime, kurz: CLR) sowie einer Sammlung von Klassenbibliotheken besteht. Anwendungen, die mit dem .NET sind somit unabhängig vom Betriebssystem und können auf jedem Betriebssystem angewendet werden, auf dem das .NET Framework installiert ist. Ein weiterer wichtiger Aspekt zur Entscheidung zum .NET ist, dass mit deren Bibliotheken Anwendungen mit grafischer Benutzeroberfläche erstellt werden können. GUI-Anwendungen (Graphical User Interface-Anwendungen) machen es den Benutzern einfacher, das Program anzuwenden, da es mit Schaltflächen in Fenstern bedient werden kann. 3.2 Programmerstellung Ein Programm ist eine Folge von Anweisungen, die nach den Regeln einer bestimmten Programmiersprache geschrieben sind. Für eine Aufgabe wird vom Programmierer ein Algorithmus erstellt. Dafür werden häufig Struktogramme verwendet. Anschließend wird der Quelltext in einer Programmiersprache geschrieben und von einem Compiler in den Maschinencode übersetzt. Dieser ist notwendig, da dem Prozessor eines Computers nur einen begrenzten Satz elementarer Befehle – den Maschinencode – zur Verfügung steht. Ein in Maschinencode geschriebenes (oder ein in Maschinencode übersetztes) Programm kann vom Prozessor direkt ausgeführt werden. 3 Einführung in die Programmierung 3.3 -38- Das Struktogramm 1972/73 entwickelten Nassi und Shneiderman einen Diagrammtyp, der zur Darstellung von Programmstrukturen dient. Das nach ihnen benannte Nassi-Shneiderman-Diagramm wird daher auch Struktogramm genannt und ist in der DIN 66261 (Letzte Ausgabe: November 1985) genormt. “Die Aussagen eines Programmablaufplans erfolgen mit Hilfe von Sinnbildern und erläuternden Texten in den Sinnbildern. Der Programmablauf wird durch die Auswahl der Sinnbilder sowie deren Schachtelung dargestellt. Die Texte beschreiben inhaltlich die Bedingungen und die Verarbeitungen. Die äußere Form eines Sinnbildes ist immer ein Rechteck; die Unterteilung erfolgt nur durch gerade Linien.“ [N4, S. 1] Mittlerweile existieren viele frei verfügbare Editoren, mit denen das Erstellen von Struktogrammen vereinfacht wird. In diesem Bachelorprojekt wird [P5] verwendet. Häufig verwendete Sinnbilder in einem Struktogramm sind Folge: Eine einfache Abfolge von mehrehren Anweisungen Abbildung 21 einfache Anweisungen Wiederholung: Wiederholung von Anweisungen mit vorausgehender Überprüfung der Bedingung Abbildung 22 kopfgesteuerte Schleife Wiederholung: Wiederholung von Anweisungen mit nachfolgender Überprüfung der Bedingung Abbildung 23 fußgesteuerte Schleife 3 Einführung in die Programmierung -39- Alternative: Ist die Bedingung erfüllt, wird Anweisung 1 und 2 ausgeführt. Wenn sie nicht erfüllt ist, wird Anweisung 3 und 4 ausgeführt. Ein Zweig kann auch ohne Anweisung geschrieben werden. Abbildung 24 einfache Alternative mehrfache Alternative: Eine Bedingung mit mehreren alternativen Fällen führt zu unterschiedlichen Anweisungen. Abbildung 25 mehrfache Alternative 3 Einführung in die Programmierung -40- Das folgende Bild zeigt ein Beispiel eines Struktogrammes, dass in Anlehnung an Bild A.3, DIN 66001, Ausgabe Dezember 1983 erstellt wurde. Abbildung 26 Beispiel Struktogramm [N4, Abb. A.1, S. 4] 3 Einführung in die Programmierung 3.4 3.4.1 -41- Erstellung des Quelltextes Das Hauptprogramm Das Grundgerüst des Hauptprogramms besitzt die nachfolgende Struktur. #include <iostream> using namespace std; int main() { //Anweisungen return 0; } Anweisungen, die in Programmen immer wieder vorkommen, müssten theoretisch immer wieder neu geschrieben werden, z.B. das Öffnen von Dateien oder Ausgeben von Daten auf dem Bildschirm. Um dies zu vermeiden sind wichtige Funktionen in Header-Dateien zusammengefasst. Diese können in beliebigen Anwendungen mit dem Befehl #include<…> geladen werden. Die nachfolgende Tabelle zeigt einige Headerdateien der C++Standardbibliothek: Headerdatei Funktionalität <iostream> Ein- und Ausgabe <String> Die Klasse String zur Programmierung mit Zeichenfolgen (»Strings« genannt) <cstdlib> Von C übernommene Headerdatei mit verschiedenen nützlichen Funktionen <cmath> Von C übernommene Headerdatei mit mathematischen Funktionen <ctime> Von C übernommene Headerdatei mit Funktionen zur Verarbeitung von Zeit- und Datumsangaben Tabelle 19 Wichtige Headerdateien der C++-Standardbibliothek [L2, Tab. 1.1, S. 37] Einige Headerdateien (wie z.B. <iostream>) sind in den Namensraum std eingebunden. Daher muss die Anweisung using namespace std; eingefügt werden. Namensräume (namespace) wurden eingerichtet um den Quelltext besser organisieren zu können. Wenn in einem Programm und in einer eingebundenen Headerdatei ein Element mit dem Namen X definiert sind, würde beim Kompilieren ein Namenskonflikt auftreten. Mit der Einführung des Konzeptes der Namensräume kann dieser Konflikt vermieden werden, wenn eines der beiden Elemente einen anderen Namensraum erhält. Namensräume werden mit dem Schlüsselwort namespace definiert. Die folgende Tabelle zeigt einige .NET-Namespaces. 3 Einführung in die Programmierung -42- .NET-Namespace System Funktionalität Grundlegende Funktionalität (Datentypen, Datenkonvertierung, mathematische Funktionen, Ausnahmen etc.) System::Collections Container-Klassen zur Verwaltung von größeren Datensammlungen in einem Programm System::IO Klassen für die Ein- und Ausgabe (inklusive Dateien) System::Windows::Forms Klassen für die GUI-Programmierung System::Drawing Klassen für die Grafik-Programmierung System::Data Klassen für die Datenbank-Programmierung System::XML Klassen für die XML-Programmierung Tabelle 20 Wichtige .NET-Namespaces [L2, Tab. 1.2, S. 40] Die Zeile int main() bedeutet den Aufruf der Hauptfunktion. Eine main-Funktion muss in jedem Projekt vorhanden sein, denn dies ist die Funktion mit der die Ausführung des Programmes beginnt. In den geschweiften Klammern werden die Anweisungen geschrieben, die das Program ausführen soll. Jede Anweisung muss mit einem Semikolon abgeschlossen werden. Wird die main-Funktion mit int main() aufgerufen, so erwartet der Compiler einen ganzzahligen Rückgabewert. Dieser wird mit der Anweisung return 0; zurück gegeben. Einige Compiler lassen auch void main() als Aufruf der Hauptfunktion. Damit wird kein Rückgabewert erwartet. In den Quelltext lassen sich einige Kommentare einfügen, die der Compiler als solche erkennt und nicht als Anweisungen im Quelltext beachten muss. Kommentare lassen sich auf zwei verschiedenen Wegen einfügen. Der Einzeilige Kommentar wird mit // ausgelöst. Alles, was in einer Zeile rechts neben // steht, wird als Kommentar angesehen. Der mehrzeilige Kommentar wird mit /* eingeleitet und endet mit */. Der gesamte Text zwischen diesen Zeichen wird als Kommentar angesehen. 3.4.2 Variablen Damit in Programmen Daten verarbeitet werden können, müsse diese Werte in Variablen gespeichert werden. Um eine Variable korrekt zu deklarieren, muss zunächst der Datentyp und danach ein Name festgelegt werden. Beispiele für die Deklaration von Variablen sind: int x; double a,b; short KleineZahl = 5; Die Variable “x“ wurde vom Typ Integer deklariert. Mit dem Semikolon wird die jeweilige Programmzeile abgeschlossen. Wenn mehrere Variable mit dem gleichen Typ deklariert werden sollen, kann die Deklaration auch, wie im Beispiel, in einer Zeile und mit einem Komma getrennt geschrieben werden. Die Variablen a und b wurden somit vom Typ double deklariert. Innerhalb der Deklaration ist es auch möglich, eine Variable mit einem Wert zu belegen. Somit hat die Variable KleineZahl vom Typ short den Wert 5. 3 Einführung in die Programmierung -43- Die Nachfolgende Tabelle zeigt typische Variablentypen und deren Beschreibungen. Datentyp bool char wchar_t Beschreibung boolscher Wert (wahr, falsch) Zeichen, Buchstabe Zeichen, Buchstabe short int ganze Zahl ganze Zahl long ganze Zahl float Gleitkommazahl double Gleitkommazahl Werte true, false .NET-Typ System::Boolean ‘a‘, ‘2‘ System::Byte ‘a‘, ‘2‘ ‘\u00A3‘ (Unicode für das Zeichen ₤) - 32.768 bis 32.767 -2.147.483.648 bis 2.147.483.647 9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 Auf anderen Systemen, bei anderen Compilern identisch zu int. ca. 1,5 x 10-38 bis 3,4 x 1038 ca. 1,7 x 10-308 bis 1,7 x 10308 System::Char Tabelle 21 Die wichtigsten elementaren Datentypen [L2, Tab. 3.1, S. 96] System::Int16 System::Int32 System::Int64 System::Single System::Double 3 Einführung in die Programmierung 3.4.3 -44- Operatoren Neben den üblichen mathematischen Operatoren gibt es in C++ noch weitere Operatoren. Oft verwendete Operatoren sind: Operator ++ -! Beschreibung Inkrement, Dekrement logisches NICHT * / % Multiplikation Division Modulo + <= <; > >= == != Subtraktion Addition Vergleich && || Beispiel Erhöht oder erniedrigt den Wert einer Variablen um 1 Negiert den Wahrheitswert einer Aussage (beispielsweise eines Vergleichs). Wird meist in Kontrollstrukturen verwendet. Multiplikation Division Liefert den Rest einer ganzzahligen Division: 7 % 3 liefert z.B. 1 Subtraktion Addition Zum Vergleich zweier Werte. Die Operatoren liefern true oder false zurück. Vergleich Zum Vergleich auf Gleichheit oder Ungleichheit. Die (gleich / Operatoren liefern true oder false zurück. ungleich) logisches UND Verknüpft zwei boolsche Aussagen. Liefert true, wenn beide Aussagen true sind. if ((x<1)&&(y>1)) logisches ODER Verknüpft zwei boolesche Aussagen. Liefert true, wenn eine der beiden Aussagen true ist. if ((x<1)||(y>1)) Tabelle 22 Ausgesuchte Operatoren [L2, Tab. 3.7, S. 112] Die Operatoren in dieser Tabelle sind nach Priorität geordnet. 3.4.4 Kontrollstrukturen Mit Kontrollstrukturen kann der Programmablauf innerhalb einer Funktion/Methode gesteuert werden, z.B. wenn eine bestimmte Anweisung wiederholt werden soll, oder beim Testen von Bedingungen. Die nachfolgenden Abschnitte zeigen die grundlegenden Kontrollstrukturen. 3.4.4.1 Bedingungen: if-else Die if-Funktion überprüft eine Bedingung. Wenn die Bedingung wahr ist, werden weitere Anweisungen ausgeführt. Wenn die Bedingung nicht erfüllt ist, kann optional ein else-Zweig eingefügt werden und in diesen andere Anweisungen geschrieben werden. Folgende Konstruktion wird verwendet. 3 Einführung in die Programmierung -45- if(Bedingung) { //Bedingung ist wahr Anweisung1; } else { //Bedingung ist falsch Anweisung2; } 3.4.4.2 Mehrfachbedingungen: switch Eine switch-Anweisung überprüft eine Bedingung, bei der es mehrere Möglichkeiten geben kann. Für jede einzelne Möglichkeit können mehrere Anweisungen geschrieben werden. Folgende Konstruktion wird verwendet: switch (Bedingung mit mehreren Optionen) { case Option1: Anweisung1; break; case Option2: Anweisung2; break; case default: Anweisung3; break; } Einfache switch-Anweisungen könnten auch als if-Funktionen geschrieben werden. Dies wird jedoch bei mehreren Optionen schnell unübersichtlich. Jeder case-Zweig wird mit dem Befehl break abgeschlossen. Wenn werden die anderen case-Zweige auch ausgeführt (bis ein break Anweisungsblock ist nicht mit dem Schlüsselwort case, sondern Anweisungen im default-Zweig werden nur dann aufgerufen werden, Option in den vorhergehenden case-Zweigen zutrifft. dieser Befehl fehlt, kommt). Der letzte default aufgerufen. wenn keine andere 3 Einführung in die Programmierung 3.4.4.3 -46- Schleifen Schleifen eignen sich, wenn die gleiche Anweisung mehrfach ausgeführt werden soll. Es wird zwischen kopf- und fußgesteuerten Schleifen unterschieden. Bei kopfgesteuerten Schleifen wird die Bedingung zunächst überprüft und die Anweisungen bei erfüllter Bedingung ausgeführt. Wenn die Bedingung nicht erfüllt ist, kann es dazu kommen, dass die Anweisungen in der Schleife nicht ausgeführt werden. Kopfgesteuerte Schleifen sind foroder while-Schleifen. Bei fußgesteuerten Schleifen werden die Anweisungen in der Schleife einmal ausgeführt. Danach wird eine Bedingung überprüft. Ist diese erfüllt, wird die Schleife ein weiteres Mal durchgelaufen. Ein Beispiel für eine fußgesteuerte Schleife ist die do-whileSchleife. Die Nachfolgenden Beispiele sollen die verschiedenen Schleifenarten verdeutlichen. Die 3 Beispiele sind aus [L2, S. 161f] übernommen. Die for-Schleife int i; for (i = 1; i<= 100; i++) { Console::WriteLine(“i hat den Wert”+i+”\n”); } Hinter dem Schlüsselwort for stehen in Klammern 3 verschiedene Informationen, die mit einem Semikolon getrennt sind: i = 1: Die Variable i wird auf den Wert i = 1 gesetzt (Startbedingung). i<=100: Die Schleife wird so oft durchlaufen, bis der i größer als 100 ist (Endbedingung). i++: Nach jedem Schleifendurchlauf wird i um 1 erhöht (Anweisung nach einem Durchlauf der Schleife). Die Anweisung in der Schleife bedeutet, dass eine Zeile geschrieben wird. In der Klammer wird deutlich, was geschrieben werden soll: Die Zeichenkette “i hat den Wert“, dann der aktuelle Wert von i und schließlich die nächste Zeichenkette “\n“. Die Zeichenkette \n wird mit einem \ eingeleitet, das heißt sie besitzt eine gesonderte Funktion (\n ist mit der Enter-Taste gleichzusetzen). Hier wird also nicht “\n“ in die Zeile geschrieben, sondern es wird ein Zeilenvorschub erzeugt. In der Konsole auf dem Monitor werden somit folgende Zeilen stehen: i hat den Wert 1 i hat den Wert 2 … i hat den Wert 100. 3 Einführung in die Programmierung -47- Die gleiche Funktion besitzt folgende while-Schleife int i = 1; while (1<= 100) { Console::WriteLine(“i hat den Wert “ + i + “\n“); i++; } Die do-while-Schleife für dieses Beispiel lautet int i = 1; do { Console::WriteLine(“I hat den Wert” + I + “\n”); i++; } while (i<=100); Zu beachten ist, dass die do-while Schleife mit einem Semikolon abzuschließen ist. 3.5 Das Kompilieren eines Programms Sobald der Quelltext des Programms fertig geschrieben ist, wird ein Compiler benötigt. Ein Compiler ist ein spezielles Programm, der den geschriebenen Quelltext aus einer Programmiersprache (in diesem Fall C++) in eine maschinell ausführbare Maschinensprache überführt. Dieser Vorgang wird auch Kompilieren genannt. “Die Kompilierung erfolgt meist in 3 Phasen: 1. Lexikalische Analyse: Durchsuchen des Quelltextes und Zerteilen in Tokens verschiedener Klassen wie: Schlüsselwörter, Operatoren, Bezeichner, Zahlen und Formulierungen. Dieser Teil des Compilers wird auch als Scanner oder Lexer bezeichnet. 2. Syntaktische Analyse und 3. Semantische Analyse: Validierung der Befehle, der Variablen, der Datentypen und der korrekten Beziehung der Befehle untereinander. Codegenerierung: Auswertung der Datenstrukturen aus Phase 2 und Erzeugung des korrekten Maschinencodes (Bytecode, Assemblercode).“[I1] Microsoft Visual Studio 2010, das Programm mit der die Anwendung dieses Projekts erstellt wurde, besitzt interne Compiler. Es müssen keine weiteren Programme herangezogen werden, um aus dem geschriebenen Quellcode ein ausführbares Programm zu erstellen. 4 Vorstellung der Programmierumgebung -48- 4 Vorstellung der Programmierumgebung In diesem Kapitel wird eine Einführung in Microsoft Visual Studio 2010 gegeben. Dabei wird gezeigt, wie ein Projekt erstellt wird und welche Möglichkeiten die Programmierumgebung bietet. Es werden Einblicke in die Steuerelemente sowie deren Eigenschaften gezeigt. 4.1 Syntax-Hervorhebung Der Quelltext wird in Visual Studio in unterschiedlichen Farben angezeigt. Dies dient als Erleichterung für den Programmierer. So kann die Orientierung besser gewahrt bleiben und Fehler können besser aufgespürt werden. Die verschiedenen Farben haben folgende Bedeutung: - grün: Kommentare - blau: Schlüsselwörter - schwarz: Sonstiges Dem Verfasser dieser Arbeit stand ein weiteres Tool (Visual Assist X) zur Verfügung. Dies soll die Arbeit weiter erleichtern. Des Weiteren wird durch dieses Tool Quelltext, der in Anführungszeichen steht oder Namen von Prozeduren rot angezeigt. 4 Vorstellung der Programmierumgebung 4.2 -49- Erstellen eines neuen Projektes Abbildung 27 MS Visual Studio 2010 Startseite [P1, Startseite] Abbildung zeigt Die Startseite von Microsoft Visual Studio 2010 Professional. Auf der linken Seite ist der Projektmappen-Explorer zu finden. Dieser zeigt das aktuell geöffnete Projekt an. Darin sind die einzelnen Dateien des Projekts aufgelistet. Über den Menüpunkt Datei>Neues Projekt (oder mit dem Tastenkürzel Strg+N) kann ein neues Projekt geöffnet werden. 4 Vorstellung der Programmierumgebung -50- Abbildung 28 Erstellen eines neuen Programms [P1, neues Projekt anlegen] Im linken Teil des Bildschirmausschnittes werden installierte Vorlagen angezeigt. Mit Visual Studio ist es demnach auch möglich Projekte in anderen Programmiersprachen zu verfassen. Eine Anwendung mit grafischer Oberfläche ist über das Menü Visual C++ -> CLR -> Windows Forms-Anwendung erstellbar. Im unteren Teil des Menüs werden ein Name und der Speicherort festgelegt. Nach erfolgreicher Erstellung des Programms erscheinen im Projektmappen-Explorer alle Dateien des Projekts. Auf der rechten Seite ist ein Formular geöffnet. Dieses trägt den Titel “Form1“ und ist im Entwurfsmodus geöffnet. In dieser Ansicht können Steuerelemente im Formular erstellt werden. Diese Ansicht zeigt auch das Aussehen an. Formulare können in der Code-Ansicht geöffnet werden. In dieser Ansicht wird der Quelltext eines Formulars angezeigt. Zur Erklärung der einzelnen Elemente wird ein neues Projekt mit dem Namen Projekt_Darstellung erzeugt. 4 Vorstellung der Programmierumgebung -51- Abbildung 29 Projektmappen-Explorer und Formular 1 [P1, Formular 1] 4.3 4.3.1 Hauptdatei und Formulare Hauptdatei Die Hauptdatei eines Projektes trägt den Namen des Projektes und hat die Dateiendung .cpp. Der Quelltext der Hauptdatei ist wie üblich in einem C++ Projekt eher kurz gehalten. Der Quelltext lautet: // Projekt_Darstellung.cpp: Hauptprojektdatei. #include "stdafx.h" #include "Form1.h" using namespace Projekt_Darstellung; [STAThreadAttribute] int main(array<System::String ^> ^args) { // Aktivieren visueller Effekte von Windows XP, bevor Steuerelemente erstellt werden Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); // Hauptfenster erstellen und ausführen Application::Run(gcnew Form1()); return 0; } 4 Vorstellung der Programmierumgebung -52- Zuerst werden Headerdateien eingebunden. In der Datei Form1.h wird die grafische Oberfläche des Programms definiert. Der Funktionsaufruf int main startet das Programm. Die Nachfolgende Tabelle zeigt die Bedeutung der Methoden der Klasse Application, die in der Hauptdatei aufgerufen werden: Methode EnableVisualStyles() Beschreibung Die Anwendung wird im Design des aktuellen Systems dargestellt. Wenn diese Funktion fehlt (oder auskommentiert ist) wird die Anwendung im klassischen WindowsDesign dargestellt SetCompatibleTextRenderingDefault() Aktivierung fortgeschrittener Grafikmöglichkeiten Run(gcnew Form1()) Form1 wird zum Hauptfenster der Anwendung und wird gestartet Tabelle 23 Methoden der Hauptdatei 4.3.2 Formulare Das erste Formular ist in der Datei Form1.h definiert. Im Entwurfsmodus können mit Hilfe des Windows Forms-Designer Menüpunkte, Steuerelemente und ähnliches mit der Maus gesetzt werden. Der Windows Forms-Designer übernimmt dabei das Schreiben des Quelltextes. Im “Windows Form Designer generated code“ werden für das Formular bereits einige Eigenschaften festgelegt. Im Entwurfsmodus können auf der rechten Seite die Eigenschaften des Formulars (und auch von jedem hinzugefügten Steuerelement) verändert werden. Das Eigenschaftsfenster kann auch mit dem Tastenkürzel F4 aufgerufen werden. Die folgende Tabelle zeigt eine Auswahl von Eigenschaften sowie deren Erklärungen für ein Fenster (Formular). 4 Vorstellung der Programmierumgebung -53- Eigenschaft AutoScaleMode Erklärung Bestimmt, wie die Größe des Formulars oder Steuerelements angepasst wird, wenn sich die Bildschirmauflösung oder Schriftarten ändern. AutoScroll Gibt an, ob Schiebeleisten automatisch angezeigt werden, wenn der Inhalt der Steuerelemente größer ist als der sichtbare Bereich. AutoSize Gibt an, ob ein Steuerelement seine Größe automatisch an seinen Inhalt anpasst. BackColor Die Hintergrundfarbe der Komponente. BackgroundImage Das Hintergrundbild für das Steuerelement. Cursor Der angezeigte Cursor, wenn der Zeiger über das Steuerelement bewegt wird. Enabled Zeigt an, ob das Steuerelement aktiviert ist. Font Die Schriftart des Textes im Steuerelement. ForeColor Die Vordergrundfarbe dieser Komponente für das Anzeigen von Text. FormBorderStyle Gibt die Darstellung und das Verhalten des Rahmens und der Titelleiste des Formulars an. Icon Zeigt das Symbol für ein Formular an. Dies wird im Systemmenüfeld des Formulars angezeigt und wenn das Formular minimiert ist. Location Die Koordinaten der oberen linken Ecke des Steuerelements relativ zu der oberen linken Ecke des Containers. Locked Die Locked-Eigenschaft bestimmt, ob das Steuerelement verschoben oder seine Größe geändert werden kann. Padding Gibt die Abstände im Inneren eines Steuerelements an. Size Die Größe des Steuerelements in Pixeln. StartPosition Bestimmt die Position des Formulars, an der es zuerst angezeigt wird. Text Der dem Steuerelement zugeordnete Text. WindowState Bestimmt den ersten visuellen Zustand des Formulars. Tabelle 24 Eigenschaften von Formularen [P1, Erläuterung zur Eigenschaft] 4.4 Steuerelemente “Zum Aufbau einer grafischen Benutzeroberfläche gehören […] Steuerelemente. Dies sind die visuellen Komponenten, die in die Fenster eingefügt werden und das Erscheinungsbild und die Funktionalität der Benutzeroberfläche prägen – beispielsweise Schaltflächen, Beschriftungen, Listenfelder etc. In der Windows Forms-Bibliothek gibt es für die typischen Steuerelemente vorgefertigte Klassen (Button, Label, Listbox etc.). Der Programmierer kann diese in der Regel direkt instanzieren; nur selten ist es erforderlich, eigene SteuerelementKlassen abzuleiten.“ [L2, S. 296f] 4 Vorstellung der Programmierumgebung -54- Mit Hilfe der Toolbox, die sich standardmäßig auf der rechten Seite des Bildschirmes befindet (die Toolbox kann auch mit den Tastenkürzel Strg+Alt+X aufgerufen werden), können die verschiedenen Steuerelemente auf das Fenster gezogen werden. Der Quelltext für die richtige Darstellung des Steuerelements wird vom Forms Designer automatisch erzeugt. Die nachfolgende Tabelle zeigt die wichtigsten Steuerelemente sowie deren Beschreibungen. Steuerelement grundlegendes Aussehen Button comboBox checkBox radioButton groupBox Label tabControl TextBox pictureBox timer menuStrip Tabelle 25 Steuerelemente [P1, Erläuterung zum Steuerelement] Beschreibung Löst ein Ereignis aus, wenn der Benutzer darauf klickt. Zeigt ein Textfeld mit einer Dropdownliste zulässiger Werte an, die bearbeitet werden kann. Ermöglicht dem Benutzer das Aktivieren oder Deaktivieren der verknüpften Option. Ermöglicht dem Benutzer die Auswahl einer einzelnen Option in einer Gruppe von Optionen, wenn diese mit anderen RadioButtons zusammen verwendet werden. Zeigt einen Rahmen um eine Gruppe von Steuerelementen mit einer optionalen Beschriftung an. Stellt Laufzeitinformationen oder deskriptiven Text für ein Steuerelement bereit. Verwaltet eine Auflistung von Registrierkarten, die Steuerelemente und Komponenten enthalten können, und zeigt sie dem Benutzer an. Ermöglicht dem Benutzer die Eingabe von Text sowie die gleichzeitige Bearbeitung mehrerer Zeilen und das Maskieren des Kennworts bei der Eingabe. Zeigt ein Bild an. Die Komponente, die ein Ereignis in benutzerdefinierten Intervallen auslöst. Zeigt Anwendungsbefehle und – optionen nach Funktionalität gruppiert an. 4 Vorstellung der Programmierumgebung -55- Die Eigenschaften der Steuerelemente entsprechen weitestgehend den Eigenschaften des Formulars. Eine wichtige zusätzliche Eigenschaft für Steuerelemente ist “Visible“ und “Name“. Visible gibt an, ob ein Steuerelement sichtbar ist. Name gibt den Namen an, um das Element identifizieren zu können. Für die Listbox und die Combobox ist die ItemsEigenschaft zu erwähnen. Hier können die Elemente, die in der Combobox (oder Listbox) erscheinen sollen, eingetragen. Eine Ausnahme für die Vielzahl der Eigenschaften, ist der Timer. Da dieser nicht im Fenster erscheint, braucht er keine visuellen Eigenschaften. Die wichtigsten Eigenschaften des Timers sind Name, Enabled und Interval. Mit Interval kann die Frequenz der ausgelösten Ereignisse eingestellt werden. Die Zahl, die diese Eigenschaft erwartet, ist die Zeit in Millisekunden. Am Beispiel eines Buttons wird der Quelltext dargestellt, den der Windows Forms-Designer automatisch erstellt, wenn ein Steuerelement eingefügt wird. private: System::Windows::Forms::Button^ button1; this->button1 = (gcnew System::Windows::Forms::Button()); // // button1 // this->button1->Location = System::Drawing::Point(12, 35); this->button1->Name = L"button1"; this->button1->Size = System::Drawing::Size(75, 23); this->button1->TabIndex = 0; this->button1->Text = L"button1"; this->button1->UseVisualStyleBackColor = true; // Form1 // this->Controls->Add(this->button1); Die ersten beiden Zeilen erstellen das Steuerelement. Im Bereich Windows Form Designer generated code werden die nächsten Zeilen geschrieben und somit die grundlegenden Eigenschaften festgelegt. Mit ausgelösten Ereignissen können die Eigenschaften der einzelnen Steuerelemente verändert werden. 4.5 Ereignisse Ein Ereignis ist ein “Mechanismus, der es einer Klasse ermöglicht, Code auszuführen, der vom Benutzer der Klasse aufgesetzt wurde (also nicht Teil der Klasse ist).“ [L2, Glossar Seite 451] Die Liste der Eigenschaften besitzt folgende Kopfzeile: Abbildung 30 Kopfzeile der Eigenschaftsliste [P1, Eigenschaftsliste] 4 Vorstellung der Programmierumgebung -56- Mit einem Tastendruck auf das Blitz-Symbol kommt die Liste der Ereignisse zum Vorschein. Dort sind alle Ereignisse, die ausgelöst werden können, für jedes Steuerelement aufgelistet. Wenn in dieser Liste doppelt auf das gewünschte Ereignis geklickt wird, wird automatisch der Quelltext erzeugt, der für dieses Ereignis erforderlich ist. Für einen Button, der ein Ereignis auslösen soll, wenn auf ihn geklickt wird, wird folgender Quelltext generiert. Im Bereich der Eigenschaften des Buttons wird this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click); angelegt. Der Designer registriert damit, dass im Quelltext eine Methode mit dem Namen button1_Click existiert. Sobald auf den Button geklickt wird, wird der Quelltext innerhalb dieser Methode ausgeführt. Im weiteren Verlauf des Quelltextes wird auch automatisch das Grundgerüst der Methode angelegt: private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { } Das nachfolgende Beispiel zeigt ein kleines Programm, dass ein Label und ein Button als Steuerelemente enthalten. Wenn der Button gedrückt wird, soll im Label der Text “Hallo Welt“ angezeigt werden. Wie in den vorhergehenden Abschnitten beschrieben wird dazu ein Projekt erstellt und die entsprechenden Steuerelemente in das Fenster gezogen. Anschließend wird für den Button das Ereignis Click erstellt. Zwischen den geschweiften Klammern kann nun der Quelltext geschrieben werden. In diesem Fall muss auf die Eigenschaft Text des Labels zugegriffen werden und entsprechend verändert werden. Dies geschieht mit folgender Zeile: label1->Text = “Hallo Welt“; Wenn das Programm damit ausgeführt wird, sieht das Programm wie folg aus: Abbildung 31 kleine Anwendung vor Druck auf den Button Nachdem auf den Button geklickt wurde, hat sich der Schriftzug von “label1“ in “Hallo Welt“ verändert. 4 Vorstellung der Programmierumgebung -57- Abbildung 32 kleine Anwendung nach Druck auf den Button Die nachfolgende Tabelle zeigt eine Auswahl der möglichen Ereignisse, die ein Steuerelement (oder ein Formular) besitzen kann. Ereignis BackColorChanged Click DoubleClick DragEnter EnabledChanged Enter FontChanged MouseDown TextChanged VisibleChanged Bedeutung Das ausgelöste Ereignis, wenn der Wert der BackColorEigenschaft für “Control“ geändert wird. Tritt auf, wenn auf die Komponente geklickt wird. Tritt auf, wenn auf die Komponente doppelgeklickt wird. Tritt ein, wenn ein Element mit der Maus in den Clientbereich dieses Steuerelements gezogen wird. Tritt ein, wenn sich der Aktivierungszustand des Steuerelements ändert. Tritt ein, wenn dieses Steuerelement zum aktiven Steuerelement des Formulars wird. Das ausgelöste Ereignis, wenn der Wert der FontEigenschaft für “Control“ geändert wird. tritt auf, wenn sich der Mauszeiger über der Komponente befindet und eine Maustaste gedrückt wird. Das ausgelöste Ereignis, wenn der Wert der TextEigenschaft für “Control“ geändert wird. Tritt ein, wenn sich die Sichtbarkeit des Steuerelements ändert. Tabelle 26 Ereignisse – allgemein Wichtige Ereignisse, die nur bei bestimmten Steuerelementen vorkommen sind: Ereignis Load KeyPress SelectedIndexChanged CheckedChanged Tabelle 27 Ereignisse spezifisch [P1, Erläuterung zum Ereignis] Bedeutung Tritt ein, wenn der Benutzer das Formular lädt Tritt auf, wenn das Steuerelement fokussiert ist und der Benutzer eine Taste drückt und anschließend loslässt. Tritt auf, wenn sich der Wert der SelectedIndex-Eigenschaft ändert. Tritt ein, wenn die Eigenschaft „Check“ geändert wird. wichtig für Formular TextBox comboBox checkBox, radioButton 5 Darstellung des Computerprogramms -58- 5 Darstellung des Computerprogramms Das erstellte Programm trägt den Arbeitstitel “Nachweisführung nach EN 1993“. Die Aufgabe des Programms ist es, für einen Stahlträger die Querschnitts- und Stabilitätsnachweise zu führen. Dabei wird nicht darauf eingegangen, wie die Bemessungswerte der Belastungen zustande kommen. Diese müssen manuell berechnet werden und danach in das Programm übertragen werden. Dieses Kapitel stellt die einzelnen Formulare und die entsprechenden Funktionen vor. 5.1 5.1.1 Überblick zum Programm Einbinden einer Datenbank Im Verlauf der Entwicklung von Nachweisführung nach EN 1993 wurde eine Datenbank erstellt, die die geometrischen und statischen Werte der einzelnen Profile enthält. Diese Datenbank wurde mit Microsoft Access 2007 erstellt und ist in insgesamt 14 Tabellen gegliedert. Um mit VS 2010 auf eine Datenbank zugreifen zu können ist ein eigener Namensraum erforderlich und wird mit der Zeile using namespace Microsoft::Office::Interop; ins Programm eingefügt. Außerdem sind Variablen erforderlich, um die Datenbank öffnen zu können und die Daten auszulesen. Die Variablen sind: String ^verbindungsstr; OleDbConnection ^verbindung; OleDbCommand ^befehl; OleDbDataReader ^leser; Die Variablen werden wie folgt festgelegt: verbindungsstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Profile.mdb"; verbindung = nullptr; befehl = nullptr; leser = nullptr; Damit steht fest, dass die Quelle für die Daten die Datenbank “Profile.mdb“ ist. Wenn die Datenbank nicht gefunden wird, soll nicht gleich das ganze Programm abstürzen, sondern eine Fehlermeldung ausgeben, die dem Benutzer ermöglichen soll, den Fehler zu korrigieren. Um dies zu realisieren, sollen alle Anweisungen im Zusammenhang mit der Datenbank überwacht werden. Dies wird mit der try-Funktion ermöglicht. Direkt nach dieser Funktion muss ein catch-Block stehen um mögliche Fehlerquellen “aufzufangen“. Das Grundgerüst für eine try-Funktion sieht wie folgt aus. 5 Darstellung des Computerprogramms -59- try { // überwachte Anweisungen } catch (Exception ^e) { //Fehlerbehandlung } Um die Daten aus der Datenbank im Programm nutzen zu können muss zuerst eine Verbindung zur Datenbank erstellt werden. Danach muss eine Abfrage für die jeweilige Datenbank erstellt werden. Anschließend werden die Daten in Arrays kopiert (Arrays sind “Datenstrukturen, in der man mehrere Variablen eines Datentyps vereinen kann“ [L2, S. 450]). Zum Schluss werden mögliche Fehlerquellen abgefangen und die Verbindung zur Datenbank getrennt. Die Daten, die der Datenbank zu Grunde liegen wurden aus [L1] Tabelle 8.73 Seite 8.73ff und den Profiltafeln Seite 8.166 bis 8.186 entnommen. 5.1.2 Ausgeben der angezeigten Werte Um im Programm angezeigte Werte in ein Word-Dokument übertragen zu können, muss im VS 2010 ein Verweis zu MS Word erstellt werden. Damit ein Verweis erstellt werden kann, müssen die Eigenschaften des Projekts aufgerufen werden (Menü: Projekt-> Nachweisführung nach EN 1993-Eigenschaften). Abbildung 33 Eigenschaften des Projekts [P1, Eigenschaften eines Projektes] 5 Darstellung des Computerprogramms -60- In der Mitte des Fensters sind die Verweise aufgelistet. Hier muss der Verweis “Microsoft.Office.Interop.Word“ hinzugefügt werden (im Bild ist dieser bereits vorhanden). sobald dieser Verweis vorhanden ist, können Anweisungen geschrieben werden, damit Informationen in einem Dokument ausgegeben werden können. Da auch hier die Anweisungen überwach werden sollen, kommt eine try-Funktion zum Einsatz. try { Word::ApplicationClass^ WordApp = gcnew Word::ApplicationClass(); WordApp->Visible=true; Object^ NoArg = System::Reflection::Missing::Value; WordApp->Documents->Add(NoArg,NoArg,NoArg,NoArg); } catch(Exception^ e) { MessageBox::Show(e->Message); } Diese Zeilen definieren eine Klasse WordApp. Mit dieser Klasse wird ein neues WordDokument geöffnet. Mit dieser Klasse kann nun Einfluss auf die Ausgabe genommen werden (z.B. Schriftgröße, Schriftart, der Text der geschrieben werden soll. 5.1.3 Textfelder In Nachweisführung nach EN 1993 stehen an verschiedenen Stellen Textfelder. In diesen werden Eingaben von Zahlen erwartet. Bei einer Eingabe von Buchstaben würde das Programm abstürzen, da die Eingabe intern nicht verarbeitet werden kann. Aus diesem Grund wurde eine Sicherung programmiert, die die Tastatureingabe überwacht und nur bestimmte Werte zulässt. Dies ist mit Hilfe des ASCII (American Standard Code for Information Interchange) möglich, bei der jede mögliche Tastatureingabe u.a. in Dezimalzahlen codiert ist. Der folgende Quelltext wurde in jedem KeyPress Ereignis (Ereignis, dass ausgelöst wird, wenn das Textfeld markiert ist und eine Taste gedrückt wurde) eines Textfeldes geschrieben: { int Eingabe = Convert::ToInt32(e->KeyChar); if (Eingabe>47&&Eingabe<58||Eingabe == 8||Eingabe == 44||Eingabe == 127) e->Handled = false; else e->Handled = true; } Die Zahl, die sich im ASCII hinter der gedrückten Eingabe befindet, wird in die Variable Eingabe gespeichert. Danach wird die Zahl abgefragt. Wenn sie zwischen 47 und 58 liegt (Ziffern von 0 bis 9), gleich 8 (Taste Backspace), gleich 44 (Taste Komma) oder gleich 127 (Taste Entfernen) ist, wird der Tastendruck verarbeitet, sonst nicht. 5 Darstellung des Computerprogramms 5.2 -61- Hauptmenü 7 3 1 4 2 5 6 Abbildung 34 Hauptmenü von Nachweisführung nach DIN EN 1993 Abbildung 34 zeigt den Entwurfsmodus des Hauptmenüs. Im Bereich 1 befinden sich 3 Comboboxen. Damit kann der für den Nachweis gewünschte Querschnitt ausgewählt werden. Zur Erleichterung für den Benutzer ist am Anfang nur eine Combobox sichtbar. Der Inhalt der sichtbaren Combobox ist I-Profil, U-Profil, Winkelprofil, Hohlprofil und rundes Hohlprofil. Damit wird eine Vorauswahl des Querschnitts getroffen. Außerdem wird eine weitere Combobox sichtbar. Die Items der Box richten sich nach der Vorauswahl. Die nachfolgende Tabelle zeigt die Items der Box in Abhängigkeit der Vorauswahl: Vorauswahl I-Profil U-Profil Winkelprofil Hohlprofil rundes Hohlprofil Item I, IPE, HEA, HEB, HEM UPE, UPN gleichschenklig, ungleichschenklig quadratisch (kalt), quadratisch (warm), rechteckig (kalt), rechteckig (warm) Da keine weitere Unterteilung vorliegt, werden sofort alle möglichen Rohrprofile dargestellt. Tabelle 28 Inhalt der Comboboxen Ist diese Wahl auch getroffen, erscheint eine weitere Combobox. In dieser kann das Profil (in Abhängigkeit der vorhergehenden Entscheidungen) ausgewählt werden. Wenn das Profil ausgewählt wurde, werden im Bereich 2 mit Hilfe einer Datenbank geometrische Größen und statische Werte angezeigt. Im Bereich 3 kann mit Hilfe einer Combobox die Festigkeitsklasse des Profils eingegeben werden. Zur Auswahl stehen hier S235, S275, S355, S420, S460. Somit werden die Streckgrenze und die Zugfestigkeit für die folgende Berechnung festgelegt. Mit Hilfe einer Combobox wird im Bereich 4 die Auswahl der Querschnittsklasse vorgenommen. 5 Darstellung des Computerprogramms -62- Ist die Querschnittsklasse unbekannt, kann mit einem Klick auf den Button “QK berechnen“ die QK bestimmt werden. Dieser Klick öffnet ein von Matthias Maul erstelltes Programm, das speziell dazu entwickelt wurde, die Querschnittsklasse eines gegebenen Profils zu bestimmen. Der Aufruf eines externen Programms (innerhalb der Methode button1_Click) wird mit folgendem Quellcode realisiert: private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { Process ^p; ProcessStartInfo ^pInfo; pInfo = gcnew ProcessStartInfo(); pInfo->Verb = "open"; pInfo->FileName = "Querschnittsklassen neu.exe"; pInfo->UseShellExecute = true; p = Process::Start(pInfo); } Das Ergebnis des externen Programms muss manuell in die dafür vorgesehene Combobox einzutragen. Im fünften Bereich sind die Bemessungswerte der Schnittgrößen einzutragen. Die entsprechenden Einheiten sind abgebildet. Wenn der Button “Allgemeine Werte ausgeben“ geklickt wird, werden die eingestellten Werte in einem Word Dokument ausgegeben. Diese können so entsprechend formatiert werden. Die Menüleiste im Hauptfenster dient dazu, die Nachweise auszuwählen, die geführt werden sollen. Die nachfolgende Tabelle zeigt die Menüpunkte sowie deren Untermenüpunkte: Menüpunkte Datei Einzelnachweise Kombinierte Nachweise Stabilitätsnachweise Hilfe Untermenüpunkte Beenden Zugbeanspruchung, Druckbeanspruchung, Einaxiale Biegebeanspruchung, Querkraftbeanspruchung ohne Torsion Querkraft und Torsion; My, Vz und N; Mz, Vy und N; zweiachsige Biegung, Querkräfte und Normalkraft Druckbeanspruchung; einachsige Biegebeanspruchung; Beanspruchung aus Druck und Biegung Hinweise; Über Tabelle 29 Menüpunkte Zur Verdeutlichung sollen als Beispiel folgende Werte eingegeben werden. Profil: S275, HEA 300, QK 2 Belastungen: N = 300 kN, Vz = 50 kN, My = 150 kNm 5 Darstellung des Computerprogramms -63- Abbildung 35Hauptmenü mit Beispiel Bild 35 zeigt das Hauptmenü mit den eingegebenen Werten. Ein Klick auf “Allgemeine Werte ausgeben“ lässt ein neues Worddokument mit folgendem Inhalt entstehen: Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 300 Festigkeitswerte: f_y = 27,5 kN/cm²; f_u = 43 kN/cm² Querschnittsklasse: 2 Profilmaße und statische Werte h = 290 mm; b = 300 mm; s = 8,5 mm; t = 14 mm; r = 27 mm A = 113 cm²; A_vy = 84 cm²; A_vz = 37,8 cm²; A_w = 22,27 cm² I_y = 18260 cm^4; W_el,y = 1260 cm³; W_pl,y = 1383 cm³; i_y = 12,7 cm I_z = 6310 cm^4; W_el,z = 421 cm³; W_pl,z = 641,2 cm³; i_z = 7,49 cm Schnittgrößen (Bemessungswerte) N_Ed = 300 kN M_y,Ed = 150 kNm; V_z,Ed = 50 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN 5 Darstellung des Computerprogramms 5.3 5.3.1 -64- Einzelnachweise Nachweis der Zugbeanspruchung Abbildung 36 Entwurf des Formulars für Nachweis der Zugbeanspruchung Bild 36 zeigt den Entwurfsmodus des Formulars für den Nachweis der Zugbeanspruchung. Die eingegebene Normalkraft wird bei diesem Nachweis automatisch als Zugkraft erkannt. Bei diesem Nachweis ist in der Regel der Lochabzug zu beachten. Daher kann mit Hilfe der Radiobuttons ausgewählt werden, ob beim gewählten Träger der Abzug zu beachten ist. Wenn der Abzug zu beachten ist, erscheint ein Textfeld, in das die Nettoquerschnittsfläche einzutragen ist, andernfalls bleibt das Textfeld unsichtbar. Die angezeigten Label zeigen die Berechnungsschritte an. Die Programmierung erfolgt nach folgendem Struktogramm. Abbildung 37 Struktogramm für Nachweis der Zugbeanspruchung Mit dem Beispiel aus Abschnitt 5.2 zeigt Bild 38 das Aussehen des Formulars. Abbildung 38 Formular mit Beispiel Die Werte, die ausgegeben werden, wenn „drucken“ geklickt wird, sind die Folgenden. 5 Darstellung des Computerprogramms -65- Nachweis eines Trägers auf Zugbeanspruchung Profil: HEA 300 QK: 2 Festigkeit: S275 N_t,Rd = N_pl,Rd = A*f_y/gamma_M0 = 113 * 27,5 / 1,0 = 3.107,50 N_t,Ed / N_t,Rd = 300 / 3.107,50 = 0,10 <=1 Nachweis erfüllt Das Label, das die Zeile “Nachweis erfüllt“ anzeigt, wird in rot geschrieben, falls der Nachweis nicht erfüllt ist. 5.3.2 Nachweis der Druckbeanspruchung Die eingegebene Normalkraft wird bei diesem nachweis automatisch als Druckkraft angenommen. Löcher für Verbindungsmittel müssen nicht mit beachtet werden, wenn sie mit entsprechenden Verbindungsmitteln gefüllt sind. Sollte der Querschnitt in Querschnittsklasse 4 eingeordnet werden, ist die effektive Querschnittsfläche manuell zu berechnen und in das entsprechende Textfeld einzutragen, mit Ausnahme für die Profile der nachfolgenden Tabelle. Die Tabelle zeigt für Profile der QK 4 die effektiven Querschnitte in cm2. Diese Werte wurden bereits im Programm berücksichtigt. IPE 300 320 330 340 360 400 450 500 550 600 650 700 800 900 1000 131,4 152,3 - S235 HEA HEB 277,2 305,5 321,7 HEM 384,0 IPE 96,3 112,1 129,1 149,5 - S275 HEA HEB 237,7 254,2 272,7 300,0 315,3 358,4 376,7 HEM 428,6 IPE 52,7 61,0 70,4 81,2 93,8 108,9 125,3 145,1 - S355 HEA HEB HEM 208,5 219,7 232,5 248,2 265,4 291,1 305,3 409,6 415,4 301,0 320,2 348,1 364,8 Tabelle 30 effektive Querschnittsfläche [L1, Tab. 8.13, S. 8.13] Sollte eines der in der Tabelle aufgelistetes Profil gewählt werden, wird das Textfeld nicht erscheinen. Der Nachweis wird mit Hilfe des folgenden Struktogramms programmiert: 5 Darstellung des Computerprogramms -66- Abbildung 39 Struktogramm für Druckbeanspruchung Das nachfolgende Bild zeigt das Formular für den Druckbeanspruchungsnachweis mit der Eingabe des oben genannten Beispiels: Abbildung 40 Formular für Druckbeanspruchung Mit einem Klick auf den Button “Drucken“ wird ein neues Dokument mit folgendem Inhalt geöffnet: Druckbeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 N_c,Rd = A * fy /gamma_M0 = 113 * 27,5 / 1,0 = 3107,5 N / N_c,Rd = 300 / 3107,5 = 0,10 <=1 Nachweis erfüllt Sollte der Nachweis nicht erfüllt sein, färbt sich der Schriftzug rot. 5 Darstellung des Computerprogramms 5.3.3 -67- Nachweis der einachsigen Biegebeanspruchung In dem Formular für den Nachweis der einachsigen Biegebeanspruchung kann mittels Radiobuttons entschieden werden, ob der Nachweis mit Biegung um die y-Achse oder um die z-Achse angezeigt werden soll. Sollte der Querschnitt in QK 4 eingeordnet sein, muss das effektive Widerstandsmoment in das entsprechende Textfeld eingetragen werden. Dieses Textfeld ist nur sichtbar, wenn wirklich etwas eingetragen werden muss. Folgendes Struktogramm hilft bei der Programmierung: Abbildung 41 Struktogramm für Nachweis der Biegung Abbildung 42 Formular für Nachweis der Biegung Bild 42 zeigt die Formulare mit den Daten des Beispiels. Die ausgegeben Daten sind folgende: Biegebeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 Biegung um die y-Achse M_c,Rd = M_pl,Rd = W_pl * f_y / gamma_M0 = 1383 * 27,5 / 1,0 = 38032,5 M_Ed / M_c,Rd = 150 / 38032,5 = 0,39 <=1 Nachweis erfüllt Die ausgegebenen Daten für Biegung um die z-Achse entfallen hier, da in diesem Beispiel keine Biegung um diese Achse vorliegt. 5 Darstellung des Computerprogramms 5.3.4 -68- Nachweis der Querkraftbeanspruchung ohne Torsion Mit Hilfe von Radiobuttons muss die Richtung der Querkraftbeanspruchung ausgewählt werden. Die wirksame schubfläche wurde nach Tabelle 5 für jedes Profil berechnet und in die Datenbank der Profildaten eingetragen. Die Werte der wirksamen Schubfläche müssen im Fall eines Winkelprofils in die entsprechenden Textfelder eingetragen werden. Bild 43 zeigt das Struktogramm, das der Programmierung zu Grunde liegt: Abbildung 43 Struktogramm für Nachweis der Querkraft Abbildung 44 Formular für Nachweis der Querkraft Das Bild zeigt das Ergebnis des Formulars mit dem obigen Beispiel. Folgende Daten werden ausgegeben: Querkraftbeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 A_vz = 37,8 cm^2 A_vz * f_y / (Wurzel(3)*gamma_M0) = 37,8 * 27,5 /(Wurzel(3) * 1,0) = 600,16 V_Ed/V_c,Rd = 50 / 600,16 = 0,08 <=1 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.4 5.4.1 -69- Kombinierte Nachweise Nachweis von Querkraft und Torsion Mit Hilfe der Radiobuttons ist die Auswahl zu treffen, welcher Nachweis angezeigt werden soll (Querkraft in y-Richtung oder in z-Richtung). Je nach Querschnitt sind die Schubspannungen aus primärer und sekundärer Torsion vom Benutzer zu berechnen und in die dafür vorgesehenen Textfelder einzutragen. Für Winkelprofile wird dieser Nachweis nicht vom Programm durchgeführt. Der Quelltext wurde in Anlehnung an folgendes Struktogramm erstellt: Abbildung 45 Struktogramm für Nachweis von Querkraft und Torsion Mit der Annahme Tau_t,Ed = 5 kN/cm2 werden folgende Daten ausgegeben: Nachweis eines Trägers bei kombinierter Beanspruchung aus Querkraft und Torsion Profil: HEA 300 QK: 2 Festigkeit: S275 Querkraft in z-Richtung V_pl,Rd = A_vz * f_y/(Wurzel(3)*gamma_M0) = 37,8 * 27,5 /(1,732 * 1,0) V_pl,Rd = 600,16 Tau_t,Ed [kN/cm^2] = 5 V_pl,T,Rd = [Wurzel(1-(Tau_t,Ed * Wurzel(3) * gamma_M0) / (1,25 * f_y))] * V_pl,Rd V_pl,T,Rd = [Wurzel(1-( 5,00* Wurzel(3)*1,0) / (1,25*27,5))]*600,16 V_pl,T,Rd = 519,08 kN V_ed / V_pl,T,Rd = 50 / 519,08 = 0,10 <=1 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.4.2 -70- Nachweis der Biegung um die y-Achse, zugehöriger Quer- und Normalkraft Um den Nachweis mit diesem Formular durchführen zu können, müssen die Einzelnachweise für Normalkraft, Querkraft und Biegung vom Benutzer überprüft werden. Im Fall der Querschnittsklasse 4 müssen effektive Querschnittswerte und die Verschiebung der Hauptachse in die dafür vorgesehenen Textfelder eingetragen werden. Das nachfolgende Struktogramm und der dazugehörige Quelltext gelten für I-, H- und U-Profile der Querschnittsklasse 1 und 2. Abbildung 46 Struktogramm für Nachweis der Biegung um y-Achse (I-Profile) Für die nachfolgenden Nachweise werden nur die Struktogramme gezeigt. Der genaue Quelltext ist im Anhang nachzulesen. Das nachfolgende Struktogramm gilt für Hohlprofile der Querschnittsklassen 1 und 2. 5 Darstellung des Computerprogramms Abbildung 47 Struktogramm für Nachweis der Biegung um y-Achse (Hohlprofile) Das nachfolgende Struktogramm gilt Rohrquerschnitte der Querschnittsklasse 1 und 2. Abbildung 48 Struktogramm für Nachweis der Biegung um y-Achse (Rohrquerschnitte) -71- 5 Darstellung des Computerprogramms -72- Bei dem Nachweis für I-Profile der Querschnittsklasse 3 sind die Nachweise für die Randfaser und für die Achsen in der Mitte des Flansches zu führen. Diese werden in einem Struktogramm zusammengeführt: Abbildung 49 Struktogramm für Nachweis der Biegung um y-Achse (QK 3; I-Profile) Für alle anderen Querschnitte der Querschnittsklasse 3 gilt folgender Ablauf: Abbildung 50 Struktogramm für Nachweis der Biegung um y-Achse (QK 3; andere Profile) Für Querschnitte der Querschnittsklasse 4 gelten folgende Vorschriften: Abbildung 51 Struktogramm für Nachweis der Biegung um y-Achse (QK 4) 5 Darstellung des Computerprogramms -73- Wenn das oben genannte Beispiel in das Programm übertragen wird, können folgende Daten mit einem Klick auf “drucken“ ausgegeben werden: Interaktionsnachweis M_y, V_z und N Profil: HEA 300 Festigkeit: S275 QK: 2 V_pl,z = A_vz*f_y*Wurzel(3) = 37,8 * 27,5 / 1,732 = 600,16 kN V_z = 50 <= 0,5* V_plz =300,08 Querkraft muss nicht berücksichtigt werden N_pl,Rd = A * fy / gamma_M0 = 113 * 27,5 / 1,0 = 3.107,50 kN 0,25* N_pl,Rd = 3.107,50/4 = 776,88 0.5 * ( 290 -2 * 14 ) * 8,5 / 100 * 27,5 = 306,21 kN min( 776,88, 306,21 ) = 306,21 N_Ed = 300 < min( 776,88, 306,21 ) = 306,21 Einfluss der Normalkraft muss nicht berücksichtigt werden n=0 a=0 M_pl,y,Rd * (1-n)/(1-0,5*a) = 380,33*(1-0)/(1-0,5*0) = 380,33 M_N,y,Rd = min(M_pl,y,Rd; M_pl,y,Rd * (1-n)/(1-0,5*a))= min(380,33; 380,33) M_N,y,Rd = 380,33kNm M_y,Ed = 150 <= M_N,y,Rd = 380,33 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.4.3 -74- Nachweis der Biegung um die z-Achse, zugehöriger Quer- und Normalkraft Um den Nachweis mit diesem Formular durchführen zu können, müssen die Einzelnachweise für Normalkraft, Querkraft und Biegung vom Benutzer überprüft werden. Im Fall der Querschnittsklasse 4 müssen effektive Querschnittswerte und die Verschiebung der Hauptachse in die dafür vorgesehenen Textfelder eingetragen werden. Das nachfolgende Struktogramm und der dazugehörige Quelltext gelten für I-, H- und U-Profile der Querschnittsklasse 1 und 2: Abbildung 52 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; I-Profile) Für Hohlprofile der Querschnittsklasse 1 und 2 gilt folgendes Struktogramm. Abbildung 53 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; Hohlprofile) Die Nachweise für Rohrprofile für Querschnittsklasse 1 und 2 sind mit folgendem Struktogramm zu erstellen. 5 Darstellung des Computerprogramms Abbildung 54 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; Rohrprofile) Für einfach- und doppeltsymmetrische I-Profile der Querschnittsklasse 3 gilt: Abbildung 55 Struktogramm für Nachweis der Biegung um z-Achse (QK 3; I-Profile) Für alle anderen Querschnitte der Querschnittsklasse 3 gilt: Abbildung 56 Struktogramm für Nachweis der Biegung um z-Achse (QK 3; andere Profile) -75- 5 Darstellung des Computerprogramms -76- Bei Profilen der Querschnittsklasse 4 gilt: Abbildung 57 Struktogramm für Nachweis der Biegung um z-Achse (QK 4) Damit die ausgegebenen Daten auswertbar sin, wird für diesen und für den nächsten Abschnitt das Beispiel mit den Belastungen Vy = 50 kN und Mz = 100 kNm erweitert. Die damit entstehenden Werte sind: Interaktionsnachweis M_z, V_y und N N_plRd = A*f_y/gamma_M0 = 113*27,5/1,0 = 3.107,50 kN V_plRd = A_vy*f_y/(Wurzel(3)*gamma_M0) = 84*27,5/(1,732*1,0) = 1.333,68 kN M_plzRd = Wpl_z*fy/gamma_M0 = 641,2*27,5/(100*1,0) = 176,33kNm Profil: HEA 300; QK: 2; Festigkeit: S275 V_y = 50 <=0,5*V_pl,y,Rd = 666,84 Querkraft muss nicht berücksichtigt werden N = 300< h_w*t_w*f_y/gamma_M0 = (290-2*14)*8,5/100 *27,5/1,0 =612,43--> Der Einfluss der Normalkraft muss nicht berücksichtigt werden n = 0,00 a = 0,00 n<=a M_NzRd = M_plzRd = 176,33kNm M_z = 100 <= M_NzRd = 176,33 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.4.4 -77- Nachweis zweiachsiger Biegung, dazugehörige Querkräfte und Normalkraft Für den Nachweis eines Stahlbauteils mit zweiachsiger Biegung müssen zunächst die Biegung um die y-Achse und um die z-Achse separat betrachtet werden, um so die Biegebeanspruchbarkeiten um die einzelnen Achsen zu ermitteln. Dies geschieht intern mit dem Hinweis, dass die Vorgehensweise in den Formularen My, Vz und N bzw. Mz, Vy und N ersichtlich ist. Die Biegebeanspruchbarkeiten werden lediglich in einem Label angezeigt. Diese Werte werden anschließend nach den gültigen Regeln kombiniert und somit der Nachweis erbracht. Der Nachweis für Profile der Querschnittsklasse 1 und 2 wird mit folgendem Struktogramm erstellt: Abbildung 58 Struktogramm für den Nachweis zweiachsiger Biegung (QK 1, 2) Das nachfolgende Bild zeigt die Nachweisführung für Profile der Querschnittsklasse 3. Abbildung 59 für den Nachweis zweiachsiger Biegung (QK 3) Der Nachweis für die Profile der Querschnittsklasse 4 ist analog zu dem für die Profile der Querschnittsklasse 3. Es sind lediglich die effektiven Querschnittswerte zu benutzen und das zusätzliche Moment infolge der Verschiebung der Hauptachse zu berücksichtigen. 5 Darstellung des Computerprogramms -78- Abbildung 60 für den Nachweis zweiachsiger Biegung (QK 4) Mit den Werten aus dem Beispiel ergeben sich folgende Daten: Interaktionsnachweis: zweiachsige Biegung, dazugehörige Querkräfte und Normalkraft Profil: HEA 300; QK: 2; Festigkeit: S275 M_NyRd = 380,33 kNm M_NzRd = 176,33 kNm Profil: HEA 300; QK: 2 Auf Grund des gewählten Profils ergeben sich folgende Werte: Alpha = 2,00 Beta = 1,00 NW = (My/M_NyRd)^alpha+ (Mz/M_NzRd)^beta = (150/380,33)^2,00 +(100/176,33)^1,00 NW = 0,72<=1 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.5 5.5.1 -79- Stabilitätsnachweise Nachweis auf Druck beanspruchter Stäbe Abbildung 61 Formular zum Stabilitästnachweis (Druck) Bild 61 zeigt die Entwurfsansicht des Formulars für den Stabilitätsnachweis auf Druck beanspruchter Stäbe. Im Fall der Querschnittsklasse 4 muss die effektive Querschnittsfläche eingegeben werden. Unabhängig von der Querschnittsklasse werden weitere Daten benötigt, um den Nachweis durchführen zu können. Die Länge des Stabes und der Knicklängenbeiwert (als Hilfestellung dient das Bild mit ausgewählten Fällen) werden benötigt. Die eingegebene Normalkraft wird automatisch als Druckkraft angenommen. Mit den Radiobutton kann entschieden werden, um welche Achse der Knicknachweis geführt werden soll. Als Hilfe bei der Programmierung dient folgendes Struktogramm: Abbildung 62 Struktogramm zum Stabilitätsnachweis (Druck) 5 Darstellung des Computerprogramms -80- Um die Stabilitätsnachweise durchführen zu können, wird das Beispiel mit folgenden Werten erweitert: Träger auf zwei Stützen, Trägerlange: 5m Die damit ausgegebenen Daten sind folgende: Stabilitätsnachweis - Knicken Profil: HEA 300 QK: 2 Festigkeit: S275 Länge des Stabes l [cm] =500 Knicklängenbeiwert Beta =1 L_cr = beta * L = 1 * 500 = 500,00 N_cr = PI^2 * E * Iz / L_cr^2 = PI^2 * 21000 * 6310/500,00^2 = 5.231,29 lambda = Wurzel(A*fy/Ncr) = Wurzel(113*27,5/5.231,29) = 0,77 KSL c --> alpha = 0,49 fi = 0.5*(1+alpha*(lambda-0.2)+lambda^2) = 0.5*(1+0,49*(0,77-0.2)+0,77^2) = 0,94 chi = 1/(fi+Wurzel(fi^2-lambda^2)) = 1/(0,94+Wurzel(0,94^2-0,77^2)) <=1 --> chi = 0,68 NbRd = chi*A*fy/gamma_M1 = 0,68*113*27,5/1.1 = 1.922,52 N/N_b,Rd = 300/1.922,52 = 0,16 <=1 Nachweis erfüllt 5.5.2 Stabilitätsnachweis bei einachsiger Biegebeanspruchung Abbildung 63 Formular zum Stabilitätsnachweis (Biegung) Bild 63 zeigt den Entwurfsmodus des Formulars für den Stabilitätsnachweis bei einachsiger Biegebeanspruchung. Im Fall der Querschnittsklasse 4 muss das effektive Widerstandsmoment eingegeben werden. 5 Darstellung des Computerprogramms -81- Mit Hilfe des Bildes kann auf Grundlage der Momentenverteilung der Beiwert kc bestimmt werden. Außerdem muss das ideale Biegedrillknickmoment berechnet werden und in das dafür vorgesehene Textfeld eingetragen werden. Eine Neuerung in Version 1.2 ist, dass ein neues Formular eingefügt wurde, dass die Bestimmung des idealen Biegedrillknickmomentes für I-Profile übernimmt. Die Berechnung und die Programmierung des Nachweises erfolgt nach folgendem Struktogramm. Abbildung 64 Struktogramm zum Stabilitätsnachweis (Biegung) Unter der Annahme des Beispiels und dem Momentenverlauf, der aus einer gleichmäßigen Streckenlast entstehen würde, ergibt der Ausdruck des Programms folgendes Ergebnis. Biegedrillknicknachweis für Stäbe mit einachsiger Biegung (ohne Normalkraft) Profil: HEA 300 QK: 2 Festigkeit: S275 M_cr [kNcm] = 70888,7 kc = 0,94 h/b = 290/300 = 0,97 <= 2.0 --> KSL b --> alpha = 0,34 QK 2 -> W = W_pl = 1383 cm^3 lambda_LT = Wurzel(W_y*f_y/M_cr) = Wurzel(1383 * 27,5 / 70888,7) = 0,73 fi_LT = 0.5*(1+alpha_LT*(lambda_LT-0.4)+0.75*lambda_LT^2) = 0.5*(1+0,34*(0,730.4)+0.75*0,73^2) = 0,76 Chi = 1/(fi_LT+Wurzel(fi_LT^2-0.75*lambda^2)) = 1/(0,76Wurzel(0,76^2-0.75*0,73^2)) Chi = 0,85 f = 1-0.5*(1-kc)*(1-2.0*(lambda-0.8)^2) = 1-0.5*(1-0,94)*(1-2.0*(0,73-0.8)^2) = 0,97 Chi_mod = Chi/f = 0,85/0,97 Chi_mod = 0,88 M_b,Rd = Chi_mod * W * fy / gamma_M1 = 0,88 * 1383 * 27,5/1.1 = 30.401,30 kNcm M_y / M_b,Rd = 150 * 100 / 30.401,30 = 0,49 <= 1,0 Nachweis erfüllt 5 Darstellung des Computerprogramms 5.5.3 -82- Stabilitätsnachweis bei Druck- und Biegebeanspruchung Abbildung 65 Formular zum Stabilitätsnachweis (Druck und Biegung) Bild 65 zeigt den Entwurfsmodus für den Stabilitätsnachweis eines Bauteils, das auf Druck und Biegung belastet ist. Im Fall der Querschnittsklasse 4 müssen die effektiven Querschnittswerte (Fläche, Widerstandsmomente um y- und z-Achse, Außermittigkeiten auf Grund der Verschiebung der Hauptachse) in die dafür vorgesehene Textfelder eingetragen werden. Die äquivalente Momentenbeiwerte Cmy, Cmz und CmLT müssen mit Hilfe des Bildes und dem Momentenverlauf vom Benutzer ausgerechnet werden. Die Beiwerte lambday, lambdaz, Chiy sowie Chiz müssen zwar selbstständig eingetragen werden, könne jedoch im Menü Stabilitätsnachweise Druckbeanspruchung abgelesen werden. Analog dazu muss der Beiwert ChiLT vom Benutzer eingetragen werden. Dieser kann jedoch im Menü Stabilitätsnachweise einachsige Biegebeanspruchung abgelesen werden. Die Programmierung des Formulars wird anhand des folgenden Struktogramm erstellt. 5 Darstellung des Computerprogramms Abbildung 66 Struktogramm zum Stabilitätsnachweis (Druck und Biegung) Mit dem Beispiel wird folgendes Ergebnis ausgegeben. Nachweis eines auf Biegung und Druck beanspruchten Stabes Profil: HEA 300 Festigkeit: S275 Querschnittsklasse: 2 N_Rk = f_y * A = 27,5 * 113 = 3.107,50 kN M_y,Rk = f_y * W_pl,y = 27,5 * 1383 = 38.032,50 kNcm M_z,Rk = f_y * W_pl,z = 27,5 * 641,2 = 17.633,00 kNcm delta M_y = 0 delta M_z = 0 C_my =0,9 C_mz =0,9 C_mLT =0,95 lambda_y =0,45 lambda_z =0,77 Chi_y =0,9 Chi_z =0,68 Chi_LT =0,88 -83- 5 Darstellung des Computerprogramms -84- Interaktionsbeiwerte k_yy = Cmy*(1+(lambday-0.2)*N/(Chiy*NRk/1.1)) = 0,90*(1+(0,450.2)*300/(0,90*3.107,50/1.1)) = 0,93<= Cmy*(1+0.8*N/(Chiy*NRk/1.1)) = 0,90*(1+0.8*300/(0,90*3.107,50/1.1)) = 0,98 k_yy = 0,93 k_zz = Cmz*(1+(2*lambdaz-0.6)*N/(Chiz*NRk/1.1)) = 0,90*(1+(2*0,770.6)*300/(0,68*3.107,50/1.1)) = 1,03<= Cmz*(1+1.4*N/(Chiz*NRk/1.1)) = 0,90*(1+1.4*300/(0,68*3.107,50/1.1)) = 1,10 k_zz = 1,03 k_yz = 0,6 * k_zz = 0,6 * 1,03 k_yz = 0,62 k_zy = 0,6 * k_yy = 0,6 * 0,93 k_zy = 0,56 Nachweise: N/(Chiy*NRk/gamma_M1)+kyy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kyz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,90*3.107,50/1.1)+0,93*(150*100+0,00)/(0,88*38.032,50/1.1)+0,62*(100*100+0,00)/(1 7.633,00/1.1) = 0,96 <=1 N/(Chiz*NRk/gamma_M1)+kzy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kzz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,68*3.107,50/1.1)+0,56*(150*100+0,00)/(0,88*38.032,50/1.1)+1,03*(100*100+0,00)/(1 7.633,00/1.1) = 1,07 >1 Nachweise nicht erfüllt 5.6 Versionsgeschichte Version 1.0 Das Computerprogramm berechnet die Querschnitts – und Stabilitätsnachweise für Stahlbauteile. Die Ergebnisse der Berechnung werden in den jeweiligen Formularen ausgegeben. Profilinformationen werden aus einer Datenbank ausgelesen. Version 1.1 In jedem Formular werden Profilinformationen angezeigt. Es wurde ein neues Formular zur Berechnung des idealen Biegedrillknickmomentes Mcr für I-Profile eingefügt. Um die Querschnittsklasse schneller bestimmen zu können, wurde das Programm Querschnittsklassifizierung nach DIN EN 1993 in Nachweisführung nach EN 1993 integriert. Der Menüpunkt Hilfe wurde eingefügt. Version 1.2 (aktuelle Version) Die Ergebnisse der Berechnung lassen sich in ein MS Worddokument übertragen und können so besser weiterverarbeitet werden. Außerdem wurde der Menüpunkt Hilfe erweitert. 5 Darstellung des Computerprogramms -85- Mögliche Veränderungen für zukünftige Versionen Beim Ausgeben der Daten in ein MS Worddokument sollen zusätzlich grafische Elemente zum besseren Verständnis ausgegeben werden. Es soll eine Option hinzugefügt werden, bei der gewählt werden kann, welche Nachweise ausgegeben werden sollen. Somit ist es möglich, mehrere Nachweise gleichzeitig ausgeben zu lassen. Eine Anpassung der Größe der Formulare, sowie eine grafische Überarbeitung soll durchgeführt werden. Für den Fall der Querschnittsklasse 4 werden die effektiven Querschnittswerte automatisch berechnet. Eine weitere Möglichkeit der Veränderung ist, dass mehr Informationen zur Belastung eingegeben werden sollen. Somit können einige Momentenbeiwerte automatisch berechnet werden. Eine Möglichkeit zur Erweiterung des Programms bietet der Beulnachweis von plattenförmigen Bauteilen. Beim Stabilitätsnachweis unter Druck und Biegebeanspruchung müssen einige Hilfswerte manuell aus anderen Formularen übertragen werden. Diese werden in den nächsten Versionen der Anwendung automatisch übertragen. 6 Vergleichende Berechnungen -86- 6 Vergleichende Berechnungen Um Aussagen über die Qualität der Anwendung treffen zu können, werden im folgenden Kapitel Berechnungen aus [L3] mit den Berechnungen des Programms verglichen. 6.1 Beispiel 1: Tragfähigkeit eines Querschnitts unter My und Vz Abbildung 67 Beispielrechnung 1 [L3, S. 8.21] Nachweisführung nach EN 1993 gibt die folgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 260 Festigkeitswerte: f_y = 35,5 kN/cm²; f_u = 51 kN/cm² Querschnittsklasse: 3 Profilmaße und statische Werte h = 250 mm; b = 260 mm; s = 7,5 mm; t = 12,5 mm; r = 24 mm A = 86,8 cm²; A_vy = 65 cm²; A_vz = 28,7 cm²; A_w = 16,88 cm² I_y = 10450 cm^4; W_el,y = 836 cm³; W_pl,y = 919,8 cm³; i_y = 11 cm I_z = 3670 cm^4; W_el,z = 282 cm³; W_pl,z = 430,2 cm³; i_z = 6,5 cm 6 Vergleichende Berechnungen Schnittgrößen (Bemessungswerte) N_Ed = 0 kN M_y,Ed = 250 kNm; V_z,Ed = 400 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN Interaktionsnachweis M_y, V_z und N Nachweis für die Randfaser N_Ed = 0 kN; A = 86,8 cm^2 M_y,Ed = 250 kNm; W_el,y = 836 cm^3 N_Ed/A + M_y,Ed*100/W_el,y = 0 / 86,8 + 250 *100 / 836 = 29,90 f_y / gamma_M0 = 35,5 / 1,0 29,90 <= 35,5 Nachweis erfüllt Nachweis für Achse 1 (Mitte Flansch) V_pl,z = A_vz*f_y*Wurzel(3) = 28,7 * 35,5 / 1,732 = 588,23 kN V_z = 400 kN > 0,5 * V_pl,z = 294,12 kN Einfluss der Querkraft muss berücksichtigt werden. Rho = (2* Vz/V_plz-1)^2 = (2*400 / 588,23-1)^2 = 0,13 N_Ed/A+M_y,Ed/I_y*(h-t_f)/2 = 0/86,8+250*100/10450*(250-12,5)/(2*10) 28,41 <= f_y,red/gamma_M0 = 30,90/ 1,0 Nachweis erfüllt -87- 6 Vergleichende Berechnungen 6.2 Beispiel 2: Nachweis eines HEB 300 mit My, Vz, N Abbildung 68 Beispielrechnung 2 [L3, S. 8.22] Nachweisführung nach EN 1993 gibt die folgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEB 300 Festigkeitswerte: f_y = 23,5 kN/cm²; f_u = 36 kN/cm² Querschnittsklasse: 1 -88- 6 Vergleichende Berechnungen Schnittgrößen (Bemessungswerte) N_Ed = 2000 kN M_y,Ed = 150 kNm; V_z,Ed = 500 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN Interaktionsnachweis M_y, V_z und N V_pl,z = A_vz*f_y*Wurzel(3) = 47,4 * 23,5 / 1,732 = 643,11 kN V_z = 500 > 0,5* V_plz =321,56 Querkraft muss berücksichtigt werden Rho = (2*V_z,Ed/V_pl,z-1)^2 = (2*500 / 643,11- 1)^2 = 0,31 M_V,y,Rd* = (W_pl,y-rho*A_V,z^2/(4*s))*f_y/gamma_M0 = (18690,31*47,4^2/(4*11))*23,5/1,0 = 435,52 kNm M_y,c,Rd = W_pl,y *f_y / gamma_M0 = 1869*23,5/1,0 = 439,22 kNm M_V,y,Rd = min(M_V,y,Rd*;M_y,c,R) = min(435,52; 439,22 ) = 435,52 a_V,z = A_V,z / A = 47,4/149 = 0,32 N_pl,Rd = A * fy / gamma_M0 = 149 * 23,5 / 1,0 = 3.501,50 kN N_V,Rd = N_pl,Rd * (1-a_V,z*rho) = 3.501,50*(1-0,32*0,31) = 3.158,46kN 0,25* N_V,Rd = 3.158,46/4 = 789,62 0.5 * ( 300 -2 * 19 ) * 11 / 100 * 23,5*(1-rho) = 234,35 kN min( 789,62, 234,35 ) = 234,35 N_Ed = 2000 > min( 789,62, 234,35 ) = 234,35 Einfluss der Normalkraft muss berücksichtigt werden n = N_Ed / N_V,Rd = 2000 / 3.158,46 = 0,63 hilfs_a = (1-rho)*(A-2*b*t)/A = (1-0,31)*(149-2*300*19)/149 = 0,16 a = min(0,5;hilfs_a) = min (0,5;0,16) = 0,16 M_V,y,Rd * (1-n)/(1-0,5*a) = 435,52*(1-0,63)/(1-0,5*0,16) = 173,87 M_N,V,y,Rd = min(M_V,y,Rd; M_V,y,Rd * (1-n)/(1-0,5*a))= min(435,52; 173,87) M_N,V,y,Rd = 173,87kNm M_y,Ed = 150 <= M_N,V,y,Rd = 173,87 Nachweis erfüllt -89- 6 Vergleichende Berechnungen 6.3 Beispiel 3: Pendelstütze Abbildung 69 Beispielrechnung 3 [L3, S. 8.25] Das Programm gibt die nachfolgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEB 360 Festigkeitswerte: f_y = 23,5 kN/cm²; f_u = 36 kN/cm² Querschnittsklasse: 1 Schnittgrößen (Bemessungswerte) N_Ed = 2500 kN M_y,Ed = 0 kNm; V_z,Ed = 0 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN Stabilitätsnachweis - Knicken Profil: HEB 360 QK: 1 Festigkeit: S235 Länge des Stabes l [cm] =450 Knicklängenbeiwert beta =1 L_cr = beta * L = 1 * 450 = 450,00 N_cr = PI^2 * E * Iz / L_cr^2 = PI^2 * 21000 * 10140/450,00^2 = 10.378,44 lambda = Wurzel(A*fy/Ncr) = Wurzel(181*23,5/10.378,44) = 0,64 KSL c --> alpha = 0,49 fi = 0.5*(1+alpha*(lambda-0.2)+lambda^2) = 0.5*(1+0,49*(0,64-0.2)+0,64^2) = 0,81 chi = 1/(fi+Wurzel(fi^2-lambda^2)) = 1/(0,81+Wurzel(0,81^2-0,64^2)) <=1 --> chi = 0,76 NbRd = chi*A*fy/gamma_M1 = 0,76*181*23,5/1.1 = 2.943,87 N/N_b,Rd = 2500/2.943,87 = 0,85 <=1 Nachweis erfüllt -90- 6 Vergleichende Berechnungen 6.4 Beispiel 4: BDK Einfeldträger Abbildung 70 Beispielrechnung 4 [L3, S. 8.38] Ergebnisse aus Nachweisführung nach EN 1993 Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: IPE 400 Festigkeitswerte: f_y = 23,5 kN/cm²; f_u = 36 kN/cm² Querschnittsklasse: 1 Schnittgrößen (Bemessungswerte) N_Ed = 0 kN M_y,Ed = 112,5 kNm;V_z,Ed = 0 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN -91- 6 Vergleichende Berechnungen Biegedrillknicknachweis für Stäbe mit einachsiger Biegung (ohne Normalkraft) Profil: IPE 400 QK: 1 Festigkeit: S235 M_cr [kNcm] = 18601,84 kc = 0,94 h/b = 400/180 = 2,22 > 2.0 --> KSL c --> alpha = 0,49 QK 1 -> W = W_pl = 1307 cm^3 lambda_LT = Wurzel(W_y*f_y/M_cr) = Wurzel(1307 * 23,5 / 18601,84) = 1,28 fi_LT = 0.5*(1+alpha_LT*(lambda_LT-0.4)+0.75*lambda_LT^2) = 0.5*(1+0,49*(1,280.4)+0.75*1,28^2) = 1,34 Chi = 1/(fi_LT+Wurzel(fi_LT^2-0.75*lambda^2)) = 1/(1,34Wurzel(1,34^2-0.75*1,28^2)) Chi = 0,48 Um die Momentenverteilung zwischen den seitlichen Lagerungen von Bauteilen zu berücksichtigen, darf Chi modifiziert werden f = 1-0.5*(1-kc)*(1-2.0*(lambda-0.8)^2) = 1-0.5*(1-0,94)*(1-2.0*(1,28-0.8)^2) f = 0,98 Chi_mod = Chi/f = 0,48/0,98 Chi_mod = 0,49 M_b,Rd = Chi_mod * W * fy / gamma_M1 = 0,49 * 1307 * 23,5/1.1 = 13.671,92 kNcm M_y / M_b,Rd = 112,5 * 100 / 13.671,92 = 0,82 <= 1,0 Nachweis erfüllt -92- 6 Vergleichende Berechnungen 6.5 Beispiel 5: Fassadenstütze mit Biegebeanspruchung Abbildung 71 Beispielrechnung 5 [L3, S. 8.41] -93- 6 Vergleichende Berechnungen Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 200 Festigkeitswerte: f_y = 23,5 kN/cm²; f_u = 36 kN/cm² Querschnittsklasse: 1 Profilmaße und statische Werte h = 190 mm; b = 200 mm; s = 6,5 mm; t = 10 mm; r = 18 mm A = 53,8 cm²; A_vy = 40 cm²; A_vz = 18,1 cm²; A_w = 11,05 cm² I_y = 3690 cm^4; W_el,y = 389 cm³; W_pl,y = 429,5 cm³; i_y = 8,28 cm I_z = 1340 cm^4; W_el,z = 134 cm³; W_pl,z = 203,8 cm³; i_z = 4,98 cm Schnittgrößen (Bemessungswerte) N_Ed = 300 kN M_y,Ed = 32 kNm; V_z,Ed = 0 kN M_z,Ed = 0 kNm; V_y,Ed = 0 kN Nachweis eines auf Biegung und Druck beanspruchten Stabes N_Rk = f_y * A = 23,5 * 53,8 = 1.264,30 kN M_y,Rk = f_y * W_pl,y = 23,5 * 429,5 = 10.093,25 kNcm M_z,Rk = f_y * W_pl,z = 23,5 * 203,8 = 4.789,30 kNcm delta M_y = 0 delta M_z = 0 C_my =0,95 C_mz =0 C_mLT =0,8 lambda_y =1,03 lambda_z =0,85 Chi_y =0,58 Chi_z =0,63 Chi_LT =0,88 Interaktionsbeiwerte k_yy = Cmy*(1+(lambday-0.2)*N/(Chiy*NRk/1.1)) = 0,95*(1+(1,030.2)*300/(0,58*1.264,30/1.1)) = 1,30<= Cmy*(1+0.8*N/(Chiy*NRk/1.1)) = 0,95*(1+0.8*300/(0,58*1.264,30/1.1)) = 1,29 k_yy = 1,29 k_zz = Cmz*(1+(2*lambdaz-0.6)*N/(Chiz*NRk/1.1)) = 0,00*(1+(2*0,850.6)*300/(0,63*1.264,30/1.1)) = 0,00<= Cmz*(1+1.4*N/(Chiz*NRk/1.1)) = 0,00*(1+1.4*300/(0,63*1.264,30/1.1)) = 0,00 k_zz = 0,00 k_yz = 0,6 * k_zz = 0,6 * 0,00 k_yz = 0,00 k_zy = 0,6 * k_yy = 0,6 * 1,29 k_zy = 0,78 -94- 6 Vergleichende Berechnungen -95- Nachweise: N/(Chiy*NRk/gamma_M1)+kyy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kyz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,58*1.264,30/1.1)+1,29*(32*100+0,00)/(0,88*10.093,25/1.1)+0,00*(0*100+0,00)/(4.789 ,30/1.1) = 0,96 <=1 N/(Chiz*NRk/gamma_M1)+kzy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kzz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,63*1.264,30/1.1)+0,78*(32*100+0,00)/(0,88*10.093,25/1.1)+0,00*(0*100+0,00)/(4.789 ,30/1.1) = 0,72 <=1 Nachweise erfüllt 6 Vergleichende Berechnungen 6.6 -96- Vergleich der Ergebnisse Das Diagramm zeigt eine Gegenüberstellung von den Ergebnissen der Beispiele aus [L3] und den Ergebnissen aus dem erstellten Programm. 100 80 60 40 20 0 Ausnutzung laut Literatur Ausnutzung laut Anwendung Abbildung 72 Vergleich der Beispiele Anhand des Diagramms wird deutlich, dass das Programm Ergebnisse lefert, die sehr nah an den Ergebnissen der Beispiele aus [L3] liegen. Kleine Unterschiede sind auf Rundungsfehler zurückzuführen. Lediglich im Beispiel 2 und 5.2 ist ein größerer Unterschied festzustellen. Im Beispiel 2 liegt der Unterschied an den verschiedenen Möglichkeiten MV,y,Rd zu berechnen (siehe Abbildung 73). In [L3] wird die Variante a) und im erstellten Computerprogramm wird die Variante b) genutzt. Abbildung 73 Bestimmung Mv,y,Rd [L3, S. 8.18] Im Beispiel 5.2 wurde der Interaktionsbeiwert kzy auf unterschiedliche Weise berechnet. Das Beispiel aus [L3] legt Tabelle 16 und das erstellte Programm legt Tabelle 15 zu Grunde. 7 Zusammenfassung -97- 7 Zusammenfassung In der vorliegenden Bachelorarbeit sollte eine Anwendung erstellt werden, die zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 dient. Dies soll die Arbeit mit den durch die Einführung der europäischen Norm neuen Bemessungsregeln erleichtern. Das Programm soll einfach zu bedienen sein und die Ergebnisse übersichtlich darstellen. Die Bemessungsregeln für die Nachweisführung wurden aufgezeigt. Dazu gehören die Einteilung der Querschnitte in eine der 4 Querschnittsklassen sowie die Berechnungen im Grenzzustand der Tragfähigkeit nach den Bemessungsalgorithmen. Daraus wurden Struktogramme entwickelt, die die Programmierung vereinfacht haben. Um ein Computerprogramm entwickeln zu können, ist es in der Regel notwendig, eine Programmiersprache zu beherrschen. Damit Grundzüge verstanden werden, enthält dieses Bachelorprojekt eine Einführung in die Programmiersprache C++. Dabei wurde aufgezeigt, wie ein Programm erstellt wird. Es wurde gezeigt, mit welchen Strukturen ein Programm erstellt werden kann. In diesem Projekt wurde als Programmierumgebung das Programm Visual Studio 2010 von Microsoft genutzt. Der darin enthaltene Entwurfsmodus und die automatische Erstellung von Quelltext zur Erstellung von verschiedenen Steuerelementen erleichterte die Programmierung. Das erstellte Programm wurde in diesem Projekt vorgestellt. Durch die Möglichkeit, eine Datenbank in das Programm einzubinden, müssen für den Nachweis von Stahlbauteilen die benötigten Profilinformationen nicht mehr mühsam gesucht werden. Diese werden mit dem Aussuchen eines Profils automatisch in das Programm eingebunden. Ein kleiner Leitfaden gibt darüber Auskunft, wie im Hauptmenü des Programms zu verfahren ist. Über eine eingefügte Menüleiste können die gewünschten Nachweise ausgewählt werden. Diese werden dann in separaten Fenstern angezeigt. Alle Ergebnisse können mit Hilfe von Microsoft Word in einem neuen Dokument ausgegeben werden. Dies vereinfacht die weitere Nutzung der Daten. Eine kurze Versionsgeschichte zeigt die Veränderungen während der Entwicklung, sowie die Möglichkeiten zur Erweiterung des Programms. Mit dem Programm wurden einzelne theoretische Beispiele nachgerechnet und danach miteinander verglichen. Der Vergleich zeigt, dass die Berechnungen des Programms sehr nah an den Ergebnissen der Beispiele liegen. Unterschiede sind größtenteils auf Rundungsungenauigkeiten zurückzuführen. Abschließend ist festzustellen, dass das entwickelte Computerprogramm seiner Aufgabe gerecht wird und es zur Nachweisführung von Stahlbauteilen genutzt werden kann. Abbildungsverzeichnis -98- Abbildungsverzeichnis Abbildung 1 Zugbeanspruchungsnachweis ..........................................................................10 Abbildung 2 Druckbeanspruchungsnachweis .......................................................................10 Abbildung 3 Nachweis der Biegebeanspruchung..................................................................11 Abbildung 4 Querkraftnachweis ............................................................................................12 Abbildung 5 Nachweis der Biegung um y-Achse für I- und U-Querschnitte (QK 1, 2) ...........15 Abbildung 6 Nachweis der Biegung um z-Achse für I- und U-Querschnitte (QK 1, 2) ...........16 Abbildung 7 Nachweis der Biegung um y-Achse für rechteckige Hohlquerschnitte (QK 1, 2)17 Abbildung 8 Nachweis der Biegung um z-Achse für rechteckige Hohlquerschnitte (QK 1, 2)18 Abbildung 9 Nachweis der Biegung für Rundrohre (QK 1, 2) ................................................19 Abbildung 10 Nachweis der Biegung für I-Querschnitte (QK 3) ............................................20 Abbildung 11 Nachweis der Biegung für andere Querschnitte (QK 3)...................................21 Abbildung 12 Nachweis der Biegung für alle Querschnitte (QK 4) ........................................22 Abbildung 13 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 1, 2) .....................23 Abbildung 14 Nachweis zweischsiger Biegung für alle Querschnitte (QK 3) .........................24 Abbildung 15 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 4) .........................25 Abbildung 16 Nachweis Biegeknicken ..................................................................................27 Abbildung 17 Knicklängenbeiwerte einfacher Stäbe .............................................................28 Abbildung 18 Knicklinien ......................................................................................................28 Abbildung 19 Nachweis BDK ................................................................................................31 Abbildung 20 Stabilität Druck und Biegung ...........................................................................34 Abbildung 21 einfache Anweisungen ....................................................................................38 Abbildung 22 kopfgesteuerte Schleife ..................................................................................38 Abbildung 23 fußgesteuerte Schleife ....................................................................................38 Abbildung 24 einfache Alternative ........................................................................................39 Abbildung 25 mehrfache Alternative .....................................................................................39 Abbildung 26 Beispiel Struktogramm ....................................................................................40 Abbildung 27 MS Visual Studio 2010 Startseite ....................................................................49 Abbildung 28 Erstellen eines neuen Programms ..................................................................50 Abbildung 29 Projektmappen-Explorer und Formular 1 ........................................................51 Abbildung 30 Kopfzeile der Eigenschaftsliste .......................................................................55 Abbildung 31 kleine Anwendung vor Druck auf den Button ..................................................56 Abbildung 32 kleine Anwendung nach Druck auf den Button ................................................57 Abbildung 33 Eigenschaften des Projekts.............................................................................59 Abbildung 34 Hauptmenü von Nachweisführung nach DIN EN 1993 ....................................61 Abbildung 35Hauptmenü mit Beispiel ...................................................................................63 Abbildung 36 Entwurf des Formulars für Nachweis der Zugbeanspruchung .........................64 Abbildung 37 Struktogramm für Nachweis der Zugbeanspruchung ......................................64 Abbildung 38 Formular mit Beispiel ......................................................................................64 Abbildung 39 Struktogramm für Druckbeanspruchung..........................................................66 Abbildung 40 Formular für Druckbeanspruchung..................................................................66 Abbildung 41 Struktogramm für Nachweis der Biegung ........................................................67 Abbildung 42 Formular für Nachweis der Biegung ................................................................67 Abbildung 43 Struktogramm für Nachweis der Querkraft ......................................................68 Abbildungsverzeichnis -99- Abbildung 44 Formular für Nachweis der Querkraft ..............................................................68 Abbildung 45 Struktogramm für Nachweis von Querkraft und Torsion ..................................69 Abbildung 46 Struktogramm für Nachweis der Biegung um y-Achse (I-Profile) .....................70 Abbildung 47 Struktogramm für Nachweis der Biegung um y-Achse (Hohlprofile) ................71 Abbildung 48 Struktogramm für Nachweis der Biegung um y-Achse (Rohrquerschnitte) ......71 Abbildung 49 Struktogramm für Nachweis der Biegung um y-Achse (QK 3; I-Profile) ...........72 Abbildung 50 Struktogramm für Nachweis der Biegung um y-Achse (QK 3; andere Profile) .72 Abbildung 51 Struktogramm für Nachweis der Biegung um y-Achse (QK 4) .........................72 Abbildung 52 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; I-Profile) .......74 Abbildung 53 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; Hohlprofile) ..74 Abbildung 54 Struktogramm für Nachweis der Biegung um z-Achse (QK 1, 2; Rohrprofile) ..75 Abbildung 55 Struktogramm für Nachweis der Biegung um z-Achse (QK 3; I-Profile) ...........75 Abbildung 56 Struktogramm für Nachweis der Biegung um z-Achse (QK 3; andere Profile) .75 Abbildung 57 Struktogramm für Nachweis der Biegung um z-Achse (QK 4) .........................76 Abbildung 58 Struktogramm für den Nachweis zweiachsiger Biegung (QK 1, 2) ..................77 Abbildung 59 für den Nachweis zweiachsiger Biegung (QK 3) .............................................77 Abbildung 60 für den Nachweis zweiachsiger Biegung (QK 4) .............................................78 Abbildung 61 Formular zum Stabilitästnachweis (Druck) ......................................................79 Abbildung 62 Struktogramm zum Stabilitätsnachweis (Druck) ..............................................79 Abbildung 63 Formular zum Stabilitätsnachweis (Biegung) ..................................................80 Abbildung 64 Struktogramm zum Stabilitätsnachweis (Biegung) ..........................................81 Abbildung 65 Formular zum Stabilitätsnachweis (Druck und Biegung) .................................82 Abbildung 66 Struktogramm zum Stabilitätsnachweis (Druck und Biegung) .........................83 Abbildung 67 Beispielrechnung 1 .........................................................................................86 Abbildung 68 Beispielrechnung 2 .........................................................................................88 Abbildung 69 Beispielrechnung 3 .........................................................................................90 Abbildung 70 Beispielrechnung 4 .........................................................................................91 Abbildung 71 Beispielrechnung 5 .........................................................................................93 Abbildung 72 Vergleich der Beispiele ...................................................................................96 Abbildung 73 Bestimmung Mv,y,Rd .........................................................................................96 Tabellenverzeichnis -100- Tabellenverzeichnis Tabelle 1 Querschnittsklassen............................................................................................... 5 Tabelle 2 Klassifizierung druckbeanspruchter Querschnittsteile ............................................ 6 Tabelle 3 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) ...................... 7 Tabelle 4 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) ...................... 8 Tabelle 5 Wirksame Schubflächen Av ...................................................................................12 Tabelle 6 Berechnung Querkraftbeanspruchbarkeit mit Torsion ...........................................13 Tabelle 7 Bestimmung der Konstanten Alpha und Beta .......................................................22 Tabelle 8 Imperfektionsbeiwerte ...........................................................................................28 Tabelle 9 Auswahl der Knicklinie ..........................................................................................29 Tabelle 10 Widerstandsmoment ...........................................................................................30 Tabelle 11 empfohlene Imperfektionsbeiwerte .....................................................................32 Tabelle 12 empfohlene Biegedrillknicklinien .........................................................................32 Tabelle 13 empfohlene Korrekturbeiwerte ............................................................................32 Tabelle 14 Momentenbeiwert ...............................................................................................33 Tabelle 15 Interaktionsbeiwerte für verdrehsteife Bauteile ....................................................35 Tabelle 16 Interaktionsbeiwerte für verdrehweiche Stäbe.....................................................35 Tabelle 17 Äquivalente Momentenbeiwerte ..........................................................................36 Tabelle 18 Werte für NRk, Mi,Rk und ∆Mi,Ed .............................................................................36 Tabelle 19 Wichtige Headerdateien der C++-Standardbibliothek ..........................................41 Tabelle 20 Wichtige .NET-Namespaces ...............................................................................42 Tabelle 21 Die wichtigsten elementaren Datentypen ............................................................43 Tabelle 22 Ausgesuchte Operatoren ....................................................................................44 Tabelle 23 Methoden der Hauptdatei....................................................................................52 Tabelle 24 Eigenschaften von Formularen ...........................................................................53 Tabelle 25 Steuerelemente...................................................................................................54 Tabelle 26 Ereignisse – allgemein ........................................................................................57 Tabelle 27 Ereignisse spezifisch ..........................................................................................57 Tabelle 28 Inhalt der Comboboxen .......................................................................................61 Tabelle 29 Menüpunkte ........................................................................................................62 Tabelle 30 effektive Querschnittsfläche ................................................................................65 Literaturverzeichnis -101- Literaturverzeichnis a) Literatur [L1] Schneider, K.-J.; Goris, A.: Bautabellen für Ingenieure, 19. Auflage, Werner Verlag, Köln 2010 [L2] Louis, D.: Visual C++ 2010, Markt + Technik Verlag, München 2010 [L3] Schneider, K.-J.; Goris, A.: Bautabellen für Ingenieure, 20. Auflage, Werner Verlag, Köln 2012 [L4] Wagenknecht, G.: Stahlbau-Praxis, Band 1, 3. Auflage, Bauwerk Verlag, Berlin 2009 b) Normen [N1] DIN EN 1990 Grundlagen der Tragwerksplanung, Ausgabe 12/2010 [N2] DIN EN 1993-1-1 Bemessung und Konstruktion von Stahlbauten – Teil 1-1: Allgemeine Bemessungsregeln und Regeln für den Hochbau, Ausgabe 12/2010 [N3] DIN EN 1993-1-1 NA Nationaler Anhang – National festgelegte Parameter – Eurocode 3: Bemessung und Konstruktion von Stahlbauten – Teil 1-1: Allgemeine Bemessungsregeln und Regeln für den Hochbau, Ausgabe 12/2010 [N4] DIN 66261 Sinnbilder für Struktogramme nach Nassi-Shneiderman, Ausgabe 11/1985 c) Programme [P1] Microsoft Visual Studio 2010 Professional [P2] Microsoft Access 2007 [P3] Microsoft Excel 2007 [P4] Microsoft Word 2007 [P5] hus-Struktogrammer Version: 97.05 Delphi32, Hans-Ulrich Steck, 22.03.98 d) Internetquellen [I1] Oliver Thewalt, in: Compiler, URL: http://www.neogrid.de/was-ist/Transcompiler (Stand 01.10.2013) Selbstständigkeitserklärung -102- Selbstständigkeitserklärung Hiermit erkläre ich, dass ich die vorliegende Arbeit selbstständig und nur unter der Verwendung der angegebenen Literatur und Hilfsmittel angefertigt habe. Roßwein, den 07.10.2013 ………………………………. Matthias Maul