Verzögerung berechnen in Abhängigkeit einer Drehzahl

WL7001

Level-2
Beiträge
182
Reaktionspunkte
17
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Forumler,

ich brüte hier gerade etwas einfallslos vor mich hin und komm nicht so richtig weiter. Wir bauen gerade einen Prototyp eines Trommeltrockners auf und ich muss mich mit der etwas verkorksten Mechanik dieses Teils herumschlagen.

Komponenten :
- Es gibt eine Drehachse, deren Drehzahl-Istwert ich als Wert von 0-100% habe.
- Auf der langsam rotierenden Drehachse sitzt eine Fahne mit entsprechendem INI.
- Es gibt ein pneumatisches Hubwerk, das einen Klappenmechanismus auslöst.
- Es gibt ein TP177B (mit WinFlex) auf dem ich ein Feld habe, in dem ich die gewünschte Verzögerung eingeben könnte. Ich kann aber auch Gott-weiss-was-für-Felder dazutippern.

Der gewünschte Ablauf :
- Sobald der INI den Geber erkennt, soll in Abhängigkeit von der Drehzahl und auf Basis der gewünschten Verzögeung der Klappenmechanismus an einer ganz bestimmten Position der Drehachse seine Arbeit verrichten.

Problem:
Da der Motor ja mal schnell und mal langsam laufen kann ( ist vom Bediener am TP einzustellen ) kann ich ja keine feste Verzögerung zwischen INI-Signal und Start-Klappenmechanismus vorgeben. Dann würde dieser ja mal zu früh und mal zu spät eingreifen (und sich zerstören ).

Das alles spielt sich in einem Zeitfenster von geschätzten 0,1s Verzögerung bei 100% (= MaxDrehzahl) bis ca. 5s Verzögerung bei 10% (= MinDrehzahl)

Jetzt dachte ich daran, mit dem 0,1s Takt der CPU ein DBWort hochzuzählen und dieses mit der Drehzahl ( 10-100% ) zu verrechnen um daraus ein Startsignal für den Klappenmechanismus abzuleiten.

Mit INI-Erkennung also Start Zählen DBW, da steht dann also eine Zahl von z.B. 1(*0,1s) bis 50(*0,1s) drin.

Fragen :
Die 1 hätte ich gerne für die kürzest mögliche Auslöseverzögerung (0,1s) bei 100% Drehzahl und die 50 für die längste mögliche Auslöseverzögerung (5s) bei 10% Drehzahl. Ich komm jetzt einfach nicht drauf, wie ich das mit der Drehzahlinfo verarzten muss und vor allem, wie ich dann mit der Info den Auslösemechanismus starte.

Kann mir mal bitte jemand eine Anregung geben? Das würde mir sehr helfen.
Danke im voraus.

Gruß Wilhelm
 
Morgen,
mir fehlen noch ein paar Infos.
Der Drehzahl-Istwert kommt nicht von einem Tacho? Ist da ein Stellgetriebe oder was?
Wenn Stellgetriebe, dann würde ich von Steuerung über Zeit abraten, wenn mal irgendwas klemmt geht der Schuss nach hinten los.
Gibt es keine Möglichkeit das ganze über Hardware zu positionieren?

Zu deiner Frage: Du must die Drehzahlabhängigkeit in einer math. Funktion bestimmen und diesen Wert in einen Timer laden.
Die math Funktion zu erstellen hab ich Sontag morgens keinen Bock, vielleicht hat noch irgend ein Studentenkopp dazu Lust?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Wilhelm,

..Dann würde dieser ja mal zu früh und mal zu spät eingreifen (und sich zerstören )...
Eine sehr gewagte Sache. Kann man denn nicht wenigstens an Ort und Stelle einen Sensor anbringen, s.d. du auf die Verzögerung verzichten kannst? Wie hoch ist der Schaden im Falle eines Crashs? Eine mechanische Verriegelung ist nicht möglich?

..Fragen :
Die 1 hätte ich gerne für die kürzest mögliche Auslöseverzögerung (0,1s) bei 100% Drehzahl und die 50 für die längste mögliche Auslöseverzögerung (5s) bei 10% Drehzahl. Ich komm jetzt einfach nicht drauf, wie ich das mit der Drehzahlinfo verarzten muss...
Das kann man mittels Dreisatz ganz einfach berechnen. Eingangsbereich 10..100% und Ausgangsbereich 100..5000ms. Suche nach "Dreisatz"!


Gruß, Onkel
 
Ich sehe das gehauso wie der Onkel, positionieren über Zeit war noch nie eine zuverlässige Sache. Über Jahre hinweg ändern sich die mechanischen Toleranzen und dann ist die Kacke am dampfen.

Die math. Funktion "Dreisatz" ist mir heute morgen nicht eingefallen.:)
 
Hallo,
in Anlehnung an die Beiträge von Gecht und Onkel Dagobert ...

Wenn der Trommeltrockner ein Prototyp sein soll, dann assoziert das bei mir "Weiterentwicklung" oder "etwas Neues versuchen". Der Rest deines Beitrags stimmt damit aber nicht überein.
Wäre nicht ein Absolutwert-Geber eine Alternative für deine Klappensteuerung ? So lange sich die Trommel in einem bestimmten Pos.-Fenster befindet kann sie auf sein - sonst nicht. Damit verhinderst ggf. das "zerstört sich selbst".

Ansonsten - andere Möglichkeit : Kannst du die Trommel nicht auf eine festgelegte Geschwindigkeit herunterbremsen und dann mit konstanten Größen die Klappe steuern ?
Da ich glaube zu wissen, wie dein Trommeltrockner aussieht ist dieser Vorschlag aber eher relativistisch zu betrachten, da du zum Abbremsen sehr warscheinlich viel Zeit brauchst, da das Ding etliche Tonnen wiegt und nicht mal eben halten will.

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nochmal, diesmal aber genauer.

Hallo,
in Anlehnung an die Beiträge von Gecht und Onkel Dagobert ...

Wenn der Trommeltrockner ein Prototyp sein soll, dann assoziert das bei mir "Weiterentwicklung" oder "etwas Neues versuchen". Der Rest deines Beitrags stimmt damit aber nicht überein.
Wäre nicht ein Absolutwert-Geber eine Alternative für deine Klappensteuerung ? So lange sich die Trommel in einem bestimmten Pos.-Fenster befindet kann sie auf sein - sonst nicht. Damit verhinderst ggf. das "zerstört sich selbst".

Ansonsten - andere Möglichkeit : Kannst du die Trommel nicht auf eine festgelegte Geschwindigkeit herunterbremsen und dann mit konstanten Größen die Klappe steuern ?
Da ich glaube zu wissen, wie dein Trommeltrockner aussieht ist dieser Vorschlag aber eher relativistisch zu betrachten, da du zum Abbremsen sehr warscheinlich viel Zeit brauchst, da das Ding etliche Tonnen wiegt und nicht mal eben halten will.

Gruß
LL


Hallo LL,

etwas neues versuchen trifft es ganz gut. Ich sollte vielleicht noch mal genauer schildern, was eigentlich genau passiert und warum ( meiner Meinung nach ) es nur mit einer Verzögerung zu machen ist, damit deine Zweifel vom Rest der Schilderung ausgeräumt sind.

Es gibt 4 Ebenen in einer senkrechten Trommel. Diese Trommel dreht sich recht langsam, jedoch variabel vom Bediener einzustellen. Das hängt von der gewünschten Verweilzeit des zu trocknenden Gutes ab bzw. dem daraus resultierenden Trocknungsgrad. Jede Ebene besteht aus 8 "Teilen" welche jeweils an einem definierten Punkt von einem Hebemechanismus um 90° gedreht werden, damit das darauf befindliche Material eine Etage tiefer fällt. Dazu setzt ein Hebel an, der über ein 5/3-Wegeventil kurz rauf und runter gefahren wird.

Es gibt pro Etage an einem ( noch zu definierenden Punkt ) einen Sensor, der erkennt, wann das Fähnchen eines der 8 "Teile" ankommt und ein Stück weiter greift dann der Hebemechanismus in dieses "Teil" ein um es zu drehen.

Den Drehzahl-Istwert bekomme ich vom FU ( SEW ) des Getriebemotors als 0-10V über einen analogen Eingang. Absolutwert habe ich leider keinen, das wäre noch das einfachste, da gebe ich dir Recht.

Mehr als Drehzahlistwert und Sensorsignal habe ich also nicht.

Da ja der Mechanismus bei langsamer Fahrt später eingreifen muss ( um den definierten Hebepunkt des ankommenden "Teils" genau zu treffen ) als bei schneller Fahrt, muss ich eben verzögern in Abhängigkeit der Drehzahl.

Das geschieht also auf jeder Ebene 8 mal. Da ich ja 4 Ebenen habe ( natürlich setzt der Hebemechanismus auf jeder Etage woanders an, sonst würde das Material ja direkt von oben nach unten durchfallen ) müsste ich die Trommel pro Umdrehung also 32 mal auf eine definierte Geschwindigkeit abbremsen. Unmöglich.

Konstruktionsbedingt kann ich den Sensor leider nicht da anbringen wo er sofort den Hebemechanismus auslösen würde, dann hätte ich ( zumindest ) dieses Problem nicht.

Also nix Dreisatz sondern nach Funktion : 100-% *0,5 +1
// Probe 100% Speed = 1, so gut wie keine Verzögerung
// Probe 50% Speed = 26, mittlere Verzögerung
// Probe 10% Speed = 46, größte Verzögerung

So komme ich auf 4,6s Verzögerung für Vmin und 0,1s Verzögerung für Vmax. Den Wert wollte ich dann an einen Timer übergeben und entsprechend auslösen.

Für jede andere Idee oder Denkansatz wäre ich dankbar.

Sorry, aber ich habe diesen Mist nicht konstruiert, ich hätte auch lieber eine mechanische Zwangsdrehung gesehen, aber so ist es nun mal vom Kunden gewünscht und konstruiert. Das hat der Kunde wohl irgendwo so ähnlich scheinbar mal gesehen und will es jetzt auch so bauen.

Gruß Wilhelm
 
Hallo Wilhelm,
aufgrund deiner Beschreibung kann ich mir jetzt so in etwa vorstellen wie das Ding aussieht und funktionieren soll.

Deine Zeiten-Analyse ist nach meiner Ansicht OK.
Es muss in der Konsequenz ja etwas proportionales wie "y = m * x + b" herauskommen. "b" wäre in diesem Fall die Reaktionszeit deines Mechanismusses (also die 1 Sek., die du immer hast). "m * x" wäre der Speed-Einfluss der einer Trommel. Dies würde so passen, wenn alle Ebenen deiner Trommel die gleiche Geschwindigkeit haben.

Falls sich die Ebenen aber unterschiedlich schnell bewegen (können) dann musst du die in der Ebene daraunter liegende Trommel mit berücksichtigen. In diesem Fall müsstes du den Geschwindigkeits-Unterschied der Ebenen für deine Zeit-Berechnung heranziehen. Aber ich denke, dass ist nicht der Fall ... oder ?

Wo steckt denn jetzt die Kollisions-Gefahr ?

Unabhängig von deinem eigenen Ansatz könntest du dir dein Positions-Fenster auch noch mit Impulsen erzeugen, die von einem Geber an der Trommel ausgehen. Das würde die Anlegenheit dann doch noch etwas genauer gestalten. So richtig wohl ist mir bei deiner Timer-Geschichte nicht ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Wilhelm,
aufgrund deiner Beschreibung kann ich mir jetzt so in etwa vorstellen wie das Ding aussieht und funktionieren soll.

Deine Zeiten-Analyse ist nach meiner Ansicht OK.
Es muss in der Konsequenz ja etwas proportionales wie "y = m * x + b" herauskommen. "b" wäre in diesem Fall die Reaktionszeit deines Mechanismusses (also die 1 Sek., die du immer hast). "m * x" wäre der Speed-Einfluss der einer Trommel. Dies würde so passen, wenn alle Ebenen deiner Trommel die gleiche Geschwindigkeit haben.

Falls sich die Ebenen aber unterschiedlich schnell bewegen (können) dann musst du die in der Ebene daraunter liegende Trommel mit berücksichtigen. In diesem Fall müsstes du den Geschwindigkeits-Unterschied der Ebenen für deine Zeit-Berechnung heranziehen. Aber ich denke, dass ist nicht der Fall ... oder ?

Wo steckt denn jetzt die Kollisions-Gefahr ?

Unabhängig von deinem eigenen Ansatz könntest du dir dein Positions-Fenster auch noch mit Impulsen erzeugen, die von einem Geber an der Trommel ausgehen. Das würde die Anlegenheit dann doch noch etwas genauer gestalten. So richtig wohl ist mir bei deiner Timer-Geschichte nicht ...

Gruß
LL

Hi LL,

es ist schon so wie du annimmst, alle Ebenen laufen gleich schnell, da sie alle mit der Drehachse des einen Motors mechanisch fest verknüpft sind.

Ich habe es jetzt erst mal so gelöst :

Formel : (100-Drehzahl %) *0,5 +1

// Probe 100% -> Speed = 1
// Probe 50% -> Speed = 26
// Probe 10% -> Speed = 46

-> Ergebnis mit 100 multiplizieren ( um später ms zu erhalten )
-> mit RND runden, als INTEGER abspeichern
-> in TIME umwandeln und abspeichern
-> mit dem FC TIM-S5TI in S5Time ( der ja nun zwischen 100ms und 4600ms liegt ) umwandeln
-> an den entsprechenden Timer übergeben

Zur Kollisionsgefahr:

Die mit dem Hubmechanismus jeweils zu drehenden 8 "Teile" haben am äußeren Rand eine Art Führungsnut, in dem die Heberolle des Hubmechanismus ständig läuft. Da ich das "Teil" erst um 90° und wieder zurück drehen kann, wenn die Hubrolle über dessen Mitte gelaufen ist ( sonst verbiegt die Hubkraft der Hubrolle dieses Teil insofern, das die Führungsnut verrutscht ) , habe ich ohnehin nicht viel Zeit, den Vorgang auszuführen. Kommt also die Hubrolle nicht wieder runter bevor das nächste Teil da ist, fährt die Hubrolle nicht wieder in die Nut des nächsten Teiles, sondern landet auf dem nächsten Teil und wird abgeschert.

Wie gesagt, ich finde diese Konstruktion auch Sheyze, aber ich muss erst mal damit leben. Falls es gar nicht hinhaut, muss eben entsprechend der dann gewonnenen Erkenntnisse umkonstruiert werden oder ich muss eben einen Absolutwertgeber nachrüsten lassen um die Treffgenauigkeit zu erhöhen.

Mal sehen was die Tests so ergeben. Danke auf jeden Fall für die Anteilnahme an meinem Problem. Ich werde berichten, wie die Testinbetriebnahme verlief. Wird aber noch dauern, da die Schlosser noch ein wenig arbeiten müssen, bevor ich loslegen kann. Ausnahmsweise bin ich mal nicht letzter :ROFLMAO:

Gruß Wilhelm
 
..Also nix Dreisatz sondern nach Funktion : 100-% *0,5 +1..
Das geht natürlich auch. Es ist ja auch so etwas wie eine vereinfachte Version des Dreisatzes. Den Anstieg hast du durch die Konstante "0,5" ersetzt. Einfacher in der Berechnung, jedoch etwas unpraktisch bei der Inbetriebnahme.

Code:
    (y_BIS - y_VON) * (X_IN - x_VON)
Y = --------------------------------  + y_VON
            (x_BIS - x_VON)
Hier könntest du den Zeitbereich y in ms eingeben und bei der IBN direkt ändern.


Gruß, Onkel
 
Zuletzt bearbeitet:
Zurück
Oben