02.01.2021 04:06 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Ella_68, die Antwort zur Lösung deiner Aufgabenstellung ist von der Präzision, mit der du die Angaben zum Vollmond wünschst bzw. benötigst, abhängig!? a) Für Minuten- oder gar Sekundengenauigkeit werden umfangreiche Berechnungen und Berechnungskorrekturen benötigt (Berechnungen mit höheren Programmiersprachen sind im Internet veröffentlicht...)- dieser Weg ist also mit der LOGO! nicht gangbar. b) Für eine Berechnung des Tages für den Vollmond ist jedoch ein Faktor von vm = 29,531 Tagen für den Abstand erforderlich, der einen Mittelwert darstellt. Dabei sind Zeitabweichungen für den Zeitpunkt des Vollmondes innerhalb dieses Tages so in der Größenordnung von ca. +/- 7 Stunden zu berücksichtigen. Mit einer LOGO! könnte mit relativ geringem Aufwand durchaus der Tag (mit 24 h Dauer) für den Vollmond-Zeitraum bestimmt werden. Konzept: Man verwendet eine Wochenschaltuhr um einen Impuls um 00:01 Uhr zu erzeugen, der jeweils einen von 2 Zählern hochzählt, einer periodisch bis 29 (Tage) und der andere bis jeweils 30 (Tage) ausgehend von einen Stichtag für den Vollmond (ggf. müssen beide Zähler mit einem Wert in "vergangene Tage seit VM" einmalig "vorgestellt" werden) für einen Vollmondtag. Lag der Vollmond zeitlich in den ersten 12 h des Tages beginnt man mit dem 29er-Zähler ansonsten mit dem 30er-Zähler - dann jeweils abwechselnd. Die jeweiligen RESET-Impulse der Zähler triggern z.B. eine Ausschaltverzögerung von 24 h oder einen RS-Block, der durch sämtliche Impulse der Wochenschaltuhr zurückgesetzt wird, so dass der jeweilige Tag durch einen Aktiven Blockausgang definiert wird. Da so "nur" ein Faktor von vm = 29,5 realisiert wird, ist (rechnerisch) jeweils periodisch der 30. Vollmondtag nicht am 885 sondern am 886 Tag - und somit unter Verwendung eines weiteren Zählers um einen Tag zu verzögern (die o.g. Zählerfolge wird also für diesen Vollmondtag "übersteuert" und anschließend wie oben beschrieben nach RESET weiter verwendet ....fertig. Der Schaltungsaufwand ist gering und die Schaltung arbeitet mehrere bzw. viele Jahre ohne weitere Korrekturen und berücksichtigt dabei auch Schaltjahre korrekt! Ansonsten währe die bereits genannte Variante mit 12 Jahresschaltuhren (bei Vorgabe von Tag + Uhrzeit) eine durchaus realisierbare Methode, die jedoch 1x jährlich (jeweils innerhalb eines definierten zu wählenden Monats) anzupassen währe. Der Schaltungsaufwand ist vergleichsweise gering - die jährliche Wartung jedoch von großem Nachteil. MfG Betel |
==> Meine TAG-Listen: "deut." |
|
02.01.2021 12:38 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Ella_68, hier zunächst mal eine rudimentäre Schaltung zu dem von mir vorgeschlagenen Konzept. Natürlich unterliegt eine Lösung mit der LOGO! verschiedenen Randbedingungen und ggf. Einschränkungen - doch du hast nach einer Lösungsmöglichkeit mit der LOGO! gefragt... Ich hatte deshalb auch nach dem Hintergrund der Anwendung gefragt, denn ggf. kann eine Lösung daran angepasst werden...Ja, die erforderlichen Kontrollen und ggf. Eingaben zum Start der Schaltung und zum Wiederstart sind kritisch wegen der begrenzten Möglichkeiten - da hilft dann nur die Variante mit konkreten Zeitangaben per Schaltuhren - bei entsprechendem Wartungsaufwand! Die angewendete Methode der Bestimmung der Vollmond-Tage sollte auch auf der LOGO! langzeitstabil laufen! Und natürlich kann man jede Menge ergänzen.... MfG Betel DateianhangDEMO_Vollmond_V01.zip (68 Downloads) |
==> Meine TAG-Listen: "deut." |
|
Für diesen Beitrag bedanken sich1 Benutzer |
02.01.2021 17:42 | |
Beigetreten: 22.02.2008 Letzter Bes: 22.02.2024 Beiträge: 2698 Bewertung: (206) |
Ich möchte ja niemandem zu nahe treten, aber eine tagesgenaue Berechnung ist mit der mittleren Mondumlaufzeit nicht zu erreichen. Das zeigt bereits die angehängte ODS-Datei mit verschiedenen Tagesabständen mit alleine 3 Fehldaten im ersten Jahr. Da der Mittelwert bereits Schwankungen von +/- 7 Stunden unterworfen ist, wäre das eher Zufall, wenn es ein Jahr lang passt. Die Variante mit der geringsten Anzahl an Blöcken und taggenauer Auswertung wird immer die mit den Jahresschaltuhren sein. Im Anhang sind auch gleich die UDF-Dateien für 2021 und 2022 in der Hoffnung, die richtigen Tage aus dem richtigen Kalender genommen zu haben. Wer es nicht jedes Jahr eingeben will und genügend Blöcke frei hat, kann die UDF-Dateien für weitere Jahre erweitern und in einem Programm über ODER-Block zusammenführen. M.f.G. Scorp DateianhangVollmond.zip (85 Downloads) |
02.01.2021 21:13 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Scorp, Hallo Ella_68, ja das ist schon richtig, diese Methode hat einen Fehler von +/- einem Tag. Andererseits ist sie Wartungsfrei solange kein Spannungsausfall über einen oder mehrere Tage hinweg auftritt. Auch sollte die Variante nur eine Lösungsmöglichkeit mit der LOGO! aufzeigen. Wie gesagt sind präzisere Vorhersageberechnungen des Auftretens von Vollmond deutlich komplexer und voraussichtlich nicht für die LOGO! geeignet. Einzige Variante ist dann vermutlich die von scorp - dafür dann mit gewissem geplanten Wartungsaufwand...Ggf. könnte man auch meinen Vorschlag (mit wiederkehrenden textmeldungen zur Aufforderung einer Wartung) zeitlich an die mittels Schaltuhren definierte Zeitdauer der Vorhersagen anschließen - für den Fall, das keine Wartung bzw. Neudefinition der Schaltuhrzeiten (termingerecht) erfolgt? MfG Betel |
==> Meine TAG-Listen: "deut." |
|
03.01.2021 17:12 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Scorp, vielen Dank für deine Datei - ich arbeite mit LS 8.2.1. So, bezüglich deiner Version hätte ich zwei Vorschläge zur Verbesserung: a) Im Dateianhang habe ich mal eine Ergänzung dahingehend skizziert, dass man die Jahresschaltuhren so parametriert, das diese für ZWEI aufeinander folgende Vollmond-Ereignisse verwendet werden können (die Schalteingänge sind nur zur Simulation und zum Testen der Anordnung vorhanden). Mittels zusätzlicher Flankenauswertung und einer Ausschaltverzögerung für 24 h wird deine Schaltung dann (zwischen dem letzten ODER und Q) ergänzt. Mittels 4 zusätzlichen Blöcken kann so die Geltungsdauer verdoppelt werden (also auf 2 Jahre). b) Ergänzend dazu sollte auch das 3. ODER in deinem UDF voll genutzt werden. Dann wären zusammen mit a) 2 * (12+4) = 32 Vollmond-Ereignisse möglich. Diese decken dann also 30 Monate (2,5 Jahre) Laufzeit plus 2 Monate Karenzzeit für die Wartung bzw. Redefinition der Vollmond-Daten ab! MfG Betel DateianhangSchaltplan_VM_Vorschlag.zip (74 Downloads) |
==> Meine TAG-Listen: "deut." |
|
03.01.2021 18:46 | |
Beigetreten: 22.02.2008 Letzter Bes: 22.02.2024 Beiträge: 2698 Bewertung: (206) |
Hallo Bethel, die Idee ist schon mal sehr gut, spart es doch die grob die Hälfte der Bausteine. Wenn Ella_68 oder jemand Anderes sowas haben möchte, muss er nur noch die Daten alle eingeben. Das Erstellen einer UDF oder die Blöcke direkt in einem Diagramm ist hier nur Fleißarbeit. Ich bin das Problem nur aus mathematischen Gründen als "Knobelaufgabe" angegangen, brauche die Vollmonddaten für mich eher nicht. Da mir die exakte Berechnung zu kompliziert erschien für die Logo, habe ich es bei den Jahresschaltuhren gelassen und stattdessen folgende Überlegungen angestellt: 1. Bei einer Zählerversion gibt es ja nur die Möglichkeiten, dass es 29 oder 30 Tage bis zum nächsten Vollmond ist. Man kann auch 29+"0" oder 29+"1" sagen. Diese "0" oder "1" belegt nur 1 Bit und könnte für max. 13 Vollmonde pro Jahr in einem Wort hinterlegt werden. Durch Auswertung des passenden Bits ließe sich also der richtige Additionswert ermitteln. Kostet sicherlich einige Blöcke, ist aber sehr genau. 2. Bei einer Datumsversion ließen sich 4 Vollmonddaten in einem analogen Multiplexer unterbringen. Um jetzt das kodierte Datum mit dem aktuellen Datum zu vergleichen, benötigt man eine zweite Logo oder aber ein Display mit auslesbarem Datum. Mit genügend freien Blöcken sollte man 5-10 Jahre unterbringen können. Das kodierte Datum könnte z.B. 1000*MM+10*TT+J sein, um den Arithmetikbereich der Logo einzuhalten. Es geht natürlich auch 1000*TT+10*MM+J. J ist einfach die letzte Ziffer der Jahreszahl. Die Vollmonddaten aller Multiplexer ließen sich z.B. über einen freilaufenden Zähler vergleichen, wenn man nur den Vollmondtag haben möchte, ohne das Datum anzeigen zu wollen. Bei einem Komplettdurchlauf ohne Gleichheit mit dem aktuellen Datum ist kein Vollmond. 3. Viele Displays nicht nur von Siemens bieten weitaus mehr Speicher an und könnten mit einer indizierten Adressierung die Vollmonddaten auch für größere Zeiträume liefern. Diese Variante bietet sich aber leider nur wenigen Nutzern der Logo an. Falls sich doch noch eine geeignete Formel finden sollte, die wenigstens für 20xx gilt, kann man auch wieder über Berechnungen nachdenken, aber bisher habe ich nichts Brauchbares gefunden. M.f.G. Scorp P.S. Im Anhang noch die Vollmonddaten bis 2030, kann man natürlich auch im Internet finden. DateianhangVollmond2021-30.zip (69 Downloads) |
Zuletzt bearbeitet von: Scorp am: 01/03/2021 18:48:43 |
|
Für diesen Beitrag bedanken sich1 Benutzer |
03.01.2021 21:41 | |
Beigetreten: 05.01.2007 Letzter Bes: 07.04.2023 Beiträge: 1690 Bewertung: (580)
|
Hallo Scorp, meine Vorschläge sind aus einer sehr ähnlichen Motivation entstanden - und so sollte Ella_68 nun Antworten erhalten haben. Mich interessiert allerdings, wie eine Lösung der von dir unter 1. genannten Variante als Schaltung für die LOGO! tatsächlich aussieht (und funktioniert). Für ein entsprechendes Beispiel (bei Gelegenheit) wäre ich dir dankbar. MfG Betel |
==> Meine TAG-Listen: "deut." |
|
Folgen Sie uns auf