Benutzer-Werkzeuge

Webseiten-Werkzeuge


elektrotechnik:barmalcontroller

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
elektrotechnik:barmalcontroller [2013/11/24 17:02]
didi28
elektrotechnik:barmalcontroller [2019/05/02 18:36] (aktuell)
Zeile 1: Zeile 1:
-======BarmalController======+====== ​Barmal Controller V2.x Sinus(SVM)/​Block ​======
  
-======Allgemeines======+Sinus(SVPWM) / Block-Kontroller programmierbar.
  
-Mein Ziel war einen Kontroller zu bauen, der völlig „offen“ ist. D.h. es sollen alle Motorrelevanten Parameter via PC frei programmierbar sein und zwar innerhalb von paar „Klicks“ und am besten über eine grafische Oberfläche. Der Kontroller sollte durch die freie Parametrierbarkeit universell alle sensorbehafteten BLDC-Motoren bedienen können und sollte dem Anwender freie Wahl lassen wie er den Motor betreiben möchte. Egal ob blockkommutiert oder Sinus, als Drehzahlsteller,​ Drehzahlregler oder Stromgeregelt. Mit oder ohne Strombegrenzung. 60° oder 120° Hallversatz.+{{:​elektrotechnik:​qt4p4168_2.jpg?200|}}
  
-Entstanden ist der „Midi“, der relativ klein aber doch robust und Stromstark ist. Die Software wird ständig verbesser und bearbeitet um die Performance zu optimieren.  +[[:elektrotechnik:​barmalcontroller:​SinusBlockController|Hier geht's zum Sinus-/​Block Controller]]
-  +
-=====Technische Daten:=====+
  
-Für Sensorbehaftete Motoren ​(3-digitale Hallsensoren,​ mit 60°/120° Versatz, oder  +====== Barmal FOC Controller X2.x + X4.x (12 und 24 Fets======
-2 analoge mit Sinus/​Cosinus Signal).+
  
-  * Rotorlagegeber:​ Digital / Analog-Hallsensor (umschaltbar). +FOC-Kontrollerprogrammierbar.
-  * Spannungsbereich:​ 24V – 60V. +
-  * Strom Akku:​ 24-36V – 30A48V – 25A* (kurzzeitig 3 x Imax!). +
-  * Strom Reku:​ einstellbar (NEUE Funktion, muss noch getestet werden). +
-  * Eigenstromverbrauch:​ 60mA.  +
-  * Kommutierungsart:​ Sinus / Block (umschaltbar). +
-  * Max. Rückwärtsspannung ca: 60V max. (einstellbar). +
-  * Leiterplattengröße:​ 73 x 98 mm (Multilayer). +
-  * Gesamtgröße mit Kühlkörper:​ 100 x 80 x 42 mm (Alugehäuse). +
-  * Schnittstelle:​ Seriell (RS232). +
-  * Update:​ Ja,​ via RS232. +
-  * Anschlüsse:​ Sollwert analog 0...5V +
-  * Freigabe +
-  * Bremse +
-  * Drehrichtung +
-  * Lüfteranschluss (optional, Temperaturgeregelt) 24V/0,5A +
-  * Hall A (digital),​(analog) +
-  * Hall B (digital),​(analog) +
-  * Hall C (digital)+
  
-Der Kontroller ist mit dem Bootloader ausgestattet,​ was eine schnelle und unkomplizierte Softwareupdate oder auch individuelle Anpassung via RS232 Schnittstelle ermöglicht. +{{:​elektrotechnik:​x2.x_1.jpg?200|}}
- +
-=====Hardware===== +
-{{:​elektrotechnik:​qt4p4168_2.jpg?​nolink&​600|}} +
- +
-=====Parametriersoftware===== +
-{{:​elektrotechnik:​soft_neu_ireku.jpg?nolink&​600|}} +
- +
-=====Belegung===== +
-{{:​elektrotechnik:​v2.5c_belegung.jpg?​nolink&​600|}} +
- +
- +
-======Softwarebeschreibung====== +
- +
-=====Einstellbare Parameter:​===== +
-  * **Reset** ​ startet die Hardware neu, z.B nach einer Blockierabschaltung. +
-  * **Hall Digital / Analog** (Umschaltung zwischen Digital und Analoghallsensoren.Um Betrieb mit analog Hallsensoren zu ermöglichen müssen diese einen Sinus / Cosinussignal liefern, der sich in der Amplitude mindestens zwischen 1,5 bis 3,5V befindet und einen Versatz von 90° zueinander haben. Das Signal kann z.B. an Rotormagneten abgegriffen werden. Bitte beachten: im Analoghall-Betrieb wird die Rotorposition hoch aufgelöst berechnet und im Kontroller weiterverarbeitet. Aus diesem Grund benötigt der Kontroller möglichst genaue Sinus/​Cosinus Signale. Eine volle Periode (z.B. für Sinus) entspricht dabei einer elektrischen Umdrehung. Damit ergibt sich: z.B. bei Nine Continent mit 48 Magneten, pro eine Mechanische Umdrehung 24 Sinus Perioden. Falls die Position nicht an Rotormagneten abgegriffen wird, so muss garantiert werden dass die Anzahl der Magneten im Rotorlagegeber der Anzahl der Magneten im Rotor gleich ist). +
-  * **„Hall Korr“** (Hallkorrektur) ist eine Funktion zur Verbesserung der Laufeigenschaften des Motors. Da die meisten Motoren eine mehr oder weniger ausgeprägte Toleranz in der Sensorplatzierung haben (Position der Halls zueinander und deren Ausrichtung zum Stator), ermöglicht diese Funktion diese Toleranzen softwareseitig zu minimieren. Es stehen 4 Stufen zur Verfügung In jeder Stufe wird der Versatz/​Fehler anders behandelt/​berechnet und wirkt sich unterschiedlich auf unterschiedliche Motoren aus. Auswahl der Korrektur muss deshalb erprobt werden. +
- +
-====Drehzahl,​ Strom, Zeit...==== +
-  * Drehzahlregler (Kp, Ki – Parameter schrittweise einstellbar,​ Sollwert über Poti oder 0...5V, Drehzahl begrenzt auf  20000Upm),​ +
-  * Drehzahl max wird bis 500Upm in 10-er Schritten und ab 500Upm in 100-er Schritten hoch/runter gesetzt (Drehzahl max muss definiert werden um den Sinusstrom zu generieren). +
-  * Strom Akku (im Bereich 0...30A). +
-  * Strom Reku (Bereich 0...80, entspricht 0A bis 8A. Funktion ist neu und muss noch auf anderen Systemen/​Motoren getestet werden), +
-  * Drehzahlsteller (Sollwert über Poti oder 0...5V, Parameter Drehzahl => Drehzahl max, Kp und Ki werden in dem Modus nicht berücksichtigt und der Motor wird mit seiner max. Drehzahl drehen). In diesem Modus muss die maximale Motordrehzahl trotzdem eingestellt werden! +
-  * Motormagnetpole,​ 4 bis 50 +
-  * Standby, die Abschaltzeit nach der die Elektronik in den Standby – Betrieb umschaltet um Energie zu sparen. Die Motorendstufe wird  abgeschaltet und der Motor läuft frei. Die Zeit kann im Bereich 0 (aus)…60 Sekunden eingestellt werden.  +
- +
-Zusätzlich zu den Betriebsarten:​ Drehzahlregler und Drehzahlsteller +
-kann noch die Strombegrenzung aktiviert werden. +
-  +
-====Parameter - Zeit:==== +
-  * Hochlauframpe (im Bereich 100 – 1000ms), +
-  * Umschaltpause zwischen links und Rechtslauf (im Bereich 100 – 5000ms), +
-  * Abschaltzeit im Blockierfall (im Bereich 100 – 10000ms). +
- +
-====Soll-Fenster:​==== +
-Hier kann die Soll-Eigangsspannung angepasst werden. +
-Das bedeutet, der Sollwerteingang kann im oberen und unterem Bereich z.B. auf den Gasgriff angepasst werden. Der Sollwert liegt im Normalfall im Bereich 0....5V. Falls aber die Sollwertvorgabe im Bereich 1...4V liegen soll, so kann der Wert hier angepasst werden, damit der Motor im ganzen Drehzahlbereich drehen kann. Mit den Tasten + / - können beide Werte für den oberen und unteren Bereich angepasst werden. Diese Einstellung wird im EEPROM abgespeichert. +
-Die schematische Darstellung sieht wie folgt aus: +
- +
-Sollwertvorgabe in V =>   ​|0-------------1------------ ​ 4 ------------5| +
- +
-Motordrehzahl in %   ​=> ​   |0------------------------------------------100| +
- +
-Sollwertvorgabe in V =>   ​|0-------------1------------- 4 ------------5| +
-  +
-Motordrehzahl in %   ​=> ​   |--------------- ​ 0 ----------- 100 --------------| +
- +
-====Winkel Offset:​==== +
-Diese Einstellung gilt nur für die Sinuskommutierung und ist für beide Rotorlagegeber gültig (Analog und Digitalhall). Da die meisten Motoren eine gewisse Toleranz in der Hallsensor-Positionierung aufweisen, wurde diese Option hinzugefügt um diese per Software auszugleichen und optimale Motorlaufeigenschaften zu garantieren. Mit dem Offset wird der Motor-Nullpunkt definiert, in dem der Motor in beiden Richtungen identische Laufeigenschaften definiert (Stromaufnahme und Drehzahl). Der Bereich beträgt 1 bis 360° für beide Drehrichtungen. +
-Die Winkelkorrektur muss empirisch ermittelt werden in dem der Motor zwischen links und rechts umgeschaltet und Offset solange hinzugefügt wird bis der Motor auf 86% der blockkommutierten Drehzahl sich einpendelt. +
- +
-====Rück V:==== +
-Rückspannung. Hier kann die Rekuperationsspannung definiert werden. Der Bereich liegt zwischen 30 und 62V und ist nur für die Sinuskommutierung gültig. +
- +
-==Reku aus bei Soll = 1:== +
-Hier stehen 2 Stufen zur Auswahl. In der Stufe 1 wird während der Fahrt und Gasgriffstellung 0 die Endstufe abgeschaltet,​ was einen Freilauf des Motors zur Folge hat. In der Stufe 2 wird der Rekustrom auf 0 geregelt.  +
- +
-====Startparameter:​==== +
-  * Startrichtung (kann die Startrichtung geändert werden) +
-  * Freigabe (Hi oder Lo aktiv) +
-  * Bremse (Hi oder Lo aktiv) +
-  * Reku aus (bei Sollwert ​ = 0 erfolgt keine Stromrückspeisung) +
-  * Drehzahlregler +
-  * Drehzahlsteller +
-  * Strombegrenzung (damit wird die eingestellte Strombegrenzung aktiviert) +
-  * I-Reg (damit kann der Motor Stromgeregelt betrieben werden. Mit dem Sollwert wird der Motorstrom in dem vorher eingestelltem Bereich geregelt) +
-  * Kommutierungsart Block / Sinus für 60° oder 120° +
-  * n-Verz (Sollwertverzögerung. Damit wird eine Verzögerte Reaktion des Gasgriffes erzwungen um z.B. das sofortige Losfahren bei zufällig betätigtem Gasgriff ​ zu vermeiden) +
-  * Tempomat. Hier kann die automatische Tempomatfunktion aktiviert werden. Die Funktion überwacht die Gasgriffstellung und wird aktiv sobald sich die Gasgriffstellung in der vorher eingestellten Zeit nicht wesentlich verändert hat. Z.B. Tempomateinstellung =>  5 Sekunden, Fahrgeschwindigkeit erreicht und Gasgriffposition ca. 5 Sekunden bleibt unverändert => Gasgriffposition wird intern gespeichert und Gasgriff kann losgelassen werden. Um die Funktion zu deaktivieren ​ reicht es den Gasgriff auf ma. oder die vorher gespeicherte Position zu bewegen. Bitte beachten, diese Funktion ist im Betastadium und kann auf Wunsch noch angepasst werden. +
-  * n grenz => hiermit wird die maximale Drehzahl des Motors begrenzt. Diese wird auch unterhalb des „Drehzahl max:​“-Fensters angezeigt und wird in 10/​100-er-Schritten (im Bereich 100-500 in 10-er Schritte, im Bereich 500-20000 100-er Schritte) nach unten verändert. Der Wert der Drehzahlbegrenzung folgt nach oben/unten dem Drehzahl max.–Wert. Um eine Korrektur vorzunehmen kann die Drehzahl max. verändert werden, damit erzwingt man auch die Änderung der Drehzahlbegrenzung. +
- +
-Die Startparameter:​ Startrichtung,​ Freigabe, Bremse, Drehzahlregler,​ Drehzahlsteller , Stromregler,​ Kommutierungsart Block / Sinus und Rotorlagegeber – Umschaltung haben Zustand 0 oder 1, beispielsweise:​ +
-Für die Freigabe: +
-  * 0 => nach dem Einschalten der Elektronik ist der Motor freigegeben und dreht, solange bis der Klemme „Freigabe“ eine Spannung von 5 bis 24V zugeführt wird. +
-  * 1 => nach dem Einschalten der Elektronik ist der Motor nicht freigegeben und dreht nicht, solange bis der Klemme „Freigabe“ eine Spannung von 5 bis 24V zugeführt wird. +
- +
-Für die Bremse: +
-  * 0 => nach dem Einschalten der Elektronik dreht der Motor, solange bis der Klemme „Bremse“ eine Spannung von 5 bis 24V zugeführt wird. +
-  * 1 => nach dem Einschalten der Elektronik bremst der Motor und dreht nicht, solange bis der Klemme „Bremse“ eine Spannung von 5 bis 24V zugeführt wird. +
- +
-Analog sind weitere Parameter zu verstehen. +
-Achtung! Werden beide Funktionen aktiviert (Drehzahlsteller,​ Drehzahlregler),​ wird der Motor logischerweise nicht hochfahren! +
-Des Weiteren, im Bremsbetrieb werden alle 3-Motorwicklungen kurzgeschlossen. Um die thermische Überlastung des Motors und der Elektronik zu vermeiden sollte der Bremsmodus am angetriebenen Motor nicht über längere Zeit aktiviert werden. +
- +
-Alle Werte, wie:  +
-  * Drehzahl max, +
-  * Drehzahl- Kp, Ki Parameter  +
-  * Strom max, +
-  * Motormagnetpole,​ +
-  * Standby, +
-  * Hochlauframpe,​ +
-  * Umschaltpause bei Drehrichtungswechsel,​ +
-  * Winkeloffset links/​rechts,​  +
-  * ... +
-können mit der Kontroll / Steuersoftware unabhängig voneinander eingestellt und im EEPROM-Speicher des Kontrollers dauerhaft abgelegt werden.  +
-Diese Einstellungen werden am laufenden System vorgenommen und können sofort beobachtet werden, damit lässt sich die Elektronik individuell und schnell an unterschiedliche Motoren, sowohl in der Start- ​ wie auch in Betriebcharakteristik anpassen.  +
- +
- +
-======Hardwarebeschreibung====== +
- +
-Die Elektronik hat Hardwareseitig Steuereingänge für: +
-  * Kurzschlussbremse,​ max. 24V (Schaltschwelle > 5V),  +
-  * Freigabe, max. 24V (Schaltschwelle > 5V), +
-  * Drehrichtung,​ max. 24V (Schaltschwelle > 5V), +
-  * Sollwerteingang 0 – 5V, +
-  * Hilfsspannung 12V, 10mA. +
-Sowie Ausgänge für: +
-  * Lüfteranschluss (optional) 24V, 0,5A max. +
-  * Serielle Schnittstelle RS232 +
- +
-Die Elektronik ist gegen Übertemperatur geschützt und die Abschalttemperatur beträgt ca. 118°C an der Endstufe gemessen. +
- +
-Die maximale Rückwärtsspannung beträgt ca.62V, sodass im Falle eines generatorischen Betriebes wird die maximal vom Motor generierte Spannung die  Schwelle (ca. 62V) nicht übersteigen. +
-Für die Verbindung Elektronik mit PC wird ein RS232 Kabel benötigt, 1 zu 1, männlich – weiblich. (Verlängerungskabel). +
-Die Elektronik ist mit 2 LED, rot und grün ausgestattet. +
-Grün ist die Bereitschaft und rot – Info. +
-Die rote LED ist während der Hochlauframpe und in der Strombegrenzung aktiv. +
- +
-====Standby-Betrieb:​==== +
-Standby-Betrieb wird aktiv, wenn die Elektronik keine Änderung im Sollwert und Motorbewegung innerhalb von 1…60 Sekunden registriert.  +
-D.h. wenn innerhalb von 5 Sekunden der Sollwert (Gasgriff) unverändert auf 0 bleibt und gleichzeitig sich der Motor nicht gedreht hat (kein Hall-Wechsel) so schaltet der Kontroller die Endstufen-Fets ab.   ​Gleichzeitig wird die Rekuperation deaktiviert (dabei wird auch die Rekubremse inaktiv) und der Motor läuft frei. +
-In dem Zustand bleibt der Kontroller so lange bis der Sollwert (Gasgriff) verändert wurde. Es ist auch möglich im Standby zu fahren.  +
-Während der Fahrt reicht ein kurzes „Antippen“ des Gasgriffes um den Standby-Modus zu verlassen.  +
- +
-====Hallsensoren:​==== +
-Die Elektronik ist für Motoren konzipiert, die entweder mit analog oder digital-Hallsensoren als Rotorlagegeber ausgestattet sind. Die meisten Motoren arbeiten mit digitalen Hallsensoren,​ die in einer Anordnung 120° oder 60° angebracht sind. +
-Der Kontroller schaltet zwischen beiden Betriebsarten 120°/60° automatisch um.    +
-Bitte beachten, die meisten Motoren werden zwar mit Hallsensoren ausgestattet,​ jedoch entgegen allen Spezifikationen sowie Herstellervorgaben sind diese ohne abblock Kondensatoren (Stützkondensatoren) montiert und angeschlossen. +
-Die Stützkondensatoren sind für die Funktion der Hallsensoren enorm wichtig und haben die Aufgabe die Sensoren im Umschaltmoment mit dem benötigten Strom zu versorgen. ​  +
- +
-Die meisten Kontroller steuern die Motoren trapezförmig an (Blockkommutierung).  +
-Diese Ansteuermethode ist Hard sowie Softwareseitig unempfindlich gegen Störungen durch Fehlschaltung,​ Prellung oder Positioniertolleranz der Hallsensoren. In der Sinuskommutierung werden jedoch sinusförmige Ströme generiert, die in der Amplitude sehr hoch sein können. Diese Ströme erzeugen wiederum Störsignale,​ die sich auf die Hallsensoren übertragen können.  +
-Der Sinusstrom wird in der Software berechnet und generiert. Dies erfordert einen sauberen Hallsignal, möglichst ohne jegliche Störeinflüsse.  +
-Es ist daher ratsam die Kondensatoren nachträglich zu montieren und die Phasenlitzen von Sensorleitungen entweder getrennt zu führen oder sie in einem abgeschirmten Kabel zu verlegen. +
- +
-Fortsetzung folgt...+
  
 +[[:​elektrotechnik:​barmalcontroller:​FOCController|Hier geht's zum FOC Controller]]
elektrotechnik/barmalcontroller.1385312545.txt.gz · Zuletzt geändert: 2019/05/02 18:41 (Externe Bearbeitung)