TIA SPS Programmieren über TIA....HILFEEEEE!!!!!

Koi_Andi

Level-1
Beiträge
58
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
SPS Programmieren über TIA....Brauch etwas unterstützung...Neuling am Werk!!!!!

Hallo

Bin am verzweifeln. Möchte meinen Koiteich mit einer S7 1500 (1513-1PN) steuern. Hab früher mal eine 315er mit Step 7 programmiert, aber lang ist es her.

Ich möchte Wasserwerte, Wasserstände über ein CP1900 mir anzeigen....

Mein Problem ist. Ich möchte das in dem Programm es sauber strukturiert ist. Sprich ein FB..FC?? für den Wasserstand und ein weiterer für die Wasserwerte über Sonde und 4-20mA Signal.
Nun wie muss ich unter TIA Programmieren (Programmstruktur mit FUB)?

Sollen die einzelnen Dinge in ein FC oder FB??

Über OB1 möchte ich per CALL dann die einzelnen Blöcke abrufen. Später sollen dann noch diverse Meldungen dazu kommen wie Wassersand Min und pH Hight,KH Low und so weiter....


Kann mir jemand helfen??

Gruß Andy
 
Zuletzt bearbeitet:
alle Achtung, da hast du ja ordentlich investiert :)

Da du ja eh deine Werte im Panel anzeigen lassen möchtest, inkl. low/high Auswertung, erstellst du einen universellen FB, welcher deine Messwerte entsprechend normiert/skaliert und nach der Auswertung im zugehörigen Instanzbaustein ablegt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo plcSniffer,

ja das Ganze hat ne gute Stange Geld gekostet. Programmieren will ich es selbst,hoffe bekomme das auch hin.

Davor war eine Teichsteuerung installiert, die ständig versagte und immer Ersatzteile wie Platinen usw. benötigte. Hatte da auch ein Display, aber die Software musste ich mieten monatlich. Was sehr viel Geld in den letzten Jahren gekostet hat. Denke da macht sich die SPS bezahlt. Unsere Anlagen in der Firma laufen nur mit 1500er Steuerungen und da war bisher nie was defekt.

Koi benötigen eben sehr viel Aufwand, und wenn da 2 sterben dann hast das Geld verloren was die Steuerung nun gekostet hat.

Später soll ja noch der Filter (Trommelfilter) auch darüber laufen, will Stück für Stück alles auf die SPS bringen.

Nun verstehe ich das Richtig?:

OB1= Haupthirn (FB und FC werden darüber aufgerufen
FB= Alles was bearbeitet werden muss und wo die Endsignale der Auswertung so lang gespeichert bleiben, bis dieser wieder abgefragt wird
FC= schaltet den Schütz im Baustein, welcher die Ergebnisse zuvor durch den FB ausgewertet bekommen hat

Beispiel:

Pegelanzeige und Sensorig werden im FB bearbeitet. Hardware wird im FC dann durch merker bedingt geschaltet. So wie es eben als Schaltpunkt im FB ausgewertet wurde.

Ist das so Richtig? Bitte verbessert mich falls ich da nun ein Denkfehler drin habe.


Gruß

Andi
 
Hallo Andi,

du kannst auch deine Ausgänge in einen FB schalten. Der Unterschied zwischen FC und FB ist das sich der FB in seinen statischen Variablen Werte über mehrere Zyklen speichern kann.

Zu deinen Aufbau:
  • OB 1
    • FB1 - Wasserwerte
    • FB2 - Wasserstand
    • FB3 - Filter


Da deine S7-1513 mächtig überdimensioniert für diese Aufgabe ist macht es keinen Unterschied ob du nun einen FC oder FB verwendest. Auf Speicherplatz und Rechenleistung brauchst du nicht zu achten. Die SPS könnte locker 1000 Teiche verwalten :)

Im Panel kannst du dir dann die einzelnen Werte anzeigen lassen die du in den FB's bearbeitest.



Stefan
 
Da deine S7-1513 mächtig überdimensioniert für diese Aufgabe ist macht es keinen Unterschied ob du nun einen FC oder FB verwendest. Auf Speicherplatz und Rechenleistung brauchst du nicht zu achten. Die SPS könnte locker 1000 Teiche verwalten :)

Im Panel kannst du dir dann die einzelnen Werte anzeigen lassen die du in den FB's bearbeitest.



Stefan

Echt ???
Hmm, der SPS Dealer sagte mir die sei gerade ausreichend als CPU, hat mir noch ne 12 MB Karte dazu getan, nur mit dem Display komm ich nicht klar. Brauch ich dafür nochmals ne Karte für ....€?

Naja, schauen wir mal ob ich das so wie ich denke hin bekomme. Hier hat es einige Firmen die Steuerungen machen. Aber als ich sagte es ist ein Teich haben die meisten gelacht........;). Meinten wäre zu teuer es Programmieren zu lassen.

Naja dann bastelt man eben.

Gruß
Andi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann hat dich dein SPS-Dealer wohl übers Ohr gehauen. Mit einer solchen CPU könnte man eine große verkette Anlage betreiben.
Ein paar Pumpen und ein paar Analogwerte könnte auch eine Logo verarbeiten. Ich würde als Setup eine S7-1211 und ein KTP700 wählen. Kosten ~500€
Aber egal, die Hardware hast du ja nun schon. Für das Panel benötigst du eigentlich keine Karte.

Versuch dich einfach an der Programmierung und wenn du fragen hast stellst du Sie.


Stefan
 
Also wenn das Ableben der Fische sooo teuer ist, dann würde ich das Programmieren der lebenserhaltenden Funktionen einem Fachmann überlassen.

Normal würde für Deine Regelung eine S7-1200 reichen oder schreibt Dir eine Versicherung diesen technischen Overkill mit der S7-1500 vor?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe nur gesagt, was so alles im laufe der Zeit dazukommen wird. Wir reden hier über einen Zeitraum von 2-3 Jahren. So lern ich das Programmieren ;) Macht ja auch Spass :cool:.

Naja lebenserhaltende Funktionen ist weit ausgeholt, möchte eben gerne sehen und früh genug reagieren, wenn ein Parameter vom Wasser aus dem Ruder läuft ohne das ich jeden Tag mit einem Tropfentest das Wasser auf die Qualität kontrollieren muss. Wird auf Zeit auch teuer. Heut kam mir auch der Gedanke über zwei Schwimmerschalter sowie ein Magnetventil den Wasserwechsel zu Automatisieren ;) Sprich jede Woche soll 1 Mal das Wasser, sagen wir 10%, abgepumpt werden bis Stand Min durch ein Schwimmerschalter auslöst. Dann soll nach gefüllt werden bis Max wieder erreicht wird ;).... Ja man wird schon Faul wenn man so ne Steuerung vor sich hat :ROFLMAO:

Aber zum Programmieren eine Frage:

Wenn ich in FB 1 einen Merker setzte, kann ich diesen dann in FB3 verwenden als Signal was dort wieder verarbeitet wird?

Gruß Andi
 
Ja Grundsätzlich ist fast alles Global verfügbar.
Außer die Temporären Variablen innerhalb der Bausteine.
Was man tun kann, aber schlechte Praxis ist, sind lesende Zugriffe auf Instanz DBs der FBs.
Genauso sollten schreibende Zugriffe natürlich gut durchdacht sein, optimal ist wenn sie nur an einer Stelle erfolgen.
 
Ja Grundsätzlich ist fast alles Global verfügbar.
Außer die Temporären Variablen innerhalb der Bausteine.
Was man tun kann, aber schlechte Praxis ist, sind lesende Zugriffe auf Instanz DBs der FBs.
Genauso sollten schreibende Zugriffe natürlich gut durchdacht sein, optimal ist wenn sie nur an einer Stelle erfolgen.

Der Hintergedanke ist dieser, In den FB 1-3 werden alle Schaltbefehle generiert. FB4 hat nur die Ausgänge mit jeweiliger "Sicherheitsverknüpfung". So wäre das Programm sehr übersichtlich für mich. Kommt ein Verbraucher (Ausgang) hinzu wird dieser nur angelegt und dann mit der jeweiligen Funktion verknüpft. Frage ist an euch, macht das von den Profi´s her gesehen Sinn so das Programm zu gestalten?

Zur Veranschauung:

Vor jedem Ausgang sitzt ein UND Glied, welches dann mit den einzelnen dafür zuständigen Schaltbefehlen und Verknüpfungen verbunden ist. Also UND Glied, dann Ausgang.

So könnte ich ein Wenig im Programm sparen und nur Grundschaltungen Programmieren, welche dann mit einem Merker auf das jeweilige UND Glied verknüpf wird.


Bin eben Schlosser, also nur räumliche Vorstellungskraft ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da dein Programm eh sehr klein bleiben wird, ist es absolut okay auf Globale Datenbausteine (keine Instanzen) aus einem FB zuzugreifen.
Du kannst also in FB1 deine Anforderung für deine Pumpe generieren und die Anforderung dann in FB3 abfragen und den Hardwareausgang setzen.
IMHO absolut legitim.

Wenn du dann deine Hauseigene Kerichtverbrennungsanlage mit Generator auch noch über die CPU steuern willst, werden sich dann Gedanken über Objektorientiertes Programmieren dann selbst ergeben.

mfG René
 
Wenn du dann deine Hauseigene Kerichtverbrennungsanlage mit Generator auch noch über die CPU steuern willst, werden sich dann Gedanken über Objektorientiertes Programmieren dann selbst ergeben.

mfG René

Will es nur übersichtlich haben, Es muss eben passen. Derzeit ist eine Teichsteuerung im Einsatz, da kann man den Programmverlauf nicht nachvollziehen...... Deshalb Sauber und übersichtlich für den Ersteller!

Ich sehe es im Geschäft wenn die Elektriker wieder mal nicht aufgeschrieben haben, was Sie an der Anlage vor 2 Wochen geändert haben im Programm und dann 2 Tage dran stehen bis es weiter geht. Dokumentation ist da Fehlanzeige
 
Eine Frage habe ich nun.

Muss ich den FB in Main hinterlegen? Weil habe das gerade gemacht, dann wird ein FB1_DB1 generiert.....Hmm??????? Nun steh ich da


Gruß Andi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja ist normal. Ist der sogenannte Instanz Datenbaustein. Darin werden unter anderem die statischen Variablen des FB abgelegt. Normalerweise hat jeder aufgerufene FB seinen eigenen DB. Alternativ gibt es noch die Multiinstanz.
Dann werden die FBs in einem FB aufgerufen, deren Instanzen werden dann alle im aufrufenden FB deklariert und befinden sich dann ausschließlich im Instanz DB des aufrufenden FB.
Würde ich in deinem Fall nicht unbedingt empfehlen, Platzprobleme wirst du ja so schnell nicht haben.
 
Ja ist normal. Ist der sogenannte Instanz Datenbaustein. Darin werden unter anderem die statischen Variablen des FB abgelegt. Normalerweise hat jeder aufgerufene FB seinen eigenen DB. Alternativ gibt es noch die Multiinstanz.
Dann werden die FBs in einem FB aufgerufen, deren Instanzen werden dann alle im aufrufenden FB deklariert und befinden sich dann ausschließlich im Instanz DB des aufrufenden FB.
Würde ich in deinem Fall nicht unbedingt empfehlen, Platzprobleme wirst du ja so schnell nicht haben.

Muss ich in den Db etwas Eintragen??

Aber es ist schon Richtig, alle FB`s in den Main zu legen?
 
Nein in den DB musst du nichts eintragen, Zugriffe erfolgen innerhalb des FB von deinem Programm aus.
Ja alle Bausteine müssen ihren Aufruf irgendwie einen Zyklischen OB als Ursprung haben.
Es gibt hier noch Alarm OBs, aber das verwirrt jetzt erst mal, denke ich.
Zur Strukturierung deines Programmes kann es aber auch sinnvoll sein, deine FBs zB in einem FC aufzurufen und dieser FC ist dann in den Main eingebunden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Besten Dank vorerst einmal. Schwierig werden wohl die Analogwerte sein...Hab gerade einmal ein Video angesehn, leider geht es nur 1.30Min.......... Puh, das wird heftig
 
Warum? Nicht tragisch. Gleich mit Normierung auf Global DB ablegen und innerhalb dem Programm nur noch mit den physikalischen Werten arbeiten.
 
Warum? Nicht tragisch. Gleich mit Normierung auf Global DB ablegen und innerhalb dem Programm nur noch mit den physikalischen Werten arbeiten.

Ja hierzu wäre für mich eine Art Muster nicht schlecht.

Später einmal wären es allein beim Filter 7 Wasserstände die ich unterschiedlich schalten muss. Hintergrund ist der, dass die derzeitige Steuerung vom Hersteller 5 Zeitrelais drin hat sowie 2 Taktgeber und derzeit auch wenn der Filter nicht verschmutzt ist alle 15 Min gespühlt wird. Jedes Mal knapp 5 Liter Wasser. Und das Teil hat Schwimmerschalter!!!!!!!

Naja fast alle liegen mit blanken enden im Schaltkasten, nur 2 sind wirklich angeschlossen. Möchte einfach, dass der Filter sich nur dann spühlt, wenn er auch wirklich verschmutzt ist. So ein Filter ist eigentlich ja Wartungsfrei, weil er sich selbst reinigt. Aber wenn man mehr für den Filter gezahlt hat als nun für die CPU und Panel und das Mistding meine Wasserrechnung hoch treibt, dann ist denke ich die Idee per SPS diesen Filter zu steuern keine schlechte Sache.

So in etwa ist der Filter aufgebaut, die Funktion ist dieselbe:
Um diese Inhalte anzuzeigen, benötigen wir die Zustimmung zum Setzen von Drittanbieter-Cookies.
Für weitere Informationen siehe die Seite Verwendung von Cookies.
 
Zuletzt bearbeitet:
Zurück
Oben