CardScript in der Projektbearbeitung

Mit Einführung der Programmiersprache CardScript haben sich für Anwender neue Optionen ergeben, card_1 individuell und projektspezifisch anzupassen sowie Aufgaben effektiv zu bearbeiten. Die Möglichkeiten sind vielfältig und reichen von einfachen Hilfen bis hin zu eigenständigen, komplexen Programmen. Dieser Artikel beschreibt anhand eines Auslandsprojektes, wie bei der Trassierung einer Metro in Indien mithilfe von Skripten Arbeiten erleichtert bzw. die Bearbeitung dadurch erst möglich wurde.

Bhopal ist die Hauptstadt des Bundesstaates Madya Pradesh in Zentralindien mit ca. 1.8 Mio. Einwohnern, während Indore die größte Stadt des Bundesstaates mit ca. 2 Mio. Einwohnern ist. In beiden Städten stützt sich der Nahverkehr auf Stadtbusse, Sammeltaxen, Motorrikschas und Mopeds. Wie in vielen anderen Ballungszentren Indiens ist hier ein anhaltender Trend zur Urbanisierung und Anstieg der Bevölkerung erkennbar. Es ist mit einer Verdoppelung der Einwohnerzahlen in den nächsten 20 Jahren zu rechnen. Um der sich daraus ergebenden wachsenden Nachfrage im ÖPNV gerecht zu werden, hat die Regierung des Bundesstaates beschlossen, in beiden Städten eine Metro zu bauen. Der Auftrag zur Erstellung einer Vorplanung wurde als Generalplaner an die Rohit Associates in Mumbai, Indien vergeben. Als Teil des Projektteams wurde das Ingenieurbüro Weidemann mit der Trassierung der Metro-Netze beauftragt.

Liniennetz

Als Ergebnis umfangreicher Untersuchungen und Planungen zu Nachfrage, Stadtentwicklung etc. wurde ein Liniennetz konzipiert, das in Bhopal aus 6 Linien mit einer Gesamtlänge von ca. 95 km und 86 Stationen besteht. In Indore beträgt die Gesamtlänge der 4 Linien ca. 103 km mit 88 Stationen. Diese werden in überwiegend ebenerdiger oder aufgeständerter Bauweise errichtet. In den Innenstadtbereichen sind wegen Platzmangels und enger Straßenführungen auch Tunnelabschnitte geplant. Das System wird als Light Metro mit Normalspur und Stromschienen sowie fahrerlosen Zügen ausgelegt, siehe Abb. 1.

Aufgabenstellung

Nach Festlegung des Linienkonzeptes war es Aufgabe des Trassierers, dieses in eine nach den Regeln der Fahrdynamik sinnvolle Linienführung umzusetzen und in entsprechenden Plänen zu dokumentieren. Dabei sind auch die Stationen zu fixieren. Dies erfolgte in enger Abstimmung mit anderen Fachplanern, wobei auch Modifikationen am Linienkonzept erforderlich waren. Die Festlegung der Trassierungsparameter erfolgte entsprechend der in der Aufgabenstellung enthaltenen Vorgaben für Geschwindigkeit, Überhöhung und Überhöhungsfehlbetrag, unter Zuhilfenahme von Gestaltungskriterien vergleichbarer Metros, nach Fachliteratur und eigenen Erfahrungen.

Lagepläne

Als Ergebnis der Einrechnung waren dabei zwei Arten von Lageplänen zu erstellen:

  • Maßstab 1:4000 mit Luftbildern im Hintergrund als Übersichtsplan
  • Maßstab 1:1000/1:200 mit Darstellung eines Lageplanausschnittes und des zugehörigen Längsschnittes

Bei insgesamt rund 200 km Streckenlänge und 585 Plänen (146 im Maßstab 1:4000 und 439 im Maßstab 1:1000/200) war es eine zwingende Herausforderung, die Arbeit soweit wie möglich zu automatisieren. card_1 bietet zwar mit der Stapelverarbeitung von Achszeichnungen eine Möglichkeit zur Generierung von Zeichnungen, diese Funktion stößt aber in diesem Fall an ihre Grenzen, da z. B. die blattbezogene und damit stationsabhängige Referenzierung von Längsschnitten nicht möglich ist. Diese Funktion wurde daher lediglich für die Erstellung der Rasterbilder bei den Lageplänen 1:4000 genutzt.

Automatisierung per Skript

Für die Erzeugung der Lagepläne wurde eine andere Vorgehensweise angewendet, bei der verschiedene Skripte zum Einsatz kommen. Mit deren Hilfe werden folgende Arbeitsschritte automatisiert:

  • Erstellung der Blattschnitte
  • Generierung von Einfügedateien für stationsabhängige Zeichnungselemente (Bahnsteige, Texte)
  • Erzeugen der Achszeichnungen mit referenziertem Längsschnitt

Neben den Lageplänen waren auch Schemapläne mit Darstellung der Entwurfsgeschwindigkeit, der Fahrschaulinie, des Streckenbandes und der wesentlichen Trassierungsparameter zu erstellen. Da card_1 hierfür keine eigenständige Lösung anbietet, wurde diese Aufgabe mithilfe eines frei definierten Bandes als Längsschnitt gelöst. Auch hier kamen entsprechende Skripte zum Einsatz.

Der Arbeitsablauf für die Erstellung der Lagepläne und die Funktion der einzelnen Skripte werden in den folgenden Abschnitten beschrieben. Bei den Skripten ist zu unterscheiden zwischen eigenständigen Skripten, etwa die Generierung von Blattschnitten entlang einer Achse, allgemein gültigen Funktionsbibliotheken, z. B. für die Auswertung von Stationslisten und Abschnittsbändern für den Lageplan und achsbezogene / projektspezifische Skripte (mit Nutzung der Funktionsbibliotheken) zur Generierung der Zeichnungen.

Arbeitsablauf

Der Arbeitsablauf für die Erstellung der Lagepläne gliedert sich für jede Achse ( Metrolinie) in folgende Schritte:

  • Generierung der Blattschnitte mit CardScript
  • Erstellung Bestandslageplan (global)
  • Erstellung Vereinbarung für Achszeichnung (global)
  • Generierung Achszeichnung (global) mit CardScript
  • Erstellung Vereinbarung für Längsschnittzeichnung (nur M 1:1000/200)
  • Generierung Rasterbilder über Stapelvereinbarung (nur M 1:4000)
  • Erstellung Vereinbarung für Achszeichnung
  • Generierung Achszeichnung (blattschnittweise) mit CardScript

Die Erzeugung der Längsschnittzeichnung erfolgt dabei zusammen mit der Achszeichnung im letzten Schritt.

Zeichnungsstruktur

Für die zu erstellenden Blattschnitte, Zeichnungen und Layer ist eine Struktur festzulegen. Zur eindeutigen Zuordnung der Referenzen sind dabei die Achsnummer und eine fortlaufende Nummer, z. B. beim Blattschnitt, enthalten, siehe Abb. 2. Zentraler Bestandteil ist die einzelne Achszeichnung. Diese enthält neben dem Rahmen und dem blattbezogenen Layer der Achszeichnung Referenzen zu dem Layer der globalen Achszeichnung und zum Längsschnitt der zugehörigen Längsschnittzeichnung, siehe Abb. 3. Zusammengefasst werden die einzelnen Achszeichnungen in einer Sammeldatei.

Blattschnitte generieren

In der Regel werden die für die Zeichnungen notwendigen Blattschnitte mithilfe der Funktionsgruppe „Zeichnungen / Blattschnitte bearbeiten“ am Bildschirm einzeln definiert. Bei einer Menge von fast 600 zu definierenden Blattschnitten mit gleichem Format ist es jedoch sinnvoller, diese Arbeit mittels eines Skriptes durchzuführen. Dieses erzeugt Blattschnitte gleicher Größe entlang einer Achse mit vorgegebenem maximalem Stationsabstand. Dabei wird ein mindestens freizuhaltender Randabstand (Abstand Achse zum Rand der Achszeichnung) berücksichtigt, siehe Abb. 4, 5.

Die Größe des Blattschnittes ist mit dem verwendeten Zeichnungsrand abzustimmen. Für die Lagepläne 1:1000/200 wurde eine Zeichnungsfläche DIN A2 benutzt mit einer Höhe von 42,0 cm. Für Schriftfeld und Zeichenfläche Längsschnitt sind insgesamt 26,5 cm notwendig, so dass sich unter Berücksichtigung der Zeichnungsränder von jeweils 0,5 cm eine Höhe von 14,5 cm für den Blattschnitt des Lageplanes ergibt. Das Maß von 26,5 cm wurde als Freiraum unten bei der Definition des Zeichnungsrandes berücksichtigt. Bei extrem kurvigem Achsverlauf wird der darzustellende Bereich in vorgegebenen Schritten verkleinert, bis dieser in den Blattschnitt passt. Aus den sich ergebenen Stationen der Blattschnitte wird eine Stationsliste erzeugt, die im weiteren Verlauf für die Definition der Stationsbereiche des Längsschnittes genutzt wird.

Achszeichnung (global)

Die mittels des globalen Blattschnittes erzeugte Achszeichnung enthält Achsen, Elementbeschriftung, Bahnsteige mit Beschriftung etc. Sie allein ist für die Darstellung und Beschriftung der einzelnen Achsen, Bauwerke und Stationen zuständig.

Bei der Beschriftung ist zu beachten, dass der globale Blattschnitt einen Maßstab von 1:100 aufweist, während die Achszeichnungen hier einen von 1:1000 aufweisen. Alle Texte sind entsprechend zu gestalten.

Mithilfe der Skriptsprache werden dabei Informationen, die in Stationslisten und Abschnittsbändern enthalten sind, ausgelesen und in Zeichenanweisungen für die Achszeichnung übersetzt. Damit lassen sich z. B. Bahnsteige, Höheninformationen (aufgeständert, ebenerdig oder unterirdisch) automatisch generieren. Diese werden als achsbezogene Textdateien (Einfügedateien) abgespeichert und in der Vereinbarung für die Achszeichnung berücksichtigt.

Die Steuerung der Darstellung erfolgt bei den Abschnittsbändern über den Paramater „Wert“. Bei den Stationslisten ist optional die Ausgabe des Kommentars als Text möglich, siehe Abb. 6.

Gegenüber anderen Metro-Netzen werden hier teilweise mehrere Linien abschnittsweise gebündelt, insbesondere im Innenstadtbereich. Dadurch wird eine höhere Taktdichte und eine Steigerung der Leistungsfähigkeit erreicht. In der Darstellung bedeutet dies, dass jede Linie (Achse) durchgehend zu stationieren ist, z. B. für Fahrzeitenberechnung, in den Plänen aber nur die Stationswerte der dort dargestellten Achse anzugeben sind, um Irritationen zu vermeiden. Demzufolge sind die Layer der globalen Achszeichnung so zu strukturieren, dass die Beschriftung auf eigenen Layern liegt, siehe Abb. 7.

Mittels eigens geschriebener Funktionen lassen sich auch die Texte bei der Elementbeschriftung ersetzen. So wird im englischen Sprachraum der Übergangsbogen nicht mit UA und UE beschriftet, sondern mit TS, SC, CS, ST und SS (bei Wendeklothoiden).

Achszeichnung (blattbezogen)

Nachdem die Blattschnitte und die globale Achszeichnung erzeugt wurden, wird zum Abschluss der eigentliche Lageplan (ggf. mit dem zugehörigen Längsschnitt) erstellt. Das eigentliche Skript beinhaltet lediglich die Achsnummer, einige Textvariablen für Titel und Bearbeiter, den Funktionsaufruf zur Erstellung des Längsschnittes und eine Schleife zur Erzeugung der Lagepläne mittels Funktionsaufruf. Weitere Textvariablen zur Angabe der Kilometer (von – bis) und der Blattnummer werden automatisch generiert.

Blattbezogene Layer werden ausschließlich für das Gitternetz, den Nordpfeil und die Blattbegrenzungen erzeugt, gegebenenfalls ergibt sich die Notwendigkeit einer Nacharbeit mit Verschiebung des Nordpfeiles und von Texten zur besseren Lesbarkeit.

Insbesondere die Funktionen zur Erstellung der Achszeichnung sind projektspezifisch anzufertigen, da die zu berücksichtigenden Achsen und Layer variabel sind. Wenn die Achsnummer jedoch als Variable verwendet wird, kann die Funktion in der Regel für alle Achsen des Projektes genutzt werden, siehe Abb. 8, 9 und 10.

Schematischer Übersichtsplan

Für die bei der Planung von Schienenwegen immer wiederkehrende Aufgabe, schematische Übersichtspläne mit Darstellung der Entwurfsgeschwindigkeit, einer Streckenskizze sowie der Trassierungswerte nach Lage und Höhe zu erstellen, sind entsprechende Skripte ein gutes Mittel, sich die Arbeit etwas leichter zu machen. Zusätzlich kann die Fahrschaulinie als Ergebnis der Fahrzeitenberechnung dargestellt werden. Der schematische Übersichtsplan wird als Längsschnitt erzeugt. Dabei wird für die Darstellung der Geschwindigkeiten und der Skizze die Möglichkeit für frei definierbare Bänder im Längsschnitt genutzt, siehe Abb. 11.

Auch hier werden die bereits vorliegenden Informationen aus Stationslisten und Abschnittsbändern genutzt, um z. B. Bahnsteige darzustellen. Lage und Richtung der Weichen in den beiden Gleisen der Strecke werden ebenfalls dargestellt, so dass sich die manuelle Nacharbeit mit Ergänzung der Gleisverbindung selbst, zusätzlichen Texten etc. in engen Grenzen hält.

Ausgabe für Google Earth

Erfahrungen bei Projekten in Afrika haben gezeigt, dass für einen Informationsaustausch und zur Darstellung der Planung die Plattform Google Earth große Vorteile bietet. Für viele Gebiete sind hochauflösende, aktuelle Luftbilder vorhanden. Daher wird sie auch von vielen Behörden genutzt. Mithilfe von Skripten können Achsen und Informationen aus Stationslisten oder Abschnittsbändern als KML-Datei ausgegeben werden, siehe Abb. 12. Zu beachten ist dabei, dass Google Earth mit dem Referenzsystem WGS 84 arbeitet. Bei Planungen in anderen Systemen ist eine zusätzliche Transformation erforderlich.

Fazit

CardScript ist ein hervorragend geeignetes Werkzeug, Arbeiten effektiv und flexibel auszuführen, erfordert jedoch eine gewisse Einarbeitung in die Programmiersprache. Durch Verwendung fertiger Skripte und Funktionsbibliotheken, die ähnlich wie die Anweisungen für Achszeichnungen selbst genutzt werden können, ist die Bearbeitung selbst für weniger versierte Anwender problemlos durchführbar.

Auftragnehmer:

Ingenieurbüro Weidemann
Max-Planck-Straße 14
91217 Nürnberg
Tel. +49 9151 820-66
E-Mail an Ingenieurbüro Weidemann
www.ib-weidemann.de