Publisert Legg igjen en kommentar

Student bygger autonom rullestol med ROS 2 – se hvordan robotteknologi revolusjonerer helsetjenester

En datastudent fra Nigeria viser hvordan ROS 2 kan brukes til å bygge autonome rullestoler for kliniske miljøer. Prosjektet kombinerer avansert navigeringsteknologi med sikkerhetskritisk design for å hjelpe pasienter med mobilitet.

Hariss Abdraman Tahir, en datastudent ved University of Maiduguri, demonstrerer hvordan moderne robotteknologi kan løse reelle problemer i helsetjenester. Som sitt avsluttende studieprosjekt utvikler han en prototype av en automatisert navigasjonsrullestol spesielt designet for bruk i kliniske miljøer.

ROS 2 som fundament for medisinsk robotikk

Prosjektet baserer seg på ROS 2 Jazzy Jalisco, den nyeste versjonen av Robot Operating System. Dette valget gir flere fordeler for sikkerhetskritiske applikasjoner:

Systemet integrerer autonom navigering, sanntids hinderdeteksjon, sikkerhetskritisk design og menneske-maskin-interaksjon for å skape en pålitelig løsning for kliniske miljøer.

ROS 2s forbedrede sikkerhet og deterministiske oppførsel gjør det ideelt for medisinsk utstyr hvor pålitelighet er avgjørende. Nav2-rammeverket håndterer den komplekse navigeringen gjennom trange korridorer og travle sykehusområder.

Tekniske spesifikasjoner og implementering

Rullestolen bruker en kombinasjon av sensorer og programvare for å oppnå autonom navigering:

  • Navigeringssystem: Nav2 for baneplanning og hinderunnvikelse
  • Persepsjon: Datamaskinssyn for sanntids miljøforståelse
  • Simulering: Gazebo for testing av sikkerhetskritiske scenarier
  • Hardware-integrasjon: Embedded systemer for sensor- og aktuatorkontroll

Den største utfordringen ligger i å balansere autonomi med brukerkontroll. Systemet må kunne navigere selvstendig samtidig som det gir brukeren mulighet til å overstyre ved behov.

Fremtidsperspektiver for robotikk i helsetjenester

Dette prosjektet viser hvordan tilgjengelig robotteknologi kan tilpasses spesifikke behov i helsetektoren. Tahirs arbeid med ROS 2 demonstrerer at komplekse autonome systemer ikke lenger er forbeholdt store forskningsinstitutter.

Utviklingen av slike systemer åpner for nye muligheter innen assisterende teknologi. Med ROS 2s modulære arkitektur kan lignende løsninger tilpasses for ulike mobilitetshjelpemidler og kliniske miljøer.

For hobbyister og studenter som ønsker å utforske lignende prosjekter, tilbyr ROS 2 Jazzy Jalisco et solid utgangspunkt med omfattende dokumentasjon og et aktivt utviklermiljø. Kombinasjonen av simulering i Gazebo og ekte hardware-testing gir en komplett læringsskurve for robotikkutvikling.

Kilde: ROS Discourse

Publisert Legg igjen en kommentar

Josef Prusa advarer mot Bambu Labs lisensbrudd og sikkerhetstrusler

Josef Prusa, grunnlegger av Prusa Research, anklager den kinesiske 3D-printer-produsenten Bambu Lab for brudd på AGPL-lisensen og advarer mot alvorlige sikkerhetstrusler. Konflikten oppstår samtidig som Bambu Lab truer med rettslige skritt mot utviklere av OrcaSlicer.

Spenningene i 3D-printing-industrien tilspisser seg når Josef Prusa, en av de fremste talspersonene for åpen kildekode-teknologi, retter kraftig kritikk mot den kinesiske produsenten Bambu Lab. Prusa hevder at selskapet opererer med det han kaller en ikke-reviderbar nettverks-«black box» som bryter med AGPL-lisensens krav.

AGPL-lisensen og åpen kildekode-prinsippet

AGPL-lisensen (Affero General Public License) krever at all kildekode må være tilgjengelig for brukere, selv når programvaren kjøres over et nettverk. Dette skiller den fra standard GPL-lisenser og er spesielt relevant for nettbaserte tjenester.

«Bambu Lab opererer med lukkede systemer som gjør det umulig å verifisere hva som faktisk skjer med brukerdata,» påpeker Prusa.

Problemet oppstår fordi mange 3D-printing-prosjekter, inkludert populære slicer-programmer som PrusaSlicer og OrcaSlicer, bygger på åpen kildekode-biblioteker som er lisensiert under AGPL. Når Bambu Lab integrerer denne koden i sine lukkede systemer uten å gjøre sin egen kode tilgjengelig, kan dette utgjøre et lisensbrudd.

Sikkerhetstrusler og geopolitiske bekymringer

Utover lisensproblematikken advarer Prusa mot potensielle sikkerhetstrusler. Moderne 3D-printere samler inn betydelige mengder data om bruksmønstre, prosjektfiler og nettverkstrafikk. Når denne informasjonen håndteres av lukkede systemer fra kinesiske produsenter, reiser det spørsmål om datasikkerhet og personvern.

Prusa Research har lenge vært en forkjemper for åpne løsninger hvor brukere kan:

  • Inspisere og modifisere kildekoden
  • Verifisere at ingen uønskede data sendes til eksterne servere
  • Tilpasse programvaren til egne behov
  • Bidra til videreutvikling av fellesskapet

Konsekvenser for 3D-printing-miljøet

Konflikten mellom Bambu Lab og åpen kildekode-miljøet illustrerer en større utfordring i 3D-printing-industrien. Mens kinesiske produsenter kan tilby rimelige løsninger takket være statlige subsidier, risikerer hobbyister og profesjonelle brukere å miste kontrollen over sine egne verktøy og data.

For norske brukere som bygger egne prosjekter, er det viktig å vurdere:

  • Hvilke data som samles inn av 3D-printer-programvaren
  • Om kildekoden er tilgjengelig for granskning
  • Muligheten for å kjøre printere offline eller med egne servere
  • Langsiktig støtte og oppdateringer fra produsentene

Debatten viser hvor viktig det er at 3D-printing-miljøet forblir åpent og tilgjengelig for alle, samtidig som brukernes rettigheter og sikkerhet beskyttes.

Kilde: Tom’s Hardware

Publisert Legg igjen en kommentar

ToF og LiDAR-sensorer: Presise avstandsmaalinger for robotikk

Presise avstandsmålinger er selve ryggraden i moderne robotikk. ToF (Time-of-Flight) og LiDAR-sensorer gir robotene dine evnen til å navigere, unngå hindringer og bygge kart av omgivelsene med imponerende nøyaktighet. La oss utforske hvordan disse teknologiene fungerer og hvordan du kan implementere dem i dine robotprosjekter.

Hva du trenger:

  • Mikrocontroller (Arduino, Raspberry Pi eller ESP32)
  • VL53L0X ToF-sensor eller RPLiDAR-enhet
  • Breadboard og jumperledninger
  • Pull-up motstander (4.7kΩ for I2C)
  • Strømforsyning (5V for LiDAR, 3.3V for ToF)

Hvordan ToF-prinsippet fungerer

Time-of-Flight-sensorer måler avstand ved å sende ut lyspulser (vanligvis infrarødt lys) og måle tiden det tar før lyset reflekteres tilbake. Siden lysets hastighet er konstant, kan sensoren beregne avstanden med formelen:

Avstand = (Lysets hastighet × Tid) / 2

Divisjonen med 2 er nødvendig fordi lyset reiser fram og tilbake. Moderne ToF-sensorer som VL53L0X bruker VCSEL-teknologi (Vertical-Cavity Surface-Emitting Laser) for å oppnå millimeter-presisjon på avstander opp til 2 meter.

Tips: ToF-sensorer presterer best på matte overflater. Blanke eller transparente materialer kan gi upålitelige målinger siden de ikke reflekterer infrarødt lys optimalt.

VL53L0X oppsett og programmering

VL53L0X er en populær ToF-sensor som kommuniserer via I2C. Oppsettet er relativt enkelt, men krever noen viktige tilkoblinger:

Arduino Uno

VL53L0X ToF-sensor

3.3V

GND

SDA (A4)

SCL (A5)

3.3V GND A4 A5

VIN GND SDA SCL

VL53L0X tilkobling til Arduino

Her er grunnleggende kode for å lese avstand fra VL53L0X:

#include "Adafruit_VL53L0X.h"

Adafruit_VL53L0X lox = Adafruit_VL53L0X();

void setup() {
  Serial.begin(9600);
  
  if (!lox.begin()) {
    Serial.println("Finner ikke VL53L0X");
    while(1);
  }
  
  Serial.println("VL53L0X klar!");
}

void loop() {
  VL53L0X_RangingMeasurementData_t measure;
  
  lox.rangingTest(&measure, false);
  
  if (measure.RangeStatus != 4) {
    Serial.print("Avstand (mm): ");
    Serial.println(measure.RangeMilliMeter);
  } else {
    Serial.println("Utenfor rekkevidde");
  }
  
  delay(100);
}

LiDAR-typer og bruksområder

LiDAR (Light Detection and Ranging) bygger på samme prinsipp som ToF, men utfører flere hundre eller tusen målinger per sekund i en roterende bevegelse. Dette gir et komplett 360-graders kart av omgivelsene.

Vanlige LiDAR-typer:

  • Mekanisk LiDAR: Fysisk roterende laser og detektor (RPLiDAR A1, A2)
  • Solid-state LiDAR: Ingen bevegelige deler, bruker elektronisk styring
  • Flash LiDAR: Tar øyeblikksbilde av hele synsfeltet

LiDAR-data presenteres vanligvis som polære koordinater (vinkel og avstand) som kan konverteres til kartesiske koordinater for visualisering og navigasjon.

RPLiDAR implementering

RPLiDAR-serien fra Slamtec er populær blant hobbybyggere på grunn av balansen mellom pris og ytelse. RPLiDAR A1 gir 8000 målinger per sekund med 12-meters rekkevidde.

Grunnleggende Python-kode for RPLiDAR:

from rplidar import RPLidar
import numpy as np

lidar = RPLidar('/dev/ttyUSB0')

try:
    for i, scan in enumerate(lidar.iter_scans()):
        obstacles = []
        
        for (_, angle, distance) in scan:
            # Filtrer bort for nære eller fjerne målinger
            if 150 < distance < 4000:
                # Konverter til kartesiske koordinater
                x = distance * np.cos(np.radians(angle))
                y = distance * np.sin(np.radians(angle))
                obstacles.append((x, y))
        
        # Behandle hindringer her
        print(f"Scan {i}: {len(obstacles)} hindringer funnet")
        
        if i > 10:  # Stopp etter 10 scans
            break

finally:
    lidar.stop()
    lidar.disconnect()

Tips: Bruk datafiltrering for å fjerne støy i LiDAR-data. En enkel gjennomsnittsfilter eller median-filter kan dramatisk forbedre datakvaliteten.

Avstandsmåling i praksis

I robotikk-applikasjoner kombineres ofte flere sensorer for robust navigasjon:

  1. Hindrerdeteksjon: ToF-sensorer foran, bak og på sidene for lokal navigasjon
  2. Kartlegging: LiDAR for å bygge detaljerte kart av miljøet
  3. Lokalisering: Sammenligning av sensordata med kjente kart

For å oppnå best mulig ytelse, implementer sensorfusjon som kombinerer data fra flere kilder og bruker algoritmer som Kalman-filter for å redusere usikkerhet.

Tips: Test sensorene dine i det faktiske bruksmiljøet. Lysforhold, støv og vibrasjoner kan alle påvirke ytelsen betydelig sammenlignet med laboratoriebetingelser.

Vanlige feil og løsninger

  • I2C-kommunikasjonsfeil: Sjekk pull-up motstander på SDA og SCL-linjene. VL53L0X krever 4.7kΩ motstander til 3.3V.
  • Ustabile målinger: Sørg for stabil strømforsyning og riktig jording. LiDAR-enheter krever ofte 5V med høy strømkapasitet.
  • Feil avstandsverdier: Kalibrering kan være nødvendig. ToF-sensorer kan ha offset som må kompenseres i software.
  • Oppvarming påvirker nøyaktighet: La sensorer varme seg opp i 30-60 sekunder før kritiske målinger.
  • Dataoverflyt: LiDAR genererer store datamengder. Implementer buffering og datafiltrering for å unngå systemoverbelastning.

Avstandssensorer åpner for avanserte robotfunksjoner som autonom navigasjon og miljøkartlegging. Med riktig implementering og forståelse av teknologiens begrensninger, kan du bygge robotter som navigerer trygt og effektivt i komplekse miljøer. Komponenter som VL53L0X og RPLiDAR finner du i sensorseksjonen hos RoboNordic, hvor du også kan utforske andre elektronikkkomponenter for dine robotprosjekter.

Publisert Legg igjen en kommentar

Kompakt metall 3D-printer bringer laser powder bed fusion til hobbyverkstedet for under 100 000 kroner

**Scrap Labs har lansert Scrap 1, en revolusjonerende kompakt metall 3D-printer som tar industriell laser powder bed fusion teknologi ned til arbeidsbenknivå. Med en startpris på $9,600 (ca. 105 000 kroner) kan hobbyister og mindre verksteder nå få tilgang til teknologi som tidligere kostet flere millioner.**

Metall 3D-printing har lenge vært forbeholdt store industribedrifter med dype lommer. Men nå kan dette endre seg dramatisk med introduksjonen av Scrap 1, en kompakt laser powder bed fusion (LPBF) printer som faktisk får plass på arbeidsbenken din.

Hva er laser powder bed fusion?

LPBF-teknologi bruker en kraftig laser til å smelte metallpulver lag for lag, og skaper dermed komplekse metallkomponenter med høy presisjon. Denne prosessen har tidligere krevd industrielle maskiner på størrelse med små rom, men Scrap 1 beviser at teknologien kan miniaturiseres uten å miste kvalitet.

Dette representerer et paradigmeskifte for hobbyister og små verksteder som ønsker å eksperimentere med metallkomponenter i egne prosjekter.

Tekniske spesifikasjoner og muligheter

Selv om Scrap Labs ikke har offentliggjort alle tekniske detaljer ennå, lover de en maskin som kan håndtere ulike metallpulver og produsere deler med industriell kvalitet. Den kompakte størrelsen gjør den perfekt for:

Bruksområder:

• Prototyping av metallkomponenter
• Småserieproduksjon av spesialtilpassede deler
• Utdanning og forskning innen materialteknologi
• Reparasjon og modifikasjon av eksisterende komponenter

En ny æra for hobbyverkstedet?

Med en pris på $9,600 er Scrap 1 fortsatt en betydelig investering, men sammenlign det med tradisjonelle LPBF-systemer som koster flere millioner kroner. Dette åpner døren for universiteter, mindre bedrifter og dedikerte hobbyister som ønsker å utforske mulighetene innen metallprinting.

Utviklingen kommer på et tidspunkt hvor 3D-printing teknologi generelt blir mer tilgjengelig, og vi ser en økende interesse for avanserte materialer blant makers og ingeniører. Spørsmålet blir om Scrap Labs kan levere på løftene sine når systemet blir tilgjengelig for salg.

La oss følge med på hvordan denne teknologien utvikler seg – det kan bli starten på en ny æra hvor metallprinting blir like vanlig som plastprinting er i dag.

Kilde: Tom’s Hardware

Publisert Legg igjen en kommentar

Hvordan bygge en IK-løser for robotarm i ROS2 – Komplett guide til NERO Arm

Inverse kinematics (IK) er hjørnesteinen i moderne robotstyring, men kan være utfordrende å implementere for redundante 7-DOF robotarmer. En ny tutorial viser hvordan du kan bygge en parametrisk IK-løser for NERO-robotarmen i ROS2, basert på banebrytende forskning fra Tsinghua University.

Hva gjør 7-DOF robotarmer spesielle?

En 7-DOF robotarm med S-R-S konfigurasjon (Spherical Shoulder – Revolute Elbow – Spherical Wrist) har én ekstra redundant frihetsgrad sammenlignet med konvensjonelle 6-DOF manipulatorer. Dette betyr at når end-effektorens posisjon og orientering er fastsatt, finnes det uendelig mange løsninger for leddvinklene.

Denne redundansen er både en fordel og en utfordring. På den ene siden gir den robotarmen større fleksibilitet til å unngå hindringer og operere i trange rom. På den andre siden kompliserer det beregningen av inverse kinematics betydelig.

Parametrisk tilnærming til IK-løsning

Tutorialen presenterer en elegant løsning basert på parametrisk inverse kinematics. Metoden introduserer en redundancy parameter som effektivt reduserer det uendelige løsningsrommet til en håndterbar mengde.

Nøkkelen ligger i å parametrisere redundansen på en måte som gjør det mulig å optimalisere for spesifikke kriterier som leddgrenser, energiforbruk eller hinderunnvikelse.

Implementasjonen består av to hovedkomponenter:

  • ik_solver.py: Kjernealgoritmen som utfører de matematiske beregningene
  • ik_joint_state_publisher.py: ROS2-node for sanntidsoperasjon

Praktisk implementasjon i ROS2

Det som gjør denne tilnærmingen særlig verdifull er integrasjonen med ROS2-økosystemet. Den parametriske IK-løseren kan kjøres som en sanntids-node, noe som gjør den egnet for:

  • Interaktiv robotstyring og telepresens
  • Automatiserte pick-and-place operasjoner
  • Forsknings- og utdanningsprosjekter
  • Industrielle automatiseringsløsninger

Algoritmen tar hensyn til leddgrenser og optimaliserer bevegelsene for å unngå singulariteter – et vanlig problem ved IK-beregninger. Dette gjør løsningen robust nok for praktisk bruk.

For utviklere som jobber med robotikk-prosjekter, representerer denne tutorialen en verdifull ressurs. Den kombinerer solid matematisk fundament med praktisk implementasjon, og viser hvordan avansert robotikk-forskning kan omsettes til brukbare verktøy.

Kilde: ROS Discourse

Publisert Legg igjen en kommentar

Velge riktig 3D-printer: Kjopeguide 2026

Å velge riktig 3D-printer kan føles overveldende med alle valgmulighetene som finnes i 2026. Denne guiden hjelper deg å navigere gjennom teknologier, budsjett og spesifikasjoner for å finne den perfekte printeren til dine behov.

Hva du bør vurdere før kjøp

  • Budsjettramme (3000-50.000+ kr)
  • Tilgjengelig plass for printer og ventilasjon
  • Type prosjekter du vil lage
  • Ønsket materialvariasjon
  • Tid til vedlikehold og kalibrering

FDM vs SLA: Hvilken teknologi passer for deg?

FDM-printere (Fused Deposition Modeling)

FDM-printere smelter plastfilament og legger det lag for lag gjennom et varmt dysehodet. Dette er den mest populære teknologien for hjemmebruk.

Fordeler med FDM:

  • Rimeligere i innkjøp og drift
  • Store byggevolum tilgjengelig
  • Bredt utvalg av materialer (PLA, ABS, PETG, TPU)
  • Tryggere å bruke hjemme
  • Enkelt å skifte farger og materialer

Ulemper med FDM:

  • Synlige lag-linjer på overflaten
  • Lavere detaljerikdom enn SLA
  • Trenger støttemateriale for overheng

SLA-printere (Stereolithography)

SLA-printere bruker UV-lys for å herdes flytende resin lag for lag. Dette gir ekstremt detaljerte utskrifter.

Fordeler med SLA:

  • Ekstremt høy oppløsning og detaljer
  • Glatt overflate uten synlige lag
  • Perfekt for miniatyr og smykker
  • Ingen støttemateriale-problemer

Ulemper med SLA:

  • Dyrere resin-materiale
  • Mindre byggevolum
  • Krever ventilasjon og sikkerhetstiltak
  • Mer kompleks etterbehandling

FDM vs SLA Sammenligning

Egenskaper

FDM

SLA

Innkjøpspris

3.000-15.000 kr

5.000-25.000 kr

Detaljerikdom

0.1-0.3mm lag

0.01-0.05mm lag

Materialer

PLA, ABS, PETG, TPU

Standard/Tough Resin

Byggevolum

Stort (300x300x400mm)

Mindre (200x120x250mm)

Vedlikehold

Moderat

Mer komplekst

Best egnet for

Prototyper, funksjonelle deler, store objekter

Miniatyr, smykker, detaljerte modeller

Anbefales for nybegynnere

For spesialiserte behov

Budsjett-kategorier og hva du kan forvente

Budsjett-klassen (3.000-8.000 kr)

Perfekt for nybegynnere som vil lære grunnleggende 3D-printing.

  • Byggevolum: 180x180x180mm til 220x220x250mm
  • Oppvarmet seng: Vanligvis inkludert
  • Krever noe monteringsarbeid
  • Eksempler: Ender 3-serien, Prusa MINI+

Mellomklassen (8.000-20.000 kr)

Balanse mellom pris, kvalitet og brukervennlighet.

  • Byggevolum: 220x220x250mm til 300x300x400mm
  • Bedre bygekvalitet og komponenter
  • Oftere ferdig sammensatt
  • Automatisk sengnivellering vanlig

Entusiast-klassen (20.000+ kr)

Profesjonell kvalitet for krevende brukere.

  • Store byggevolum og høy presisjon
  • Avanserte funksjoner som enclosed chamber
  • Multimaterial-printing
  • Industriell pålitelighet

Tips: Start gjerne i budsjett- eller mellomklassen. Du kan alltid oppgradere senere når du har lært deg grunnleggende 3D-printing og vet hva du trenger.

Viktige funksjoner å vurdere

Oppvarmet seng

En oppvarmet seng varmer opp byggeplattformen for å forhindre at utskrifter krymper og løsner under printing. Dette er essensielt for materialer som ABS og anbefales sterkt for alle printere.

Automatisk sengnivellering

Denne funksjonen måler byggeplattformens høyde på flere punkter og kompenserer automatisk for ujevnheter. Dette sparer mye tid og frustrasjon, spesielt for nybegynnere.

Byggevolum

Tenk nøye gjennom hvor store objekter du vil printe. Husk at du kan dele store objekter i mindre deler og lime sammen senere.

Tips: Et byggevolum på 200x200x200mm dekker de fleste hobbybehov. Større volum er fint, men øker også prisen betydelig.

Anbefalinger for ulike bruksområder

For nybegynnere

Anbefalt teknologi: FDM
Budsjett: 5.000-10.000 kr
Viktige funksjoner: Oppvarmet seng, god support, etablert merke

For hobbyentusiaster

Anbefalt teknologi: FDM (stor) eller SLA (detaljer)
Budsjett: 10.000-25.000 kr
Viktige funksjoner: Større byggevolum, automatisk nivellering, multimaterial-support

Publisert Legg igjen en kommentar

Bambu Lab overtar ledelsen fra Creality i budsjett 3D-printer markedet

Bambu Lab har offisielt overtatt tronen fra Creality som verdens ledende leverandør av rimelige 3D-printere i 2025. Dette markerer et betydelig skifte i markedet som lenge har vært dominert av den kinesiske giganten Creality.

3D-printer markedet opplever en kraftig oppblomstring, drevet av stadig mer tilgjengelige og brukervennlige budsjettmodeller. Bambu Labs suksess representerer ikke bare et skifte i markedsandeler, men også en evolusjon i hva forbrukere forventer av entry-level 3D-printere.

Hva gjør Bambu Lab annerledes?

Bambu Labs fremgang kan i stor grad tilskrives deres fokus på plug-and-play funksjonalitet og avanserte funksjoner til konkurransedyktige priser. Mens Creality lenge har vært synonymt med rimelige, men ofte krevende 3D-printere som krever betydelig justering og modifikasjon, har Bambu Lab satset på printere som «bare virker» rett ut av boksen.

Deres populære modeller som A1 mini og A1 kombinerer automatisk kalibrering, AI-assistert feildeteksjon og multi-material kapasiteter – funksjoner som tidligere var forbeholdt betydelig dyrere maskiner. Dette har gjort 3D-printing tilgjengelig for en bredere målgruppe, inkludert hobbyister som ikke ønsker å bruke timer på kalibrering og finjustering.

Markedsendringen og konkurransen

Crealitys langvarige dominans i budsjettssegmentet bygget på deres Ender-serie, spesielt Ender 3, som ble en kultklassiker blant 3D-printing entusiaster. Disse printernes lave pris og store modifikasjonspotensialet skapte et enormt community, men krevde også betydelig teknisk kunnskap fra brukerne.

Bambu Labs suksess viser at markedet er i ferd med å modnes, hvor brukervennlighet blir like viktig som pris.

Den nye trenden favoriserer printere med integrerte sensorer, automatisk bed-leveling, og intelligent materialgjenkjenning. Dette gjør 3D-printing tilgjengelig for studenter, lærere og profesjonelle som trenger pålitelige resultater uten omfattende teknisk vedlikehold.

Hva betyr dette for norske brukere?

For hobbyister og profesjonelle i Norge betyr denne utviklingen bedre tilgang til avanserte 3D-printing funksjoner til rimelige priser. Bambu Labs printere støtter populære filament-typer som PLA, PETG, ABS og TPU, og deres lukkede økosystem sikrer konsistente resultater på tvers av forskjellige materialer.

Særlig for utdanningsinstitusjoner og mindre bedrifter som ønsker å implementere 3D-printing uten å investere i omfattende opplæring, representerer denne utviklingen en betydelig fordel. Kombinasjonen av lavere innkjøpspris og reduserte driftskostnader gjør teknologien mer tilgjengelig enn noensinne.

Dette markedsskiftet signaliserer også at 3D-printing industrien beveger seg mot større standardisering og brukervennlighet, noe som vil komme alle segmenter til gode – fra prototyping til produksjon av småserier.

Kilde: Tom’s Hardware

Publisert Legg igjen en kommentar

Fra reaktiv unngåelse til intelligent navigasjon: Oppgradering til ROS Nav2 SLAM

Å ta steget fra enkel hinderunnvikelse til sofistikert målrettet navigasjon er et naturlig neste trinn for mange hobbyrobotikere. Med ROS Nav2 og SLAM-teknologi kan hjemmeroboten din lære seg å kjenne igjen omgivelsene og navigere presist til spesifikke mål.

Mange som bygger hjemmerobotikk-prosjekter starter med reaktive systemer som enkelt unngår hindre. Men når du vil ha en robot som kan navigere intelligent gjennom hjemmet og huske hvor den har vært, er det på tide å utforske SLAM (Simultaneous Localization and Mapping) med ROS Nav2.

Utfordringen: Navigasjon uten hjulenkodere

Et vanlig problem mange møter er å implementere presis navigasjon på chassis uten hjulenkodere. Tradisjonelle differensialrobotikk-oppsett benytter servo-motorer med innebygde enkodere for å måle hjulrotasjoner, men mange hobbyprosjekter bruker enklere motorer uten denne funksjonaliteten.

Uten pålitelige hjulenkodere må roboten stole på alternative metoder for å beregne sin posisjon og bevegelse gjennom miljøet. Dette fører oss til to hovedalternativer: Visual-Inertial Odometry (VIO) eller 2D LIDAR-basert SLAM.

Visual-Inertial Odometry: Kamerabasert posisjonering

VIO kombinerer data fra dybdesensorer som Intel RealSense D435 eller lignende hp60c-sensorer med IMU-data (Inertial Measurement Unit). Denne løsningen analyserer visuelle referansepunkter i miljøet samtidig som den kompenserer for robotens bevegelser gjennom akselerometer- og gyroskopdata.

Fordeler med VIO:

  • Relativt rimelig implementasjon med moderne dybdesensorer
  • Fungerer godt i strukturerte innendørsmiljøer
  • Gir 6DOF-posisjonering (alle seks frihetsgrader)

Utfordringer:

  • Kan slite i dårlig belysning eller monotone omgivelser
  • Krever betydelig prosessorkraft for sanntidsbearbeiding
  • Drift over tid kan akkumulere posisjoneringsfeil

2D LIDAR: Den pålitelige klassikeren

LIDAR-sensorer som RPLIDAR A1M8 eller Hokuyo-serien har lenge vært gullstandarden for robotnavigasjon. Disse måler avstander ved å sende ut laserpulser og beregne refleksjonstid.

«For presise målrettede bevegelser i kjente miljøer er LIDAR fortsatt vanskelig å slå når det gjelder pålitelighet og nøyaktighet.»

Fordeler med 2D LIDAR:

  • Eksepsjonell nøyaktighet og konsistens
  • Fungerer uavhengig av lysforhold
  • Moden teknologi med omfattende ROS Nav2-støtte
  • Lavere krav til prosessorkraft

Ulemper:

  • Høyere innkjøpskostnad enn kameraløsninger
  • Kun 2D-kartlegging (kan misse hengslede hindre)

Anbefaling for hobbyprosjekter

For de fleste hjemmerobotikk-entusiaster anbefales å starte med 2D LIDAR hvis budsjettet tillater det. Teknologien er moden, godt dokumentert, og Nav2-økosystemet har utmerkede tutorials og eksempler tilgjengelig.

Dersom kostnaden er en begrensning, kan VIO være et interessant alternativ, men vær forberedt på mer feilsøking og kalibrering. Moderne Jetson-plattformer håndterer VIO-beregninger godt, og løsningen kan gi imponerende resultater i riktige omgivelser.

Kilde: ROS Discourse

Publisert Legg igjen en kommentar

Kalman-filter forklart: Sensordata uten stoy

Kalman-filteret er kanskje det mest elegante verktøyet vi har for å få orden på støyete sensordata. La oss demystifisere denne kraftige algoritmen og se hvordan du kan implementere den i dine egne prosjekter.

Hva du trenger

  • Python 3.6+ med NumPy og Matplotlib
  • Grunnleggende forståelse av lineær algebra
  • Sensor for testing (akselerometer, gyro eller liknende)
  • Arduino eller Raspberry Pi for datainnsamling

Intuisjonen bak Kalman-filteret

Kalman-filteret fungerer som en intelligent balanse mellom to informasjonskilder: din prediksjon av hvor systemet burde være, og målingen av hvor sensoren sier det faktisk er. Tenk på det som å navigere i tåke – du har et kart (modellen) og et kompass (sensoren), men begge kan ha feil.

Filterets genialitet ligger i at det kontinuerlig vurderer hvor mye det skal stole på hver kilde. Er sensoren unøyaktig? Filteret legger mer vekt på prediksjonene. Er modellen usikker? Da får sensor-målingene større innflytelse.

De fem kjernelikningene

Kalman-filteret bygger på fem matematiske ligninger som håndterer to faser: predict og update. Ikke la matematikken skremme deg – vi skal se hvordan dette oversettes til Python-kode.

Predict-Update syklusen

Hver iterasjon av Kalman-filteret består av to distinkte faser:

1. Predict-fasen

Her bruker vi systemmodellen til å predikere neste tilstand basert på forrige estimat. Vi beregner også usikkerheten som akkumuleres over tid.


x_pred = F * x_prev + B * u
P_pred = F * P_prev * F.T + Q

2. Update-fasen

Når vi får nye sensormålinger, oppdaterer vi estimatet vårt ved å veie prediksjon mot måling.


K = P_pred * H.T / (H * P_pred * H.T + R)
x_new = x_pred + K * (z - H * x_pred)
P_new = (I - K * H) * P_pred

Start

Predict x_pred, P_pred

Få sensormåling z

Update x_new, P_new

Flere data?

Ja

Nei

Slutt

Tips: Start alltid med å definere din tilstandsvektor (hva vil du estimere?) og målevektoren (hva kan sensorene dine måle?). Dette er grunnmuren i implementasjonen din.

Python-implementasjon

La oss implementere et enkelt 1D Kalman-filter for å spore posisjonen til et objekt:


import numpy as np
import matplotlib.pyplot as plt

class KalmanFilter:
    def __init__(self, F, H, Q, R, P, x):
        self.F = F # Tilstandsovergangsmatrise
        self.H = H # Observasjonsmatrise
        self.Q = Q # Prosessstøy
        self.R = R # Målestøy
        self.P = P # Kovariansmatrise
        self.x = x # Tilstandsvektor

    def predict(self):
        self.x = self.F @ self.x
        self.P = self.F @ self.P @ self.F.T + self.Q

    def update(self, z):
        S = self.H @ self.P @ self.H.T + self.R
        K = self.P @ self.H.T @ np.linalg.inv(S)
        y = z - self.H @ self.x
        self.x = self.x + K @ y
        self.P = self.P - K @ self.H @ self.P

Praktisk eksempel: Temperatursensor

La oss bruke filteret på en støyete temperatursensor. Vi antar at temperaturen endres sakte over tid:


# Initialiser filter for temperatur
dt = 1.0 # Tidssteg
F = np.array([[1]]) # Temperatur endres ikke
H = np.array([[1]]) # Vi måler temperaturen direkte
Q = np.array([[0.1]]) # Liten prosessstøy
R = np.array([[1.0]]) # Målestøy fra sensor
P = np.array([[1.0]]) # Inicial usikkerhet
x = np.array([[20.0]]) # Start temperatur

kf = KalmanFilter(F, H, Q, R, P, x)

# Simuler støyete målinger
true_temp = 22.0
measurements = true_temp + np.random.normal(0, 1, 100)
estimates = []

for z in measurements:
    kf.predict()
    kf.update(np.array([[z]]))
    estimates.append(kf.x[0, 0])

Tips: Bruk RoboNordic sine sensorer som DHT22 eller DS18B20 for å teste implementasjonen din med ekte data. Sammenlign filtrerte og ufiltrerte målinger for å se effekten.

Tuning av parametere

Suksessen til Kalman-filteret avhenger sterkt av korrekt tuning av støyparameterne Q og R:

Prosessstøy (Q)

Representerer hvor mye systemet kan endre seg mellom målinger. For høy Q gjør filteret nervøst, for lav gjør det tregt.

Målestøy (R)

Beskriver hvor nøyaktige sensorene dine er. Høy R betyr at filteret stoler mindre på sensormålingene.

Tips: Start med å karakterisere sensoren din ved å ta mange målinger av en konstant verdi. Standardavviket gir deg et godt estimat for R.

Automatisk tuning

Du kan bruke innovasjonssekvensen til å adaptivt justere parameterne:


def adaptive_tuning(self, innovation, window_size=10):
    if len(self.innovations) > window_size:
        innovation_var = np.var(self.innovations[-window_size:])
        expected_var = self.H @ self.P @ self.H.T + self.R
        if innovation_var > 1.5 * expected_var:
            self.Q *= 1.1 # Øk prosessstøy

Vanlige feil

  • Feil dimensjoner på matriser: Dobbeltsjekk at F, H, Q, R og P har kompatible dimensjoner. NumPy gir ofte kryptiske feilmeldinger hvis dimensjonene ikke stemmer.
  • For lav prosessstøy: Filteret blir «låst» til første estimat og reagerer ikke på endringer. Øk Q-verdiene gradvis.
  • Numerisk ustabilitet: Bruk Joseph-formen for kovariansoppdateringen: P = (I - KH)P(I - KH)' + KRK' for bedre numerisk stabilitet.
  • Glemmer å kalle predict(): Mange glemmer predict-steget når det ikke er kontrollinngang. Dette er likevel nødvendig for å oppdatere usikkerheten.
  • Feil initialisering: Start med høy initial usikkerhet (P) hvis du er usikker på startverdien. Filteret vil konvergere raskt.

Videre utvikling

Når du mestrer det lineære Kalman-filteret, kan du utforske Extended Kalman Filter (EKF) for ikke-lineære systemer, eller Unscented Kalman Filter (UKF) for enda bedre håndtering av ikke-lineariteter.

For sensorfusjon av flere sensorer, som kombinasjon av akselerometer og gyro, blir Kalman-filteret et uvurderlig verktøy for å få stabile og nøyaktige estimater av orientering og posisjon.

Publisert Legg igjen en kommentar

Revolusjonerende AI-styring gjør marine roboter motstandsdyktige mot havets krefter

Forskere har utviklet et banebrytende kontrollsystem som gjør marine roboter langt bedre til å navigere i urolige havforhold. Den nye teknologien kombinerer domenekunnskap med avansert maskinlæring for å kompensere for uforutsigbare vind-, bølge- og strømeffekter i sanntid.

Utfordringene i marin robotikk

Marine roboter, enten det er overflatefartøy eller undervannsvehicler, har lenge slitt med å opprettholde presis navigasjon i havets komplekse miljø. Kombinasjonen av vind, bølger og strøm skaper uforutsigbare forstyrrelser som kan true både sikkerhet og presisjon i autonome operasjoner.

Tradisjonelle modellbaserte kontrollsystemer har sine begrensninger når de møter havets uberegnelige krefter. De klarer ofte ikke å tilpasse seg raskt nok til skiftende forhold, noe som kan føre til unøyaktig posisjonering eller i verste fall farlige situasjoner.

Domenekunnskap møter kunstig intelligens

Den nye tilnærmingen representerer et paradigmeskifte i hvordan vi tenker på marin robotstyring. Forskerne har utviklet et rammeverk som:

Integrerer spesialiserte basisfunksjoner fra domenekunnskap inn i et Kolmogorov-Arnold nettverk, og ekstraherer kontrollkunnskap derfra for å trene en maskinlæringsbasert kontroller.

Dette er ikke bare vanlig maskinlæring – systemet er designet spesifikt for marine miljøer. Ved å bygge inn kunnskap om hvordan havkrefter oppfører seg, kan AI-en lære mer effektivt og treffe bedre beslutninger under press.

Praktiske fordeler og anvendelser

Systemet opererer modellfritt, hvilket betyr at det ikke er avhengig av forhåndsdefinerte matematiske modeller av havforhold. I stedet observerer og kompenserer det for miljøforstyrrelser i sanntid.

De praktiske fordelene inkluderer:

  • Bedre banefølging: Mer nøyaktig navigasjon langs planlagte ruter
  • Økt sikkerhet: Raskere respons på uventede havforhold
  • Større robusthet: Fungerer under et bredere spekter av miljøforhold
  • Forbedret tilpasningsevne: Lærer kontinuerlig fra nye situasjoner

Teknologien er særlig relevant for anvendelser som havovervåking, offshore-operasjoner, søk og redning, og miljøkartlegging. For utviklere av marine robotsystemer åpner dette for nye muligheter innen presisjonsstyring under krevende forhold.

At systemet er validert under reelle forhold gjør det særlig interessant for praktiske implementeringer. Dette er ikke bare teoretisk forskning, men teknologi som kan integreres i eksisterende marine robotplattformer.

Kilde: Communications engineering