Schichtrythmus in PL bekommen

Antworten
komoloko
Beiträge: 44
Registriert: Dienstag 14. Oktober 2008, 16:56
Wohnort: Bremen

Schichtrythmus in PL bekommen

Beitrag von komoloko » Sonntag 3. Januar 2010, 23:13

Hallo!

Ich habe folgendes Problem: Ich arbeite Wechselschicht, und müßte diesen Ryhtmus in PL bekommen, für Licht, Sound und Heizung meiner Wohnung. Jetzt ist es so, das ich Früh, Nacht, Frei, Frei arbeite, und dann wieder von vorne.

Würde gerne wenn ich Frühschicht habe, das Radio und Licht einschalten lassen zum Wecken und kurz bevor ich wieder nach Hause komme. Aber wie bekomme ich den Rythmus ins PL?

Habe überlegt mit Exel zu arbeiten, kann man da so einen Plan erstellen und den mit PL auslesen, um PL den Schichttag und somit verschiedene (Schalt-)Uhrzeiten zu vermitteln.

Meine Idee war, einen 4-Tage-Rythmus zu machen, aber dann müßte man ja bei jedem Update wieder genau schauen, das man dieses Rythmus trifft. Daher die Überlegung mit Exel.

Vielleicht hat ja jemand etwas ähnliches gemacht und ne Idee?

Holger
Geht nicht gibts nicht.

Microprocessor
Beiträge: 79
Registriert: Montag 27. Oktober 2008, 00:03

Re: Schichtrythmus in PL bekommen

Beitrag von Microprocessor » Montag 4. Januar 2010, 01:46

Hallo Holger,

eine mögliche Lösung findest Du unter

viewtopic.php?f=21&t=1133&p=2403#p2403

Als Alternative (Thema Dauerbetrieb) verweise ich auf meinen Beitrag

viewtopic.php?f=21&t=1332

Gruß
microprocessor

komoloko
Beiträge: 44
Registriert: Dienstag 14. Oktober 2008, 16:56
Wohnort: Bremen

Re: Schichtrythmus in PL bekommen

Beitrag von komoloko » Montag 4. Januar 2010, 17:55

Hallo Microprozessor,

Bei Deiner Lösung stellt sich das Problem der Synchronität der Schaltung. Diese würde nach einiger Zeit sicher etwas aus dem Ruder laufen (Wenn ich die Schaltung richtig verstanden habe). Zudem gäbe es keine Umschaltung von Sommer- auf Winterzeit.

Wenn ich jedoch jeden 4. Tag um 5 Uhr geweckt werden möchte, und am darauffolgenden Tag um 17 Uhr einen Warnhinweis bekommen möchte, muß ich PL doch nur irgendwie beibringen, was für ein Tag gerade ist... und diesen Plan z.B. in Exel hinterlegen.

Grob hab ich mir das so vorgestellt: In Exel ist mein Schichtplan hinterlegt, und PL schaut in der Exeltabelle nach, was für eine Schicht ist und schaltet dementsprechend die Ausgänge.

Holger
Geht nicht gibts nicht.

Microprocessor
Beiträge: 79
Registriert: Montag 27. Oktober 2008, 00:03

Re: Schichtrythmus in PL bekommen

Beitrag von Microprocessor » Mittwoch 6. Januar 2010, 09:11

Hallo Holger,

wenn ich es an Hand der ProfiLab-Hilfe und Beispiele richtig verstanden habe, kann man über ein DDE- Element
nur jeweils eine Zelle in Excel adressieren. Da ich kein Excel habe (auf meinem Windows-Rechner läuft nur ProfiLab,
sonst alles auf Linux-Rechner) konnte ich das nicht verifizieren. Wenn dem so wäre, müsstest Du die Excel-Tabelle in
das TXT-Format exportieren mit z.B. Kommata als Separatoren und diese Datei als Input für das Projekt verwenden.

Da in der Aufgabenstellung kein Daten-Format angegeben war, habe ich mal ein einfaches Format angenommen und
für den Test vier Kanäle für Aktionen vorgesehen ( 1, 2, 4, 8, andere Kodierung/Dekodierung ad. lib.))

Input - Format (durch Kommata getrennt):

TAG,MONAT,JAHR,STUNDE,MINUTE,KANAL.NR,ACTION(1=ON/0=OFF)

Beispiel:

6,1,2010,8,0,1,1

6,1,2010,8,1,1,0

6,1,2010,8,2,2,1

6,1,2010,8,3,2,0

6,1,2010,8,4,4,1

6,1,2010,8,5,4,0

6,1,2010,8,6,8,1

6,1,2010,8,7,8,0

6,1,2010,8,8,1,1

6,1,2010,8,9,2,1


Der Zählerausgang liefert die Satznummer in der Textdatei. Die Daten werden mit $PART getrennt und Datum und
Uhrzeit mit der Systemzeit verglichen

Der Kanalnummer-String wird in einen numerischen Wert umgewandelt und über einen A/D-Wandler dekodiert.

Der ACTION-String (ON/OFF) wird in einen numerischen Wert umgewandelt und an die Flip-Flop-Eingänge geführt.

Die nächste Aktion wird bei Zeitgleichheit (CLK FF) ausgeführt.

Bei Verwendung von Schichtplänen, die neben zukünftigen auch vergangene Aktionen enthalten, lässt sich durch
den Taster die nächste aktuell auszuführende Aktion selektieren (synchronisierne). Durch das Hochtasten ist
sichergestellt, daß der Stand der vergangenen Aktionen berücksichtigt wird. Mit entsprechender Auswertung der
Komparatoren-Ausgänge und einem Takt lässt sich ein automatisches Zählen bis zur nächsten aktuellen Aktion realisieren.


Einschränkungen:

Nur eine Aktion pro Minute
Ggfs. auf Sekunden erweitern oder ganz andere Lösung

Für Beispiel nur vier Kanäle realisiert.
Ggfs. erweitern . Mit der Hex- bzw. BIN-Kodierungcodiert sind unbegrenzte Kanalzahlen möglich.
Bei dedizierter Kanalangabe im String sind 11 Kanäle möglich, da $PART maximal 16 Strings trennen kann und
Datum und Uhrzeit bereits 5 Strings benötigen.

In der Textdatei dürfen keine führenden Nullen bei Datum und Uhrzeit enthalten sein, da sonst der Stringvergleich
nicht funktioniert. Wenn führende Nullen gewünscht werden, alle Werte per VALUE auf numerisch konvertieren und
mit numerischem Vergleicher arbeiten.

z.Zt. Manuelle Synchronisation per Taster

EOF-Bedingung nicht ausgewertet
Ggfs. auch auf RESET der Flip-Flops, um bei Satzüberschreitung alles auf Null zu stellen.


Gruß
microprocessor
Dateianhänge
schicht.prj
(20.33 KiB) 243-mal heruntergeladen

abacom
Site Admin
Beiträge: 3444
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Schichtrythmus in PL bekommen

Beitrag von abacom » Mittwoch 6. Januar 2010, 10:30

Vielleicht hat ja jemand etwas ähnliches gemacht und ne Idee?
Hier einmal ein gaaaanz anderer Vorschlag, nur so als Idee zum Stichwort "Rhythmus"...

Wer sich (vielleicht als Musiker) schon einmal mit MIDI beschäftigt hat, der kennt wohl auch die
eine oder andere MIDI-Sequenzer-Software. Mit solchen Programmen können (nicht nur Musik-) MIDI-Ereignisse
zeitlich aufgezeichnet, bearbeitet und abgespielt werden. Diese sogenannten MIDI-Events kann auch ProfiLab mit seinen Komponenten verarbeiten. Die Verbindung zwischen der ProfiLab-Software und der Sequenzer-Software kann man entweder hardwaremässig (MIDI IN<->OUT) herstellen. Noch besser geht es per Software, wenn man ein sogenanntes
"Virtuelles MIDI loopback" installiert. Sequenzer und Loopback-Software findet man teilweise sogar kostenlos im WWW.
Mit den Sequenzern kann man dann meist auch sehr komplexe, zeitgenaue Abfolgen erstellen, speichern, loopen, etc.

Links:
http://de.wikipedia.org/wiki/Musical_In ... _Interface
http://de.wikipedia.org/wiki/Sequenzer_(Musik)
http://www.freedownloadscenter.com/Mult ... river.html
ABACOM support

GP Helli
Beiträge: 58
Registriert: Donnerstag 12. März 2009, 21:21
Wohnort: Graz

Re: Schichtrythmus in PL bekommen

Beitrag von GP Helli » Mittwoch 6. Januar 2010, 22:33

Hallo und Servus aus Graz!
..habe die Idee mit dem Sequenzer aufgenommen und einen
4-Tage-4-Ausgäge-Sequenzer "gebastelt"
(Siehe Datei)
@Abacom: ja mit MIDI kann man einiges "anstellen" 8-)
Hervoragend eignet sich die MIDI- Geschichte für zeitkritische Anwendungen (Sequenzen) im 100mS Bereich.
Für musikalische Anwendungen sind die Latenzen zu hoch (nur bei mir?)
(Siehe Datei)
MIDI Drums.prj
(33.67 KiB) 241-mal heruntergeladen
_________________
Habt´s a schöne Zeit!
GP Helli
Tages sequenzer.prj
(11.74 KiB) 265-mal heruntergeladen

komoloko
Beiträge: 44
Registriert: Dienstag 14. Oktober 2008, 16:56
Wohnort: Bremen

Re: Schichtrythmus in PL bekommen

Beitrag von komoloko » Donnerstag 7. Januar 2010, 18:34

Hallo GP Helli!

Den 4-Tages Sequenzer finde ich super, das werde ich mal für meine Bedürfnisse anpassen und mal laufen lassen. Bin mal gespannt ob das stabil läuft.

Mit der MIDI-Sequenz kann ich aber nichts anfangen? :?:

Vielen Dank für den Sequenzer, werde berichten wie es denn bei mir funktioniert. :)

Werde erstmal mit Lichtsteuerung anfangen... mal sehen wie es wird!

Dankeschön, Holger
Geht nicht gibts nicht.

GP Helli
Beiträge: 58
Registriert: Donnerstag 12. März 2009, 21:21
Wohnort: Graz

Re: Schichtrythmus in PL bekommen

Beitrag von GP Helli » Donnerstag 7. Januar 2010, 20:45

Hallo und Servus aus Graz!
@Holger: Entschuldigung, habe mich unklar ausgedrückt :oops:
Das mit dem MIDI hat mit deiner Geschichte nicht wirklich was zu tun!

...wollte nur den "Faden" von Abacom aufnehmen.
Mittels MIDI Sequenzern lassen sich sehr komplexe Abläufe recht einfach und
erstellen und editieren.(halt so ganz ohne "Programmiererei :roll: )
z.B.: 16 Kanäle( Spuren) mit je 128 Ereignissen (Töne) wobei man jedem Ereignis noch jede Menge Infos mitgeben kann...
nur zur Erinnerung : MIDI "klingt" nicht, es ist ein relativ genau definiertes Protokoll das über eine (modifizierte) RS232 Schnittstelle läuft.
und das Ganze in PL einbinden zu können finde ich einfach toll!!!
@Abacom: Herzlichen Dank dafür :D
Habt´s a schöne Zeit!

komoloko
Beiträge: 44
Registriert: Dienstag 14. Oktober 2008, 16:56
Wohnort: Bremen

Re: Schichtrythmus in PL bekommen

Beitrag von komoloko » Freitag 8. Januar 2010, 11:45

Hallo GP Helli,

habe Deine Schaltung im Test, und mir ist folgendes aufgefallen: Der Festwert zur Tagesumschaltung über den Vergleicher muß den Wert 23 haben, damit beim Umschalten der Uhr von 23:59 auf 0:00 Uhr der nächste Tag gesetzt wird. Mit dem Wert 24 klappt das nicht, da die Uhr immer auf 0:00 springt, und nie den Wert 24 annimmt.

Ansonsten funzt das bisher einwandfrei!

Holger
Geht nicht gibts nicht.

GP Helli
Beiträge: 58
Registriert: Donnerstag 12. März 2009, 21:21
Wohnort: Graz

Re: Schichtrythmus in PL bekommen

Beitrag von GP Helli » Freitag 8. Januar 2010, 13:25

Hallo und Servus aus Graz!
@Holger:
Danke !
so genau hab ich die Schaltung nicht getestet :oops:
(wollte nur einen Weg vorschlagen)
Habt´s a schöne Zeit!

testerer
Beiträge: 147
Registriert: Donnerstag 4. Juni 2009, 10:17
Wohnort: Sachsen

Re: Schichtrythmus in PL bekommen

Beitrag von testerer » Montag 11. Januar 2010, 18:46

Hallo komoloko,

Exceltabelle mit DDE in Profilab auswerten. Mein Problem ist nur, die Tabelle auf den Tag zu aktualisieren (heute() automatisch aktualisieren, ohne beenden der Tabelle). Zur Zeit muss ich die Tabelle schliessen/öffnen um mit sverweis die richtige Schicht zu übergeben. Sonst funzt es. Datum wird mit dem Schichtrythmus abgeglichen und in PLE eingelesen und richtig ausgewertet. Vielleicht ist ein Excelfreak hier (makro)? Einmal öffnen der schicht.xls und E1 aktualisiert sich selbstständig...

komoloko
Beiträge: 44
Registriert: Dienstag 14. Oktober 2008, 16:56
Wohnort: Bremen

Re: Schichtrythmus in PL bekommen

Beitrag von komoloko » Montag 11. Januar 2010, 22:40

Hallo Testerer,

Habe die Schaltung mal ausprobiert. Hatte auch das Problem das ich die Exel-Datei zweimal öffnen mußte. Habe dann ein Monoflop dazugeschaltet, und das Öffnen der Exel-Datei 10sek. verzögert. Dann ging das beim ersten mal Öffnen.

Wenn ich nun allerdings Änderungen in der Exeltabelle vornehme, wird diese Änderung nur Einmal übernommen. Danach scheint kein Abgleich mehr stattzufinden.
Und beim Öffnen der Exel bekomme ich eine Fehlermeldung, das die Sicherheitsstufe auf "hoch" steht, und somit keine Makros geöffnet werden können.

Alles sehr merkwürdig... Aber genau da wollte ich hin. Nur funzt es nicht so wie gewünscht. Sehr gut finde ich, das man auch den Urlaub eintragen kann! Vielleicht findet ja jemand den Fehler?

Holger
Geht nicht gibts nicht.

testerer
Beiträge: 147
Registriert: Donnerstag 4. Juni 2009, 10:17
Wohnort: Sachsen

Re: Schichtrythmus in PL bekommen

Beitrag von testerer » Dienstag 12. Januar 2010, 18:40

Hi komoloko,

das mit dem zweimal Öffnen ist seltsam, geht bei mir gleich beim ersten mal und Änderungen werden immer übernommen (ich benutze MS Office 2007).
Das mit der Sicherheitsmeldung kann man in den Untiefen der Exceloptionen ändern. Aber ich dachte, ich hätte alle Testmakros entfernt...

Hi Excelfreak,
H I L F E!

Was mir noch auffiel: die Strings in den einzelnen CNST-Bausteinen benötigen nach dem Zeichen Leerzeichen,
z.B.: nicht "F" sondern "F ".

testerer
Beiträge: 147
Registriert: Donnerstag 4. Juni 2009, 10:17
Wohnort: Sachsen

Re: Schichtrythmus in PL bekommen

Beitrag von testerer » Mittwoch 3. Februar 2010, 01:36

Hi komoloko,

die Excel-Schichttabelle wird nun einmal mit dem Projekt gestartet und aktualisiert sich aller 10 s per Makro selbst, d.h. im "schlimmsten" Fall hat man eine 10 s Verzögerung. Lässt sich aber im Makro einstellen:
Makro je nach Excelversion entweder in auto_open oder autoexec benennen:

Code: Alles auswählen

Sub auto_open()
Calculate
Application.OnTime Now + TimeValue("00:00:10"), "auto_open"
End Sub
00:00:10 aller 10 s
00:10:00 aller 10 min usw.
Spalte A und B bis zum möchtegern ausfüllen und Sverweis in F1 dementsprechend ändern.
Gegebenfalls musst Du noch die Makrosicherheitseinstellungen ändern (vertrauenswürdiger Speicherort etc, je nach Excelversion).

http://www.pcwelt.de/forum/office-progr ... ren-2.html
http://www.supportnet.de/fresh/2005/8/id1134866.asp

Prüfi
Beiträge: 36
Registriert: Montag 30. November 2009, 18:58

Re: Schichtrythmus in PL bekommen

Beitrag von Prüfi » Dienstag 9. Februar 2010, 18:23

Etwas zum Ausprobieren, damit EXCEL nicht immer laufen muss.

Die nircmd Dateien immer in den Hauptordner legen. Die sind zum speichern der Tabellen. Auch in den Compilierten Ordner
Die Tabellen werden mit Hotkey gesteuert, bitte beachten, wenn man es sich an seine Bedürnisse anpasst.

Wichtig: Nur ein Befehl pro Kanal/TAG, ein Ausfilterungs Code würde das sprengen. Es beginnt so schon langsam zu werden, vorwiegentlich wegen den Buffer



Kleiner Fehler Korrigiert
Dateianhänge
Schaltuhr_Idee4.zip
(101.83 KiB) 173-mal heruntergeladen

abacom
Site Admin
Beiträge: 3444
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Schichtrythmus in PL bekommen

Beitrag von abacom » Freitag 1. November 2013, 15:54

Das müsste passen...
viewtopic.php?f=43&t=3642
ABACOM support

Antworten

Zurück zu „Haussteuerungen“