Datenbausteinproblem!!!!!!!!!!!!!!!!!!!!!!

Pinguino

Level-1
Beiträge
182
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Anfangswerte habe ich definiert DB80.DBW0 => 5 SEk. Vorgabezeit Timer und DB80.DBW2 => 5 SEk. Restzeit Timer.

Wenn ich Online mit der Bebachtung nachschaue habe ich komische Werte z.B. DB80.DBW0 => 300Sek, DB80.DBW2 =>0Sek.


Ich bin richtig am Verzweifeln, kann mir jemanden helfen!!!!!
 
Ich bin gewillt zu helfen. Aber der Topic macht mich wütend. Deine Tastatur muss Kaputt sein, da sind einige "!" zu viel.

Besser Dich in dem Punkt!

Zu der Frage. Ich vermute mal das Du im DB den Datentyp Time und nicht s5Time gewählt hast.

Ändere das mal in S5Time ab.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
DB80.DBW0 und DB80.DBW2 sind Integerwerte Datentyp Integer, ich habe mir einen eigenen Timer gebastelt.

Was könnte sein dass ich komische Werte habe?

Ich habe es mit dem Urlöschen probierte, um alles zu löschen dann habe ich den DB80 wieder in der CPU geladen ich bekomme immer komische Werte.


Was kann ich machen damit alles was in der CPU ist zu löschen und in der CPU alles wieder neu herunterladen ?

Im Anhang ist dieser Bespiel aufgeführt.
 
Zuletzt bearbeitet:
Ich kenne mich ja bei Step7 nicht sooo... gut aus.

Aber ich habe mal den DB80 angeschaut da steht doch 300 schon bei der Deklaration.

Code:
DATA_BLOCK "DB80"
TITLE =Alarme F-Durchflüsse
VERSION : 0.1


  STRUCT    
   DBW0 : INT  := 300;  //Vorgabezeit Alarm Durchfluss Rücklauf Ringleitung 1 zu tief
   DBW2 : INT  := 300;  //Restzeit Alarm Durchfluss Rücklauf Ringleitung 1 zu tief
   DBW4 : INT  := 300;  //Vorgabezeit Alarm Durchfluss Rücklauf Ringleitung 2 zu tief
   DBW6 : INT  := 300;  //Restzeit Alarm Durchfluss Rücklauf Ringleitung 2 zu tief
   DBW8 : INT  := 60;   //Vorgabezeit Alarm Durchfluss Luft zu tief
   DBW10 : INT  := 60;  //Restzeit Alarm Durchfluss Luft zu tief
   DBW12 : INT  := 60;  //Vorgabezeit Alarm Durchfluss Produktion zu tief
   DBW14 : INT  := 60;  //Restzeit Alarm Durchfluss Produktion zu tief
   DBW16 : INT ;    //Vorgabezeit Alarm Durchfluss Elektrolyt FQ007 zu tief
   DBW18 : INT ;    //Restzeit Alarm Durchfluss Elektrolyt FQ007 zu tief
   DBW20 : INT ;    //Vorgabezeit Alarm Durchfluss Elektrolyt FQ008 zu tief
   DBW22 : INT ;    //Restzeit Alarm Durchfluss Elektrolyt FQ008 zu tief
   DBW24 : INT ;    //Vorgabezeit
   DBW26 : INT ; //Restzeit
   DBW28 : INT ;    //Vorgabezeit
   DBW30 : INT ;    //Restzeit
   DBW32 : INT ;    //Vorgabezeit
   DBW34 : INT ;    //Restzeit
   DBW36 : INT ;    //Vorgabezeit
   DBW38 : INT ;    //Restzeit
   DBW40 : INT ;    //Vorgabezeit
   DBW42 : INT ;    //Restzeit
   DBW44 : INT ;    //Vorgabezeit
   DBW46 : INT ;    //Restzeit
   DBW48 : INT ;    //Vorgabezeit
   DBW50 : INT ;    //Restzeit
   DBX52_0 : BOOL ; //AL P2 Durchfluss Ringleitung 1 zu tief / MFIRSAL106
   DBX52_1 : BOOL ; //AL P2 Durchfluss Ringleitung 2 zu tief / MFIRSAL107
   DBX52_2 : BOOL ; //AL P1 Durchfluss Luft zu tief / MFISAL021
   DBX52_3 : BOOL ; //AL P1 Durchfluss Produktion zu tief / MFISAL017
   DBX52_4 : BOOL ; //AL P1 Durchfluss Elektrolyt FQ007 zu tief / MFISAL018
   DBX52_5 : BOOL ; //AL P1 Durchfluss Elektrolyt FQ008 zu tief / MFISAL019
   DBX52_6 : BOOL ; //Reserve
   DBX52_7 : BOOL ; //Reserve
   DBX53_0 : BOOL ; //Reserve
   DBX53_1 : BOOL ; //Reserve
   DBX53_2 : BOOL ; //Reserve
   DBX53_3 : BOOL ; //Reserve
   DBX53_4 : BOOL ;  //Reserve
   DBX53_5 : BOOL ; //Reserve
   DBX53_6 : BOOL ; //Reserve
   DBX53_7 : BOOL ; //Reserve
   DBX54_0 : BOOL ; //AL P2 Durchfluss Ringleitung 1 zu tief (Relais) / MFIRSAL106
   DBX54_1 : BOOL ; //AL P2 Durchfluss Ringleitung 2 zu tief (Relais) / MFIRSAL107
   DBX54_2 : BOOL ; //AL P1 Durchfluss Luft zu tief (Relais) / MFISAL021
   DBX54_3 : BOOL ; //AL P1 Durchfluss Produktion zu tief (Relais) / MFISAL017
   DBX54_4 : BOOL ; //AL P1 Durchfluss Elektrolyt FQ007 zu tief (Relais) / MFISAL018
   DBX54_5 : BOOL ; //AL P1 Durchfluss Elektrolyt FQ008 zu tief (Relais) / MFISAL019
   DBX54_6 : BOOL ; //Reserve
   DBX54_7 : BOOL ; //Reserve
   DBX55_0 : BOOL ; //Reserve
   DBX55_1 : BOOL ; //Reserve
   DBX55_2 : BOOL ; //Reserve
   DBX55_3 : BOOL ; //Reserve
   DBX55_4 : BOOL ; //Reserve
   DBX55_5 : BOOL ; //Reserve
   DBX55_6 : BOOL ; //Reserve
   DBX55_7 : BOOL ; //Reserve
   DBW56 : INT ;    //Alarmmerker(Reserve)
   DBW58 : INT ;    //Alarmmerker(Reserve)
   DBX60_0 : BOOL ; //Flankenmerker AL P2 Durchfluss Ringleitung 1 zu tief / MFIRSAL106
   DBX60_1 : BOOL ; //Flankenmerker AL P2 Durchfluss Ringleitung 2 zu tief / MFIRSAL107
   DBX60_2 : BOOL ; //Flankenmerker AL P1 Durchfluss Luft zu tief / MFISAL021
   DBX60_3 : BOOL ; //Flankenmerker AL P1 Durchfluss Produktion zu tief / MFISAL017
   DBX60_4 : BOOL ; //Flankenmerker AL P1 Durchfluss Elektrolyt FQ007 zu tief / MFISAL018
   DBX60_5 : BOOL ; //Flankenmerker AL P1 Durchfluss Elektrolyt FQ008 zu tief / MFISAL019
   DBX60_6 : BOOL ; //Flankenmerker
   DBX60_7 : BOOL ; //Flankenmerker
   DBX61_0 : BOOL ; //Flankenmerker
   DBX61_1 : BOOL ; //Flankenmerker
   DBX61_2 : BOOL ; //Flankenmerker
   DBX61_3 : BOOL ; //Flankenmerker
   DBX61_4 : BOOL ; //Flankenmerker
   DBX61_5 : BOOL ; //Flankenmerker
   DBX61_6 : BOOL ; //Flankenmerker
   DBX61_7 : BOOL ; //Flankenmerker
   DBW62 : INT ;    //Flankenmerker(Reserve)
   DBW64 : INT ;    //Flankenmerker(Reserve)
   DBW66 : INT ;    //Flankenmerker(Reserve)
   DBW68 : INT ;    //Quittiermerker lesen 
   DBW70 : INT ;    //Quittiermerker lesen(Reserve)
   DBW72 : INT ;    //Quittiermerker lesen(Reserve)
   DBW74 : INT ;    //Quittiermerker lesen(Reserve)
  END_STRUCT ;  
BEGIN
   DBW0 := 0; 
   DBW2 := 0; 
   DBW4 := 0; 
   DBW6 := 0; 
   DBW8 := 0; 
   DBW10 := 0; 
   DBW12 := 0; 
   DBW14 := 0; 
   DBW16 := 0; 
   DBW18 := 0; 
   DBW20 := 0; 
   DBW22 := 0; 
   DBW24 := 0; 
   DBW26 := 0; 
   DBW28 := 0; 
   DBW30 := 0; 
   DBW32 := 0; 
   DBW34 := 0; 
   DBW36 := 0; 
   DBW38 := 0; 
   DBW40 := 0; 
   DBW42 := 0; 
   DBW44 := 0; 
   DBW46 := 0; 
   DBW48 := 0; 
   DBW50 := 0; 
   DBX52_0 := FALSE; 
   DBX52_1 := FALSE; 
   DBX52_2 := FALSE; 
   DBX52_3 := FALSE; 
   DBX52_4 := FALSE; 
   DBX52_5 := FALSE; 
   DBX52_6 := FALSE; 
   DBX52_7 := FALSE; 
   DBX53_0 := FALSE; 
   DBX53_1 := FALSE; 
   DBX53_2 := FALSE; 
   DBX53_3 := FALSE; 
   DBX53_4 := FALSE; 
   DBX53_5 := FALSE; 
   DBX53_6 := FALSE; 
   DBX53_7 := FALSE; 
   DBX54_0 := FALSE; 
   DBX54_1 := FALSE; 
   DBX54_2 := FALSE; 
   DBX54_3 := FALSE; 
   DBX54_4 := FALSE; 
   DBX54_5 := FALSE; 
   DBX54_6 := FALSE; 
   DBX54_7 := FALSE; 
   DBX55_0 := FALSE; 
   DBX55_1 := FALSE; 
   DBX55_2 := FALSE; 
   DBX55_3 := FALSE; 
   DBX55_4 := FALSE; 
   DBX55_5 := FALSE; 
   DBX55_6 := FALSE; 
   DBX55_7 := FALSE; 
   DBW56 := 0; 
   DBW58 := 0; 
   DBX60_0 := FALSE; 
   DBX60_1 := FALSE; 
   DBX60_2 := FALSE; 
   DBX60_3 := FALSE; 
   DBX60_4 := FALSE; 
   DBX60_5 := FALSE; 
   DBX60_6 := FALSE; 
   DBX60_7 := FALSE; 
   DBX61_0 := FALSE; 
   DBX61_1 := FALSE; 
   DBX61_2 := FALSE; 
   DBX61_3 := FALSE; 
   DBX61_4 := FALSE; 
   DBX61_5 := FALSE; 
   DBX61_6 := FALSE; 
   DBX61_7 := FALSE; 
   DBW62 := 0; 
   DBW64 := 0; 
   DBW66 := 0; 
   DBW68 := 0; 
   DBW70 := 0; 
   DBW72 := 0; 
   DBW74 := 0; 
END_DATA_BLOCK
 
Wer kann mir ein Thema für eine Facharbeit in Deutsch vorschlagen ???????????????????

"Ansatz einer Analyse der Zusammenhänge zwischen der Anzahl der in
einem Interrogativsatz enthaltenen Fragezeichen, der Dringlichkeit
der Frage und der psychisch-emotionalen Auswirkungen auf den Leser"
 
Zuviel Werbung?
-> Hier kostenlos registrieren
deine ausrufezeichen nerven - habe keine lust die frage zu beantworten

deine frage verstehe ich nicht

habe deine software mal angeschaut

es ist einfach nur eine frechheit was für scheiss manche leute ihren kunden verkaufen... unterstes level...

über die struktur und die art der programmierung rege ich mich jetzt einfach mal nicht auf, ich muss die kacke ja nicht bezahlen...

aber ihr solltet zumindest den fb41 in einem ob35 oder sonst was mit definiertem zyklus aufrufen. kann mir nicht vorstellen das dein ob1 einen zyklus von 1s macht...
 
deine ausrufezeichen nerven - habe keine lust die frage zu beantworten

deine frage verstehe ich nicht

habe deine software mal angeschaut

es ist einfach nur eine frechheit was für scheiss manche leute ihren kunden verkaufen... unterstes level...

über die struktur und die art der programmierung rege ich mich jetzt einfach mal nicht auf, ich muss die kacke ja nicht bezahlen...

aber ihr solltet zumindest den fb41 in einem ob35 oder sonst was mit definiertem zyklus aufrufen. kann mir nicht vorstellen das dein ob1 einen zyklus von 1s macht...


schlechte software gibt es überall...wenn man sie zu verkaufen versucht kann man eigentlich nur hoffen, dass der kunde keine ahnung hat ... das eigentlich tragische ist, dass wir solche kunden sind, weil wir nicht reingucken dürfen, da der geschäftsführer unterschreibt bevor wir es absegnen ... und während der ibn zu intervenieren wird immer schwerer, aber wir geben unser bestes ... aber den "!!!!!!!"-typ hätten wir mit vereinten kräften vom hof gejagt :rolleyes:
 
deine ausrufezeichen nerven - habe keine lust die frage zu beantworten

deine frage verstehe ich nicht

habe deine software mal angeschaut

es ist einfach nur eine frechheit was für scheiss manche leute ihren kunden verkaufen... unterstes level...

über die struktur und die art der programmierung rege ich mich jetzt einfach mal nicht auf, ich muss die kacke ja nicht bezahlen...

aber ihr solltet zumindest den fb41 in einem ob35 oder sonst was mit definiertem zyklus aufrufen. kann mir nicht vorstellen das dein ob1 einen zyklus von 1s macht...

Was würdest du besser machen????? AHHH AHHH???

Zeig mir wie du wirklich bist????
 
ich gehe mal davon aus das du die scheisse nicht geschrieben hast, und nur der arme kerl bist der neu in der firma ist und den schrott in betrieb nehmen muss - mein beileid...

versuch nicht zuviel aus dem dir vorliegenden programm zu lernen...

also, fangen wir mal an:

schau dir die werte mal in einer variablentabelle an.


da du - ausgehend von deiner fragestellung und meinen recherchen in dem "programm" - noch nichteinmal den unterschied zwischen einem timer und einem von euren bausteinen, die etwas ähnliches machen kennst:

im simaticmanager da wo du alle bausteine siehst, rechte maustaste, neues objekt einfügen, variablentabelle, diese öffnen, dort db80.dbw0 und db80.dbw2 einfügen, jetzt kannst du die werte beobachten und auch mit den gewünschten werten beschreiben...

wenn sich der wert in db80.dbw2 nicht ändern läst bzw. komische sachen macht, dann liegt das daran das er am fc300 das ist dein "timer" als INOUT anparametriert ist.

schau mal was der fc300 macht, ich habe mir das noch nicht antun wollen...
 
Was würdest du besser machen????? AHHH AHHH???

Zeig mir wie du wirklich bist????

den gravierenden fehler mit dem regelbaustein fb41 habe ich dir ja schon genannt, ändere das - die suche hier im forum und ein klick auf f1 bei markiertem baustein helfen dir...


deine symbolik kannst du dir sparen...
es macht keinen sinn einem baustein FC1 das symbol FC1 zu geben, schreib in das symbol was im baustein passiert.
es macht keinen sinn einen DB1 als DB1 zu bezeichnen, schreibe in das Symbol für was der DB gut ist. z.b. "IDB_Regler_Pumpe_1" oder "VISU_DATEN" oder "DATEN_FT Kommentar (Daten an die Fördertechnik)"...


weiter geht das dann bei den adressen selbt, dbw2 macht keinen sinn, schreibe "Sollzeit_Reinigung" rein.

im Programm heist sowas dann VISU_DATEN.Sollzeit_Reinigung
 
Wie sollte den FC300 aussehen?

Alarm_E => IN =>Bool
Takt => IN => Bool
Vorgabezeit => IN "definiert" => Integer
Restzeit => IN "definiert" => Integer
Alarm_A => Out => Bool

Sollte doch funktionieren, oder nicht?
 
Und zweitens ich bin nicht ein richtigen Krack beim programmieren, ich bin erst im ersten Jahr als programmierer tätig. Verbesserungen werden mit den Jahren gelernt. Wie seit ihr gewesen am Anfang???

Darum halte deine Schnauze!!!!!!!

Das geht zu weit, bitte keine Kraftausdrücke und Beleidigungen!
 
Zurück
Oben