S7 Programmierfragen (T-FlipFlop, var. Zeitwert)

Hi,

bin neu hier im Forum und hab gleich mal zwei Fragen…

Ich möchte einen Impulsschalter (T-FlipFlop, 1x tasten EIN - nochmal tasten AUS) in einer S7 programmieren… Nur kann ich mich beim besten willen nicht mehr an die Schaltung erinnern. ich hab schon etwas im Netz gesucht, aber ich befinde mich hier grade auf einer Ölplattform in der Nordsee (norwegischer Sektor) und hab daher nicht so die Zeit im Netz zu surfen… also wenn jemand ne Idee hat?! Her damit :wink:

Ich muss in einer Steuerung sehr viele unterschiedliche Zeiten (die sich erst nach der Erstinbetriebnahme ermiteln lassen) programmieren. Jetzt frage ich mich ob es nicht möglich ist den Zeitwert an einem SI Timer per Berechnung im Programm zu bestimmen. Sozusagen möchte ich bei bestimmten Bedingungen den selben Timer mit unterschiedlichen Zeiten nehmen. Ist das irgendwie möglich das ich einen Wert (egal ob REAL oder INT) ins S5T-Format bringe? Also möchte ich die Zeit in Sekunden für den Timer vom Programm selbst berechnen lassen… Jemand nen Tipp?

Ich bedanke mich schonmal fürs lesen und hoffe euch auch bald helfen zu können. Ich weiß das sind grad nicht die schlausten Fragen die ich hier stelle aber ich hab halt leider keine Möglichkeit hier in meine Unterlagen zu schauen oder stundenlang das INet zu durchforsten… sorry.

Also bis bald…

Hi!
Zur Frage 1 kann ich dir vielleicht helfen:
Du hast ja nur RS-FlipFlops (RS-FF) zur Verfügung. Die kannst du zu einem JK-FF erweitern (es gibt keine undefinierten Zustände mehr). Beim JK-FF legst du Jump und Kill aúf logisch 1. Den Takteingang verbindest du mit deinem Taster. Nun arbeitet das FF im Toggelmode. Ich weis leider nicht wie ich die Schaltung hier „malen“ soll, aber in jedem Elektrotechnikbuch in dem FF behandelt werden wird i.d.R. entwickelt, wie man aus einem RS-FF ein JK-FF (MS-JK-FF ginge natürlich auch). Aber schau mal unter http://www.elektronik-kompendium.de/ nach. Dort steht das bestimmt auch (mit „gemalten“ Schaltungen).
Viel Erfolg beim Basteln …

Gruß Christian

Danke für deine Antwort. Aber meine Frage war eigentlich wie ich das RS erweitern muss um nen JK zu bekommen?!

Gruß

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi NetMare,

Also zu Frage 1:

// STEP 7
// pos. Flanke Taster E1.0

U E 1.0
FP M1.0
= M1.1 // Impuls

// EIN - und AUS
U M 1.1
UN A 1.0
S A 1.0 // EIN
R M 1.1 // Das ist die entscheidenen Zeile :smile:
U A 1.0
U M 1.1 // AUS
R A 1.0

Zu Frage 2 :

Brauchst Du nun variable Timer, deren Zeitdauer zur Laufzeit
vom Programm errechnet werden, oder ermittelst Du die endgültigen
Timerwerte während der Inbetriebnahme ?
Ersteres haben wir so noch nicht eingesetzt – aber egal.
Um einen S5Timer zu starten muss der Timerwert nicht unbedingt
im Format S5T#… angegeben werden, es geht auch z.B. ein Merkerwort.
Dort muss der Timerwert BCD-codiert abgelegt werden und zwar so :

0000 0000 0000 0000

|-------10^2 10^1 10^0
|
|
----- Hier steht die Zeitbasis

0 = 0,01s
1 = 0,1s
2 = 1s
3 = 10s

Beispiel :

Angenommen Dein Programm errechnet einen benötigten
Timerwert von 5 Sek. und der steht im MW 10

L MW 10
L 2000 // Zeitbasis für Sekunden
+I // MW10 = 2005
ITB // Integer to BCD
T MW 10

// Merkerwort 10 sollte jetzt so aussehen
// 0002 0000 0000 0101
:
:
// Timer aufrufen

U … // Startbedingung Timer
L MW 10
SV T 1

ich hoffe das konnte helfen.
Zu Fragen rund um SPS und Elektrotechnik habe ich neulich
ein recht gutes Forum gefunden: http://www.sps-forum.de
Schau mal vorbei, das lohnt sich.

bis denne mal …

Jumbo

ps: es gibt keine blöden Fragen – nur blöde Antworten :smile:)

Hi

bin neu hier im Forum und hab gleich mal zwei Fragen…

Ich möchte einen Impulsschalter (T-FlipFlop, 1x tasten EIN -
nochmal tasten AUS) in einer S7 programmieren… Nur kann ich
mich beim besten willen nicht mehr an die Schaltung erinnern.
ich hab schon etwas im Netz gesucht, aber ich befinde mich
hier grade auf einer Ölplattform in der Nordsee (norwegischer
Sektor) und hab daher nicht so die Zeit im Netz zu surfen…
also wenn jemand ne Idee hat?! Her damit :wink:

Ich muss in einer Steuerung sehr viele unterschiedliche Zeiten
(die sich erst nach der Erstinbetriebnahme ermiteln lassen)
programmieren. Jetzt frage ich mich ob es nicht möglich ist
den Zeitwert an einem SI Timer per Berechnung im Programm zu
bestimmen. Sozusagen möchte ich bei bestimmten Bedingungen den
selben Timer mit unterschiedlichen Zeiten nehmen. Ist das
irgendwie möglich das ich einen Wert (egal ob REAL oder INT)
ins S5T-Format bringe? Also möchte ich die Zeit in Sekunden
für den Timer vom Programm selbst berechnen lassen… Jemand
nen Tipp?

Ich bedanke mich schonmal fürs lesen und hoffe euch auch bald
helfen zu können. Ich weiß das sind grad nicht die schlausten
Fragen die ich hier stelle aber ich hab halt leider keine
Möglichkeit hier in meine Unterlagen zu schauen oder
stundenlang das INet zu durchforsten… sorry.

Also bis bald…

Hi NetMare,

Also zu Frage 1:

// STEP 7
// pos. Flanke Taster E1.0

U E 1.0
FP M1.0
= M1.1 // Impuls

// EIN - und AUS
U M 1.1
UN A 1.0
S A 1.0 // EIN
R M 1.1 // Das ist die entscheidenen Zeile :smile:
U A 1.0
U M 1.1 // AUS
R A 1.0

Zu Frage 2 :

Brauchst Du nun variable Timer, deren Zeitdauer zur Laufzeit
vom Programm errechnet werden, oder ermittelst Du die
endgültigen
Timerwerte während der Inbetriebnahme ?
Ersteres haben wir so noch nicht eingesetzt – aber egal.
Um einen S5Timer zu starten muss der Timerwert nicht unbedingt
im Format S5T#… angegeben werden, es geht auch z.B. ein
Merkerwort.
Dort muss der Timerwert BCD-codiert abgelegt werden und zwar
so :

0000 0000 0000 0000

|-------10^2 10^1 10^0
|
|
----- Hier steht die Zeitbasis

0 = 0,01s
1 = 0,1s
2 = 1s
3 = 10s

Beispiel :

Angenommen Dein Programm errechnet einen benötigten
Timerwert von 5 Sek. und der steht im MW 10

L MW 10
L 2000 // Zeitbasis für Sekunden
+I // MW10 = 2005
ITB // Integer to BCD
T MW 10

// Merkerwort 10 sollte jetzt so aussehen
// 0002 0000 0000 0101
:
:
// Timer aufrufen

U … // Startbedingung Timer
L MW 10
SV T 1

ich hoffe das konnte helfen.
Zu Fragen rund um SPS und Elektrotechnik habe ich neulich
ein recht gutes Forum gefunden: http://www.sps-forum.de
Schau mal vorbei, das lohnt sich.

bis denne mal …

Jumbo

ps: es gibt keine blöden Fragen – nur blöde Antworten :smile:)

Hallo, ich bin’s nochmal. Kleiner Nachtrag am Rande…
Ich denke gerade so an die Ölplattform und an Sicherheit. :smile:
Normalerweise sind Aus- und Eintaster zwei getrennte Geräte,
wobei der Austaster als Öffner (drahtbruchsicher) ausgelegt ist.
Der „FlipFlop-Taster“ untergräbt ein bischen die Sicherheit.
Wenn sich z.B. nach dem Einschalten ein Draht löst oder Drahtbruch
auftritt… sollte eine funktionierende Sicherheitseinrichtung
unmittalbar erreichbar sein! – Aber ich bin sicher, das dieses
Thema bei euch ganz ober auf der Liste steht und Du auch daran
gedacht hast.

und tschüß

Hi

bin neu hier im Forum und hab gleich mal zwei Fragen…

Ich möchte einen Impulsschalter (T-FlipFlop, 1x tasten EIN -
nochmal tasten AUS) in einer S7 programmieren… Nur kann ich
mich beim besten willen nicht mehr an die Schaltung erinnern.
ich hab schon etwas im Netz gesucht, aber ich befinde mich
hier grade auf einer Ölplattform in der Nordsee (norwegischer
Sektor) und hab daher nicht so die Zeit im Netz zu surfen…
also wenn jemand ne Idee hat?! Her damit :wink:

Ich muss in einer Steuerung sehr viele unterschiedliche Zeiten
(die sich erst nach der Erstinbetriebnahme ermiteln lassen)
programmieren. Jetzt frage ich mich ob es nicht möglich ist
den Zeitwert an einem SI Timer per Berechnung im Programm zu
bestimmen. Sozusagen möchte ich bei bestimmten Bedingungen den
selben Timer mit unterschiedlichen Zeiten nehmen. Ist das
irgendwie möglich das ich einen Wert (egal ob REAL oder INT)
ins S5T-Format bringe? Also möchte ich die Zeit in Sekunden
für den Timer vom Programm selbst berechnen lassen… Jemand
nen Tipp?

Ich bedanke mich schonmal fürs lesen und hoffe euch auch bald
helfen zu können. Ich weiß das sind grad nicht die schlausten
Fragen die ich hier stelle aber ich hab halt leider keine
Möglichkeit hier in meine Unterlagen zu schauen oder
stundenlang das INet zu durchforsten… sorry.

Also bis bald…

Hi Jumbo,

erstmal n dickes Danke an dich für deine quallifizierte Antwort! Hast mir echt geholfen.

Ja, ich möchte die Werte sozusagen ‚on-the-fly‘ vom Programm ermitteln lassen. Das mit dem MW müsste ja eigentlich klappen… Bin zwar eher der FUP-Typ aber ich denke das sollte auch ich in AWL hinbekommen :wink:

Klar - Sicherheit ist hier ganz groß geschrieben! Ist auch keine Sicherheitsrelevante Sache die ich damit programmieren möchte. Ist nur ein Feedback fürs OP17 umd die Fehlersuche einfacher zu machen. Ist also nur zur internen Verwendung und als Feedback gedacht.

Danke nochmals für deine Antwort.

Bis dann und nen schönes Wochenende (ich hab leider mal wieder keins…)

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]