# PID Regler programmieren



## hbedir (7 Januar 2010)

Hallo liebe Forum Benutzer.
Ich habe vor ein PID Regler zu programmieren. Wie immer habe ich leider keine Ahnung wie das gehen soll. Ist einer von euch in der Lage das mir step by step zu erklären?

Es geht hier um ein PID Regler für S7. Es soll damit die Geschwindigkeit eines Krans geregelt werden.


----------



## Paule (7 Januar 2010)

hbedir schrieb:


> Ist einer von euch in der Lage das mir step by step zu erklären?


 
Step by Step? 
Wo müssen wir da anfangen?

1. Baustein erstellen (z.B. FB 1)
2. In dem Baustein den FB41 PID Regler (Cont_C) aufrufen
3. Alle Reglerwerte normieren und aktivieren
4. Den Regler beschalten (Soll / Ist / Gain / Hand / u.s.w.)
5. Den ersten Baustein im OB35 aufrufen
6. In der Hardware schauen in welchem Zeittakt der OB35 aufgerufen wird (100ms)
7. Diesen Wert am Parameter CYCLE angeben


----------



## marlob (7 Januar 2010)

Paule schrieb:


> Step by Step?
> Wo müssen wir da anfangen?
> 
> 1. Baustein erstellen (z.B. FB 1)
> ...


5a. den selben Baustein auch im Ob100 aufrufen um ihn zu initialisieren
     dafür COM_RST am FB41 auf 1 setzen


----------



## MSB (7 Januar 2010)

-10. Step7 Installieren
-9. Getting Started lesen
-8. Handbücher lesen
-7. http://www.automation.siemens.com/fea/html_00/down_module.htm B3 Lesen
-6. Nicht mehr so dämliche null eigeninitiative erkennen lassende Fragen fragen
-5. Forensuche bemühen


----------



## marlob (7 Januar 2010)

-6 und -5 gefallen mir


----------



## Bernard (7 Januar 2010)

*Ich habe vor ein PID Regler zu programmieren ?*

Hallo Themenstarter,
willst du wirlkich einen PID Regler selbst programmieren oder vorhandene S7_Bausteine  parametrieren?


----------



## hbedir (7 Januar 2010)

Trotzdem möchte ich mich für die Antworten bedanken, auch wenn sie abwertend sind.
Eins ist klar, ich bin nicht so schlau und erfahren wie anderen.
Ich versuche lediglich nur hier bißchen Hilfe zu bekommen. Ihr könnt mir die Antworten drauf geben oder es seien lassen aber bitte keine Beleidigungen.
Wenn wir alle Spezialisten wären, würde diese Forum Seite nicht existieren.
Danke!


----------



## hbedir (7 Januar 2010)

Hallo Paule, hast du eventuell ein Beispielprojekt was du mir senden könntest?
Wenn es möglich ist dann bitte an hbedir@web.de
Danke nochmal.


----------



## marlob (7 Januar 2010)

hbedir schrieb:


> Hallo Paule, hast du eventuell ein Beispielprojekt was du mir senden könntest?
> Wenn es möglich ist dann bitte an hbedir@web.de
> Danke nochmal.


Lies dir noch mal den Beitrag von MSB durch. Dort ist ein Link zu einem
Beispielprojekt.
Hier gehts nicht darum jemanden zu beleidigen oder abzuwerten, sondern
zu mehr Eigeninitiative zu verhelfen


----------



## Paule (7 Januar 2010)

He Jungs,
meint Ihr nicht dass Ihr da ein bisschen zu hart rangeht?
hbedir ist ja noch nicht so lange dabei und will einen Kran steuern (ich hoffe kein Fischertechnikkran).
Anderen wird doch auch geholfen wenn sie eine Zykluszeitüberschreitung beim schalten der Wohnzimmerbeleuchtung haben.

Aber der Link ist ja wirklich OK, und die Anleitung schaut gut aus.
Das Reglerbeispiel ist fürchterlich aber ich habe auch noch nie das mit dem Inbetriebnahmetool gemacht.
Aber als Anfangsbeispiel sollte es reichen.

@hbedir: 
Reicht Dir das mit dem Link von MSB?
Sonst einfach noch mal melden.


----------



## MSB (7 Januar 2010)

Paule schrieb:


> He Jungs,
> meint Ihr nicht dass Ihr da ein bisschen zu hart rangeht?
> hbedir ist ja noch nicht so lange dabei und will einen Kran steuern (ich hoffe kein Fischertechnikkran).
> Anderen wird doch auch geholfen wenn sie eine Zykluszeitüberschreitung beim schalten der Wohnzimmerbeleuchtung haben.



Ich habe kein Problem mit der Frage an sich oder ob er Anfänger oder Crack ist,
allerdings habe ich ein Problem mit der Art der Fragestellung!

P.S. Die von dir angesprochene Problematik ist ja zumindestens schon mal so was ähnliches wie ein konkretes Problem ... was eine gewisse Portion Eigeninitiative erahnen liese ...

PPS. Fast alles was du geschrieben hast stünde so auch in der Online-Hilfe zum FB41 ...

Mfg
Manuel


----------



## tschortscho51 (7 Januar 2010)

zu Handen des Themenstarters möchte ich mir die Frage erlauben, was den am Kran mit einem PID-Regler geregelt werden sollte.
Siemens hat Kranspezifische Hard- und SW. z.B für Pendelausgleich und dergleichen.
Ich habe schon Krananlagen gemacht die keinen einzigen Regelkreis benötigt haben.
Aus der Fragestellung lässt sich kein alternativer Lösungsansatz erkennen der ev. möglich wäre.


----------



## wolder (8 Januar 2010)

@tschortscho51
Das ist zu 90% eine Schulaufgabe. (hoffe ich zumindest)
Ob das Sinn macht oder nicht, spielt dabei keine Rolle.
Es geht wahrscheinlich nur darum, den PID-Regler bzw. die Regelung zu erlernen. Ob´s nen Kran ist oder irgendwas anderes ist dabei völlig egal.

Gruß wolder


----------



## bike (8 Januar 2010)

*Nachfrage*



hbedir schrieb:


> Hallo liebe Forum Benutzer.
> Ich habe vor ein PID Regler zu programmieren. Wie immer habe ich leider keine Ahnung wie das gehen soll. Ist einer von euch in der Lage das mir step by step zu erklären?
> 
> Es geht hier um ein PID Regler für S7. Es soll damit die Geschwindigkeit eines Krans geregelt werden.



Also ich kann aus dieser Ausage keine Frage erkennen.
Bevor ich einen Regler programmiere mache ich mir Gedanken wie ist die Aufgabe.
Dann kann ich mich auf die Suche nach einer Lösung machen.
Zuerst muss jedoch die Funktion eines PID Reglers klar sein. Da hilft es nicht zu schreiben nutze den oder jenen FB.

Eine Kran mit PID-Regler kenn ich nicht, denn was regelt der? Die Schmierung? Das Gegengewicht? Die Schwenk-, Laufkatz- oder Hubgeschwindigkleit?

Genau weiss ich nicht mehr wer, doch ich denke es war jabba (sorry bin zu bequem zu suchen) der die Fragestellung hier etwas in Frage stellte.
So ganz langsam komme ich auch zu der Erkenntnis, dass die folgende Denke überhand nimmt: 
1. Ich kann den Step7 manager starten
2. ich bin Programmier/Entwickler

Ich weiss jetzt nicht, ob das das Ziel sein soll.

Wird in den Schulen und Unis nicht daraufhingewiesen, dass die Aufgaben selber gelöst werden sollen, damit etwas gelernt wird?


bike


----------



## peter(R) (8 Januar 2010)

Und dann gibts da oben noch ein Feld  <SUCHEN>  wenn man da sowas wie Regler oä. eingibt hat man für die nächsten Stunden zu tun ....

peter(R)


----------



## marlob (8 Januar 2010)

peter(R) schrieb:


> ... hat man für die nächsten Stunden zu tun ....
> 
> peter(R)


Stunden suchen, wie schrecklich. Ich möchte aber direkt und sofort eine fertige Lösung ohne selber nachzudenken


----------



## maxpapa (9 Januar 2010)

bike schrieb:


> Eine Kran mit PID-Regler kenn ich nicht, denn was regelt der? Die Schmierung? Das Gegengewicht? Die Schwenk-, Laufkatz- oder Hubgeschwindigkleit?
> 
> bike



hi,

Gleichlaufregelung Kranfahrt

wir haben bei einem 40m breiten 68t-Kran den PID-Regler zum Gleichlauf der
beiden kranfahrt-motoren(links,rechts) eingesetzt.
Es wurde bei dem Antriebskonzept(SEW) auf eine Gleichlaufregelung(Master-Slave) verzichtet.
Für die Kranfahrt werden beide Motoren mit einem Sollwert angesteuert.
Aus der Rückmeldung der Positionslaser links und rechts wird ein zusätzlicher Sollwert über einen PID-Regler (FB41-Aufruf im OB35)  zusätzlich auf einen Antrieb gelegt. 

gruß maxpapa


----------



## bike (9 Januar 2010)

maxpapa schrieb:


> hi,
> 
> Gleichlaufregelung Kranfahrt
> 
> ...



Habe ich die [ironie] [/ironie] Tags vergessen? 
Sorry, kommt nicht wieder vor. 


bike


----------



## Xplosion (19 Juni 2013)

ich brauch auch mal eine Hilfe zum PID-Regler.

Habe den PID CONT_C benutzt. SP_INT ist bei mir eine Variable die von einen HMI-Display kommt.
PV_PER ist mein Istwert von einen Temperaturfühler. Dieser ist von der Baugruppe schon skaliert.
Mein Problem ist, dass sich der Ausgang LMN oder LMN-PER nicht verändert.

Gebe ich am SP_INT einen manuellen Wert ein funktioniert es.

Als Beispiel:

Der Wert 324 wird am PV_PER während der Beobachtung angezeigt.
Der SP_INT ist ein 16bit-Word, dass ich zuerst in 32Bit und dann in Real umwandle.

Gebe ich als SP_INT einen niedrigeren oder höheren Wert als der Istwert vor, ändert sich am Ausgang nichts.

Es passiert nur was, wenn ich am SP_INT-Eingang manuell einen Wert im REAL-Format eingebe. Allerdings liegt der Auf-AB-Wechsel des PID-Reglers irgendwo zwischen 1.0 und 2.0 (1.0000+e00). Gebe ich über 2 ein, regelt der PID-Regler hoch, ein Wert unter zb. 1,5 lässt in wieder absinken. ( Istwert liegt immer noch bei 324 = 32,4°C)


Ich bin auch erst Neuling in Sachen SPS-Programmierung.


----------



## vollmi (19 Juni 2013)

Hoi

P I vielleicht D aktiviert?
Mit PID Control parametrieren! Macht die Sache am Anfang einfacher.


mfG René


----------



## Thomas_v2.1 (19 Juni 2013)

Und prüfen ob der Parameter MAN_ON mit false beschaltet ist. Wenn du diesen nicht beschaltet hast dann wird er noch den voreingestellten Wert haben, und das ist true, d.h. der Regler steht dann auf Handbetrieb und es wird der Wert am Parameter MAN auf den Ausgang ausgegeben.


----------



## Xplosion (19 Juni 2013)

Das hab ich schon alles.

Ich hab jetzt folgendes gemacht:

Display HMI -> INT an SPS -> Wandler nach 32Bit -> Wandler nach REAL --> Auf Eingang SP_INT
Wert Temperaturfühler PEW --> Wandler nach 32Bit -> Wandler nach REAL --> Auf PV-Eingang (nicht auf PV_PER)

Und natürlich noch Peripherieeingang verwenden auf False. Werd morgen nochmal ausprobieren was passiert, wenn ich den PEW wieder mit PV_PER verknüpfe. Normalerweise muss es ja auch funktionieren, da der PID intern das Peripheriewort in REAL umwandelt.


Ich vermute, dass der Eingang SP_INT und der PV_PER nicht im gleichen Format sind. Wenn ich den PV_PER-Eingang in REAL umrechne, komm ich auf irgendwas mit 1,19... . Stell ich einen Festwert auf SP_INT ein, der leicht drüber unter unter 1,19... ist, dann startet der PID-Regler.

Wieviel PID-Regler kann man eigentlich verwenden? (Brauche ca. 10 Stück + Pulsweitenmodulation)
Muss der PID im OB35 sein, oder reicht es wenn man vom OB35 auf einen FB verweist? (wegen der gleichbleibenden Zykluszeit).

Möchte gerne PID-Regler-Einzelmodule von Eurotherm zukünftig mit der SPS ersetzen.


----------



## ducati (19 Juni 2013)

Xplosion schrieb:


> Wieviel PID-Regler kann man eigentlich verwenden? (Brauche ca. 10 Stück + Pulsweitenmodulation)



Das hängt von der verwendeten SPS ab. Speicherbedarf und Zykluszeit sind die Schlagworte.


----------

