# Exakte Längenzählung



## Outrider (17 Dezember 2004)

Hallo Programmierfreunde!
Ich stehe vor einem Gewaltigen Problem!!
Wir wollen Materialien auf unterschiedliche Längen schneiden und wickeln,  bei unterschiedlichen Arbeitsgeschwindigkeiten.
Das Ziel ist  es , dass der Maschienenbediener eine Endlänge im OP eingibt, auf die die Maschiene anhalten soll. Das Ganze soll variabel gestaltet werden , d.h. auch bei unterschiedlichen Geschwindigkeiten.
Es muß also ein Punkt berechnet werden bei dem die Maschiene mit einer bestimmten Rampe anfängt runter zu fahren .Dieser Punkt ist also auch von der Geschwindigkeit abhängig. Einen Steigerung wäre wenn man auch die Rampe variabel machen würde.
Das Ganze soll in S7 realisiert werden. Als Cpu habe ich eine 315-DP
Als Zähler würde ich ein Impulsgeber nehmen der pro mm einen Impuls gibt.

Vielleicht gibt es von Siemens Standardbausteine für solche Probleme.

Danke für die Unterstützung!!!!!!!!!!!!!!!!!!!!!


----------



## Jochen Kühner (17 Dezember 2004)

*geschwindigkeit...*

die geschwindigkeit kannst du ja ganz einfach ermitteln, wenn du zwischen jedem impuls die zeit misst (timer) und dann hast du ja die geschwindigkeit  pro milimeter.

aber erkärs nochmals genauer. was soll genau passieren. die exate länge hast du ja wenn du einfach die impulse zählst und addierst. wozu brauchst du da noch die geschwindigkeit...??


----------



## Zottel (17 Dezember 2004)

Bei vielen Vorgängen kannst du davon ausgehen, daß die Bremsrampe so lange dauert wie die Beschleunigungsrampe. In diesem Fall zählst du während des Beschleunigungsvorgangs die Länge Lstart mit. 
Dann ziehst du Lbrems=Lstart von der vorgewählten Länge ab. Bei Erreichen dieses Wertes leitest du den Bremsvorgang ein.
Möglicherweise baust du noch eine Sicherheit ein, indem du Lbrems=k*Lstart wählst, mit k>1. Dann muß die Maschine das letzte Stück in einer Art Kriechgang zurücklegen, bis die genaue Länge erreicht ist.
Wenn der Ablängvorgang eine Rückwärtsbewegung zuläßt, kannst du auch im Kriechgang zurückfahren. 
Gedanken zu 1 Impuls / Milimeter:
Ich würde keinen Aufwand treiben, so einen Faktor durch Getriebe etc. zu erreichen. Die S7 kann ja Fließkomma... Je höhere Auflösung desto besser, wenn die SPS die Frequenz kann. Um zahlreiche Umrechnungen mit dem Faktor Impuilse/mm zu vermeiden, kannst du einmalig die Längenvorgabe in Impulse umrechnen und alle anderen Berechnungen mit Impulsen durchführen.


----------



## Markus (17 Dezember 2004)

ich gehe mal davon aus das der bandantrieb über einen frequenzumrichter angesteuert wird.

in diesem fall würder ich den inkremetalgeber direkt auf den umrichter geben, und ihm die regelung überlassen. das können die besser als du mit der sps...

dem umrichter werden nur noch sollwerte per profibus übergeben.


----------



## manfredo (18 Dezember 2004)

Markus schrieb:
			
		

> ich gehe mal davon aus das der bandantrieb über einen frequenzumrichter angesteuert wird.
> 
> in diesem fall würder ich den inkremetalgeber direkt auf den umrichter geben, und ihm die regelung überlassen. das können die besser als du mit der sps...
> 
> dem umrichter werden nur noch sollwerte per profibus übergeben.



Hallo
Habe ich genau so gemacht. Habe einen Umrichter von KEB und einen normalen Drehstrommotor mit Geber. Um ein besseres Regelverhalten zu erreichen, habe ich ein Getriebemotor genommen.
MfG
Manfred


----------



## Anonymous (27 Dezember 2004)

also ich würde einen schrittmotor und eine fm  nehem dann kannste alles so einstellen wie du willst


----------



## Anonymous (24 Januar 2005)

Hallo,

die Idee mit dem Inkrementalgeber ist eigentlich die beste,
es gibt eigentlich zwei Varianten einmal mit einem Winkelkodierer (hinten am Motor) oder ein Stahlwegmesssystem.
Nur direkt auf den FU würde ich ihn nicht wirken lassen, Du möchtest ja
über ein OP den Weg und die Geschwindigkeit beeinflussen können.
Bei einem Inkrementalgeber (Class 2) kannst Du sogar immer ein Referenzwert setzen also wen deine Maschine in Grundstellung steht kannst du ihm sagen hier ist 0.
Einen bestens dafür geeigneten Funktionsbaustein gibt es auch,
über die Eingangsparameter: Sollposition, Istposition, Sollposition-schnell,langsam, Toleranz, und Go kannst du ihm über ein DB und OP
alles an Werten übergeben.
Als Ausgengsparameter gibt es: Start, Speed, Position erreicht, und Fehler.
Natürlich brauchst du noch ein FC-Baustein der das Steuerword zum FU sendet wie zb.rechts, links, speed usw.


----------



## Markus (25 Januar 2005)

wenn der geber direkt am fu ist kann die sps auch alle parameter lesen und schreiben. den fb in der sps kann man sparen, und spart zykluszeit und speicher...

wenn der fu die signale vom geber unverzögert bekommt, kann der schneller und sauberer regeln als jeder softwareregler in der sps...

warum den besseren regler im fu ungenutzt lassen wenn eine regelung mit der sps die schlechter wäre nur unnötig resourcen kostet?


----------



## Zottel (25 Januar 2005)

Ich realisiere Regler aus folgenden Gründen oft lieber in der SPS:
1. Es ist flexibler. In diesem Beispiel könnte es für kleine Längen sinnvoll sein, mit niedriger Geschwindigkeit den Weg zu fahren, während für große Längen zunächst eine möglichst große Geschwindigkeit angestrebt und dann in Kauf genommen wird, eine Überschußlänge rückwärts zu fahren, falls die Anlage das zuläßt. Auch verschiedene Höchstgeschwindigkeiten oder -Beschleunigungen für verschiedene Randbedingungen sind so leichter realisierbar.
2. Ist der FU leichter zu ersetzen, sowohl durch Geräte anderer Hersteller als auch, daß er von weniger qualifiziertem Personal ohne Parametrierung  eingebaut werden kann.
3. Ist keine Einarbeitung in die vom FU-Hersteller vorgegebene Software nötig.


----------

