einzel bit beschaltung

candemirkorkmaz

Level-1
Beiträge
53
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo lieber forum gemeinde;
Wie kann ich die folgende bits in jeder 15 sekunden lang einzel beschalten ,die nur true sind .wenn sie nicht true ist ,es soll über springen bis zum nachtesns true bit.und wieder ganz am anfag wiederholen.
vielen dank für jeders antwort.

Z.B
a=true
b=true
c=false
d=true
e=false
f=true
g=true
h=true
i=true
k=false
l=true
m=false
s=true
 
@TE:
Sorry - aber ich kann aus deiner Beschreibung beim besten Willen nicht erkennen, was du machen willst.
Was soll wann passieren ...?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo lieber forum gemeinde;
Wie kann ich die folgende bits in jeder 15 sekunden lang einzel beschalten ,die nur true sind .wenn sie nicht true ist ,es soll über springen bis zum nachtesns true bit.und wieder ganz am anfag wiederholen.
vielen dank für jeders antwort.

Z.B
a=true
b=true
c=false
d=true
e=false
f=true
g=true
h=true
i=true
k=false
l=true
m=false
s=true

Ich brauche einen funktion block die nur mir beschaltene bool variabeln in jeder 15 sekunde zürück gibt.oder anders gesagt es soll festellen welche varibeln in true zustand sind.
 
... jetzt bin ich immer noch nicht schlauer - sorry ...
Vielleicht gibst du mal ein Beispiel, was der Baustein wann zurückgeben soll.
Sollen die Variablen "a" bis "s" INPUT-Variablen für den Baustein sein ?
Was soll mit den Zuständen der Variablen gemacht werden ?

Gruß
Larry
 
Ich denke, er will ein Array OF STRING als Ausgang mit den Buchstaben a-s, wobei nur die Buchstaben im Array stehen sollen, die auch als Eingang TRUE sind.

Ich würde mal für den Anfang mit der Deklaration beginnen.
Ein arrMyArray: ARRAY [1..13] OF STRING als VAR_OUTPUT
Die Boolschen Variablen als VAR_INPUT.

im Baustein dann eine einfache überprüfung der boolschen Eingänge:

IF a THEN
arrMyArray[1]:= 'a';
End_IF;

oder so in der Art.

Dann noch nen timer davor, dass dies nur alle 15 Sekunden abgefragt wird.
Am Schluss haste dann ein Array mit den Buchstaben, die als boolsche Variable true waren.

Grüße,
Flo
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich brauche einen funktion block die nur mir beschaltene bool variabeln in jeder 15 sekunde zürück gibt.oder anders gesagt es soll festellen welche varibeln in true zustand sind.
=
Ich denke, er will ein Array OF STRING als Ausgang mit den Buchstaben a-s, ...
:confused:
Also dieses Übersetzen von Fremdsprachen wird immer ein Rätsel für mich bleiben?!

:ROFLMAO:
 
Ich denke, er will ein Array OF STRING als Ausgang mit den Buchstaben a-s, wobei nur die Buchstaben im Array stehen sollen, die auch als Eingang TRUE sind.

Ich würde mal für den Anfang mit der Deklaration beginnen.
Ein arrMyArray: ARRAY [1..13] OF STRING als VAR_OUTPUT
Die Boolschen Variablen als VAR_INPUT.

im Baustein dann eine einfache überprüfung der boolschen Eingänge:

IF a THEN
arrMyArray[1]:= 'a';
End_IF;

oder so in der Art.

Dann noch nen timer davor, dass dies nur alle 15 Sekunden abgefragt wird.
Am Schluss haste dann ein Array mit den Buchstaben, die als boolsche Variable true waren.

Grüße,
Flo

ja genau sowas
nicht als string sondern als bool , a von bis s sind boolischer variabeln die output sind
die funktion block soll es in jeder 15 sekunde abfragen und einzeln heraus geben welcher true ist .und mit einer ring schleife von a wieder anfangen
 
Das heißt, du hast die Eingänge "IN a" bis "IN s", die du irgendwie beschaltest.
Dazu passend gibt es die Ausgänge "Out a" bis "Qut s". In dem Baustein gibt es einen Taktgeber und einen Zähler. Mit jedem Takt wird das Ergebnis eines Eingangs auf den zugehörigen Ausgang gespiegelt - alle anderen Ausgänge sind dann False. Ist das so richtig ?
Oder ... gibt es nur einen Ausgang der mal den Zustand von "a" ausgibt und mal den von "s" ?

Gruß
Larry

Edit:
Manchmal ist es ganz hilfreich wenn man seinen Wunsch ein bißchen aufskizziert ...
 
nicht als string sondern als bool , a von bis s sind boolischer variabeln die output sind

Offensichtlich will er ein Array nur eben als BOOL und nicht als STRING.
Das heißt du hast resp. 15 Eingänge und dementsprechend 15 Einträge im Array nur eben als BOOL!

Richtig?
Mensch, sag uns doch was du willst :)

( Habs schon fast aus der Nase draußen )


Flo
 
Das heißt, du hast die Eingänge "IN a" bis "IN s", die du irgendwie beschaltest.
Dazu passend gibt es die Ausgänge "Out a" bis "Qut s". In dem Baustein gibt es einen Taktgeber und einen Zähler. Mit jedem Takt wird das Ergebnis eines Eingangs auf den zugehörigen Ausgang gespiegelt - alle anderen Ausgänge sind dann False. Ist das so richtig ?
Oder ... gibt es nur einen Ausgang der mal den Zustand von "a" ausgibt und mal den von "s" ?

Gruß


Larry

Edit:
Manchmal ist es ganz hilfreich wenn man seinen Wunsch ein bißchen aufskizziert ...
zu erst vielen dank an jeder's freundlichen mit hilfe
Ich versuch mal ein bischen den program deutlich zu beschreiben
es gebe 13 analog variabeln , die mit bestimmten zahlen gross oder klein verglichen wird.
von a bis s sind die bool ergebnisse von analog variabeln.die true oder false annehmen können.
wie kann ich es realisiern und in jeder 15 sekunden lang nur die angenomme true werte einzeln abfragen.
nehmen wir an a,c,d, e,f,g true ist. Es soll wie folgendes so aussehen zuerst soll die funktion block 15 sekunden lang einzel zuerst a geben danach c , d usw. und wieder ganz am anfag begginen.
 
Jetzt bin ich mir fast sicher was er will:

Analogwerte werden verglichen und das Ergebnis des Vergleichs wird als boolsche Variable ind en Baustein gegeben. (damit ham wir nix zu tun).
Jetzt soll, wenn von a-s beispielsweise die Variablen a, d, g, m TRUE und der rest FALSE sind. Immer 15 Sekunden lang eine der Variablen ausgegeben werden.

Also wäre der Ausgang:

15s - a
15s - d
15s - g
15s - m

Dann wiederholen.

Nun bleiben Fragen wie:

- Welchem Typ soll der Ausgang entsprechen? String?
- Was passiert wenn in der Baustein gerade "g" ausgibt und "b" TRUE wird. Soll dann "b" vorgezogen werden, um den neueren Fehler anzuzeigen?
.
.
.
Und noch einige mehr.

Edit:
Vermutlich will er Warnmeldungen jeweils 15 Skunden lang irgendwo anzeigen/ausgeben. Durch den Baustein will er diese automatisch durchlaufen und sich wiederholen lassen.
 
@Flo:
Ich will dich ja nicht de-illusionieren ... aber ch hatte auch schon mal gedacht, verstanden zu haben, was der TE eigentlich vorhat ... 8)
Das Beste wäre wirklich, der TE würde das Ganze mal beispielhaft darstellen ... so kann man m.E. nicht helfen ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Jetzt bin ich mir fast sicher was er will:

Analogwerte werden verglichen und das Ergebnis des Vergleichs wird als boolsche Variable ind en Baustein gegeben. (damit ham wir nix zu tun).
Jetzt soll, wenn von a-s beispielsweise die Variablen a, d, g, m TRUE und der rest FALSE sind. Immer 15 Sekunden lang eine der Variablen ausgegeben werden.

Also wäre der Ausgang:

15s - a
15s - d
15s - g
15s - m

Dann wiederholen.

Nun bleiben Fragen wie:

- Welchem Typ soll der Ausgang entsprechen? String?
- Was passiert wenn in der Baustein gerade "g" ausgibt und "b" TRUE wird. Soll dann "b" vorgezogen werden, um den neueren Fehler anzuzeigen?
.
.
.
Und noch einige mehr.

Edit:
Vermutlich will er Warnmeldungen jeweils 15 Skunden lang irgendwo anzeigen/ausgeben. Durch den Baustein will er diese automatisch durchlaufen und sich wiederholen lassen.

:D ja genau das ist es was ich haben möchte, b muss ja nicht unbedingt vorgezogen werden b kann ja beim zweiten wiederholung staatfinden.
der ausgang kann auch string oder bool sein.
kannst du mir ein klein exampler unter Codesys 2.3 schreiben ?
 
Zurück
Oben