Wert 0 in DB

Mike369

Level-1
Beiträge
472
Reaktionspunkte
26
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Kollegen,

Ich will gerade wenn in Wincc-flex ein Bildwechsel ist, programmieren das alle Variablen/Werte im DB mit 0 überschrieben wird...Ich habs mal mit Move und 0 versucht, leider nimm er aber bei OUT nicht z.B. DB1.DBW22 nicht an...woran liegt das oder gibt es vllt. eine andere möglichkeit..??

Danke euch
MfG
Mike
 
Move

Hallo Kollegen,

Ich will gerade wenn in Wincc-flex ein Bildwechsel ist, programmieren das alle Variablen/Werte im DB mit 0 überschrieben wird...Ich habs mal mit Move und 0 versucht, leider nimm er aber bei OUT nicht z.B. DB1.DBW22 nicht an...woran liegt das oder gibt es vllt. eine andere möglichkeit..??

Danke euch
MfG
Mike

es gibt keinen Grund wieso das nicht gehen soll...

OUT = Alle elementaren Datentypen mit einer Länge von 8, 16 oder 32 Bit
E, A, M, L, D
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mike,
welchen Typ's ist denn dein Ziel-DW ?
Du mußt bei KOP und FUP natürlich beachten, dass du Variablen gleichen Typ's miteinander ver-Move-st ...
Diese Restriktion gibt es unter AWL nicht ... :rolleyes:

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mike,
welchen Typ's ist denn dein Ziel-DW ?
Du mußt bei KOP und FUP natürlich beachten, dass du Variablen gleichen Typ's miteinander ver-Move-st ...
Diese Restriktion gibt es unter AWL nicht ... :rolleyes:

Gruß
LL

das stimmt so nicht. Beim MOVE kann man alles mit den möglichen Datentypen machen, auch DATE auf INT oder andere Spielchen. Dabei ist die Einstellung "Typprüfung" nicht relevant. Das ermöglicht in KOP/FUP auch das Umschieben auf andere Datentypen um nötige Anpassungen vorzunehmen - zb wenn ein aufgerufenener Baustein WORD erwartet und man hat nur BYTE.

Vielleicht liegt dein Problem an den Symbolikeinstellungen. Stell mal den Bausteinordner testweise auf Absolutadressierung um.

André
 
.. wenn dem denn so sein sollte ... dann verstehe ich das Problem von Mike nicht ... dann verstehe ich aber auch nicht, was das mit symbolischer und absoluter Adressierung bringen soll ...
 
.. wenn dem denn so sein sollte ... dann verstehe ich das Problem von Mike nicht ... dann verstehe ich aber auch nicht, was das mit symbolischer und absoluter Adressierung bringen soll ...

da bist du nicht der einzige larry, deswegen wollte ich ja einen screenshot haben, da sieht man meist mehr, als es in beschriebungen rüberkommt ... symbolisch und absolut wollt ich fast ausschließen, da, wenn die einstellung auf symbolisch steht man ja trotzdem frei weg absolut adressieren kann, es wird halt nur umbenannt ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mike369,

der MOVE-Befehl muss hinter dem eigendlichen beschreiben des DBW sein, da die 0 sonst wider überschrieben wird.
Wenn der MOVE-Befehl nur als Impuls (in einem Zyklus) ausgeführ wird, wird das DBW im nächsten Zyklus erneut überschrieben.
Um sicher zu gehen.
Die MOVE-Befehle alle in einen FC und diesen als aller letztes im OB1 aufrufen. Den MOVE-Befehl bei deinem Bildwechsel dauerhaft ausführen (in jedem Zykluss).
Nun musst du noch eine Bedingung haben, wann der MOVE-Befehl nicht mehr ausgeführt werden soll. Sonst bekommst du die 0en nicht mehr raus.

Stell doch mal dein Problemprogramm hier rein, wenns geht (oder den Teil, um den es geht).

Gruß Jan
 
Hallo Mike369,

der MOVE-Befehl muss hinter dem eigendlichen beschreiben des DBW sein, da die 0 sonst wider überschrieben wird.
Ja Jan,
ich glaube auch das wird dir Lösung sein.

Da der Mike aber schreibt, er will alle Werte des DB's überschreiben, frage ich mich, ob nicht der SFC21 (Fill) Baustein ideal wäre. Der kann den ganzen DB auf einmal überschreiben.
Ändert natürlich nichts an dem Problem dass Du geschildert hast Jan.
 
SO Danke schon mal für so viele antworten....@vierlagig,Jan:
Ich würd ja gern das Programm reinstellen aber, ich idiot hab meinen usb-stick verlegtXD und Hab das Programm auf nen anderen Computer...Ich hab s gestern noch paar mal probiert und es gign auf einmal obwohl ich nix anderes gemacht hab...Tja dumm wie ich war hab ich s noch mal raus und wieder rein geschrieben....und siehe da es ging nich mehr)= ?????
 
Also ich hab die Variable nochma versucht auf den Ausgang von MOVE zu schreiben...es ging auf einmal...Das hat mich aber stutzig gemacht warum s auf einmal ging...und da hab ich s noch mal gelöscht und wieder rein geschrieben genauso wie vorher...und siehe da es ging wieder nich...hab nix anderst gemacht aber trotzdem geht s nich...
 
Suche mal deinen USB-Stick und stell das Programm mal rein.

Es kribbelt mir jetzt in den Fingern den Fehler zu suchen.

Wenn mir so etwas passiert, ärgere ich mich immer, dass ich nicht sofort auf die Ursache gekommen bin.
Hat man mal den Fehler gefunden, weiß man, wie man beim nächsten mal suchen muss.

Wenn es mal geht und mal nicht, dann konnte es sein das in das DW unter einer bestimmten Bedingung (Zeit, Zähler, Anlagenzustand, o. ä.)geschrieben wird.

Ich würde das Programm gerne mal sehen.

Gruß Jan
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das überschreiben eines kompletten DB's funktioniert mit dem "FILL"-Baustein.
Hab ich schon in einem Projekt gemacht um Daten in einem Protokoll-Datenbaustein zu löschen um auszuschliessen das alte Daten auf einem Protokoll ausgedruckt werden.
 
Löschen eines DB Bei Bildwechsel

Das mit dem SFC 21 klappt.
Versuchsprojekt hängt an.
Funktionsbeschreibung:
Jedes Bild hat innerhalb eines DB`s(DB1),in einem Array of BOOl,ein zugeordnetes Bit.Bild aktiv Bit =true.
Mittels des FB"Impuls_P_N_Altwert" wird bei Bildänderung ein Impuls erzeugt und auf EN des SFC 21 gelegt.
Zu löschender Datenbaustein "DB_Loesch_Speicher"(DB2) 100 Real Werte ,Anfangswert 23.0.
 

Anhänge

  • Löschen_DB_Speicher_Bei_Bildwechwsel.zip
    30,2 KB · Aufrufe: 4
So hier mal das Programm...Im FC4 an stelle von M1000 sollen die variablen stehen
 

Anhänge

  • Forkardt_neu.zip
    4,5 MB · Aufrufe: 8
Zurück
Oben