-
        

Ergebnis 1 bis 9 von 9

Thema: Motorcontroller 230V

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9

    Motorcontroller 230V

    Anzeige

    Hallo Leute,

    ich habe hier eine kleine Tischbohrmaschine (Flott TB10 Plus) und versuche da den Regler zu entwerfen.
    Wieso ich das mache? naja die Maschine habe ich ausm Schrott weil das Gehäuse und die Elektronik zerbrochen war.... Wieso auch immer.
    Mitlerweile ist ein Arduino Nano mit I2C LCD sowie ein Phasenanschnittsdimmer mit ZCD im Gerät und ein neues Blechgehäuse geschweißt.

    Zur Software: Timer 1 liest mir die Drehzahl aus und Timer 2 stellt den Dimmer usw. dar. Ich muss nun nur den gewünschten Wert in OCR2A werfen: 0 ist Vollgaß und 130 ist Aus.
    Jetzt gehts an die Auslegung des Reglers... Das Studium liegt lange zurück und Regelungstechnik war nie mit viel Praxis gekrönt.
    Bei euch im Wiki habe ich die tolle Reglerseite gefunden. Leider komme ich nicht so ganz vorran.
    Ich habe verschiedene Methoden probiert und bin nun bei folgender Formel hängen geblieben:

    out = (int)((0.35 * (float)e) + (0.010 * (float)esum));

    Die Casts mache ich später noch weg, aber zuerst bin ich vorsichtig mit meinen Äpfeln und Birnen
    ESum ist zwischen -2000 und 2000 begrenzt und Out zwischen 0 und 130.


    Status quo: ab 250 RPM geht die obige Formel... Darunter ist es ein Geschwinge nach Noten weil der Regler auf out=0 geht und direkt darauf mit relativ hohen werten den Motor anwirft.

    Sobald ich die Welle über 250RPM belaste fängt auch ein Ruckeln an.
    Weiterhin belastet mich das Startverhalten... Auch das geht mit einem richtigen Ruck los.

    Zu den "kontinuierlichen" Problemen hab ich mal 2 Bilder im Anhang.
    Ich hoffe ihr könnt mir folgen und helfen

    Viele Grüße
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 80RPM_unbelastet.jpg   750RPM_belastet.jpg  

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Hessibaby
    Registriert seit
    20.11.2003
    Ort
    Gelsenkirchen
    Alter
    65
    Beiträge
    1.600
    Hi, poste mal das Schaltbild Deiner Anschnittschaltung, so wie ich das sehe hast Du Dir einen netten Schwingkreis gebastelt. Dazu solltest Du mal die Daten des verbauten Motors angeben. Beruflich habe ich täglich mit geregelten Antrieben zu tun. Die hängen zwar meist an Frequenzumrichtern aber die physikalischen Eigenschaften sind identisch.
    Wichtig ist unter anderem das Du die Motortemperatur überwachst.
    Eventuell kommst Du auch mit einer Phasenabschnittregelung oder einer Pulspaketregelung besser klar.
    Wenn ich mir die Oszillogramme so anschaue tippe ich darauf das der Motor aus dem Tritt kommt.

    Planung ersetzt Zufall durch Irrtum

    Gruß aus dem Ruhrgebiet Hartmut

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9
    Hallo Hessibaby,

    klar gerne:
    http://www.fritzler-avr.de/HP/tipps/dimm.php

    Die Idee dahinter:
    http://www.fingers-welt.de/info/MOTO...SCHALTUNGE.PDF
    bzw. Wikipedia:
    https://de.wikipedia.org/wiki/Einpha...enschlussmotor
    Phasenanschnittsteuerung Mit der Phasenanschnittsteuerung ist eine praktisch verlustlose und feinstufige Regelung der Drehzahl möglich. Während einer Halbperiode wird der Strom jeweils für eine bestimmte Zeit unterbrochen, das heißt, Effektivwert von Strom und Spannung werden verändert, dies führt zu einer Änderung des Moments und der Drehzahl.[2]
    Das ist die Beschaltung die ich gewählt habe - meine ZCD hängt mit einem Brückengleichrichter direkt an den 230V da ich wegen dem Verzug nicht noch den Trafo dazwischen haben wollte.
    Der Motor ist ein FISE SPA U9655TS1D010 - ich denke mit Wicklungstemperaturschalter.
    http://www.fise-spa.it/en/serie-u-motors/motor-u96/

    Mehr Daten müsste ich heute Abend raussuchen.
    Was mich wundert ist, wenn ich den Regler sehr träge auslege dann funktioniert es schön.
    Geändert von McFloppY (03.01.2018 um 13:06 Uhr)

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Hessibaby
    Registriert seit
    20.11.2003
    Ort
    Gelsenkirchen
    Alter
    65
    Beiträge
    1.600
    Da das offensichtlich ein Allstrommotor ist würde ich das Pferd anders aufzäumen, indem ich die beiden Statorwicklungen und den Läufer separat ansteuern würde und zwar als Nebenschlußmotor. https://de.wikipedia.org/wiki/Gleich...chlussmaschine.
    Der Vorteil liegt darin das Du den Läufer mit einem Konstantstrom bestromen kannst und somit ein relativ konstantes Drehmoment hast und über eine PWM-Feldregelung eine feinfühlige Drehzahleinstellung realisieren kannst. Hoher Feldstrom = geringe Drehzahl, kleiner Feldstrom = hohe Drehzahl.
    Nachteil: Du benötigst einen Trafo der Dir bei ca. 60V mindestens 350-400VA (Watt) an Leistung liefert. Einen Gleichrichter mit 100V und 10-25A Belastbarkeit sowie einen Elko 3.300 - 4.700µF/100V.
    Der Wirkungsgrad des Motors wird, wegen der entfallenden Ummagnetisierungsverlusten bei Wechselstrom, deutlich erhöht. Aber auch hier gilt Thermistor dran und Temperatur überwachen.
    Viel Spaß dabei.

    Planung ersetzt Zufall durch Irrtum

    Gruß aus dem Ruhrgebiet Hartmut

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9
    Hallo Hessibaby,

    ich habe leider keinen Platz für einen Trafo. Mir steht nur der Raum zur Verfügung den auch die alte Steuerung hatte.
    Meinst du ich bin auf dem absoluten Holzweg? Gefühlt sind es nur ein paar "bessere" Zahlen und das Ding läuft.
    Evtl. noch Drehzahlabhängige Kp / Ki Werte, aber auch das sollte der kleine Arduino schaffen.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9
    So liebe Leute,

    ich bin weiter
    Ich habe mir die Nacht mal alles durch den Kopf gehen lassen (mit 16 war damit noch was anderes gemeint ).
    Ich habe ja eine absolut nichtlineare Kennlinie im Anfangsbereich. Bei out = 0 brummt der Motor nur und bei 5 dreht er los, bei 20 irgendwo ist er schon sehr schnell. Also habe ich geschaut und gesehen dass die minimal gewünschte Drehzahl bei 15 - 17 etwa erreicht wird. Danach wurde out bei 13 abgeriegelt - und siehe da: das Rucken war weg.

    Weiterhin habe ich den I Anteil auch im "negativen" begrenzt: Der minimale Schlepp ist im Leerlauf und kann nicht weniger werden. Wird er "fälschlicherweise" weniger komm ich wieder ins Ruckeln da out wieder an 13 ran geht. Daher die Begrenzung von esum auf ca. 2000 - im Betrieb braucht er 2500 und mehr.

    Im Anhang seht ihr ein Screenshot.
    Nun muss ich nur noch das "aufschwingen" unter Last in den Griff bekommen - Siehe Anhang "belastet".
    Da hab ich mit den Fingern leicht ans Bohrfutter gedrückt und wieder losgelassen. Gegen ende hab ich immer fester gedrückt bis zum Stillstand. Dann kolabiert das System - ich denke da muss ich einfach eine "Überlastabschaltung" einbauen. Aber bis dahin könnte es mehr "Schmackes" haben

    Edit: achso nochwas: das "Schwingen" ist Drehzahlabhängig - der Regler läuft Netzsyncron. Somit denke ich ist es was vom Motor und nicht ein zu langsamer Regler.

    VG
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 100RPM unbelastet.jpg   100RPM_belastet.jpg  

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9
    Soooo,
    ich bin weiter
    viel weniger P, mehr I und etwas D und alles geht gut
    Das Rattern unter last würde man ausgemerzt bekommen wenn man den I Anteil langsamer fallen lassen würde als steigen. aber gefühlt ist das Vergewaltigung des Reglers.

    Status Quo:
    esum = esum + e;
    if (esum < 0) {esum = 0;} //Begrenzung I-Anteil
    if (esum > 20000) {esum = 20000;}
    out = (int)((0.05 * (float)e) + (0.02 * (float)esum)+ (0.2 * (float) ealt));
    if(out>117) out = 117; // Out begrenzen
    if(out<0) out = 0; // "standgaß" begrenzen
    OCR2A = 127 - out; // Maschine läuft grade an ; regelung mit out 0...117
    ealt = e;


  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    13.07.2004
    Beiträge
    9
    Hallo Leute,

    da ich es immer Hasse wenn Sachen gefragt werden und die Leute dann keine Antwort schreiben:
    Ich habs nun:
    e sollte float sein
    Dann gehts auch wieder mit viel P und wenig I...

    Hier die relevanten glob. Variablendefinitionen:
    volatile int motorsoll = 0, out=0, esum = 0;
    volatile float e = 0, ealt = 0;
    e = motorsoll - umin;
    esum = esum + e/10; // esum wird sehr groß - /10 wegen Typ int
    if (esum < 0) {esum = 0;} //Begrenzung I-Anteil
    if (esum > 30000) {esum = 30000;}
    out = (int)((0.2 * (float)e) + (0.01 * (float)esum)+ (0.1 * (float) ealt)); // perfekt für 1krpm 0.4 und 0.015
    if(out>117) out = 117;
    if(out<0) out = 0; // "standgas" begrenzen
    OCR2A = 127 - out; // Maschine läuft grade an ; Regelung mit out 0...117
    ealt = e;



    Ich hoffe es hilft noch dem einen oder anderen Suchenden

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Hessibaby
    Registriert seit
    20.11.2003
    Ort
    Gelsenkirchen
    Alter
    65
    Beiträge
    1.600
    Hallo McFloppY, nein Du bist nicht auf dem Holzweg - aber ich war die ganze Woche offline da beruflich unterwegs.
    So wie es ausschaut bist Du ja auf dem richtigen Weg

    Planung ersetzt Zufall durch Irrtum

    Gruß aus dem Ruhrgebiet Hartmut

Ähnliche Themen

  1. Motorcontroller
    Von Ozzy im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 0
    Letzter Beitrag: 27.06.2012, 20:35
  2. [ERLEDIGT] MD25 Motorcontroller
    Von WL im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 15.04.2011, 12:53
  3. Motorcontroller von Robotikhardware
    Von sigo im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 25.02.2007, 14:09
  4. Welcher Motorcontroller
    Von Nr. 5 im Forum Motoren
    Antworten: 2
    Letzter Beitrag: 23.02.2007, 13:52
  5. einen Motorcontroller bauen...
    Von [IN]Crusher im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 27.08.2006, 18:31

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •