Omron Indirekte Adressierung | Sps-Forum - Automatisierung Und Elektrotechnik

Sie müssen nicht schon beim Schreiben Ihres Programmes die Operanden endgültig festlegen, sondern können sie erst während der Laufzeit bestimmen lassen. Nützlich ist dies, wenn immer wiederkehrende Operationen mit verschiedenen Operanden durchgeführt werden sollen. Wenn Sie z. Indirekte adressierung sps 8. B. 14 verschiedene Rezepte in den Datenbausteinen DB 1 – 14 gespeichert haben und die Nummer des aktuellen Rezeptes im MW 20 gespeichert ist, programmieren Sie: AUF DB[MW 20] Wenn im MW 20 eine 5 steht, wird durch diese Anweisung der DB 5 aufgeschlagen und das Programm arbeitet im Folgenden mit dem darin gespeicherten Rezept. Dieses Verfahren nennt man "Speicherindirekte Adressierung", da der Index in den eckigen Klammern eine beliebige Speicherstelle sein kann. Zum indirekten Zugriff auf einzelne Bits reicht ein Word wegen des großen Adressbereiches von Eingängen, Ausgängen, Merkern und Datenbits von jeweils 65536 Bytes nicht aus, denn schon für die Angabe der Byte-Adresse wird bereits ein Word benötigt. Für die indirekte Adressierung dieser Datenbereiche wird daher ein Doppelwort benötigt.

Indirekte Adressierung Ses Portes

Mal angenommen Du möchtest einen Button sowohl als Hardware als auch auf einer Visu anlegen, so lege ich normalerweise einmal den physikalischen Eingang an z. B: I_x_Eingang1 AT%IX0. 0:BOOL; (* Taster S0. 0, Maschine start *) Zusätzlich lege ich für die Visu eine Variablenliste an, darin hieße der entsprechende Eintrag dann Visu_x_Button1:BOOL; (* Visu-Taster xyz, Maschine start *) <- das xyz ist dann natürlich ein eineindeutiger Bezeichner Im Programm kannst Du nun beide "sauber" ver-odern und hast lesbaren Code. Das hilft auch beim Fehlersuchen wenn Du so unterscheiden kannst, ob Dein Signal jetzt vom Eingang oder von der Visu kommt. Grüße Christian #4 Hallo Ihr beiden, danke für die Hilfe. Werde es so machen wie von Euch beschrieben. SPS Adressierung von Ein und Ausgängen. Benno

Indirekte Adressierung Sps 8

Ausgehend von der Eingangs Doppelwortadresse 0 ( ED 0) sind darin die Eingangswörter 0 und 2 ( EW 0 und EW 2). Wie bekannt sind darin die Eingangsbytes 0-3 ( EB 0 bis EB 3). Die Bytes wiederum beinhalten jeweils 8 Eingangs Bits. EB 0 = E0. 7 EB 1 = E1. 7 EB 2 = E2. 0 - E2. 7 EB 3 = E3. 0 - E3. 7 Soweit ganz klar. Jetzt aber eine Frage an dich. Welche Wortadresse ergibt das EB 1 und das EB 2? Genau das EW 1! Damit wir nicht immer nur Eingangsadressen von 0 an verwenden habe ich das Ausgangsdoppelwort 8 ( AW 8) vorbereitet. Wie du im Bild siehst, bleibt das grundsätzliche Prinzip aber gleich. Somit können wir das Thema SPS Adressierung zum Abschluss bringen und du bist für die nächsten Aufgaben gerüstet. Sollten noch Fragen offen sein kannst du sehr gerne die Kommentarfunktion nutzen oder mir eine E-Mail schreiben. 10 Comments Max sagt: Hallo Rene, ich habe folgendes nicht verstanden, kannst es bitte noch mal erklären? Indirekte adressierung ses portes. "Welche Wortadresse ergibt das EB 1 und das EB 2? Genau das EW 1! " MfG, Max Rene sagt: Hallo Max, ein Word ergibt sich ja immer aus 2 Byte.

Indirekte Adressierung Sps Tv

#10 @dtsclipper Ich habe da leichte Zweifel, dein MW hat nicht das korrekte Pointerformat, hast du das mal getestet? Oder kann man das so machen, ich hab das in dieser Weise noch nie verwendet?! @Andreas Verwende besser SLD 3 statt SLW 3, da das sonst bei sehr großen Adressen nicht funktioniert, der Pointer hat ja 4 Byte! #11 @ RALLE: Mach mich nicht schwach... Indirekte Adressierung in AWL | SPS-Forum - Automatisierung und Elektrotechnik. Laut Handbuch sollten es Doppelwörter sein... Ich jags mal fix durch den Simulator und melde mich dann... dtsclipper #12 Welcher Gaul hat mich da blos geritten... Habs geändert. #13 Hallo zusammen ich, ich bin gerade dabei mich auch mal an indirekter Adressierung zu versuchen. Habe leider annähern keine Erfahrung mit AWL programmierung, nur leider geht es ja nicht anders. Ich habe mir den Zitierten Ausschnitt nun erstmal geschnappt und den einfach in mein Netzwerk eingefügt. Natürlich leichte Adressen Anpassungen. Nun bekomme ich immer die Meldung: FC konnte nicht kopiert werden. Unter "Details" steht dann: (D280) Fehler bei der Übersetzung eines Bausteins in S7-300 CPU.

#1 Hallo zusammen, folgende Adressierung habe ich vorgenommen: I_xEingangbel_Ein AT%IX0. 0:BOOL; Wenn ich jetzt in der Visualisierung die Variable I_xEingangbel_Ein toggeln möchte funktioniert das nicht. Ist dies durch die indirekte Adressierung nicht mehr möglich? Indirekte adressierung sps tv. Meine Idee war eine Variable für die Hardwareeingänge und parallel für die Visu zu nutzen. Danke für Eure Hilfe. Gruß Benno #2 Hallo Benno, das ist leider weder Richtig noch sinnvoll, denn: Der von dir adressierte Eingang kommt aus einer physikalischen Adresse, dessen Zustand wird durch die Baugruppe bestimmt und nun möchtest du diesen Eingang "zwangsändern"?! Übertrieben gesagt ist das so ein wenig als wenn man eine Phase in eine Steckdose steckt! Klassisch wird immer für die Visu eine eigene Variable genommen und durch entsprechende Logiken die beiden verbunden zu einem "dritten" (ggf. Ausgang) Ich hoffe, ich habe mich nicht zu blöd ausgedrückt... Viel Spaß Shrimps #3 Hallo, ich gebe Shrimps da recht - die physikalische Adresse steht für einen realen Eingang mit einem zugehörigen Zustand - selbst wenn die visu diese Variable beschreiben könnte wird der aktuelle physikalische Zustand beim nächsten Eingangsabbild Deinen Zustand überschreiben.