Hallo,
ich muss so etwas ähnliches machen.
Nur über serielle Schnittstelle auf ein S7 CP340.
Verwendet wird ein CLV 410-1010 mit Anschluss CDB410-001.
Ich vergleiche, ob die eingelesenen Codes von einem Referenzcode abweichen, das heisst ob wir im Moment das richtige Produkt fahren.
Es gibt natürlich viele Produkte, somit muss bekannt sein, welches gerade gefahren wird und welcher Code zum Produkt gehört.
Es gibt jetzt einmal die Möglichkeit einen Barcode im CLV als Referenz zu hinterlegen, der wird verglichen und über ein Bit wird das Ergebniss des Vergleichs ausgegeben.
Dies ist aber nur bedingt einsetzbar, wenn du häufig wechselnde Codes hast.
Ich habe mir einen DB mit Platz für ca. 100 Codes angelegt.
Da ich weiss, welche Codes ich vergleichen muss, kann ich die Struktur des DB festlegen.
Ich brauche EAN 13, das heisst es werden 13 Zeichen erwartet.
Jeder Code setzt sich also aus einem Strin aus 13 Zeichen zusammen.
Wenn eine Palette eingelesen werden soll, stoße ich den Lesevorgang an.
Dies geht bei mir über eine Hardwaresignal, da ich kein Bus verwende.
Ist ein Code korrekt eingelesen worden, kommt ein Signal zur SPS zurück.
Dann stoße ich den Auslesevorgang mittels FB2 P_RCV an (gehört zum CP).
Diesen Code lege ich in einen Zwischenspeicher.
Mittels FC 29 NE_String überprüfe ich den Strin auf Ungleichheit.
Der scanner muss im Vorfeld noch mittels Scannersoftware auf dei erwarteten Codes und sein Leseverhalten eingestellt werden.
Ich denke bei der Verwendung von Profibus ist die Vorgehensweise, bis auf den FB2, gleich.
Hier sollte zum Anschlussmodul Dokumentation vorhanden sein, die den Ablauf des Auslesens mittels SPS beschreibt.
Ich hoffe ich konnte ein wenig weiterhelfen.
Gruß
Christian