hilfsfunktionen module

Dieses Modul beinhalten unterschiedliche Hilfsfunktionen, wie z.B. Stringmanipulationen, Einheitenumrechnungen sowie Berechnungen von Korrekturwerten.

hilfsfunktionen.aus_datei_einlesen(pfad)[Quellcode]

Liest Konfigurations- und Profildateien ein, entfernt die Kommentare welche mit ‚#‘ gekennzeichnet sind und speichert Attribut sowie Wert in einer separaten Liste ab.

Jede Zeile der Datei muss folgende Form ausweisen: attribut:wert

Parameter

pfad (str) – Pfad zum einzulesenden Profil bzw. zu den Grundeinstellungen.

Rückgabe

Gibt ein Tupel (list, list) mit Attributen und Werten zurück.

Rückgabetyp

tuple

hilfsfunktionen.drehzahlkorrektur(gewuenschte_drehzahl, steigung, offset)[Quellcode]

Berechnet die an den CNC-Controller zu sendende Drehzahl über die lineare Regression.

Parameter
  • gewuenschte_drehzahl (int) – Drehzahl in 1/min die der Drehteller

  • soll. (erreichen) –

  • steigung (float) – Steigung der interpolierten Geradengleichung.

  • offset (float) – Offset der interpolierten Geradengleichung.

Rückgabe

Gibt die korrigierte Drehzahl in 1/min zurück.

Rückgabetyp

float

hilfsfunktionen.koordinaten_extrahieren(antwort)[Quellcode]

Splittet den Antwortstring des CNC-Controllers auf, extrahiert Maschinenposition und berechnet daraus die Absolutposition des Roboters.

Parameter

antwort (str) – Antwortstring der Steuerungsplatine.

Rückgabe

Gibt absolute Koordinaten in der Form [x, y, z] (str) zurück.

Rückgabetyp

list

hilfsfunktionen.radius_berechnen(p1, p2, p3)[Quellcode]

Berechnet den Radius eines Kreisbogens anhand von drei gegebenen Punkten im Format [X, Z].

Bemerkung

Quellcode in Anlehnung an https://stackoverflow.com/questions/28910718/give-3-points-and-a-plot-circle zuletzt besucht am 11.01.2022. Authoren: Glorfindel, DieterDP

Parameter
  • p1 (list) – Erster Punkt des Kreisbogens.

  • p2 (list) – Zweiter Punkt des Kreisbogens.

  • p3 (list) – Dritter Punkt des Kreisbogens.

Rückgabe

Gibt den Radius (float) des Kreisbogens zurück.

Rückgabetyp

float

hilfsfunktionen.status_extrahieren(controller_antwort)[Quellcode]

Splittet den Antwortstring des CNC-Controllers auf und speichert die Bestandteile in eine Liste.

Parameter

controller_antwort (str) – Antwortstring der CNC-Steuerungsplatine.

Rückgabe

Gibt den Gerätestatus zurück z.B. ‚Idle‘, ‚Run‘, ‚Alarm‘…

Rückgabetyp

str

hilfsfunktionen.winkel_korrektur(winkel)[Quellcode]

Berechnet die relativen Korrekturkoordinaten, wenn der Winkel des Reinigungskopfes vom Standard (22.7°) abweicht.

Bemerkung

Das Ergebnis wird zum Reinigunsstartpunkt als Offset dazu addiert.

Parameter

winkel (float) – Verstellwinkel des Reinigungskopfes in Grad.

Rückgabe

Gibt ein Tupel (float, float) mit X- und Z-Korrekturwert zurück.

Rückgabetyp

tuple

hilfsfunktionen.winkel_zu_pulsweite(winkel, us_pro_grad)[Quellcode]

Rechnet den gewünschten Einstellwinkel des Servos in die Pulsweite des PWM-Signales um.

Parameter
  • winkel (float) – Einzustellender Winkel in Grad.

  • us_pro_grad (float) – Umrechnungsfaktor

Rückgabe

Gibt die Pulsweite in \({\mu s}\) zurück.

Rückgabetyp

float

hilfsfunktionen.zeitstempel()[Quellcode]

Erstellt einen aktuellen Zeitstempel (GMT), welcher an den Dateinamen der zu speichernden Profildatei angehängt wird, damit keine Profildatei überspeichert wird.

Beispiel für eine Ausgabe: 1671810993

Rückgabe

Aktueller Zeitstempel als Unixtime.

Rückgabetyp

str