balancierender roboter (EV3, RobotC)

NXC, C/C++, Lejos, pbLua, RobotC...

Moderator: Moderatoren

Omega
Mindstormsfreund
Mindstormsfreund
Beiträge: 4
Registriert: 9. Feb 2017 10:52

balancierender roboter (EV3, RobotC)

Beitragvon Omega » 12. Feb 2017 12:29

Hi,
das Balancieren eines Roboters gehört eher zu den anspruchsvolleren regelungstechnischen Aufgaben. Das original Lego Beispiel (education set) verwendet einen eher einfachen Ansatz. Eine lineare Kombination der Parameter Roboter Geschwindigkeit/Position und Gyrometer Winkelgeschwindigkeit/Winkel wird direkt zu Regulation verwendet (also ein reiner P-Regler). Diese Lösung ist nicht sonderlich 'elegant' und auch eher empfindlich (Kalibrierung, physikalische Umgebungsbedingungen, ...)
Laurens 'robotsquare.com' hat diese Idee um einen PID Regler erweitert. Das erhöht die Leistung deutlich. Laurens verwendet die selbe lineare Kombination. Daraus ergeben sich diverse Einschränkungen.
Unter https://github.com/OmegaTom/LineBalancer könnt Ihr einen robotC code herunterladen, der einen erweiterten Ansatz verfolgt. Grob erklärt werden hier 4 parallele PID controller (inkl. setpoint weighting, anti-windup und 'derivative filtering') verwendet um die genannten Parameter 'getrennt' zu regeln. Eine genauerer Erklärung findet Ihr unter github ... (allerdings in Englisch)
Zudem habe ich zu Testzwecken einen 'lineFollower', 'IR remote control', ... implementiert. Eine Roboterarm-Steuerung ist auch dabei, um veränderte physikalische Bedingungen testen zu können...

siehe auch https://youtu.be/GFn5yuKCs_I

viel Spaß beim Testen und verbessern (da gibt es recht viel 'Spielraum' bei den PID Parametern)

Omega
Mindstormsfreund
Mindstormsfreund
Beiträge: 4
Registriert: 9. Feb 2017 10:52

Re: balancierender roboter (EV3, RobotC)

Beitragvon Omega » 12. Feb 2017 16:36

signifikanter Lastenwechsel : https://youtu.be/Qtc4vbvJ-oA

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5386
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: balancierender roboter (EV3, RobotC)

Beitragvon HaWe » 12. Feb 2017 18:19

hallo,
herzlich willkommen hier im Forum!
Ein tolles Projekt, und auch wirklich sehr anschauliche und auch sehr eindrucksvolle Videos dazu - danke fürs Einstellen hier !
Ich wünsche dir viel Erfolg mit deinen Projekten und hoffe, dass wir doch sicher bald auch noch mehr von dir sehen, hören und lesen!
8-)
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Omega
Mindstormsfreund
Mindstormsfreund
Beiträge: 4
Registriert: 9. Feb 2017 10:52

Re: balancierender roboter (EV3, RobotC)

Beitragvon Omega » 14. Feb 2017 18:56

Danke für die nette Begrüßung !!! ... ich werd' mich bemühen ;)

Omega
Mindstormsfreund
Mindstormsfreund
Beiträge: 4
Registriert: 9. Feb 2017 10:52

Re: balancierender roboter (EV3, RobotC)

Beitragvon Omega » 15. Mär 2017 20:12

ein neues Projekt ...

https://www.youtube.com/watch?v=KPKlMlJ5BVk
https://github.com/OmegaTom/BallBalancer

da ist noch viel Spielraum für Optimierungen ... falls wer Zeit hat ;)

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5386
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: balancierender roboter (EV3, RobotC)

Beitragvon HaWe » 15. Mär 2017 22:12

super, wirklich gut! :prima:
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E


Zurück zu „textbasierte Programmiersoftware“

Wer ist online?

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

Lego Mindstorms EV3, NXT und RCX Forum : Haftungsauschluss