Step7 Fischer Factory Farbsensor programmieren

Happy_MV1

Level-1
Beiträge
1
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich bin gerade in der Lehre und mein Ausbilder hat mir als Aufgabe gegeben eine Fischer Fabrik 24V zu programmieren. Bei der Farbsortierstrecke bin ich dann bei dem Farbsensor hängen geblieben, da ich noch nicht so vertraut mit Step7 und analogen Ein/Ausgängen bin.
An der Sortierstation soll der Farbsensor die Werkstücke in weiß, rot und blau unterscheiden, und danach sortieren.
Meine Frage wäre jetzt, wie funktioniert das mit den Analogwerten, wie bekomme ich die, wie setze ich sie ein und welche Bausteine muss ich jetzt im Programm benutzen.
Ich benutze eine S7-300 mit Step7 in FUP.
Vielen Dank schonmal im voraus.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Geschickterweise suchst du erstmal das Datenblatt vom Sensor.
Dieses wird Auskunft darüber geben, was für ein analoges Signal der Sensor liefert.

Spannung oder Strom?
(z.B. 0-10V oder 0-20mA oder 4-20mA als gängige Größen)

Und dann man mit einem Multimeter testen, welche Werte du bekommst, wenn du die unterschiedlichen Werkstücke dranhältst.

Der analoge Eingang muss passend eingestellt werden inkl. Eingangswort (16 Bit bzw 2 Byte)
Fallstrick: In der SPS sind dann 100% ein Wert von 27648
Analoge Signale nicht auf Gleichheit prüfen, es gibt immer Schwankungen, also einen Bereich definieren.
 
Zuletzt bearbeitet:
Ist das überhaupt ein Analogsignal? (ich habe jetzt nicht für dich erforscht, was für ein Sensor dein Sensor sein könnte)
Ich kenne Farbsensoren so, dass da Farben geteacht werden und der Sensor liefert ein oder mehrere BOOL-Signale, welche Farbe es sein könnte.
 
Also ich frage mich ja in Zeiten von KI warum man das nicht vorher mal abklappert, vor allem wenn du ja schon einen guten prompt lieferst?... aber bitte.


Hallo! Schön, dass du dich mit SPS-Programmierung in der Ausbildung beschäftigst. Die Farbsortierstrecke mit Farbsensor ist ein typisches Einsteigerprojekt – perfekt, um den Umgang mit analogen Signalen in Step7 zu lernen. Ich erkläre dir Schritt für Schritt, wie du den Farbsensor auswertest und im FUP (Funktionsplan) programmierst.

🔧 1. Grundlagen: Wie funktioniert der Farbsensor?​

Der Farbsensor gibt analoge Spannungswerte (z. B. 0–10 V) oder Stromwerte (z. B. 4–20 mA) aus – je nachdem, welche Farbe er erkannt hat. Diese analogen Signale werden über eine analoge Eingangskarte (z. B. SM 331 AI) in die SPS eingelesen.

Beispiel:​

FarbeAnalogwert (0–27648 bei 10 V)
Weißca. 20000
Rotca. 12000
Blauca. 6000
Die genauen Werte musst du durch Messen / Testen herausfinden!

📥 2. Analogwerte einlesen​

🧩 Bausteine:​

In Step7 greifst du den Wert mit dem „ANALOGEN EINGANG“ über die Prozessabbildadresse ab, z. B.:
  • Eingang PIW 288 → das ist ein „Peripherie-Wort“, also der Wert vom Analogeingang.

🛠 Beispiel:​

Code:
L PIW 288    // Lade den Analogwert vom Farbsensor
T MW 10      // Speichere den Wert in Merkerwort MW10

🎯 3. Analogwert auswerten (Farbe bestimmen)​

Jetzt musst du den Messwert in Bereiche aufteilen, z. B.:
  • Blau: 0 – 8000
  • Rot: 8001 – 16000
  • Weiß: 16001 – 27648
Das machst du in FUP mit Vergleichsbausteinen:

🧩 Bausteine:​

  • >=I → größer-gleich Vergleich
  • <=I → kleiner-gleich Vergleich
  • UND / ODER → Logikverknüpfung

🧠 Beispiel für "ROT erkannt":​

Code:
      MW10 >= 8001  ------+
                          |--- UND -----> Merker M0.1 = TRUE (Rot)
      MW10 <= 16000 ------+
So kannst du für jede Farbe einen Merker setzen:
  • M0.0 = Blau
  • M0.1 = Rot
  • M0.2 = Weiß

🧩 4. Sortierlogik programmieren​

Je nach gesetztem Merker kannst du z. B. eine Weiche ansteuern oder ein Förderband umleiten.
Beispiel:
Code:
M0.1 (Rot erkannt) ----> Ausgang Q0.0 (Weiche links)
M0.2 (Weiß erkannt) ---> Ausgang Q0.1 (Weiche rechts)
M0.0 (Blau erkannt) ---> Ausgang Q0.2 (Band geradeaus)

🧪 5. Tipps zum Testen​

  • Mache dir ein kleines Testprogramm, das nur den Analogwert auf ein Merkerwort schreibt.
  • Gib diesen Wert z. B. auf einem HMI / Display oder im Watch Table aus.
  • Erkenne die Farbwerte per Hand (Kalibrierung!) und schreibe sie auf.
  • Füge Hysterese ein, damit das Programm bei Werten nahe an den Grenzen nicht springt.

✅ Zusammenfassung​

SchrittAufgabe
1. Analogkarte findenAdresse z. B. PIW 288 herausfinden
2. Analogwert einlesenMit L PIW 288 und T MW10
3. Wertebereiche definierenDurch Testen (z. B. Blau < 8000 etc.)
4. Vergleichslogik bauenMit >=I, <=I, UND → Merker setzen
5. Sortierung ansteuernJe nach Merker einen Ausgang setzen

Wenn du möchtest, kann ich dir ein kleines FUP-Screenshot-Layout als Vorlage machen oder dir den Code in AWL geben (für besseren Überblick). Sag einfach Bescheid!
Viel Erfolg bei der Umsetzung!
 
Zurück
Oben