Files
kabellaengen/doc/plant.py_docu.md
T

2.2 KiB

Dokumentation der Funktionsweise einzelner Funktionen und Ausgaben aus plant.py bzw. routing.py

Aufbau des Graphen in unterschiedlichen Ausbaustufen

Die nachfolgenden Bilder zeigen den schrittweisen Aufbau des Graphen aus dem System:

  1. Nur Racks

    Graph nur mit Racks

  2. Racks + Sensoren

    Graph mit Racks und Sensoren

  3. Racks + Sensoren + Unterverteiler

    Kompletter Graph mit Racks, Sensoren und Unterverteilern


Funktionsweise ausgewählter Funktionen

Beispiel 1: join_racks

Problematik: Racks sind in dxf-Dateien teileweise nicht formschlüssig aneinander angefügt. -> Echte Schnittpunkte sowie "beinahe" Schnittpunkte im Toleranzbereich müssen identifiziert werden und die Kabeltrassen dort verbunden werden.

Hierfür wird "Toleranz-Kreis" festgelegt, welcher das Rack entlangläuft:

Step 1 Step 2

Bei einem Schnittpunkt des Kreises mit einem anderen Rack, wird der Aufpunkt des gefunden Racks mit dem entlangzulaufenden Rack verbunden und ein Knoten an dieser Stelle erstellt:

Step 3 Step 4

Beispiel 2: connect_sensors_to_racks

Problematik: Sensoren liegen nicht direkt auf Racks und haben keine Information, auf welchem Rack sie am besten angebunden werden.

-> Algorithmus sucht ausgeend von realem Sensor Punkt das nächstgelegene Rack und stelle die kürzeste Vebindung mittels einem "virtuellen Rack" her.

Situation: Horizontales (R1) und vetikales (R2) Rack. Sensor (S) nahe dem Kreuzungspunkt. Step 0

Schritt 1: Zeichnen eines Kreises um den Sensor. Schnittpunkt mit Rack? Step 1

Schritt 2: Wenn kein Schnittpunkt -> vergrößern des Kreises Step 2

Schritt 3: Erzeugung des Aufpunktes auf geschnittenem Rack und verbinden des Aufpunktes mit dem Sensorpunkt via "virtuellem Rack" (vR1) Step 3