<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Roboterclub Aachen</title>
        <atom:link href="/feed.xml" rel="self" type="application/rss+xml"/>
        <link>http://www.roboterclub.rwth-aachen.de/</link>
        <description></description>
        <pubDate>Tue, 17 Mar 2026 03:01:13 +0000</pubDate>
        
        <item>
            <title>Saisonrückblick 2025</title>
            <link>/blog/2025/saisonrueckblick-2025.html</link>
            <guid isPermaLink="true">/blog/2025/saisonrueckblick-2025.html</guid>
            <description>&lt;h1 id=&quot;rückblick&quot;&gt;Rückblick&lt;/h1&gt;

&lt;p&gt;Diese Saison haben wir zum ersten mal seit Langem nicht einen der Top 3 Plätze in Deutschland belegt.
Daher ging es leider auch leider nicht nach Frankreich.
Nächstes mal aber ganz bestimmt.
Mit Stolz dürfen wir auch diese Saison wieder einen komplett neuen Roboter präsentieren:
Herbot Grönemeyer.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2025/Herbot.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Der Eurobot hat diese Saison unter dem Motto: “The Show must go on” stattgefunden. Die thematisch passende Aufgabe des Roboters ist es dabei mehrschichtige Tribünen bestehend aus handelsüblichen Dosen und Brettern zu bauen und auf dem Spielfeld zu platzieren. Außerdem sollte ein Banner des Teams am Spielfeldrand positioniert werden. Dazu konnten zu Ende der Spielzeit weitere kleinere Roboter, die SIMAS, sich als “Fans” an strategischen Stellen für zusätzliche Punkte positionieren.&lt;/p&gt;

&lt;h2 id=&quot;mechanik&quot;&gt;Mechanik&lt;/h2&gt;
&lt;p&gt;Herbot verwendet, wie auch die letzten zwei Roboter, einen Differentialantrieb, um sich über das Spielfeld bewegen zu können. Die restliche Motorik besteht haptsächlich aus Riementrieben. Diese bewegen beispielsweise die Greifer-Assembly auf und ab. Dank einer weiteren Iteration des Antriebs ist dieser nun noch kompakter bei gleicher Leistung und verbesserter Sensorik.
Außerdem kann dieses Design sehr flexibel in zukünftigen Robotern übernommen werden. 
Mit seinem simplen, aber effektiven, Greifern ist er dazu in der Lage, die Spielelemente in drei Etagen übereinander zu stapeln. Das Design erlaubt sogar, die ersten zwei Etagen während der Fahrt zu stapeln.&lt;/p&gt;

&lt;h2 id=&quot;elektronik&quot;&gt;Elektronik&lt;/h2&gt;
&lt;p&gt;Unsere Elektronik basiert auf dem Fluss und der Ansammlung von Elektronen. Besonders gut funktioniert das im neuen Power-Distribution Board, das zum ersten Mal das alte Board vollständig ersetzen konnte. Die Micro-Motoren, unsere selbstentwickelten Motor-Treiber Boards, dagegen glänzten vor allem durch Probleme beim Aufbauen, nachdem erst verzögert geliefert wurde, dann die Stencils verbogen waren und zu guter letzt unsere Inventarisierung der Bauteile nicht aktuell war. Allgemein war das Problem weniger, dass Projekte nicht funktioniert haben (von den Raspberry Pi Aufsteckboards abgesehen), sondern, dass sie zu spät und in unzureichender Zahl fertig wurden. Gutes Beispiel dafür sind auch die neuen Boards für unser Ultraschall-Baken Lokalisierungssystem, die erst nach dem Wettbewerb ansatzweise funktionieren, obwohl sie schon Anfang des Jahres sehr nützlich gewesen wären.&lt;/p&gt;

&lt;h2 id=&quot;software&quot;&gt;Software&lt;/h2&gt;
&lt;!--Unsere Informatiker werden zwar darauf bestehen, dass unsere Software auf Modm und Python basiert. In Wirklichkeit basiert aber auch alle Software auf dem Fluss und der Ansammlung von Elektronen.--&gt;
&lt;p&gt;Die Frage “Wer bin ich?” beantworten unsere Roboter immer gerne auf dem Display mit der Anzeige “I am big!”. 
Eine größere Herausforderung ist die Frage: “Wo bin ich?”.
Um nicht betrunken durch die Gegend zu fahren und fortwährend in Spielelemente (und Gegner!) zu crashen, ist es notwendig sich selbst und den Gegner zu lokalisieren. 
Für die eigene Position kann der Roboter seine Schritte bzw. Radumdrehungen zählen; Odometrie. Idealerweise gibt es dafür eigene Räder, damit der Schlupf der Antriebsräder nicht stört.
Kaum waren diese in Watney, dem Roboter der letzten Saison, eingebaut, wurde getestet. Unnnnd, es gab Probleme.
Überraschenderweise aber nicht mit der neu implementierten Odometrie, sondern mit dem Randbakensystem, das unsere Position mittels Ultraschall-Time-of-Flight bestimmen sollte. Unsere bisherige Positionierung war… von fragwürdiger Qualität. 
Da der Gegner nur über dieses System geortet werden kann, war es ein Problem das gelöst werden musste. Einige Abenteuer in der nichtlinearen Optimierung des Baken-Codes später hatten wir eine bessere Position; und immernoch keinen fahrenden Roboter. Mittlerweile auf dem Wettbewerb besteht die Aufgabe, den Roboter wenn schon nicht elegant farend, wenigstens humpelnd auf die Bühne zu schicken. Die Homologation, der Test, dass der Roboter allen Regeln entspricht und Punkte machen kann, war zu überwinden. Es gelang uns die dafür notwendigen Regler-Parameter aus einem Zylinder zu ziehen, und unser Roboter konnte auf die Bühne.
Die neue Display-Software hat es leider diese Saison nicht in den Roboter geschafft, jedoch ist es nur eine Frage der Zeit bis sich der Roboter einer schöneren und benutzbareren Nutzeroberfläche erfreuen kann.&lt;/p&gt;

&lt;h2 id=&quot;simas&quot;&gt;Simas&lt;/h2&gt;

&lt;p&gt;Im Wintersemester 2024/2025 wurde eine Lehrveranstaltung mit dem Titel “Entwicklung eines autonomen Miniroboters”, angelehnt an das Format eines Projektpraktikums, mit 17 Studierenden in drei Kleingruppen durchgeführt. Der Miniroboter im Veranstaltungsnamen sollte den Regeln eines Small Independent Actuator (SIMA) aus den Eurobot-Regeln folgen.
Nach dem zu Beginn des Wintersemesters die Projektplanung in den Kleingruppen angestoßen wurde, fanden drei praxisnahe und interaktive Workshops zu den Themen Schaltungsdesign, Embedded Software und Git Versionsverwaltung.
An den folgenden wöchentlichen Arbeitstreffen und in Eigenarbeit haben die Kleingruppen Systemarchitektur erarbeitet, Schaltungen designed, Platinen gezeichnet, selbst aufgebaut und in Betrieb genommen. Darauf aufbauend wurden die Microcontroller programmiert, sodass die Miniroboter autonom fahren konnten.
Nach Ende der Lehrveranstaltung, im Mai, haben einige der Studierenden auf freiwilliger Basis mit den Miniroboter beim Eurobot-Wettbewerb in Dresden teilgenommen.&lt;/p&gt;

&lt;h2 id=&quot;vorentscheid-deutschland&quot;&gt;Vorentscheid Deutschland&lt;/h2&gt;
&lt;p&gt;Da Herbot zu Beginn des Vorentscheids noch nicht lauffähig war, wurde parallel an zwei Robotern gearbeitet. An Herbot, um ihn fahrtauglich zu machen, und an Whatney, unserem Roboter von der letzten Saison, der möglichst schnell für uns auf das Spielfeld sollte.
Wir waren  in der Lage Whatney für den Wettbewerb lauffähig zu machen und ihm das Banner setzen beizubringen. Außerdem gab es einen kleinen SIMA Superstar, der in den letzten 10 Sekunden eifrig seinen Weg auf die Bühne suchte.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2025/WhatneyBanner.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Leider kamen sich die beiden im ersten Spiel in die Quere, als Whatney ein Bühnenelement auf die Rampe vom Superstar fallen ließ. Dies führte zu einem übereifrigen Superstar, der in der letzten Runde auch nach dem Ende der Spielzeit noch in Bewegung war: Penalty!&lt;/p&gt;

&lt;p&gt;Am Ende wurde leider keinen der relevanten Plätze belegt. Aber wenigstens sahen die Böppels im Foyer ganz lustig aus.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2025/Böppel.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
</description>
            <pubDate>Sat, 06 Sep 2025 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>RCA goes Lehre</title>
            <link>/blog/2024/lehrveranstaltung-ws24.html</link>
            <guid isPermaLink="true">/blog/2024/lehrveranstaltung-ws24.html</guid>
            <description>&lt;h2 id=&quot;der-rca-macht-lehre&quot;&gt;Der RCA macht Lehre&lt;/h2&gt;

&lt;p&gt;Im kommenden Wintersemester bieten wir zusammen mit dem &lt;a href=&quot;https://www.ihf.rwth-aachen.de/&quot;&gt;IHF&lt;/a&gt; eine Lehrveranstaltung an:&lt;/p&gt;

&lt;h3 id=&quot;entwicklung-eines-autonomen-mini-roboters&quot;&gt;Entwicklung eines autonomen Mini-Roboters&lt;/h3&gt;

&lt;p&gt;Weitere Information zu Lehrveranstaltung &lt;a href=&quot;/LV24/&quot;&gt;hier&lt;/a&gt;&lt;/p&gt;
</description>
            <pubDate>Mon, 30 Sep 2024 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Saisonrückblick 2024</title>
            <link>/blog/2024/season-2024.html</link>
            <guid isPermaLink="true">/blog/2024/season-2024.html</guid>
            <description>&lt;p&gt;Auch im Jahr 2024 wollen wir die nun beendete Saison resümieren.
Der Roboterclub kann auf einen personellen Zuwachs und damit neuen Teamspirit zurückblicken.
Wie üblich haben wir dieses Jahr einen neuen Roboter konstruiert und von Grund auf neu gebaut.&lt;/p&gt;

&lt;p&gt;Wir präsentieren: Unseren Roboter Watney&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2024/watney1.jpg&quot; alt=&quot;Roboter 2024 Watney&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;mechanik&quot;&gt;Mechanik&lt;/h3&gt;

&lt;p&gt;Im Vergleich zum Vorjahr hat sich einiges geändert.
Watney ist dieses Jahr zwar wieder mit einem Differentialantrieb ausgestattet,
jedoch werden als Stützräder jetzt Kugelrollen statt Omniwheels benutzt.&lt;/p&gt;

&lt;p&gt;Zu den Aufgaben dieser Saison zählen unter Anderem das Repositionieren von Pflanzen und das Drehen von Solarpanels.
Watney ist auf der Vorderseite mit einem Förderband ausgestattet,
das die Pflanzen aufnehmen und anschließend auf einem Karussel absetzen kann.
Die Pflanzen sollen so im Roboter gelagert und in den entsprechenden Zonen wieder entladen werden.
An der Seite befindet sich ein kleiner Arm, der mit Hilfe eines Servos ausgefahren werden kann.
Wenn Watney mit ausgefahrenem Arm an den Solarpanels vorbeifährt, werden diese durch eine kleine “Flagge” am Arm gedreht.&lt;/p&gt;

&lt;h2 id=&quot;elektronik&quot;&gt;Elektronik&lt;/h2&gt;

&lt;p&gt;Nach Ende der letzten Saison haben wir an Antoinette CAN Probleme behoben, indem wir einen verbesserten CAN Transceiver verbaut haben.
Generell wurde der CAN Bus verbessert.
Während bei Antoinette noch eine reine Baumstruktur für die Verkabelung benutzt wurde, wird bei Watney auch Daisychaining verwendet. Dies vereinfacht nicht nur die Verkabelung, sondern verbessert auch die Datenqualität.
Hierfür haben wir einen Raspberry PI 5 mit einem speziell entwickelten CAN Hat ausgestattet. Dieser ist besonders kompakt und besitzt ein verbessertes Interface im Vergleich zu Antoinette.
Weiterhin haben wir die Strommessung unserer Mikromotoren verbessert. Hierfür messen wir jetzt 3-phasig statt 2-phasig.
Somit ist die Messung nicht nur genauer, sondern auch störungsunempfindlicher.
Das alte Batterie Management System (BMS) haben wir mit einem separaten Board erweitert, dass die verbauten PIs direkt versorgen kann.
Außerdem haben wir angefangen eine smarte Batterie zu entwickeln, die langfristig das BMS ersetzen kann.
Die Kamera am Spielfeldrand zur Gegenererkennung wurde weiterentwickelt. Hier ist hauptsächlich nur noch die Kommunikation zu realisieren.&lt;/p&gt;

&lt;h2 id=&quot;software&quot;&gt;Software&lt;/h2&gt;

&lt;p&gt;In der letzten Saison wurde der Schritt auf ROS2 (Robot Operating System) zwar schon gewagt, aber erst in dieser Saison wurde die Umstellung vollständig realisiert.
Der ROS2 Softwarestack bildet weiterhin die zentrale Steuereinheit des Roboters und ist für die Routenplanung, Sensorauswertung und Ausführung der Spielstrategie verantwortlich.
Eine der bedeutendsten Neuerungen war die Implementierung eines LQR-Reglers für die Fahrsteuerung.
Dieser Regler ermöglicht eine präzisere und stabilere Regelung des Roboters, was sich besonders in dynamischen Spielsituationen als vorteilhaft erwiesen hat.
Zusätzlich wurde die Visualisierung während des Betriebs stark verbessert. So können z.B. Soll- und Ist-geschwindigkeit direkt graphisch angezeigt werden.
Ein weiterer wichtiger Fortschritt war die Einführung neuer Motor- und Servotreiber. Somit konnte der kleine Arm kurzfristig implementiert werden.
Trotz dieser umfangreichen Änderungen baut die aktuelle Softwarestruktur auf den Grundlagen der letzten Saison auf.
Dies ermöglichte eine nahtlose Integration der neuen Komponenten und Funktionen, ohne die bewährten Systeme und Prozesse zu beeinträchtigen.&lt;/p&gt;

&lt;h2 id=&quot;simas&quot;&gt;Simas&lt;/h2&gt;

&lt;p&gt;Erstmalig gab es dieses Jahr kleine schwarmartige Roboter, auch Simas (small independant mechanical actuator) genannt.
Diese haben wenige einfache Aufgaben. Die Hauptaufgabe besteht darin, am Ende des Spiels in bestimmte Zonen zu fahren.
Jedoch müssen auch hier Sicherheitsfunktionen wie ein Notaus und Gegnererkennung gegeben sein.
Die Gegnererkennung wurde mit infrarot time-of-flight Sensoren gelöst.
Während die Simas im deutschen Vorentscheid noch relativ primitiv mit einem Sensor ausgestattet waren, wurden für die finale Version jeweils 2 Sensoren verbaut.
Gesteuert wurden die Simas mit einem Dev-board, das mithilfe des modm Frameworks programmiert wurde.
Die DC Motoren zur Fortbewegung konnten direkt über das Dev-Board angeschlossen und betrieben werden.
Damit die Simas zur richtigen Zeit losfahren, wird am Anfang jedes Spiels ein Starterpin gezogen, der oben im Sima steckt.
Das Ziehen wird durch einen Endschalter erkannt.
Die Anzahl der Simas ist nur durch die Größe des Startbereichs limitiert, wir haben 2 gebaut.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2024/simas_2024.jpg&quot; alt=&quot;Simas&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;wettbewerbe&quot;&gt;Wettbewerbe&lt;/h2&gt;

&lt;p&gt;Der Roboterclub hat dieses Jahr an dem Wettbewerb in Deutschland mit 15 und dem Finale in Frankreich mit 11 Mitgliedern teilgenommen.&lt;/p&gt;

&lt;h3 id=&quot;vorentscheid-deutschland&quot;&gt;Vorentscheid Deutschland&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2024/teambild_giessen_2024.jpg&quot; alt=&quot;Season 2024 Teamfoto Gießen&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Am 20. und 21. April hat der Roboterclub am deutschen Vorentscheid in Gießen teilgenommen, welcher von dem Studententeam M.A.M.U.T. Robotics organisiert wurde.
Dieses Jahr wurde unser Equipment das erste Mal mit einem Transporter gefahren, wodurch die anderen Mitglieder umweltfreundlicher per Zug anreisen konnten.
Am Freitag vor dem Wettbewerb wurde bereits angereist, um weiter am Roboter arbeiten zu können.
Leider war der Roboter Watney noch nicht soweit, dass wir mit ihm in Gießen antreten konnten.
Daher musste der Roboter &lt;em&gt;Antoinette&lt;/em&gt; der letzten Saison noch einmal genutzt werden.
Während des Wettbewerbs haben wir die Positionsregelung weiter optimiert und zusätzlich das Ausfahren der Flagge mittels Servomotor implementiert.
Die Lichtverhältnisse vorort interferierten so stark mit unseren Baken, dass wir diese durch einen mechanischen Sonnenschutz abschirmen mussten.
Unseren Anstrengungen und Optimierungen war es zu verdanken, dass wir uns in der Finalrunde am Sonntag mit dem dritten Platz für das Finale in Frankreich qualifizieren konnten.
Dies war nur duch den besonderen Einsatz vieler Teammitglieder möglich, die während des Wettbewerbs unzählige Stunden investiert haben.&lt;/p&gt;

&lt;h3 id=&quot;internationales-finale-frankreich&quot;&gt;Internationales Finale Frankreich&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2024/teambild_frankreich_2024.jpg&quot; alt=&quot;Season 2024 Teamfoto Frankreich&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Vom 17. bis 20. Mai fand das Eurobotfinale in La Roche-sur-Yon statt.
Am ersten der 5 Qualifizierungsspiele konnten wir leider nicht teilnehmen, da es Probleme bei der Homologation gab.
Außerdem hatten wir bei einem Match Probleme mit einem Gegner, der 4 LiDAR Sensoren benutzt hat.
Diese habe so mit unseren Baken interferiert, dass Antoinette nicht ihre Position bestimmen konnte und somit nicht losgefahren ist.
In den verbleibenden 3 Runden konnten wir nicht genügend Punkte erreichen, um uns für das Finale zu qualifizieren. Am Ende hat es leider nur für Platz 19 von 26 gereicht.
Allerdings gab es auch positive Aspekte. Wir wurden von 2 ehemaligen RCA Mitgliedern überrascht, die in Frankreich Urlaub gemacht haben und uns spontan während des Wettbewerbs besucht haben.
Wir konnten weiterhin vielen Teams mit kleineren Bauteilen aushelfen. Außerdem konnten unsere Mitglieder am Ende noch einen 3. Sima bauen und homologieren.
Den Abschluss des Wettbewerbs bildete ein Besuch an der Atlantikküste, wo wir Strand und Meer genießen konnten. Unsere Simas und ein befreundetes Maskottchen haben uns dabei begleitet.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2024/turex_strand.jpg&quot; alt=&quot;Turex und Simas am Strand&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Alles in allem war die Saison ein Erfolg.
Wir konnten mit einem weitgehend neuen Team, einen komplett neuen Roboter in kurzer Zeit bauen, der an einem Wettbewerb partizipieren konnte.
Dabei haben wir endlich den Umstieg auf ROS2 absolvieren können.
Hinzu hat das Team sehr viel gelernt und bereits viele neue Ideen für Verbesserungen entwickelt.
Und natürlich am wichtigsten, alle hatten sehr viel Spaß dabei!&lt;/p&gt;
</description>
            <pubDate>Tue, 16 Jul 2024 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Saisonrückblick 2023</title>
            <link>/blog/2023/season-2023.html</link>
            <guid isPermaLink="true">/blog/2023/season-2023.html</guid>
            <description>&lt;p&gt;Auch im Jahr 2023 wollen wir die nun beendete Saison resümieren.
Der Roboterclub kann auf einen deutlichen personellen Zuwachs und damit neuen Teamspirit zurückblicken.
Wie üblich haben wir dieses Jahr einen neuen Roboter konstruiert und von Grund auf neu gebaut.&lt;/p&gt;

&lt;p&gt;Dürfen wir vorstellen: Antoinette&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2023/antoinette-20230518_173951.jpg&quot; alt=&quot;Roboter 2023 Antoinette&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;mechanik&quot;&gt;Mechanik&lt;/h3&gt;

&lt;p&gt;Im Vergleich zum Vorjahr hat sich einiges geändert.
Antoinette ist dieses Jahr mit einem Differentialantrieb ausgestattet.
Zwei große getriebene Räder mit zwei Omniwheels als Stützräder bilden die Basis des Antriebsstrangs.&lt;/p&gt;

&lt;p&gt;Um mit den diesjährige Spielelementen interagieren zu können ist,
Antoinette auf der Vorderseite mit einem Greifer ausgestattet,
der die Kuchenscheiben greifen und anschließend mit einem Aufzugsmechanismus anheben kann.
Die Kuchenscheiben sollen so auf die Stangen des Sortiermechanismus geschoben werden.
Diese sind dazu gedacht im Ablegeprozess die richtige Reihenfolge der Kuchen für das &lt;em&gt;Legendary Recipe&lt;/em&gt;,
ganz unten der dunklen Kuchenboden, gefolgt von der gelben Buttercremescheibe und obendrauf die rosa &lt;em&gt;Toppingscheibe&lt;/em&gt;, zu realisieren.
Zusätzlich ist im Roboter ein Kirschenportionier-Mechanismus verbaut,
der es mit nur einem Motor erlaubt eine einzelne Kirsche zum Schluss des Absetzens auf dem fertigen Kuchen zu platzieren.&lt;/p&gt;

&lt;p&gt;Der spaßigste Mechanismus am diesjährigen Roboter ist wahrscheinlich die &lt;em&gt;Cherry-Kanone&lt;/em&gt;.
Um uns einige Extrapunkte sichern zu können haben wir kurzfristig vorm Wettbewerb noch einen durch eine Feder getrieben Schussmechanismus überlegt,
der eine Kirsche zu Spielbeginn in den am Spielfeldrand stehenden Korb befördert.
Den finalen Touch hat Antoinette durch die zweifarbige LED-Beleuchtung, in grün-blau, erhalten.&lt;/p&gt;

&lt;h2 id=&quot;elektronik&quot;&gt;Elektronik&lt;/h2&gt;

&lt;p&gt;Antoinette ist auch dieses Jahr fast ausschließlich mit selbstdesignten Platinen versehen.
Ausnahme bildet hier das UP2-Board von Intel, welches diese Saison erstmalig verbaut wurde.
Abgesehen davon wurden die Mikro-Motoren der zweiten Generation für alle Motoren verbaut,
sowie das neue BMS, welches diese Saison nur teilweise in Benutzung war.
Dies ermöglichte uns den Roboter wie auch zuvor über einen 6S-LiFe-Akku oder alternativ über das Netzteil mit dem nötigen Strom zu versorgen.
Die größte Neuerung stellt die Kamera dar, die am Spielfeldrand in etwa einem Meter Höhe angebracht ist.
Diese soll die &lt;em&gt;ArUco-Marker&lt;/em&gt;, die auf den Gegnerrobotern sowie den Spielelementen abgedruckt sind, erkennen und auf dem Spielfeld tracken.&lt;/p&gt;

&lt;h2 id=&quot;software&quot;&gt;Software&lt;/h2&gt;

&lt;p&gt;Diese Saison wurde nun der Schritt gewagt auf ROS2 (Robot Operating System) umzusteigen.
Zum Testen und Entwickeln läuft ROS2 Humble Hawksbill in einem Dockercontainer auf dem UP2-Board.
Der ROS2 Softwarestack stellt die zentrale Steuereinheit des Roboters dar und
ist unter anderem für die Routenplanung, Sensorauswertung und Ausführung der Spielstrategie zuständig.
Die Motorsteuerung in C++ basiert auf dem Embedded-Framework modm aus den vorherigen Jahren, die für die aktuellen Mikromotoren weiterentwickelt wurde.
Um die Kommunikation zwischen der ROS2 basierten Spielsteuerung, dem Antrieb, und den Aktoren zu ermöglichen,
wurde eine &lt;em&gt;canOpen&lt;/em&gt;  Schnittstelle implementiert.
Das altbewährte Lokalisierungssystem per Ultraschallsensoren und IMU,
welches noch das &lt;em&gt;Xpcc&lt;/em&gt; Protokoll über CAN aus dem &lt;em&gt;modm&lt;/em&gt; Framework nutzt, wurde ebenfalls an ROS2 angebunden.
Bei Spielstrategie und Routenplanung wurde vor allem Wert auf Wiederverwendbarkeit gelegt,
um eine Anpassung an die Regeln der kommenden Saison zu ermöglichen,
sowie um neue Features, wie visuelle Spielelemente-Erkennung, einfach einbinden zu können.&lt;/p&gt;

&lt;h2 id=&quot;wettbewerbe&quot;&gt;Wettbewerbe&lt;/h2&gt;

&lt;p&gt;Der Roboterclub hat dieses Jahr an den Wettbewerben in Deutschland und dem Finale in Frankreich mit jeweils zwölf Mitgliedern teilgenommen.&lt;/p&gt;

&lt;h3 id=&quot;vorentscheid-deutschland&quot;&gt;Vorentscheid Deutschland&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2023/eurobot-2023-d-IMG_20230423_161521751.jpg&quot; alt=&quot;Season 2023 Teamfoto Dresden&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Am 21. und 22. April hat der Roboterclub am deutschen Vorentscheid in Dresden teilgenommen, welcher von der TURAG vorort organisiert wurde.
Am Freitag vor dem Wettbewerb wurde bereits angereist, um weiter am Roboter arbeiten zu können.
Leider war der Roboter Antoinette noch nicht soweit, als das wir mit ihr in Dresden antreten konnten.
Daher musste der Roboter &lt;em&gt;Wanda&lt;/em&gt; der letzten Saison noch einmal genutzt werden.
Hinzu kam ein Problem mit fehlerhaften Bauteilen in unserem Lokalisierungssystem, was zu einem arbeitsreichen Samstag führte.
Allerdings konnten am Samstagabend sowohl Antoinette ihre ersten Fahrmanöver ausüben als auch Wanda Spiele bestreiten.
Dadurch konnten wir uns in der Finalrunde am Sonntag mit dem dritten PLatz für das Finale in Frankreich qualifizieren.&lt;/p&gt;

&lt;h3 id=&quot;internationales-finale-frankreich&quot;&gt;Internationales Finale Frankreich&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2023/eurobot-2023-f-C8CD15DC-FB3A-4A78-B839-91460E68AD51.jpg&quot; alt=&quot;Season 2023 Teamfoto Frankreich&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Vom 17. bis 20. Mai fand das Eurobotfinale in La Roche-sur-Yon statt.
Über vier Tagen haben wir mit Hochdruck an dem Roboter Antoinette gearbeitet und konnten letztendlich auch das letzte Spiel mit ihr bestreiten.
Dafür wurde teilweise komplett auf Schlaf verzichtet, was mit Platz 11 von 25 nach den Vorrunden belohnt wurde.
Bei den Spielen davor wurde noch einmal auf den Roboter Wanda zurückgegriffen.
Dabei stellte sich heraus, dass unser Lokalisierungssystem sehr anfällig gegenüber LIDAR-Sensoren anderer Roboter ist,
was die Positionsgenauigkeit massiv beeinflusste.
Weiterhin wurden die beiden Roboter noch um einen sogenannten &lt;em&gt;Disguise-Mechanismus&lt;/em&gt; aufgerüstet,
welcher den Roboter kurz vor Spielende ausleuchtet.
Zur Beleuchtung wurde eine unserer Runetag-Platinen zweckentfremdet.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2023/wanda-glowing-20230519_143017-cut.jpg&quot; alt=&quot;Zweiter Roboter 2023 Wanda angeleuchtet&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Alles in allem war die Saison ein großer Erfolg.
Wir konnten mit einem weitgehend neuen Team, einen komplett neuen Roboter in kurzer Zeit bauen, der an einem Wettbewerb partizipieren konnte.
Dabei haben wir endlich den Umstieg auf ROS2 absolvieren können.
Hinzu hat das Team sehr viel gelernt und bereits viele neue Ideen für Verbesserungen entwickelt.
Und natürlich am wichtigsten, alle hatten sehr viel Spaß dabei!&lt;/p&gt;
</description>
            <pubDate>Tue, 11 Jul 2023 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Eurobot Deutschland 2022</title>
            <link>/blog/2022/eurobot-germany-2022.html</link>
            <guid isPermaLink="true">/blog/2022/eurobot-germany-2022.html</guid>
            <description>&lt;p&gt;Obwohl das internationale Finale des Eurobts in Frankreich bereits vorbei ist, 
fand der deutsche Eurobot Wettbewerb vom 08-09.10.2022 bei uns in Aachen statt. 
Mit uns haben das Team MAI aus Markt Indersdorf,
das Team M.A.M.U.T. Robotics der THM Gießen
und das Team TURAG aus Dresden teilgenommen.
Bei diesem Wettbewerb ging es nicht wie sonst üblich um eine Qualifikation für das Finale in Frankreich, 
sondern um das Wiederaufleben des Eurobots in Deutschland nach zwei Jahren Corona Pause.
In sechs Vorrunden und einem Finalspiel nach dem Konzept der &lt;em&gt;Double Elimination&lt;/em&gt;,
konnten die Teams mit ihren Robotern gegeneinander antreten. 
Dabei konnte jedes Team die Fähigkeiten seines Roboters mehrfach demonstrieren und von Runde zu Runde seinen Roboter optimieren.
Im Finale spielten wir gegen das Team TURAG und konnten mit zwei direkten Siegen im &lt;em&gt;Best-of-Three&lt;/em&gt;-Modus den Eurobot Deutschland gewinnen.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/img/blog/2022/2022-10-eurobot-ger-ac-DSC05264_.JPG&quot; alt=&quot;Team Foto; Erster und Zweiter Platz (RCA, TURAG)&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Neben dem Eurobotwettbewerb gab es noch einen &lt;em&gt;Technical Innovation Contest&lt;/em&gt;,
bei welchem die Teams technische Problemstellungen und deren Umsetzungen an ihren Robotern präsentieren durften. 
Bewertet wurden die Teams von einem Gremium aus drei externen Expertinnen und Experten aus den Bereichen Mechatronik,
Wirtschaft und Mensch Maschine Interaktion. 
Den Kontest konnte das Team TURAG für sich entscheiden durch ihre innovative Nutzung von Bilderkennung.
Der Deutsche Eurobot Wettbewerb 2023 soll aller Voraussicht nach in Dresden von der TURAG ausgerichtet werden.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/img/blog/2022/2022-10-eurobot-ger-ac-DSC05270_.JPG&quot; alt=&quot;Roboter aller teilgenommenen Teams&quot; /&gt;&lt;/p&gt;
</description>
            <pubDate>Sun, 09 Oct 2022 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Saisonrückblick 2022</title>
            <link>/blog/2022/saisonrueckblick-2022.html</link>
            <guid isPermaLink="true">/blog/2022/saisonrueckblick-2022.html</guid>
            <description>&lt;p&gt;Nach zwei Jahren Corona-Pandemie wurde endlich im Roboterclub wieder ein Roboter entworfen, ausgelegt, konstruiert und gebaut.
Bis auf den letzten Schritt, das Aufbauen, sogar eigentlich zwei Roboter.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2022/2022-robot-1.jpg&quot; alt=&quot;Roboter _Wanda_, Eurobot-Saison 2022&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Auch war diese Saison für viele Studierende die erste Gelegenheit einen Eurobot-Wettbewerb live zu erleben.&lt;/p&gt;

&lt;p&gt;Vielleicht kommt zum zweiten Roboter in der Zukunft noch ein weiterer Blog-Post.&lt;/p&gt;

&lt;h3 id=&quot;mechnik-für-roboter-wanda&quot;&gt;Mechnik für Roboter &lt;em&gt;Wanda&lt;/em&gt;&lt;/h3&gt;

&lt;p&gt;Der Antrieb von Wanda besteht aus drei im Stern angeordneten bürstenlosen Motoren mit Planetengetriebe von Dunker. Diese treiben über ein zweistufiges Stirnradgetriebe die Antriebsräder an. Bei den Antriebsrädern handelt es sich um so genannte &lt;em&gt;Onmiwheels&lt;/em&gt;, wodurch der Roboter zu jedem Zeitpunkt in jede beliebige Richtung fahren kann.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2022/2022-robot-2.jpg&quot; alt=&quot;Roboter _Wanda_, Eurobot-Saison 2022&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Als Aktorik wurde ein drei-gelenkiger Greifarm entwickelt mit welchem die Spielelemente gegriffen und im Roboter verstaut werden sollten.
Der Arm erwies sich allerdings als untermotorisiert und sehr komplex in der Ansteuerung aufgrund der hohen Anzahl an verbauten Motoren (insgesamt fünf).
Auch aufgrund der engen personellen Lage im Team wurde der Arm nicht am Roboter verbaut sondern ein Stupser vorne am Roboter montiert, um trotzdem Interaktion mit den Spielelementen zu ermöglichen.
Im Roboter sollte ein Greifer die Spielelemente wenden und in einer Vorrichtung ablegen. Der Greifer im Roboter und die Aufnahme für die Spielelemente sind im Roboter verbaut, wurden aufgrund des fehlenden Arms jedoch nicht benutzt.
Die Erfahrungen aus der Entwicklung des Arms werden in zukünftige Greifaktoriken mit einfließen, wodurch man hoffentlich zukünftig eine Nachfolgeversion des Arms an einem der Roboter sehen kann.&lt;/p&gt;

&lt;h3 id=&quot;elektronik&quot;&gt;Elektronik&lt;/h3&gt;

&lt;p&gt;Für die Elektronik musste leider auf viele alte Lösungen zurückgegriffen werden,
da es neben den Supply-Chain-Problemen auch personell eng im Team war.&lt;/p&gt;

&lt;p&gt;Ein neues Power-Distribution-Board als Ersatz für das in die Jahre gekommene &lt;em&gt;BMS&lt;/em&gt; ist in Arbeit, allerdings nicht fertig.
Das neue Modul hat zwei Anschlüsse für 6S-LiFe-Akkus und zusätzlich einen Netzteil-Anschluss.
Da die alte BMS-Platine nur einen Akku nutzen kann, wurde die im ungenutzten zweiten Akku-Slot untergebracht.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2022/2022-battery-bms-hack.jpg&quot; alt=&quot;Gepfuschte Anbringung der BMS Platine&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Leider kamen auch die inzwischen in Version 2.1 vorhandenen &lt;a href=&quot;https://github.com/roboterclubaachen/micro-motor&quot;&gt;Motor-Controller &lt;em&gt;Micro-Motor&lt;/em&gt;&lt;/a&gt; noch nicht zu Einsatz,
weil die Software noch nie zuvor getestet wurde und es genügend aufgebaute &lt;a href=&quot;/projekt/alpha-motor.html&quot;&gt;&lt;em&gt;Alpha-Motor&lt;/em&gt;&lt;/a&gt;-Platinen beziehungsweise hinreichend wenig Motoren im Roboter gab.&lt;/p&gt;

&lt;h3 id=&quot;software&quot;&gt;Software&lt;/h3&gt;

&lt;p&gt;Entgegen des ursprünglichen Vorsatzes einen Linux-Computer in den Roboter zu integrieren und die Steuerung der Roboters in ROS2 zu implementieren, wurde zwei Wochen vor den Wettbewerben entschieden doch den alten und “bewährten” Software-Stack erneut zu verwenden.
Dieser Software-Stack nutzt das im RCA ursprünglich entwickelte Microcontroller-Framework &lt;a href=&quot;https://modm.io/&quot;&gt;&lt;em&gt;modm&lt;/em&gt;&lt;/a&gt; und das dazugehörige &lt;a href=&quot;https://github.com/modm-io/lbuild&quot;&gt;&lt;em&gt;lbuild&lt;/em&gt;&lt;/a&gt; und lässt alle Software auf einem Haupt-Microcontroller (STM32F407) laufen.
Der Haupt-Microcontroller übernimmt neben der Spielstrategie, Fahrplanung und Motionplanning auch die Motorregelungen.
Die Motoren sind über selbst entwickelte Motorcontroller (&lt;a href=&quot;/projekt/alpha-motor.html&quot;&gt;&lt;em&gt;Alpha-Motor&lt;/em&gt;&lt;/a&gt;) per CAN-Bus angeschlossen und bekommen darüber quasi Duty-Cycle-Werte zugeschickt und senden Encoder-Werte zurück.&lt;/p&gt;

&lt;p&gt;Schnell war eine Kopie der Software von 2019 im Gitlab angelegt.
Das Anpassen an verschiedene, inzwischen drei Jahre weiter entwickelte Abhängigkeiten, wie das &lt;a href=&quot;https://modm.io/&quot;&gt;modm Framework&lt;/a&gt;, und beheben von Compiler- und Linker-Fehlern stellten sich als nervig heraus.&lt;/p&gt;

&lt;p&gt;Ein weiteres Problem trat beim Wettbewerb in der Schweiz zu Tage: Der Haupt-Microcontroller resettete sich reproduzierbar nach ein paar Sekunden, was sich nach einigem Debuggen als Speicherproblem herausstellte.
Eine Queue von CAN-Nachrichten wuchs schneller als diese geleert wurde, hatte keine Größenbegrenzung und belegt dann nach einigen Sekunden den gesamten SRAM des STM32.
Ursächlich war hier die falsche Verteilung der vier Terminierungswiderstände für die zwei CAN-Busse im Roboter: Einer der Busse hatte drei, der andere nur einen Widerstand abbekommen.&lt;/p&gt;

&lt;h3 id=&quot;wettbewerbe&quot;&gt;Wettbewerbe&lt;/h3&gt;

&lt;p&gt;Der Roboterclub ist mit eher kleineren Gruppen zu den Wettbewerben nach Belgien, in die Schweiz und zum Internationalen Finale nach La Roche-sur-Yon gefahren.&lt;/p&gt;

&lt;h4 id=&quot;belgien&quot;&gt;Belgien&lt;/h4&gt;

&lt;p&gt;Zum Wettbewerb in Belgien am 23.24. April 2022 war der Roboter leider noch nicht in einem Zustand um für den Wettbewerb zu homologieren,
jedoch konnten wertvolle Erfahrungen gesammelt werden und einige Tests mit den vollständig aufgebauten Wettbewerbsspielfeldern durchgeführt werden.
Außerdem entstand ein Großteil der saisonspezifischen Software vor Ort, sodass das Wochenende insgesamt positiv aufgefasst wurde.&lt;/p&gt;

&lt;h4 id=&quot;schweiz&quot;&gt;Schweiz&lt;/h4&gt;

&lt;p&gt;Etwa einen Monat später, am 12. Mai, ging es los in den Süden der Schweiz nach Yverdon-Les-Bains um vom 13. bis zum 14. Mai am dortigen Wettbewerb teilzunehmen.
Der Roboter homologierte hier nach kleineren Problem, die jedoch einfach zu lösen waren, etwas verspätet und konnte an den Spielen teilgenommen werden.
Mit wenigen Ausnahmen wurde auch eine stattliche Anzahl an Punkte erreicht.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2022/2022-swisseurobot-playground-robot-team.jpg&quot; alt=&quot;Ein Teil des RCA-Teams beim Eurobot-Wettbewerb in der Schweiz&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Während des Wettbewerbes wurde außerdem eine &lt;em&gt;Inertiale Messeinheit&lt;/em&gt; (IMU) nachgerüstet und in die Software eingebunden um die schlechte Qualität der Orientierungs-Information den Encodern des &lt;a href=&quot;/projekt/fahrplattform-little.html&quot;&gt;Omniwheel-Antriebs&lt;/a&gt; und des &lt;a href=&quot;/projekt/ultraschall-baken.html&quot;&gt;Ultraschall-Baken&lt;/a&gt; zu verbessern.
Leider ist die vollständige Integration in unseren Software-Stack erst nach dem Wettbewerb fertig geworden.&lt;/p&gt;

&lt;p&gt;Auf dem Rückweg aus der Schweiz nach Aachen wurde auf dem Weg noch ein Zwischenstopp eingelegt beim &lt;em&gt;Creux du Van&lt;/em&gt; und die beeindruckende Felsformation umwandert.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2022/2022-rueckweg-wanderung.jpg&quot; alt=&quot;Creux du Van&quot; /&gt;&lt;/p&gt;

&lt;h4 id=&quot;internationales-finale-in-frankreich&quot;&gt;Internationales Finale in Frankreich&lt;/h4&gt;

&lt;p&gt;Auch nach Frankreich ist am 25. Mai eine kleine Vertretung des Roboterclubs gefahren.
Da nach wie vor der aufwendige Greifarm nicht verbaut war, wurde die Integration der IMU im Wettkampf getestet.
Eine einfache Kombination aus der Position der Ultraschall-Baken](/projekt/ultraschall-baken.html)
und die Orientierung der IMU führte zu einer deutlichen Verbesserung der Fahrweise des Roboters als zuvor.
Dadurch konnten einfache Aufgaben in fast Wettbewerbsspielen erledigt, sodass auch die Punkteschätzung der Roboterstrategie korrekt war.&lt;/p&gt;

&lt;h4 id=&quot;deutschland&quot;&gt;Deutschland&lt;/h4&gt;

&lt;p&gt;Weil aus Deutschland nur drei Teams bereit waren, war kein nationaler Vorentscheid nötig.
Da bei den Teams jedoch trotzdem Bedarf nach einem Zusammentreffen bestand wurde entschieden einen Wettbewerb im späten Sommer (8./9. Oktober 2022) in Aachen auszurichten.
Dazu gibt es &lt;a href=&quot;/eurobot-2022/&quot;&gt;hier mehr Informationen&lt;/a&gt;.&lt;/p&gt;
</description>
            <pubDate>Sun, 11 Sep 2022 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>The Rules for Eurobot 2022 are published</title>
            <link>/blog/2021/rules-eurobot-2022.html</link>
            <guid isPermaLink="true">/blog/2021/rules-eurobot-2022.html</guid>
            <description>&lt;p&gt;The new theme for Eurobot 2022 is “Age of Bots”. There are many actions for the Robots to do and many parts to move.
We are already brainstorming and looking forward to exiting games.&lt;/p&gt;

&lt;p&gt;The rules are published on the &lt;a href=&quot;https://www.eurobot.org/&quot;&gt;website of eurobot.org&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/img/blog/2016/phobos_in_castle.jpg&quot; alt=&quot;Phobos in castle&quot; /&gt;&lt;/p&gt;
</description>
            <pubDate>Sat, 18 Sep 2021 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>µMotor 2 - Teil 4: Strom- und Spannungsmessung mit ADC</title>
            <link>/blog/2020/micro-motor-2-teil-4.html</link>
            <guid isPermaLink="true">/blog/2020/micro-motor-2-teil-4.html</guid>
            <description>&lt;p&gt;Over the past few weeks, a circuit diagram for the Micro-moto version 2 has been created from the previous considerations.
After some productive reviews and discussions about the schematic and the incorporation of various improvements and changes, a board layout was drawn in KiCad.&lt;/p&gt;

&lt;p&gt;The production of the board was sponsored by Aisler and after only about a week of waiting the boards and all components arrived in our lab.&lt;/p&gt;

&lt;p&gt;Quickly two boards were assembled and except for one single solder bridge successfully soldered in the reflow oven.
Only the (optional) vertical Micro-USB connector had been forgotten when ordering the components, but this was no problem, since programming via SWD is more convenient for testing due to its debugger interface.&lt;/p&gt;

&lt;p&gt;Step by step, power supply, STM32 microcontroller, status LEDs and gate drivers including MOSFET power stage were tested successfully. Everything worked on the first try, for once.&lt;/p&gt;

&lt;p&gt;The development process of the micro-motor can be followed up &lt;a href=&quot;/blog/2019/micro-motor-2-teil-3.html&quot;&gt;in&lt;/a&gt; &lt;a href=&quot;/blog/2019/micro-motor-2-teil-2.html&quot;&gt;several&lt;/a&gt; &lt;a href=&quot;/blog/2019/micro-motor-2-teil-1.html&quot;&gt;older&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-debugging-inbetriebnahme.html&quot;&gt;blog posts&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The next step is to bring the current and voltage measurement into operation.
For this purpose we document in this blog post the requirements and development of the implementation with the analog-to-digital converter of the STM32G4 microcontroller.&lt;/p&gt;

&lt;h2 id=&quot;requirements&quot;&gt;Requirements&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;ADC sampling synchronous to PWM of motor (approx. 100kHz)&lt;/li&gt;
  &lt;li&gt;Sampling on every PWM cycle&lt;/li&gt;
  &lt;li&gt;For all phases either current or voltage are measured: current on both “switched” phases, voltage on the “high-impedance” phase&lt;/li&gt;
  &lt;li&gt;Measure current in both phases simultaneously&lt;/li&gt;
  &lt;li&gt;Additional ADC measurements at low priority and with low frequency
    &lt;ul&gt;
      &lt;li&gt;Motor supply voltage&lt;/li&gt;
      &lt;li&gt;3.3V supply voltage (Vbat)&lt;/li&gt;
      &lt;li&gt;NTC temperature sensor&lt;/li&gt;
      &lt;li&gt;Internal temperature&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;adc-channel-usage-on-the-micro-motor&quot;&gt;ADC channel usage on the micro-motor&lt;/h3&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;Measurement&lt;/th&gt;
      &lt;th&gt;Possible ADC channels&lt;/th&gt;
      &lt;th&gt;Gpio pin&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;Current U&lt;/td&gt;
      &lt;td&gt;Adc1Ch1, Adc2Ch1&lt;/td&gt;
      &lt;td&gt;GpioA0&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Current V&lt;/td&gt;
      &lt;td&gt;Adc1Ch2, Adc2Ch2&lt;/td&gt;
      &lt;td&gt;GpioA1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Current W&lt;/td&gt;
      &lt;td&gt;Adc1Ch4&lt;/td&gt;
      &lt;td&gt;GpioA3&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Voltage U&lt;/td&gt;
      &lt;td&gt;Adc1Ch15, Adc3Ch12&lt;/td&gt;
      &lt;td&gt;GpioB0&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Voltage V&lt;/td&gt;
      &lt;td&gt;Adc2Ch4&lt;/td&gt;
      &lt;td&gt;GpioA7&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Voltage W&lt;/td&gt;
      &lt;td&gt;Adc2Ch3&lt;/td&gt;
      &lt;td&gt;GpioA6&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Motor supply voltage&lt;/td&gt;
      &lt;td&gt;Adc2Ch12&lt;/td&gt;
      &lt;td&gt;GpioB2&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;3.3V supply voltage&lt;/td&gt;
      &lt;td&gt;Adc1Ch17, Adc3Ch17&lt;/td&gt;
      &lt;td&gt;N/A&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;NTC temperature sensor&lt;/td&gt;
      &lt;td&gt;Adc1Ch12, Adc3Ch1&lt;/td&gt;
      &lt;td&gt;GpioB1&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;Internal temperature&lt;/td&gt;
      &lt;td&gt;Adc1Ch16, Adc5Ch4&lt;/td&gt;
      &lt;td&gt;N/A&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;h2 id=&quot;implementation&quot;&gt;Implementation&lt;/h2&gt;

&lt;p&gt;The three critical measurements will be sequenced as “Injected Conversions” and triggered by a event generated from the timer which generates the Motor-PWM.&lt;/p&gt;

&lt;p&gt;In an “Injected conversions sequence” (sequence length is limited to 4) each conversion has its own output data register.
Thus all conversion results can be easily read one after the other in the time until the next PWM cycle and no interrupts are needed.&lt;/p&gt;

&lt;p&gt;For every of the six valid commutation steps that define the state of the three MOSFET half bridges, a mapping to the ADC channels is predefined and applied during the commutation.&lt;/p&gt;

&lt;p&gt;Low-Priority measurements are sequenced in the ADCs “normal-mode” sequence and are triggered at a lower frequency (by another timer or manually from code).&lt;/p&gt;
</description>
            <pubDate>Fri, 31 Jan 2020 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Umzug gemeistert</title>
            <link>/blog/2019/umzug.html</link>
            <guid isPermaLink="true">/blog/2019/umzug.html</guid>
            <description>&lt;p&gt;Für uns hieß einmal wieder: “Es ist Zeit, etwas Neues zu beginnen”.
Darum haben wir unsere Sachen gepackt und sind umgezogen.
Ihr findet uns nun in der Melatener Straße 25 im zweiten Stock beim IHF.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/raum-2021.jpg&quot; alt=&quot;Der neue Raum&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Wir danken sehr herzlich dem Institut für Theoretische Informationstechnik unter der Leitung von Prof. Mathar
und der langjährigen Herberge unter seinem Dach.&lt;/p&gt;

&lt;h3 id=&quot;weitere-information-unter-kontakt&quot;&gt;Weitere Information unter: &lt;a href=&quot;/kontakt/&quot;&gt;Kontakt&lt;/a&gt;&lt;/h3&gt;
</description>
            <pubDate>Fri, 01 Nov 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>µMotor 2 - Teil 3: Microcontroller &amp; Stromversorgung</title>
            <link>/blog/2019/micro-motor-2-teil-3.html</link>
            <guid isPermaLink="true">/blog/2019/micro-motor-2-teil-3.html</guid>
            <description>&lt;p&gt;Als Teil der Entwicklung der zweiten Version des Micro-Motors findet nun die Auswahl des Microcontrollers statt.
Außerdem geht es in diesem Blogpost um Komparatoren und die Stromversorgung.&lt;/p&gt;

&lt;p&gt;Die bisherige Entwicklung des Motorcontrollers kann in &lt;a href=&quot;/blog/2019/micro-motor-2-teil-2.html&quot;&gt;mehreren&lt;/a&gt; &lt;a href=&quot;/blog/2019/micro-motor-2-teil-1.html&quot;&gt;älteren&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-debugging-inbetriebnahme.html&quot;&gt;Blogposts&lt;/a&gt; nachgelesen werden.&lt;/p&gt;

&lt;p&gt;Die vorläufige Auswahl der Shuntverstärker ist fast abgeschlossen, siehe &lt;a href=&quot;/blog/2019/micro-motor-2-teil-2.html&quot;&gt;Teil 2&lt;/a&gt;.
Ebenso ist der Gatetreiber (&lt;em&gt;DRV832x&lt;/em&gt;) gesetzt in der Version ohne Strommessverstärker und mit SPI-Interface (&lt;em&gt;DRV8320S&lt;/em&gt; oder &lt;em&gt;DRV8350S&lt;/em&gt; in Gehäuse &lt;em&gt;WQFN32&lt;/em&gt;, 5x5mm²).
Also MOSFET soll der in Micro-Motor Version 1 bewährte N-Channel Dual-FET &lt;em&gt;FDMD8260L&lt;/em&gt; (60V, 5.8mΩ) verwendet werden.&lt;/p&gt;

&lt;p&gt;Als nächste wichtige Komponente wird der Microcontroller ausgewählt.&lt;/p&gt;

&lt;h3 id=&quot;microcontroller&quot;&gt;Microcontroller&lt;/h3&gt;

&lt;p&gt;Eher zufällig wurden wir auf die neue Microcontroller-Serie &lt;em&gt;STM32G4&lt;/em&gt; von ST Microelectronics aufmerksam.
In &lt;a href=&quot;/blog/2019/micro-motor-2-teil-1.html&quot;&gt;Teil 1&lt;/a&gt; wurde der &lt;em&gt;STM32L432CC&lt;/em&gt; als präferierter Microcontroller genannt, jedoch bietet die neue &lt;em&gt;STM32G4&lt;/em&gt;-Serie, speziell der &lt;em&gt;STM32G474&lt;/em&gt; (oder &lt;em&gt;STM32G473&lt;/em&gt;, ohne High-Resolution-Timer) einige Vorteile:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Taktfreqenz bis zu 170MHz für Cortex-M4F und &lt;strong&gt;alle&lt;/strong&gt; Peripherals (max. 80MHz bei &lt;em&gt;STM32L4&lt;/em&gt;)&lt;/li&gt;
  &lt;li&gt;High-Performance Analog Peripherals
    &lt;ul&gt;
      &lt;li&gt;7x Komparator (&lt;em&gt;COMP&lt;/em&gt;), 17ns Propagation delay, einstellbare Hysterese&lt;/li&gt;
      &lt;li&gt;5x ADC 12bit, 4MSPS, differenzielle Inputs verfügbar)&lt;/li&gt;
      &lt;li&gt;4x DAC 12bit, 1MSPS&lt;/li&gt;
      &lt;li&gt;6x Opamp mit GBP (Gain Bandwidth Product) von 13MHz (&lt;em&gt;OPAMP&lt;/em&gt;)&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;DSP (Rechenbeschleuniger) Funktionen für Trigonometrie und Filter (&lt;em&gt;CORDIC&lt;/em&gt;, &lt;em&gt;FMAC&lt;/em&gt;)&lt;/li&gt;
  &lt;li&gt;High-Resolution-Timer (&lt;em&gt;HRTIM&lt;/em&gt;) mit 184ps Zeitauslösung&lt;/li&gt;
  &lt;li&gt;3x Advanced Motor Control Timer (&lt;em&gt;TIM1&lt;/em&gt;, &lt;em&gt;TIM8&lt;/em&gt;, &lt;em&gt;TIM20&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Die folgenden Bilder zeigen die für den Micro-Motor relevanten Features der &lt;em&gt;STM32G4&lt;/em&gt;-Serie und stammen aus STs Präsentation “STM32G4 Mainstream MCUs Product Overview”.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/microcontrollers_STM32G4_series_product_overview__p10.png&quot; alt=&quot;Microcontrollers_STM32G4_series_product_overview.pdf, Seite 10&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/microcontrollers_STM32G4_series_product_overview__p11.png&quot; alt=&quot;Microcontrollers_STM32G4_series_product_overview.pdf, Seite 11&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;small&gt;Quelle: &lt;a href=&quot;https://www.st.com/resource/en/product_presentation/microcontrollers_stm32g4_series_product_overview.pdf&quot;&gt;https://www.st.com/resource/en/product_presentation/microcontrollers_stm32g4_series_product_overview.pdf&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;

&lt;p&gt;Stand 2019/08 sind nur einige wenige Chips aus der &lt;em&gt;STM32G4&lt;/em&gt;-Serie verfügbar, für den Micro-Motor kommen &lt;a href=&quot;https://octopart.com/search?q=STM32G474CET6&quot;&gt;&lt;em&gt;STM32G474CET6&lt;/em&gt;&lt;/a&gt; und &lt;a href=&quot;https://octopart.com/search?q=STM32G473CET6&quot;&gt;&lt;em&gt;STM32G473CET6&lt;/em&gt;&lt;/a&gt; im &lt;em&gt;LQFP48&lt;/em&gt; Gehäuse in Frage.
Im vom &lt;em&gt;STM32L433CCU&lt;/em&gt; bekannten Gehäuse &lt;em&gt;UFQFPN48&lt;/em&gt; stehen noch keine Chips zu Verfügung.
Das Gehäuse &lt;em&gt;LQFP48&lt;/em&gt; benötigt zwar mehr Platinenoberfläche als der &lt;em&gt;UFQFPN48&lt;/em&gt;, allerdings sind bei letztem Gehäuse durch das Exposed Pad keine Durchkontaktierungen und Leiterbahnen unterhalb des Chips möglich, was den Platzvorteil unter Umständen aufwiegt.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/CubeMX_screenshot_STM32G474CE_201909.png&quot; alt=&quot;Mögliches Pinout des Microcontrollers STMG474CE, Screenshot aus ST CubeMX Software&quot; /&gt;&lt;/p&gt;
&lt;center&gt;&lt;small&gt;Mögliches Pinout des Microcontrollers &lt;i&gt;STM32G474CE&lt;/i&gt;, Screenshot aus ST CubeMX Software.&lt;/small&gt;&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;Erfreulicherweise können die ADC- und Komparator-Eingänge zeitgleich genutzt werden, sodass hier keine unnötigen Pins verschwendet werden müssen.&lt;/p&gt;

&lt;h3 id=&quot;komparator&quot;&gt;Komparator&lt;/h3&gt;

&lt;p&gt;Da der Komparator im Microcontroller integriert ist, werden keine dedizierten Komparatoren benötigt.
Das spart viel Platz und reduziert die Komplexität des Platinenlayouts.&lt;/p&gt;

&lt;h3 id=&quot;systemüberblick&quot;&gt;Systemüberblick&lt;/h3&gt;

&lt;p&gt;Durch die geänderte Auswahl des Microcontrollers ändert sich das Blockschaltbild geringfügig.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/Micro-Motor-V2-Block-diagram_201909.svg&quot; alt=&quot;Micro-Motor V2 Blockdiagram, aktualisiert 2019/09&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;stromversorgung&quot;&gt;Stromversorgung&lt;/h3&gt;

&lt;p&gt;Die Logik, bzw. alle Komponenten außer den MOSFET-Halb-Brücken und dem Motor, werden über eine separate Spannungsschiene im Roboter mit 6V bis 7V versorgt.
Aus diesen 6V bis 7V müssen lokal 3.3V für den Microcontroller und weitere Elektronik, sowie 5V für Hall-Sensoren und Encoder erzeugt werden.
Die Logik-Versorgungsspannung bleibt im Gegensatz zu Versorgungsspannung für den Motor bei einem Not-Aus bestehen.&lt;/p&gt;

&lt;p&gt;Um alle Komponenten auch ungünstigsten Situationen stabil mit Strom zu versorgen sind sowohl für 3.3V als auch für 5V Spannungsregler mit eine Ausgangsstrom von mindestens 200mA nötig.
Beispielsweise der CAN-Transceiver &lt;em&gt;TCAN332&lt;/em&gt; kann bei einem Bus Fault bis zu 180mA benötigen, auch in diesem Fall muss der Betrieb des Micro-Motors aufrecht erhalten werden.&lt;/p&gt;

&lt;p&gt;Der Gatetreiber &lt;em&gt;DRV832x&lt;/em&gt;/&lt;em&gt;DRV835x&lt;/em&gt; ist mit dem Suffix &lt;em&gt;R&lt;/em&gt; erhaltlich, wo ein Schaltregler galvanisch getrennt ins das Gehäuse integriert ist.
Beim &lt;em&gt;DRV832x&lt;/em&gt; handelt es sich um den Buck-Regulator &lt;a href=&quot;http://www.ti.com/product/LMR16006&quot;&gt;LMR16006X&lt;/a&gt;, welcher bei Eingangsspannugen zwischen 4V und 60V ein Spannung zwischen 0,8V bis 60V bei 600mA bereitstellen kann.
Der in den &lt;em&gt;DRV835x&lt;/em&gt; integrierte Buck-Regler &lt;a href=&quot;http://www.ti.com/product/LM5008A&quot;&gt;LM5008A&lt;/a&gt; liefert 2.5V bis 75V bei 350mA bei Eingangsspannugen zwischen 6V und 95V.
Statt im &lt;em&gt;WQFN32&lt;/em&gt; (5x5mm²) Gehäuse kommt der Gatetreiber dann im &lt;em&gt;WQFN40&lt;/em&gt; (6x6mm²) Gehäuse, benötigt also 11mm² mehr Platinenfläche zuzüglich der externen Spule, Kondensatoren und Widerständen.&lt;/p&gt;

&lt;p&gt;Das hochintegrierte Schaltwandler-Modul &lt;a href=&quot;http://www.ti.com/product/TPS82150&quot;&gt;TPS82150&lt;/a&gt; hat eine integrierte Spule und benötigt im &lt;em&gt;μSiL8&lt;/em&gt; Gehäuse lediglich 8.4mm² Platinenfläche.
Zudem kann ein besseres Platinenlayout durch die flexible Platzierung ermöglicht werden.&lt;/p&gt;

&lt;p&gt;Für die Versorgung der empfindlichen analogen Elektronik könnte ein dedizierter LDO-Wandler hinter dem 5V Schaltwandler eingesetzt werden, fall ein LC-Filter eine ausreichend rauschfreie Spannungsversorgung ermöglicht.&lt;/p&gt;

&lt;h4 id=&quot;rekuperation&quot;&gt;Rekuperation&lt;/h4&gt;

&lt;p&gt;Mit Hilfe von Rekuperation kann sowohl die Wärmeentwicklung im Micro-Motor, als auch die Batterie-Laufzeit des gesamten Roboters verbessert werden.
Eine Begrenzung der Rekuperationsleistung im Micro-Motor ist nicht vorgesehen, da dies zentral im BMS besser lösbar ist.&lt;/p&gt;

&lt;h4 id=&quot;überspannungsschutz&quot;&gt;Überspannungsschutz&lt;/h4&gt;

&lt;p&gt;TVS-Dioden an dem Logik- und Motor-Versorgungsspannungen müssen so ausgelegt werden, dass die auf Micro-Motor vorhandenen Spannungsregler bzw. andere direkt verbundenen Bauteile nicht beschädigt werden können.
Um Rekuperation mit hoher Effizienz zu ermöglichen sollte die Clamping Voltage so hoch wie möglich gewählt werden.&lt;/p&gt;
</description>
            <pubDate>Mon, 02 Sep 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>µMotor 2 - Teil 2: Strommessung</title>
            <link>/blog/2019/micro-motor-2-teil-2.html</link>
            <guid isPermaLink="true">/blog/2019/micro-motor-2-teil-2.html</guid>
            <description>&lt;p&gt;In diesem Blogpost geht es um die Weiterentwicklung des Motorcontrollers “Micro-Motor” zur Version 2.
Die bisherige Entwicklung des Motorcontrollers kann in &lt;a href=&quot;/blog/2019/micro-motor-2-teil-1.html&quot;&gt;mehreren&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-debugging-inbetriebnahme.html&quot;&gt;älteren&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-motorcontroller.html&quot;&gt;Blogposts&lt;/a&gt; nachgelesen werden.&lt;/p&gt;

&lt;p&gt;Von den im &lt;a href=&quot;/blog/2019/micro-motor-2-teil-1.html&quot;&gt;vorherigen Blog-Post&lt;/a&gt; aufgelisteten Shuntverstärkern sind die beiden Bauteile von Analog Devices (ehem. Linear Technologie) und Texas Instruments in die nähere Auswahl gekommen.
Es wurden von TIs INA240 Muster bestellt mit Gain 50 und 200, sowie Gain 20 und 50 beim LT1999, da bei diesem keine Variante mit Gain über 50 verfügbar ist.&lt;/p&gt;

&lt;p&gt;Als Shunt dient ein 5mΩ 1W 1% SMD-Widerstand in Baugröße 0805 (&lt;a href=&quot;https://octopart.com/tlr2attd5l00f-koa+speer-27701192&quot;&gt;KOA Speer TLR2ATTD5L00F&lt;/a&gt;).
Durch die kleine Bauform ist ein kompakter Aufbau gewährleistet, wie in den Datenblättern empfohlen (&lt;a href=&quot;https://www.analog.com/media/en/technical-documentation/data-sheets/1999fd.pdf&quot;&gt;LT1999&lt;/a&gt; Seite 16 bzw. &lt;a href=&quot;http://www.ti.com/lit/ds/symlink/ina240.pdf&quot;&gt;INA240&lt;/a&gt; Seite 27).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/Versuchsaufbau-LT1999.jpg&quot; alt=&quot;Shuntverstärker Versuchsaufbau&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Der weitere Messaufbau besteht aus einem &lt;a href=&quot;/blog/2019/alpha-motor-description.html&quot;&gt;Motor-Controller&lt;/a&gt; über welchen Frequenz und Duty-Cycle eingestellt werden können.
Als Last dient ein 2kW Lastwiderstand mit 9,4Ω nach Ground, wodurch ein Strom von maximal 2,1A bei 20V durch den Shunt fließen.
Die Induktivität des Aufbaus ist leider nicht bekannt, das keine geeigenten Messgeräte zur Verfügung standen.&lt;/p&gt;

&lt;p&gt;An den folgenden Messungen ist leicht zu erkennen, dass der LT1999 in unserem Fall ungeeignet zur Strommessung In-Phase ist.
Der durch die Common-Mode-Spannungsänderung erzeugte Spike am Ausgang ist größer als das erwartete Mess-Signal,
gerade bei kleinen Duty-Cycles (&amp;lt;10%) verschwindet der Messwert hier vollständig.&lt;/p&gt;

&lt;p&gt;Der Shuntverstärker INA240 eignet zur Strommessung In-Phase, hier ist kein störender Einfluss der Common-Mode-PWM-Signals auf den Ausgang zu beobachten.
Die Variante INA240A4 mit Gain 200 kann mit einem 5mΩ Shuntwiderstand nur etwa 2A messen, der Messbereich von 10A beim INA240A2 (Gain 50) ist für den Motorcontroller besser geeignet.
Denkbar wäre es natürlich auch einen kleineren Shuntwiderstand zu wählen, jedoch würde dies aufgrund von stärkeren Einkoppplungen wahrscheinlich schlechtere Ergebnisse liefern.&lt;/p&gt;

&lt;p&gt;Auf den Osziloskop-Bildern ist in Gelb der Ausgang des Shuntverstärkers zu sehen.
Auf Kanal 2 (Blau) ist die Spannung an der Motor-Phase beziehungsweise über dem Last-Widerstand dargestellt.&lt;/p&gt;

&lt;h2 id=&quot;duty-cycle-30&quot;&gt;Duty-Cycle 30%&lt;/h2&gt;

&lt;h3 id=&quot;in-phase&quot;&gt;In-Phase&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-20_In-Phase_160kHz_0uH.jpg&quot; alt=&quot;Shuntverstärker Messung: LT1999, Gain 20, In-Phase, 160kHz, 0µH&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 20, In-Phase, 160kHz, 0µH&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_In-Phase_160kHz_0uH.jpg&quot; alt=&quot;Shuntverstärker Messung: LT1999, Gain 50, In-Phase, 160kHz, 0µH&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 50, In-Phase, 160kHz, 0µH&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_In-Phase_160kHz-30.bmp&quot; alt=&quot;INA240A2, Gain 50, In-Phase, 160kHz, 30%, (negativer Ausschlag, 20V)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, In-Phase, 160kHz, 30%, (negativer Ausschlag, 20V)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_In-Phase_160kHz-30_12V.bmp&quot; alt=&quot;INA240A2, Gain 50, In-Phase, 160kHz, 30%, (negativer Ausschlag, 12V -&amp;gt; 1A)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, In-Phase, 160kHz, 30%, (negativer Ausschlag, 12V -&amp;gt; 1A)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_In-Phase_160kHz-30_12V.bmp&quot; alt=&quot;INA240A4, Gain 200, In-Phase, 160kHz (negativer Ausschlag, 12V -&amp;gt; 1A)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, In-Phase, 160kHz (negativer Ausschlag, 12V -&amp;gt; 1A)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_In-Phase_160kHz-30.bmp&quot; alt=&quot;INA240A4, Gain 200, In-Phase, 160kHz (negativer Ausschlag)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, In-Phase, 160kHz (negativer Ausschlag)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;!--
![Shuntverstärker Messung: LT1999, Gain 50, In-Phase, 160kHz, 0µH](../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_In-Phase_160kHz.jpg)
&lt;center&gt;LT1999, Gain 50, In-Phase, 160kHz, 0µH&lt;/center&gt;&lt;br /&gt;

![Shuntverstärker Messung: LT1999, Gain 50, In-Phase, 80kHz, 0µH](../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_In-Phase_80kHz.jpg)
&lt;center&gt;LT1999, Gain 50, In-Phase, 80kHz, 0µH&lt;/center&gt;&lt;br /&gt;
--&gt;

&lt;h3 id=&quot;low-side&quot;&gt;Low-Side&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-20_Low-Side_160kHz_0uH.jpg&quot; alt=&quot;Shuntverstärker Messung: LT1999, Gain 20, Low-Side, 160kHz, 0µH&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 20, Low-Side, 160kHz, 0µH&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_Low-Side_160kHz.jpg&quot; alt=&quot;Shuntverstärker Messung: LT1999, Gain 50, Low-Side, 160kHz, 0µH&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 50, Low-Side, 160kHz, 0µH&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_Low-Side_160kHz-30.bmp&quot; alt=&quot;INA240A2, Gain 50, Low-Side, 160kHz, 30%, (positiver Ausschlag, 20V)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, Low-Side, 160kHz, 30%, (positiver Ausschlag, 20V)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_Low-Side_160kHz-30_12V.bmp&quot; alt=&quot;INA240A2, Gain 50, Low-Side, 160kHz, 30%, (positiver Ausschlag, 12V -&amp;gt; 1A)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, Low-Side, 160kHz, 30%, (positiver Ausschlag, 12V -&amp;gt; 1A)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_Low-Side_160kHz-30_12V.bmp&quot; alt=&quot;INA240A4, Gain 200, Low-Side, 160kHz (positiver Ausschlag, 12V -&amp;gt; 1A)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, Low-Side, 160kHz (positiver Ausschlag, 12V -&amp;gt; 1A)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_Low-Side_160kHz-30.bmp&quot; alt=&quot;INA240A4, Gain 200, Low-Side, 160kHz (positiver Ausschlag)&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, Low-Side, 160kHz (positiver Ausschlag)&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;!--
![Shuntverstärker Messung: LT1999, Gain 50, Low-Side, 160kHz, 10µH](../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_Low-Side_160kHz_10uH.jpg)
&lt;center&gt;LT1999, Gain 50, Low-Side, 160kHz, 10µH&lt;/center&gt;&lt;br /&gt;

![Shuntverstärker Messung: LT1999, Gain 50, In-Phase, 160kHz, 10µH](../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_In-Phase_160kHz_10uH.jpg)
&lt;center&gt;LT1999, Gain 50, In-Phase, 160kHz, 10µH&lt;/center&gt;&lt;br /&gt;
--&gt;

&lt;h2 id=&quot;duty-cycle-5&quot;&gt;Duty-Cycle 5%&lt;/h2&gt;

&lt;h3 id=&quot;in-phase-1&quot;&gt;In-Phase&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-20_In-Phase_160kHz-5.bmp&quot; alt=&quot;LT1999, Gain 20, In-Phase&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 20, In-Phase&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_In-Phase_160kHz-5.bmp&quot; alt=&quot;LT1999, Gain 50, In-Phase&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 50, In-Phase&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_In-Phase_160kHz-5.bmp&quot; alt=&quot;INA240A2, Gain 50, In-Phase&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, In-Phase&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_In-Phase_160kHz-5.bmp&quot; alt=&quot;INA240A4, Gain 200, In-Phase&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, In-Phase&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;h3 id=&quot;low-side-1&quot;&gt;Low-Side&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-20_Low-Side_160kHz-5.bmp&quot; alt=&quot;LT1999, Gain 20, Low-Side&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 20, Low-Side&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/LT1999-50_Low-Side_160kHz-5.bmp&quot; alt=&quot;LT1999, Gain 50, Low-Side&quot; /&gt;&lt;/p&gt;
&lt;center&gt;LT1999, Gain 50, Low-Side&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A2_Low-Side_160kHz-5.bmp&quot; alt=&quot;INA240A2, Gain 50, Low-Side&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A2, Gain 50, Low-Side&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/shuntverstaerker-messungen/INA240-A4_Low-Side_160kHz-5.bmp&quot; alt=&quot;INA240A4, Gain 200, Low-Side&quot; /&gt;&lt;/p&gt;
&lt;center&gt;INA240A4, Gain 200, Low-Side&lt;/center&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
</description>
            <pubDate>Fri, 30 Aug 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>µMotor 2 - Teil 1: Konzept</title>
            <link>/blog/2019/micro-motor-2-teil-1.html</link>
            <guid isPermaLink="true">/blog/2019/micro-motor-2-teil-1.html</guid>
            <description>&lt;p&gt;In diesem Blogpost geht es um die Weiterentwicklung des Motorcontrollers “Micro-Motor” zur Version 2.
Die bisherige Entwicklung des Motorcontrollers kann in &lt;a href=&quot;/blog/2019/alpha-motor-description.html&quot;&gt;mehreren&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-debugging-inbetriebnahme.html&quot;&gt;älteren&lt;/a&gt; &lt;a href=&quot;/blog/2018/micro-motor-motorcontroller.html&quot;&gt;Blogposts&lt;/a&gt; nachgelesen werden.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/micro-motor-faedeldraht.jpg&quot; alt=&quot;Makro-Aufnahme Micro-Motor Fädeldraht&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Nachdem der einzige aufgebaute Prototyp des Micro-Motors beim Testen durch einen von einer Oszi-Probe verursachten Kurzschluss am Gatetreiber defekt war, wurde eine minimal modifizierte Schaltung als “Macro-Motor” auf einer größeren Platine aufgebaut um bequemer verschiedene Messungen durchführen zu können.&lt;/p&gt;

&lt;p&gt;Auch die Macro-Motor-Platine war leider nicht fehlerfrei. Unter anderem war leider der Footprint des neuen Spannungsreglers im WLCSP-6 (Wafer Level Chip Scale Package; 1x1,6mm²) spiegelverkehrt.
Ebenso war einer der beiden aufgebauten Prototypen nach dem Reflow-Löten nicht funktionsfähig, was auf durch von Hersteller zusätzlich verkleinerte Ausschnitte im Stencil verursachte zu geringe Menge an Lötpaste zurückzuführen war.
Beim Versuch die nicht verlöteten Pins des Gatetreiber-ICs von Hand nachzulöten ist dieser leider zerstört worden.&lt;/p&gt;

&lt;p&gt;Unabhängig von den bisher aufgetretenen Problemen sind neue Wünsche entstanden.
Für eine &lt;a href=&quot;/projekt/motor-commutation.html&quot;&gt;intelligente Motor-Kommutierung&lt;/a&gt; statt der bisher verwendeten stupiden Block-Kommutierung ist es teilweise nötig die Ström in den Phasen sowie auch die Spannung der Motorphasen zu messen.
Bessere Motor-Kommutierungen erlauben durch Sinus-förmige Ansteuerung mehr und gleichmäßigeres Drehmoment in sehr niedrigen Drehzahlbereichen zu erzeugen sowie auch Motoren ohne Hall-Sensoren anzusteuern.
Außerdem wurde in der Saison eine präzise und zuverlässige Strommessung sehnlichst vermisst, sodass auch diese ein erklärtes Ziel ist.&lt;/p&gt;

&lt;h3 id=&quot;systemüberblick&quot;&gt;Systemüberblick&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/micro-motor/Micro-Motor-V2-Block-diagram_201907.svg&quot; alt=&quot;Micro-Motor V2 Blockdiagram&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;komponentenauswahl&quot;&gt;Komponentenauswahl&lt;/h3&gt;

&lt;p&gt;Der Microcontroller wird nach bisheriger Planung ein STM32L433CCU im UFQFPN48 Gehäuse bleiben.&lt;/p&gt;

&lt;p&gt;Ebenso gibt es keinen Anlass den Gatetreiber &lt;a href=&quot;http://www.ti.com/product/DRV8323&quot;&gt;DRV8323S&lt;/a&gt; auszutauschen, da sich dieser durchgehend bewährt hat.
Es wird jedoch die Variante ohne integrierte Shuntverstärker verwendet, da die Shuntverstärker ein zu geringes Gain-Bandbreiten-Produkt aufweisen und keine präzise Strommessung zulassen.&lt;/p&gt;

&lt;p&gt;Die Spannungswandler werden für 5V und 3,3V werden durch &lt;a href=&quot;http://www.ti.com/product/TPS82150&quot;&gt;hochintegrierte Schaltwandler-Module&lt;/a&gt; ersetzt,
welche sich schon beim &lt;a href=&quot;/blog/2019/alpha-motor-description.html&quot;&gt;Alpha-Motor&lt;/a&gt; bewährt haben und auch für leistungshungrige Encoder oder Endschalter genügend Strom liefern kann.&lt;/p&gt;

&lt;p&gt;Der bisher vorgesehene I²C-Temperatursensor &lt;a href=&quot;http://www.ti.com/ww/eu/sensampbook/tmp006.pdf&quot;&gt;TMP006&lt;/a&gt; (nicht mehr verfügbar)
und die I²C-Anschlusspads für externe digitale Sensoren sollen durch einen analogen NTC-Temperatursensor ersetzt werden.
Ein NTC ist kompakter, günstiger, leichter am Motor zu befestigen und hat eine zur Überwachung der Motortemperatur ausreichende Genauigkeit.&lt;/p&gt;

&lt;h4 id=&quot;shuntverstärker-und-komparator&quot;&gt;Shuntverstärker und Komparator&lt;/h4&gt;

&lt;p&gt;Neu auf der Liste der Bauteile sind dedizierte Shuntverstärker und Komparatoren.
Hier müssen die verfügbaren Bauteile noch analysiert und verglichen werden.
Ein gutes Rennen bei den Shuntverstärkern liefert aktuell der &lt;a href=&quot;https://www.analog.com/en/products/lt1999.html&quot;&gt;LT1999&lt;/a&gt; von Analog ab.&lt;/p&gt;

&lt;p&gt;Da die Strommessung “inline” in den Motorphasen stattfindet muss der Shuntverstärker eine sehr hohe Gleichtaktunterdrückung aufweisen.
Gleichzeitig ist eine hohe Bandbreite von etwa 500 kHz bis 1 MHz gefordert um bei einer PWM-Frequenz noch brauchbare Messwerte zu liefern.
Die Gleichtaktspannung muss bis zu 24V betragen, außerdem ist neben einem hohen Gain, welcher die Verwendung von niederohmigen Shunt-Widerständen erlaubt, ein kleines Gehäuse gewünscht.&lt;/p&gt;

&lt;p&gt;Folgende Shuntverstärker stehen aktuell zur Auswahl:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.analog.com/media/en/technical-documentation/data-sheets/1999fd.pdf&quot;&gt;&lt;strong&gt;LT1999&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Gain: Fixed 10, 20 or 50 V/V&lt;/li&gt;
  &lt;li&gt;CMRR: &lt;strong&gt;&amp;gt;80dB @ 100kHz&lt;/strong&gt; (V_CM=0V, 7VP-P, f=100kHz); &amp;gt;96dB @ DC&lt;/li&gt;
  &lt;li&gt;Bandwidth: 2MHz&lt;/li&gt;
  &lt;li&gt;Package: MSOP-8&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;https://datasheets.maximintegrated.com/en/ds/MAX40056F-MAX40056U.pdf&quot;&gt;&lt;strong&gt;MAX40056&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Gain: Fixed 10, 20 or 50 V/V&lt;/li&gt;
  &lt;li&gt;CMRR: &lt;strong&gt;typ. 70dB @ 100kHz&lt;/strong&gt; (100mV_AC Sine, f=100kHz); &amp;gt;120dB @ DC&lt;/li&gt;
  &lt;li&gt;Bandwidth: 300kHz&lt;/li&gt;
  &lt;li&gt;Package: 2.02mm x 1.4mm WLP-8 and 8-pin μMAX&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;http://www.ti.com/lit/ds/symlink/ina240.pdf&quot;&gt;&lt;strong&gt;INA240&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Gain: Fixed 20, 50, 100 or 200 V/V&lt;/li&gt;
  &lt;li&gt;CMRR: &lt;strong&gt;typ. 93dB @ 50kHz&lt;/strong&gt; (f=50kHz); &amp;gt;120dB @ DC&lt;/li&gt;
  &lt;li&gt;Bandwidth: 400kHz&lt;/li&gt;
  &lt;li&gt;Package: TSSOP-8&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In den nächsten Wochen werden Samples dieser Chips unter den beim Micro-Motor herrschenden Umgebungsbedingungen getestet und dann ausgewählt.
Sollte sich keiner der verfügbaren Inline-Shuntverstärker als brauchbar erweisen, werden wir Low-Side-Shuntverstärker evaluieren.&lt;/p&gt;

&lt;h3 id=&quot;formfaktor&quot;&gt;Formfaktor&lt;/h3&gt;

&lt;p&gt;Im Gegensatz zur Version 1 wird für die zweite Version ein anderer Ansatz gewählt.
Der integrierte Magnet-Encoder fällt weg, stattdessen gibt es einen &lt;del&gt;gut lötbaren&lt;/del&gt; steckbaren Anschluss für externe Encoder&lt;del&gt;, sowohl einfach als auch mit differenziellen Signalen&lt;/del&gt;.
Da durch die kleine Bauform des Micromotors keine langen Kabel zum Encoder nötig sind, wird auf differenzielle Signale verzichtet.
Sollte ein Motor keinen integrierten Encoder haben, kann ein &lt;a href=&quot;https://github.com/roboterclubaachen/magnet-motor-encoder&quot;&gt;externer magnetischer Encoder&lt;/a&gt; auch über dieses Interface angeschlossen werden.&lt;/p&gt;

&lt;p&gt;Die Platine bekommt eine rechteckige Form und soll seitlich an den Motoren befestigt werden.
So lässt sich der Micro-Motor flexibler an einer Vielzahl von verschiedenen Motoren nutzen.
Die mechanischen Dimensionen werden sich kaum ändern, angepeilt ist eine Platinenfläche von weniger als 500mm², z.B. 15x25mm².
Dazu wird auch weiterhin eine beidseitige Bestückung notwendig sein.&lt;/p&gt;

&lt;h3 id=&quot;stecker&quot;&gt;Stecker&lt;/h3&gt;

&lt;p&gt;Um einen einfach Austausch der Platinen zu ermöglichen sollen keine Kabel fest auf der Platine verlötet werden.
Es werden sechs Steckverbindungen benötigt:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Motor-Anschluss (Phasen U, V, W), 3-polig, &amp;gt;=5A&lt;/li&gt;
  &lt;li&gt;Stromversorgung (20V, 6V und GND), 3-polig, &amp;gt;= 5A&lt;/li&gt;
  &lt;li&gt;CAN Kommunikation (CAN-H, CAN-L), 2- oder 3-polig&lt;/li&gt;
  &lt;li&gt;End-/Referenz-Schalter, 2- oder 3-polig&lt;/li&gt;
  &lt;li&gt;Hall-Sensor (Hall-Phasen U, V, W; GND und 5V/3.3V), 5-polig&lt;/li&gt;
  &lt;li&gt;Encoder (A, B, I; GND und 5/3.3V), 5-polig&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Für die leistungsführenden Steckverbinder soll 3-polige &lt;a href=&quot;https://jst.de/product-family/show/184/xh&quot;&gt;JST XH&lt;/a&gt; Stecker verwenden werden.
Diese sind bis 5A nutzbar, bei höhreren Strömen müssen die Kabel fest verlötet werden und Stecker ins Kabel integriert werden.&lt;/p&gt;

&lt;p&gt;Die Signalstecker sollen als 2-/3-polige und 5-polige &lt;a href=&quot;https://jst.de/product-family/show/89/gh&quot;&gt;JST GH&lt;/a&gt; Stecker ausgeführt werden.
Ebenso wie die Leistungsstecker mit 2.5mm Pitch sind diese die Stecker auch in SMT-Bauform erhältlich und bei einem Pitch von 1.25mm deutlich kompakter.&lt;/p&gt;

&lt;h3 id=&quot;weitere-entwicklung&quot;&gt;Weitere Entwicklung&lt;/h3&gt;

&lt;p&gt;Noch mehr Probleme und Verbesserungsvorschläge der ersten Revision sind im &lt;a href=&quot;https://github.com/roboterclubaachen/micro-motor/issues&quot;&gt;Github Issue #1&lt;/a&gt; aufgeführt.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Der Blog-Post wurde ursprünglich am 27.7.2019 verfasst und zuletzt am 18.8.2019 aktualisiert.&lt;/em&gt;&lt;/p&gt;
</description>
            <pubDate>Sun, 18 Aug 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Review of Season 2019</title>
            <link>/blog/2019/Season-2019.html</link>
            <guid isPermaLink="true">/blog/2019/Season-2019.html</guid>
            <description>&lt;p&gt;This year’s topic in the Eurobot, organized by Planete Sciences from France, was Atom Factory.
In short, it was about manipulating ice hockypuks, the so-called atoms.
The tasks ranged from simply moving the atoms to grabbing, weighing and sorting them.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2019/eurobot-competition-2019.jpg&quot; alt=&quot;Eurobot competition 2019&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The preparations started in October 2018, with the publication of the new rules.
This years Season was mainly characterized by electrical engineering and software.
Due to a stronger generation change within our team, there was an enormous loss of knowledge about the technology of the previous years.
In order to become competitive again, new members were acquired and trained.
The resulting projects were then to flow into this year’s robot.
Together for example a new motor driver, our so-called Alphamotor, was developed, optimized and used.
The hurdles to be taken here were often not possible without hours of troubleshooting and improvements, which, however, had to be followed by a deeper examination of the matter.
Furthermore, a completely newly developed positioning system based on ultrasound was used for the first time.
This was developed together with a former member of the club and then integrated into our hardware abstraction and communication framework.
Meanwhile some of our robots software structure got a bigger rework, which seems to be not done yet&lt;/p&gt;

&lt;p&gt;But a lot has also changed mechanically in this season.
Thus a complex cartesian working gripper mechanism was designed and built, which can move to all positions necessary for the game with only one arm.
The well-proven drive concept was also replaced by an Omiwheel drivetrain for technical and practical reasons.
This makes it possible to drive in any direction without changing the alignment of the robot.
The necessary mathematical transformations as well as the implementation of these were also done in a very short time.
The result at the time of the competitions was a completely new construction, build by members, who compensated the loss of knowledge driven by outgoing members with the learning process during the season.
So the club is competitive again.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2019/eurobot-team-in-giessen.jpg&quot; alt=&quot;RCA Team im Gießen&quot; /&gt;&lt;/p&gt;

&lt;p&gt;In the now following competitions we first went to Gießen from 02.05 to 04.05 this year, where the German preliminary decision for the international competition took place.
There, a total of 7 teams from all over Germany competed to reach the first to third place, for which the international competition will continue.
Fortunately our robot homologated and was ready for the competition.
Many sleepless nights and smoking heads should pay off, so our Team took the 2nd place behind TURAG from Dresden.
Thirdly, the Greenbirds team from Ludwigshafen managed to qualify for the international competition.
At the end of May we went from 29.05. to 01.06. to La Roche-Sur-Yon in France.
There the national and international competition with nearly 300 French teams took place.
The again best 3 teams from France were then also qualified for the international competition.
A total of 33 teams competed in the international competition.
It started with five preliminary rounds in which the aim was to collect the most points.
The best 8 teams from these preliminary rounds were then ready to enter the final.
Unfortunately, we had big problems with our new positioning system to reach defined points and even night-long improvements helped only little to change anything about it.
Therefore it was only enough for us to finish as 29th Team this year. The Eurobot was won by Team PMG Robotics from Serbia.
Despite the sobering result, the members are proud of what they achieved in the short time and motivated to give everything to win the Eurobot in the upcoming season.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2019/eurobot-team-in-france.jpg&quot; alt=&quot;RCA Team im La-Roche-sur-Yon&quot; /&gt;&lt;/p&gt;
</description>
            <pubDate>Thu, 25 Jul 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>Alpha-Motor: Ein neues Motorboard</title>
            <link>/blog/2019/alpha-motor-description.html</link>
            <guid isPermaLink="true">/blog/2019/alpha-motor-description.html</guid>
            <description>&lt;p&gt;In der Saison 2019 ist unsere Elektronik fast vollständig überarbeitet oder sogar neu entwickelt.
Eine der Neuentwicklungen ist unser neues Motorcontrol-Board, genannt Alpha-Motor.
Der Name bricht mit dem Schema, das vorher verwendet wurde: Auf den &lt;em&gt;iMotor&lt;/em&gt; folgte der &lt;em&gt;2Motor&lt;/em&gt;, wiederum gefolgt vom &lt;em&gt;3Motor&lt;/em&gt;.
Der Alpha-Motor kann anders als sein direkter Vorgänger nur zwei DC- oder BLDC-Motoren antreiben.
Dafür wurden mehrere Features hinzugefügt, die den Roboter leistungsfähiger und besser kontrollierbar machen.
Die wohl wichtigste Änderung betrifft die Ausgangsstufen.
Wo vorher vollintegrierte Chips verwendet wurden, sitzen nun simple Motortreiber-ICs (MIC4606), die Leistungstransistoren steuern.
Die Leistungsabgabe kann mit diesem simpleren Design verdoppelt werden, da Abwärme besser abgestrahlt wird. Für ein proof-of-concept der neuen Bauelemente wurde ein Testboard entwickelt.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/alpha-motor/AlphaMotor_Testboard.jpg&quot; alt=&quot;Alpha-Motor Testboard&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Hier ist bereits zu sehen, dass die Ansteuerung nicht sehr komplex ist, da einfach ein Timer des Mikrocontrollers über drei komplementäre Ausgänge einen Motor steuern kann.
Die Verwendung einer SPI-Verbindung oder ähnlichem um mit den Endstufen zu kommunizieren entfällt.
Es ist jetzt noch leichter die Kontrolle zu behalten, da eine neue Strommessung für jeden Motor hinzugefügt wurde, die mit 1 MHz Abtastrate den Strom durch die Schaltbrücken begrenzen kann.
Der Spannungsabfall über einen Shunt-Widerstand wird in einem Komparator mit der frei verstellbaren Vorgabe verglichen und das Ergebnis auf den asynchronen Break-Input des Mikrocontrollers gegeben.
Das Ergebnis ist eine effektive Stromregelung.
Zusätzlich wird in jeweils zwei der drei Phasen die Stromstärke mit Hall-Sensoren gemessen, um eine sinusförmige Kommutierung statt einer einfacheren blöckförmigen zu ermöglichen.
Die Hauptaufgabe der Schaltung wird jetzt also besser erfüllt, ohne auf Funktionalität verzichten zu müssen.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/alpha-motor/AlphaMotor_Haupt.jpg&quot; alt=&quot;Alpha-Motor Platine&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Neben der Steuerung von Motoren, ist der Alpha-Motor wie sein Vorgänger das Gehirn des Roboters.
Über zwei CAN-Busse werden die Befehle vom Master-Board zu den Slaves geschickt und eine serielle Schnittstelle und einen SWD-Port (Serial-Wire-Debug) kommuniziert mit unserem Debugger, über den nicht nur Events geloggt werden können, sondern der Roboter auch over-the-air neue Software erhält.
Da weiterhin der gleiche Mikrocontroller verwendet wird, ist grundsätzlich die Verwendung zusammen mit älteren Boards möglich um im Notfall eine Ausweichmöglichkeit zu haben.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/alpha-motor/AlphaMotor_Antrieb.jpg&quot; alt=&quot;Antrieb mit Alpha-Motor Platinen im Roboter &amp;quot;Marie&amp;quot;&quot; /&gt;&lt;/p&gt;
</description>
            <pubDate>Thu, 09 May 2019 00:00:00 +0000</pubDate>
        </item>
        
        <item>
            <title>µMotor: Inbetriebnahme und Debugging</title>
            <link>/blog/2018/micro-motor-debugging-inbetriebnahme.html</link>
            <guid isPermaLink="true">/blog/2018/micro-motor-debugging-inbetriebnahme.html</guid>
            <description>&lt;p&gt;Die Idee zur Entwicklung des &lt;a href=&quot;/blog/2018/micro-motor-motorcontroller.html&quot;&gt;µMotors&lt;/a&gt; ist schon älter.
Damals, als die Auswahl der Komponenten noch geschah, wurde im RCA fast zeitgleich auch der größere Bruder des µMotors, der Alpha-Motor, entworfen.&lt;/p&gt;

&lt;p&gt;Beim Design der Leistungselektronik fiel die Wahl des MOSFET-Gatetreibers auf den &lt;a href=&quot;http://ww1.microchip.com/downloads/en/DeviceDoc/20005604B.pdf&quot;&gt;MIC4606&lt;/a&gt; in Kombination mit den &lt;a href=&quot;https://www.vishay.com/docs/68550/sqjb40ep.pdf&quot;&gt;SQJB40EP&lt;/a&gt; MOSFETs von Vishay.
(Vielen Dank an dieser Stelle an Vishay für das unkomplizierte und schnell zur Verfügung stellen von Samples.)&lt;/p&gt;

&lt;p&gt;Um die Eignung der ausgewählten Komponenten zu verifizieren wurde eine Testplatine entworfen, welche außerdem eine schöne und lehrreiche Aufgabe für zwei neue, bisher nicht mit dem Platinendesign vertrauten Mitgliedern des Roboterclubs darstellte.
Die Testplatine enthielt neben den MOSFET-Treibern und MOSFETs selbst nur Stecker, Testpunkte, die nötige passive Beschaltung aus Widerständen und Kondensatoren sowie die Spannungsversorgung.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/alpha-motor-testboard.jpg&quot; alt=&quot;Testplatine für MIC4606&quot; /&gt;&lt;/p&gt;

&lt;p&gt;In Kombination mit einem Entwicklungs-Board für Microcontroller, in unserem Fall das [STM32F4Discovery], wurde die Ansteuerung von DC und BLDC Motoren erfolgreich getestet.&lt;/p&gt;

&lt;p&gt;Dadurch wurde der MIC4606 Chip für den Alpha-Motor ausgewählt und war auch für den Micro-Motor vorgesehen.
Im Laufe der weiteren Komponentenauswahl für den Micro-Motor stellten sich die mechanischen Dimensionen des Chips allerdings als zu groß heraus und der &lt;a href=&quot;http://www.ti.com/lit/ds/symlink/drv8323.pdf&quot;&gt;DRV8323&lt;/a&gt; Gate-Treiber bot einen insgesamt kleineren Footprint.
Der Chip selbst ist größer (6x6mm² WQFN zu 4x4mm² QFN), allerdings wird deutlich weniger externe Beschaltung (u.A. keine Gate-Serienwiderstände, keine Bootstrap-Kondensatoren) benötigt und drei Strommessverstärker sind direkt integriert.&lt;/p&gt;

&lt;p&gt;Der DRV8323 ist zugleich auch wesentlich komplexer als des MIC4606, statt einer &lt;a href=&quot;https://de.wikipedia.org/wiki/Bootstrapping_(Elektrotechnik)&quot;&gt;Bootstrap-Schaltung&lt;/a&gt; zur Ansteuerung der High-Side-MOSFETs integriert der Chip eine &lt;a href=&quot;https://de.wikipedia.org/wiki/Ladungspumpe&quot;&gt;Ladungspumpe&lt;/a&gt; und viele Parameter wie Gate-Serienwiderstände, Überstom-Abschaltung und die integrierten Strommessverstärker lassen sich beim DRV8323 digital über ein SPI-Interface konfigurieren.&lt;/p&gt;

&lt;p&gt;Trotzdem wurde es nicht als nötig erachtet für den DRV8323 Chip eine simple Testplatine zu entwerfen, was sich im Verlauf als Fehlentscheidung herausstellte.&lt;/p&gt;

&lt;p&gt;Nervig wurde die Situation bereits beim Schreiben des &lt;a href=&quot;https://github.com/modm-io/modm/pull/27&quot;&gt;modm.io-Treibers&lt;/a&gt;.
Es ist meist hilfreich mit einem Logic-Analyser oder Oszilloskop de SPI-Bus auf der Platine an Testpunkten abgreifen und beobachten zu können.
Leider passten auf die Platine des Micro-Motors keine Testpunkte, manche der Leiterbahnen waren nicht einmal auf zugänglichen Außenlagen der Platine, sondern ausschließlich unter Chips und auf den Innenlagen geführt.
Somit musste filigraner Fädeldraht an die kleinen Lötperlen an den Außenkanten der QFN/DFN-Pads des Chips anlöten werden um an diesem Fädeldraht dann die Signale mit Logic-Analyser und Oszilloskop ab zugreifen.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/micro-motor-faedeldraht.jpg&quot; alt=&quot;Makro-Aufnahme Micro-Motor Fädeldraht&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Dabei wurde das erste Problem recht schnell deutlich: Die MISO-Leitung des DRV8323 ist ungewöhlicherweise als &lt;a href=&quot;https://de.wikipedia.org/wiki/Open-Collector-Ausgang&quot;&gt;Open-Drain&lt;/a&gt; und nicht wie üblich als &lt;a href=&quot;https://de.wikipedia.org/wiki/Gegentaktendstufe&quot;&gt;Push-Pull-Stufe&lt;/a&gt; ausgeführt, infolgedessen wird ein externer Pull-Up-Widerstand benötigt.
Um diesen Widerstand einzusparen sollte der intern zuschaltbare &lt;a href=&quot;https://de.wikipedia.org/wiki/Pull-up-Widerstand&quot;&gt;Pull-Up Widerstand&lt;/a&gt; im STM32 Microcontroller genutzt werden.
Leider ist der Widerstand dieses Pull-Ups (laut Datenblatt 30 Kiloohm bis 70 Kiloohm viel zu groß für die minimal konfigurierbare SPI-Frequenz (mehrere 100kHz) des STM32L433 Microcontrollers.
Folglich musste neben dem Fädeldraht für die Messinstrumente noch ein 10 Kiloohm Pull-Up-Widerstand mit Fädeldraht nachgerüstet werden.
Das Löten war schon fast zur Routine geworden, da sich der Fädeldraht in der Zwischenzeit mehrfach gelöst hatte.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/micro-motor-testaufbau.jpg&quot; alt=&quot;Micro-Motor Testaufbau mit zwei Oszilloskopen und zwei Netzteilen&quot; /&gt;&lt;/p&gt;

&lt;p&gt;In Endeffekt hat die vorhandene Hardware aber ihre Inbetriebnahme und die Software-Entwicklung unter Zusatzaufwand ermöglicht.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/qfn-dfn-pad.jpg&quot; alt=&quot;Makro-Aufnahme: Pad eines DFN/QFN-Chips&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Bis letzte Woche ein merkwürdiges Verhalten der PWM-Waveform bei der Ansteuerung von BLDC-Motoren auftrat.
Zum lokalisieren des Fehlers wurden neben den Signalen an den Motorphasen auch die Signale der Gates vor und nach dem Gatetreiber betrachtet.
Auch diese Signale sind nur an den seitlichen Pads von QFN-Chips ab zugreifen.
Der Pad-Pitch beträgt hier 0,5 mm, also etwa gleich dem Durchmesser des Spitze der Oszilloskop-Probe.
Natürlich rutschte die Spitze ab und verursachte einen Kurzschluss, welcher vom Gatetreiber mit erhöhten Stromverbrauch und Rauchentwicklung quittiert wurde.&lt;/p&gt;

&lt;p&gt;Schnell war die Entscheidung getroffen um weitere Zerstörung zu verhindern nun doch eine Testplatine für den DRV8323-Chip zu konstruieren.&lt;/p&gt;

&lt;p&gt;Da es für den verwendeten Microcontroller kein Entwicklungs-Board vom Hersteller gibt wurde dieser integriert, der Schaltplan ist daher fast identisch mit dem des Micro-Motors.
Die Platinengröße wurde von einem Kreis mit Durchmesser von 20 mm auf ein Rechteck von 100 mm x 33 mm erweitert um Platz für die etwa 50 Testpunkte zu bieten.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;../../assets/img/blog/2018/macro-motor-pcb.png&quot; alt=&quot;Macro-Motor Testplatine&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Der Name ist entsprechend auch nicht weit von Micro-Motor entfernt gewählt: &lt;em&gt;Macro-Motor&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Dank der schnellen Platinenfertigung von Aisler reicht eine gute Woche Wartezeit aus, bis die neue Testplatine in unserer Werkstatt liegen wird.&lt;/p&gt;
</description>
            <pubDate>Sat, 06 Oct 2018 00:00:00 +0000</pubDate>
        </item>
        
    </channel>
</rss>