Kann mir das jeman erklären ?

Pockebrd

Level-1
Beiträge
327
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
anbei hab ich ein Teil von einem Programm.
Dabei bin auf was gestoßen was ich nicht recht verstehe.
Was für ein Hintergrund hat es mit den DB5.DBX auf sich.
Kann mir das mal jemand versuchen zuerklären ?
DB5 heißt ja Datenbaustein 5. Aber was ist das DBX, und dann kommt noch mal 5.0 ?
Hätte ich das nicht auch mit Merkern machen können ?





Netzwerk 1 NOT AUS
U „E1.2“ E1.2 --Not Aus
= DB5.DBX 5.0

.
.
.

Netzwerk 4 SICHERUNGSAUTOMAT AUSGELÖST
U „4F4“ E0.2 --Sicherungsautomat
= DB5.DBX 5.3


Netzwerk 5 SICHERUNGSAUTOMAT AUSGELÖST
U „4F6“ E0.3 --Sicherungsautomat
= DB5.DBX 5.4
.
.
.
.
Netzwerk 10 Thermowächter
U „immer Signal“ M1.0
UN „18B3.3“ E3.3 --Bauteilanfrage
= DB5.DBX 4.1
.
.
.
.
Netzwerk 19 Meldung steht an

O DB5.DBX 5.0
O DB5.DBX 5.1
O DB5.DBX 5.2
O DB5.DBX 5.3
O DB5.DBX 5.4
O DB5.DBX 5.5
O DB5.DBX 5.6
O DB5.DBX 5.7
O DB5.DBX 4.0
O DB5.DBX 4.1
O DB5.DBX 4.2
O DB5.DBX 4.3
= “Störung” M2.0 -- Meldung

 
Das ist das Datenbit 5.0 im Datenbaustein 5
Vergleichbar mit Merkern (sind beide vom Typ Bool)
 
Hallo,
und was hatte der Programierer für Vorteile im gegensatz zu Merkern ?
Im DB5 hat er nicht Bool sonder Wort verwendet.


Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Merker hast du nur eine bestimmte Anzahl zu Verfügung. Max Anzahl bei einer S7-300 sind glaube 120(bin mir aber nicht 100% sicher).

DBs kannst du soviele verwenden wie du willst. Der größte Vorteil ist aber für Anlagenentwickler das sie den DB einfach kopieren können wenn sie eine ähnliche Maschine programmieren müssen. Sie schreiben die Bezeichnung anders und ergränzen/entfernen Varibalen. Und schon ist die Maschine Fertig. Ein weiterer Vorteil ist das du durch die Verwendung eines DBs gleich die Varibalen für eine HMI Station nuten kannst und diese dann nicht extra in einem DB schreiben musst.
 
Merker hast du nur eine bestimmte Anzahl zu Verfügung. Max Anzahl bei einer S7-300 sind glaube 120(bin mir aber nicht 100% sicher).
Ist abhängig von den Leistungsdaten eine CPU aber mindestens 256 Byte

DBs kannst du soviele verwenden wie du willst.
Auch die Anzahl ist begrenzt (aber schwer zu erreichen) .
weiterhin ist die bausteingröße begrenzt.

CPU 315-2 Dp z.B. 1024 DB's mit maximal 64kB (Ab Firmware 3)
 
HMI-Stationen können auch direkt die Merker verwenden und auch recht einfach, sofern sie in der Symboltabelle vorhanden sind.

gruß wolder
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ok, konnte es etwas nachvollziehen. Das der Programmieren im
DB5 als Typ Word mit Anfangswert W#16#0 verwendet hat spiel keine Rolle, er hätte dann auch Typ Bool verwenden können ?

Im DB5 seh ich ja die Adressen +0.0.....+2.0...+4.0....+6.0....,wo ´Name, Typ, Anfangswert dahinter steht, und trotzdem kann ich DB5.BDx 5.1 verwenden ?


PS: Was heißt HMI ?


Gruß
 
Hallo,
ok, konnte es etwas nachvollziehen. Das der Programmieren im
DB5 als Typ Word mit Anfangswert W#16#0 verwendet hat spiel keine Rolle, er hätte dann auch Typ Bool verwenden können ?

Im DB5 seh ich ja die Adressen +0.0.....+2.0...+4.0....+6.0....,wo ´Name, Typ, Anfangswert dahinter steht, und trotzdem kann ich DB5.BDx 5.1 verwenden ?


Gruß

Korrekt. Ist natürlich schöner, wenn man die Variablen so deklariert, wie man sie dann auch nutzt. Geht aber leider nicht immer, wenn man Word- und Bit-Zugriffe auf ein und die selbe Variable nutzt, z.Bsp.
 
Was ich

prima an der Lösung mit den DB's finde, ist, dass Du bunt mischen kannst, also z.B.db5dbd0- 16 mit analogwerten belegen kannst, 18- 32 mit z.B Prozesswerten, aber im word Format also db5dbw18 mit und weitere dann als Bitsammler arbeiten.

Also der DB5DBX34.0- 34.7 z.B die Wasserpumpe mit allen Stati belegt, und alles in einem DB zu finden ist.

Wenn dann auch noch die DB's vernünftig benant werden, hast Du als Progger alle Infos parat.

Ich empfinde diese Art als prim Interface zwischen dem was in der Maschine stattfindet, und dem was Du übergeben willst.

Ob es jetzt eine andere MAschine, ein HMI oder eine Visu ist, shitegal, den DB 'sichtbar' machen, und habe fertig...

Greetz, Tom
 
Zurück
Oben