Profibusausgang kommt nicht durch

Bär1971

Level-1
Beiträge
220
Reaktionspunkte
18
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich hab da grad ein Problem bei ner Inbetriebnahme wo ich echt nicht mehr weitereweis:

Das Prozessabbild in der CPU ist auf 128 eingestellt. Ich kommuniziere zwischen einer 315-2PN/DP und einem HBM-Messkontroller.
Der Profibus läuft fehlerfrei. Die Ausgänge zur Programmumschaltung (A82.0 bis A82.4) funktionieren. Der Ausgang zum Start/Stoppen des Messprozesses (A82.5) funktioniert nicht.
Im Status des FB´s sehe ich den Ausgang grün gesetzt. Er wird nur an dieser einen einzigen Stelle im Programm verarbeitet. Der Messkontroller startet aber nicht. Im Status einer VAT-Tabelle sehe ich den Ausgang zeitgleich aber mit low-status.

Hat jemand eine Idee wo ich ansetzen kann? Danke mal im Vorraus...
 
Hallo,

ich hab da grad ein Problem bei ner Inbetriebnahme wo ich echt nicht mehr weitereweis:

Das Prozessabbild in der CPU ist auf 128 eingestellt. Ich kommuniziere zwischen einer 315-2PN/DP und einem HBM-Messkontroller.
Der Profibus läuft fehlerfrei. Die Ausgänge zur Programmumschaltung (A82.0 bis A82.4) funktionieren. Der Ausgang zum Start/Stoppen des Messprozesses (A82.5) funktioniert nicht.
Im Status des FB´s sehe ich den Ausgang grün gesetzt. Er wird nur an dieser einen einzigen Stelle im Programm verarbeitet. Der Messkontroller startet aber nicht. Im Status einer VAT-Tabelle sehe ich den Ausgang zeitgleich aber mit low-status.

Hat jemand eine Idee wo ich ansetzen kann? Danke mal im Vorraus...

Also ich würde bei der Zuweisung zusätzlich einen Merker zuweisen.
Wenn in der VAT dies funktioniert dann hast du irgendwo eine Doppelzuweisung
Entweder als Zuweisung oder mit einem Transfer oder sonst was.
Kannst du zum Test einen anderen Adressbereich verwenden?


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also ich würde bei der Zuweisung zusätzlich einen Merker zuweisen.
Wenn in der VAT dies funktioniert dann hast du irgendwo eine Doppelzuweisung
Entweder als Zuweisung oder mit einem Transfer oder sonst was.
Kannst du zum Test einen anderen Adressbereich verwenden?


bike

Doppelzuweisung schliesse ich aus. Habe es mit "gehe zu Verwendungsstelle" und aktualisierten Referenzdaten geprüft. Die Merkerzuweisung kann ich morgen früh trotzdem mal prüfen. Die Geschichte mit anderem Adressbereich ist nicht so einfach, das Kontroller ist ziemlich eingebettet im Programm und ich hab mir durch einen Adresswechsel bei einer Analogeingabekarte bei Neuübertragung der Hardwareconfig schon mal die TCP-Kommunikation zerschossen (Weis bis jetzt noch nicht was da passiert ist und konnte es nur mit ner kompletten Urlöschung der CPU wieder lösen...).

Ist es denn möglich, das der Kontroller den Ausgang der SPS "zurücksetzt" bzw auf low zieht obwohl der FB ihn auf High gesetzt hat? So ein Profibusausgang ist ja ein wenig anderst zu betrachten als ein physikalisch vorhandener Hardwareausgang, oder?
 
Also, ich hatte es mal, dass nicht alle Augänge beim DP-Slave ankamen, das lag an einer falschen (zu alten) GSD-Datei, aber wenn der Ausgang schon innerhalb deiner SPS 2 verschiedene Zustände hat, dann ist der Fehler m.E. auch dort zu suchen.
Sind der FB-Aufruf und der Instanz-DB "sauber"?
Magst du dein Programm (oder die hier interessanten Teile davon) mal zeigen?
Kuck doch mal, ob der Ausgang direkt nach dem FB noch 1-Zustand hat.

Grüße von HaDi
 
Ist es denn möglich, das der Kontroller den Ausgang der SPS "zurücksetzt" bzw auf low zieht obwohl der FB ihn auf High gesetzt hat? So ein Profibusausgang ist ja ein wenig anderst zu betrachten als ein physikalisch vorhandener Hardwareausgang, oder?

Also die Perpherie kann keinen Ausgang im PAA setzen.
Eine Möglichkeit ist, wie HaDi schreibt, im Programm zu suchen.
Wenn die Kommunikation über einen FB erfolgt, dann nach dem Aufruf des FB

U A 82.5
= M "test"

Dann siehst du was direkt nach dem FB Status ist.


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also, ich hatte es mal, dass nicht alle Augänge beim DP-Slave ankamen, das lag an einer falschen (zu alten) GSD-Datei, aber wenn der Ausgang schon innerhalb deiner SPS 2 verschiedene Zustände hat, dann ist der Fehler m.E. auch dort zu suchen.
Sind der FB-Aufruf und der Instanz-DB "sauber"?
Magst du dein Programm (oder die hier interessanten Teile davon) mal zeigen?
Kuck doch mal, ob der Ausgang direkt nach dem FB noch 1-Zustand hat.

Grüße von HaDi

du meinst im OB1 nach jedem call Aufruf den Ausgang mal abfragen und sehen wie lang er high ist? Ja, das kann ich morgen auch mal versuchen.
Das Programm ist gepackt ca.8MB groß, wüste auch nicht wie ich es hier posten könnte.
 
du meinst im OB1 nach jedem call Aufruf den Ausgang mal abfragen und sehen wie lang er high ist? Ja, das kann ich morgen auch mal versuchen.
Das Programm ist gepackt ca.8MB groß, wüste auch nicht wie ich es hier posten könnte.

Nach jedem Call???? :confused::confused::confused:

Liegt dein Problem in einem mehrfachen Aufruf des FB?


bike
 
Zuviel Werbung?
-> Hier kostenlos registrieren
nein, ich ruf nur ca. 40 Bausteine nacheinander auf, der FB wo der DP-Ausgang gesetzt wird ist da mittendrin

Dann genügt es zunächst, wenn du nach dem Aufruf dies überprüfst.
Ist der Ausgang bzw Merker 1 dann nach dem nächsten Aufruf, bis du den Fehler findest.


bike
 
Dann genügt es zunächst, wenn du nach dem Aufruf dies überprüfst.
Ist der Ausgang bzw Merker 1 dann nach dem nächsten Aufruf, bis du den Fehler findest.


bike

Problem gelöst!!!

Vielen Dank an Euch beim Suchen helfen. Manchmal sieht man eben den Wald vor lauter Bäumen nicht mehr.

Beim schnell runterprogrammieren wollt ich es mir einfach machen und habe die Parametersatzumschaltung (Bit 0 bis 4) direkt verknüpft:
L #Parametersatz
T AB

Dadurch wird natürlich das vorher gesetzte Bit 5 (Messstart) auf Low gezogen bevor die Ausgänge im Prozessabbild verarbeitet werden.
 
Problem gelöst!!!

Vielen Dank an Euch beim Suchen helfen. Manchmal sieht man eben den Wald vor lauter Bäumen nicht mehr.

Beim schnell runterprogrammieren wollt ich es mir einfach machen und habe die Parametersatzumschaltung (Bit 0 bis 4) direkt verknüpft:
L #Parametersatz
T AB

Dadurch wird natürlich das vorher gesetzte Bit 5 (Messstart) auf Low gezogen bevor die Ausgänge im Prozessabbild verarbeitet werden.

Ja, das war zu einfach, sowas passiert. Du mußt zuerst die Bits mit der Programmnummer aus dem AB ausmaskieren, so dass sie False sind (UW) und dann einkopieren (OW). Aber ich denke, du weißt, wie das geht.
 
Zurück
Oben