-> Hier kostenlos registrieren
Hallo,
nachdem ich hier die Motivation und das Vorhaben schon mal beschrieben habe,
hier also quasi die Fortsetzung.
Dass ein Schottischer Dudelsack eine Wissenschaft ist, dazu später vielleicht mehr.
Hier aber mal die Grifftabelle für die Spielpfeiffe:

Als Arbeitsbezeichnungen sollen die in blauer Schrift gelten.
Besonderheit ist, dass die Zugmagneten als mit dem hinten raus kommenden Stößel als Druckmagneten
die Löcher in Erregung schließen sollen. Einfach, weil sie dann die größte Kraft entwickeln und weniger klappern.
1. Frage:
Wie bringe ich eine S7 200 dazu, nach dem Einschalten oder nach Betätigung von z.B. E 0.0
A 0.1 bis A 0.7 zu schließen? (A0.0 bleibt offen, da der Referenzton das A ist.)
2. Frage:
Beim Ton C z.B. muss A0.1 und A0.2 auf Low gehen, alles andere aber auf High.
Bei den anderen Noten Kodierung entsprechend.
Kann ich diese Tonhöhen-Kodes als eine Art Blöcke abspeichern, denn ich benötige
sie immer wieder?
Timer für Notenlängen:
Hatte in 30 Jahren vergessen, dass die S7-200 in den schnellen Timern begrenzt ist.
Hat sie doch bei den 10 ms nur deren 8 und bei 1 ms nur 2.
Wenn ich für jede neue Note auch einen neuen Timer einsetzen müsste, dann wäre damit eine -200 schon gestorben.
Aber volker hat mir dankenswerter Weise dazu folgendes geschrieben:
"Jein. Dein Programm wirst du vermutlich als Schrittkette schreiben. Der Timer benötigt ja immer einen Flankenwechsel. Annahme S1 eine 1/32 Note. S2 eine 1/16 Note. S3 eine 1/32 Note.
Das würde funktionieren da ja S2 den Timer nicht benötigt und du einen neuen Flankenwechsel hast.
S1 1/32, S2 1/32 würde nicht funktionieren. Das könntest du umgehen indem du für jede Note 2 Timer nimmst die du dann, falls nötig, im wechsel verwendest."
Und weiter:
"aber du darfst grundsätzlich die zykluszeit nicht vernachlässigen. timer laufen asynchron zum sps-zyklus.
wenn du z.b. 10ms hast triffst du die 1/32 nicht unbedingt immer passend
man kann sich aber timer selber bauen. z.b. über einen zeit-ob(ob35) die aufrufzeit ist einstellbar.
siehe hier timer.zip http://lischis-home.selfhost.eu/files/SPS/S7/dirindex.php
ob das bei der 200er auch geht weiß ich nicht.
im prinzip müsstest du das ganze programm im zeit-ob schreiben. die zykluszeit deines programms muss natürlich kleiner sein als der 'takt' des ob-aufrufs.
du musst auch die schaltzeiten auf den aktor bedenken. ka wie schnell deine Zug/Druck-Magneten schalten."
Mit einem Trick bezüglich geringfügiger Verlängerung der Zeiten bei den kurzen Noten, respektive der Schaltverzögerung von Relais und Zugmagneten,
käme ich sogar ohne zusätzliche Timer aus, wie diese Tabelle veranschalichen soll, die Alternative.

Damit würde ich es zunächst mit einer S7-200 versuchen wollen.
Vielleicht habt Ihr Antworten auf meine eingangs gestellten 2 Fragen.
nachdem ich hier die Motivation und das Vorhaben schon mal beschrieben habe,
hier also quasi die Fortsetzung.
Dass ein Schottischer Dudelsack eine Wissenschaft ist, dazu später vielleicht mehr.
Hier aber mal die Grifftabelle für die Spielpfeiffe:

Als Arbeitsbezeichnungen sollen die in blauer Schrift gelten.
Besonderheit ist, dass die Zugmagneten als mit dem hinten raus kommenden Stößel als Druckmagneten
die Löcher in Erregung schließen sollen. Einfach, weil sie dann die größte Kraft entwickeln und weniger klappern.
1. Frage:
Wie bringe ich eine S7 200 dazu, nach dem Einschalten oder nach Betätigung von z.B. E 0.0
A 0.1 bis A 0.7 zu schließen? (A0.0 bleibt offen, da der Referenzton das A ist.)
2. Frage:
Beim Ton C z.B. muss A0.1 und A0.2 auf Low gehen, alles andere aber auf High.
Bei den anderen Noten Kodierung entsprechend.
Kann ich diese Tonhöhen-Kodes als eine Art Blöcke abspeichern, denn ich benötige
sie immer wieder?
Timer für Notenlängen:
Hatte in 30 Jahren vergessen, dass die S7-200 in den schnellen Timern begrenzt ist.
Hat sie doch bei den 10 ms nur deren 8 und bei 1 ms nur 2.
Wenn ich für jede neue Note auch einen neuen Timer einsetzen müsste, dann wäre damit eine -200 schon gestorben.
Aber volker hat mir dankenswerter Weise dazu folgendes geschrieben:
"Jein. Dein Programm wirst du vermutlich als Schrittkette schreiben. Der Timer benötigt ja immer einen Flankenwechsel. Annahme S1 eine 1/32 Note. S2 eine 1/16 Note. S3 eine 1/32 Note.
Das würde funktionieren da ja S2 den Timer nicht benötigt und du einen neuen Flankenwechsel hast.
S1 1/32, S2 1/32 würde nicht funktionieren. Das könntest du umgehen indem du für jede Note 2 Timer nimmst die du dann, falls nötig, im wechsel verwendest."
Und weiter:
"aber du darfst grundsätzlich die zykluszeit nicht vernachlässigen. timer laufen asynchron zum sps-zyklus.
wenn du z.b. 10ms hast triffst du die 1/32 nicht unbedingt immer passend
man kann sich aber timer selber bauen. z.b. über einen zeit-ob(ob35) die aufrufzeit ist einstellbar.
siehe hier timer.zip http://lischis-home.selfhost.eu/files/SPS/S7/dirindex.php
ob das bei der 200er auch geht weiß ich nicht.
im prinzip müsstest du das ganze programm im zeit-ob schreiben. die zykluszeit deines programms muss natürlich kleiner sein als der 'takt' des ob-aufrufs.
du musst auch die schaltzeiten auf den aktor bedenken. ka wie schnell deine Zug/Druck-Magneten schalten."
Mit einem Trick bezüglich geringfügiger Verlängerung der Zeiten bei den kurzen Noten, respektive der Schaltverzögerung von Relais und Zugmagneten,
käme ich sogar ohne zusätzliche Timer aus, wie diese Tabelle veranschalichen soll, die Alternative.

Damit würde ich es zunächst mit einer S7-200 versuchen wollen.
Vielleicht habt Ihr Antworten auf meine eingangs gestellten 2 Fragen.