18.01.2019

Motor Control Platform (MCP) Firmware

Motor Control Platform - MCP

10111001000100010010000100110011 11100001111110101101010101111011
00001110110001100110000100010010 11000110010011101111111001000100
11000110010011111111111001000100 10111001000100010010000100110011

Zahlenketten aus lauter Nullen und Einsen durchströmen die Schaltkreise von Mikrocontroller. Dort werden sie aufgenommen, Berechnungen durchgeführt und Daten ausgegeben. Mikrocontroller (Prozessoren) sind auch in jedem BG Motor mit integrierter Elektronik enthalten. Sie bekommen Informationen von einer Vielzahl von Sensoren und Schnittstellen und berechnen daraus den aktuellen Status des Motors. Dazu zählen neben der aktuellen Position und der Drehzahl auch Informationen wie: „Wird der Motor bei der aktuellen Last bald überhitzen?“, „Hat der zuletzt eingestellte Strom schon zu einer erforderlichen Drehzahländerung geführt?“ oder „Welche digitalen Eingänge sind gerade gesetzt?“.

Kunden von Dunkermotoren wollen sich weder mit diesen Fragen, noch mit irgendwelchen Zahlenketten auseinandersetzen. Sie erwarten, dass sich der Motor dann dreht und Leistung abgibt, wenn es die Maschine, in welcher der Motor eingebaut ist, erfordert. Damit dies gelingt, müssen die Mikrocontroller entsprechend programmiert sein. Je geringer der Aufwand für den Kunden sein soll, desto aufwendiger ist die Programmierung im Innern des Motors. Dunkermotoren hat sich das Ziel gesetzt, den Aufwand beim Kunden so gering wie möglich zu halten. Entsprechend hoch ist dieser in der Software.

Das Software-Programm, das den Motor drehen lässt, seinen Zustand dauerhaft überwacht und Störungen kompensiert oder Meldungen ausgibt, heißt Firmware. Ohne diese eingebettete Software läuft nichts im Motor. Sie ist der Kern, sozusagen der heilige Gral der Motorsteuerung. Entsprechend aufwendig ist deren Programmierung, denn hier darf nichts schieflaufen. Viele Mannjahre Arbeit stecken in einer professionellen Motorfirmware.

Aktuell können mit der Dunkermotoren Firmware etwa 650 verschiedene Motorparameter ausgelesen und / oder eingestellt werden. Das sind z. B. Maximalströme, Referenziermethode, Einstellungen für Absolutwertgeber, PID Tuning-Parameter, um nur ein paar wenige zu nennen, welche für unsere Kunden interessant sind. Intern werden noch deutlich mehr Werte zuverlässig verarbeitet. Dies verdeutlicht, wie aufwendig und komplex eine effektiv arbeitende Firmware sein muss.

Bisher wurde, je nach eingesetztem Motorcontroller, eine eigene, passende Firmware entwickelt. Aufgrund unterschiedlicher Controller musste dieselbe Arbeit mehrfach, für mehrere Hardware-Versionen erfolgen. Dies ist jetzt nicht mehr notwendig. Denn mit der neuen Motor Control Platform (MCP) existiert nur noch einen Software-Kern, der in allen Motoren verwendet werden kann. Wird ein Feature neu entwickelt, profitieren alle auf der MCP basierten Motoren davon.

Die größten Herausforderungen bei der Entwicklung dieser Software waren, dass die Features aller bisherigen Motoren auch in der MCP verfügbar sein mussten. Zudem muss die Firmware fehlerfrei und so flexibel sein, dass sich neue Features problemlos implementieren lassen.

Umgesetzt wurde eine Programmierung nach den strengen MISRA-C Programmier-Richtlinien. Diese Richtlinien werden u. a. für Programmierungen im Flugzeugbau, in der Medizintechnik und im Schienenverkehr eingesetzt. Zudem sind Methoden wie statische Codeanalyse, Code Review, Modul- und Systemtests im Entwicklungsprozess implementiert. Damit wird eine Firmware nach höchsten Qualitätsstandards entwickelt. Diese Firmware wurde modular und objektorientiert, mit exakt definierten Schnittstellen aufgebaut. So lassen sich Erweiterungen problemlos durchführen, ohne Veränderungen am Kern der Software. Mit mindestens 20 Jahren Erfahrung sowohl in der Motor-Software-Entwicklung, als auch mit Kundenapplikationen, konnten bisherige Anforderungen zusammengefasst und effektiv auf MCP Basis neu umgesetzt werden. Um etwaige Entwicklungen an Prozessoren abzufangen, wurde der Programmiercode so umgesetzt, dass er auch auf zukünftige Prozessorgenerationen übertragbar ist.

Für Kunden bleibt es dabei: BG Motoren von Dunkermotoren laufen einfach. Unsere Kunden können über digitale oder analoge Eingänge oder Bus-Schnittstelle entscheiden, wann der Motor dreht und Leistung abgibt, nämlich dann wenn es die Maschine, in welcher der Motor eingebaut ist, erfordert. Gut zu wissen, dass die verwendete Software im Inneren fleißig und unentwegt ihre komplexe Arbeit erledigt und man als Kunde weiß: Dunkermotoren läuft!

Drive Assistant 5 (DA5)

BG Motoren mit integrierter Elektronik werden als intelligent bezeichnet, weil sie selbstständig auf Befehle reagieren, Fehlerzustände erkennen und Informationen über ihren Zustand liefern. Jedoch muss diese Intelligenz gesteuert werden, damit der Motor diese Aufgaben genauso ausführt. Ist dies einmal nicht der Fall, dient eine Computerschnittstelle der Motoren zur Fehleranalyse und Steuerung. Für diese Inbetriebnahme- und Servicefunktionen wird ein Computerprogramm benötigt, das mit dem Motor kommuniziert.

Bei Dunkermotoren stehen hierfür die Programme „Drive Assistant“ und „SI Konfigurator“ zur Verfügung. Mit dem „SI Konfigurator“ können einfach und intuitiv SI Motoren eingestellt werden, z. B. Festdrehzahlen oder Beschleunigungsrampen. Vom Drive Assistant gibt es bisher mehrere Versionen: Mit dem Drive Assistant 2.7 können CANopen (CI) Motoren komfortabel eingestellt und analysiert werden. Mit dem Drive Assistant 3.3 werden parametrierbare (PI) Motoren so eingestellt, dass sie danach ohne übergeordnete Steuerung positionieren, Drehzahl regeln oder über Stromregelung betrieben werden können. Darüber hinaus gibt es für BG 95 dPro CO Motoren und einige CI Motoren den Drive Assistant 2.16 mit Tuning, Analyse und Python-Script Funktion.

Alle Programme funktionieren einwandfrei und werden von Kunden sehr geschätzt. Warum aber kann nicht ein einziges Programm alle Motoren einstellen und analysieren? Das hängt u. a. mit den unterschiedlichen Elektroniken der heutigen Motoren zusammen. Mit der Motor Control Platform (MCP) wird dieses Problem beseitigt. Die in den unterschiedlichen Motoren eingesetzten Prozessoren und die neue Firmware funktionieren im Kern identisch. Deshalb wird zukünftig auch nur noch ein einziges Tool für die Inbetriebnahme und Service benötigt.

Für alle MCP Motoren wurde eine komplett neue Version des Drive Assistant entwickelt: Drive Assistant 5. Diese Version kann für alle neuen Motoren eingesetzt werden, egal ob für den einfachen dMove oder den dPro, der für anspruchsvolle Aufgaben entwickelt wurde. Kunden können damit sowohl Motoren mit Busschnittstelle komfortabel einrichten (z. B. CANopen, Profinet, …) als auch Stand-alone-Motoren (ähnlich wie die heutigen SI, PI und MI Motoren). Im Stand-alone Betrieb werden diese einmalig eingerichtet und reagieren danach selbstständig auf digitale und analoge Eingangssignale und geben über digitale Ausgänge Informationen zum Betrieb und bei Störungen aus.

Der Drive Assistant 5 wurde komplett neu entwickelt und ist damit „aus einem Guss“. Dies wirkt sich auf die Installationszeit aus, die stark reduziert wurde. Zudem ist die Dauer der Datenübertragung für die Parametrierung deutlich kürzer. Das liegt hauptsächlich an den bereits im MCP Motor integrierten Positionier-, Drehzahl- und Strommodule (Quickstart Plus). Somit müssen nur wenige Informationen übertragen werden.

Auch das Design des Drive Assistant wurde neu gestaltet. Wo sinnvoll, wurde eine grafische Ansicht ergänzt. Fenster können je nach Bedarf ein- und ausgeblendet werden, damit nur die Informationen angezeigt, die auch tatsächlich gerade benötigt werden. Damit die Bedienung auch intuitiv gelingt und ohne, ständiges Nachsehen in der Dokumentation, werden an entsprechenden Feldern Zusatzinformationen eingeblendet.

Wie auch die MCP-Firmware selbst, wurde auch die Software Drive Assistant 5 modular aufgebaut, sodass Erweiterungen jederzeit möglich sind. Damit können zukünftig Funktionen wie Predictive Maintenance, Datenanalyse oder Auto-Tuning jederzeit in den Drive Assistant eingebunden werden.

Infobox Drive Assistant:

Drive Assistant heute

Drive Assistant 5

Mehrere unterschiedliche Versionen

Eine einzige Version für alle Motoren

Kommunikation nur über CANopen

Kommunikation über CANopen, RS 485, Ethernet

Hochladen der Parametrierung dauert mehrere Sekunden

Hochladen der Parametrierung dauert ca. 1 Sekunde

Feste Zuordnung der digitalen Ein- und Ausgänge

Flexible Zuordnung der digitalen Ein- und Ausgänge

Zahlenorientiertes Design

Grafisch orientiertes Design

 

Flexible Software

Flexibilität wird bei Kunden immer größer geschrieben. Das Stichwort „mass customization“ ist in aller Munde. Eine Mischung aus „Massenproduktion“ und „Maßanfertigung“ (customization). Die Fertigung muss zunehmend flexibler, da die Produkte immer individueller werden. Vermehrt führen Antriebe über den gesamten Produktlebenszyklus nicht nur eine Funktion aus, sondern sollen bei der Herstellung unterschiedlicher Produkte auch flexibel andere Bewegungsabläufe ausführen können.

Entsprechend flexibel muss die Software sein. Schon zu Anfangszeiten der intelligenten Motoren hatten diese eine Schnittstelle zu einem übergeordneten Computer. Damit konnte der Motor unterschiedlichste Befehle ausführen, die er von einer zentralen Intelligenz, z. B. einer Maschinensteuerung, erhalten hat. Diese zentrale Intelligenz war flexibel und konnte unterschiedlichste Bewegungsabläufe ausführen.

Inzwischen verfügen Motoren über ihre eigene Intelligenz und auf eine übergeordnete Steuerung kann komplett verzichtet werden. Diese Intelligenz und damit die Flexibilität sind auf die Software zurückzuführen, die im Motor integriert ist. Dunkermotoren hat im Zuge der Umstellung auf die MCP besonderen Wert auf Flexibilität gelegt. Sie ermöglicht, dass Motoren völlig unterschiedlich programmiert und jederzeit auf neue Bedürfnisse angepasst werden können. Ein angenehmer Nebeneffekt sind geringere Lagerhaltungskosten. Servicetechniker müssen weniger Material bereithalten, weil die Motoren keine starre Funktionszuordnung haben, sondern erst bei der Inbetriebnahme eine Funktion zugewiesen bekommen. Ein Motor kann für unterschiedlichste Anwendungen eingestellt werden. Doch was macht die Motoren so flexibel?

Die Flexibilität beruht zum einen auf der modular aufgebauten Firmware, die Erweiterungen problemlos zulässt. Zum anderen wurden zwei neue Features eingeführt: Quickstart Plus und freie Programmierung von MotionApps. Damit können von einfachen Anpassungen der Parameter bis hin zu völlig autonom ablaufenden Programmen mit SPS-Funktionen umgesetzt werden.

Quickstart Plus

Ist es nicht super bequem, einen Schalter einzuschalten und der Motor läuft, geregelt, mit einer konstanten Drehzahl? Eine weitere Festdrehzahl wird mit einem anderen Schalter eingestellt. Bei Bedarf kann auch über eine analoge Spannung die Drehzahl vorgegeben werden. So funktioniert heute eines der erfolgreichsten Produkte bei Dunkermotoren, der SI Motor. Viele hunderttausend dieser Motoren treiben bereits Kundenapplikationen an.

Selbstverständlich bedient Dunkermotoren auch Wünsche, die vom Standard abweichen. Das sind beispielsweise mehr als zwei Festdrehzahlen, digitale Ausgänge, die bei einer Kombination von Ereignissen schalten, oder die kundenspezifische Zuordnung von digitalen Eingängen zu bestimmten Funktionen. Dafür waren bisher entweder Firmware-Anpassungen notwendig oder es wurden Motoren mit leistungsfähigeren Prozessoren eingesetzt, beispielsweise PI oder MI Motoren.

Mit der MCP wurde die Quickstart Plus-Funktion für dMove und dPro Motoren eingeführt, die es Kunden erlaubt, solche Anpassungen selbst durchzuführen. Digitalen Eingängen können frei Funktionen zugeordnet werden. So kann einer Kombination von digitalen Eingängen eine Festdrehzahl zugeordnet werden, der nächsten Kombination eine Position, einer weiteren Kombination ein Maximalstrom, der damit das Drehmoment des Motors begrenzt. So sind mit einem einfachen und sehr kostengünstigen Motor standardmäßig Funktionen möglich, die bisher nur programmierbaren Motoren von Dunkermotoren vorenthalten waren.

Beispiel: Um Gussteile in einer Gießerei anzuheben, wird ein BG Motor über digitale Eingänge im Drehzahlmodus gestartet. Eine damit angetriebene Seilwinde wickelt so lange ein Stahlseil mit Haken ab, bis der Haken am Gussteil festgemacht werden kann. Wenn der Haken befestigt ist, wird das Seil im Stromregelmodus mit einer bestimmten Kraft angezogen, die genau so eingestellt ist, dass das Gussteil noch am Boden steht, das Seil aber straff gespannt ist. Jetzt kann überprüft werden, ob der Haken auch wirklich fest sitzt, ohne dass das Gussteil angehoben wird. Danach kann mit einer weiteren digitalen Eingangskombination eine relative Positionierung ausgelöst werden, die das Gussteil in eine definierte Höhe hebt.

Diese komplexe Funktion wäre in der Vergangenheit nur mit einem speziell programmierten Motor möglich gewesen. Mit Quickstart Plus ist dies schon mit dem einfachsten geregelten BG Motor standardmäßig möglich. Eingestellt werden die Parameter und die Zuordnung bei der Inbetriebnahme und Service Software Drive Assistant 5.

Nicht nur die Eingänge können frei konfiguriert werden, sondern auch die Ausgänge. Es gibt eine Vielzahl von Abweichungen vom Normalbetrieb, z. B. „Spitzenstrom überschritten“, „Schleppfehler“, „Übertemperatur“, „Unterspannung“. Nicht in jeder Anwendung müssen alle diese Zustände auch angezeigt werden. Wenn beispielsweise bewusst die Leistungsspannung eines Motors abgeschaltet wird, soll die erkannte Unterspannung nicht als Fehler interpretiert werden. Mit Quickstart Plus, einer neuen Standardfunktion, kann frei gewählt werden, welche Zustände als Fehler nach außen gegeben werden und welche nicht. Die Fehlermeldung kann dann auf beliebige digitale Ausgänge gelegt werden.

Quickstart Plus macht schon die einfachsten Motoren (dMove) sehr flexibel. Wird noch mehr Flexibilität benötigt, oder soll der Motor komplette Aufgaben autonom ausführen, dienen MotionApps der richtigen Programmierung.

Motion Apps

MotionApps sind für Motoren-Programmierer wie Fäustel und Meißel für Steinmetze. Mit MotionApps lassen sich Funktionen von Motoren komplett individuell gestalten. Soll der Motor einfach nur nach jeder vollen Stunde 4,5 Umdrehungen gegen den Uhrzeigersinn drehen? Soll er aus Gewicht, Länge und Geschwindigkeit eines Gegenstandes ein Bremsprofil berechnen, sodass der Gegenstand genau mittig auf einem angetriebenen Band zum Stehen kommt? Soll er eine komplette Verpackungsstation inklusive einiger Sensoren, Bänder und anderer Hilfsmotoren steuern? Das ist alles möglich mit MotionApps.

MotionApps sind Motor-Ablaufprogramme, die ein Programmierer für bestimmte Kundenanwendungen schreibt. Dabei kann er auf einen riesigen Vorrat von Motorparametern, Rechenfunktionen und logischen Verkettungen zurückgreifen. Er kann Ablaufschleifen programmieren, die unter bestimmten Bedingungen unterbrochen werden, Tabellen definieren, die angeben, welche Aktion unter welchen Bedingungen durchgeführt werden sollen, oder Befehle an andere Geräte schicken und Rückmeldung von diesen Geräten erhalten.

Bei so viel Programmierfreiheit können auch Fehler passieren. So kann der Motor auf einmal stehen bleiben oder unvermittelt die Drehzahl ändern, wenn der Programmierer dies nicht erwartet. Ein sogenannter „Bug“ (Fehler), hat sich dann in das Ablaufprogramm eingeschlichen. Daher bietet die Entwicklungsumgebung, in der die MotionApps geschrieben werden, ein sogenanntes „Debugging-Tool“. Damit kann das Ablaufprogramm an jeder beliebigen Stelle gestoppt und die Parameter ausgelesen werden. So können Fehler komfortabel und sehr schnell gefunden und behoben werden. Auch wenn viele BG Motoren mit integrierter Elektronik nach über 20 Jahren optisch heute noch fast gleich aussehen, ist das Innenleben nicht mehr wiederzuerkennen. Neben einer völlig neuen Elektronik mit leistungsfähigem Prozessor beinhalten die Motoren Softwarefunktionen, die vor 20 Jahren noch nicht einmal denkbar gewesen wären.



Ihr Kontakt für Public Relations

Janina Dietsche
Marketing

Dunkermotoren GmbH
Allmendstr. 11
79848 Bonndorf, Germany

Tel. +49 7703 930 - 546
Fax +49 7703 930 - 102
Janina.Dietsche-DIESEN TEXT ENTFERNEN-@ametek.com

Aufnahme in den Presseverteiler

Seite teilen:

AGB  |   Datenschutz  |   Sitemap  |   Impressum  |   Disclaimer  |   Unsubscribe

© 2019 / Dunkermotoren GmbH