PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Steuerung Roboter



nelg23
01.05.2017, 20:54
Hallo Leute,

bin neu hier und weiß jetzt deswegen nicht so richtig ob ich 100%ig hier richtig bin aber ich probiers mal ^^
Falls meine Frage schon mal getstellt/beantwortet wurde, verzeiht mir bitte :)

Kurz zu mir: bin Student im 4. Semester und ich soll nun zusammen mit 8 anderen Leuten nen Roboter bauen.
Was er grob können soll:
a) Selbstständig fahren ohne an Wände zu stoßen (Abstandsmessung mittels Infrarotsensor hatten wir jetzt gedacht)
b) schwarze von weißen Bällen unterscheiden und
c) Bälle im Spielfeld aufsammeln und in die andere Feldhälfte rüberschießen

Da ich das bisher noch nie wirklich gemacht habe, wollte ich mich mal hier schlau machen:
(Habe in der Oberstufe im P-Seminar ein Katapult gebaut, von da aus kann man das nicht wirklich als Roboter bezeichen :D)



Was ist bei der Schaltung für die Steuerung der Komponenten (Sensoren, Motoren etc.) zu beachten?
Bzw wie muss ich die Schaltung konzipieren, damit ich mit nem Sensor weiße von schwarzen Bällen unterscheiden kann?
Haben lustigerweise Sensorik, Aktorik u.Ä. erst nächstes Semester, müssen aber dieses schon nen Roboter bauen
(was ich eigentlich ganz interessant finde). Egal, wie auch immer.

Hab schon bisschen recherchiert, hab bisher aber nur ne H-Brückenschaltung für die Ansteuerung von Elektromotoren gefunden...
Soweit so gut -

Sind uns im Moment nicht sicher, ob wir zur Steuerung nen ATMega oder nen Arduino verwenden - das was ich bisher an Robotervideos in YouTube etc. gesehen habe, ist da der Verkabelungsaufwand nicht so hoch - da wird n Motor an den Mikrocontroller angeschlossen und das wars.

Wir hatten vorletztes Semester µC-Programmierung, da hatten wir so n kleines Board mit LEDs, Potis, nen Photowiderstand, ner 7-Segment-Anzeige und Tastern. In der Schaltung waren etliche Bauelemente drin wie Elkos, Widerstände, Transistoren und und und... :/

Ich bin in unserem Team im Moment für das Grundgerüst (Platine etc.), die Mechanik des Roboters (Fahrgestell, Transportsystem) und dessen Energieversorgung zuständig.

Wie könnte ich nun ne Steuerschaltung entwickeln? :(
Bzw wie habe ich denn die an die einzelnen Pins vom µC zu verkabeln?

Muss noch zugeben, dass ich mich damals mit Systemprogrammierung SEHR schwer getan habe.
(Sind eigentlich alle Elemente wie Sensoren, Motoren mit ALLEN µC kompatibel?)

Wenn ich ganz ehrlich bin, weiß ich nicht wirklich wo ich anfangen soll :/
Hab zwar schon einiges zur Mechanik und zur Energieversorgung gemacht/vorbereitet/recherchiert (tue mich mit Elektrik und Mechanik um EINIGES leichter als mit Programmierung), aber bei der Steuerung muss ich zugeben guck ich grad ein wenig dumm aus der Wäsche. :/

Bin euch für jeden Rat dankbar! :-)

Gruß

i_make_it
02.05.2017, 06:32
Hallo,

hört sich nach Robocup (Robot Soccer World Cup) an.
Und da nach "Small Size Robot League".
http://www.unimatrix-fulda.de/index.php?id=144
Die Liga gibt es jetzt seit 20 Jahren.

Bzw.: nach "RoboCup Junior Soccer".
https://www.robocupgermanopen.de/de/junior/soccer
Da dort die Zielgruppe Schüler ab 10 Jahren sind, dürfte für 4 Semester wohl "Small Size Robot League" das Ziel sein.

Eine der Haupt Aufgabenstellung, dürfte wohl genau das 10 Minuten Google bemühen sein, das ich grade gemacht habe um die Links unten zu erhalten.
http://lueginger.eu/tl_files/diplomarbeit/DA_Lueginger.pdf
http://users.informatik.haw-hamburg.de/~kvl/manger/diplom.pdf
https://online.tugraz.at/tug_online/wbAbs.showThesis?pThesisNr=30337&pOrgNr=37&pPersNr=669

http://subs.emis.de/LNI/Proceedings/Proceedings67/GI-Proceedings.67-36.pdf

Hier dürften genug Schlagworte und Links drin sein, um selbst weiterzusuchen.



(Sind eigentlich alle Elemente wie Sensoren, Motoren mit ALLEN µC kompatibel?)


Denk mal scharf nach.
3,3V, 5V, 10-35V, +-12V(15V), Analogsignal, Digital-Schaltsignal, serielle Komunikation, Busprotokolle, positiv/negativ Logik, Schaltschwellen/Signalpegel, Stromaufnahme um nur mal ein paar Schlagworte in den Raum zu werfen.
Es gibt (sollte) von allem Datenblätter da seht drin was ein Bauteil/Baugruppe/System verträgt und liefert.



Wie könnte ich nun ne Steuerschaltung entwickeln?


Top-Down (Deduktion)!
https://de.wikipedia.org/wiki/Top-down_und_Bottom-up
https://de.wikipedia.org/wiki/Deduktion

Wenn Ihr zu neunt seid, würde ich mal ein Brainstorming vorschlagen und dies dokumentieren.
Denn alle Anderen müssen ja mit der Designentscheidung dann leben (weiterarbeiten).

nelg23
02.05.2017, 08:08
Hi, i_make_it,
Dankeschön schon mal, wusste nicht dass es so ne "Robo Liga" gibt, aber großes Dankeschön schon mal für die Hinweise/für die Links! Werde ich mir auf jeden Fall angucken! :)

P.S.: Kompabilität von Sensoren etc.: bin da im Netz einfach drüber gestolpert dass einfach gewisse Teile als "ATMega-komp." bzw "Arduino-Komp." beschrieben werden - das mag jetzt vielleicht ne dumme Frage sein, aber kann man wirklich ALLE Sensoren/Motoren per Mikrocontroller ansteueren?

Ceos
02.05.2017, 09:04
ich denke mal dass sich diese "Kompatibilität" wohl eher auf die Versorgungsspannung bezieht. Soweit mir bekannt ist gibt es Arduino Boards die 3.3V benutzen, wobei ATMegas (je nach verwendeter takfrequenz) zwar auch meist mit 3.3V arbeiten können, mögen 5V aber lieber. Wenn du also zwischen Sensor und Controller eine Spannungsdifferenz hast brauchst du Levelkonverter und kannst die Sensoren halt nicht einfach direkt anschließen.

Ich bin ein wenig verdutzt, was Studiert ihr denn? für das 4te Semester wäre das je nach Studiengang schon eine ordentliche Herausforderung, da kommt es darauf an das Team gut zu managen, gerade bei 8 Leuten :D

Am besten versucht ihr die Aufgaben wie Fahrsteuerung, Sensorik, Algorithmik(verdammt ich weis einfach nciht wie man das schreibt) und eventuell Kommunikation aufzuteilen.

Kleiner Tipp, wenn ihr Megas einsetzt, nehmt mind. nen Mega64, sonst stoßt ihr beim Verbinden der Softwarekomponenten schnell an das ROM limit ... wir mussten unsere Vorführung aufschieben weil in der Kürze zwischen final compile (mit overload) und geplanter Vorführung so schnell kein größerer Chip lieferbar war

Als Zugabe eine Empfehlung für die Softwareplanung: Jede Subgruppe sollte seine Steuerung so auslegen, dass sie mit einer intervallmäßig aufgerufenen Handle-Funktion arbeitet, in der Loop-Methode (Arduino) wird dann einfach reihum "motor_handle", "sensor_handle" usw. aufgerufen, am Ende dann eine simple dauerschleife mit Abbruchbedingung die durch eine Timer gesteuert wird.
(Sowas wie while(timeroverrun == 0){asm("nop;");}; und ein Timer im Hintergrund der alle x Millisekunden überläuft und die timeroverrun im interrupt inkrementiert)

HaWe
02.05.2017, 10:15
hallo,
wenn es um "übliche Standard-µC-Technik" geht, dann würde ich auf jeden Fall auf Arduino setzen, denn die Programmierung ist für Anfänger einfacher und es gibt sehr viele Libs zu verschiedensten Problemstellungen.

Ich gebe auch Ceos recht, die "normalen", kleinen AVRs sind zu leistungsschwach, und selbst der Mega2560 ist grenzwertig mit seinen 8kB RAM.
Aber auch hier ist die Programmierung schwierig, sobald man es mit verschiedenen mehr oder weniger unabhängen Teil- und Unterprogrammen zu tun bekommt, die dann kompliziert über kryptische Timer und Interrupts gelöst werden müssen - extrem schwere Kost!

ich würde den zum Arduino Mega vom Layout her vergleichbaren Arduino Due empfehlen. Er hat ebenfalls über 60 Pins, 3 UART Ports, 2 i2c Ports, hat 92kB RAM, eine ARM cpu mit 84MHz Takt (kein AVR !!), und er kann (sehr einfaches) Multithreading über die Scheduler Libs und den sehr einfachen Due Timer:
das braucht man zwar nicht schon sofort für die allerersten Schritte als Anfänger, aber später stehen einem damit ziemlich viele Möglichkeiten offen, ohne dass man dann verzweifelt, weil man nicht weiter kommt.
Für die allerersten Schritte hingegen ist der Due so einfach wie ein Mega, da vergibt man sich nichts.
Er hat allerdings 3,3V Level, nicht 5V, da muss man etwas aufpassen - aber 3,3V ist sowieso die moderne Technik bei µCs (inzwischen sogar teilweise schon 1,8 V). Insbesondere bei fertigen Motor- und Sensor-Shields ist das wichtig, denn hier wird es hinterher mit Levelshiftern schwieriger.

Man kriegt einen Due (Klon) bei Ebay etc. schon für ca. 15 EUR.

PS,
ich muss allerdings sagen, so schwierig für ein 4. Semester im Fachstudium klingt das nicht, das machen Lego-Hobby-Programmierer mit dem NXT und NXC (C-ähnlicher Bytecodeinterpreter) oder dem EV3 und EV3Basic schon durchaus nach 1 Jahr...) ;)

Wenn ihr also auch mit Lego Mindstorms arbeiten wollt, kommt ihr evtl. sogar noch schneller zum Ziel - das ist dann nicht so Standard-Technik-mäßig, aber trotzdem sehr wirkungsvoll, gerade mit den simplen Encodermotoren und den sehr mächtigen High-Level-Programmier-APIs.
Selbst für Raspberry Pis gibt es fürs Lego-Elektronik-Equipment (Motoren, Sensoren) bereits sehr gute Aufsteck-Shields (BrickPi3, programmierbar wahlweise mit Python, Scratch und C++), und Lego als Mechanik-Basis bleibt dabei weiterhin ungeschlagen! 8)

Ergänzung:
da beim Raspi-Aufsteck-Shield "BrickPi3" nur SPI verwendet wird und die restlichen Raspi-Ports und Pins unbeeinflusst bleiben, hat man auch hier die komplette Bandbreite dieses extrem leistungsfähigen Raspberry Pi Standard-LINUX-SoC (Quadcore, 4x900Mhz, übertaktbar, 1GB RAM, Grafik-Coprozessor, HDMI, 4xUSB, Internet, Audio, Keyboard, Maus, Cam-Anschluss über USB oder einen eigenen Port).
Raspi kostet ca. 40 EUR, BrickPi3 nochmal 130 EUR, ist also nicht extrem billig, immerhin ist dann aber alles dabei was Motor-Shields und Sensor-Ports angeht.

i_make_it
02.05.2017, 15:36
gewisse Teile als "ATMega-komp." bzw "Arduino-Komp." beschrieben werden


Dabei dürfte es wirklich um 3,3V kontra 5V gehen.

Bei digitalen Logikeingängen und -Ausgängen gibt es verschiedene Parameter die einzuhalten sind oder per Anpassschaltung zu übersetzen sind.
Maximalspannung, höchste Spannung die den Wert 0 darstellt, niedrigste Spannung die den Wert 1 darstellt.
https://de.wikipedia.org/wiki/Logikpegel#Standardwerte

Dann gibt es noch zeitliche Paramter für Flankensteilheit und, Durchlaufzeit und Maximalfrequenz von Signalen.

Damit sind reine digitale Schaltsignale erschlagen.
Dann kann ein sendendes system (z.B. ein Sensor) auch noch eine negative Logik haben, also ein 0V Pegel bedeuted 1 und ein High Pegel bedeuted 0.
Oder eine Spannung von - 5V bedeutetd 1 und 0V bedeutetd 0.

Oder ein differentielles Signal von 0V bis +-3V bedeutetd 0 und +- 12V bis +- 15V bedeuten 1.

Das ist bei den üblichen auf Arduino, Raspi etc. zugeschnittenen Sensoren allerdings nicht von Belang.
Gehört aber durchaus in die Gruppe "ALLE".



kann man wirklich ALLE Sensoren/Motoren per Mikrocontroller ansteueren?

Und so ist ja die Frage formuliert.

Die Antwort ist also ein klares JAIN.

Direkt geht nur was die Spannungs, Strom und zeitlichen Paramter des jeweiligen µC's erfüllt.
Per entsprechender Anpassung, geht praktisch alles.
In einer SPS die Schaltgeräte für 380000V steuert ist schlußendlich auch nur ein besserer µC drin.



Hab schon bisschen recherchiert, hab bisher aber nur ne H-Brückenschaltung für die Ansteuerung von Elektromotoren gefunden...


Da hast Du bereits das doppelte der universellen Grundschaltung, der Halbbrücke.

DC-Motor = H-Brücke = 2 Halbbrücken
BLDC-Motor = 3 Halbbrücken
Bipolar Schrittmotor = 2 H-Brücken = 4 Halbbrücken

Jetzt kann man sich entweder einen Stepper Motortreiber, enen BLDC Motortreiber oder einen DC Motortreiber fertig holen oder man holt sich Halbbrücken Bausteine oder baut komplett diskret auf.
Je nach eigenem Anspruch, Zeit und Aufgabenstellung ist alles möglich.
http://homofaciens.de/technics-base-circuits-h-bridge_ge.htm

Da so ein Projekt üblicherweise ein Zeitlimit hat und vermutlich keine besonderen Anforderungen einen Selbstbau rechtfertigen, sucht man sich die Passenden Motrtreiber zu den Motoren die man wählt.
Da die Motoren das Gewicht der Motortreiber ja auch bewegen müssen, wählt man also erstmal dicke Motortreiber um deren Masse bei der Ermittlung des Robotergewichts zu benutzen. Wenn nach der Wahl der Motoren leichtere Treiber genommen werden, hat man die Differenz halt als Reserve für Leistung oder weitere Zuladung zur Verfügung.




Selbstständig fahren ohne an Wände zu stoßen (Abstandsmessung mittels Infrarotsensor hatten wir jetzt gedacht)


Je nach Situation kann es sinnvoll sein auch Ultraschall Sensoren zu nutzen, bzw. beide Sensorarten parallel zu nutzen.

nelg23
02.05.2017, 17:52
Hallo,

danke schon mal für eure Ratschläge! :)
Wir hatten heute n weiteres Treffen, sind zu dem Entschluss gekommen dass wir wahrscheinlich nen Industrial Arduino nehmen werden, da wir keine extra Platine entwickeln wollen würden, da das schon Zeit kosten würde...
Da wir so schnell wie möglich vorankommen wollen, werden wir eben ein soz. "fertiges" Steuersystem nehmen - eben nen Arduino mit etwas mehr Rechenleistung - klar, natürlich braucht man da nen kräftigeren Akku - sind aber auch so schon vom Platz her ziemlich begrenzt...

Wenn ich z.B. drei Li-Ion-Polymer/Li-Ion Akkus in Reihe schalte, was muss ich da beachten?

HaWe
02.05.2017, 22:51
Hallo,

danke schon mal für eure Ratschläge! :)
Wir hatten heute n weiteres Treffen, sind zu dem Entschluss gekommen dass wir wahrscheinlich nen Industrial Arduino nehmen werden, da wir keine extra Platine entwickeln wollen würden, da das schon Zeit kosten würde...
Da wir so schnell wie möglich vorankommen wollen, werden wir eben ein soz. "fertiges" Steuersystem nehmen - eben nen Arduino mit etwas mehr Rechenleistung - klar, natürlich braucht man da nen kräftigeren Akku - sind aber auch so schon vom Platz her ziemlich begrenzt...

Wenn ich z.B. drei Li-Ion-Polymer/Li-Ion Akkus in Reihe schalte, was muss ich da beachten?
Arduino INDUSTRIAL 101?
wenn ihr den meint, das wäre der allerletzte, den ich für mobile Robots empfehlen würde.

Solltet ihr den wirklich als Basis nehmen ...:
dann zieht euch aber mal warm an... :-/

Vermutlich seid ihr euch dann aber gar nicht darüber klar, was die Arduinos tun oder können oder nicht oder was sie unterscheidet....

i_make_it
03.05.2017, 07:16
Mich würden die Kriterien die zur Wahl des 101 geführt haben auch mal interessieren.
Denn wenn man mal Vergleicht, scheint das Board keine besonders gute Wahl, was die Leistungsdaten angeht.
32586
Einmal der Due und einmal der Mega zum Yun (Basis des 101) im Vergleich.
32587
Eine einfache Platine auf Lochraster als Breakout Board stellt ja keine all zu große Herausforderung da.
Und für experimentelle Aufbauten werden sowieso sehr gerne erstmal Breadboards und Jumper Wires genommen.
Da kann man am schnellsten Aufbauten ändern.
Grade als Anfänger und wenn man sowieso nach feritgen Modulen (Sensoren, Motortreiber, etc.) schaut die man eigentlich nur zusammenstecken will, ist das die einfachste und schnellste Art der Trial and Error Entwicklung.

Mxt
03.05.2017, 09:16
zum Yun (Basis des 101) im Vergleich.

Genauer gesagt entspricht der Arduino Teil dem Leonardo oder Micro (die wiederum beide vom Teensy 2.0 abgeleitet wurden). Also nur minimal besser als ein normaler Arduino Uno.

Dazu ein ziemlich kleines Linux System zur Internetanbindung. Das auch noch mit MIPS Architektur, exotischer geht es kaum noch.

HaWe
03.05.2017, 11:02
Evtl gibts ja noch nen anderen "Industrial" als den "101 Industrial" (ich fand nur keinen, aber das Board Layout vom 101 überzeugt mich wirklich nicht - und die Leistungen erst Recht nicht.

32588

https://www.arduino.cc/en/Main/ArduinoBoardIndustrial101
https://www.arduino.cc/en/Main/Products

versus Due:

32589

https://www.arduino.cc/en/Main/ArduinoBoardDue

aber vlt klärt uns ja der OP auf...?

Carposept
03.05.2017, 13:55
Evtl gibts ja noch nen anderen "Industrial" als den "101 Industrial" (ich fand nur keinen, aber das Board Layout vom 101 überzeugt mich wirklich nicht - und die Leistungen erst Recht nicht.

32588

https://www.arduino.cc/en/Main/ArduinoBoardIndustrial101
https://www.arduino.cc/en/Main/Products

versus Due:

32589

https://www.arduino.cc/en/Main/ArduinoBoardDue

aber vlt klärt uns ja der OP auf...?

vielen Dank!
sehr hilfreich

nelg23
03.05.2017, 18:35
Hallo,
freut mich, dass ihr hier so aktiv seid! :)

Kurzfassung der Aufgabenstellung:
Gefragt ist ein autonomes (nicht ferngesteuertes) System, das schwarze und weiße Tischtennisbällen einsammelt und voneinander unterscheidet. Die schwarzen Bälle sollen über eine Mauer ins das gegenüberliegende Tor geschossen werden, während die weißen nur leicht über die Mauer gestupst werden müssen. Dies alles soll innerhalb von 2 Minuten passieren. (Dies ist Level1)

Level2 hingegen ist wie Level1 mit dem Unterschied, dass Level2 3 Minuten dauert und gegen einen anderen Roboter gespielt wird.
(Level1 ist ein Einzelspiel)

Haben heute bei unserem Treffen besprochen, dass wir den Roboter gezielt auf die Bälle fahren lassen anstatt dass er auf dem Feld (56 cm*81 cm) " wild umher irrt". Dazu wollten wir sozusagen ein "Radar" einbauen, was natürlich mehr Rechenleistung abfordert.
Haben heute Vor- und Nachteile vom Arduino Yun und Raspberry Pi diskutiert. Die sollen von der Leistung her ziemlich ähnlich sein, jedoch hat der Arduino so gut wie keine Dokumentation, während der Pi hingegen eine sehr ausführliche Dokumentation hat, jedoch auf Linux läuft und wir zusätzlich nen Controller bräuchten. Kosten würde das so um die 40 Euronen.

Kenne mich mit Mikrocontrollern leider nicht so aus, was wären denn für solche mobile Roboter weitere Alternativen? :-k
Am besten, was einfach zu programmieren, ne vernünftige Rechenleistung (ähnlich wie Yun und Pi) und nicht zu groß ist, da wir nämlich vom Bauraum sehr beschränkt sind. (17,5 cm*17,5 cm*25 cm ist das zulässige Maximum)

Bin weiterhin dankbar für eure Ratschläge! :)

HaWe
03.05.2017, 21:09
Haben heute Vor- und Nachteile vom Arduino Yun und Raspberry Pi diskutiert. Die sollen von der Leistung her ziemlich ähnlich sein, jedoch hat der Arduino so gut wie keine Dokumentation, während der Pi hingegen eine sehr ausführliche Dokumentation hat, jedoch auf Linux läuft und wir zusätzlich nen Controller bräuchten.

Wie bitte..???
Yun und Raspberry von der Leistung ziemlich ähnlich...???
woher nimmst du das?

Und eine bessere und User-freundlichere Doku als zu den Arduinos wirst du im Netz wohl kaum finden!

Der Yun ist eine 8bit-cpu und hat 2,5KB RAM bei 16MHz,
der Due ist eine 32bit-cpu mit knapp 100KB RAM bei 84MHz und der
der Pi3 ist eine 64bit-cpu mit quadcore (also 4 cores) mit jeweils knapp 1 GHz Takt und mit 1GB RAM.

Der Pi rechnet etwa 30-60x so schnell wie der Yun (single Tasks, per multithreading nochmal bis zu 4x schneller),
und der Due 10x so schnell wie der Yun.

Auf ner Skala von 1 bis 100 für die Rechenperformance
("1" für den absolut leistungsschwächsten Arduino überhaupt)
liegt als grobe Schätzung
der Yun bei 2,
der Due bei 30
und der Pi3 bei 100.

Immerhin - wenn du Platzprobleme hast, könnte ein Adafruit Feather M0 auch eine Idee sein.
Er entspricht einem Arduino Zero oder M0,
er hat 48MHz Takt und 32KB RAM
und liegt auf dieser Skala schätzungsweise bei etwa 20:

https://www.adafruit.com/product/2772

PS,
ich habe hier ein paar Benchmark-Tests zu diversen cpus.
Der Yun ist so schlecht, dass er noch nicht mal diesen Benchmark schafft von seinem RAM her - vom reinen Rechnen her ist er aber vergleichbar mit dem Mega, den ich auf der 100er Skala gefühlsmäßig bei 3 einsortieren würde.
http://www.mindstormsforum.de/viewtopic.php?f=71&t=8095#p64772

021aet04
03.05.2017, 22:48
Sollte statt den kHz nich MHz stehen?

MfG Hannes

HaWe
03.05.2017, 23:36
Danke, stimmt, klar, du hast ntl völlig Recht! Habs soeben berichtigt!


PS,
ein paar weitere ARM-cpu Boards mit Steckbrett-Layout (wie Arduino M0/Zero o.ä.):
http://www.mindstormsforum.de/viewtopic.php?f=78&t=8953&p=69397#p69397

i_make_it
04.05.2017, 10:17
Hier wurden ja jetzt auch zwei zeitliche Vorgaben genannt.
Einmal 2 Minuten und einmal 3 Minuten.

Das kann auch Einfluß auf die Wahl der Steuerung haben.
Im schlimmsten Fall kommt es wärend einer Runde zu einem Reset.
Dann muß die Steuerung die komplette Power On Routine durchlaufen, während die Zeit weiter läuft.
In diesem Extremfall käme es darauf an möglichst schnell mit der Aufgabe weiter machen zu können.

Da ist dann das Booten und Laden eines Betriebssystems halt immer der zweite Sieger.

Ist halt ein Extremfall, aber etwas was durchaus passieren kann (und beim RoboCup auch schon vor kam).
Sollte man zumindest mal überdenken bevor man sich bei einem Akku betriebenen System dessen Motoren auch mal spontan Spitzenströme ziehen können, auf eine Steuerung festlegt.
Auch EMV Einstrahlung (auch von den eigenen Motoren) kann einen Brown Out oder andere Resetgründe verursachen.

Selbst wenn man es später nicht berücksichtigt, kann man zumindest in die Projektdoku reinschreiben, das man sich darüber Gedanken gemacht hat und das Risiko für vernachlässigbar hielt.
Die Praxis wird dann zeigen wie selten/oft so ein Ereigniss dann eintritt und wo man dann was optimieren muß um es zukünftig zu vermeiden.

In den beiden Diplomarbeiten deren Links in meinem ersten Post stehen, werden ja konkrete Beschleunigungs- und Geschwindikeitswerte genannt, da kann man sich orientieren.
Was den Shooter angeht, muß man die Abmessung und Masse der Bälle und die Höhe der Mauer sowie den Abstand zum gegnerischen Tor kennen damit man den Motor dafür dimensionieren kann.
Eigentlich kann man sich erst danach sinnvoll der Energieversorgung zuwenden.
Denn was nutzt eine Energieversorgung, die bei gleichzeitigen Spitzenstrom von Antrieben und Shooter einen Spannungseinbruch hat, der das System resettet.