# Simens Logo Programmierung



## iRazzoR (15 März 2020)

Hallo meine SPS Freunde,
ich hoffe ich bin in der richtigen Rubrik

ich habe mich jetzt an die Umsetzung meiner Heizungssteuerung gewagt. In der Simulation funktioniert diese auch schon. Ich hoffe das ich von euch vielleicht noch Verbesserungsvorschläge bekomme oder Kleine Schupser, wenn mir irgendwo ein Fehler unterlaufen sein sollte. Zu den Eckdaten der Steuerung
Ai1 ist der Kamin Fühler dieser soll bei 50°C Q1 (Kamin Pumpe) einschalten. Rücklaufanhebung vorhanden.
Ai2 ist ein Fühler am Austritt der Solaranlage dieser soll bei 70°C die Pumpe freigeben und dann über ein 0-10 V Signal die Pumpe so regeln das die Austritt Temperatur nicht unter 78°C fällt.
Ai 3 ist der Fühler an 3-Wege-Mischer für die FBH dieser soll getackte auffahren und die 40°C im Vorlauf konstant halten.(3-Punkt Regler)
Es wird noch eine Außentemp. Abschaltung für die FBH Programmiert werden aber es bringt nix weiter zu machen wenn mein grundliegender Ansatz in der Steuerung falsch ist. Deswegen frage ich jerzt schon.
Ich bitte euch auch um etwas Nachsicht da das ganze mein erster Versuch mit einer SPS überhaupt ist.
Das ganze soll mit einer Simens Logo zum laufen gebracht werden.
Mit freundlichen Grüßen
Michael


----------



## Dimon2706 (16 März 2020)

Ich glaube du solltest mal mit Zeitverzögerung arbeiten.
Sollte der Fühler Ai1 50° haben, (der macht in der Regel 50C°-49C°-50C°-51C°-50C°-49C°-50C°-51C°-50C° bis temperatur konstant unter 50 geht), wird deine Pumpe sich zu tote schalten.
Meine Meinung:
Wenn Ai1>50C°--TOF3s--PumpeStop


----------



## iRazzoR (16 März 2020)

Die Pumpe wird bei 50 ein und bei 45 ausgeschaltet das sollte dieses verhalten ja unterbinden dachte ich oder meinst du das es trotzdem notwendig sein wird eine zeitverzögerung einzurichten.


----------



## Dimon2706 (16 März 2020)

Ich habe natürlich deine Software nicht angeschaut sondern nur von deiner Ausschreibung ausgegangen. Aber ne, des müsste schon funktionieren so wie du es gemacht hast


----------



## iRazzoR (21 März 2020)

So jetzt brauche ich nochmal euer Schwarmwissen.

Ich habe in meine Solaranlage einen Analogen-schwellwertschalter (b034) eingebaut. Dieser soll die Anlage vor Frostschäden schützen. Sobald die Temp. unter -12°C sinkt soll dieser die Pumpe mit 3 V einschalten. Das Funktioniert auch so weit nur das die Pumpe immer nur in einem Kleinen Bereich an und aus geht. z.b. -6 An und bei -12 geht diese wieder aus.(ist einstellungssache) ich weis aber nicht wie ich die Pumpe einschalten kann ab -12 und diese dann Immer mit 3 V läuft. Ich währe euch sehr verbunden wenn ihr mir dort weiter helfen könntet.

Programm ist im Anhang währe super wenn ihr euch das anguckt und mir eine Hilfestellung geben könntet

m.f.g. 
Michael


----------



## sunny22 (21 März 2020)

Servus,
sieht für mich nach 'nem bug aus. Kann gut sein dass das in der echten LOGO funktioniert und nur in der Simulation nicht.
Hier mal ein Workaround
(Gain ist -1 und die Schaltpunkte positiv)


----------



## hucki (21 März 2020)

iRazzoR schrieb:


> währe super wenn ihr euch das anguckt und mir eine Hilfestellung geben könntet


Obere Icon-Leiste, 7. Symbol von rechts mit den Zahlen von 1 bis 4: Erweitern der Seitenanzahl horizontal und vertikal auf bis zu insgesamt 100 Seiten. 
Man muss also nicht alles auf eine Seite quetschen, so dass z.b. Parameter und Bausteinnummern gar nicht mehr lesbar sind.


----------



## hucki (21 März 2020)

sunny22 schrieb:


> Servus,
> sieht für mich nach 'nem bug aus.


Das ist kein Bug, sondern normal.

Wenn die Temperatur von z.B. -25°C auf -12°C steigt wird ein- und bei weiterem Ansteigen bei -6°C ausgeschaltet. So, wie es auch eingestellt ist.
Wäre bei positiven Temperaturen genauso. Bei der Überschreiten der niedrigen Temperatur soll ein- und bei Überschreiten der hohen Temperatur soll ausgeschaltet werden.


Der TE möchte aber bei *Unter*schreiten der niedrigen Temperatur ein- und bei Überschreiten der hohen Temperatur wieder ausschalten.
Dazu muss der analoge Schwellwertschalter bei -7°C ein- und bei -12°C ausgeschaltet und das Ergebnis negiert verwendet werden:







Und bei dieser Lösung auch die Verwendung am Analog-MUX-Eingang S1 negieren!


----------



## iRazzoR (21 März 2020)

Danke Hucki,
  Jetzt kann ich auf mehreren Seiten Programmieren das ist viel angenehmer =). Endlich sehe ich auch was ich da mache.


  Die Solartemp. Anhebung funktioniert jetzt Problemlos. Irgendwie war da der Wurm drinnen als ich mir das versucht habe zusammen zu basteln.


  Ich Versuche mich dann mal weiter an dem Ganzen.


----------



## hucki (21 März 2020)

Warum ist B036 eigentlich auf 3 statt auf 300 eingestellt, wenn Du doch 3V und nicht 0,03V möchtest?
Und warum schreibst Du diese 300 nicht direkt in B019. Kommt da zukünftig noch mehr?


----------



## iRazzoR (21 März 2020)

Habe bis jetzt nicht gewust das B019 das auch so kann. Das ist meine erste Steuerung die ich Programmiere. Ich war der festen überzeugung das 3 eben 3 V sind und nicht 0,03 V werde das anpassen. Danke für den Hinweis.

nein da kommt nicht mehr. Der plan war durch die 0-10 V eine Konstante austrittstemp. der Solaranlage zu haben also bei 72 geht die pumpe mit 2 V an und mit steigender Leistungsaufnahme der Solaranlage steigt die Leistung der Pumpe damit die 72 grad gehalten werden. Das habe ich leider nicht Programmiert bekommen deswegen habe ich die Leistung der Pumpe an die Temp. gekoppelt. Mit steigender Temp. steigt auch die Pumpen Drehzahl. Wenn ihr eine lösung habt um die Leistung anders zu regeln bin ich für vorschläge immer offen. bei 80°C austritt sollte die Pumpe allerdings 100 % drehzahl fahren.


----------



## sunny22 (21 März 2020)

> Wenn die Temperatur von z.B. -25°C auf -12°C steigt wird ein- und bei weiterem Ansteigen bei -6°C ausgeschaltet.


Also ein Baustein der so etwas macht ist in meinen Augen ein Fensterkomparator aber kein Schwellwertschalter mit Hysterese.


----------



## hucki (21 März 2020)

sunny22 schrieb:


> Also ein Baustein der so etwas macht ist in meinen Augen ein Fensterkomparator aber kein Schwellwertschalter mit Hysterese.


Wie auch immer Du es benennen willst, Siemens hat sich nun einmal für diesen Namen entschieden und noch viel wichtiger, sie haben das Verhalten des Bausteins genau so in der Hilfe F1 dokumentiert:



			
				Logo-Hilfe F1 schrieb:
			
		

> *Rechenvorschrift*
> 
> Falls Einschaltschwelle (On) ≥ Ausschaltschwelle (Off), so                 gilt:
> Q = 1, falls Aktualwert Ax > On
> ...


----------



## sunny22 (21 März 2020)

Ok, einverstanden es ist kein Bug es ist ein Feature. 
Merkwürdig ist es trotzdem und wieder ein Beweis das bei LOGO nicht immer alles logisch ist.


----------



## hucki (21 März 2020)

iRazzoR schrieb:


> Habe bis jetzt nicht gewust das B019 das auch so kann. Das ist meine erste Steuerung die ich Programmiere. Ich war der festen überzeugung das 3 eben 3 V sind und nicht 0,03 V werde das anpassen.


Die Parameter des Analog-Mux können (wie alle Parameter) direkt angegeben werden, sofern sie nicht per Verweis belegt werden.

Genau wie bei den Logo-Eingängen werden auch die -Ausgänge stets mit dem Bereich von 0-1000 abgebildet. 
Bei 0-10V entspricht damit eine Einheit 0,01V.




iRazzoR schrieb:


> Der plan war durch die 0-10 V eine Konstante austrittstemp. der Solaranlage zu haben also bei 72 geht die pumpe mit 2 V an und mit steigender Leistungsaufnahme der Solaranlage steigt die Leistung der Pumpe damit die 72 grad gehalten werden. Das habe ich leider nicht Programmiert bekommen deswegen habe ich die Leistung der Pumpe an die Temp. gekoppelt. Mit steigender Temp. steigt auch die Pumpen Drehzahl. Wenn ihr eine lösung habt um die Leistung anders zu regeln bin ich für vorschläge immer offen. bei 80°C austritt sollte die Pumpe allerdings 100 % drehzahl fahren.


Ich würde das dem PI-Regler überlassen (auch wenn ich da nicht so firm bin). 
Der regelt den Pumpenbedarf nach der Solltemperatur zw. 0 und 100,0%. Mittels des Schwellwertschalter von oben dann unterhalb -12°C auf Manuell und 30,0% umschalten:


----------



## hucki (22 März 2020)

sunny22 schrieb:


> Merkwürdig ist es trotzdem und wieder ein Beweis das bei LOGO nicht immer alles logisch ist.


Vielleicht ist es für Dich deshalb nicht logisch, weil Du den Baustein als:





sunny22 schrieb:


> Schwellwertschalter mit Hysterese


ansiehst, er aber nur ein Schwellwertschalter ist.


Letzterer kann eine Hysterese enthalten, muss aber nicht.


----------



## iRazzoR (22 März 2020)

So als erstest Danke für die vielen Hilfestellungen. Ich bin der Meinung das ich die Solaranlage mit dem PI-Regler jetzt ziemlich gut hinbekommen habe. ich habe noch eine sicherheitsumschaltung eingebaut die beim überschreiten von Temp. X die Pumpe Manuell auf 100 % schaltet. Wobei der PI Regler doch schon ziemlich zügig nachregelt. Ich habe euch das ganze noch mal im Anhang gepackt.


----------



## hucki (22 März 2020)

Die meisten NOTs kannst Du Dir sparen, wenn Du auf den folgenden Eingang doppelt klickst (oder per Kontext mit rechts) und somit den Eingang negierst.

Du solltest gemeinsame Verbindungen immer möglichst lange gemeinsam verlegen.

Alle Funktionsblöcke brauchen in der realen Logo einen Absschluß (die Simu funktioniert auch ohne).
Analoge und digitale Blöcke können durch Merker und Ausgänge und letztere zusätzlich noch durch offene Klemmen abgeschlossen werden.
Ansonsten lässt sich das Programm erst gar nicht in die Logo laden.


PS:
 Und je besser Du das Programm kommentierst, um so besser kannst Du es in der Zukunft wieder lesen, wenn Du bereits etwas zeitlichen Abstand zum Projekt hast.


----------



## iRazzoR (22 März 2020)

Das mit dem Negieren kannte ich aber nicht in dieser Funktion. Was meinst du mit 





> Du solltest gemeinsame Verbindungen immer möglichst lange gemeinsam verlegen.


 das verstehe ich leider nicht so ganz.


----------



## hucki (22 März 2020)

iRazzoR schrieb:


> Was meinst du mit
> 
> 
> 
> ...


Vergleiche mal selbst:









- möglichst gerade Verbindungen, 
- möglichst wenig getrennte Winkel in den Verbindungen zum gleichen Ausgang, 
- möglichst den gleichen Eingangspin fürs gleiche Signal bei verschiedenen Grundgattern.
- in der oberen Iconleiste gibt's rechts auch Ausrichtfunktionen für die Gatter.
- Rückführungen (Rekursionen) oder sehr lange Verbindungen auftrennen.


Das alles erhöht die Lesbarkeit eines Programmes.
Alles kein Muss, aber immer dran denken, dass Du den Plan auch dann wieder lesen können möchtest, wenn Dir nicht mehr bewußt ist, was Du Dir dabei gedacht hast.


Auch wenn Dir sowas:


Blockmove schrieb:


> Dann sagen wir mal so:
> Viele programmieren die Logo nicht, sondern "malen" Irgendwas.
> Durch den - meiner Meinung nach - bescheuerten Editor verleitet die Logo viel mehr zu schlechten Stil als sonst eine SPS.
> In KOP geht es noch, aber was manche in FUP verbrechen ist einfach schlimm.
> Da das unserer Instandhaltung zu dumm wurde, landete die Logo eben auf der Blacklist.


zu Hause vermutlich nicht droht.


----------



## iRazzoR (22 März 2020)

ok danke für den tipp werde mal alles bei mir überarbeiten


----------



## hucki (22 März 2020)

Noch was:

Du stellst die PT100-Eingänge überall mit einer Auflösung von 0,1°C ein (=Standard).
Damit stellt eine Einschaltschwelle von z.B. 95 (x 0,1°C) die Schwelle von 9,5°C  dar. 
Wenn Du aber 95°C möchtest, brauchst Du demzufolge 950 (95,0°C) als Parameter.

Damit die Werte dann in Meldetexten korrekt dargestellt werden, stellt man im Abschnitt Dezimalstellen des Analogblocks die Nachkommastellen auf 1 ein.


----------



## hucki (22 März 2020)

Alle Blöcke bieten im 2. Tab Kommentare.
Gerade sowas wie Schwellwertschalter, Timer usw. sollten z.B. mit Frostschutz, Überhitzschutz, Umschaltsperre u.ä. in ihrer Funktion näher gekennzeichnet werden.


----------



## iRazzoR (22 März 2020)

Also alle Änderungen sind vorgenommen. Ich denke ich kann jetzt damit in den Kampf ziehen. Die Logo mit den Modulen kommt hoffentlich am Mittwoch an dann kann ich den ganzen spaß mal aufspielen. Wie sieht das eigentlich aus mit den Fühlern ? ich werde PT1000 Fühler benutzen muss ich da dann noch etwas mumstellen oder einfach nur anklemmen ??


----------



## iRazzoR (2 April 2020)

So da bin ich wieder =) Ich habe jetzt noch eine Außentemperatur Regelung hinzugefügt und eine Mischung für den Heizkörperkreislauf. Des weiteren ist eine Zeitverzögerung der Gasheizung mit Programmiert sobalt der Kamin Oder die Solaranlage eingeschaltet sind.Die Regelung der WT für die Solaranlage wird vieleicht noch wegfallen da wir das mit einem Bi-Metal lösen unter umständen.

m.f.g

Michael


----------

