Anschlussleitungen berücksichtigen

Letzte Änderung mit MIKE URBAN Version 2017 SP2 und ET GeoWizards 12.

Die Anleitung für den Import mit ET GeoWizards 11 finden Sie hier.

Die Anleitung für die MIKE URBAN Version 2009 finden Sie hier.

Einleitung

MIKE URBAN bietet verschiedene Methoden an, den zu einem Hausanschluss passenden Knoten des Versorgungsnetzes zu finden. Dabei wird die räumlichen Nähe zur nächsten Leitung oder zum nächsten Modellknoten genutzt. Im Allgemeinen ist diese Zuordnung ausreichend genau.

Nun gibt es aber zunehmend Netzbetreiber, die in ihrem Netzinformationssystem auch die Anschlussleitungen verwalten. Diese Anschlussleitungen geben eigentlich genau vor, wie die Hausanschlüsse mit dem Versorgungsnetz zu verbinden sind, und sind daher einer Zuordnung über die Nähe zur nächsten Leitung oder zum nächsten Modellknoten vorzuziehen.

Im Folgenden wird eine Routine beschrieben, um diese Information in MIKE URBAN zu berücksichtigen. Sie läuft in zwei Teilen ab:

Im Teil A wird das Punktthema Hausanschlüsse mit dem Feld "Zielknoten" versehen. In dieses Feld wird der Netzknoten eingetragen, der dem Anfang der Anschlussleitung am nächsten liegt.

Im Teil B wird das Punktthema "Hausanschlüsse" unter Berücksichtigung des Feldes "Zielknoten" nach MIKE URBAN importiert.

Was Sie benötigen

Software

Sie benötigen entweder eine lizenzierte Version der ET GeoWizards (ET SpatialTechniques) oder eine ArcInfo-Lizenz.

Daten

Die Methode nutzt die Tabellen mw_Pipe und mw_Junction aus der MIKE URBAN Datenbank.

Weiters benötigen Sie ein GIS-Thema (Punkte) mit den Hausanschlüssen, das den Wasserverbrauch enthält.

Schließlich benötigen Sie ein GIS-Thema (Polylinien) mit den Anschlussleitungen.

Teil A: Schreiben der Zielknoten Schritt für Schritt

MIKE URBAN

(1) Da die Tabellen "mw_Pipe" und "mw_Junction" benötigt werden, muss das Versorgungsnetz vorab bereits nach MIKE URBAN importiert oder in MIKE URBAN neu aufgebaut worden sein. Dieser Schritt muss vollendet sein, bevor Sie also mit der Zuordnung der Hausanschlüsse beginnen können.

(2) Führen Sie eine Fehlerprüfung 1) zu finden im Menü Werkzeuge der Rohre (Pipes) durch. Dabei werden in der Tabelle "mw_Pipes" die Felder FROMNODE und TONODE erstellt und befüllt, welche von der Routine benötigt werden.

(3) Schließen Sie MIKE URBAN.

Dateimanager

(4) Erstellen Sie ein temporäres Verzeichnis, beispielsweise mit Namen "temp1". Einerseits werden als Teil der Routine alle Shape-Dateien in diesen Ordner geladen, die während der Berechnungen entstehen. Andererseits kopieren Sie nun in diesen Ordner die bereits erwähnten, benötigten Daten:

die aktuelle MIKE URBAN Datenbank (aus der Sie später mw_Pipes und mw_Junction laden)

ein Shapefile, das die Hausanschlüsse beinhaltet

ein Shapefile, das die Anschlussleitungen beinhaltet

ArcCatalog

(5) Gehen Sie im ArcCatalog zu dem Ordner "temp1" den Sie erstellt haben und ändern Sie hier den Namen des Hausanschlüsse-Shapefile zu "Hausanschluss". Den Namen des Anschlussleitungen-Shapefiles ändern Sie zu "Anschlussleitung".

ArcMap Karte

(6) Erstellen Sie in ArcMap eine neue Karte.

(7) Klicken Sie auf "Daten hinzufügen". Im geöffneten Dialogfeld klicken Sie rechts oben auf "mit Ordner verbinden". Navigieren Sie nun zum erstellten "temp1" Ordner, klicken Sie auf "OK" und navigieren Sie unter "Suchen in" zum neu verbundenen Ordner. Fügen Sie aus Ihrer MIKE URBAN Datenbank die Knoten (mw_Junction) und Rohre (mw_Pipe) hinzu.

(8) Fügen Sie das Punktthema "Hausanschluss.shp" hinzu und das Polylinienthema "Anschlussleitung.shp" - ebenfalls aus dem "temp1" Ordner. Stellen Sie sicher, dass keine Hausanschlüsse ausgewählt sind, andernfalls werden nur die ausgewählten Hausanschlüsse mit einem Zielknoten versehen. In ArcMap sollte Ihr Inhaltsverzeichnis nun jenem entsprechen, welches Sie auf folgendem Foto sehen können.

Die nächsten Bearbeitungsschritte können Sie automatisch im Python-Fenster abarbeiten lassen. Der Code funktioniert ab MIKE URBAN 2010/ArcGIS 10.0, nicht aber in älteren Versionen.

(9) Blenden Sie in ArcMap das Python-Fenster ein (Menü Geoprocessing > Python)

(10) Kopieren Sie den passenden Code aus einem der beiden Links und fügen Sie diesen in einen Texteditor ein. Jene Zeilen die im Code mit "#" beginnen, dienen als Erklärung für die nächsten Schritte in Python und haben daher nur informativen Charakter.

Wenn Sie die lizenzierte Version der ET GeoWizards12 haben, finden Sie hier den Python Code.

Wenn Sie über eine lizenzierte ArcInfo verfügen, finden Sie hier den richtigen Python Code.

(11) Adaptieren Sie den Code im Texteditor.

In der Codezeile 6 Pfad_Workspace müssen Sie den vollständigen Pfad zu Ihrem temporären Arbeitsverzeichnis angeben (siehe Schritt 4). Pfadangaben werden in Python folgendermaßen getrennt:

Forward Slash (/)

Doppelter Backslash (\)

r"Pfadangabe mit Backslash"

Pfad_Workspace = "E:/Projekte/MeinProjekt"
Pfad_Workspace = "E:\Projekte\MeinProjekt"
Pfad_Workspace = r"E:\Projekte\MeinProjekt"

Wenn Sie mit ET GeoWizards 12 arbeiten, müssen Sie außerdem noch Codezeile 7 adaptieren.

In Codezeile 7 etgwPath müssen Sie den vollständigen Pfad zur ET-Installationsdatei (run.exe) angeben

etwgPath = r"C:\Program Files\ETSpatialTechniques\ETGeoWizards\ETGWRun.exe"

(12) Fügen Sie den adaptierten Text im Python-Fenster ein.

(13) Sie starten die Befehle, indem Sie den Mauscursor ans Ende des Textblocks setzen und zwei Mal <Enter> drücken. Der ganze Textblock wird nun abgearbeitet. In der Statusleiste im unterer Rand des ArcMap-Fensters wird der gerade ausgeführte Befehl gezeigt, im rechten Teil des Python-Fensters können Sie den Gesamtfortschritt verfolgen. Fehlermeldungen werden rot, Warnungen gelb geschrieben.

Dass ArcMap fertig ist, erkennen Sie daran, dass der Curser unten im Python-Fenster blinkt und auf eine weitere Eingabe wartet. In ArcMap werden im Laufe der Bearbeitung etlichen neue Layer hinzugefügt.

(14) Öffnen Sie die Attributtabelle des Themas "Hausanschluss" und kontrollieren Sie, ob Sie ganz rechts eine Spalte "Zielknoten" finden, in der KnotenIDs stehen.

(15) Schließen Sie ArcMap.

Dateimanager und ArcCatalog

(16) Verschieben Sie im ArcCatalog die Datei Hausanschluss.shp in jenen Ordner zurück, in dem Sie gearbeitet haben, bevor Sie "temp1" erstellt haben. Hausanschluss.shp mit der neuen Tabellenspalte "Zielknoten" ist die einzige Datei, die Sie aus dem "temp1" Ordner benötigen. Nach erfolgreichem Verschieben, können Sie den gesamten Ordner "temp1" und die .mxd-Datei in der Sie gearbeitet haben wieder löschen.

Teil B: Import der Hausanschlüsse Schritt für Schritt

MIKE URBAN

(1) Öffnen Sie die MIKE URBAN-Datenbank mit dem Versorgungsnetz.

(2) Starten Sie im Menü "Datei" den "Import/Export..." und gehen Sie mit "Next" zum nächsten Schritt.

(3) Erstellen Sie mit dem Assistenten oder mit dem Spezialeditor einen Import, der Ihr Hausanschlussthema der Tabelle mw_DemAlloc zuordnet.

(4) Entscheidend ist, dass Sie in den Feldzuordnungen das Feld "Zielknoten" dem Feld "JunctionID" zuordnen. Die übrigen Feldzuordnungen hängen davon ab, wie Ihr Hausanschluss-Datensatz insgesamt aussieht.

(5) Drücken Sie links unten auf die Schaltfläche "Ausführen und Schließen". Falls die Schaltfläche anders heißt, können Sie die Funktion der Schaltfläche mit dem Pfeil-nach-unten ändern.

Die Hausanschlüsse sind importiert worden. Die schwarzen Linien zeigen die Zuordnung zum Zielknoten. Im Hintergrund ist hellblau das Thema "Anschlussleitungen" eingeblendet.

Technische Details

Die Routine erfasst Hausanschlüsse, die an Anschlussleitungen sitzen. Hausanschlüsse, die irrtümlich oder absichtlich direkt an Versorgungsleitungen sitzen, gehen verloren.

Die Routine hat an zwei Stellen Toleranzen eingebaut, falls die Enden der Anschlussleitungen nicht genau geschnappt worden sind.

In der Codezeile 8 wird ein Buffer mit dem Radius 0,1 m um die Anschlussleitungen gezogen, um alle Anschlussleitungen, die gemeinsam in eine Versorgungsleitung münden, zu Gruppen zusammenzufassen. Anders gesehen dürfen Anschlussleitungen maximal 0,2 m voneinander entfernt sein, um als eine Gruppe aufgefasst zu werden. Wenn Sie wünschen, ändern Sie diesen Wert:

Bufferdist = 0.1

In Codezeile 9 wird festgelegt, dass eine Anschlussleitung 0,2 m von einer Versorgungsleitung entfernt liegen darf, um noch berücksichtigt zu werden. Wenn Sie wünschen, ändern Sie diesen Wert:

Searchdist = 0.2

Hausanschlüsse, deren Anschlussleitungen größere Abstände aufweisen als die Toleranzgrenze, erhalten keinen Knoten den Versorgungsnetzes zugewiesen. Überprüfen Sie solche Hausanschlüsse und entscheiden Sie selbst, wie weiter vorzugehen ist.

Die Routine braucht für jedes Rohr ein Feld, in dem die Zahl 0 steht und eines, in dem die Zahl 1 steht. Dazu werden die Felder "Coeff3" und "Coeff4" benutzt, und zwar in den Codezeilen 56 bzw. 57. Diese beiden Felder sind von MIKE URBAN für exotische Formen der Bedarfsaufteilung reserviert, werden aber standardmäßig nicht verwendet.

Vorsicht ist geboten, wenn eine Gruppe von Anschlussleitungen an zwei Punkten mit dem Versorgungsnetz verbunden ist, z.B. wenn ein größerer Gebäudekomplex zwischen zwei Straßen steht. In diesem Fall wird nur einer der beiden Anschlusspunkte berücksichtigt, und alle Zähler werden diesem einen Punkt zugeordnet.

Offene Punkte

Erklärung der Befehlszeilen (auf einer separaten Seite)

Skript so verbessern, dass es auch bei einer Auswahl der Hausanschlüsse oder der Anschlussleitungen funktioniert.

Skript so verbessern, dass es nicht alle Anschlussleitungen buffert etc., wenn nur weniger Hausanschlüsse abzuarbeiten sind (z.B. mit Auswahl der Buffer, die einen Hausanschluss enthalten). unter Berücksichtigung des Feldes Anschlussleitung2Punkte2 unter Berücksichtigung des Feldes Anschlussleitung2Punkte2 unter Berücksichtigung des Feldes Anschlussleitung2Punkte2, unter Berücksichtigung des Feldes KEEP_ALLE:/Projekte/MeinProjekt,,,Hausanschluss1Ausführen und SchließenAnschlussleitungBuffer2,,