Thema für Diplomarbeit

A

Anonymous

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen

Ich suche ein geeignetes Thema für eine Diplomarbeit im Bereich Automation, Gebäudetechnick mit Siemens S7. Die Arbeit sollte etwa 500-600 Arbeitsstunden beinhalten. Hat irgend jemand eine Idee? Level TS oder FH.

Freundliche Grüsse

Mat
 
Bereich Regelung?

Hi Mat, wie wäre es hiermit?

Realisieren Sie mit einer S7-315-DP2 eine Heizungsregelung eines Kleinbetriebes mit 10 Heizkreisen. Jeder Heizkreis besitzt eine eigene witterungsgeführte Heizkennlinie und eine Wochenschaltuhr mit mind. 5 verschiedenen Tagesbereichen. Weiterhin sind mit dieser Steuerung 10 Kältekreise auf feste Temperaturwerte zu regeln. Für jeden Kältekreis ist ebenfalls eine Wochenschaltuhr zu realisieren. Außerhalb der Schaltzeiten sind alle Regelungen mit reduziertem Sollwert zu betreiben. Eine Handbedienebene für alle Verbraucher sollte über ein Operator-Panel möglich sein. An die Kälteanlage und an den Heizkessel muß eine bedarfsabhängige Anforderung gegeben werden (Freigabe und Temperatursollwert). Jeder Heiz- und Kältekreis besteht aus einer einstufigen Pumpe und einem 3-Stellungsventil (AUF/HALT/ZU). Sämtliche Störungen (Pumpe, Laufzeit der Regelventile, Fühlerstörungen) müssen überwacht und angezeigt werden. Optional wäre eine Ferienzeit- und Feiertagsberechnung wünschenswert, welche aber nur einmal für die gesamte Anlage benötigt wird.

Wenn Sie dabei eine Zykluszeit von ca. 20ms einhalten (ja, das ist möglich!), verzichten wir auf die Verteidigung (gibt's das noch?) ihrer Diplomarbeit. :D


Gruß, Onkel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die 20ms kann man locker unterbieten (5 ms?). Schließlich sind Heizungen träge und man kann in einem Zyklus dies und in einem anderen das bearbeiten.
 
5ms? vieleicht sollten wir im board bald mal nen kleine contest veranstalten? 8)
 
Na, ja die 5 ms sind ja mit einem Fragezeichen versehen. Die grobe Schätzung beruht auf folgenden Erfahrungen:

Habe mal 24 Temperaturregler (Industrieofen mit mehreren parallelen Schächten, mehrere Zonen pro Schacht) mit der S5-115, CPU 943 realisiert. Ca 20 ms. Es werden dort noch "zu Fuss" die Thermoelement-Kennlinien linearisiert. Dort geht es eben nur, weil pro Zyklus immer nur ein Regler (OB251) bearbeitet wird.

Mit der S7-315 habe ich eine Geschwindikgeitsregelung mit mehreren Folgeantrieben realisiert. Da es um den Ersatz besehender Elektronik ging, habe ich immer einen Regler (eigene FCs) hinzugefügt und dann getestet. Die "fast leere" CPU fing da mit 3 ms Zyklus an, mit dem ersten Regler waren es 3-5ms, am Ende 18 ms.

Wenn also pro Zyklus nur ein Regler bearbeitet wird, müsste es klappen können.

Bezüglich contest:
Habe keine Lust, dass ganze Programm zu schreiben. Ein bestehendes optimieren wäre was anderes.
Es muss natürlich irgenwie objektiv verifizierbar sein, ob es am Ende noch die Anforderungen (Reaktionszeit, Genauigkeit) erfüllt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für Eure schnelle Antwort!

Ich werde den Vorschlag mal an den Experten weiterleiten und dann mal auf die Antwort warten. Wenn Euch noch mehr einfällt schreibt die Vorschläge wieder ins Forum. Mal schauen was noch alles so zusammen kommt.

Gruss Mat
 
Hallo zusammen
Hier unten vielleicht noch ein kleines Beispiel od. Variante wie man Zykluszeit sparen kann.

Beispiel:
FC 233 anlegen mit unten aufgeführtem Programm. Parameter "Kaskadenwort" als IN_OUT deklarieren.

Code:
       L  W#16#8000 
       L  #Kaskadenwort 
       <>I    
       SPB   m1 
       L  1 
       T  #Kaskadenwort 
       BEA    
m1:    L  #Kaskadenwort 
       +I    
       T  #Kaskadenwort

Im OB 35: Baustein FC233 aufrufen.
Code:
CALL  FC   233 
Kaskadenwort:=MW230

Im OB 100 untenstehender Befehl eingeben.
Code:
L     1 
T     MW   230

Zum starten CPU neustarten.

Nicht vergessen: In der Hardwarekonfiguration der CPU den OB 35 z.B. auf 500ms einstellen. (Beliebig).

Beispiel im Programm:
Code:
      U  M 230.0
      SPBN  Ende
      CALL  FC XXX
Ende: NOP  0
mfG churchill
 
?

Du rufst über einen Weckalarm eine Zeitschleife auf. Alle 500ms unterbrichst du das laufende Prg. Was soll da Zykluszeit sparen?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was hälst Du hier von?

Code:
L MW230
L 0
==I
SPBN _001
SLW 3
LAR1
T MW230
SPA _002
_001: SLW 1
BEA
_004: SPZ _001
UN MW230.7
U P#[AR1, HAE]
SPL _001
= QUATSCH
 
zu Ingo dV Frage :

Der Ansatz von churchill ist nicht ganz falsch.
Er erreicht damit das :

M231.0 500ms High / 500 ms pause
M231.1 1000 ms High / 1000 ms pause
usw.

nur als Flanke wäre es besser :

M231.0 1 Zyklus / 500 ms pause
M231.1 1 Zyklus / 1000 ms pause
usw.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen

Ich finde mein Beispiel gar nicht falsch.
Ich erzeuge damit eine 16-Bit-Lauflichtsteuerung. D.h. Hab ich 16 Analogmessungen zB.Temperatur, dann wird pro SPS-Zyklus jeweils nur eine Messung bearbeitet. Nach meiner Meinung nach kann man etliches an Zykluszeit sparen. Man kann ja die Zeit des OB35 beliebig einstellen, vielleicht auch auf 10ms!

Hallo Ingo
Vergleiche mal ein beliebiges Programm mit, und dasselbe ohne meine paar Zeilen.

Der KaffeeSaufenderKamin hat anscheinend vestanden wie es funktioniert! :wink:

mfG churchill
 
---

Nagut ich gebe zu, wenn man Teile eines Prg. durch das bedingte Anspringen in zeitlichen Intervallen sperrt, ist die Zykluszeit natürlich kürzer als wenn man das volle Prg. durchläuft.

Sehe ich aber die Zykluszeit für die Bearbeitung des gesamten Prg. ist diese natürlich höher (und das wollen wir doch nicht oder?)
 
wahnsinnige Möglichkeiten

Hallo churchill, hallo Ingo,

man muss ganz einfach unterscheiden, in Programmteile die zeitkritisch sind, wie zum Bsp. Taster-Eingaben oder Endschalter bei Anlagen der Fördertechnik und in Programmteile die in größeren (oder konstanten) Zeitabständen ausgeführt werden können (oder müssen).

So kann man durchaus Temperaturregler im OB35 über einen Aufrufverteiler nacheinander aufrufen. Ebenso kann man bei Verwendung eines OP bestimmte Programmteile nur dann bearbeiten wenn das entsprechende Bild am OP angewählt ist. Wenn man diesen Faden weiter spinnt, projektiert man am OP für zwanzig gleichartige Anlagen alle Variablen nur einmal für eine dieser Anlagen und schaufelt die Datenbereiche in der Steuerung entsprechend der Nummer des angewälten Bildes um. Nach diesem Prinzip kann man für jede dieser gleichartigen Anlagen nahezu unendlich viele Funktionen realisieren, da ja je Zyklus tatsächlich nur eine Anlage die Zykluszeit belastet (das Umkopieren der vielleicht 50Byte kann man getrost in den Skat drücken). Wenn man dann noch die Variablenbereiche so flexibel gestaltet, dass sie für verschiedene Anlagen (z.Bsp. verschiedene Reglerbausteine) brauchbar sind, ergeben sich ungeahnte Möglichkeiten, selbst mit einer kleinen S7300.

Ich habe in meinem jüngsten Projekt 32 Regler vorgesehen wovon ca. 2/3 verwendet werden. Bei jedem dieser Regler sind sämtliche denkbaren Bedien- und Überwachungsfunktionen, einschließlich Überwachung der Ventillaufzeit, Wochenschaltuhr und Heizkennlinie realisiert, und einiges mehr. In den jeweiligen OP-Bildern (eigene Vorlagen mit allen Funktionen) löscht man nicht benötigte Funktionen einfach weg.

Natürlich laufen noch einige andere Programmteile. die nicht in diese Schublade passen. Ich habe eine Zykluszeit zwischen 17ms und 21ms. Eine Erweiterung der Anlage nach diesem Prinzip wird pro Anlage nur wenige Byte Arbeitsspeicher und wenig Zykluszeit kosten. Eine Beschränkung sehe ich eher bei den Bildnummern des Bedienteils.

Gruß, Onkel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Onkel und Ingo

wir wollen uns sicher nicht um solche Sachen streiten..oder??
Ich hab nie gesagt dass mein Beispiel alles andere in den Schatten stellt, soll schliesslich nur als Beispiel dienen. Sicher gibt es noch viel bessere und/oder viel elegantere Lösungen zu diesem Thema. Vielleicht wäre unser "Mat", wie auch wir alle, für mehrere Beispiele froh!? :wink:

mfG churchill
 
Zurück
Oben