TIA bräuchte Hilfe bei einer Grundprogramierung einer S7-1200

AlexanderW

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo.
Bin Elektroniker und selbständiger Netzwerk und System Techniker.
Hab ganz früher im Schaltschrankbau gearbeitet.

Mein Problem:
Habe für einen freund eine Fördersteuerung für eine Hackschnitzelheizung auf Basis einer S7-1200 mit KTP400 Basic gebaut.
Sie steuert eine Gliederkette (Kraftstrommotor) als Förderung und einen Bunkermotor fürs nachrutschen.
Soweit ist alles OK (ich habe eine Notschaltung auf Zeit Relais Basis mit verbaut) das System läuft.

Dann kam die Programmierung, aber leider muss ich gestehen, das ich beim Versuch kläglich gescheitert bin.
Mir wurde klar, dass das ohne Kurs unmöglich zu machen ist.
Leider fehlt mir im Moment die zeit dazu.
Irgendwann mache ich diese Kurse noch.
Aber im Moment bräuchte die Programmierung (zumindest die Grund Programmierung) noch vor dem Winter, also demnächst.

Ich hoffe, auf diesem weg jemanden zu finden, der das Programmieren gerade lernt und sich damit befassen möchte (als Testprojekt) oder jemanden, der gerade etwas zeit dazu hätte und diese Art Programmierung beherrscht. Nicht umsonst, versteht sich.

Meine Anforderungen/Vorgaben:

Da aber der Winter vor der Tür steht, hätte ich gern zumindest die Grundfunktion am laufen und da ist eine Zeit Anpassung der Motorlaufzeiten dringend notwendig. Im Moment läuft die Steuerung in einer Art Notschaltung die ich mit verbaut habe. Es steuert die Kette über Lichtschranke, bzw. in 2ter Stellung über 2 Zeitschalt Relais. Leider lässt sich das aber nicht optimal einstellen (so lief das System jetzt seit 3 Jahren).

Die Anforderung noch etwas genauer beschrieben:
auf Eingang 0 kommt ein 24V Impuls von der Heizung. der Impuls ist normal für die Ansteuerung des Förderschneckenmotors aus dem Bunker und kann deshalb unterschiedlich lange lauf Zeiten haben. (solange eben die Schnecke laufen müsste. Ist wichtig beim anfeuern, da läuft sie fast durchgehend)

Was ich bräuchte:
am Ausgang 0 müsste die Impuls zeit von der Heizung + eine Zeit, die man am Display einstellen kann, geschalten werden (als Kettenlaufzeit)

am Ausgang 1 soll der Impuls nur als Auslöser für den Ablauf der eingestellten zeit dienen das etwas Bewegung im Bunker ist.

Beide Zeiten musste man am touch Display ändern können. In der Art: links Kette oben + unten - dazwischen die eingestellt zeit in Sekunden (touch) über plus bis 99 Sekunden verstellbar über minus bis 1 Sekunde.
Rechts das gleiche für den Bunker Motor.

Die Programmierung muss offen sein, das man daran weiter Arbeiten kann.
Ich habe hier ein Tia Portal V16 darauf muss es laufen.
Eine SIMATIC S7-1200CPU 1212C und ein KTP400 Basic Touch verwendet.

Es ist auch für Später noch geplant, eine elektronische Feuerlöscheinheit (zum Rückbrandschutz),
eine Optische Störungssignalisierung,
eine Bunker Vibration gegen Tunnel Bildung und ein Hackschnitzelmischer am Ketteneigang im Bunker nachträglich zu programmieren, damit die Hackschnitzel besser gefördert werden.
Die Lichtschranken unterbrechen gerade direkt den Schaltkreis der Kette, das soll später noch direkt über die SPS geschaltet und programmiert werden.

Deshalb müssen die 4 Tasten am Display verfügbar bleiben und Es muss auch offen sein, damit nachträgliche Funktionen hinzugefügt werden können (kein Passwort oder so)


Grüße Alex W.
 
Da du hier ja möglicherweise die Freelancer hier im Forum ansprichst wäre es ggf. interessant zu wissen WO das Ganze in etwa stattfinden soll - also der Ort oder wenigstens die Region ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Moderator. Danke für den Hinweis.
Ich bin im Voralpenland in der nähe von Garmisch.

Da ich aber eine Lauffähige Netzwerkumgebung habe, (Laptop ist mit SPS Bauteilen im Netzwerk konfiguriert) kann ich mir die Programmierung auch selbst übertragen.
Vor Ort zu sein, ist nicht zwingend notwendig. Wenn jemand in der nähe ist, ist das bestimmt kein schaden.

Demnächst verbinde ich die Anlage noch mit dem Internet um 2 Überwachungskameras zu montieren. So könnte man es, falls ich Probleme habe auch per TeamViewer oder Anydesk zusammen machen.
Ich bräuchte sie nur lauffähig auf einer V16 Version.

Wir haben gute SPS Programmierer in Firmem vor Ort, aber die kosten sind nicht grad niedrig und in der Regel sind die Programmierungen gesperrt. Also musste ich für jede Änderung wieder zu dem gehen. Das möchte ich aber in Zukunft dann selbst erledigen.

Deshalb der Aufruf.

Danke vorab.
 
Wir haben gute SPS Programmierer in Firmem vor Ort, aber die kosten sind nicht grad niedrig und in der Regel sind die Programmierungen gesperrt. Also musste ich für jede Änderung wieder zu dem gehen.
Naja ... die Freelancer hier werden es dir auch nicht schenken ... ich denke mal, dass es preislich auf dasselbe hinauslaufen wird.
Was den Source-Code angeht so ist dies, wie so vieles im Leben, eine Frage der Vereinbarung. In meinem beruflichen Umfeld habe ich IMMER darauf bestanden den kompletten Quellcode der Anlage zu erhalten ... und habe ihn auch immer bekommen ...
 
Hi Laffer Larry.
Ist mir auch klar das ich es nicht geschenkt bekomme.

Habe mit 2en gesprochen, die für ihre Firma programmieren. ein größerer Elektriker.
sowas wollen sie eigentlich nicht machen, weil sie mit umfangreicheren Projekten ausgebucht sind.

Ich brauch nicht viel, 2 zeitschleifen verstellbar und dazu eine Visualisierung auf dem Display für die Verstellung.
Ich hoffe es erbarmt sich jemand. Dachte mir ein versuch ist es wert.

Sollte keiner Lust dazu haben, mach ich zwischen weihnachten und Neujahr einen Kurs (Wollte ich eh schon längst machen), das ich verstehe wie das programmieren funktioniert.
hab schon einiges ausprobiert, das auch hinhaut. nur das mit den Zeitgeschichten hab ich noch nicht verstanden. Auch das Visualisieren auf dem Display ist mir noch zu hoch.

Wenn niemand will, muss die Anlage noch ein paar Monate im Notbetrieb laufen.
Wäre auch kein Beinbruch, hat bis jetzt fast problemlos so funktioniert.

Hoffe es meldet sich jemand.
Merci
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wir haben gute SPS Programmierer in Firmem vor Ort, aber die kosten sind nicht grad niedrig und in der Regel sind die Programmierungen gesperrt.
Naja, wenn Du die komplette Zeit 1:1 für die Programmierung bezahlst und da keine Hyper-Spezial-Know-How-Bausteine der Firma selbst drin sind, solltest Du darauf bestehen, den Quellcode komplett zu bekommen. Mit welcher Begründung wollen die den nicht rausrücken?
 
Hi @AlexanderW
Ich persönlich habe als Auffrischung & Erweiterung einen Online Kurs gemacht. Je nach dem wie dein Grundverständnis für das Thema SPS ist solltest du in weniger als 2 Wochen das "Grundprogramm" am Laufen haben.

Zudem wenn du das in Auftrag geben würdest solltest du darauf achten zum einen den Code ohne Know-How Schutz zu bekommen und um anderen auch die Programmiersprache definieren. FUP und KOP ist am Anfang am verständlichsten SCL ist das an Hochsprachen angelehnte Allzweckwerkzeug...
 
Hi.
Danke für die rege Anteilnahme.
Ich denke auch, das ich das in ein paar Wochen lernen würde.
Habe aber leider keine zeit dafür.

Wenn keiner Lust hat, die paar Zeilen und die Visualisierung zu schreiben, mach ich es wie geplant.
einfach den Kurs und bis dahin muss er warten und so auskommen.

mal sehen.
 
Hab grad gesehen, das sich einige gemeldet haben.
Super ich danke euch.
Hab die Woche leider so viel zu tun, das ich mich erst ende der Woche zurück melden kann.
Selbständig , ist normal.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Anforderung noch etwas genauer beschrieben:
auf Eingang 0 kommt ein 24V Impuls von der Heizung. der Impuls ist normal für die Ansteuerung des Förderschneckenmotors aus dem Bunker und kann deshalb unterschiedlich lange lauf Zeiten haben. (solange eben die Schnecke laufen müsste. Ist wichtig beim anfeuern, da läuft sie fast durchgehend)

Was ich bräuchte:
am Ausgang 0 müsste die Impuls zeit von der Heizung + eine Zeit, die man am Display einstellen kann, geschalten werden (als Kettenlaufzeit)
Da ich rauslese, daß Du Grundkenntnisse hast, versuche ich hier mal eine Quick&Dirty-Lösung als Handlungsanleitung:


Wenn ich das richtig verstehe, brauchst Du für Ausgang 0 eine Ausschaltverzögerung des Eingangs 0:

1697609381031.png
1697609452473.png

In Deinem HMI legst Du die Variable aus dem DB an.

Im Bild legst Du ein Ausgabefeld für diese Variable an (wahlweise auch E/A, wenn Du auch direkt editieren möchtest).
Dazu die Tasten mit + und - beschriftet.
In den Tasten projektierst Du unter Ereignisse:

1697609689764.png
Findest Du in der Gruppe "Berechnungen".

Enstprechend für "-" dann "VerringereVariable".

So zählst Du jetzt in Millisekunden hoch und runter.
Möchtest Du in Sekunden zählen, hast Du zwei Möglichkeiten: Entweder zu zählst nicht mit 1 sondern mit 1000.
Das ändert dann allerdings nichts an der Anzeige, die in Millisekunden bleibt.

Zweite Möglichkeit: Du prarametrierst in der Variable selbst eine Lineare Skalierung:

1697609951900.png

Jetzt werden Dir die Sekunden in der Ausgabe angezeigt und Du kannst mit 1 addieren oder subtrahieren.

Damit jetzt keine negativen Werte eingestellt werden können oder keine wahnsinnig hohen Werte, kannst Du Folgendes machen:

  • Stelle in der HMI-Variable in der Kategorie "Bereich" Grenzwerte ein (rechts das Drop-Down auf "Konstante" stellen).
  • Dann kommt jedes Mal eine Systemmeldung, wenn Du die Grenzen überschreitest.
  • 1697610898339.png
  • Um die Grenzen zu halten, stellst Du unter "Ereignisse" (bei der Variable) bei Überschreiten und Unterschreiten die Aktion "SetzeVariable" ein und stellst dort auch noch einmal den Grenzwert ein.
  • 1697610942610.png
  • An den Tasten kannst Du die Animation Anzeige>"Sichtbarkeit" hinzufügen, so daß z.B. bei Variable < 2 die Taste "-" nicht mehr angezeigt wird.
  • 1697610849829.png

am Ausgang 1 soll der Impuls nur als Auslöser für den Ablauf der eingestellten zeit dienen das etwas Bewegung im Bunker ist.

Du nutzt den gleichen Eingang?
Dann nutzt Du hier statt eines TOF-Bausteins den TP-Baustein. Der erzeugt unabhängig von der Länge des Eingangssignals einen Impuls definierter Länge.
Zeitvariable wird dann analog zur oben beschriebenen angelegt.

Ich hoffe, das hat geholfen. Wie gesagt: Quick and Dirty, da ist bestimmt Optimierungspotential drin, aber so hast Du schon einmal eine Handlungsanleitung, um das in den Grundzügen selbst zu erstellen.
 
Hi JSEngineering.
Danke für den schubs in die richtige Richtung, welche Bausteine ich verwenden muss und wie sie zu benutzen sind.
Sollte ich noch fragen haben, melde ich mich bei dir.

Grüße ALEX
 
Zurück
Oben