TIA IO-Link mit SM1278 und RAFI Signalleuchte

deraragorn

Level-2
Beiträge
24
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Forum,

ich bin seit längerem stiller Mitleser hier und habe nun eine erste Frage.
Zunächst kurz zu mir, ich wohne und arbeite im MK/NRW und bin eigentlich QM, aufgrund Vorerfahrung bin ich aber innerbetrieblich das Mädchen für alles was mit Automatisierung zu tun hat.

Wir haben eine Anlage die auf einer S7-1700 läuft und um ein SM1278-IO-Link-Modul erweitert wurde.
Die Programmierung ist bei mir hängen geblieben. SPS ist jetzt kein Neuland für mich, einige kleinere Projekte habe ich bereits verwirklicht - aber IO-Link ist komplett neu für mich.

Nun soll auf der Anlage eine Tilted Diamond-Signalleuchte installiert werden (physisch bereits geschehen) und mit dem neu hierfür eingebauten SM1278-Modul auf Steckplatz 2 HW-Kennung 270 angesteuert werden um Anlagenzustände anzuzeigen.

Die Verkabelung und Projektierung funktioniert soweit auch gut, das PCT erkennt den Teilnehmer an Port 4 und ich kann auch alle Daten auslesen.
Der PLC-Datentyp ist im TIA angelegt und eine Variablentabelle daraus erzeugt.

Ich habe es bisher nicht zustande gebracht hierzu einen für mich brauchbaren Workaround zu finden der mir bei der Programmierung hilft. Alle möglichen externen IO-Link-Bausteine bspw. aus der 200er-Serie werden behandelt aber dieses Modul SM1278 nicht. Auch nicht nennenswert in den Handbüchern von Siemens.

Mit dem LIO-Device Baustein komme ich nicht wirklich zurecht, dieser tut bei mir nicht so wie er soll. Wenn ich hier alles so angebe wie ich es für Richtig halte funktioniert es nicht und der Fehler ist schon am Baustein: Bei "record" wird ein "Array* of Bytes" erwartet, ich kann nicht die Variable aus dem PLC-Datentyp angeben. Diese besteht aus 8 Bit - also einem Byte. Liegt hier ggf. der Fehler?
Ferner sagt das Handbuch 0xFFFF als Index würde die Portfunktion nutzen - das sollte dann ja der PLC-Datentyp sein der automatisiert angelegt ist oder?

1736420211582.png1736420273185.png

Für den Testaufbau nutze ich eine separate S7-1200 um das zu testen und kann daher ein Minimalprogramm bauen.

Es wäre sehr nett wenn ihr mir helfen - oder mich mit der Nase auf einen groben Hinweis stoßen könntet falls ich etwas übersehen habe. Inzwischen bin ich wirklich etwas verzweifelt, es kann durchaus sein dass ich den Wald vor lauter Bäumen nicht sehe...

Liebe Grüße und vielen Dank im Voraus.
Felix
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Den LIO-Device Baustein benötigst Du nur, wenn Du die im PCT eingestellten (Zusatz-) Parameter der Leuchte während der Programmausführung einstellen oder auslesen möchtest.

Die (Haupt-) Ein-/Ausgabeadressen aus Deinem obigen PLC-Datentyp kannst Du wie jeden anderen Ein-/Ausgang einfach direkt ansprechen, z.B.:

1736422536581.png
 
Den LIO-Device Baustein benötigst Du nur, wenn Du die im PCT eingestellten (Zusatz-) Parameter der Leuchte während der Programmausführung einstellen oder auslesen möchtest.

Die (Haupt-) Ein-/Ausgabeadressen aus Deinem obigen PLC-Datentyp kannst Du wie jeden anderen Ein-/Ausgang einfach direkt ansprechen, z.B.:

Anhang anzeigen 84497
Danke Hucki,

leider passiert da einfach gar nichts... In der Beobachtungstabelle steht der Wert bspw. für "Illumination" auf true, alles andere auf false (sollte dann rot hell durchgehend leuchten).
Dennoch: Keine LED an. Laut PCT aber keine Fehler etc.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke Hucki,

leider passiert da einfach gar nichts... In der Beobachtungstabelle steht der Wert bspw. für "Illumination" auf true, alles andere auf false (sollte dann rot hell durchgehend leuchten).
Dennoch: Keine LED an. Laut PCT aber keine Fehler etc.
Bekommst Du das OK über das Validation-Bit des PDin zurück?
Sprich, ist das Bit 7 TRUE?

Was zeigt das SM1278-IO-Link-Master-Modul mit seinen LEDs an?
Wie sieht der elektrische Anschluss aus und was hast Du im PCT konfiguriert?
Passen Deine PLC-Adressen ?
Die kannst Du im PCT anzeigen lassen, z.B.:
1736463990088.png

Mach' am besten auch mal Screenshots vom Beobachten der EIN-/Ausgänge, damit wir auch mal was "live" sehen können.
;)
 
Zuletzt bearbeitet:
Guten Morgen und schonmal vielen Dank für die Antwort und deine Hilfestellung.

Die Adressen habe ich aus dem PCT als .udt ex- und in TIA importiert und daraus die PLC-Datentype exportiert.
1736494653260.png
So sieht es mit PLC-Adressen im PCT aus.
Zusatz: PCT spuckt einen Warnhinweis aus dass sich nicht alle Daten korrekt übersetzen lassen, sprich jeweils die Bits 2 und 3 für Colour und Blink Mode sind irgendwie verwurstelt und tauchen hinterher als "reserved bit" auf, aber das lässt sich (denke ich) leicht zuordnen.
1736494868860.png
Das ist die daraus erzeugte PLC-Datentype.
1736495163689.png
Und so sieht der daraus generierte Variablensatz aus. Aus einem mir gerade unklaren Grund kann ich die Pin Validity nicht auf das Bit 11.7 setzen, er lässt nur 11.0 zu - daher habe ich den Eingang 11.7 zusätzlich angelegt um beide beobachten zu können.

Der IO-Link-Baustein leuchtet auf "C4", F und Q 4 sind aus.
1736495753067.png
Das ist jetzt der Beobachtungssatz - das Validity-Bit kommt scheinbar wirklich auf dem "falschen" Kanal an.

Und was soll ich sagen: Über Nacht. Den ganzen Haufen angemacht, gestartet - läuft.
1736496023099.png

Vielen vielen vielen Dank für die Hilfestellung.

P.S.: Heißt das im Umkehrschluss dass ich diese komplette Bibliothek mit dem Käse von LIO-Link bei dem SM1278-Modul überhaupt nicht benötige?
 

Anhänge

  • 1736494916474.png
    1736494916474.png
    83,3 KB · Aufrufe: 6
Erstmal Glückwunsch.


Und was soll ich sagen: Über Nacht. Den ganzen Haufen angemacht, gestartet - läuft.
:unsure:
In Deinem ursprünglichen Post greiftst Du auf Q2.0ff zu, während Dein funktionierendes Bild auf Q8.0ff zugreift.
Scheinst also doch was geändert zu haben.
;)



Aus einem mir gerade unklaren Grund kann ich die Pin Validity nicht auf das Bit 11.7 setzen, er lässt nur 11.0 zu - daher habe ich den Eingang 11.7 zusätzlich angelegt um beide beobachten zu können.
UDTs können immer nur auf .0-Adressen gesetzt werden.

Für Dein UDT-PIn musst Du daher das komplette BYTE abbilden (Dein POut-UDT ist auch nicht wirklich schön und versuche möglichst kurze Symbole ohne Namenensdopplungen und Leer-/Sonderzeichen zu verwenden ;)):
1736502852775.png 1736502797314.png

Dann dieses in Deine Variablentabelle einfügen:
1736502734872.png

Dann kannst Du das Validation-Bit entweder dort oder auch einzeln in einer Beobachtungstabelle beobachten:
1736502640475.png


Dann fällt noch auf, das jetzt ein Adressversatz zwischen den Ein- & Ausgängen besteht.
Das ist nicht tragisch, aber IMHO auch nicht wirklich schön.
Ich persönlich würde in den EA-Adressen des Masters möglichst einheitliche Adressen auswählen (die 200 hier ist aus meinem eigenen Programm und nicht unbedingt als Vorschlag für Dich gedacht):
1736502361910.png




P.S.: Heißt das im Umkehrschluss dass ich diese komplette Bibliothek mit dem Käse von LIO-Link bei dem SM1278-Modul überhaupt nicht benötige?
Jein.
Auf die Prozessdaten kannst Du als IN oder OUT direkt zugreifen.

Wie Du dem Datenblatt entnehmen kannst, bietet das IOL-Gerät aber auch noch Parameter- und Diagnosedaten an.
Diese werden mit dem IOL-Device-FB übertragen. Wenn Du also an diese Daten im lfd. Betrieb musst...
Ich persönlich benötige dies z.B. beim Siemens ID-Key, um den Diagnose-Daten die jeweilige ID des gesteckten Keys zu entnehmen und diesen damit eindeutig zu identifizieren.
 
Zuletzt bearbeitet:
Zurück
Oben