MiniVMC "Elke" Es geht los

Stellt Eure Planungen & Eigenbauten vor ...
django013
Beiträge: 1706
Registriert: 18.01.2016, 17:12

Re: MiniVMC "Elke" Es geht los

Beitrag von django013 » 07.01.2018, 08:49

Bring mal den Textteil von mir, den du nicht zitierst hast, in Kontext mit dem, den du Zitiet hast!
Hm, vermutlich fehlt mir da die Phantasie :shock:

Den Encoder an eine Rotationsachse - perfekt!

Nur will ich bei einer Rotationsachse doch nicht, dass der Servo/Stepper nur eine Umdrehung macht. Ich pack zwischen Antrieb und Rotationsachse noch ein Getriebe, um Geschwindigkeit und Drehmoment den Erfordernissen anpassen zu können.
Da sind wir dann wieder am gleichen Problem. Mit nem Absolutencoder am Antrieb weiß ich einfach nix anzufangen.

Gruß Reinhard

Benutzeravatar
Wandoo1980
Beiträge: 1099
Registriert: 30.01.2016, 20:36

Re: MiniVMC "Elke" Es geht los

Beitrag von Wandoo1980 » 07.01.2018, 10:36

Moin,
hier ist ja schon wieder was los.... also fange ich mal an, ich hoffe ich erwische alle.
KarlG hat geschrieben:
06.01.2018, 12:16
Moin Sebastian!

Zum Nanodur E80 (vermute, darauf beziehst Du Dich): Hast Du den Wärmeausdehnungskoeffizienten auf dem Schirm? Stahl liegt ungefähr bei 12; E80 bei 7 (*10^-6). Ist eigentlich immer die Frage, welche Kröte man schluckt...

Gruss
Karl
Bei dem Verwendeten St52 bin ich bei 11 und ja, der E80 liegt bei 7 *10^-6
http://durcrete.de/technische-daten-nanodur/
Da das aber auf den längen die ich hier verwernde verschwindend geringt ist, und das zeug ja durchaus in solchen Anwendungen gebraucht wird, kann ich das vernachlässigen.

Und jetzt mal zur Geschichte mit dem Encoder.....
23bit bieten mit in meinem Anwendungsfall den Luxus, dass der Servo einfach sehr schnell und genau auf Positionsveränderungen reagieren kann!
Das hat nichts mit der Theoretischen Positioniergenauigkeit zu tun sondern ehr damit, dass er auf äußere Einflüsse durch druck am Fräser besser reagieren kann.
Wenn ich mit einem Drehencoder auch noch die Strecke aufnehmen wollte, dann bräuchte ich einen Multiturnencoder, der kennt nicht nur genau seine Position sondern zählt auch noch die Umdrehungen.

Um dann weiter gleich mal damit aufzuräumen was Mach3/4 kann: Man kann die Encodersignale von den Endstufen an Mach3/4 übergeben und somit kann Mach3/4 anhand der Umdrehungen die der Servo macht die Position bestimmen. Das ist Sinnvoll bei Standfräsen an denen noch Kurbeln hängen wenn man mal was manuell machen will. In diesem Fall kennt die Software die Position und braucht keine erneute Referenzfahrt.

Was Mach3/4 NICHT kann, und da rede ich mir in letzter Zeit den Mund fusselig.... Man kann dort keinen PID aufbauen, denn Mach3/4 läuft unter Windoof und Windoof ist von Haus aus nicht echtzeitfähig!

So, dann geht es weiter mit den Glasmaßstäben.
Natürlich nimmt man dem Motor nicht den Encoder vom Hintern sondern betrachtet den Regelkreis als Subsystem. So kann die Endstufe den Servo auf seiner Achse positionieren, Drehzahl und Drehrichtung bestimmen. Zusätzlich dazu kommt dann der Glasmaßstab in einen zweiten Regelkreis. Damit kann man dann die absolute, lineare Position auf den Achsen Regeln. Dieser Regelkreis wird entweder (wie schon geschrieben) über die IP/A übernommen, das wäre der Fall von Mach3/4. Oder aber von LinuxCNC, denn das hat einen echtzeitfähigen Kern und kann durchaus einen PID aufbauen, wie bei talla83 in den Videos erklärt und auch zu sehen: https://www.youtube.com/user/talla83

Grüße, Sebastian
Zuletzt geändert von Wandoo1980 am 07.01.2018, 13:17, insgesamt 1-mal geändert.
"Seute Deern" Eigenbaufräse
Mach3 mit Cismo IP/M und RoyalCNC Addon
iHSV57 Servos von JMC
SK30 WZW
Tutorials und Videos auf meinem YouTube-Kanal

talla83
Beiträge: 4
Registriert: 19.08.2017, 19:22

Re: MiniVMC "Elke" Es geht los

Beitrag von talla83 » 07.01.2018, 11:20

Moin zusammen,

man muss wirklich die Regelschleifen differenzieren.
Zum einen hat ja der Servo eine Regelschleife die ihn immer genau auf Position oder Drehzahl bringt.
Aber was ist mit dem mechanischen Spiel ?
Also klassisch das Umkehrspiel der Spindelmutter oder auch das Axial belastete Lager des Gewindetriebes?
Um diesen Fehler zu erkennen ist ein weiteres Messsystem nötig und dieses muss dann mit eine extra Regelschleife bekommen.

Diese zusätzlichen Regelschleifen lassen sich im LinuxCNC direkt implementieren und werden auch in Echtzeit berechnet.
Man muss nur dafür sorgen das die Signal schnell rein und rauskommen.
Das schafft zum Beispiel der Paralellport nicht da er schlichtweg die Impulse von einem Encoder nicht schnell genug erfassen kann.
Daher benutzt man I/O Hardware die im MHZ Bereich diese Signal mitbekommt.

Hier mal ein Beispiel....
1. Regelschleife zwischen Regler und Motor
2. Regelschleife zwischen Motorencoder und LinuxCNC


youtu.be/r4KXgwYDJAI


Gruß Peter

FerdinandFräs
Beiträge: 210
Registriert: 27.07.2017, 18:42

Re: MiniVMC "Elke" Es geht los

Beitrag von FerdinandFräs » 07.01.2018, 11:29

django013 hat geschrieben:
07.01.2018, 08:49
Mit nem Absolutencoder am Antrieb weiß ich einfach nix anzufangen.
Wenn man den Servo als Antrieb für die Werkzeugspindel nimmt ist das nicht unpraktisch weil man so relativ einfach eine Spindelorientierung realisieren kann, da zählt ja nur der Winkel und nicht die gelaufenen Umdrehungen. So für Werkzeugwechsel, Ausspindeln, Nutstoßen etc...

django013
Beiträge: 1706
Registriert: 18.01.2016, 17:12

Re: MiniVMC "Elke" Es geht los

Beitrag von django013 » 07.01.2018, 13:26

Was Mach3/4 NICHT kann, und da rede ich mir in letzter Zeit den Mund fusselig.... Man kann dort keinen PID aufbauen, denn Mach3/4 läuft unter Windoof und Windoof ist nicht echtzeitfähig!
Naja, echtzeitfähig heißt ja "nur", dass eine Reaktion innerhalb einer max. Zeit erfolgt.
Das trifft bei mach4 zu, denn dort erfolgt die Signalverarbeitung ereignisorientiert.
Wenn beispielsweise ein ESS mit 10Hz (Standard) angebunden ist, dann ist natürlich auch nur eine Reaktion innerhalb dieser 10Hz möglich. Selbst wenn mach4 das Signal schneller verarbeitet hat, geht es erst mit dem nächsten Zug zurück zum ESS.
Die mögliche Geschwindigkeit in der Signalverarbeitung liegt also auch an der Anbindung des Bobs.

Was einen möglichen PID-Regler unter mach4 angeht - ich schrieb ja schon, dass ich der Endstufe nicht den PID-Regler nehmen will, denn besser den Strom ausregeln und auf Fehler reagieren - traue ich mir nicht zu.
Was ich mir allerdings gut vorstellen könnte, ist der zweite Regelkreis, der auf Anwendungsebene die Position verarbeitet. Da müsste man einfach mal ausprobieren, wie schnell mach4 wirklich sein kann und ob das nicht schnell genug sein könnte.

Bei allem, was ich bislang mit mach4 getestet habe, wurde ich positiv überrascht von der Verarbeitungsgeschwindigkeit.
... und nö - ich bekomme keine Tantiemen von mach :D
Daher benutzt man I/O Hardware die im MHZ Bereich diese Signal mitbekommt.
Yepp, der ESS kann Encoder schnell genug einlesen, leitet die Signale aber nicht schnell genug weiter.
Ideal wäre es, wenn der ESS "wüsste", welche Bedeutung ein Encodersignal hat.
Wenn man den Servo als Antrieb für die Werkzeugspindel nimmt ist das nicht unpraktisch weil man so relativ einfach eine Spindelorientierung realisieren kann, da zählt ja nur der Winkel und nicht die gelaufenen Umdrehungen. So für Werkzeugwechsel, Ausspindeln, Nutstoßen etc...
Lach - selbst beim Antrieb einer Werkzeugspindel habe ich ein Getriebe vorgesehen. Das kann 1:1 betrieben werden, muss aber nicht. Somit würde (für mich) auch hier wieder der Encoder auf der Anwendungsachse und nicht beim Antrieb Sinn machen :D
Selbst bei Drehmaschinen gibt es ein Getriebe an der Hauptspindel ;)

Gruß Reinhard

talla83
Beiträge: 4
Registriert: 19.08.2017, 19:22

Re: MiniVMC "Elke" Es geht los

Beitrag von talla83 » 07.01.2018, 15:54

Was ich mir allerdings gut vorstellen könnte, ist der zweite Regelkreis, der auf Anwendungsebene die Position verarbeitet. Da müsste man einfach mal ausprobieren, wie schnell mach4 wirklich sein kann und ob das nicht schnell genug sein könnte.
Hallo Reinhard,
genau das könnte ich ja mal probieren.
Angenommen ich implementiere einen PID mittels scripting. Wie verbinde ich den PID Ausgang mit dem Stepgenerator?
In der Doku vom scripting wird auch nichts derart beschrieben.
Das einzigste was ich gefunden habe ist das die Zykluszeit 50ms beträgt und mit diesem Wert brauchen wir keine Regelung anfangen.
Da ist die Achse mehrere Millimeter daneben bevor der PID das gemerkt bzw. gerechnet hat.

Wie würdest du das angehen? Hast du Codebeispiele auf denen ich aufbauen könnte?

Gruß Peter

Benutzeravatar
Wandoo1980
Beiträge: 1099
Registriert: 30.01.2016, 20:36

Re: MiniVMC "Elke" Es geht los

Beitrag von Wandoo1980 » 07.01.2018, 16:39

Moin,
hach ist das herrlich ;) Mich würde auch mal interessieren wie Mach4 das macht. Also wenn und ob es da eine Möglichkeit gibt die PID auf Mach4 zu legen, damit das anständig funktioniert.

Aber mal wieder zurück zur eigenen Sache:

Das neue Video ist soeben online gegangen mit einem Gruß ins neue Jahr und ein paar Infos wieder zur Z-Achse, ein paar Veränderungen am Maschinenbett und einem kurzen Ausflug zu den Servos.


youtu.be/khGUJokZrlM

Grüße, Sebastian
"Seute Deern" Eigenbaufräse
Mach3 mit Cismo IP/M und RoyalCNC Addon
iHSV57 Servos von JMC
SK30 WZW
Tutorials und Videos auf meinem YouTube-Kanal

django013
Beiträge: 1706
Registriert: 18.01.2016, 17:12

Re: MiniVMC "Elke" Es geht los

Beitrag von django013 » 07.01.2018, 17:34

Moin moin,
Das einzigste was ich gefunden habe ist das die Zykluszeit 50ms beträgt und mit diesem Wert brauchen wir keine Regelung anfangen.
Hm, ich habe in der Richtung noch nix gemacht, weil mir einfach die Hardware dazu fehlt.
Wenn ich mich allerdings richtig erinnere, dann kann man die Zykluszeit der Signalverarbeitung selbst einstellen.
hach ist das herrlich
Wenn Ihr ein echtes Interesse an der Funktionalität habt, dann empfehle ich Euch eine Anfrage im mach4 support forum.

Könnte allerdings sein, dass die PID-Funktionalität den Entwicklern vorbehalten ist. Das ist dann eine größere Geschichte.

Gruß Reinhard

Lars
Beiträge: 633
Registriert: 07.09.2016, 12:33

Re: MiniVMC "Elke" Es geht los

Beitrag von Lars » 08.01.2018, 05:26

Sebastian, welche Art von Festlagern willst du denn verwenden?
Angesichts des Aufwands mit gegeneinander verspannten Kugelgewindemuttern und der ganzen Steifigkeitsorgie wirst du ja vermutlich nicht mit ein paar weichen Tellerfedern alles wieder weich machen wollen.

Ich habe bei mir (weil ich Tellerfedern einfach nicht mag, nicht, weil es bei einer Maschine wie meiner nötig wäre) zwei Achsen auf Festlager mit "FAG 7201 B TVP P5 UL" umgestellt, die am Außenring und Innenring direkt gegeneinander verschraubt werden und dann leichte Vorspannung haben und schön weich laufen. Die Lager habe ich zu einem vertretbaren Preis über Mercateo bekommen.

django013
Beiträge: 1706
Registriert: 18.01.2016, 17:12

Re: MiniVMC "Elke" Es geht los

Beitrag von django013 » 08.01.2018, 05:38

Moin Peter,

ich habe gestern das Bild nicht gefunden, deshalb erst heute die Antwort nach der Verbindung zwischen PID Ausgang und Stepgenerator.
Ich gehe davon aus, dass das bereits intern abgewickelt wird. Dadurch dass man einen Eingang als Encoder festlegt, ist ja auch klar, was mit den Signalen passieren soll. Es gibt 6 Achsen und somit auch 6 mögliche Encoder. Das Handrad ist separat und wird als Aux Encoder geführt.
ESS-Setup_Inputs_01.png
Hier ein Screenshot vom Eingangsdialog zur Festlegung der Eingangssignale des ESS.
Somit ist anzunehmen, dass der PID-Regler bereits auf dem ESS läuft und nicht in mach4 - was ja auch Sinn macht.

Die Verbindung zu mach4 erfolgt über die Positionsrückmeldung, die man bei den Ausgängen festlegen kann. Diese Kommunikation ist aber wieder auf die 40Hz Schnittstellenfrequenz begrenzt.

Gruß Reinhard

Antworten

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 13 Gäste