Befehl 3-5 mal pro Sekunde senden
Moderator: Co-Administratoren
Befehl 3-5 mal pro Sekunde senden
Hallo!
Ich möchte gerne einen Befehl ca. 3-5 mal pro Sekunde senden.
Empfänger einschalten
warte("00:00:01")
...
So ist es ab nur möglich das ganze einmal pro Sekunde zu machen.
Über ein Makro möchte ich den Empfänger starten.
starte(Empfänger)
Gruß
Maik
Ich möchte gerne einen Befehl ca. 3-5 mal pro Sekunde senden.
Empfänger einschalten
warte("00:00:01")
...
So ist es ab nur möglich das ganze einmal pro Sekunde zu machen.
Über ein Makro möchte ich den Empfänger starten.
starte(Empfänger)
Gruß
Maik
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Maik
Du kannst mit einer Zahlenvariable auch kürzere "WARTE" machen:
Viele Grüsse
Bümpi
Du kannst mit einer Zahlenvariable auch kürzere "WARTE" machen:
Code: Alles auswählen
** Variable Fuenftelsekunde, Typ Zahl, Startwert 0,0
** Der Tag hat 86'400 Sekunden; 1/5 Sekunde also 1/432000 Tag
Fuenftelsekunde := 1/432000
warte(Fuenftelsekunde)
Bümpi
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Bümpi,
Du schreibst ja bald in Echtzeit
Danke, werde ich so machen!
Schönen Sonntag noch!
Gruß
Maik
Du schreibst ja bald in Echtzeit
Danke, werde ich so machen!
Schönen Sonntag noch!
Gruß
Maik
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Bümpi,
habe es so gemacht, es geht aber darf ich das so machen oder ist das nicht richtig/gut?
Gruß
Maik
habe es so gemacht, es geht aber darf ich das so machen oder ist das nicht richtig/gut?
Code: Alles auswählen
warte(1/432000)
Maik
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Mike
Bei mir funktioniert es nicht so. Ich kann keine Rechenoperation als Parameter für das WARTE() verwenden. Dann wird es übersprungen. Also auch bei WARTE(1/2) wird nicht ein halber Tag lang gewartet. Geht das bei dir?
Viele Grüsse
Bümpi
Bei mir funktioniert es nicht so. Ich kann keine Rechenoperation als Parameter für das WARTE() verwenden. Dann wird es übersprungen. Also auch bei WARTE(1/2) wird nicht ein halber Tag lang gewartet. Geht das bei dir?
Viele Grüsse
Bümpi
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Bümpi,
ja hast recht, es wird übersprungen.
Durch das warte(1/2) wird aber dennoch eine kurze Verzögerung erzielt, das sah dann so wie eine 1/5sek aus
Gut das ich nochmal doof gefragt habe.
Danke!
MfG
Maik
ja hast recht, es wird übersprungen.
Durch das warte(1/2) wird aber dennoch eine kurze Verzögerung erzielt, das sah dann so wie eine 1/5sek aus
Gut das ich nochmal doof gefragt habe.
Danke!
MfG
Maik
Re: Befehl 3-5 mal pro Sekunde senden
Hallo,
nochmal gefragt
In der INI Textdatei:
BeleuchtungWarteZeit1 = "1/2160" (wird gelesen und zugewiesen)
In der INI Datei
BeleuchtungWarteZeit = Zeichen
Im Empfänger:
EM_DI_AQ_Licht_3111.WarteZeit = Zahl (0,0)
In der INI Datei:
EM_DI_AQ_Licht_3111.WarteZeit := BeleuchtungWarteZeit
Jetzt wird der Wert nicht zugewiesen. Wie muss ich das machen, das er den gelesenen Wert als Zahl interpretiert wird?
Gruß
Maik
nochmal gefragt
In der INI Textdatei:
BeleuchtungWarteZeit1 = "1/2160" (wird gelesen und zugewiesen)
In der INI Datei
BeleuchtungWarteZeit = Zeichen
Im Empfänger:
EM_DI_AQ_Licht_3111.WarteZeit = Zahl (0,0)
In der INI Datei:
EM_DI_AQ_Licht_3111.WarteZeit := BeleuchtungWarteZeit
Jetzt wird der Wert nicht zugewiesen. Wie muss ich das machen, das er den gelesenen Wert als Zahl interpretiert wird?
Gruß
Maik
Re: Befehl 3-5 mal pro Sekunde senden
Mann bist Du gut im Informationen zurückhalten!
Eigentlich verstehe ich nur Bahnhof.
Ich versuche es trotzdem mal:
In einer INI-Datei kannst Du keine Rechenoperationen ausführen!!!
Das ganze könnte zwar als Zeichenkette eingelesen werden, aber niemand kann das weiterverarbeiten (es sei denn, Du programmierst einen Parser, der der die Zeichenkette auseinandernimmt und interpretiert...)
Also: einige Dich in der Inidatei auf eine feste EINHEIT (z.B. Millisekunden) und gib den Wert in dieser Einheit an.
Dann liest Du den Wert wie gehabt ein. Wenn er letztendlich in der Zahlenvariable steht, kannst Du ihn mit einer Rechenoperation in den Bruchteil eines Tages umrechnen, so wie es die WARTE-Funktion dann versteht.
Gruss
Thomas
Eigentlich verstehe ich nur Bahnhof.
Ich versuche es trotzdem mal:
In einer INI-Datei kannst Du keine Rechenoperationen ausführen!!!
Das ganze könnte zwar als Zeichenkette eingelesen werden, aber niemand kann das weiterverarbeiten (es sei denn, Du programmierst einen Parser, der der die Zeichenkette auseinandernimmt und interpretiert...)
Also: einige Dich in der Inidatei auf eine feste EINHEIT (z.B. Millisekunden) und gib den Wert in dieser Einheit an.
Dann liest Du den Wert wie gehabt ein. Wenn er letztendlich in der Zahlenvariable steht, kannst Du ihn mit einer Rechenoperation in den Bruchteil eines Tages umrechnen, so wie es die WARTE-Funktion dann versteht.
Gruss
Thomas
Re: Befehl 3-5 mal pro Sekunde senden
Hallo!
Übergebe jetzt nur den Wert!
Aber ich verstehe es dennoch nicht mit den Zeiten
1/5 sek. = 1/432000
1 sek. = 1/86400
40 sek. = 1/2160
soweit passt das.
60 sek. = 1/1440
ab da geht das nicht.
Wenn Bümpi jetzt auch sagt das 1/2 ein Tag ist
Wäre es nicht so:
1/2 ist genau ein halber Tag oder 12 Stunden
1/24 ist genau eine Stunde
1/1440 ist genau eine Minute
1/86400 ist genau eine Sekunde
Wenn ich Warte mit einer Zahl übergebe, was gebe ich da dann an?
Schönen Abend
Maik
Sorry, wollte ich garnichtMann bist Du gut im Informationen zurückhalten!
Danke! Hast schon alles richtig verstanden.Eigentlich verstehe ich nur Bahnhof.
Ich versuche es trotzdem mal:
Übergebe jetzt nur den Wert!
Aber ich verstehe es dennoch nicht mit den Zeiten
1/5 sek. = 1/432000
1 sek. = 1/86400
40 sek. = 1/2160
soweit passt das.
60 sek. = 1/1440
ab da geht das nicht.
Wenn Bümpi jetzt auch sagt das 1/2 ein Tag ist
Wäre es nicht so:
1/2 ist genau ein halber Tag oder 12 Stunden
1/24 ist genau eine Stunde
1/1440 ist genau eine Minute
1/86400 ist genau eine Sekunde
Wenn ich Warte mit einer Zahl übergebe, was gebe ich da dann an?
Schönen Abend
Maik
-
- Ehrenmitglied
- Beiträge: 12194
- Registriert: 29.07.2006, 15:58
- Wohnort: Schweiz
- Danksagung erhalten: 5 Mal
Re: Befehl 3-5 mal pro Sekunde senden
Hallo Maik
Viele Grüsse
Bümpi
Doch, genau so ist es. Ich habe doch nicht gesagt, das 1/2 ein Tag sei, sondern von einem halben Tag gesprochen.mfreye hat geschrieben:Wäre es nicht so:
1/2 ist genau ein halber Tag oder 12 Stunden
1/24 ist genau eine Stunde
1/1440 ist genau eine Minute
1/86400 ist genau eine Sekunde
Was geht da bei dir nicht? Hab's eben ausprobiert - bei mir wartet er eine Minute; wie es sein soll.mfreye hat geschrieben:60 sek. = 1/1440
ab da geht das nicht
Eben: Eine Dezimalzahl, welche dem zu wartenden Bruchteil eines Tages entspricht. Also für eine Minute z.B. 0,0006944444. Bequemer: Eine Variable, der du vorher über 1/1440 diesen Wert zugewiesen hast.mfreye hat geschrieben:Wenn ich Warte mit einer Zahl übergebe, was gebe ich da dann an
Viele Grüsse
Bümpi