Db- Daten behalten

Much2k

Level-1
Beiträge
83
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo!

Habe ja einen Betriebstundenzähler geschreiben der die Stunden in eine DB ablegt.

Dadurch dass ich beim Programm noch länger brauche und immer mehr Module dazukommen, hab ich das Problem dass ich die Geschpeicherten datenwerte immer verloren gehen.

Wie kann man verhindern das das Pasiert

Mfg
Michael
 
DB

Hallo,

verhindern gar nicht. Aber du kannst eine Variablentabelle öffnen, einen Bereich mit den vorhandenen DB-Variablen erstellen, in Status gehen, die Werte markieren und als Steuerwert einfügen. Dann DB übertragen und Werte steuern.

MfG
André Räppel
 
Re: es geht auch einfacher

Ok super danke. Noch eine frage

Kann man einen Datentyp im Fc als Timer angeben

z.b

u #Status
fr #zeit
l s5t#20m
sa #zeit


#Status als Bool deklariert
#Zeit ???? Habe alle datentypen angegeben funktioniert nicht

Aufrufen möchte ich es dann so

call fc21
status: e 104.1
zeit: t100
 
hi @ ll,
ich wollte nur mal nachfragen ob das wirklich so problemlos mit einem timer funktioniert, da der typ fc ja keine stat variablen nutzen kann ?
mfg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo!

Ja funktioniert da ich jede Daten die er durch jeden Durchlauf ausgiebt in einem db datensatz abspeichere.

Nur ist jetzt (brauch unterm Tag ca 50 und in der Nacht 100 durchläufe) ein weinig die Zykluszeit in die höhe gegangen :oops:

Mfg
Much
 
Stimmt bin doch nur dumm :roll:

hab dann noch eine frage. Wie gebe ich dann die Daten zurück, da ich ja bei jedem Durchlauf einen eigenen Timer nehmen muss

zb.

call fc21
status: e 104.1
zeit: t100
bel: a 0.4


call fc21
status: e 104.2
zeit: t100
bel: a 0.5


usw....
 
wie ich deinem bild entnehme, wird in deiner fc die zeit gestartet.
SA #zeit

das passiert bei jedem aufruf der fc.

ich kenne deinen bs-zähler nicht. ich könnte mir aber vorstellen das du dort einen takt (deine zeit) nur abfragst und nicht beschreibst.
 
Hallo!

Aber die Zeit muss ja beschrieben werden den der Zähler muss ja von 20 min bis 0 laufen oder

langt das wenn ich ihn bei jedem Durchlauf nur abfrage. Beschreibt sich er in der FC schon neu ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
liess mal den beitrag den ich angesprochen habe.

jetzt mal ganz langsam.
du rufst die fc das erste mal auf. dort wird die zeit gestartet.
nun rufst du die fc das zweite mal auf und die zeit wird wieder neu gestartet. usw usw usw usw
 
ok vom anfang an

Wir haben eine Beleuchtungsanlage.

Wenn die Spur besetz wird schaltet die Beleuchtung ein, wird sie geschlossen muss sie aus sicherheitsgründen 20 Minuten noch beleuchtet werden.

Also wenn ich das 50 mal schreiben muss werde ich nicht mehr fertig

Also schreibe ich ein Fc

rufe ihn das erste mal auf

Call FC21 //rufe ihn das erste mal auf
start: e2.1 //gib ihm den Startbefehl
zeit: db101.dbw0 //gib ihm die Nachlaufzeit (über ein OP einstellbar)
aktzeit: z1 //gib ihm einen zähler (braucht ja jede spur einen eigenen)
bel: a0.2 //rückgabe für beleuchtung



also wenn ich im fc21 schreibe

u #start
fr #aktzeit
l db101.dbw0
sa #aktzeit

u #aktzeit
= #bel


Also wenn ich dem zähler als nur (IN) deklariere kann es doch nicht funktionieren oder?

Vielen dank
Michael
 
es gibt jetzt mehrere möglichkeiten.

1. die einfachste variante
du benutzt für jeden aufruf eine eigene zeit.

2. du benutzt die uhrzeit der cpu und überprüfst mit dieser ob 20 min abgelaufen sind. dazu speicherst du dir die startzeit in einem db.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
also wenn ich richtig verstehe wenn ich den zähler mit (IN) deklariere langt das

ich geb einfach

der ersten spur den zähler z1
der zweiten z2

usw
.
.
. danke für die schnellen antworten

(Hast mich gerettet der chef bringt mich um wenn ich noch einen Monat eine Beleuchtung mit 120 KW läuft) wobei sie nicht gebraucht wird
 
wieso jetzt eigentlich plötzlich zähler? vorher sprachen wir doch über zeiten. oder hab ich jetzt was verpasst?
aber vom prinzip ist das beides gleich zu behandeln.

um bei deinem beispiel zu bleiben.
Code:
call fc21 
status: e 104.1 
zeit: t1 //<----
bel: a 0.4 


call fc21 
status: e 104.2 
zeit: t2 //<----
bel: a 0.5
 
ok danke

ja sind zeiten stimmt

werde es morgen in der früh ausprobieren, schreib es mal jetzt fertig, ist mir zu gefährlich heute da ein nebel aufzieht und wenns dann wieder nicht funktioniert .... :cry:

Vielden dank für die schnellen und perfekten antworten :D

schönes wochenende

mfg
Michael
 
Zurück
Oben