TIA Get-Funktion funzt nicht

TinoToni

Level-2
Beiträge
40
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich möchte über eine S7-1214C mithilfe der Get-Funktion einen DB aus einer anderen, nicht im gleichen Projekt befindlichen S71515-2PN, auslesen.
Ich habe die Put/Get-Erlaubnis in der 1500er gegeben. In der 1200er habe ich die IP-der 1500er eingegeben. Alles ist fehlerfrei übersetzt und aufgespielt worden, aber es kommen einfach keine Daten in der 1200er an. (siehe Bilder anbei).
Was könnte hier das Problem sein. (beides in TIA V17, 1500er hat V2.9 Firmware und 1200er V4.1 )

Bitte um kleinen Tipp. danke
 

Anhänge

  • Getbaustein.jpg
    Getbaustein.jpg
    279,9 KB · Aufrufe: 45
  • Konfig.jpg
    Konfig.jpg
    259,1 KB · Aufrufe: 44
10Hz ist sportlich. Ausserdem würd ich kein Bool schreiben...
Rack und Steckplatz richtig eingestellt?
Sonstige Verbindungseinstellungen?
Aber vermutlich liegt das an fehlenden Berechtigungen.

 
Zuletzt bearbeitet:
K. A. wie das bei der 1200 V4.1 ist, aber in V4.6 muß man Put/Get per Haken in der CPU-Hardwarekonfiguration/Verbindungsmechanismen freigeben.
 
Ich habe die Put/Get-Erlaubnis in der 1500er gegeben. In der 1200er habe ich die IP-der 1500er eingegeben. Alles ist fehlerfrei übersetzt und aufgespielt worden, aber es kommen einfach keine Daten in der 1200er an. (siehe Bilder anbei).
"Es kommen keine Daten" ist so wie "Auto kommt nicht Zuhause an"
Das kann von "Auto hat keinen Sprit" bis zu "es gibt gar kein Auto" alles sein.

Steht die projektierte verbindung? (ist sie grün)
liefert das GET einen Fehlerstatus? (in einen FIFO wegsichern)

mfG René
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hast Du den Taktmerker wirklich in genau dem Moment mit nem Screenshot erwischt wo er TRUE war oder wird er irgendwie dauerhaft überschrieben und es gab am REQ noch keine Flanke? Mach mal nen normalen neuen Merker dran, den setz auf TRUE und schau was der Status macht.
 
Der DB79 in der CPU1515 ist lt. dem Bild oben ein optimierter DB. Darauf kann der GET nicht zugreifen. Das geht nur mit nicht optimierten DB's. Gleiches gilt für den PUT Befehl.
 
STATUS 16#0000 - es scheint, als wäre die Verbindung aufgebaut.
Ändert sich der STATUS, wenn du das Netzwerkkabel zu/an der 1515 abziehst?
und nimm mal zum Testen als REQ-Merker eine eigene freie Bool-Variable und steuere die
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe öfters schon Probleme gehabt ein einzelnes Bit (Bool 1) aus manchen Steuerungen auszulesen. Versuche mal eine Byte-Variable zu lesen und schau ob das funktioniert. Dann ist die Verbindung schon mal da.

Wenn der DB optimiert ist, sind deine Adressen ggf. falsch. Nimm mal den Haken für die Optimierung raus, sodass du ein eindeutiges Offset hast.

MfG
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn der DB optimiert ist, sind deine Adressen ggf. falsch. Nimm mal den Haken für die Optimierung raus, sodass du ein eindeutiges Offset hast.
Die Kritik an deinem Beitrag #9: Das ist ziemlich missverständlich formuliert. Bei "optimierten" DB gibt es gar keine Adressen, weder richtige noch falsche, und auch keine Offsets.

Der Hinweis auf "optimiert" war übrigens schon in #3
 
Um klugzuschrißen: es gibt eigentlich schon Adressen, allerdings sind die Daten in optimierten Bausteinen nicht zwingend in der Reihenfolge wie bei nicht optimierten und somit kann sich auch mal die Adresse bei einem Elemente in der Mitte des Bausteins verschieben wenn am Ende des Bausteins etwas hinzugefügt wird. Diese Adressverschiebung berücksichtigt der Compiler automatisch. Dies kann er aber im Beispiel oben nicht leisten und aus diesem Grund unterbindet er generell den Zugriff auf absolute Adressen bei optimierten Bausteinen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Natürlich gibt es auch in "optimiertem" Speicher Adressen (braucht man ja für Referenzen), nur werden die Adr. in TIA nirgends angezeigt (weder offline noch online), damit niemand glaubt, er könne mit der Information einer Adresse irgendwas anfangen oder hineininterpretieren.
 
Einigen wir uns drauf, es gibt keine "nutzbaren" Adressen?

Das alles was im Speicher abgelegt wird eine "Speicheradresse" hat, sollte logisch sein.

Warten wir mal, wann sich der TE wieder meldet.
 
Zurück
Oben