[Build (WIP)] Autonome robot "The Luggage" uit Discworld

Pagina: 1
Acties:

  • StackMySwitchUp
  • Registratie: Oktober 2004
  • Laatst online: 03-02 17:46
Afbeeldingslocatie: https://tweakers.net/i/L2fruBdgJL_wepN9DiLE8xwOhZo=/800x/filters:strip_icc():strip_exif()/f/image/QAJr9iUHfnm4qi1VfH2A6j2m.jpg?f=fotoalbum_large
Plaatje gevonden op Pinterest

"The Luggage" Is een hutkoffer gemaakt van het magische "Sapient Pearwood" (Bezield perehout)
Het beschermt de bezitten van zijn eigenaar, alsmede zijn eigenaar. Regelmatig gebeurt dit middels aggressie.

Intro / Overview

Ik heb ontzettend lang gewacht voordat ik besloot om eindelijk een forumpost te maken. En het is zo uitgebreid dat zelfs deze startpost een teaser is.

In mijn favoriete boekenserie Discworld, geschreven door Sir Terry Pratchett, gaat het eerste verhaal over Twoflower. Twoflower komt uit het "Agathean empire" en is de eerste toerist op Discworld. Hij is op reis met zijn hutkoffer "The Luggage"

Afbeeldingslocatie: https://tweakers.net/i/CfhJgwu4yEFi-ET8CNC8-uX4CUw=/800x/filters:strip_icc():strip_exif()/f/image/JmEM7xCVWDl1TIptmGa3Ylhq.jpg?f=fotoalbum_large
Screenshot uit The Colour of Magic (2008)

In het tweede boek geeft hij Luggage aan Rincewind, de minst getalenteerde tovenaar die Discworld ooit gekend heeft. Waarom kun je lezen in de boeken ;)
Dit is een WIP
Degenen die mijn builds vaker hebben gevolgd, weten dat ik zomaar de stekker uit het project kan trekken.

In dit geval kan ik ook niet garanderen dat het niet gebeurt bij grote tegenslagen, maar ik heb het moeilijkste deel al functionerend, daarmee staat weinig in de weg tot succes.
Wat is het?
Afbeeldingslocatie: https://tweakers.net/i/f1RvZKt1-WEK95x5K8nXVmBnzcM=/x800/filters:strip_icc():strip_exif()/f/image/rWdY39sU2IltyGcFr1xYu8I4.jpg?f=fotoalbum_large

Een echte autonome robot op wielen.
Autonoom wordt vaak als buzzword gebruikt, maar ik ben al zover dat ik er vertrouwen in heb dat deze robot uiteindelijk alleen gelaten kan worden, en doet wat ik verwacht.

Afbeeldingslocatie: https://tweakers.net/i/pbziK9Euq4vhkAikYVbidGKc2EU=/800x/filters:strip_icc():strip_exif()/f/image/bYDgVI3Bow011jbszSVf7Z3z.jpg?f=fotoalbum_large
Waarom?
Vorig jaar was ik voor het eerst bij een Dutch Comic Con. In grote gezelschappen ben ik normaliter helemaal niet thuis.
Ik word er vooral nerveus en overprikkeld van en ga het liefst naar huis. Dit was de eerste keer dat ik dat gevoel niet had bij een grote bijeenkomst. Ik had zelfs zonder kostuum het gevoel dat ik er bij hoorde.

Afbeeldingslocatie: https://tweakers.net/i/XD-NDralawlcpAbm4_kVjgio_Lo=/fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():strip_exif()/f/image/JTP8bqQcUe1FeEVJ6YzQb3zc.jpg?f=user_large
Screenshot uit The Color of Magic (2008)

Het lijkt me al lang leuk om iets met mijn creativiteit en cosplay te doen, maar als je verkleed naar zo'n conventie gaat, dan zie je mensen die een jaar lang aan een kostuum hebben gewerkt, en ik had tot nu toe niet het gevoel dat ik met iets kon komen dat volledig bij me paste waar ik ècht trots op kan zijn.
Met dit project ben ik zelf eigenlijk het accesoire (Rincewind) en de ster van de show is zijn trouwe kist.
Dat is graag waar ik sta, naast de spotlight om in diepte de achtergrond te delen.

Het is ook een excuus om al mijn vergaarde kennis te laten samenkomen in 1 project, want Boy oh boy is dit complex.
Wat is het niet
  • Bullshit. Ik ben no-nonsense. - Ik hoef niets te verkopen, ik heb geen sponsors (if only) en doe dit puur voor de lol.
  • 1 onderwerp - Dit topic gaat écht alle kanten op, ADHD heaven
  • Veilige concepten -Veiligheid voor omstanders staat op #1 Echter: Ik werk soms niet 100% veilig. Lithium is gevaarlijk! Een robot van 40 kilo met meerdere PK's aan vermogen is gevaarlijk. Ik ken de risico's en probeer die redelijkerwijs te beperken
  • Volledig AI-vrij... - Ik weet dat er genoeg AI-Slop is, en zelf ben ik er ook allergisch voor, maar inmiddels is het gebruik van een lokaal draaiend LLM wel een stuk gereedschap waar ik graag gebruik van maak. Dit heeft ook nadelen, die ik gaandeweg zal delen (foreshadowing)
Afbeeldingslocatie: https://tweakers.net/i/aC5RdXX8xXzE6IWAMNE2gKYZLxo=/fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():strip_exif()/f/image/sNzhgoc9PmzwOMG3Ed7VZJsa.jpg?f=user_large

Wat kan ik als lezer verwachten

Ik kan in deze topicstart niet alles uitschrijven dat ik tot nu toe heb gedaan, dan haak je na de eerste 10 a4'tjes af.
Dus ik ben van plan om per onderdeel tenminste 1 post hier onder te maken. Je kunt ze sorteren op TS, dan staan ze netjes onder elkaar.
Voor zolang ik deze post kan editen zal ik zorgen dat er linkjes in komen te staan naar de betreffende posts.
Frequentie van posts
Ik ben van plan om regelmatig wat te posten, liefst wekelijks op een vaste dag.

Onderwerpen:
  • Wielen/Drive systeem (hardware/elektronica)
  • De Operating layer (ROS2) (heel veel specifieke kennis en software)
  • LIDAR/SLAM (Magic met lasers)
  • Navigatie (The rabbit hole.. 8)7 Veel software)
  • Locatiebepaling
  • De kist zelf (Hout, ijzer en plastic)
  • Ultra Wideband (gaat dieper dan ik dacht)
  • Batterijen
  • De wizzard-kant
  • Connectivity
  • Simulatie

Checklist

Wegens een griepje iets later dan verwacht en iets meer hoog-over:
  • Mijn workflow: Bedenk je ongeveer de slechtste manier om integration hell te voorkomen met een project als deze.. nou, dat is hoe ik begonnen ben. Inmiddels is het verbeterd, maar het is een onderwerp waard.. (50%)
  • Wielen/Drive systeem: Heeft nog wat veiligheidsfeatures nodig (90% tenzij breaking-bugs)
  • Locatiebepaling: Hier kun je op afstuderen, dit blijft WIP tot alle systemen werken, deze krijgt gaandeweg meer sub-taken (10%)
  • SLAM navigatie: Werkt goed als de lidar 360 graden ziet, is nog WIP voor waar ik hem wil, (75%)
  • De kist zelf: qua uiterlijk zijn er nog een aantal dingen die ik wil, zoals meer beslag, en voeten (wordt een los onderwerp) (50%)
  • De voeten: De kist heeft mensenvoeten, deze zijn goed beschreven in het boek en definieren samen met de tanden en de tong wel het uiterlijk van The Luggage. Ik speel met het idee om deze realistisch te laten bewegen met een extra wiel op de grond, of aan de eigen wielen vast, dit hangt af van wat voor wielen ik uiteindelijk ga gebruiken (10%)
  • Batterijen: Lithium is eng, i have stories (25%)
  • De wizzard-kant: ik dacht aan een staf, maar ik denk dat een boek of iets randoms meer bij Rincewind past.. ik heb ook nog een 'iconograph' maar die werkt nog en vind ik zonde om te slopen. Bovendien wilde mijn vrouw als twoflower verkleed gaan :+ (5%: het idee is er, maar geen concrete plannen)
  • Connectivity: Wifi doet het prima, de rest krijg ik wel aan de praat, dat is wat ik normaal gesproken doe als ik niet met dit ding of mijn gezin bezig ben :+. (25%)
  • Simulatie: is verdomd lastig, maar zal helpen om edge-cases op te lossen, ik ben nog zoekende om dit goed aan de praat te krijgen. (25%)
Schematische tekening van het huidige stadium
Afbeeldingslocatie: https://tweakers.net/i/1mp8YFzV7ovnEbcw1eNXTHO_91w=/800x/filters:strip_exif()/f/image/hESfcREHSQpvxC1LofTA2PNE.png?f=fotoalbum_large

Er komt nog een video aan. Ik wil deze wel een beetje interessant maken, en sinds ik de LiDAR heb verplaatst naar de onderkant is navigatie weer stuk. Het zal dus nog even duren voor dit zover is.

[ Voor 16% gewijzigd door StackMySwitchUp op 24-01-2026 11:27 . Reden: Edit 1: Toevoeging checklist, Edit 2: Aanpassing checklist en kleine schoonheidsfoutjes ]

Ik bouw rare dingen.


  • Mitchelll010
  • Registratie: Oktober 2002
  • Laatst online: 09:00
Leuk man! ga ik volgen.

  • StackMySwitchUp
  • Registratie: Oktober 2004
  • Laatst online: 03-02 17:46
...En toen had ik griep.
Ik ben een aanvulling aan het voorbereiden, met nog wat meer achtergrond-info. coming sooniish, als ik me weer wat beter voel

Ik bouw rare dingen.


  • Coocoocachoo
  • Registratie: Augustus 2007
  • Laatst online: 13:44
StackMySwitchUp schreef op donderdag 15 januari 2026 @ 13:58:
[...]
Autonoom wordt vaak als buzzword gebruikt, maar ik ben al zover dat ik er vertrouwen in heb dat deze robot uiteindelijk alleen gelaten kan worden, en doet wat ik verwacht.
[...]
Supergaaf idee! Bookmarked 8)

Doen wat je verwacht is natuurlijk briljant verwachtingsmanagement. Ben benieuwd welke verwachtingen je allemaal hebt. Als ik me de boeken goed herinner loopt niet elke encounter met The Luggage even goed af voor de niet-eigenaren. Hoeveel ruimte zit er in de koffer om mensen in te slikken? :+ :+

  • StackMySwitchUp
  • Registratie: Oktober 2004
  • Laatst online: 03-02 17:46
Nadat ik dit schreef was ik een paar dagen op een andere planeet aan het cosplayen als kachel :|
Coocoocachoo schreef op donderdag 22 januari 2026 @ 12:16:
[...]

Supergaaf idee! Bookmarked 8)

Doen wat je verwacht is natuurlijk briljant verwachtingsmanagement. Ben benieuwd welke verwachtingen je allemaal hebt. Als ik me de boeken goed herinner loopt niet elke encounter met The Luggage even goed af voor de niet-eigenaren. Hoeveel ruimte zit er in de koffer om mensen in te slikken? :+ :+
Heheh bedankt! Kinderen kan ie wel op, ik werk nog aan een pocket dimension om meer dan 1 volwassene kwijt te kunnen, maar als dat niet werkt dan is er nog ruimte voor een hakselaar :+

Alle absurditeit daargelaten, ik zou graag zoveel mogelijk emotie inbouwen. Als het lukt qua tijd heb ik een aantal "stretch goals" om dat te verbeteren, maar de focus ligt momenteel op veilig en accuraat navigeren. Wat grofweg mijn verwachtingen zijn:
- Interactief met publiek
- klep open en dicht + klapperen (dit alleen als dat 100% veilig kan, zit te denken aan een power cutoff met bump schakelaars op de rand van de kist)
- kleine emote bewegingen, dreigend achter iemand aan zonder gevaar, denk ook aan zachte bump schakelaars voor de onderrand om enkels en hielen te beschermen
- intrekbare tanden
- 1 van de stretch goals is een scherm in de klep om cartoonish geel licht uit te stralen, a la D&D mimic
- Nuttige opslag voor spullen (ja, echt)
- dubbele bodem voor spullen, en onder de bodem de elektronica
- Met een toverspreuk of druk op de knop te roepen
- autonome navigatie door het publiek
- SLAM met LiDAR (werkt al)
- stretch goal: 3d lidar/lidar aan de wizzard kant om de map compleet te maken zonder dat de robot er zelf geweest moet zijn
- objectherkenning met camera's (hier ben ik momenteel mee aan het testen)
- gps aan beide kanten (kist en eigenaar)
- mobiele data met vpn voor communicatie tussen kist en baas
- "default" modus voor wanneer de verbinding niet goed is met een fallback naar wifi en misschien nog een fallback naar rudimentaire data over ultra wideband
- ultra wideband voor nauwkeurige localisatie van eigenaar
- hij moet berijdbaar zijn door een volwassen mens, in dit geval moet hij bestuurbaar zijn en toch nog reageren op obstakels (qua stevigheid is het dik in orde)
- tipping sensor die zelf corrigeert
- mogelijkheid om de begrenzersnelheid tijdelijk te verhogen als daar ruimte voor is (topsnelheid is momenteel 36km/u, ik begrens hem op ~5km/u) maximum snelheid als ik de firmware aanpas is overigens 200km/u, even negerend dat hij zichzelf dan uit elkaar trekt

En ik heb nog meer ideeen, maar dat ligt helemaal aan de tijd die ik kan besteden. Ik heb ook nog een gezin en een fulltime baan :D

Ik bouw rare dingen.


  • BertG
  • Registratie: Januari 2002
  • Laatst online: 04-02 19:43
Erg leuk idee, ben zelf ook fan van de boeken van Sir Terry Pratchett.

Voor als je nog met GPS aan de gang gaat, kijk ook eens op https://www.ardusimple.nl/

Ik heb hier eerder RTK-module en antenne gekocht om trekker recht te laten rijden over perceel op met GIS ingetekende lijnen (maar inmiddels overgestapt op ander professioneel systeem om ook machine achter trekker aan te kunnen sturen). Ik weet niet of je de kist zelfstandig een voorgeprogrammeerde route wil laten afleggen. Je bedoeld denk ik eerder dat de kist weet op welke locatie de eigenaar is zodat de kist ook zelf naar die locatie kan gaan. In elk geval, zonder RTK werkt GPS aanzienlijk onnauwkeuriger.

  • StackMySwitchUp
  • Registratie: Oktober 2004
  • Laatst online: 03-02 17:46
BertG schreef op zaterdag 24 januari 2026 @ 10:41:
Erg leuk idee, ben zelf ook fan van de boeken van Sir Terry Pratchett.

Voor als je nog met GPS aan de gang gaat, kijk ook eens op https://www.ardusimple.nl/

Ik heb hier eerder RTK-module en antenne gekocht om trekker recht te laten rijden over perceel op met GIS ingetekende lijnen (maar inmiddels overgestapt op ander professioneel systeem om ook machine achter trekker aan te kunnen sturen). Ik weet niet of je de kist zelfstandig een voorgeprogrammeerde route wil laten afleggen. Je bedoeld denk ik eerder dat de kist weet op welke locatie de eigenaar is zodat de kist ook zelf naar die locatie kan gaan. In elk geval, zonder RTK werkt GPS aanzienlijk onnauwkeuriger.
Thx voor de suggestie!
Ik heb geen RTK module nodig omdat ik zelf de "in between" bewegingen invul met een filtermodule. De GPS is meer om een grove positiebepaling te doen voor als het bereik van andere sensoren te kort schiet, om deze daarna te finetunen met SLAM en UWB afstandsbepaling.
ROS2 heeft een ingebouwde module die "Robot_Localization" heet waarin deze filtering plaatsvindt. Daarin geef je aan hoe nauwkeurig je data is (dat heet "covariance" ), en dan berekent ie zelf met filters wat de positie moet zijn van de robot
Hoewel "ingebouwd" een vrije interpretatie is van het woord, want niets is "ingebouwd" als zodanig..
Hopelijk wordt deze uitleg in de loop van deze thread duidelijker.

Ik bouw rare dingen.


  • BertG
  • Registratie: Januari 2002
  • Laatst online: 04-02 19:43
StackMySwitchUp schreef op zaterdag 24 januari 2026 @ 11:22:
[...]

Thx voor de suggestie!
Ik heb geen RTK module nodig omdat ik zelf de "in between" bewegingen invul met een filtermodule. De GPS is meer om een grove positiebepaling te doen voor als het bereik van andere sensoren te kort schiet, om deze daarna te finetunen met SLAM en UWB afstandsbepaling.
ROS2 heeft een ingebouwde module die "Robot_Localization" heet waarin deze filtering plaatsvindt. Daarin geef je aan hoe nauwkeurig je data is (dat heet "covariance" ), en dan berekent ie zelf met filters wat de positie moet zijn van de robot
Hoewel "ingebouwd" een vrije interpretatie is van het woord, want niets is "ingebouwd" als zodanig..
Hopelijk wordt deze uitleg in de loop van deze thread duidelijker.
Ah ja, duidelijker. Je wilt ook binnen een kleiner gebied navigeren dan bijvoorbeeld trekker op veld of drone die afstanden boven terrein vliegt. Sensoren om omstanders en objecten te ontwijken natuurlijk sowieso nodig.

  • Coocoocachoo
  • Registratie: Augustus 2007
  • Laatst online: 13:44
StackMySwitchUp schreef op zaterdag 24 januari 2026 @ 07:49:
[...]

Nadat ik dit schreef was ik een paar dagen op een andere planeet aan het cosplayen als kachel :|


[...]


Heheh bedankt! Kinderen kan ie wel op, ik werk nog aan een pocket dimension om meer dan 1 volwassene kwijt te kunnen, maar als dat niet werkt dan is er nog ruimte voor een hakselaar :+
Haha, zou wel mooi zijn dat je intern een knopje hebt die je kan triggeren als je je hand er in steekt, dat dan het geluid van een hakselaar aangaat, jij doet ff geacteerd schreeuwen, trekt je arm terug met je hand in je mouw en de koffer spuugt nog ff wat gehakt met ketchup uit wat jouw opgegeten hand moet voorstellen :+

  • StackMySwitchUp
  • Registratie: Oktober 2004
  • Laatst online: 03-02 17:46
Korte update:

Toen ik nog aan het bekomen was van de griep was ik wat aan het finetunen aan de Arduino, dit wilde ik afmaken door de USB kabel rechtstreeks op mijn ontwikkel-systeem aan te sluiten.
Dus ik trok de USB kabel terug door het chassis, en trok m pardoes over een 42V lijn heen.
42v vindt een Arduino doorgaans niet zo tof, dus die is inmiddels naar de eeuwige jachtvelden vertrokken.

Omdat ik even pauze moest nemen van hardware ben ik aan de gang gegaan met het integreren van mijn self-hosted AI stack (jaja.. hear me out) in het ontwikkelproces.. Dat had behoorlijk wat voeten in de aarde.

Dat systeem is een forumpost op zich waard, maar in het kort:
Lokaal LLM, ingeladen met Ollama via mijn game-pc met RTX3090, de dev-branch van Open-webui in docker op mijn zolder servertje (proxmox > debian > docker)
Open WebUI is een webserver die a la ChatGPT een interface met je LLM geeft, hierin kun je ontzettend veel aanpassen waardoor een lokaal model van "functioneel debiel" naar "best wel bruikbaar" gaat.

Daarop geconfigureerd dat het LLM zelf 'tools' mag gebruiken
Verder nog:
Een groter embedding model om tekst in hapklare logische brokken te verdelen,
Apache Tika voor content-retrieval uit lappen tekst,
Playwright met Chromium om sites uit te lezen,
Searxng om zelf zoekopdrachten te hosten zonder rate-limiting
en Jupyter om python code te sandboxen.

Intussen heb ik alle code opgeruimd en in een self-hosted Gitea gezet.
Toen was het nog een paar uur klooien om te zorgen dat de LLM bij Gitea komt, en daarna nog de juiste prompts verzinnen om te zorgen dat hij dat doet voordat het geheugen (context window) vol zit en onzin uit gaat kramen.

En waarom dan? Nou, ik raakte het overzicht een beetje kwijt met al die packages, dus heb ik (als test) dat ding alle repos laten crawlen en laten documenteren

Afbeeldingslocatie: https://tweakers.net/i/ejJgzDwvqNreNZA0bLzklB3an5s=/800x/filters:strip_exif()/f/image/mHQTElqPRZdFjlN3POzzyWbN.png?f=fotoalbum_large

Dat werkt best goed, wat hier staat klopt met de werkelijkheid, en dat heeft ie zelf opgehaald en uitgevogeld.
Nu is het natuurlijk niet de bedoeling dat ik dingen ga copy-pasten uit mijn slop-generator, maar het helpt dingen op een rijtje zetten zodat ik wat meer gefocused *squirrel, hallo ADHD*
... Zodat ik wat meer gefocused kan uitleggen.

Nu dit werkt is het tijd voor zoeken naar een nieuwe microcontroller die genoeg serial IO heeft om 3 UART streams stabiel te onderhouden. (en anders maar weer een Arduino Mega)

Maar deze fuckup was wel een duidelijk signaal om 1. Niet aan elektronica te werken als je nog gaar bent. 2. De stekker van de high power lithium dynamietstaaf los te trekken. 3. ik heb gewoon een dikke power mosfet liggen, als ik die had aangesloten tussen de batterijen, waren er geen boze elektronen ontsnapt omdat die het pas doet als de controller aan staat.

Ik bouw rare dingen.

Pagina: 1