Linearaktuator-Drehmomentsteuerung

Ich möchte eine Anwendung bauen, bei der ich mit einem Linearaktuator eine definierte Kraft bereitstellen werde. Der Gleichstrommotor bleibt die meiste Zeit stehen und es sollte ein kontrolliertes Drehmoment aufgebracht werden. Also an der Aktuatorwelle möchte ich dann eine kontrollierte Kraft haben. Wenn ich eine größere entgegengesetzte Kraft auf die Welle ausübe, sollte sie nach unten gehen, wenn sie kleiner ist, sollte sie sich bis zum Ende vorwärts bewegen ... diese Anwendung ist analog: LINK

Am Ende möchte ich den Kraftsensor in einen geschlossenen Regelkreis schalten und mit PID steuern.

Also ... meine Frage ist, wie man einen Schaltkreis herstellt (ich möchte Arduino verwenden), der dazu in der Lage wäre. Im Internet konnte ich viele Beispiele finden, wie man Linearantriebe oder Gleichstrommotoren steuert, aber 99% davon sind Geschwindigkeitsregelung, Positionsregelung ... aber über Drehmomentregelung im blockierten Zustand habe ich eigentlich nichts gefunden ...

Ist es überhaupt möglich, es mit einem einfachen Linearaktuator zu machen, oder brauche ich einen anderen Aktuator? Kann ich normale Motortreiber oder eine noch einfachere Konfiguration mit N-Mosfet + PWM-Signal verwenden ...?

Irgendwelche Kommentare, Vorschläge zu diesem Thema?

Grüße Damir

Ergänzung zum Thema:

Teile die ich habe sind folgende:

  • Linearantrieb (12 V, 150 kg)

  • Monstermoto Motorschild

  • 12V 10A Netzteil

  • Wiegezelle 100kg

  • Arduino UNO

Es gibt ein weiteres Video, das genau zeigt, wie mein System funktionieren soll: LINK 0:30

Ich habe im Internet gelesen, dass viele Aktuatoren ein gewisses kontinuierliches Stillstandsdrehmoment oder -kraft haben ... das ist ca. 1/3 bis 1/10 von max. Drehmoment oder Kraft.

Also, sind meine Teile für etwas nützlich :) ???

Was schlagen Sie zur Verbesserung vor? Es ist nur ein Amateur-Hobbyprojekt, also versuche ich, bei niedrigen Kosten zu bleiben ...

Wenn ich das Feedback der Wägezelle wieder an Arduino anschließe und die PID-Schleife dann den PWM-Ausgang zum Motortreiber des Aktuators steuert ... wird es funktionieren?

Tnx für Kommentare und Antworten.

Damir

Wie wäre es mit einem Link zu einem Aktuator, dh einem Datenblatt von einem, den Sie in Betracht ziehen könnten? Auch eine Verbindung zum Kraftsensor.

Antworten (2)

Die Lageregelung (echter Industriekram) erfolgt in Kaskade mit mehreren Reglern: Lageregler (P-Regler), Drehzahlregler (PI-Regler), Stromregler (PI-Regler).
https://www.google.si/search?q=position+control+loop&biw=1391&bih=683&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwj0gMXLo-rJAhWDfxoKHaUmCTMQsAQIIA#imgrc=N1aiYN6Li7XBCM%3A
Wenn Sie bestimmte Stufen auslassen, erhält die Kontrolle schlechter. Wenn Sie beispielsweise keinen Stromwandler haben, können Sie den Motor direkt vom Drehzahlregler steuern, das wäre eine Spannungssteuerung. Wenn die Last den Motor im Stillstand bewegen will, "findet" der PI-Regler eine solche Spannung, die einen solchen Strom in den Motor einspeist, der ein solches Drehmoment an der Welle erzeugt, das den Motor wieder zum Stillstand bringt.
Wenn Sie einen Stromwandler haben, können Sie zwei PI-Regler herstellen. Die erste ist die Drehzahlregelung, die dem zweiten PI-Reg den Sollwert vorgibt. der aktuelle Controller. Jetzt muss der Ausgang des Stromreglers PWM steuern und eine Stromrückkopplung mit dem Stromwandler messen. Mit zusätzlicher Stromrückkopplung ist die Gesamtdynamik im Vergleich zur vorherigen Methode ohne Wandler schneller.
Die grobe Schlussfolgerung lautet also: Die Drehmomentregelung ist eigentlich die Stromregelung des Motors.

Hallo Marko, Position und Geschwindigkeit des Aktuators sind für mich irrelevant ... Ich muss nur die Kraft kontrollieren, also verstehe ich nicht, wie ich die ersten beiden Stufen implementieren kann ... und etwas mehr mit Motortreiber (wie einfacher Motorschild für Arduino) steuern wir die Spannung oder den Strom im Motor ... oder beides? (Ich habe keinen elektromechanischen Hintergrund :))
Sie sagten, Sie hätten Erfahrung mit blockierten Motorsituationen ... alle sagen über die kurze Lebensdauer des DC-Aktuators, wenn er in einer blockierten Situation verwendet wird ... was bedeutet das? Nehmen wir an, wenn ich meinen Chip-Aktuator (mit einer maximalen Kraft von 150 kg) bei 50 kg für 3 x 15 Minuten mit einer Pause von 15 Minuten festhalte ... würde es 1 Tag oder 1 Monat dauern ... nur um ein Gefühl zu haben :) Es gibt viele Zugmaschinen haben tonnenweise Kraft und ihre Lebenserwartung ist ... für immer :) testresources.net/test-machines/174-family Welche Art von Motor verwenden sie?
@ Dado87 Ich weiß nicht, welche Aktuatoren eine verknüpfte Maschine verwenden, aber es gibt immer noch viele alte CNC-Maschinen, die Gleichstrommotoren verwenden, da die Z-Achse mit EMF-Kraft in Position gehalten werden muss. Neuere Maschinen verwenden jedoch AC-Servomotoren (BLDC oder PMSM), die nur den Stator erwärmen und einfacher zu kühlen sind.
@ Dado87 Um die Kraft zu steuern, müssen Sie den Strom steuern. Arduino Motor Shield ist eine Open-Loop-Spannungsquelle, Sie stellen die Spannung mit Tastverhältnis ein, keine Rückkopplung. Wenn Sie einen zusätzlichen Stromwandler haben, können Sie diese Spannungsquelle in eine Stromquelle verwandeln, Sie messen den Strom und berechnen dann den PWM DT durch einen PI-Regler und stellen den PWM ein. Wenn Sie jetzt die Stromsteuerung haben, können Sie das Drehmoment steuern, aber wenn der Motor unbelastet ist, dreht er sich auf maximale Drehzahl. da Sie nicht palan, um eine Geschwindigkeitsregelung zu haben.

Um das zu tun, wonach Sie suchen, sind zwei Dinge erforderlich.

Erstens benötigen Sie eine Art Kraftrückmeldung wie eine Wägezelle. Ohne sie werden Sie nur raten, wie viel Kraft Sie tatsächlich anwenden.

Zweitens müssen Sie einen Motor verwenden, der längere Zeit ins Stocken geraten kann, z. B. einen bürstenlosen Gleichstrommotor oder einen Schrittmotor. Wenn Sie einen Bürstenmotor verwenden, besteht die Möglichkeit, dass er verbrennt.

1. Sie brauchen keine Kraftrückmeldung, ich habe viele Industriesteuerservos gemacht, Drehmoment == Strom. 2. bürstenloser DC oder Stepper haben nichts Besonderes im Vergleich zu gebürstetem DC, daher kann ein gebürsteter DC gleich funktionieren, alle älteren Servomotoren waren vom Bürstentyp, die Wahrscheinlichkeit, dass es brennt, ist bei BLDC gleich.