Projektvorstellung Hebebühne bis 3.3 Tonnen

Hallo, mein Name ist Daniel, ich bin 45 Jahre alt und eher ein Mechaniker. Ich möchte heute mein Projekt mit euch teilen und benötige ein wenig Erfahrung in der Materie.

Ich habe eine 4 Säulen Hebebühne gebaut. Diese wird mit 4 Zylindern Hydraulisch angetrieben. Mechanisch wurde diese bereits mit über drei Tonnen Zuladung getestet, bis dahin alles gut.

Die Synchronisierung sollte ein Zahnradmengenteiler übernehmen. Dieser funktioniert auch bei Leerfahrt fast ohne Eingreifen aber bei einseitiger Belastung wird das Öl durch die Schmierkanäle im Mengenteiler gedrückt und die Bühne zieht schief bis mechanisch ende ist.

Ich habe deshalb vier Kugelhähne zum Absperren des Öls eingebaut und diese mit Servoantrieben so umgebaut das man jetzt mit z.B. der Servo.h alle steuern oder regeln kann. Auch ein Analoges Signal ist machbar.

Für die aktuelle Positionsbestimmung würde ich gerne einen Seilzug-Encoder verwenden. Ich habe erst über ToF nachgedacht, das ist mir aber nicht robust genug. Ein Induktiver Sensor ist nur mit Kabelschlepp etc. zu machen und aus Platzgründen auch sehr problematisch, eher unmöglich.

Beim genannten Seilzugencoder habe ich aber die Möglichkeit unterschiedliche Encoder zu verwenden, also Digital 5V NPN, PNP, Bus etc.

Aufsetzen würde ich das ganze auf einem Arduino Mega, den habe ich hier rum liegen. Das Zählen der Impulse müsste bestimmt per Interrupt erfolgen damit nix verloren geht, aus dem Vergleich würde ich dann den voreilenden Zylinder einbremsen wollen.

Frage: Habe ich hier schon einen grundlegenden Denkfehler oder sollte ich mal einen Encoder Bestellen und erste Testfahrten machen?

Hier mal ein beispielhafter Link eines möglichen:

Den hier finde ich auch Interessant weil der ja so halb einen Absoluten Wert geben könnte ?!?
https://de.aliexpress.com/item/1005006438714231.html?spm=a2g0o.detail.pcDetailBottomMoreOtherSeller.19.54a33247Nl3zjI&gps-id=pcDetailBottomMoreOtherSeller&scm=1007.40050.354490.0&scm_id=1007.40050.354490.0&scm-url=1007.40050.354490.0&pvid=d915381f-dc0a-4226-ada5-3f842dcbea72&_t=gps-id:pcDetailBottomMoreOtherSeller,scm-url:1007.40050.354490.0,pvid:d915381f-dc0a-4226-ada5-3f842dcbea72,tpp_buckets:668%232846%238109%231935&pdp_npi=4%40dis!EUR!99.89!67.92!!!105.91!72.02!%402103894417127361062071485e1600!12000037169206834!rec!DE!!AB&utparam-url=scene%3ApcDetailBottomMoreOtherSeller|query_from%3A

Ich hoffe Ihr könnt mir einen Rat geben was ich besser an Hard und Software nehmen sollte bevor ich mich umbringe :blush: Eventuell ist ja auch der ein oder andere hier der mich kostenpflichtig bei diesem Projekt unterstützen kann.

Gruss Daniel

Ein interessantes und IMO anspruchsvolles Projekt. Ich wüßte allerdings nicht, wo bei so einer Hebebühne tatsächlich vier Zylinder und Encoder für die Hubhöhe benutzt werden (bin kein Mechaniker). Die Mathematik für die synchrone Bewegung der vier Zylinder könnte problematisch werden.

5V für den Mega, ansonsten paßt NPN eigentlich immer.

Ich würde auf 2 Encoder tippen. Einmal zum Prüfen, ob einer beschädigt wurde (hier eher unwahrscheinlich), vor allem aber um die möglichen (interessanten) Abweichungen bei Schiefstellung tatsächlich feststellen zu können.

Persönlich würde mich ein IMU interessieren, der einfach angeben kann, ob und wohin die Plattform hängt. Aber ob diese Dinger so empfindlich und zuverlässig sind, daß sie nicht nur zur Lageregelung von Drohnen verwendbar sind, sondern auch für so eine Monsterpresse, das müßte man wohl erst ausprobieren.

Den hatte ich auch ausprobiert, führt aber zu diversen Problemen. Die Bühne ist 5,5m lang und biegt sich natürlich durch, eine Positionierung in der Mitte fällt also schon mal raus. Am Rand ist der Hebel viel zu lang, ich hätte wieder mehrere cm Unterschied und die sauberkeit des Signals ist jetzt auch nicht sooo pralle.

Hast Du auch Erfahrung wegen den 4-20ma Encodern?? Kann ein Arduino überhaupt so fein auflösen?? Ich denke das macht nur probleme oder?

Im Regelfall baut man so was auch mit Spindeln und Synchronisiert das per Kette, also voll mechanisch. Die Spindeln gab es aber nicht in passender Länge und und und. Ich muss jetzt leider da durch :slight_smile:

Die Rechnerei stelle ich mir vorerst einfach vor.
Vier Zähler anlegen für die Zylinder/Encoder in den Ecken
Encoder füttern beim Drehen den Zähler mit incrementen
Werte addieren und wieder durch 4 teilen
EGezählte Impulse zum Mittelwert vergleichen
Voreilenden Zylinder schliessen
Wieder öffnen wenn der (neue) Mittelwert größer oder gleich Wert ist

..so ganz grob, der Mechaniker denkt da einfach :slight_smile:

Das mußt Du wissen, ich hätte es zumindest mal probiert.

Die arbeiten normalerweise analog, eher nicht mit Encodern.

Das klingt nach Schwingneigung. Kann man aber in den Griff bekommen.

Wie gesagt, der Senso liegt ja hier, Rechnerisch war das aber schon zu viel. Eine Regelung hätte aufgrund von Promill Winkelversatz erfolgen müssen was schon als Streuung da war. Das ganze hängt ja nur in Ketten, Bewegt sich also auch immer...

Die analoge Geschichte lasse ich lieber, dann gibts auch deutlich mehr Auswahl....

Vor Oberschwingungen wurde ich auch schon gewarnt. Da ich die Hydraulik aber mit FU fahre nehme ich zur Not noch Tempo raus. Beim runter fahren was nur durch ein Stömungsventil geht wird das etwas spannender...

Amazon ist für das kaufen von Bauteilen die denkbar schlechteste Option weil da selten die technischen Informationen stehen die man braucht.

So auch bei diesem Produkt. Marketing-Gelaber bis zum Anschlag aber keine Details zur funktionsweise und zur Schnittstelle.

Bei so einem Projekt kommt es ja nun wirklich auf Zuverlässigkeit an.
Da würde ich mir die 2 bis 10 Stunden Sucharbeit nach den technischen Details sparen und stattdessen 100 bis 200 Euro drauflegen um ein Produkt zu bekommen bei dem die technischen Details vom Anbieter gleich mitgeliefert werden.

Du schreibst Bühne ist 5,5 m lang. Und wie breit?
Wie viel Millimeter Versatz wäre vertretbar? Bzw. bei welchem Höhenversatz müsste die Regelung dann eingreifen?

Hallo,
ich denke mit einem Seilzug-Encoder wird das etwas zu umständlich. Es sei denn die liefern absolute Positionen. Ansonsten musst Du ja irgendwo zählen und auch die Zähler irgendwann , Irgendwo auf Null setzen. Klar das kannst Du unten machen, aber dann wirst Du da eventuell 4 Endschalter benötigen. Ab da zählst Du dann die Inkremente um auf eine absolute Position zu kommen.

ich würde Dir ein Seilzug-Potentiometer empfehlen. Das liefer einen absoluten Messwert. Als Überwachung kannst Du zusätzlich auf plausibilisiert der Messwerte prüfen.

Habe ich das richtig verstanden : Du willst letztlich mit Servos aus dem Modellbau die Kugelhähne so stellen das die Positionen der Zylinder gleich sind. ? , Also eigentlich die Geschwindigkeit verstellen. Reicht das Drehmoment unter Hydraulikdruck ? Eigentlich macht man sowas ja mit Servoventilen.

Ich habe sowas ähnliches früher im Maschinenbau gemacht. Allerdings lediglich mit zwei Zylindern die jeweils links und rechts an einer Maschinenbrücke mit 30m Länge waren. Die Brücke war einseitig fest und die andere Seite wurde etwa 2,5 m angehoben und abgesenkt Es ergab sich also in Längsrichtung eine schiefe Ebene die allerdings bei ca. 3m breite im Wasser stehen musste. Eine Seite war die Masterseite die ein wenig langsamer fuhr als die andere Slave Seite. Dadurch wollte die Slave seite natürlich immer etwas voreilen. Über den Positionsvergleich beider Seiten wurde dann die Slave-Seite kurzzeitig gestoppt. Die Slave Seite befand sich also immer innerhalb eines zulässigen Differenzfensters.

Da Du es nun mit 4 Zylindern zu tun hast sollte auch einer die Master sein und die drei anderen fahren auf die Position des Masters. Du kannst auch einen virituellen Master- Position bilden und alle 4 Spindeln darauf fahren.

Hi,

Ja Amazon geht einfach nur schnell, da kaufen, na ja. Ein wenig muss man schon auf das Geld schauen, ich werde in summe wegen zwei Plätzen die ich bauen werde immerhin acht stück davon brauchen, ansonsten hast du völlig recht ! Ich habe mal was bestellt zum Testen. In der Zwischenzeit werden die Zylinder eingebaut am 2. Platz

Danke für Deine Antwort.

Ja das Absolute Erfassen würde mich auch interessieren, wäre dann ja ein Ding mit 4-20mA oder so ?
Ich sehe den Vorteil wie Du auch wenn mal was nicht stimmt. Man kommt auch bei Stromausfall etc immer wieder aus der Nummer raus. Ansonsten Fährt das ganze ja einigermaßen Synchron. Ich denke Du hast da aber schon etwas sehr Ähnliches gebaut gehabt.

...Die Plattform ist 5 Meter lang und 2,5 Meter breit...grob. Da passt und soll also ein Auto drauf.

Wie sauber kann der Arduino denn ein ..keine Ahnung, 10mA signal auswerten?? 15,15 mA oder wie?
Zugegeben ist mit einem Stromausfall aber auch nicht zu Rechnen, ein "Null setzen per Endschalter ist auch kein Problem da ich Unten eh immer auf Anschlag stehe.

Die microcontroller-internen Analog-Digitalwandler haben 10 bit
2^10 = 1024 Stufen

externe AD-Wandler die man an jedenMicrocontroller anschließen kann gibt es mit
10, 12, 16 und 24 bit.

24 bit ist so dermaßen fein, dass du ganze besondere Abschirmungsmaßnahmen der Signalleitung vornehmen musst damit das Mess-Signal auch mit 23 bit ausgewertet werden kann. (richtig gelesen 24 bit AD-Wandler 23 bit auswerten. Das letzte Bit wird da sowie immer schwanken).

2^24 = 16.777.216 Stufen
bei 5V sind das 5V / 16.777.216 = pro Stufe 0,298 millionstel Volt
Also eigentlich viel zu fein

16 bit
2^16 = 65536
5V / 2^16 = 76 µV

12bit
5V / 2^12 = 1,2 Millivolt
das reicht.

Na ja ohne mechanischer Verrieglung vergiss schnell alles, du kannst das ganze nicht nur über Hydraulik auf der höhe stehen lassen, du brauchst eine zusatz Sicherung damit das ganze nicht abrupt runtergeht, noch schlimmer wird wen nur eine Seite kippt.
So was haben wir gebaut oder mit einem Heber (Stempel) oder die Stempel waren mechanisch verbunden.

1 Like

Moin,

...das wären bei meinem Weg ca. alle 3mm und damit genau genug, je nachdem wie sauber das Signal kommt....Sehr gut Denkbar!

Das ist völlig korrekt! Ich habe das hier nicht erwähnt weil das elektrische mein Problem und nicht die Mechanik. ein Sperrbolzen zum Ablegen kriege ich hin :slight_smile: Die Erfahrung hatte ich auch schon mal gemacht, bei ähnlicher Hubhöhe bewegt sich so eine Plattform dann schnell mal 3cm nach unten. Da gibt es also nix zu diskutieren. Ich habe platz nach oben zum Ausheben, das ist also alles möglich.

Hallo,
nein zunächst mal ist das nur ein Potentiometer. Damit kommt bei Verwendung von 5Volt, am Schleifer eine Spannung heraus die Du mit dem Arduino direkt messen kannst. In der Regel sind das Mehrgangpotentiometer mit 3 ,5 oder 10 Umdrehungen. Letztlich hängt das von der Mechanik der Seilrolle und der Seillänge ab.
Ich denke Deine Hebebühne hat einen Hub von etwa 2m. Wenn Du das digital auf 0-1023 misst dann gibt das eine Auflösung von etwa 2mm. Auf 10mm positionieren sollte damit also kein Problem sein und 10mm sollten Deiner Hebebühne nicht weh tun.
Ob Du das letztlich mit der Verstellung der Kugelhähne hinbekommst und auch während der Fahrt einhalten kannst ist erst mal eine andere Frage. Letztlich kannst Du ja immer nur alle Zylinder gleichzeitig fahren.
Ich denke Du wirst die Bühne ja im Tippbetrieb fahren. Wenn Du jetzt drückst dann fahren alle Zylinder gleichzeitig los. Wenn jetzt einer zu langsam ist willst Du ja mit dem zugehörigen Kugelhahn dafür sorgen das er etwas schneller fährt. Er hinkt ja jetzt zunächst mal etwas hinterher. Wenn Du nun stoppst bleiben alle 4 stehen , und das Ding steht etwas schief. Du kannst den einen Zylinder nicht nachträglich etwas nachfahren lassen damit die Bühne wieder gerade steht. Jetzt musst Du mal überlegen wie Du mit der Situation bei mehrfachem Start- Stop umgehst. Wenn Du lange genug am Stück fährst kannst Du sicher den einen so verstellen das er wieder synchron ist. Wenn er hinterher hinkt musst Du ihn etwas schneller laufen lassen damit er das wieder aufholt.

wie fährts Du eigentlich runter, lässt Du nur Druck ab, oder fährst Du mit Druck gegen ein hydraulisch entsperrbares Rückschlagventil?

Und klar natürlich gehört da eine Vorrichtung dran die ein Herunterfallen oder unbeabsichtigtes Absacken verhindert. Aber das hat ja nichts mit dem Thema Synchron fahren zu tun.

Ich werde mal die Konstruktion bemühen um ein paar Bilder hier zu Posten um das ganze mit mehr Details zu füllen. Vieles zeigt sich bestimmt schon.

Also Genauigkeit ist dann mehr als vorhanden. Spannend wird es aus Erfahrung zwischen 3 und 5cm Versatz.
Ich würde mich vorzugsweise nur auf diesen konzentrieren wollen und erst mal auf Fahrt nach oben. Ich steuere das Hydraulikventil an das den Pumpendruck frei gibt zum Zahnrad Mengenteiler. Niveau ist Gerade, es geht los. Alle Kugelhähne auf. Während ich wie schon beschrieben die signale einfach hochzählen lasse werden Differenzen zueinander entstehen. Alle Zylinder die oberhalb des Mittelwertes liegen werden per Kugelhahn zugesteuert oder sogar geregelt. Erreichen alle Zylinder annähernd den Mittelwert werden die zuvor geschlossenen wieder geöffnet, mehr oder weniger schnell. Es geht weiter, kein Tippbetrieb. Beim Stoppen, ich lasse den Taster los, werden immer alle Kugelhähne und das Versorgungsventil geschlossen, die Anlage bleibt stehen.
Beim wieder starten wird wirder im Loop direkt gefragt wer wie zum Mittelwert steht. Es sollten die voreilenden Zylinder wieder geschlossen bleiben.

Für Runter würde ich entspannt einen 2. Taster bemühen. Das Ventil gibt das Öl durch eine Drossel frei, die Hähne werden geöffnet, die vorauseilenden Zylinder (weg nach unten) bleiben geschlossen. Das ist aber erst später dran.

So denke ich mir das immer noch...in meinem Kopf :slight_smile:

Grob muss man sagen das die "generelle Mengenteilung"mechanisch vorhanden ist, der Rechner greift im Bereich um die.....sagen wir 10% ein....

Hallo,
ich hab das mal gedanklich durchgespielt , das könnte klappen. Ich hab mich zuerst gefragt " und was ist mit denen die unterhalb des Mittelwertes liegen" .
Aber wenn die schnelleren langsamer werden geht ja auch der nächste Mittelwert Richtung langsamer.

Meinst du mit "Signale hochzählen lassen" das immer wieder neue Einlesen der vier Sensor-Signale die der Höhe des jeweiligen Zylinders entsprechen?

Mit den Seilzug-Sensoren bekommt man Absolutwerte.
Mittelwert = die Zahlen der 4 AD-Wandler werden zusammengezählt und durch vier geteilt.

Das ist einfach zu programmkieren. Interessant wird es wenn jetzt aus einer Differenz zum Mittelwert umgerechnet werden muss auf den Servo-Drehwinkel.

Das muss gehen, ich mache das von Hand ja nicht viel anders. Jener der zu hoch ist wird zugedreht. Die anderen rücken nach und ich mache den jetzt den geschlossenen wieder auf.

ööööh, ja genau, ich glaube wir meinen das gleiche. Unten auf Anschlag wird stumpf genullt. Die Zylinder fahren raus und drehen den Encoder und ein Zähler zählt mit. In einem Vergleich müßte man sich also auch eine ermittelte Höhe anzeigen lassen können....grob
Aber wenn der 1000 Impulse auf 38mm raus gibt sind das in Längsbewegung ca 1000/119,4mm was einer übertriebenen Genauigkeit von etwa 12 hunderstel mm entspräche. Da reicht Faktor 0.1 und alles wird problemlos laufen. Wir werden dann grob 2,8m fahren was also etwa 24000 Impulsen entsprechen würde in einer Zeit von sagen wir mal...keine Ahnung...30 Sekunden...schneller wäre noch cooler :slight_smile:

Genau so dachte ich mir das

Da bin ich wieder das einfache Mechanikerschweinchen und behaupte:

Winkel 90 = voll geöffnet.
Differenz baut sich auf einem Zylinder auf und wird ja Steigen
Neuer Winkel ist gleich 90-Differenzwert * Faktor (den ich mir dann ausdenke)

Das ist jetzt bestimmt ganz grober Unfug für einen Programmierer aber in meinem Kopf haben wir jetzt beispielsweise 100 Impulse Differenz. Diese sind zwar in Grad am Encoder zu erklären aber das interessiert mich ja eigentlich gar nicht. Ich will ja nur das der Rechner das bemerkt und gegensteuert. Er würde also die 100 nehmen und mein Faktor würde daraus einen Zahlenwert machen der dann als neuer Wert gesetzt wird. Er dreht das Ventil sagen wir auf 80 Grad zu.

Jetzt passiert nix, also steigt die Differenz weiter was unweigerlich das Ventil weiter schliessen wird bis es zur not auf 0 Grad geschlossen wäre.
Damit stände die Bühne jetzt zwar schief aber erst mal passiert da nicht mehr.

Ab jetzt würde für mich die komplizierte Anpassung beginnen.
Kann man Hysterese machen?
Können wir nicht sofort bei 60 Grad Starten und dann die Rechnerei anwenden?
Macht es Sinn zu Überregeln damit das schneller geht?
Kann man Lernwerte machen, eine art Kennfeld wo der Rechner bereits nach den ersten 15cm erkannt hat das er einen Zylinder gar nicht über einen Winkel von 30 Grad anfahren braucht?

Das sind aber alles sachen die für mich erst später kommen und das mag ich sehr an Computern. Software kann man super erweitern. Mit meiner Mechanik komme ich nicht mehr weiter....da müßte ich sehr teuer umbauen.

Ich hoffe ich konnte meine Gedanken einigermaßen rüber bringen...

Die Seilzugsensoren geben keine Impulse raus sondern sind wenn man so will analoge Sensoren.

Seil ganz aufgewickelt Null Ohm
Seil ganz herausgezogen 10000 Ohm.
Aus dem Widerstandwert wird eine Spannung:

ganz unten 0,0 Volt.
Seil ganz herausgezogen 5,0 V
aus der Spannung mach der AD-Wandler Zahlenwerte

Seil ganz aufgewickelt Zahlenwert 0
Seil ganz herausgezogen Zahlenwert 1023

und wenn du das Seil genau zur Hälfte genau herausgezogen ist dann
Zahlenwert 512

Jetzt könntest du dutzende male das Seil ganz unterschiedlich weit weiter herausziehen
sich aufwickeln lassen und zwar in völlig beliebiger Reihenfolge.
Dann könntest du die Bühne in der Mitte stehend arretieren und die ganze Steuerung ausschalten und dann wieder einschalten
Der AD-Wandler wird sofort wieder 512 anzeigen.

Weil das ein ABSOLUT-Wertgeber ist.

Rauf runterzählen manchen Inkrementalgeber.
Da müsstest du bei jedem Einschalten erst einmal eine Referenzfahrt machen.

Am besten bei schon leicht schief gestellter Hebebühne. Dann weiß dein Programm nicht wie hoch welcher Stempel steht. Deshalb ist das mit ABSOLUT-Wertgebern schon besser.

Dieses Auf / Zu Regeln hat schon einen gewissen Anspruch. Wenn du da nicht jedes zweite mal ganz mühsam von Hand Millimeterweise wieder nachjustieren willst dann müssen die Ventilstellungen schon einigermaßen passen.

Vielleicht wird es aber auch eine ganz andere Fahr und Regelstrategie.
Auf Abweichungen prüfen und wenn Abweichung da ist erst mal nur in einem Langsamgang einen einzelnen Zylinder auf Höhe des Masterzylinders bringen.

Hallo,
das System mit der Mittelwert Bildung hat ja keinen Masterzylinder in eigentlichen Sinne. Die Zylinder die schneller als der Mittelwert sind müssen halt langsamer fahren. das tun sie wenn der Hahn weiter geöffnet wird, wie viel geöffnet, lässt sich durch Versuche ermitteln. Man könnte sogar soweit gehen und die Zylinder ganz anhalten für eine gewisse Hysterese. Dein Ansatz

Hahn_offen_Winkel = Differenz_zum Mittelwert * Faktor
ist da schon ok.

Grundsätzlich musst Du dich entscheiden ob Du inkrementell , mit Impulsen und einem Encoder zählen willst , oder absolut mit z.B einem Poti messen willst. ich würde das absolut mit Poti machen. Dann hast Du das Problem beim Einschalten nicht und musst auch nicht zählen.

Die Dinger sind zwar in der Regel recht teuer aber ich habe bei Ebay sowas auch für ca. 80€ gefunden 0-3000mm Weg.

Mit dem Zählen wird es letztlich auch nicht so einfach wie Du Dir das derzeit noch denkst. Du hast 4 Encoder mit eventuell relativ hoher Frequenz, Da musst Du mal rechnen . Eventuell musst Du das über Interrupts verarbeiten damit dir keine Impulse verloren gehen. Also Potis analog einlesen ist da wesentlich einfacher.

Gruß Heinz

ich gehe sogar von Interrupts aus...leider.

Ich habe ja bald einen da, mal sehen wie der so ist. Ich kann mir die Hardware ja aussuchen, definitiv ein Vorteil.

Auch könnte man einen ESP32 bemühen aber ich denke nicht das es an Geschwindigkeit mangelt. Analog soll ja bei größeren Kabellängen besser sein. Ich denke ich werde maximale Länge so 8 bis 10 Meter brauchen. Das darf dann auch nicht problematisch werden...