×
Siemens Industry Online Support
Siemens AG
Beitragstyp: Anwendungsbeispiel Beitrags-ID: 19345644, Beitragsdatum: 17.08.2004
(0)
Bewerten

Berechnung des Abstandes zweier Punkte im Koordinatensystem

  • Beitrag
  • Betrifft Produkt(e)

FRAGE:  
Wie kann ich mit STEP 7 den Abstand "D" zwischen zwei Punkten in einem rechtwinkligen Koordinatensystem berechnen?

ANTWORT:  
Im beiliegenden Programmbeispiel ist die Berechnung des Abstandes "D" zwischen zwei Punkten in einem rechtwinkligen Koordinatensystem realisiert. Die berechneten Abstände (Rückgabewerte "RET_VAL") werden nacheinander in einem Datenbaustein abgelegt. Das Programm im FC10 besteht aus zwei Teilen:

  • Teil 1:
    Für die Berechnung der Abstände zwischen den beiden Punkten erwartet FC10 bei den Eingangsparametern die Koordinaten X1 und Y1 für Punkt 1 und die Koordinaten X2 und Y2 für den Punkt 2. Der Ausgangsparameter RET_VAL liefert den berechneten Abstand der beiden Punkte zurück. Die Eingangsvariablen X1, X2, Y1 und Y2 sowie die Ausgangsvariable RET_VAL sind vom Typ REAL.

Bild 1: Berechnung Abstand "D" zwischen Punkt 1 und Punkt 2

  • Teil 2:
    Hier werden die RET_VAL-Werte (berechneten Abstände) in den Datenbaustein DB10 gespeichert. Der DB10 hat 10 Adressen (DB10.DBD0, DB10.DBD4, ...). Jede Adresse ist für je einen RET_VAL-Wert reserviert. Ist eine Adresse schon mit einem RET_VAL-Wert belegt, wird der neue (geänderte) Ret_Val-Wert in die nächste Adresse eingetragen. Im FC10 erfolgt zunächst die Abfrage, welche nächste freie Adresse im DB10 zur Verfügung steht. Ist diese ermittelt, wird der neue aktuelle RET_VAL-Wert in diese Adresse (außer der Wert Null) eingetragen und das Programm beendet. 
    Der eingetragene RET_VAL-Wert wird nicht überschrieben, und der nächste neue, sich ändernde RET_VAL-Wert wird dann in die nächste Adresse geschrieben. Sind alle 10 Adressen im DB10 belegt, muss für den DB10 in FC10 ein Reset durchgeführt werden. Alle Adressen im DB10 werden dann auf Null gesetzt.

FC10 wird im OB1 aufgerufen und wie folgt parametriert:

Bild 2: Aufruf FC10 im OB1

Der beigefügte Download enthält das STEP 7 Projekt mit den oben beschriebenen Bausteinen zur Berechnung des Abstandes zwischen zwei Punkten in einem rechtwinkligen Koordinatensystem.

Ab_stand_Koor.exe

Kopieren Sie die Datei "Ab_stand_Koor.exe" in ein separates Verzeichnis und starten Sie die Datei anschließend per Doppelklick. Das STEP 7 V5.2 Projekt wird jetzt automatisch mit allen dazugehörigen Unterverzeichnissen entpackt. Anschließend können Sie das entpackte Projekt mit dem SIMATIC Manager öffnen und bearbeiten.

Ablauffähigkeit und Testumgebung:
Das Beispiel ist einsetzbar auf allen CPU Varianten der SIMATIC S7-300 und S7-400.
In folgender Tabelle sind die Komponenten aufgeführt,  mit denen dieser Beitrag erstellt und die beschriebene Funktionsweise verifiziert wurde: 

Testumgebung                  Version                                                    
PC Plattform PG 740 Pentium III
PC-Betriebssystem Microsoft Windows 2000 SP3
STEP 7 STEP 7 V5.2 SP1
Optionspakete S7-PLCSIM V5.2

Suchbegriffe:
Pythagoras 


Securityhinweise
Um technische Infrastruktur, Systeme, Maschinen und Netzwerke gegen Cyber-Bedrohungen zu sichern, ist es erforderlich, ein ganzheitliches IT Security-Konzept zu implementieren (und kontinuierlich aufrechtzuerhalten), das dem aktuellen Stand der Technik entspricht. Die Produkte und Lösungen von Siemens formen nur einen Bestandteil eines solchen Konzepts. Weitergehende Informationen über Cyber Security finden Sie unter
https://www.siemens.com/cybersecurity#Ouraspiration.