TIA Positionieren mit TM count Inkremente berechnen

Frozen19

Level-2
Beiträge
66
Reaktionspunkte
0
Hallo,

Ich möchte auf einem Förderband ein Brot auf eine Sollposition Positionieren.
Eckdaten:
SPS: 1515F
Programmierung im TIA V18
Der Inkremental Encoder ist am Motor
Die Position soll mit dem TM count erfasst werden hierzu wurde als Signalart Impuls A und als Messwert Periodendauer gewählt (siehe Bilder)
Zum Einsatz Kommt der Baustein bzw. das Technologie objekt von Siemens "High_Speed_counter". Die ausgabe schnittstelle "CountValue" liefert hierbei den aktuellen Zählwert.

Ich habe folgende frage ob die berechnung stimmt bzw. die Vorgehensweise (siehe Bild Excel berechnung).
1. Ich errechne mir 1 Inkrement ergibt sich aus-->Der Sollposition/ Umfang Förderband
2. Wieviel Inkremente notwendig sind um auf die Sollposition zu Positionieren Sprich was der TM count zählen muss
das ergibt sich aus-->(((Umfang/4)+Sollpos)*i)* 1 Inkrement

Da der Inkremental Geber am Motor sitz und das Rad am Motor doppelt so groß ist als das am Förderband was Über den Riemen angetrieben wird ist
ja 1 Umdrehung am motor der doppelte weg am Förderband.

Vielen Dank für jede Unterstützung!

Gruß
Frozen
 

Anhänge

  • excel_sheet_bsp.png
    excel_sheet_bsp.png
    243,4 KB · Aufrufe: 45
  • High_speed_counter_baustein.png
    High_speed_counter_baustein.png
    86,3 KB · Aufrufe: 44
  • tm_count_einstellung_messwert.png
    tm_count_einstellung_messwert.png
    94,4 KB · Aufrufe: 35
  • tm_count_erweiterte_einstellung.png
    tm_count_erweiterte_einstellung.png
    121,4 KB · Aufrufe: 43
Grundsätzlich warum hast du diese Art der Zählung gewählt,
ich würde beide Kanäle A & B mit Vierflanken Auswertung nutzen,
um eine hohe Genauigkeit zu bekommen.
Das Ergebnis aus dem TO kannst du dann mit Ganzzahlen
Arithmetik über ein Zähler/Nenner-Verhältnis in der Steuerung ausrechnen.
 
Nachtrag wie setzt du den Zähler auf Null?
Über das SPS-Programm oder direkt über
den Lichttaster an der Hardware.
Über das SPS Programm kann evtl. zu ungenau
werden, wenn du es nicht in einen Alarm-OB machst.
 
Irgendwie fehlt in deiner Rechnung oder Aufgabenstellung, wie viele Inkremente pro Umdrehung dein Geber hat.
Und dann spielt natürlich die Auswertung noch mit rein (wie @rostiger Nagel schon erwähnt hat)

Noch eine Frage: Was machst du wenn die Position (Inkremente) erreicht ist.
Stoppst du dann den Motor? Dann bist du ja über das Ziel hinaus geschossen.
Du musst (vereinfacht gesagt) dir den Zeitpunkt ausrechnen ab dem du herunter Rampen (mit der gewünschten Verzögerung Rampe) musst, um deine Zielposition, beim Stillstand des Motors, zu treffen.
 
Hallo,

Danke für eure antworten.

Zunächstmal die Zählung mit Kanal A bzw. Einstellung habe ich aus ein vorlage Projekt das sehr alt ist (10 Jahre)
Das mit den vier flanken auswertung werd ich so einstellen in den erweiterten Parametern des TO (siehe Bild anahng)
nun frage dazu rechnet bzw. zählt der Siemens TO Baustein das dann und liefert den wert an der Ausgangsschnittstelen des Bausteints "CountValue"? oder muss hier was Programiert werden.

Zähler Zurücksetzen
Der Zähler wird jedes mal bevor Positioniert wird auf null gesetzt über die TO Schnittstelle SetCountValue am Siemens Baustein. Nach dem Nullsetzen wird das SW-Gate am Baustein geschalten das der counter aktiv ist. Sobald das Brot welches über ein andres Band auf dieses Positionierband zugeführt wird und die Lichtschranke betätigt, Schalte ich dieses Band ein und der Zähler soll Zählen. Mit eine Vergleicher wird Der istwert des TM counts mit den errrechneten Sollwert verglichen ist der gleich wird das Band gestoppt und es beginnt wieder von vorne-->Null setzen, positionieren bis 8 Brote auf den Band sind. Ein aufruf in einen Alarm-OB wäre kein Problem. Grundsätzlich sind die eingeänge auf die man ja den Sensor verdrahten könnte Schnelle Eingänge?

Als geber wird der SIKO-ih5815 mit 500 Impulsen verwendet. Das bedeutet eine Umdrehung am geber sind 500 Inkremente?
Wie sollen die Geber inkremente in der berechnung einfließen?

Rampen
Soweit ich weiß gibt es in TIA Portal Rampen Bausteine jedoch ist mir nicht klar wie ich den Zeitpunkt errechnen soll wenn das Förderband mit eine max Geschwindigkeit von 600mm/s sich bewegt.
 

Anhänge

Du hast oben nicht die Inkremente ausgerechnet sondern wie weit du bei einer Umdrehung fährst, oder?

Wenn du jetzt einen induktiven Sensor nimmst, der nur 1Impuls/U ausgibt, wird das so funktionieren. Du hast aber einen Drehgeber mit 500Inkrementen, dieser gibt 500 Impulse/U ab. Wenn du eine 4fach Auswertung einstellst wird die steigende und fallende Flanke von Spur A und B gezählt (deswegen 4fach Auswertung). Somit hast du die 4fache Anzahl an Impulsen. Du kommst somit auf 4x500=2000 Impulse/U.

PS: Ich mache solche Berechnungen häufig in der SPS mit Variablen, damit man das Verhältnis,... ohne Programmiersoftware anpassen kann.

MfG
Hannes
 
Mit welcher Geschwindigkeit fährst du in die Lichtschranke?
Grundsätzlich würde ich den Zähler garnicht auf Null setzen,
sondern einfach immer in die Runde zählen lassen.
Zur Erfassung des Brotes würde ich den Eingang vom Lichtaster
als Alarmeingang parametrieren, dieser ruft dann einen Alarm OB
zb OB40 auf, in diesen speicherst du die aktuelle Poition des Brotes
auf dem Band weg. Arbeiten kannst du dann mit dem Wert im zyklischen
Programm.

Vorteil bei der Sache du könntest mehr als ein Brot gleichzeitig auf dem
Band lassen, zwecks Produktionssteigerung.
 
Also. Pro Umdrehung von D2 läuft dein Band d*pi=63,66*3,14=199,99mm
Pro Motorumdrehung läuft dein Band 199,99/0,5=399,99mm
Pro Motorumdrehung gibt dein Inkrementalgeber 5000 (nicht 500) Impulse zurück.
Bei 4 fach Auswertung: 4*5000=20000.
D.h. Pro Zählwert fährt dein Band 399,99/20000=0,01999937883275262375605318777796mm
Eine Sollposition von 325mm entspricht dann einem Zählwert von 16250,5

Zum Thema Rampen:
Hast du einen FU am Motor?
 
Hallo,

vielen Dank für eure hilfe

@021aet04: Ich habe den quellcode nochmal geprüft (siehe Bild anhang, NW3 codzeile 26) hier wurde mit den geber Inkremment gerechnet. Ich habe das Korrigierte excel sheet als bild angehängt mit einbezug der Inkremente von Geber bei 1 Umdrehung.

die Rechnung sollte sein: ((Umfang/Sollposition)*Geber Inkremente)*Übersetzung--->wenn ich jetz den Umfang als Sollposition vorgeben dann Kommt gerundet 250 raus das Entspricht die Hälfte der Inkremente meines Gebers.

Die berechnung wird im OB30 mit 5ms aufgerufen denn Technologie Objekt Baustein von Siemens wurde im OB1 aufgerufen.

@rostiger Nagel: Die Liniengeschwindigkeit ist 600mm/s also die Beiden förderbänder vor meinen TM count Band laufen permanent es kommen versetz Brote daher die in einer 8er reihe gepuffert werden sollen. Dieses Pufferband mit dem TM count ist ein V-Band was aufgeklappt wird wenn 8 Stück Brote drauf sind. Und diese Brote fallen nach unten in Körbe-->Körbe takten weiter leere Körbe kommen nach und es beginnt alles wieder von vorne.

@Tschoke: Danke für deine Rechnung. Bist Du mit den Impulsen sicher den im datenblatt steht ganz oben bis zu 5000 Impulse
1721034156699.png
und etwas weiter unten was mein Type Bestellschlüssel IH5815 - AB0 500 usw.
1721034261420.png

Und Ja ich habe eine FU das hätt ich vieleicht anfangs mal bekannt geben sollen sry und zwar von SEW denn MOVITRAC advanced (MCX91A-0025-5E3-4-T00/001/CSO/CFN/CMM). Motor von SEW S47 DAS80N4/BR/TF/IS mit Bremse die allerdings öffnet/schließt mit der Steuerspannung. Das Positionier Förderband wird nur Kurz eingeschalten zum Positionieren wenn das Brot die Lichtschranke vor diesem Band betätig es erreicht nicht die volle geschwindigkeit da die Positionierwege sehr klein sind und 8 Brote darauf gepuffert werden sollen.
 

Anhänge

  • code_ges.png
    code_ges.png
    1,9 MB · Aufrufe: 13
  • Screenshot 2024-07-15 112522.png
    Screenshot 2024-07-15 112522.png
    258,5 KB · Aufrufe: 14
Zuletzt bearbeitet:
Deine 600mm/s entspricht etwa 0,6mm pro ms, wenn du jetzt eine Zykluszeit von 10ms
hast könnten da schon 6mm Spielraum sein, für eine genaue Kantenerfassung würde ich dann
einen Alarm-Eingang nutzen.

Die Auflösung des Gebers würde ich immer Faktor 10 zu der gewünschten Genauigkeit
wählen, bei mm dann 10 Inkremente/mm. Mit Vierflankenauswertung kannst du diese
dann erhöhen.

Die Skalierung der Achse mache ich immer wie gesagt immer über ein Zähler/Nenner
Verhältnis, um das einzustellen nehme ich dann einfach immer nur eine Maßband.
Ich mache eine Markierung auf das und am Band, setze den Zähler auf Null und fahre um den
größten möglichen Wert das Band vor und Messe wieviel das Band gefahren ist und
ändere das Zähler/Nenner Verhältnis so lange, bis ich den gemessen Wert in der Anzeige
habe.

Was für eine Berechnung machst du im OB30 und wozu?
 
@rostiger Nagel danke das im OB30 ist nicht meine Berechnung sonder von diesem code (quellcode welchen mir der Kunde zu verfügung gestellt hat) habe ich das rausgelesen wie das vor 10 Jahren an dieser so ähnlichen anlage gemacht wurde. Habe lediglich im NW3 Kommentar hinzugefügt um zu verstehn was ausgeführt wird. Und man erkennt im NW3 ab zeile 53 das hier einfach derzählwert mit sollwert verglichen wurde und ein Signal für in Position gesetzt wurde.

Wie lege ich den Alarm-Eingang an im TIA Portal? Meinst du damit eine Überwachung von Prodiag?

Bezuglich Auflösung Geber wie soll diese eingestellt werden? Ich habe einen 500impulse geber bei Vierflankenauswertung dann 2000impulse.
Wenn ich jetzt Rechne 1mm/342,433 Umfang Förderband=0,00292027 das mit 2000impulse u. Übersetzung multiplizieren kommt 2,92027419 Inkremente am Geber für 1mm raus.
 
@rostiger Nagel danke das im OB30 ist nicht meine Berechnung sonder von diesem code (quellcode welchen mir der Kunde zu verfügung gestellt hat) habe ich das rausgelesen wie das vor 10 Jahren an dieser so ähnlichen anlage gemacht wurde. Habe lediglich im NW3 Kommentar hinzugefügt um zu verstehn was ausgeführt wird. Und man erkennt im NW3 ab zeile 53 das hier einfach derzählwert mit sollwert verglichen wurde und ein Signal für in Position gesetzt wurde.
wahrscheinlich ist die Steuerung so klein oder seine Zykluszeit so lang, das
er mit OB30 die Postionsüberwachung macht. Dann bei der Geschwindigkeit,
und 5ms Aufrufzeit dann ist das eher ein schätzen, "Position erreicht"

Bezuglich Auflösung Geber wie soll diese eingestellt werden? Ich habe einen 500impulse geber bei Vierflankenauswertung dann 2000impulse.
Wenn ich jetzt Rechne 1mm/342,433 Umfang Förderband=0,00292027 das mit 2000impulse u. Übersetzung multiplizieren kommt 2,92027419 Inkremente am Geber für 1mm raus.
Nachrechnen tue ich jetzt nicht, wird wo gerade so Funktioneren, ist aber nicht seher günstig.
 
Zurück
Oben