TIA Datenbaustein in PN/PN Koppler schieben

Zuviel Werbung?
-> Hier kostenlos registrieren
Wozu braucht man beim Einlesen mit DPRD_DAT "so ein gewurstel mit Serialize und ich weiss nicht wat
Weil ich von der Fremdfirma drei Blöcke à 32Byte kriege die aber eine Datenstruktur von einem Stamm sind. Nicht fragen wieso die wollten das so und wollten es nicht ändern :(, sonst hätte man in der tat wunderbar symbolisch arbeiten können.

Dann bräuchte man gar kein DPRD_DAT.
Muss man auch nicht, das Prozessabbild ist immer performanter weil die CPU das Managen tut. Und bei DPRD_DAT muss die Struktur gleich sein was bei uns ja zBsp nicht der Fall war (in 3 geteilt von Fremdfirma).

Warum wird die Struktur dann nicht im DB symbolisch abgebildet?
Kommunikations DB sind bei mir immer nicht optimiert. Alle anderen sind Optimiert (restlos) :)

Ah, man kann ein extra Datenstatusbyte aktivieren, muß aber nicht. Manchem reicht auch ein Bit im ersten Datenbyte.
Wenn du mir sagst wo das geht, weil ich kanns nicht deaktivieren 😁 (wir verwenden wohl die reine GSD nicht das TIA HSP (weil hatten dicken Ärger mit dem, wenn die gegenseite andere TIA Versionen verwendet) => Ergo ist mir später aufgefallen das er die TIA HSP benutzt -_-

Gruß
MCPC10
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei einer 1500er braucht man IMHO weder SFC14/15 oder SFC20 um Daten vom Feldbus ins Programm zu bekommen. Ich leg immer einfach UDTs in den Ein/Ausgängen an und arbeite direkt damit.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ah, man kann ein extra Datenstatusbyte aktivieren, muß aber nicht. Manchem reicht auch ein Bit im ersten Datenbyte.
Wenn du mir sagst wo das geht, weil ich kanns nicht deaktivieren 😁 (wir verwenden wohl die reine GSD nicht das TIA HSP (weil hatten dicken Ärger mit dem, wenn die gegenseite andere TIA Versionen verwendet) => Ergo ist mir später aufgefallen das er die TIA HSP benutzt -_-
Beim PN/PN Coupler "Eigenschaften > Baugruppenparameter > Transfermapping > Datenstatus: [ ] Datenstatus aktivieren", direkt über dem Projektierbereich der Transferbereiche.
(aus dem TIA Hardware Katalog in meinem TIA V15.1)

Bei der 1500 schon, da liegen alle E/A's im Prozessabbild
Ich finde es nicht in meinem TIA V15.1, aber kann man bei S7-1500 die E/A-Adressen eines Profinet-Devices nicht einem anderen Prozessabbild als dem OB1-PA zuordnen?

Harald
 
Ich finde es nicht in meinem TIA V15.1, aber kann man bei S7-1500 die E/A-Adressen eines Profinet-Devices nicht einem anderen Prozessabbild als dem OB1-PA zuordnen?
Das sind die Teilprozessabbilder ( TPA ). Ich habe gerade kein TIA zur Hand un es nachzulesen.

Des da?
Beim Koppler selbst:
1655401965703.png

Bei einem EA-Modul:
1655402051164.png
Also eigentlich immer dort, wo auch die Adressen eingestellt werden.
 
Was kann man bei "Prozessabbild" einstellen?
Beim Versuch in 15.1 einen Beispiel-OB hinzuzufügen und das zu öffnen bekomme ich immer den Daueraprilscherz, als ob mir das was bringen würde ^^:
1655402521789.png

In V16 aus meinem Projekt daheim wo ich unterschiedliche TPAE/TPAA auch wirklich nutze, allerdings bei einer 1200er (was keinen gravierenden Unterschied macht):
1655403040384.png
 

Anhänge

  • 1655402715777.png
    1655402715777.png
    20,5 KB · Aufrufe: 4
  • 1655402764175.png
    1655402764175.png
    24,8 KB · Aufrufe: 4
Ich finde es nicht in meinem TIA V15.1, aber kann man bei S7-1500 die E/A-Adressen eines Profinet-Devices nicht einem anderen Prozessabbild als dem OB1-PA zuordnen?
Ja, genau. Mir ging es darum zu zeigen, daß bei S7-1500 eben nicht alle E/A "immer" im Prozessabbild liegen und "immer" mit BLKMOV kopiert werden können. Auch bei S7-1500 müssen DPWR_DAT und DPRD_DAT für das Kopieren in/aus der Peripherie für irgendwas gut sein, sonst gäbe es die da nicht ;) Wenn die E/A im OB1-PA liegen, dann braucht man DPWR_DAT und DPRD_DAT aber tatsächlich gar nicht.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Im DB107 fasse die zu sendenden Variablen entsprechend den 2 Sendebereichen in 2 Strukturen zusammen:
Code:
Static
  Sendebereich_1 : Struct
    Vorlagetank Wassertemperatur : Real : 0.0
    ...
    Reserve_1 : Real : 124.0
  Sendebereich_2 : Struct
    Reserve_2 : Real : 128.0
    ...
    Static_19 : Real : 252.0
(Erstelle die Zeile "Sendebereich_1 : Struct", dann markiere alle Zeilen mit den Variablen des Bereichs (von 0.0 bis 124.0) und ziehe die Zeilen unter die Struct-Zeile)

An den DPWR_DAT gibst Du dann an RECORD: "NWOW DB 107 NWO_OUT".Sendebereich_2

PS: gewöhne Dir Variablennamen mit Leerzeichen gar nicht erst an, auch wenn die in TIA zulässig sind. In "seriösen" Programmiersprachen gibt es keine Variablennamen mit Leerzeichen.

Harald
Dankeschön so hat es funktioniert und jaa weiß ich auch aber die Variablennamen kamen vom Kunden
 
Zurück
Oben