Am Puls von Microsoft

Trilobot.NET: Ein .NET-Projekt für den Raspberry Pi, das Lust auf mehr macht

Trilobot.NET: Ein .NET-Projekt für den Raspberry Pi, das Lust auf mehr macht

Wer regelmäßig auf Dr. Windows in die Bastelrubrik schaut, kennt das: Oft nehmen wir euch mit auf eine Reise vom ersten Funken einer Idee bis hin zu den ersten vorsichtigen Tests. Wir berichten über kleine Rückschläge, unerwartete Erfolge und die vielen Zwischenschritte. Heute ist es allerdings andersherum. Dieses Mal schauen wir auf ein Projekt, das bereits in einer ersten funktionsfähigen Version existiert – und genau das macht es so spannend. Denn wir können nicht nur zeigen, was schon möglich ist, sondern auch darüber sprechen, wohin die Reise gehen könnte.

Das Projekt trägt den Namen Trilobot.NET. Es handelt sich um eine in C# geschriebene .NET-Bibliothek, mit der sich der Pimoroni TriloBot auf einem Raspberry Pi steuern lässt. Anders als viele schnelle Bastelversuche ist das hier eine saubere, klar strukturierte Lösung, die alle wichtigen Hardwarekomponenten des Roboters unterstützt – und zwar mit moderner Microsoft-Technologie aus dem .NET-Universum.

Die Motivation hinter dem Projekt

Ich wollte mehr als nur ein weiteres Roboter-Demo-Programm. Mein Ziel war es, eine stabile und erweiterbare Basis zu schaffen, mit der man den TriloBot nicht nur direkt steuern, sondern auch in komplexere Anwendungen einbinden kann. Dabei fiel die Wahl bewusst auf .NET IoT, also die offizielle Plattform von Microsoft, um Sensoren, Motoren und andere Hardwarekomponenten direkt aus C# anzusprechen. Damit schlägt das Projekt eine Brücke zwischen der Welt der Maker und Robotik-Fans und der der theoretischen Hochsprachen-Softwareentwickler.

Wer schon einmal versucht hat, Hardwareansteuerung mit Benutzeroberflächen oder Cloud-Anbindung zu kombinieren, weiß, wie schnell man sich in einer Sammlung von Einzellösungen verliert. Trilobot.NET bringt hier eine klare Architektur mit, die von Anfang an auf Erweiterbarkeit ausgelegt ist.

Was der Trilobot schon alles kann

Die Bibliothek liefert fertige Manager-Klassen für alle Kernfunktionen des Roboters. Damit können selbst Entwickler, die noch nie mit Robotik gearbeitet haben, schnell erste Erfolge sehen:

  • Motorsteuerung: Präzise Fahr- und Drehbewegungen in beide Richtungen, mit fein einstellbarer Geschwindigkeit.
  • Buttons und LEDs: Vier Tasten (A, B, X, Y) mit jeweils integrierter RGB-LED, die Aktionen auslösen und visuelles Feedback geben.
  • Unterbodenbeleuchtung: Sechs farbige LEDs lassen sich frei steuern – von statischem Licht bis zu animierten Effekten.
  • Abstandssensor: Mit Ultraschall erkennt der Trilobot Hindernisse und kann automatisch reagieren.
  • Kamera: Fotos aufnehmen oder Video streamen – etwa für Fernsteuerung oder Computer Vision.
  • Xbox-Controller-Unterstützung: Steuerung per Kabel-Controller fast wie bei einem RC-Car.

Für die Kommunikation zwischen Roboter und Steueroberfläche wird SignalR genutzt. Das ermöglicht Echtzeit-Befehle und Sensordaten-Austausch. So kann der Trilobot zum Beispiel über eine Blazor-Web-App oder eine .NET MAUI-App bedient werden. Für den Videostream sorgt zusätzlich ein kleiner, effizienter Streaming-Server auf Basis vom OpenSource Programm MediaMTX.

Eine Retrospektive statt eines Baufortschritts

Das Besondere an diesem Beitrag: Wir schauen nicht wie sonst auf einen laufenden Bauprozess, sondern auf ein bereits fertiges Grundsystem. Denn ich möchte Euch und auch viele Kritiker des .NET-Ökosystems vor Tatsachen und nicht nur Ideen und Gedanken stellen.

Nichtsdestotrotz, der Fortschritt erlaubt es, schon jetzt eine Art Rückblick zu erstellen – und trotzdem nach vorn zu schauen. Denn auch wenn die Basis steht, ist das Projekt längst nicht am Ende. Ich denke bereits über Erweiterungen nach, die dem TriloBot weitere nützliche Funktionen bieten könnten. Dabei stehen unter anderem zwei große Ideenblöcke im Raum:

Mehr Sensoren und Motoren: Was ist besser als ein Sensor? Zehn Sensoren! Das Erweitern der Sensorenauswahl ist ein spannendes IoT-Thema. Dies kann jedoch stark beschränkt sein, wie viele Pins ich am Raspberry Pi noch offen habe für solchen Spaß. Das TriloBot Board bringt noch weitere Steckplätze für Servo-Motoren mit, eventuell wäre auch dies eine spannende Richtung, in die sich das Projekt entwickeln kann.

Lokale Benutzeroberfläche: Ein Display direkt auf dem Roboter selbst montiert, welches aktuelle Informationen, Gestiken und Co. anzeigen könnte. Leider unterstützt .NET MAUI noch kein Linux, hierfür könnte man entweder auf eine weitere Blazor Oberfläche zurückgreifen oder Avalonia und Uno evaluieren.

Azure-Anbindung: Mit der Cloud-Anbindung würde sich ein großer, wenn nicht der größte Kosmos an neuen Möglichkeiten öffnen. Angefangen von simplen Foto-Upload über IoT-Hub Telemetrie bis hin zu AI und Co. Allerdings kann dies auch eine ungewollte Komplexität hervorbringen. Die Balance würde bei diesem Thema wohl das wichtigste sein.

Mögliche Einsatzszenarien

Trilobot.NET ist nicht nur ein Spielzeug für Technikbegeisterte, sondern eine Plattform mit echtem Lern- und Forschungswert. Denkbar sind unter anderem das Erleben und Erlernen von Grundprinzipien der Felder:

  • Verständnis von Sensordaten und dessen Analyse bekommen
  • Experimente mit Lichtspiele auf Basis von mathematischen Funktionen
  • Wegfindungen in der autonome Navigation
  • Farb- oder Objekterkennung per Kamera
  • Durch weitere Sensoren Mess- und Analysefahrten in Räumen beispielsweise zur „sollte mal gelüftet werden“-Erkennung

Generell soll es jedoch ein greifbarer Demonstrator für die Möglichkeiten des .NET-Ökosystems sein. Aus diesem Grund sind manche Belange auch simpel gestaltet, um nur die nötigste Komplexität als Grundstock zu verursachen.

Wieso macht Das Projekt Spaß?

Viele meiner und ich glaub unser aller Maker-Projekte starten enthusiastisch, verlieren aber auf halbem Weg den Schwung. Trilobot.NET dagegen hat bereits ein solides Fundament und lädt dazu ein, darauf aufzubauen. Die Verbindung aus Raspberry Pi, .NET IoT und klarer Code-Struktur macht es leicht, neue Funktionen hinzuzufügen. Somit muss man nicht immer wieder das Rad neu erfinden, sondern kann spannende Ideen auf dem Konstrukt aufbauen, auf welchen man schnell Ergebnisse sieht. Beispielsweise die Idee mit Azure und Foto-Upload. Ich muss mir nicht extra einen Raspberry Pi und eine Kamera holen und von neu alles erstellen. Ich kann auf eine fertige Funktion zur Aufnahme von Bildern eines IoT-Gerätes zurückgreifen und muss mich nur noch um das kümmern, was ich gerade lernen und machen möchte: Azure-Magic!

Das Beste: Weil es sich um eine Open-Source-Lösung handelt, kann jede/r mitmachen. Ob man neue LED-Effekte programmiert, weitere Sensoren anbindet oder die Steueroberfläche erweitert – der Einstieg für ein Community-getriebenes Projekt wäre gemacht.

Jetzt seid ihr gefragt

Über welche der bereits vorhandenen Funktionen wollt ihr einen tieferen Einblick bekommen, welche Erweiterungen wünscht ihr euch für Trilobot.NET? Soll er per Sprache steuerbar sein? Oder möchtet ihr mehr über die Cloud-Anbindung erfahren?

Schreibt eure Ideen und Wünsche in die Kommentare. Wir greifen die spannendsten Themen auf und bereiten sie in eigenen Beiträgen auf – mit Codebeispielen, Tipps und vielleicht sogar Videos vom TriloBot in Aktion.

Fazit

Trilobot.NET zeigt eindrucksvoll, wie moderne Microsoft-Technologien und Maker-Hardware zusammenpassen. Statt ein weiteres unfertiges Bastelprojekt zu sein, liegt hier eine ausgereifte Basis vor, auf der sofort aufgebaut werden kann. Die Möglichkeiten sind vielfältig – und genau deshalb ist jetzt der perfekte Zeitpunkt, sich einzubringen und mit eigenen Ideen die nächsten Schritte zu gestalten.

Dieser Artikel mag als Retrospektive beginnen, aber er ist vor allem eine Einladung: an alle, die Lust haben, einen kleinen Roboter mit großem Potenzial weiterzuentwickeln.

Über den Autor

Tobias Scholze

Tobias Scholze

Bayrischer Open Source- und Community-Enthusiast, Verfechter des neuen Microsoft und Wandler zwischen den Betriebssystemwelten. #communityrocks Von Herzen ein Nerd mit der festen Überzeugung, dass man gemeinsam und durch den Einsatz von moderner IT die Welt für jeden ein Stückchen besser machen kann.

Anzeige