# Drehgeber Wert verarbeiten (inkremental vs absolut)



## Kirkdickdick (21 September 2017)

Guten Morgen zusammen, 

ich stehe vor der Aufgabe eine Art "Prüf/Sortier Förderband" für Versuchszwecke zu bauen.



------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke "Abschub-Kontrolle"-------------------------Lichtschranke_3_Band_Ende---------



Vor einiger Zeit habe ich einen ersten Versuch unternommen mit einigem Lagermaterial ein "Versuchs-Band_1" zu bauen. Beim Programmieren bin ich zwar mehr oder weniger an mein Ziel gekommen, aber es war relativ umständlich und hat recht lange gedauert. Mein Problem ist dabei, dass sichere verfolgen aller auf dem Band befindlichen Teile. Verwendet habe ich eine Vipa SPS, einen inkrementellen Drehgeber an einem DASM und Programmiert habe ich in Step 7 V5.5.

*
Jetzt zu meiner eigentlichen Frage : *Kann ich mir das Leben mit einem Absolutwertgeber bei dieser Aufgabe leichter machen ??? 

Im nächsten Versuch würde ich mit einer Siemens 1214C und im TIA Portal arbeiten sowie einen Multiturn Absolutwertgeber verwenden. Allerdings bin ich mir nicht sicher ob damit meine Schwierigkeiten beim Programmieren behebe.Mit einem Absolutwertgeber komme ich auch nicht um den Überlauf der zu zählenden Zahl herum oder ? Das Band läuft stätig in eine Richtung. Ob ich jetzt absolut oder inkremental zähle, ich kann nicht unendlich weit zählen in der SPS und muss definiert bei einer bestimmten Bandposition z.B. nach 360° neu anfangen zu zählen. 


*Versuch_1 Beschreibung : *

In meinem ersten Programmier Versuch, habe ich jedem auf dem Band befindlichen Teil beim Durchfahren einer Lichtschranke einen Wert des Drehgebers zugeordnet und im Programm gespeichert. Alle weiteren Stationen wie die Kamera oder Abschub-Zylinder hatten dabei eine feste Position am Band und somit auch einen definierten Abstand zur ersten Lichtschranke. Durch das hinzu rechnen dieser Abstände habe ich die nötigen Aktionen ausgeführt. Auf Grund des verwendeten Daten Typs musste ich irgendwann den Zählwert beim erreichen der Maximal speicherbaren Zahl nullen. Da wurde es dann kompliziert. 

Das Problem ist bei der Programmierung, dass die noch auf dem Band befindlichen Teile einen bestimmten Wert haben, diesen Addiere ich mit dem Abstandswert der nächsten Station und vergleiche ihn dann mit einem Sollwert. Ist das Ergebnis = dem Sollwert, wird z.B. die Kamera ausgelöst oder der Abschub-Zylinder ausgefahren. Wenn ich diesen Wert aber während des Betriebs SPS bedingt nullen muss, wird das errechnen des Wertes schwieriger weil ich Rückwärts rechnen muss. Auch bin ich in dieser Variante absolut davon abhängig, dass der Abstand der Lichtschranken und Stationen immer gleich bleibt. Das Band darf sich im Betrieb auf der Antriebsrolle nicht durchdrehen sonst stimmt die Berechnung einfach nicht mehr. 


*Beispiel :*

Teil_1: 


------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke Abschub-Kontrolle-------------------------Lichtschranke_3_Band_Ende---------
                                                      (differenz 3500)                                  (differenz 3000)                                                                                   (differenz 2000)
                Zählwert                                                          Zählwert                                                               Zählwert                                                                                     Zählwert                              
                 1500                                                                5000                                                                   8000                                                                                           10000
                                                                                  Trigger-Kamera                                               (Ergebnis Kamera I.O.                                                                   (Erkennung n.i.O. Teil) 
                                                                                                                                                         = Abschub des Teils)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


  Teil_2: 


------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke Abschub-Kontrolle-------------------------Lichtschranke_3_Band_Ende---------
                                                      (differenz 3500)                                  (differenz 3000)                                                                                   (differenz 2000)
                Zählwert                                                          Zählwert                                                               Zählwert                                                                                     Zählwert                              
                10500                                                               14000                                                                17000                                                                                           19000
                                                                                  Trigger-Kamera                                               (Ergebnis Kamera I.O.                                                                   (Erkennung n.i.O. Teil) 
                                                                                                                                                         = Abschub des Teils)           
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  Teil_3: 


------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke Abschub-Kontrolle-------------------------Lichtschranke_3_Band_Ende---------
                                                      (differenz 3500)                                  (differenz 3000)                                                                                   (differenz 2000)
                Zählwert                                                          Zählwert                                                               Zählwert                                                                                     Zählwert                              
                19500                                                               23000                                                                26000                                                                                           2800
                                                                                   Trigger-Kamera                                                (Ergebnis Kamera I.O.                                                                   (Erkennung n.i.O. Teil)    
                                                                                                                                                             =Abschub des Teils)                                                                                                                           ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------                                                                                                                        


  Teil_4: 


------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke Abschub-Kontrolle-------------------------Lichtschranke_3_Band_Ende---------
                                                      (differenz 3500)                                  (differenz 3000)                                                                                   (differenz 2000)
                Zählwert                                                          Zählwert                                                               Zählwert                                                                                     Zählwert                              
                28500                                                             32000                                                                  35000                                                                                          37000
                                                                                  Trigger-Kamera                                               (Ergebnis Kamera I.O.                                                                   (Erkennung n.i.O. Teil) 
                                                                                                                                                        = Abschub des Teils) 


--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  Teil_5: 


------Lichtschranke_1_Band_Start--------------------------Kamera/Scanner-------------------------Abschub-Zylinder+Lichtschranke Abschub-Kontrolle-------------------------Lichtschranke_3_Band_Ende---------
                                                      (differenz 3500)                                  (differenz 3000)                                                                                   (differenz 2000)
                Zählwert                                                          Zählwert                                                               Zählwert                                                                                     Zählwert                              
                37500                                                             41000                                                                 44000                                                                                           46000
                                                                                  Trigger-Kamera                                               (Ergebnis Kamera I.O.                                                                   (Erkennung n.i.O. Teil) 
                                                                                                                                                         = Abschub des Teils) 








Ich hoffe die Beschreibung meines Problems kommt rüber. Ansonsten einfach nachfragen. Bin absolut unerfahren was das arbeiten und vor allem verarbeiten von Drehgebern an geht. 

MFG kirkdickdick 

Danke für eure Antworten


----------



## Kirkdickdick (21 September 2017)

Sorry im Beispiel hat sich nach dem erstellen der Text verschoben


----------



## holgermaik (21 September 2017)

> Kann ich mir das Leben mit einem Absolutwertgeber bei dieser Aufgabe leichter machen ???


Ein Zähler hat den Vorteil, dass du nur durch die Variable (INT, DINT) in der Größe beschränkt bist. Ein Absolutwertgeber hat wiederum den Vorteil, das der Wert bei Spannungsausfall erhalten bleibt.
Ich denke das gröste Problem ist die Zählgrenze. Ich würde nicht "Nullen". Wenn dein Zähler an die Grenze kommt, weist du ja wo welches Teil liegt. Jetzt würde ich den Zähler auf die Bandlänge setzen (z.B. 5000 für 5m Band) und den neuen Positionswert für jedes Teil speichern. Damit kannst du immer Positiv rechnen.



> Das Band darf sich im Betrieb auf der Antriebsrolle nicht durchdrehen sonst stimmt die Berechnung einfach nicht mehr.


Wenn das passiert hast du mit beiden Systemen verloren wenn sie am Antrieb montiert sind. In dem Fall hilft nur ein Geber am Band der formschlüssig angebracht ist.
Eventuell kann man am Band eine Referenzmarke anbringen mit der du deine Position vergleichen und korrigieren kannst.
Holger


----------



## Kirkdickdick (21 September 2017)

Vielen Dank für die Antwort,

Bei der eigentlichen Auswertung des Zählwertes besteht also kein Vorteil zwischen den Systemen ? Eher ein Nachteil weil die Zahlenwerte mit steigender Auflösung auch größer werden und von der SPS erstmal verarbeitet werden müssen.


----------



## holgermaik (21 September 2017)

> Bei der eigentlichen Auswertung des Zählwertes besteht also kein Vorteil zwischen den Systemen ?


Ich sehe da erstmal keinen Vorteil, da du dich ja nicht in einer absoluten Position befindest sondern dein Band permanent vorwärts läuft.


> Eher ein Nachteil weil die Zahlenwerte mit steigender Auflösung auch  größer werden und von der SPS erstmal verarbeitet werden müssen.


Bei einer modernen SPS spielt die größe der Zahlen erstmal keine Rolle. Wenn du z.B. mit einem DINT rechnechst wird immer eine 32bit Rechnung durchgeführt. Egal ob der Zahlenwert jetzt 1 oder 1 Mio. ist.

Bei der Anschaffung der Geräte konnte es je nach Genauigkeit und Geschwindigkeit zu erheblichen Preisunterschieden kommen. Da du aber bereits Geräte besitzt sehe keinen Vorteil einen Absolutwert Geber einzusetzen.
Holger


----------



## Heinileini (21 September 2017)

Moin Kirkdickdick!
Wenn Holgermaik sagt "Bei einer modernen SPS spielt die Größe der Zahlen erstmal keine Rolle. Wenn du z.B. mit einem DINT rechnest, wird immer eine 32bit Rechnung durchgeführt. Egal ob der Zahlenwert jetzt 1 oder 1 Mio. ist.", hat er nicht Unrecht. Aber ich bin trotzdem ganz auf Deiner Seite, wenn Du schon jetzt an das Thema ZählerÜberlauf denkst. Das "Jahr-2000-Problem" sollte man nicht immer wieder neu erfinden.

Ich würde keinen AbsolutGeber "spendieren", sondern die billige Variante bevorzugen. Die absolute Position des Bandes scheint mir irrelevant zu sein und für ein Referenzieren auf einen bestimmten Punkt des Bandes sehe ich ebenfalls keinen Grund.
Wenn Du sowieso hin und wieder Deinen PositionsZähler neu setzen willst, um den gefürchteten Überlauf zu vermeiden, dann bietet es sich doch an, dies z.B. bei jedem Teil zu tun, das die LS1 auslöst - allerdings müsste man den aktuell erreichten Zählerstand direkt vor dem Setzen abspeichern.
Ich habe keine Vorstellung, von welcher Bandlänge wir hier sprechen und wieviele Bandlängen Deinen Zähler zum Überlauf bringen würden. 
Ausserdem wäre es wohl wichtig zu berücksichtigen, wieviele Teile maximal gleichzeitig zwischen LS1 und LS3 auf dem Band unterwegs sind - bei dieser Zählung bitte so tun, als ob keine Teile aussortiert würden.
Mir schwebt vor, einen weiteren Zähler zu verwenden, der durch LS1 inkrementiert wird und die Teile zählt, damit man die erforderlichen Berechnungen überhaupt zuordnen kann.
Aber darüber möchte ich mir eigentlich erst den Kopf zerbrechen, wenn Du Angaben zu Bandlänge, Anzahl Bandlängen zwischen zwei Überläufen und Anzahl Teilen auf dem Band gemacht hast.
Gruss, Heinileini


----------



## weißnix_ (21 September 2017)

Der Zähler wird üblicherweise 32bit umfassen. Als Zahlenbereich unbedingt ohne Vorzeichen rechnen. Alle Offsets sind positiv und die Zählrichtung ist vorwärts.

So sollte der Zählwert und auch ein Überlauf keine Rolle spielen. Ich hatte genauso mal eine Gut/Schlecht-Erkennung für ein Produkt auf einem langen Förderband gemacht. Dabei habe ich mir einen 32bit-FIFO-Puffer gemacht, der die maximale Anzahl der Teile zwischen Kamera und Auswerfer aufnehmen konnte. Ich habe jeweils nur die Positionen für Gut-Teile gespeichert.
Der FIFO wird laufend mit der Geberposition+Offset verglichen. Wenn oberster Wert kleiner als aktuelle Position plus Verschiebeoffset, dann löschen und FiFO weiterrücken.
Wenn Teil an Abschiebelichtschranke, dann auf gültigen FIFO-Eintrag prüfen und wenn ja, passieren lassen - Teil ohne FIFO-Eintrag immer abschieben.
So wird das Verfahren auch robust gegen manuell entfernte oder verschobene Teile. An der Abschiebeposition arbeitest Du mit einem kleinen Toleranzfenster für Bandschlupf oder sich leicht verschiebende Teile.

Wichtig hier: Ein gewisser definierter Mindestabstand der Teile. Aber der wird vermtl. schon durch das Kamerasystem erforderlich sein.

Zum Rechnen ohne Vorzeichen: 
In 8bit zum veranschaulichen 250+10=4. So spielt der Zählerüberlauf keine Rolle, weil der Zähler von 255 auf 0 springt. Hast Du also die Offfsetposition mit 4 berechnet stimmt alles, weil es ist 10 Zähler weiter...
Auf den Zählerreset würde ich verzichten - der macht nur Ärger bei einer fortlaufenden Anwendung.
Meine Variante lief auf einer S7-200 und ich war im realen Betrieb absolut zufrieden.


----------



## Heinileini (21 September 2017)

@weißnix
Der TE schrieb 'Abschub-Zylinder+Lichtschranke "Abschub-Kontrolle"'. Das habe ich so verstanden:
- entweder: das Teil passiert diese LS nur, wenn das Teil tatsächlich abgeschoben wurde
- oder: das Teil passiert diese LS nur, wenn das Teil nicht abgeschoben wurde
was letztlich auf das gleiche heraus kommt, wenn ein Teil nicht beide Varianten gleichzeitig erfüllen kann bzw. kein Teil beide Varianten gleichzeitig nicht erfüllen kann (diesen Satz kann keiner verstehen!? ;o).
Ich fürchte die Strecke zwischen LS1 und LS3 ist nicht so üppig mit Lichtschranken ausgestattet, dass man ganz ohne die BandPosition auskommen könnte - das wäre m.E. einfacher und irgendwo hatten wir auch schon einen passenden Thread dafür. 
Dein Satz "Wenn Teil an Abschiebelichtschranke, dann auf gültigen FIFO-Eintrag prüfen und wenn ja, passieren lassen" scheint mir darauf hin zu deuten, dass wir die Aufgabenstellung des TE in diesem Punkt unterschiedlich verstehen. Aber ich vermute, wir sind uns einig, dass eine entsprechende LS an dieser Stelle absolut hilfreich wäre.
Dann müsste nur noch das Auslösen der Kamera durch den PositionsZähler getriggert werden.

@Kirkdickdick
Hat man Dich mit der HardwareAusstattung der SortierStrecke vor vollendete Tatsachen gestellt? Wären mehr Lichtschranken bei Verzicht auf den DrehGeber ein denkbarer Weg?

Wenn man viele Informationen gegeneinander prüfen kann/muss, kann das sehr schön sein, um tolle FehlerDiagnosen zu erstellen. Es kann aber auch zu wahnsinnig vielen Kombinationen mit viel zu vielen Unwägbarkeiten führen - und kompliziert kann eben doch nicht jeder, jedenfalls nicht so, dass die Ergebnisse trotzdem keinen der Beteiligten überfordern.
Gruss, Heinileini


----------



## Kirkdickdick (22 September 2017)

Guten Morgen zusammen, 

erstmal möchte ich mich für eure Beiträge bedanken. Ich versuche mal die in euren Beiträgen aufgekommenen Fragen zu beantworten. 

Zu erwähnen ist vielleicht noch, dass ich den Luxus habe eine Versuchsanlage zu bauen. Diese wird auch für spätere Prüf und Sortier Aufgaben der en Machbarkeit damit ermittelt werden soll (Intern), eine gewisse Flexibilität benötigen, die ich jetzt nur schwer abschätzen kann. Aber es muss keine sofort für den Betrieblichen Einsatz fertige Maschine werden von der ich hier spreche.  Also bleibt es voraussichtlich immer beim "Probebetrieb" der Maschine. Geprüft werden Schmiede Rohlinge verschiedenster Gewichte (50 g bis 5,5 Kg). 

Ich in der Wahl der Betriebsmittel und auch im Budget weitest gehend flexibel, sodass ich nicht an die verwendete Hardware gebunden bin. Ich versuche natürlich nicht mit Kanonen auf Spatzen zu schießen, aber bevor ich zweimal anfangen muss weil die Hardware aus dem Lagerbestand unserer Instandhaltung den Anforderungen nicht entspricht, investiere ich lieber jetzt mehr Zeit in die Planung. Und bestelle mir die für die Aufgabe nötigen Komponenten. 



Technische Daten : 

Förderband : Länge 3000 mm, Breite 150 mm, Rollendurchmesser 35 mm, ein nicht verzahnter Gurt auf glatten Rollen und einer glatten Lauffläche aus Metall (ich habe das Band nicht bestellt  ).

Antrieb : 3-Phasen Getriebemotor 90 Watt/50 Hz  (Nenndrehzahl 1350 U/min) mit externen Frequenzumrichter (Delta S1 VFD004S21 A), Getriebeübersetzung i=15,00.

Drehgeber : inkrementeller Drehgeber IFM RB 6005 mit 50 Impulsen pro Umdrehung , Wellendurchmesser 6mm direkt an der Getriebewelle befestigt. 

Steuerung : Siemens S7 1214 C + Erweiterungsmodul (wird noch eine extra Zählerkarte oder ähnliches  benötigt ?)

Taktzeit : 1 Sekunde je Prüfteil :shock: ( ich weiß sehr sportlich, im ersten Versuch hatte ich noch eine Taktzeit von 3 Sekunden )

Prüfteil : Schmiede Rohling, rund und flach (Höhe 20 mm,Durchmesser 70 mm, Gewicht 200 g) 

Vision System : noch offen muss mit Hilfe des Bandes im Stande sein in der geforderten Zeit die Menge an Teile sicher zu Prüfen (Testgeräte bestellt). 


Für die geforderte Taktzeit muss auch noch ein funktionierendes mechanisches oder Pneumatisches Konzept entwickelt werden, um die gut Teile sicher aussortieren zu können. 
Dieses Problem lasse ich erstmal außen vor und konzentriere mich auf die Prüfung der Teile die durch ein Kamera oder Scanner System erfolgen soll. 
Auch das optische Prüfsystem muss den Anforderungen erstmal gerecht werden, was laut Hersteller natürlich kein Problem wäre .


Das Band verfügt natürlich über eine Lichtschranke an der Rutsche bei der die Teile abgeschoben werden. In meinen ersten Versuchen habe ich fest gestellt, dass ich zwar keine n.i.O Teile abgeschoben habe, aber ich konnte einen gewissen Pseudoausschuss nicht vermeiden. Dieser lag aber bei mehr als 5% was nicht vertretbar ist. Ich hatte das Gefühl, dass die Steuerung es gar nicht mit bekommen hat, dass ein Teil getestet worden ist.


----------



## Heinileini (22 September 2017)

@Kirkdickdick
Wunderbar, jetzt kommen wir der Sache näher!
Aus den 50 Impulsen/U des Gebers habe ich 200 Flanken/U gemacht (VierfachAuswertung).
Aus Deinen Angaben hat mein Excel berechnet:


Rolle:90 U/min1,5 U/s110 mm/UBand:9896 mm/min165 mm/s18,2 s/3mGeber:0,55 mm/Flanke300 Flanken/s5457 Flanken/3m

Die Angaben /3m bedeuten pro Bandlänge von 3m.
Für die Auswertung der DrehGeberImpulse sollte man wohl eine Zählerkarte spendieren, da die Signale des Gebers öfter als 300 mal pro Sekunde abgefragt werden müssen.

Eine Unklarheit ist leider noch geblieben: was "sieht" die LichtSchranke "AbschubKontrolle"?
Sieht sie alle Teile, die sich der AbschubKontrolle nähern?
Sieht sie nur die abgeschobenen Teile?
Sieht sie nur die nicht abgeschobenen Teile?

Ein Rutschen des Bandes müssen wir wohl nicht befürchten, solange nicht Teile irgendwo anecken und so das Band ausbremsen können.
Aber eine Kontrolle sollten wir schon einplanen.
Das Band soll hoffentlich kontinuierlich laufen - oder ist etwa ein Stop-And-Go-Betrieb vorgesehen?

Gruss, Heinileini


----------



## Larry Laffer (22 September 2017)

@TE:
Du solltest für dein Vorhaben mal die Forensuche mit dem Suchbegriff "Streckensteuerung" bemühen ...

Gruß
Larry


----------



## weißnix_ (22 September 2017)

Heinileini schrieb:


> Für die Auswertung der DrehGeberImpulse sollte man wohl eine Zählerkarte spendieren, da die Signale des Gebers öfter als 300 mal pro Sekunde abgefragt werden müssen.



Die 1214C sollte doch integrierte HSC haben. Die sind doch für Incrementalgeber konfigurierbar.

Ich sehe, ich habe richtig verstanden: Das Projekt ist in Entwicklung.
Meine S7-300-Variante hab ich damals mit bis zu 60 Flaschen in der Minute betrieben. Dabei hatte ich an der Kamera eine Trigggerlichtschranke (nur Kamera alleine). Das Positionssignal habe ich dann aus der Fertigmeldung der Kamera getriggert. Ansonsten war nur eine Lichtschranke am Abschieber erforderlich, weil die Flaschen gerne mal durch Bandenkontakt etwas Schlupf zum Band hatten. Deshalb auch die Positionsauswertung mit "Fenster". Bei Dir wäre das möglicher Bandschlupf.
Die Lichtschranke am Auswerfer hat bei mir alle passierenden Teile gesehen und den Positionsvergleich mit dem FIFO getriggert.

Damals war noch ein PC-gestütztes Vision-System im Einsatz.
Heute setze ich für unsere wenigen noch vorhandenen Vision-Aufgaben die Kamera-Systeme von IPF ein. Für einfache geometrische Prüfungen mit Barcodeauswertung benötigen die idR unter 100ms vom Trigger bis zum Signal. Nur die Geometrieprüfungen dauern 2...5ms.


----------



## Kirkdickdick (23 September 2017)

Guten Morgen, 

Das Band soll im Durchlauf betrieben werden. Die Lichtschranke Abschubkontrolle sieht nur die vom Zylinder abgeschobenen Teile die von der Kamera als i.O. erkannt worden sind. Bei meinen ersten versuchen habe ich fest gestellt, dass ich das Band im vollen Lauf mit einem Beherzten Griff anhalten kann (bin nicht Hulk aber dafür hat es gereicht ). 

Das mit der Zählerkarte habe ich mir fast gedacht. Eine solche Karte habe ich auch ersten Versuch bei mit der VIPA CPU benötigt. Mir fehlt noch etwas der Überblick über die Siemens Produktfamilie und eine schnelle Antwort vom Support ist ja auch immer ein frommer Wunsch, wobei Sie zumindest immer zurück rufen.  Nun gut, ich wäre für eine Artikelnummer oder einen Artikelnamen sehr dankbar.


----------



## Heinileini (23 September 2017)

Moin Kirkdickdick!
Da habe ich es doch richtig geahnt, dass Deine Lichtschranke AbschubKontrolle nur die abgeschobenen Teile sieht.
Genau anders herum hatte ich aber verstanden, welche Teile abgeschoben werden - also die OK-Teile sind es. LS3 sieht dann nur die nicht abgeschobenen(?).
Bezüglich der nötigen Hardware äussere ich mich lieber nicht mehr - bin zu lange nicht mehr auf dem Laufenden, wie man aus weißnix "ihm sein" Protest ersehen kann.
Bezüglich ZählerÜberlauf denke ich momentan, dass wir nicht drum herum kommen werden, ihn in der Software zu behandeln - ist aber auch kein grosses Problem.
Ich habe nämlich nicht verstanden, wie weißnix' Tipp aus #7 funktioniert ... aber es geht zur Not auch ohne.
Konntest Du mit LaLas Tipp aus #11 (Suche im Forum nach Streckensteuerung) etwas anfangen? Mir hat es nur zu der Erkenntnis verholfen, dass S5 nix is.'
Häwenaissuiikend. Gruss, Heinileini


----------



## StructuredTrash (23 September 2017)

Der Überlauf ist deshalb kein Problem, weil der Istwertzähler ihn mitmacht. Angenommen Startposition = 65000, Distanz = 1000. Macht als Ziel 66000, was ein 16-Bit-UINT nicht darstellen kann, Ergebnis der Addition ist deshalb 66000 - 65536 = 464. Der Istwertzähler zählt jetzt munter weiter und erreicht bei 65535 +1 auch den Überlauf, fängt also wieder bei 0 an zu zählen. Wenn er bei 464 ankommt, hat das Band genau 1000 Encoderschritte zurückgelegt. Wichtig ist halt nur, dass Zähler- und Positionsvariablen den gleichen Datentyp haben.


----------



## Kirkdickdick (23 September 2017)

Hallo nochmal 

Also die Beschreibung wie weißnix #7 es umgesetzt hat entspricht dem was ich im ersten Versuch gemacht habe. Habe auch mit einem 32 Bit Wert gearbeitet der nur positiv in eine Richtung gezählt wurde. 
Allerdings habe ich nur die verfügbaren Funktionen benutzt die von Hause aus in der Step 7 Welt verfügbar sind ist dementsprechend relativ unübersichtlich und kompliziert geworden. Hab mir keine eigenen Bausteine Programmiert. Bevor ich aber weiter hier unnötig lange meinen ersten Versuch beschreibe, habe ich einfach mal mein altes Programm angefügt. 
Werde ja ohnehin ein neues schreiben müssen, da ich im TIA mit der 1200er arbeiten möchte. 

Nochmal zur Funktion im ersten Versuch : 

Lichtschranke Nr 1: ist am Bandanfang installiert, und erfasst die aufgelegten Teile. 

Lichtschranke Nr2 : ist kurz vor der Kamera installiert um den Trigger auszulösen (Offsetwert zur Kamera Position).

Lichtschranke Nr3 : Ist auf der Rutsche installiert, und erfasst alle i.O. Teile die aktiv vom Zylinder nach Erkennung durch die Kamera abgeschoben wurden.

Lichtschranke Nr4 : ist am Ende des Bandes installiert und erfasst die nicht abgeschobenen Teile die von der Kamera als n.i.O. erkannt wurden. ACHTUNG hier kam es häufig zu Pseudoausschuss, immer noch besser als n.i.O. Teile auf der Rutsche für die i.O. Teile aber ich habe den Fehler nicht gefunden.

Ich bin allerdings immer noch etwas irritiert, was die Verarbeitung des Geber Signals mit der 1200er angeht. Kann die 1200er die Zählwerte nun verarbeiten oder brauche ich noch extra Hardware ?


----------



## Heinileini (24 September 2017)

@StructeredTrash


StructuredTrash schrieb:


> Der Überlauf ist deshalb kein Problem, weil der Istwertzähler ihn mitmacht.


Ach, sooo war das gemeint ...

@Kirkdickdick
Meine gestrige Antwort scheint im Nirvana gelandet zu sein - finde sie hier nicht mehr ...
Das hatte ich also richtig geahnt: die LS3 sieht nur die "abgeschobenen" Teile.
Dass allerdings die OK-Teile vom Band geschubst werden, hatte ich (und vermutlich auch andere) genau anders herum verstanden.
Deine Irritation wegen des GeberAnschlusses kann ich gut verstehen. Dazu äussere ich mich nicht mehr, weil ich keine Ahnung von Deinem Exemplar von Steuerung habe.
Dass sie bereits standardmässig geeignete Eingänge/Zähler haben soll, so dass keine ExtraKarte erforderlich ist, war mir nicht bekannt. 
Habe mal was in Excel simuliert, weiss aber nicht, ob bzw. wie ich es Dir via SPS-Forum schicken könnte. Meine Datei "AmLaufendenBand.xlsm" in "AmLaufendenBand.xlsm.jpg" umzubenamsen und sie hier als PseudoBild hochzuladen, dürfte wohl nicht funktionieren? Ich versuche es einfach mal ... geht nicht ... der BetrugsVersuch wird leider erkannt.
Als "TrostPreis" anbei ein ScreenShot.


Schönes RestWochenende! Gruss, Heinileini


----------

