Share this

PMAC-basiertes offenes Robotersteuerungssystem

2026-02-21 14:18:28 · · #1
Diese Arbeit beschreibt ein offenes Robotersteuerungssystem auf Basis eines programmierbaren Mehrachsen-Controllers (PMAC) mit IPC+DSP als Steuerung für einen sechsachsigen Industrieroboter. Die Gesamtstruktur sowie die Software- und Hardwarekomponenten des Steuerungssystems werden kurz vorgestellt. Das Robotersteuerungssystem ist ein typisches Echtzeit-Bewegungssteuerungssystem für mehrere Achsen. Traditionelle Robotersteuerungssysteme werden im Wesentlichen von Entwicklern basierend auf ihren eigenen, unabhängigen Strukturen und Produktionszwecken entwickelt und verwenden eine geschlossene Architektur mit dedizierten Computern, dedizierten Robotersprachen, dedizierten Betriebssystemen und dedizierten Mikroprozessoren. Diese Art von Steuerung weist eine Reihe von Nachteilen auf, darunter hohe Herstellungs- und Betriebskosten, lange Entwicklungszyklen, Schwierigkeiten bei der Aktualisierung und dem Austausch sowie die Unfähigkeit, neue Systemfunktionen hinzuzufügen. Diese Arbeit stellt ein Robotersteuerungssystem mit offener Struktur vor, das auf einer PMAC-Bewegungssteuerungskarte basiert und den Roboter mit einer IPC+DSP-Architektur steuert. Dieses Robotersteuerungssystem verwendet eine offene Hardware- und Softwarestruktur, die eine einfache Funktionserweiterung nach Bedarf ermöglicht und sich an verschiedene Robotertypen oder automatisierte Roboterproduktionslinien anpassen lässt. Es nutzt mehrere hierarchische Mikrocomputer-Steuerungsmethoden und zeichnet sich durch hohe Offenheit und Skalierbarkeit aus. 1. Hardware-Zusammensetzung des Robotersteuerungssystems Ein offenes Robotersystem sollte konzeptionell auf einer gemeinsamen Plattform (z. B. Windows) basieren. Windows weist jedoch eine geringe Echtzeitfähigkeit auf, wodurch es schwierig ist, einen Berechnungszyklus innerhalb des Millisekundenbereichs des Servosteuerungszyklus zu gewährleisten. Um dieses Problem zu lösen, ist eine schnelle DSP-Bewegungssteuerungskarte erforderlich, die es Windows ermöglicht, langsamere Aufgaben zu übernehmen, während die Bewegungssteuerungskarte die schnelle Servosteuerung übernimmt. In diesem Beitrag wird eine PMAC-Mehrachsen-Bewegungssteuerungskarte mit Dual-Port-RAM verwendet. Der Dual-Port-RAM dient als Hochgeschwindigkeitspuffer zwischen Windows und PMAC und lädt Trajektorieninterpolationsdaten aus dem IPC-Speicher auf den PMAC oder übermittelt Sensorinformationen für jede Gelenkposition und den Gesamtstatus des Servosystems an Windows. Basierend auf der obigen Analyse und dem grundlegenden Designkonzept eines offenen Robotercontrollers wurde ein Robotersteuerungssystem gemäß Abbildung 1 entwickelt. [align=center] Abbildung 1 Gesamtstruktur[/align] Es wird ein hierarchisches Steuerungsverfahren mit mehreren Mikrocomputern eingesetzt. Der übergeordnete IPC ist für die Gesamtsystemverwaltung und Bahnplanung zuständig, während der untergeordnete PMAC die Servosteuerung der einzelnen Gelenke implementiert. 1.1 Merkmale der PMAC-Mehrachsen-Bewegungssteuerungskarte: PMAC ist ein offener, programmierbarer Mehrachsen-Bewegungscontroller, der gemäß dem Standard für offene Systemarchitekturen entwickelt wurde. Er verwendet einen Motorola DSP56001 Digitalsignalprozessor als CPU und nutzt dessen hohe Rechenleistung für die Echtzeit-Servosteuerung von 1 bis 8 Achsen. In vielen Anwendungen fungiert PMAC als Computer, der mehrere Aufgaben gleichzeitig ausführen und priorisieren kann. Dadurch wird die Belastung des Host-Computers hinsichtlich Verarbeitungszeit und Komplexität des Aufgabenwechsels reduziert. PMAC ist mit verschiedenen Hardware-Betriebssystemen kompatibel, kommuniziert über verschiedene Busse oder serielle Schnittstellen mit dem Host-Computer, ist für alle Motoren geeignet und kann entsprechende Steuersignale für verschiedene Motoren bereitstellen. Der standardmäßige PMAC-Bewegungsregler bietet eine PID-Regelung mit Drehzahl- und Beschleunigungsvorsteuerung sowie einen Stufenfilter (5–500 Hz) zur Positionsregelung. 1.2 Bewegungsservosystem: Der Gelenkaktuator des Roboters verwendet permanentmagneterregte Synchron-Servomotoren der MSMA-Serie von Panasonic mit geringer Massenträgheit. Die Servomotoren sind koaxial mit Drehwinkelsensoren montiert und liefern Inkrementalgebersignale mit einer Auflösung von 2500 Impulsen pro Umdrehung. Mittels Drehzahlregelung realisiert das Servosystem zwei Regelkreise: Drehmoment (Strom) und Drehzahl. Das AC-Servosystem verwendet einen Proportionalregler für die Stromregelung, während für die Drehzahlregelung ein PII-Regler zum Einsatz kommt. Diese Motoren zeichnen sich durch hervorragende Drehzahlregelungseigenschaften aus und ermöglichen eine gleichmäßige Regelung mit praktisch keiner Schwingung. 2. Anschluss und Inbetriebnahme des Steuerungssystems: Dieses Steuerungssystem verwendet AC-Servoantriebe und Servomotoren von Panasonic. Der Motor-Encoder und der Antrieb sind über einen CN-SIG-Stecker verbunden, der CN-1/F-Stecker des Antriebs ist mit dem PMAC verbunden. Es wird eine Drehzahlregelung eingesetzt. Die vom Antrieb und PMAC verwendeten Signalverbindungen umfassen daher im Wesentlichen: Differenzeingangssignal des Encoders, Drehzahl-Befehlseingang, analoge und digitale Masse, Servofreigabe, Servoalarm und Sicherheitsbegrenzung. Beim gesamten Anschlussprozess ist besonderes Augenmerk auf die Verwendung eines geschirmten, verdrillten Adernpaarkabels für die Encoder-Signalübertragung zu legen, da dies einen erheblichen Einfluss auf die Stabilität, die Störfestigkeit und die Signalübertragung des Gesamtsystems hat. 2.1 Nullpunktkorrektur im offenen Regelkreis: Dieses System verwendet eine PMAC-Karte vom Typ 1, die ein 16-Bit-Analogsignal für die Drehzahlspannung ausgibt. Die Nullpunktkorrektur kann sowohl über den Treiber als auch über die PMAC-Karte erfolgen. Da der Abstand zwischen dem Rückkopplungskabel des Roboter-Encoders und dem Stromkabel begrenzt ist, kommt es zwangsläufig zu elektromagnetischen Störungen durch das Stromkabel. Daher arbeitet jeder Motor im eingeschalteten Zustand des Roboters im offenen Regelkreis, und es kann zu leichten Fehlausrichtungen der Gelenke kommen. Um die dynamische Bremse des Motors zu lösen oder zu deaktivieren, muss der Ein-/Aus-Zustand der Treiberanschlüsse SRV-ON und COM- gesteuert werden. Dadurch wird der Stromfluss zum Motor reguliert und die Drift der einzelnen Gelenke eliminiert (siehe Abbildung 2). [align=center] Abbildung 2: Schematische Darstellung der Gelenkdriftregelung im offenen Regelkreis. Abbildung 3: Schematisches Blockdiagramm des Einzelgelenkbetriebs.[/align] 2.2 Anpassung der PID-Parameter im geschlossenen Positionsregelkreis . Abbildung 3 zeigt das Blockdiagramm eines Einzelgelenks im geschlossenen Positionsregelkreis. Zunächst sendet der Computer die Zielposition in absoluten oder relativen Koordinaten an den Bewegungsregler und anschließend den Startbefehl. Nach Empfang des Befehls berechnet der Regler die Bewegungstrajektorie anhand der aktuellen Beschleunigungs- und Geschwindigkeitseinstellungen und liefert die zu jedem Zeitpunkt anzustrebenden Idealpositionskoordinaten. Der PID-Regler sorgt dafür, dass die Ist-Position der Idealposition folgt, bis diese erreicht oder durch einen neuen Zielwert und einen neuen Startbefehl vom Computer aktualisiert wird. Die PID-Regelung ist eine optimale Regelungsstrategie, bei der die Eingangsgröße e(k) und die Ausgangsgröße u(k) proportional, integral bzw. differenziell sind. Der PMAC-Bewegungsregler bietet einen PID-Regler und einen Vorsteuerungsfilter für die Positionsregelung. Um eine hohe Steifigkeit, Stabilität und geringe Nachführfehler in den Servocharakteristiken des Systems zu erreichen, müssen die PID-Parameter angepasst werden. PMAC stellt die Software PmacTuningPro zur Anpassung der PID-Parameter bereit. Durch die Erfassung verschiedener Antwortkennlinien des Systems können die Proportional-, Integral- und Differenzialparameter so verändert werden, dass die besten stationären Regelcharakteristiken erzielt werden. Die Vorsteuerungsverstärkungen für Geschwindigkeit und Beschleunigung können angepasst werden, um den Nachführfehler zu minimieren. Ein typischer Positionsregelungsprozess ist in Abbildung 4 dargestellt. [align=center]Abbildung 4: Sprungantwortkurve des geschlossenen Regelkreises für die Position des Hüftgelenks. Abbildung 5: Sicherheitsfunktionen[/align] 2.3 Sicherheitsfunktionen. Während des Roboterbetriebs können Fehler in der Bewegungsprogrammierung oder andere Ursachen dazu führen, dass Gelenke ihren Bewegungsspielraum überschreiten. Dies ist gefährlich und kann zu Motorüberdrehzahl oder -schäden führen. Daher müssen an jedem Gelenk Endschalter und eine Alarmverarbeitung installiert werden. PMAC hat für jeden Kanal einen positiven Endschalter (LIM+), einen negativen Endschalter (LIM-) und ein Alarmsignal (FAULT) zum Schutz vor Fehlern vorgesehen. Diese Eingänge sind optoisoliert zwischen digitalen und analogen Signalen. Wenn der positive Endschalter (LIM+), der negative Endschalter (LIM-) und das Alarmsignal (FAULT) mit analoger Masse verbunden sind, geht PMAC von einem normalen Betriebszustand aus. Werden sie jedoch von analoger Masse getrennt, geht PMAC davon aus, dass der Endschalter erreicht wurde oder ein Fehler aufgetreten ist, und stoppt den DAC-Ausgang, wodurch der Motor angehalten wird. 2.4 Implementierung der Nullpunktrückführung Damit sich der Roboter präzise im Raum positionieren kann, muss zunächst der Nullpunkt jedes Gelenks bestimmt werden. Die kleinen Trägheitsmotoren von Panasonic verwenden jedoch Inkrementalgeber und verfügen nicht über eine Speicherfunktion. Daher muss der Nullpunkt des Roboters beim Einschalten ermittelt werden. Je nach Anwendungsanforderungen werden Endschalter verwendet, um in die Nullposition zurückzukehren. Der Motor kann zunächst in eine Richtung bis zu einem Endschalter bewegt und anschließend in die entgegengesetzte Richtung um den Abstand vom Endschalter zum festgelegten Nullpunkt versetzt werden. Die aktuelle Position wird schließlich als Nullpunkt festgelegt. 2.5 Ansteuerung des Greifer-Schrittmotors Der Endeffektor des Roboters verwendet einen Schrittmotor zum Öffnen und Schließen des Greifers. Die PMAC-Karte Typ 1 verfügt jedoch nur über einen analogen Ausgang und kann den Schrittmotor nicht direkt ansteuern. Darüber hinaus muss die Greiferbewegung mit den Bewegungen anderer Achsen koordiniert werden. Über den digitalen I/OJ5-Port der PMAC kann ein Impulssignal gesendet werden, das nach der optischen Trennung den Greifer-Schrittmotor ansteuert. Das Ablaufdiagramm des SPS-Programms ist in Abbildung 6 dargestellt. [align=center] Abbildung 6: Ablaufdiagramm der Greifersteuerung Abbildung 7: Entwurf der Steuerungssoftware[/align] 3. Entwurf der Systemsoftware Die Systemsoftware ist modular aufgebaut und in einen Host-Computer und eine Servosteuerungssoftware unterteilt. Der Host-Rechner wurde in einer höheren Programmiersprache mit benutzerfreundlicher Oberfläche entwickelt und dient primär Managementmodulen wie Bewegungsbahnplanung, Roboterdynamikanalyse, Bewegungssimulation und intelligenter Algorithmenverarbeitung. Der Slave-Rechner nutzt die hohe Rechengeschwindigkeit des DSP des PMAC für schnelle Servo-Interpolationsberechnungen und die Servo-Bewegungssteuerung. Abbildung 7 zeigt die modulare Softwarestruktur des Systems. Die von DeltaTau bereitgestellte Pcomm32-Kommunikationstreiberbibliothek dient als Kommunikationsschnittstelle zwischen Windows und PMAC. Ein Interrupt-Mechanismus wird für Echtzeitaufgaben wie Servo-Steuerung, Bahninterpolation und Geschwindigkeitsverarbeitung eingesetzt. Nach dem Löschen des Puffers sendet der PMAC ein Interrupt-Signal. Nach Empfang dieses Signals führt der Host die Bahnplanung für das folgende Bahnsegment durch und schreibt die berechneten neuen Steuerdaten in den DPRAM. Anschließend liest der PMAC die Daten aus dem DPRAM und sendet sie an den Servo-Treiber, um die Steuerung jedes Robotergelenks abzuschließen. 4. Fazit: Dieser Beitrag stellt ein Servo-Steuerungssystem für einen Industrieroboter vor. Die Betriebsergebnisse zeigen, dass dieses Drei-Regelkreis-System für Drehmoment, Drehzahl und Position die Anforderungen an die Robotersteuerung erfüllt und reibungslos funktioniert. Die mehrschichtige Systemarchitektur verbessert die Systemeffizienz deutlich, während der modulare Softwareaufbau hohe Portabilität, Skalierbarkeit und Offenheit gewährleistet.
Read next

Automatische Rohölmessung mittels SPS + IPC

[Zusammenfassung] Dieser Artikel beschreibt das Funktionsprinzip und den Prozess der automatischen Rohölmessung mittels ...

Articles 2026-02-20