Cerulion - Open-Source-Robotik-Runtime mit Multi-Process-Replay
Show HN: Cerulion – ROS 2-compatible robotics runtime with multi-process replay
Cerulion (YC S24) ist ein Open-Source-Betriebssystem für physische AI: eine Zero-Copy-Robotik-Runtime, die Läufe aufzeichnet, Fehler gegen neuen Code zurückspielt und deine Roboter von überall erreicht. Sie ist ROS 2-kompatibel und gibt AI-Agenten einen sicheren Körper innerhalb der vom Roboter durchgesetzten Grenzen. Entwickler können mit wenigen Befehlen einen Workspace erstellen, Nodes bauen und den Graphen mit Aufzeichnung ausführen. Die Replay-Verifikation prüft byte-genau, ob geänderter Code auf denselben Eingaben dasselbe Verhalten zeigt – ideal für CI und Regressionstests. Mit über 2.700-facher Latenzverbesserung gegenüber ROS 2 Jazzy bei 1 MiB macht Cerulion Robotik-Entwicklung schneller und sicherer.
Cerulion gibt jedem AI-Agenten einen physischen Körper – innerhalb von Sicherheitsgrenzen, die der Roboter selbst durchsetzt – und Werkzeuge, um aufgezeichnete Roboterfehler autonom zu debuggen.
- known-developer
Ich habe mal darüber nachgedacht, eine bessere ROS-Alternative zu bauen !! Würde eine ordentliche Portion Aufwand erfordern, aber mal sehen
- leetrout
Ich hasse ROS so sehr. So ein fehlgeleiteter Aufwand, wenn man bedenkt, was wir sowohl mit gängigen / bestehenden als auch mit modernen Entwickler-Tools haben. Sorry, ich benutze es jetzt nur nicht, weil ich deinen Ersatz nicht testen kann.
Viel Glück! Freue mich darauf, mehr solches Zeug zu sehen.
- noxs
Ich hasse ROS auch so sehr:
- Robot Operating System – es ist nicht einmal ein Betriebssystem
- ROS Node – okay, ein Prozess/Thread, der die Anwendungslogik ausführt (aber warum nennt man es Node? Es ist ein Dienst)
Damit ein ROS Node mit einem anderen ROS Node spricht:
- Brauche ich ein ROS Topic
- Brauche ich eine ROS Message
- In C++ brauche ich rclcpp, das ist ein C++-Client
- der dann rcl verwendet, eine C-Implementierung
- es geht durch ein ROS Middleware (rmw), das ein abstraktes DDS ist (hey, was ist DDS)
- jetzt hast du viele Implementierungsoptionen, FastDDS, Cyclone DDS etc. Welche soll ich nehmen?
- schließlich würde es einen Systemaufruf machen
oh, du willst das mit deiner Anwendung bauen?
- benutze irgendeinen seltsamen Kommandozeilenbefehl namens ros2 pkg create
- du musst ament_cmake verwenden (was zum Teufel ist das?)
- und noch ein weiteres Tool namens colcon, um das Paket zu bauen