Step 7 Frage: Analogausgang

DTTM

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo miteinander.

Ich habe hier eine S7-400 und bin noch relativ unerfahren mit der SPS Programmierung. An der S7 ist eine Baugruppe mit Analogausgängen angeschlossen. Alle Ausgänge kann ich mit einem Integerwert bespielen, genauso wie die Analogeingänge, welche auch angeschlossen sind, mir einen Integerwert liefern. Alle, außer einem. Wenn ich diesen Ausgang mit einem Integersignal unter CFC verbinde, erhalte ich die Fehlermeldung:
"Unzulässige Verschaltung! Die Verschaltungspartner sind nicht vom gleichen Datentyp."

Ich habe schon google konsultiert, konnte aber nichts finden. Vielleicht könnt ihr mir weiterhelfen. Danke.
 
Wenn ich diesen Ausgang mit einem Integersignal unter CFC verbinde, erhalte ich die Fehlermeldung:
"Unzulässige Verschaltung! Die Verschaltungspartner sind nicht vom gleichen Datentyp."
Wie ist denn die Ausgangs-Variable deklariert, die Du verschalten willst?
Ist das ein AW... oder PAW... oder MW... ? Dann schau in die Symboltabelle.
Ist das ein Wert aus einem DB? Dann schau in den DB.

Welche Step7-Version verwendest Du zur Programmierung der S7-400?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke Harald für Deine Antwort.

Wie ist denn die Ausgangs-Variable deklariert, die Du verschalten willst?
Ist das ein AW... oder PAW... oder MW... ? Dann schau in die Symboltabelle.
Ist das ein Wert aus einem DB? Dann schau in den DB.

Ist als PAW deklariert und dank der Symboltabelle habe ich es herausgefunden. Ist ein WORD. Da schließt sich direkt die nächsten Fragen an. Kann man das umdeklarieren? Oder kann ich einfach den Integerwert der aus dem Unscale-Baustein mit einem Umwandebaustein in ein Word ändern und damit den Ausgang ansteuern?

Welche Step7-Version verwendest Du zur Programmierung der S7-400?

Version 5.3
 
Ist als PAW deklariert und dank der Symboltabelle habe ich es herausgefunden. Ist ein WORD.
Die exakte Antwort wäre: "das PAW... ist als WORD deklariert"
und deshalb kann es nicht verschaltet werden, wo ein INT verlangt wird.
Damit das PAW verschaltet werden kann müsste die Datentyp-Deklaration von WORD zu INT geändert werden.

Gibt es einen triftigen Grund, warum das PAW... abweichend von den anderen PAWs als WORD deklariert ist, oder ist das einfach nur ein Programmierer-Fehler?
Wird das PAW noch woanders verwendet? Dann verlangt vielleicht die/eine andere Verwendungsstelle ein WORD? Dann gäbe es danach dort ein Problem, wenn der Typ von WORD zu INT geändert wird.
Ein PAW kann eigentlich nur als Ausgabe verwendet werden - wenn es noch eine andere Verwendungstelle gibt, dann wäre zusätzlich noch das Problem daß dem PAW womöglich mehrfach verschiedene Werte zugewiesen werden - das müsste auch untersucht und entfernt/aufgelöst werden.

Wenn das alles so richtig ist, daß es mindestens 2 Ausgabestellen an das PAW gibt, und einmal WORD und einmal INT verlangt wird, dann müsste einmal eine Zwischenvariable verwendet werden, die man z.B. als INT verschaltet, und danach den INT-Wert per MOVE in den WORD-PAW kopiert (falls es sowas in CFC gibt - das weiß ich nicht).

Was mich verwirrt: Du schreibst Step7 V5.3 und CFC - meinst Du wirklich CFC? Hast Du mal ein Bild davon?

Harald
 
Zurück
Oben