verschiedene ergebnisse aus 0b 35 addieren

Zuviel Werbung?
-> Hier kostenlos registrieren
jetzt wollte ich gerade mein ob35 ins forum stellen.
ich hab mir extra nen neuen usb-stick besorgt, da die projekte auf meinem alten stick zuhause ja immer nicht lesbar waren.
Jetzt habe ich mich schon gefreut dass ein projekt auf dem neuen stick ist aber meine cpu ist verschwunden.
Die die ich im betrieb programmiert habe, habe ich in meinem hw-katalog zuhause nicht zur verfügung. Aber deswegen dürfte sie doch nicht verschwinden oder?
 
:confused: ...
Hattest du das Problem nicht schon einmal ...?
Wenn deine HW-Konfig die CPU (wegen ihrer Best.-Nr.) nicht genau kennt, dann bekommt sie in der HW-Konfig ein gelbes Ausrufezeichen. Die Bausteine werden deswegen nicht gelöscht ...
Was machst du da denn immer ...?
 
Hier mal mein ob35
Hoffe ihr versteht mein Kommentare
Ich muss ihn aber auf zwei Beiträge aufsplitten da ich über 10000 zeichen komme.
Code:
[FONT=Times New Roman][SIZE=3]Zyklisches Bearbeiten des Zeitpunkts t[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]     U(    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit_fuer_Umdrehung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     <R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     )     [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     U     "Merker_Motor_Ein"[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     SPBNB _001[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     5.000000e-002[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     +R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     "DB_V-Messung".Zeit[/FONT][/SIZE]
 
 
[FONT=Times New Roman][SIZE=3]_001: NOP   0[/SIZE][/FONT]
 
 
[FONT=Times New Roman][SIZE=3]Rücksetzen der Zeit[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]     U(    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     O(    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit_fuer_Umdrehung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     >=R   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     )     [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     ON    "Merker_Motor_Ein"[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     )     [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     SPBNB _002[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     0.000000e+000[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     "DB_V-Messung".Zeit[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]_002: NOP   0[/SIZE][/FONT]
 
 
[FONT=Times New Roman][SIZE=3]Berechnen der Winkelgeschwindigkeit und der beiden Winkelgrößen.[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]   L     6.283185e+000[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit_fuer_Umdrehung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     /R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Winkelgeschwindigkeit      // w= (2*PI)/T [/FONT][/SIZE]
 
 
[SIZE=3][FONT=Times New Roman]     L     #Winkelgeschwindigkeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     SQR   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #SQR_Winkelgeschw[/FONT][/SIZE]
 
 
[SIZE=3][FONT=Times New Roman]     L     #Winkelgeschwindigkeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Winkelgroesse              //w*t um leichter den sin daraus ziehen zu können[/FONT][/SIZE]
 
 
[SIZE=3][FONT=Times New Roman]     L     #Winkelgroesse[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     2.000000e+000[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Winkelgroesse_2            //2*w*t um leichter den cos daraus ziehen zu können[/FONT][/SIZE]
 
 
[FONT=Times New Roman][SIZE=3]Berechen der Formel b=-r*w²*sin(w*t)+(r²/a)*w²*cos(2*w*t))[/SIZE][/FONT]
 
[FONT=Times New Roman][SIZE=3]L     #Winkelgroesse[/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman]     SIN   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Sinus[/FONT][/SIZE]
 
 
[SIZE=3][FONT=Times New Roman]     L     -5.000000e-001[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #SQR_Winkelgeschw[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #Sinus[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Beschleunigung_Teil_1[/FONT][/SIZE]
 
 
[SIZE=3][FONT=Times New Roman]     L     #Winkelgroesse_2[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     COS   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Cosinus[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]     L     1.666667e-001               //(r²/a)[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #SQR_Winkelgeschw[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #Cosinus[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     *R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Beschleunigung_Teil_2[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]     L     #Beschleunigung_Teil_1[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #Beschleunigung_Teil_2[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     +R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Beschleunigung[/FONT][/SIZE]
 
 
[FONT=Times New Roman][SIZE=3]Berechnen des Betrags aus der Geschwindigkeit um vergleichbare Werte zu [/SIZE][/FONT]
[FONT=Times New Roman][SIZE=3]erhalten, da eine Halbwelle sonst immer im negativen Bereich liegen würde.[/SIZE][/FONT]
 
[FONT=Times New Roman][SIZE=3]L     #Beschleunigung[/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman]     ABS                               // Funktion für Absolutwert[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     #Betrag_Beschleunigung[/FONT][/SIZE]
 
 
[FONT=Times New Roman][SIZE=3]Schiebt den momentanen Betrag der Geschwindigkeit auf das DBD für die [/SIZE][/FONT]
[FONT=Times New Roman][SIZE=3]Maximalgeschwindigkeit, wenn der Betrag der Geschwindigkeit größer ist, als die [/SIZE][/FONT]
[FONT=Times New Roman][SIZE=3]bisherige Maximalgeschwindigkeit[/SIZE][/FONT]
 
 
[SIZE=3][FONT=Times New Roman]     U(    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Maximalbeschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     >R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     )     [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     SPBNB _003[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     "DB_V-Messung".Maximalbeschleunigung[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]_003: NOP   0[/SIZE][/FONT]
 
 
[FONT=Times New Roman][SIZE=3]Schiebt eine 0 auf die Maximalbeschleunigung falls sich die Drehzahl ändert.[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]     U(    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Momentandrehzahl[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     "DB_V-Messung".Vergleichsdrehzahl[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     <>I   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     )     [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     SPBNB _004[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     L     0.000000e+000[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]     T     "DB_V-Messung".Maximalbeschleunigung[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]_004: NOP   0[/SIZE][/FONT]
[FONT=Times New Roman][SIZE=3][/SIZE][/FONT] 
[FONT=Times New Roman][SIZE=3]...[/SIZE][/FONT]
 
[FONT=Times New Roman][SIZE=3][/SIZE][/FONT]
 
Code:
[FONT=Times New Roman][SIZE=3]Ermitteln der Durchschnittsbeschleunigung[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]    UN    "Merker_Motor_Ein"          //Startbedingung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    BEB   [/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Berechnung des Pointerwertes[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     1[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    +I    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     #Pointerwertigkeit[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Sicherung dass Pointerwert nie größer ist als[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     300                         //die Anzahl der vorhandenen DBD[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    >=I   [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    BEB   [/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    AUF   "Momentanbeschleunigung"[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Pointer[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    SLD   5[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    LAR1  [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     DBD [AR1,P#0.0][/FONT][/SIZE]
 
[FONT=Times New Roman][SIZE=3]//----------------------------------------------[/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman]    L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     DB10.DBD   28[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    +R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     DB10.DBD   28[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]//---------------------------------------------[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]    L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     "DB_V-Messung".Zeit_fuer_Umdrehung    //Startbedingung für Division nach einem Zyklus[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    >R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    SPBN  M030[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     DB10.DBD   28[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Division mittels Eintrag-Zähler[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    /R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     "DB_V-Messung".Durchschnittsbeschl[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     0[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     #Pointerwertigkeit[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     0[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     DB10.DBD   28[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]M030: NOP   0[/SIZE][/FONT]
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi, also ich hab jetzt mal das letzte netzwerk ausgeklammert.
Dann hat die sache funktionert.
Das Problem liegt also am letzten netzwerk
Leider kann ich keinen Fehler da drin finden.
 
Hallo Stift,
darf ich dich noch einmal an meinen Beitrag #85 verweisen ...?

Auf den ersten Blick sieht der OB35 nicht so aus, als hättest du das so gemacht ...

Gruß
LL
 
Also ich hab eigentlich versucht das ganze so umzusetzen wie du mirs geschildert hast.

--> Die messung startet sobald der motor läuft
--> Sobald die messung beendet wird werden alle pointer usw. wieder auf null gesetzt
-->ich speichere alle werte in meinem dbd
-->mit dem netzwerk von beitrag #98 habe ich versucht die summe zu bilden (ist mir aber glaub ich gründlich misslungen,(so ganz hab ichs erlich auch nicht verstanden))
-->dieses netzwerk habe ich jetzt entfernt da ich da den fehler vermutet habe und stattdessen wollte ich die berechneten werte direkt addieren (db10.dbd28 ) und anschließend durch die #pointerwertigkeit teilen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... endschuldige bitte. Ich hatte den 2. Beitrag nur überflogen. Ich denke, alles ist gut bis auf das Rücksetzen der "Pointerwertigkeit". Das sollte m.E. nur stattfinden wenn du nicht am Messen bist. Das erklärt aber auch nicht das Hochlaufen deiner Zykluszeit ...

Lass doch mal generell die Berechnung mitlaufen. Wo liegst du dann mit der Zykluszeit ...?
 
Ich habe da noch ein paar Kleinigkeiten gefunden ...
Code:
[FONT=Times New Roman][SIZE=3]   AUF   "Momentanbeschleunigung"[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Pointer[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]   [COLOR=red][B]ITD[/B][/COLOR][/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman]    SLD   5[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    LAR1  [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     DBD [AR1,P#0.0][/FONT][/SIZE]
 
[FONT=Times New Roman][SIZE=3]//----------------------------------------------[/SIZE][/FONT]
[SIZE=3][FONT=Times New Roman]    L     #Betrag_Beschleunigung[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     DB10.DBD   28[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    +R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     DB10.DBD   28[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3]//---------------------------------------------[/SIZE][/FONT]
 
[SIZE=3][FONT=Times New Roman]    L     "DB_V-Messung".Zeit[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     "DB_V-Messung".Zeit_fuer_Umdrehung    //Startbedingung für Division nach einem Zyklus[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    >R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    SPBN  M030[/FONT][/SIZE]
 
[SIZE=3][FONT=Times New Roman]    L     DB10.DBD   28[/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    L     #Pointerwertigkeit          //Division mittels Eintrag-Zähler[/FONT][/SIZE]
[FONT=Times New Roman][SIZE=3][COLOR=red][B]    ITD[/B][/COLOR][/SIZE][/FONT]
[COLOR=red][B][FONT=Times New Roman][SIZE=3]    DTR[/SIZE][/FONT]
[/B][/COLOR][SIZE=3][FONT=Times New Roman]    /R    [/FONT][/SIZE]
[SIZE=3][FONT=Times New Roman]    T     "DB_V-Messung".Durchschnittsbeschl[/FONT][/SIZE]
 
ich hab gemacht was du gemeint hast und alle start-bedingungen ausgeklammert, dass die messung immer läuft.
Mein programm läuft jetzt immer bis zum letzten netzwerk vom ob35 und geht dann in stopp
Was recht misteriös ist dass ich folgendes programmiert habe:
Code:
L 0
T #Pointerwertigkeit
 
L #Pointerwertigkeit
L 1
+I
T #Pointerwertigkeit
 
...
Die ersten beiden zeilen hab ich schnell reingeschrieben um sicher zu sein dass Pointerwertigkeit größer ist wie 300.
dennoch wir mit jeden run-befehl die pointerwertigkeit um 1 erhöht. meinem verständinis nach müsste sie doch aber immer bei 1 liegen oder?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
kein wunder dass die cpu in stopp geht.
meine pointerwertigkeit hat den werd 13d --> also 317
aber ich versteh nicht warum die nicht auf null gesetzt wird obwohl ich doch obige zeilen eingefügt habe.
 
Ich habs zum laufen gebracht.
mein fehler war dass ich programmiert hatte
Code:
L #Pointerwertigkeit
L 300
>=I
SPNB M030

richtig wäre aber
Code:
L #Pointerwertigkeit
L 300
>=I
SPB M030 bzw. BEB
 
:p Hey Klasse, dass du es gefunden hast ...
Ich hatte vorhin immer nach der Endlos-Schleife gesucht, aber nicht gefunden ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die messung funktioniert. :p
Danke schön.
Echt toll dass du mir alles so erklärt hast und so geduldig warst.
Ich danke von Herzen
 
Zuletzt bearbeitet:
Zurück
Oben